Показаны сообщения с ярлыком 1c. Показать все сообщения
Показаны сообщения с ярлыком 1c. Показать все сообщения

вторник, 28 сентября 2021 г.

Настройка сканеров ds2208, ds9208, ds4308 Zebra

Проверено. Сканер хорошо считывает новые акцизные марки на крепком алкоголе и штрих-кода честный знак GTIN на обуви, DataMatrix на пачках сигарет. Хорошо считывает qr-коды с экрана мобильных устройств.

Сканер ds2208. Внешний вид.

1. Добавить суффикс возврат каретки

ds2208 Добавить суффикс возврат каретки

Если штрих-код не сканируется, откройте картинку в новой вкладке. Если штрих-код не вмещается, отдалите луч сканера на расстоянии 30-40 см.

2. Презентационный режим. Режим с подставкой

Развернуть

3. Сканер выводит иероглифы вместо английских букв

Решение:

Сканер ds2208. Кодировка UTF-8.

4. Режим USB COM

Развернуть

5. Режим USBHID + суффикс CR

ds2208 Добавить суффикс CR и режим USB HID

Иногда попадаются сканеры настроенные суффиксами CR и LF. При настройке в 1с, нужно удалить суффикс LF. Отсканируйте пункт 5 или 6, чтобы оставить только один суффикс CR.

6. Режим USBCOM + суффикс CR

ds2208 Добавить суффикс CR и режим USB COM

Сброс на заводские настройки - Развернуть

Сканер zebra ds2208 настройка 1с, если не сканирует в 1с.

Пишите в support@kasselect.ru или в +7(987)-268-84-37 WhatsApp

7. Сканер неправильно сканирует в программах

ds2208 Medium Delay 20ms

Задержка нажатия клавиши USB может быть установлена на среднюю задержку 20 (мс) или длительную задержку 40 (мс). Эти настройки замедляют передачу данных и дают стороннему программному обеспечению больше времени для обработки входящих передаваемых данных, предотвращая неправильные коды.

ds2208 Medium Delay 40ms

8. Состояние индикаторов и их значение

Низкий/средний/высокий сигнал - Включение питания.
Короткий высокий сигнал - Штрих-код успешно декодирован.
4 долгих низких сигнала - Ошибка при передаче.
Высокий/низкий/высокий/низкий сигнал - Параметры успешно установлены.
Высокий/низкий сигнал - Выполнена правильная последовательность.
Низкий/высокий сигнал - Выполнена неправильная последовательность программирования или отсканирован штрих-код отмены.

Не горит - Сканер включен и готов к работе, или отсутствует питание сканера.
Зеленый - Штрих-код успешно декодирован.
Красный - Ошибка при передаче (возможно не правильно настроен интерфейс сканера).

Сканер ds9208. Внешний вид.

9. Регулировка громкости сигнала

Высокая громкость

Сканер ds2208, ds9208. Громкий звук сигнала.

Средняя громкость

Сканер ds2208, ds9208. Средний звук сигнала.

Низкая громкость

Сканер ds2208, ds9208. Тихий звук сигнала.

10. Не сканирует шк настроек

Включает сканирование шк настроек

Сканер ds2208, ds9208. Enable Parameter Bar Code Scanning.

Отключает сканирование шк настроек

Сканер ds2208, ds9208. Disable Parameter Bar Code Scanning.

11. Версия прошивки сканера

Сканер ds2208, ds9208. Версия прошивки сканера. Report Software Version.

вторник, 20 июля 2021 г.

Публикация базы 1С на веб-сервере Apache на сервере Linux

 

Публикация базы 1С на веб-сервере Apache на сервере Linux

 2014-09-20_10-59-52.jpg
В отличие от других подобных публикаций здесь будет описано как опубликовать базу (располагающуюся на сервере windows) на веб-сервере apache (расположенном на соседнем сервере под linux).


Введение

Если кратко – то в этой статье я попробую рассказать как опубликовать базу 1С на web-сервер апач, расположенном на сервере с Linux (Ubuntu).

Зачем нужна такая схема? По большей части это связано с безопасностью. Если вы скажете системному администратору, что вам нужно «выпустить сервер 1С в интернет», то от нормального специалиста вы получите кучу возражений (ну а от грамотного специалиста – еще и альтернативные пути). Одним из таких путей и является предложенная схема.

В предложенной варианте – «снаружи» будет доступен только сервер на Ubuntu и апач. Таким образом, в случае атаки – пострадает только этот один сервер, заменить который не составит труда (например перенаправив входящие соединения на его резервную копию), а ваша драгоценная 1С останется не тронутой. Не спорю, для серьезных компаний с армией бородатых админов эта схема покажется не серьезной и для них безопасность будет ассоциироваться только с DMZ (желающие могут погуглить), но для средней руки конторы это будет вполне приемлемый вариант. Конечно, от Anonymous это вас не спасет, но обычным «хацкерам»  довольно сильно затруднит задачу.

 

Исходные данные

Для реализации такой схемы нам потребуется сервер А: Ubuntu 12 c Apache2 и сервер В: Windows 2008, MS SQL, платформа 1С 8.3. В моих экспериментах я использовал арендованные виртуальные сервера.

Нюанс: В качестве сервера А выступал Xeon 2600 series, 1 ядро, 512 Мб RAM, 16Гб SSD (250р/мес), в качестве сервера В выступал Xeon 2600 series, 2 ядра 4096 Мб RAM 128 Гб SSD (2800руб/мес). Белые статически IP. Оплата посуточная. Вы можете развернуть подобный сервер, поиграться с ним пару дней, потратив 200р. Время на разворачивание нового сервера – 5 мин,  доступ по RDP (Windows) SSH-клиент (Linux). Здесь указывать, каким именно хостингом пользовался, я не буду (чтобы не сочли за рекламу). Но если спросите в комментариях – отвечу.

Решение задачи

1.     Начнем с настройки сервера А

Подключаемся к серверу. Для подключения можно использовать SSH-клиент  Putty (предупреждаю, работать придется через командную строку).

В моем случае сервер Ubuntu был развернут с предустановленным апачем, поэтому процедуру установки описывать не буду (мануалы есть в гугле).

Единственно что я сделал сразу при подключении (по совету админа) – это выполнил две команды:

apt-get update

apt-get upgrade

Так же установил клиент  (что-то типа коммандера, намного облегчит работу в дальнейшем):

apt-get mc

Запуск выполняется просто командой:

mc

Дальше проверяем работу апача:

service apache2 start

service apache2 restart

Нюанс: при разворачивании нового сервера среди предустановленного ПО я указал Apache, MySQL, nginx. Так вот, апач упорно не хотел стартовать, ругаясь на занятый порт. При помощи гугла выяснил что на 80 порту сидел тот самый nginx. Менять порт не хотел, поэтому просто удалил этот виртуальный сервер и за 2 минуты получил новый, уже без nginx.

Проверяем работу апача из-вне, набираем в браузере http://ВашВнешнийИПАдресСервера/

Видим заветное «It works!»

Дальше устанавливаем компоненты 1С на сервер Ubuntu. Вам понадобится платформа для Linux, а точнее архив вида 8.3.5.1119_deb, с двумя файлами внутри 8.3.5.1119_deb.tar.gz и 8.3.5.1119_deb64.tar.gz (в моем случае Ubuntu 64-битная, поэтому я беру второй файл). Где их взять объяснять не буду, а вот как скачать на сервер расскажу. Качаем при помощи команды:

Wget http://www.сайтфайлобменника.com/8.3.5.1119_deb64.tar.gz

8.3.5.1119_deb64.tar.gz – это тоже архив. Распаковать его можно либо командой tar, либо открыть MC, открыть архив как папку, и скопировать из этой папки-архива нужные нам файлы в нужное нам место. А нужны нам следующие файлы:

1c-enterprise83-common_8.3.5-1119_amd64.deb

1c-enterprise83-server_8.3.5-1119_amd64.deb

1c-enterprise83-ws_8.3.5-1119_amd64.deb

Эти файлы можно также открыть в MC и запустить файлы INSTALL. Устанавливать нужно в таком же порядке, как указаны здесь. По сути нам нужен только последний пакет, но гугл и форумы сказали, что для пакета ws рекомендуется пакет server, а для server рекомендуется common. Так что ставим все.

После установки 1С службу агента 1С можно остановить:

service srv1cv83 stop

Нюанс: на самом деле, если не ошибаюсь, для апача нужен всего один файл wsap22.so, который можно найти в самом пакете 1c-enterprise83-ws_8.3.5-1119_amd64.deb, не устанавливая саму 1С. Нужно достать его оттуда, положить в специальную папку (можно даже в папку апача) и указать к нему путь в файле httpd.conf. Однако у меня это не сработало. При старте апача возникала ошибка:

root@vm88265:/etc/apache2# service apache2 restart

apache2: Syntax error on line 214 of /etc/apache2/apache2.conf: Syntax error on line 1 of /etc/apache2/httpd.conf: Cannot load /etc/apache2/wsap22.so into server: nuke83.so: cannot open shared object file: No such file or directory

Action 'configtest' failed.

Возможно, было дело в правах на файл, возможно в чем-то еще, а возможно одного такого файла не достаточно. Если у вас получится прикрутить wsap22.so к апачу без установки 1С – расскажите.

 

2.     На время отвлечемся от сервера А и проверим, что сервер В соответствует нашим требованиям.

На сервер В у вас должна быть развернута клиент-серверная тестовая база (почему не файловая – расскажу дальше, хотя и файловая тоже возможна). Также в брандмауэре у вас должны быть открыты порты на входящие подключения (1540,1541,1560-1590).

 

3.     Продолжаем настройку Ubuntu.

В файле host (находится по адресу  /etc/host) мы должны прописать:

ВнутреннийИПАдресСервера1С ИмяСервера1С

10.10.1.12  MainServer1C

 

В корне создайте папку wwwroot (название по желанию), в ней создайте папку TestPub (это виртуальная папка, в которой будет храниться файл default.vrd)

 

Теперь идем по адресу

/opt/1c/v8.3/x86_64/

Нас интересует файл webinst. Можете его запустить – увидите какие параметры командной строки он использует:

root@vm88136:/opt/1C/v8.3/x86_64# ./webinst

 1C:Предприятие 8. Утилита публикации веб-клиента

     Публикация:

     webinst [-publish] websrv -wsdir VirtualDir -dir Dir -connstr connStr [-confPath confPath]

     Публикация на основе существующего vrd файла:

     webinst [-publish] websrv [-wsdir VirtualDir] -descriptor vrdPath -dir Dir [-connstr connStr] [-confPath confPath]

     Удаление публикации:

     webinst -delete websrv -wsdir VirtualDir [-dir Dir] [-connstr connStr] [-confPath confPath]

     Удаление публикации по существующему vrd файлу:

     webinst -delete websrv [-wsdir VirtualDir] -descriptor vrdPath [-dir Dir] [-connstr connStr] [-confPath confPath]

     Ключи:

         -publish: опубликовать, ключ по умолчанию

        -delete: удалить публикацию

        websrv

            -apache2: публикация Веб-клиента для Apache 2.0

            -apache22: публикация Веб-клиента для Apache 2.2

        -wsdir VirtualDir: виртуальный каталог

        -dir Dir: физический каталог, в который будет отображен виртуальный

        -descriptor vrdPath: путь к существующему vrd файлу

        -connstr connStr: строка соединения ИБ

        -confPath confPath: полный путь к конфигурационному файлу

 

Пример строки для публикации базы:

./webinst -apache22 -wsdir test -dir /wwwroot/TestPub -connstr "Srvr=10.7.12.108;Ref=test;" -confPath /etc/apache2/httpd.conf

 

Разберем мой случай:

«./webinst» - запуск на исполнение

«-apache22» - публикуем на апаче

«-wsdir test» - имя, по которому будет доступна ваша база из-вне, в данном случае адрес будет выглядеть http://ВашИПАдрес/test

«-dir /wwwroot/TestPub» - пусть к папке, где будет располагаться файл default.vrd

«-connstr "Srvr=10.7.12.108;Ref=test;" – строка подключения к информационной базе

«-confPath /etc/apache2/httpd.conf» - путь к конфигурационному файлу апача

 

Результатом будет «Publication successful»

Нюанс: бился с этой строкой долго. Судя по всему чувствительна к регистру и еще фиг к чему. Единственно что могу порекомендовать – вводить все параметры внимательно.

Нюанс: чуть ранее я упоминал, что с базами в файлом варианте у вас могут быть проблемы. Суть – вы должны расшарить папку базы для линукса. А это само по себе не простое действие. Да и не безопасное.

 

В результате этого в файле /etc/apache2/httpd.conf (конфигурационный файл апача) будут выполнены следующие изменения:

LoadModule _1cws_module "/opt/1C/v8.3/x86_64/wsap22.so"

 

# 1c publication

Alias "/test" "/wwwroot/TestPub/"

<Directory "/wwwroot/TestPub/">

    AllowOverride All

    Options None

    Order allow,deny

    Allow from all

    SetHandler 1c-application

    ManagedApplicationDescriptor "/wwwroot/TestPub/default.vrd"

 </Directory>

А также в папке  /wwwroot/TestPub/ мы видим файл default.vrd следующего содержания:

<?xml version="1.0" encoding="UTF-8"?>
<point xmlns="http://v8.1c.ru/8.2/virtual-resource-system"
        xmlns:xs="http://www.w3.org/2001/XMLSchema"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        base="/test"
        ib="Srvr=10.7.12.108;Ref=test;"/>

Перезапускаем апач и пробуем подключиться по адресу:

http://ВашВнешнийИПАдрес/test

 

Для использования веб-сервисов и хттп-сервисов и отладки 1С в файл default.vrd необходимо привести к виду:

<?xml version="1.0" encoding="UTF-8"?>
<point xmlns="http://v8.1c.ru/8.2/virtual-resource-system"
        xmlns:xs="http://www.w3.org/2001/XMLSchema"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        base="/test"
        ib="Srvr=10.7.12.108;Ref=test;">
    <debug enable="true"
            url="10.7.12.108"/>
    <ws pointEnableCommon="false">
        <point name="Exchange"
                alias="exchange.1cws"
                enable="false"/>
        <point name="Exchange_2_0_1_6"
                alias="exchange_2_0_1_6.1cws"
                enable="false"/>
        <point name="InterfaceVersion"
                alias="InterfaceVersion.1cws"
                enable="false"/>
        <point name="DataTransfer"
                alias="DataTransfer.1cws"
                enable="true"/>
    </ws>
    <httpServices>
        <service name="GetString"
                rootUrl="main"
                enable="true"/>
    </httpServices>
</point>

Нюанс: в разделе

<debug enable="true"
            url="10.7.12.108"/>

мы указываем, на каком компьютере искать предметы отладки. Так вот. Строка подключения конфигуратора (в котором будет ловить отладку) – должна быть тоже «srvr=10.7.12.108;ref=test;», т.е. подключения конфигуратора к базе должно быть тоже по ип.

Ну вот и все. Уверен у вас получится повторить этот эксперимент. А если нет – то гугл ответит на 90% ваших вопросов. А если и он не поможет – спрашивайте здесь)

суббота, 27 марта 2021 г.

Публикация базы 1С на сервере Linux

Публикация базы 1С на сервере Linux

1
Обновляем систему, чтобы все пакеты ставились корректно, а также были установлены все последние обновления безопасности.
# yum update
2
Выполняем установку веб-сервера Apache.
# yum install httpd
3
Скачиваем дистрибутивы 1С. Скачать их можно с официального сайта. Нам необходимы файлы:
  • 1C_Enterprise83-ws-8.x.x-xxxx.x86_64.rpm
  • 1C_Enterprise83-common-8.x.x-xxxx.x86_64.rpm
  • Содержаться они в архиве rpm64_8_x_xx_xxxx.tar.gz

На сайте https://releases.1c.ru/ доступны по пути:

Технологические дистрибутивы −> Технологическая платформа 8.3 −>Версия платформы (например 8.3.14) −>Cервер 1С:Предприятия (64-bit) для RPM-based Linux-систем.

4
Устанавливаем пакеты 1С.
# rpm -i 1C_Enterprise83-common-8.3.14-1630.x86_64.rpm 1C_Enterprise83-ws-8.3.14-1630.x86_64.rpm 1C_Enterprise83-server-8.3.14-1630.x86_64.rpm

Публикуем базу:

# cd /opt/1C/v8.3/x86_64/
# ./webinst -publish -apache24 -wsdir yt-demo -dir /var/www/yt-demo -connstr "File=""/opt/yt-demo"";" -confpath /etc/httpd/conf/httpd.conf

После корректной публикации должно быть следующее сообщение: Публикация выполнена (Publication successful).

Кратко рассмотрим параметры утилиты webinst:

  • publish - Действие, которое планируем выполнить. Возможны варианты публикации базы или удаления публикации базы.
  • apache24 - тип веб-сервера.
    • apache2: публикация веб-клиента для Apache 2.0
    • apache22: публикация веб-клиента для Apache 2.2
    • apache24: публикация веб-клиента для Apache 2.4
  • wsdir- имя алиаса, по которому идет обращение в браузере.
  • dir - путь публикации, директория в папке веб-сервера.
  • connstr - строка соединения, состоит из трех частей «File=» - указывает что база файловая (возможен вариант Srv для серверной базы), «/opt/yt-demo» - путь к каталогу информационной базы 1С , «;» - служебный символ.
  • confpath - путь к файлу конфигурации веб-сервера.

Проверяем, в файле /etc/httpd/conf/httpd.conf должна быть строка:

LoadModule _1cws_module "/opt/1C/v8.3/x86_64/wsap24.so"

А также часть кода для публикации:

# 1c publication
Alias "/yt-demo" "/var/www/yt-demo/"
<Directory "/var/www/yt-demo/">
    AllowOverride All
    Options None
    Require all granted
    SetHandler 1c-application
    ManagedApplicationDescriptor "/var/www/yt-demo/default.vrd"
</Directory>
5
Прописываем права на папку /opt/yt-demo. Так как в данном примере с базой будет работать только веб-сервер - предоставляем права только учетной записи веб-серера.
# chown -R apache:apache /opt/yt-demo/
6
Перезапускаем Apache.
# service httpd restart
7
Проверяем доступность публикации.

 

Публикация базы 1С на Windows Server 2016

1
Установка роли веб-сервера. Через диспетчер серверов необходимо установить роль веб-сервера IIS.
2
Установка клиента 1С. Скачиваем дистрибутив с официального сайта. Нам нужна «Технологическая платформа 1С:Предприятия для Windows».
3
При установке выбираем компоненты «1С: Предприятие 8» и «Модули расширения веб-сервера».
4
После установки добавляем в список информационных баз нужную нам базу и запускаем в режиме конфигуратора.
5
Выполняем действие - «Администрирование» - «публикация на веб-сервере».
6
Нажимаем кнопку опубликовать. И получаем сообщение о том, что публикация выполнена и необходимо перезапустить веб-сервер.
7
Делаем отдельный пул приложений. Назовем его 1c-32x и разрешим ему запуск 32-х битных приложений.
8
Назначаем сайту пул приложений 1c-32x.
9
Проверяем доступность публикации через веб-браузер.


 

Автозапуск 1С при подключении к ТС на Windows Server 2016

 

Порой возникает необходимость автоматического запуска 1С и входа в базу при входе на Терминальный сервер. Как пример: подключение на терминальный сервер через устройства типа ТСД (Терминал сбора данных).

Шаг 1

Для того, чтобы настроить автозапуск 1С при подключении на Терминальный сервер под управлением Windows Server 2016 нам необходимо внести изменения в реестр, т.к начиная с данной редакции серверной ОС эта функция отключена:

HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services 
Name: fQueryUserConfigFromDC
Type: Reg_DWORD
Value: 1 (Decimal)
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\\
Name: fQueryUserConfigFromDC
Type: Reg_DWORD
Value: 1 (Decimal)

После того, как изменения в реестр будут внесены, необходимо перезагрузить сервер.

Шаг 2

На данном этапе мы переходим к настройке Среды запуска для конкретного пользователя.

  1. После того как мы перезагрузили сервер нам необходимо зайти в консоль Управление компьютером. Для этого нам необходимо зайти в Средства администрирования.
Настройка Среды запуска для пользователя

Рисунок 1 - Настройка Среды запуска для пользователя

  1. Затем выбираем консоль Управление компьютером.
Выбор консоли Управление компьютером

Рисунок 2 - Выбор консоли Управление компьютером

  1. Далее переходим на вкладку Локальные пользователи, выбираем Пользователи. Переходим в свойства пользователя, которому необходимо настроить автоматический запуск 1С и кликаем на вкладку Среда.
Настройка автоматического запуска 1С

Рисунок 3 - Настройка автоматического запуска 1С

  1. Для того, чтобы 1С запускалась автоматически на данном этапе нам необходимо ввести в поля Имя файла программы и Рабочая Папка следующие параметры. Т.е вводим путь до исполняемого файла клиента 1С.

    Пример:

    Имя файла программы: C:\Program Files (x86)\1cv8\common\1cestart.e

    Рабочая папка: C:\Program Files (x86)\1cv8\common\

Путь к исполняемому файлу

Рисунок 4 - Путь к исполняемому файлу

Дополнительно

Данный функционал можно довести до полного автоматизма. То есть когда при входе на Терминальный сервер открывается не только окно программы 1С, но ещё и запускается нужная база данных с уже введенными от неё учетными данными.

Для этого необходимо добавить ключи в поле Имя файла программы которое мы рассматривали на предыдущем шаге.

"C:\Program Files (x86)\1cv8\common\1cestart.exe" enterprise /S "server_name\bp" /N "Иванов Иван" /P "1243"

Где:

  • enterprise - запуск системы 1С:Предприятие 8.x в режиме «1С:Предприятие»;
  • /S - адрес информационной базы, хранящейся на сервере 1С:Предприятия 8.x, складывается следующим образом: <Имя компьютера, работающего сервером приложений>\ <Ссылочное имя информационной базы, известное в рамках сервера 1С:Предприятия 8.x>;
  • /N - имя пользователя. Должно быть указано так же, как в списке пользователей, создаваемом в Конфигураторе;
  • /P - пароль пользователя, имя которого указано в параметре /N. Если у пользователя нет пароля, этот параметр можно опустить.

Настройка автоматического запуска 1С при входе на Терминальный сервер завершена.

Проброс COM-портов через TCP/IP с помощью Virtual Serial Ports Emulator (VSPE).

    Подключение кассового оборудования. Проброс COM-портов через TCP/IP с помощью Virtual Serial Ports Emulator (VSPE).

    4.1 Настройка VSPE на сервере

    Запустить программу VSPE. Нажать на кнопку «Создать новое устройство».

    После нужно создать виртуальные порты (для каждой кассы свой порт). Номера портов лучше взять пониже, дабы избежать проблем.

    В открывшемся окне в выпадающем меню выбрать TcpServer. Нажать кнопку «Далее».

    Установить локальный номер tcp-порта, который будет прослушиваться. Выбрать COM-порт, к которому подключено оборудование через преобразователь интерфейсов. Нажать на кнопку «Настройки».

    Нажать кнопку «Готово».

    В появившемся окне нажать на кнопку запуска (зеленый треугольник). Серверная часть настроена.

    4.2 Настройка VSPE на клиенте.

    Запустить программу VSPE. Нажать на кнопку «Создать новое устройство».

    В открывшемся окне в выпадающем меню выбрать «Connector».

    Выбрать виртуальный COM-порт, который будет использоваться для проброса. Нажать на кнопку «Готово».

    Нажать на кнопку «Создать новое устройство».

    В открывшемся окне в выпадающем меню выбрать TcpClient

    Указать IP-адрес удаленного сервера и номер TCP-порта, на который будет осуществляться подключение. Выбрать виртуальный COM-порт, который будет использоваться для соединения.

    В появившемся окне нажать на кнопку запуска (зеленый треугольник). Клиентская часть готова.

    После меняем настройки 1С на наши виртуальные порты. Делаем тестирование.

    5. Примечание

    Несколько нюансов данного ПО:

    • Данный продукт бесплатный для Windows с архитектурой х86 и платный для х64. Использовать версией для х64 можно и без ключа. Просто постоянно выскакивает предложение купить программу. Других ограничений (по времени работы или функционалу) нет.
    • Программа не сохраняет настройки автоматически и не запускается в момент старта ОС. Поэтому необходимо сохранить настроенную конфигурацию и создать ярлык с параметром:

    "C:\Program Files\Eterlogic.com\Virtual Serial Ports Emulator\VSPEmulator.exe" -minimize -hide_splash c:/****.vspe

    где, c:/****.vspe - путь к сохраненному файлу.

    Созданный ярлык помещаем в автозагрузку или создаем bat-файл для запуска программы с использованием сохраненной конфигурации. Bat-файл должен содержать строку следующего формата:

  • VSPEmulator. exe c:/vspebat. vspe - minimize - hide_splash,

    Для автоматического запуска программы VSPE после запуска ОС Windows следует поместить ссылку на этот bat-файл в автозагрузку или планировщик заданий. (для серверной и клиентской части).

  • Так же необходимо сделать проброс портов (которые указывали) на маршрутизаторе.

 

Настройка веб-публикации 1С, подключение кассового оборудования


    Содержание:

    1. Настройка веб-сервера в IIS

    Устанавливаем веб-сервер Internet Information Server, который по умолчанию входит в поставку Microsoft Windows Server. При установке обязательно выбираем компоненты:

    • Общие функции HTTP (Common HTTP Features)
      • Статическое содержимое (Static Content)
      • Документ по умолчанию (Default Document)
      • Обзор каталогов (Directory Browsing)
      • Ошибки HTTP (HTTP Errors)
    • Разработка приложений (Application Development)
      • ASP
      • ASP.NET 3.5
      • Расширяемость .NET 3.5 (.NET Extensibility 3.5)
      • Расширения ISAPI (ISAPI Extensions)
      • Фильтры ISAPI (ISAPI Filters)
    • Исправление и диагностика (Health and Diagnostics)
      • Ведение журнала HTTP (HTTP Logging)
      • Монитор запросов (Request Monitor)
    • Средства управления (Management Tools)
      • Консоль управления IIS (IIS Management Console)

    2. Публикации базы в 1С

    На этот же сервер, где развернут веб-сервер IIS, устанавливаем «1С:Предприятие» (32-разрядные компоненты), обязательно выбрав при установке компоненты:

    • 1С:Предприятие
    • Модули расширения веб-сервера

    Если планируется настроить 64-разрядный модуль расширения веб-сервера, то необходимо дополнительно запустить программу установки 64-разрядного сервера из соответствующей поставки «1С:Предприятие» и установить компоненту:

    • Модуль расширения веб-сервера

    2.1 Настройка прав доступа для IIS

    Теперь необходимо установить необходимые права на ключевые папки, используемые при работе веб-доступа к базам данных «1С:Предприятие». Для каталога хранения файлов веб-сайтов, опубликованных на веб-сервере (по-умолчанию: C:\inetpub\wwwroot\), необходимо дать полные права группе «Пользователи» (Users). В принципе, этот шаг можно пропустить, но тогда для публикации или изменения публикации базы данных надо будет запускать «1С:Предприятие» от имени администратора. Для настройки безопасности данного каталога, кликаем по нему правой кнопкой мыши и в контекстном меню выбираем «Свойства» (Properties).

    В открывшемся окне свойств, переходим на вкладку «Безопасность» (Security) и нажимаем кнопку «Изменить» (Edit…), для изменения действующих разрешений. Появится окно разрешений для данного каталога. В списке Групп или пользователей (Groups or user names) выделим группу «Пользователи» (Users) и в списке разрешений для выбранной группы установим флаг «Полный доступ» (Full control). Затем нажмем «Применить» (Apply) для записи изменений и закроем все окна при помощи кнопки «ОК».

    Далее необходимо дать полные права на каталог с установленными файлами «1С:Предприятие» (по-умолчанию: C:\Program Files (x86)\1cv8\ для 32-разрядного модуля расширения и C:\Program Files\1cv8\ для 64-разрядного) группе IIS_IUSRS. Для этого выполняем аналогичные описанным выше действия, с той лишь разницей, что для того, чтобы необходимая группа появилась в списке «Группы или пользователи» (Groups or user names), необходимо нажать расположенную под списком кнопку «Добавить» (Add..), а в окне выбора групп или пользователей нажать «Дополнительно» (Advanced…).

    Затем нажимаем расположенную справа кнопку «Поиск» (Find Now), после чего выбираем необходимую группу IIS_IUSRS в таблице результатов поиска и нажимаем «ОК».

    И, наконец, если публикация выполняется для файловой базы, необходимо также дать группе IIS_IUSRS полные права на каталог с расположенными файлами данной информационной базы.

    2.2 Публикация базы данных на веб-сервере

    Переходим к непосредственной публикации базы данных на веб-сервере. Для этого запускаем «1С:Предприятие» в режиме Конфигуратор для той базы, которую требуется опубликовать. Затем в меню выбираем «Администрирование» — «Публикация на веб-сервере…»

    Откроется окно настройки свойств публикации на веб-сервере. Основные поля, необходимые для публикации, уже заполнены по-умолчанию:

    • Имя виртуального каталога — имя, по которому будет происходить обращение к базе данных на веб-сервере. Может состоять только из символов латинского алфавита.
    • Веб-сервер — выбирается из списка найденных на текущем компьютере веб-серверов. В нашем случае это Internet Information Services.
    • Каталог — физическое расположение каталога, в котором будут располагаться файлы виртуального приложения.
    • Соответствующими флагами можно указать типы клиентов для публикации, а также указать возможность публикации Web-сервисов. В расположенной ниже таблице можно отредактировать список Web-сервисов, которые будут опубликованы, а также в столбце «Адрес» изменить синоним, по которому будет происходить обращение к данному Web-сервису.
    • Также для веб-сервера IIS есть возможность указать необходимость выполнения аутентификации на веб-сервере средствами ОС, установив соответствующий флаг.

    Выбрав необходимые настройки публикации, нажимаем «Опубликовать».

    Если публикация прошла без ошибок, увидим соответствующее сообщение.

    2.3 Подключение к опубликованной информационной базе через веб-браузер

    Для подключений к опубликованной базе данных запускаем Internet Explorer, в строке адреса вводим путь вида http://localhost/<Имя публикации информационной базы>. В данном примере это http://http://localhost/BP.

    К данной информационной базе также можно подключиться и с любого компьютера в сети, обратившись к веб-серверу по его внутреннему (или если прокинут порт 80 - по внешнему) IP-адресу.

    3. Создание бесплатного SSL-сертификата Let’s Encrypt на IIS

    Наличие SSL-сертификата для сайта позволяет защитить данные пользователей, передаваемые по сети от атак человек-посередине (man-in-the-middle) и гарантировать целостность переданных данных.

    Let’s Encrypt – это некоммерческий центр сертификации, позволяющий в автоматическом режиме через API выпускать бесплатные SSL/TLS сертификаты. Выдаются только сертификаты для валидации доменов (domain validation) со сроком действия 90 дней, что не является проблемой из-за наличия встроенной возможности автоматического перевыпуска сертификата, в результате чего обеспечивается непрерывность защиты.

    Далее описан способ получить SSL-сертификат от Let’s Encrypt при помощи консольной утилиты LetsEncrypt-Win-Simple. Она представляет собой простой мастер, который позволяет выбрать один из сайтов, запущенных на IIS и автоматически выпустить и привязать к нему SSL-сертификат.

    3.1 Создание SSL-сертификата

    Скачиваем последний релиз клиента со страницы проекта на GitHub https://github.com/PKISharp/win-acme/releases

    Распакуем его в каталог на сервере с IIS: c:\inetpub\letsencrypt

    Запустится интерактивный мастер, который сначала попросит указать ваш e-mail, на который будут отправляться уведомления о проблемах с обновлением сертификата, и согласиться с пользовательским соглашением.

    Затем нужно будет выбрать, что необходимо создать новый сертификат (N: Create new certificate) и выбрать тип сертификата (в нашем примере нет необходимости использовать сертификат с несколькими SAN), поэтому достаточно выбрать пункт 1. Single binding of an IIS site.

    Далее утилита выведет список запущенных на IIS сайтов и предложит выбрать сайт, для которого нужно выпустить сертификат.

    Следующий этап – выполнение валидации домена. Доступно несколько вариантов валидации: TLS, через запись в DNS или через HTTP). Самый простой вариант — выбрать пункт 4 [http-01] Create temporary application in IIS (recommended). В этом случае на веб-сервере будет создано небольшое приложение, через которое серверы Let’s Encrypt смогут провести валидацию.

    Примечание. При выполнении TLS/HTTP проверки ваш сайт должен быть доступен снаружи по полному DNS имени по протоколам HTTP (80/TCP) и HTTPS (443/TCP).

    После валидации утилита letsencrypt-win-simple автоматически отправит запрос на генерацию сертификата, скачает его (все необходимые файлы, а также закрытый ключ сохраняются в каталог C:\Users\User\AppData\Roaming\letsencrypt-win-simple) и создаст привязку на сайте IIS. В том случае, если на сайте уже установлен SSL-сертификат, он будет заменен новым. Кроме того, будет создано правило в планировщике заданий Windows, которое запускается каждый день и автоматически выпускает и устанавливает новый сертификат каждые 60 дней.

    3.2 Создание отдельного пула и сайта с подключенным с SSL-сертификатом.

    Создаем отдельный пул в IIS для letsencrypt

    Добавляем сайт в новый пул. Порт указываем 443 (или другой на который позже сделаем проброс на 443 порт).

    Указать новый сертификат в «Сертификаты SSL»:

    Настроить привязку к нашему сайту:

    Проверяем.

    Веб-публикация 1С доступна по защищенному соединению https.

    4. Подключение кассового оборудования. Проброс COM-портов через TCP/IP с помощью Virtual Serial Ports Emulator (VSPE).

    4.1 Настройка VSPE на сервере

    Запустить программу VSPE. Нажать на кнопку «Создать новое устройство».

    После нужно создать виртуальные порты (для каждой кассы свой порт). Номера портов лучше взять пониже, дабы избежать проблем.

    В открывшемся окне в выпадающем меню выбрать TcpServer. Нажать кнопку «Далее».

    Установить локальный номер tcp-порта, который будет прослушиваться. Выбрать COM-порт, к которому подключено оборудование через преобразователь интерфейсов. Нажать на кнопку «Настройки».

    Нажать кнопку «Готово».

    В появившемся окне нажать на кнопку запуска (зеленый треугольник). Серверная часть настроена.

    4.2 Настройка VSPE на клиенте.

    Запустить программу VSPE. Нажать на кнопку «Создать новое устройство».

    В открывшемся окне в выпадающем меню выбрать «Connector».

    Выбрать виртуальный COM-порт, который будет использоваться для проброса. Нажать на кнопку «Готово».

    Нажать на кнопку «Создать новое устройство».

    В открывшемся окне в выпадающем меню выбрать TcpClient

    Указать IP-адрес удаленного сервера и номер TCP-порта, на который будет осуществляться подключение. Выбрать виртуальный COM-порт, который будет использоваться для соединения.

    В появившемся окне нажать на кнопку запуска (зеленый треугольник). Клиентская часть готова.

    После меняем настройки 1С на наши виртуальные порты. Делаем тестирование.

    5. Примечание

    Несколько нюансов данного ПО:

    • Данный продукт бесплатный для Windows с архитектурой х86 и платный для х64. Использовать версией для х64 можно и без ключа. Просто постоянно выскакивает предложение купить программу. Других ограничений (по времени работы или функционалу) нет.
    • Программа не сохраняет настройки автоматически и не запускается в момент старта ОС. Поэтому необходимо сохранить настроенную конфигурацию и создать ярлык с параметром:

    "C:\Program Files\Eterlogic.com\Virtual Serial Ports Emulator\VSPEmulator.exe" -minimize -hide_splash c:/****.vspe

    где, c:/****.vspe - путь к сохраненному файлу.

    Созданный ярлык помещаем в автозагрузку или создаем bat-файл для запуска программы с использованием сохраненной конфигурации. Bat-файл должен содержать строку следующего формата:

  • VSPEmulator. exe c:/vspebat. vspe - minimize - hide_splash,

    Для автоматического запуска программы VSPE после запуска ОС Windows следует поместить ссылку на этот bat-файл в автозагрузку или планировщик заданий. (для серверной и клиентской части).

  • Так же необходимо сделать проброс портов (которые указывали) на маршрутизаторе.

 

Активация Microsoft Windows и Office через контейнер Docker (параллельный импорт)

  Всем привет!!! Так как компания Microsoft ушла с нашего рынка и активация ее продуктов превращается в цирк, то мне все карты в руки научит...