Вариант настройки сервисов для рабочей группы

24.06.20

Администрирование - Администрирование веб-серверов

В публикации описан мой вариант построения сервисов для рабочей группы.

Вводные

1. Выделенный сервер с подключением к интернет

2. Требуется организовать для 5 пользователей (небольшая организация)

2.1 сервер 1С

2.2 файловый сервер

2.3 Web socket сервер (1C сервер взаимодействия)

3. Подключение к сервисам должно быть защищенным, контролируемым, логируемым

3.1 Подключение будет как из локальной сети, так и из интернет

3.2 Подключение к базам 1С будет по протоколу HTTPS, используется только тонкий клиент

3.3 Подключение для редактирования конфигурации только одним пользователем по RDP.

4. Чтобы присутствовала возможность ограничивать/распределять нагрузку по сервисам.

5. Было лицензионно "чистым" и относительно дешевым

6. Чтобы базовые вещи мог сделать "не сильно продвинутый" админ или "продвинутый" пользователь.

 

Описание общее, если нужно уточнить информацию (примеры конфигураций, скриншоты), то пишите в комментарии, по возможность дополню статью.

 

Общая схема

 

Виртуализация

Смешивать все сервисы в одной ОС возможно, но на мой взгляд не нужно. Для разделения использую виртуализацию в частности ESXi, в ограничения лицензии по железу ПК выделенный под сервер как правило вписывается. Лицензия на ESXi бесплатна, но обновления на него нужно устанавливать вручную (после установки из основного дистрибутива), в гугле ищется по "установить обновления esxi".

"Почему не HyperV или KVM?", проще устанавливается, есть достаточно удобный web интерфейс из коробки, удобно управлять виртуальными сетями.

 

Организация сети

Исхожу что в сервере есть минимум один физический интерфейс и он подключен в internet, возможно есть второй с подключением к LAN.

На уровне гипервизора организую виртуальную подсети

1. для серверов

2. с подключением к интернет

3. с подключением к LAN

Между собой сети связываю через роутер с firewall. Из сети интернет в "для серверов" проброс портов делаю только для сервисов с белыми IP, например виртуальные АТС (Манго, МТС и подобное). Для организации использую pfSense https://www.pfsense.org/. Из преимуществ web интерфейс, удобство работы с VPN.

Использую DNS имена для обращения к сервисам, обычно у компании есть сайт, соответственно публичное доменное имя. Локальная сеть выходит в интернет через роутер и пользуется локальным DNS сервером, для внешних пользователей DNS "пробрасывается" с помощью настроек VPN и для адресов компании пользуется локальным сервером.

Для подключения пользователей использую OpenVPN по протоколу UDP с PKI, если "по простому", то при обращении к серверу без ключа доступа на запрос ответа не будет, это препятствует сканированию и анализу открытых портов.

Сертификаты доступа для пользователей генерируются при создании пользователей в pfSense, конфигурационный файл для клиента формируется с помощью доп пакета OpenVPN Client Export Package. При компроментации сертификат можно отозвать что не позволит с ним подключится к системе. Пользователи имеют доступ только до сервера, друг друга не видят (настройка по умолчанию). На клиент можно передать DNS подсеть и нужные маршруты до сереверов в зоне VNet_srv. Преимущество перед PPtP VPN, то что не маршрутизирует весь поток через сервер VPN, только сети указанные в настройках.

 

Файловый сервер

Использую Open-E DSS V7 SOHO https://www.open-e.pro/open-e-sravnenie-joviandss-dss-v7-i-dss-soho/, лицензия бесплатна с ограниченим до 4ТБ. Web админ панель. Из важных для меня плюсов, одну и туже папку можно опубликовать по SMB, FTP, NFS. На нем размещаю общую папку и папку для томов хранения прикрепленных файлов из 1С. Т.к. 1С не умеет использовать для сетевых папок авторизацию, то папка просто срывается.

Резервное копирование файлов реализовано через rclone, статья по настройке //infostart.ru/public/1183106/, скрипт запускается на сервере 1С.

 

Сервер 1С

Организовываю на Windows 10 и MSSQL Express. Серверный вариант windows относительно дорог и относительно win10 и в данном контексте преимуществ не имеет. У MSSQL Express основное ограничение на размер БД в 10ГБ, при адекватной записи/размещении данных и периодической подрезке этого хватает.

Разворачивать на Linux смысла особого нет, потому что диагностировать ошибку/восстановить работоспособность сложнее чем на win, разница в стоимости по лицензиям 10 тыс. руб. при проблемах бизнесу дороже выйдет.

 

Публикация баз 1C по HTTP

В качестве локального web сервера использую apache 2.4 no ssl, рабочие msi сборки (которые видит конфигуратор) беру с https://www.anindya.com/.

Для организации доступа по HTTPS создаю отдельную виртуальную машину с ubuntu + nginx. SSL ключи использую LetsEncrypt, инструкция по получению https://www.digitalocean.com/community/tutorials/nginx-let-s-encrypt-ubuntu-18-04-ru. С помощью nginx получается гибко распределять HTTP запросы фильтруя по доменному имени, директории, источникам запросов. Пример: для одной базы опубликован HTTP сервис с авторизацией в конфиг файле и для этой же базы нужно опубликовать тонкий клиент. Решается c помощью фильтрации по IP

location / {
    deny  192.168.0.15;
    allow 192.168.0.0/24;
    allow 2001:0ab3::/32;
    deny  all;
}

и перенаправлением на нужный URL

location / {
    proxy_pass http://192.168.13.31;
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Real-IP $remote_addr;
    }

 

Резервное копирование баз 1С

Резервное копирование делаю в .dt, пользователям проще самим восстанавливать при необходимости. Для решения есть скрипты по powershell, пришел к тому что проще пользоваться GUI, при возможности использую EffectSaver(https://efsaver.ru/) лицензия стоит 2,5 тыс. руб. Бекап в локальную папку, дальше шифрование и отправка с помощью rclone.

 

Обслуживание баз

В MSSQL Express встроенный инструментарий регламентного обслуживания отключен. Можно использовать скрипты. При возможности использую QMB (http://qmbsql.ru/) для express бесплатен, одного плана обслуживания хватает. при желании с помощью него можно организовать бекам средствами SQL.

 

Итог

На основе набора приложений можно построить гибкую стабильную и безопасную систему для рабочей группы.

Стоимость лицензий без учета 1С 15 тыс. руб., что для малого бизнеса подъемная сумма.

 

Благодарю за внимание.

ESXi pfSense nginx.

См. также

Сервера Системный администратор Россия Бесплатно (free)

Основные критерии, на которые необходимо обратить внимание.

31.07.2024    2073    EFSOL_oblako    2    

0

Сервера Системный администратор Россия Бесплатно (free)

Цель данного исследования — сравнить производительность процессоров Intel и AMD при работе с 1С в виртуальной среде Hyper-V.

25.07.2024    4799    EFSOL_oblako    19    

3

Мониторинг Сервера Системный администратор Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

StartPlus и система контроля и сбора информации (настраиваем за час и пользуемся). Данное решение позволяет быстро собирать и анализировать различную информацию из разных источников данных (не обязательно серверов 1С). В любой момент можно менять состав сводной информации без сложной разработки на стороне 1С.

1 стартмани

18.07.2024    650    6    moolex    0    

4

Сервера Linux Системный администратор Россия Бесплатно (free)

Тема Ubuntu, PostgreSQL и 1С уже избитая. Но все же, следуя инструкциям всех мануалов, пришлось потратить около 3-х дней. И как результат — готовые скрипты для установки сервера 1С и PostgreSQL на свежей Ubuntu за 5 минут.

14.06.2024    2766    user1389975    13    

35

Мониторинг Сервера Системный администратор Программист Платформа 1С v8.3 Управляемые формы Абонемент ($m)

Размер, имя информационной базы из реестра кластера (файл 1CV8Clst.lst), дата последнего изменения файлов в каталоге баз (srvinfo\reg_*\uuid) центрального сервера. Отдельно показан размер индекса ППД (полнотекстовый поиск данных) и его актуальность. Полезна в случае, если у вас удалялись базы 1С и никто не озаботился удалением журналов регистрации.

1 стартмани

15.05.2024    1245    20    MaximSh    0    

7

Администрирование веб-серверов Системный администратор Бесплатно (free)

В материале описан порядок действий по настройке Apache для работы по защищенному протоколу HTTPS c 1С на операционной системе РедОС с выпуском сертификата SSL.

09.05.2024    1819    artemusII    1    

9

Администрирование веб-серверов Системный администратор Программист Бесплатно (free)

Инструкция, как опубликовать веб-сервис с помощью OSPanel.

06.05.2024    1314    lostcay    0    

5
Оставьте свое сообщение