Есть такая контора, называется «Рарус», одно из направлений которой — сдача в аренду 1С с помесячной оплатой небольшим организациям. Волею случая пришлось с ними столкнуться в рамках организации доступа к вышеупомянутой арендованной версии 1С. Я намеренно пишу просто «1С» без указания типовой конфигурации — при рассмотрении вопроса организации доступа это совершенно не играет роли. Штатный механизм выглядит так: нужно скачать специальный «запускатор» под наименованием Rent1C.exe, после чего запустить его и ввести учетные данные. На этом этапе будет создано SSTP VPN подключение к серверу 1С, зайти на который можно через веб-клиент (т.е. через браузер), либо через «тонкий клиент» (его нужно устанавливать отдельно). Мне больше по нраву веб-версия из-за относительной её автономности, отсутствия необходимости проводить какие-то обновления (как это делается для «тонкого клиента») и некоторых других моментов. Учитывая, что в организации в качестве ОС используется Debian, я окончательно остановился на веб-версии. Однако, мне не пришелся по нраву клиент Раруса Rent1C, так что я предлагаю избавиться от него.

В первую очередь я поставил себе на виндовую машину клиент Раруса, присмотрелся к создаваемому SSTP VPN подключению — и здорово удивился, когда обнаружил, что логин (и, как оказалось, пароль тоже) совпадает с тем, что нужно вводить в «запускатор» от Раруса. В качестве эксперимента я удалил клиент Раруса и создал SSTP подключение полностью вручную — связь без проблем установилась, я смог зайти в веб-версию через браузер. Поработав в 1С некоторое время пришел к выводу, что никаких дополнительных механизмов для обеспечения доступа не требуется, достаточно на машине с Debian создать SSTP подключение руками и все будет работать. В принципе, на этом можно было остановиться, однако хотелось сделать более красиво. В дело вступает новый игрок — Mikrotik, который будет «держать» подключение до серверов Раруса, а машины в локальной сети, будучи за NAT‘ом, смогут ходить до серверов Раруса без каких-либо настроек на рабочих компьютерах вообще. Открываем WinBox, заходим в Mikrotik.

Создаем новое SSTP подключение:

/interface sstp-client
add authentication=mschap1,mschap2 connect-to=gta2.1c-hosting.com disabled=no name=sstp-out1 password=YOUR_PASSWORD profile=default-encryption user=YOUR_LOGIN verify-server-certificate=yes

Из вышеописанной команды видно, что используются методы аутентификации MS CHAP и MS CHAP v.2, адрес сервера 1С gta2.1c-hosting.com, а вместо YOUR_LOGIN и YOUR_PASSWORD нужно подставить пару логин-пароль, используемую в клиенте Раруса Rent1C. Если все сделано верно, то вы увидите, что среди интерфейсов появился новый, sstp-out1. Осталось добавить возможность клиентам видеть сеть за этим VPN, для этого создадим правило NAT:

/interface sstp-client

/ip firewall nat

add action=masquerade chain=srcnat out-interface=sstp-out1

Если адрес сервера 1С и адрес Mikrotik, полученный при подключении через SSTP, находятся в разных подсетях, то можно вручную добавить маршрут до подсети сервера 1С (в моем случае это 172.22.1.0/24) через шлюз SSTP подключения (это интерфейс sstp-out1).

Экспериментальным образом выявлено, что раз в сутки подключение разрывается — видимо, Рарус так пытается намекнуть, мол, слишком много работать — вредно для здоровья. В моем случае Mikrotik был настроен на ежедневную автоматическую перезагрузку ночью, поэтому нюанс с разрывом подключения не стал помехой. Однако, если вы делаете доступ «с нуля», то имейте этот момент в виду.