В облаке, как дома: Устраиваемся поудобнее. Рабочее место пользователя 1С на базе РЕД ОС (HTTPS и архивирование)

29.01.24

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

На прошедшем вебинаре "В облаке, как дома: Как настроить рабочее место пользователя 1С на базе РЕД ОС" мы договорились, что продолжением будет установка соединения по HTTPS и архивирование. Это финальные штрихи в настройке рабочего места. Вот и оно (продолжение) или они (штрихи), прошу под кат...

На прошедшем вебинаре "В облаке, как дома: Как настроить рабочее место пользователя 1С на базе РЕД ОС", кто не смотрел, может заглянуть.

 

 

Мы договорились, что продолжением будет установка соединения по HTTPS и архивирование. Это финальные штрихи в настройке рабочего места.


 

 

В первых строках своего повествования - еще раз большое спасибо всем пришедшим на него, не ожидал такого количества собравшихся.

Статья ориентирована на компании 50+- пользователей, а возможно 1+-, без сложных сетей.

Тем не менее, если уровень вебинара был в терминологии изучения английского языка Basic, то для этой статьи уровень Pre-Intermediate.

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

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

 

 

Что получится в результате:

  • Вы сможете подключиться к развернутому в облаке рабочему месту по защищенному протоколу.
  • У вас будут по расписанию создаваться архивы в облако Яндекс Диск

 

Приступим:

Первым делом (в том случае, если вы произвели все действия начального вебинара и у вас уже есть работающий сервер 1С с опубликованной базой) нужно получить имя домена, на которое будем получать бесплатный сертификат Let's Encrypt.

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

Для остальных напомню, что Let's Encrypt предоставляет бесплатный сертификат на 90 дней в первую очередь для удостоверения подлинности владения доменом. Это нам полностью подходит для нашей задачи.

Доменное имя мы получим так же бесплатно на сервисе duckdns, он хорош еще тем, что позволяет авторизовываться через github и имеет API для управления записями TXT DNS, а это именно тот способ подтверждения владения доменом для Let's Encrypt который нам нужен.

Есть еще вариант подтверждения с размещением специального текстового файла на своем веб-сервере, он более сложный, если веб-сервер вы не планируете настраивать и совсем не подойдет, если сертификат вы получаете например, для закрытой внутренней сети.


 

Это некоторый предварительные действия после выполнения которых можно переходить в консоль сервера.

Команды консоли будут выделены курсивом.

Получаем сертификат

Для этого через менеджер пакетов snap установим certbot и плагин certbot-dns-duckdns.

yum install snapd -y
systemctl enable --now snapd.socket
ln -s /var/lib/snapd/snap /snap

ln -s /snap/bin/certbot /usr/bin/certbot
snap install certbot --classic

snap install certbot-dns-duckdns
snap set certbot trust-plugin-with-root=ok
snap connect certbot:plugin certbot-dns-duckdns
certbot plugins

 

 

После этого достаточно длинной строкой получаем сертификат, ее краткий смысл: плагин создает запись TXT для нашего домена по запросу Let's Encrypt.

certbot certonly --non-interactive --agree-tos --email serverspace.1c@yandex.ru  --preferred-challenges dns  --authenticator dns-duckdns  --dns-duckdns-token "3297727f-e3cb-4e15-8ad4-a954311f957a" --dns-duckdns-propagation-seconds 30  -d "serverspace1c.duckdns.org, *.serverspace1c.duckdns.org"

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

Посмотреть TXT записи можно сервисом www.digwebinterface.com

 

 

Очистить TXT записи можно запросом к API вида 

https://www.duckdns.org/update?domains=serverspace1c.duckdns.org&token=3297727f-e3cb-4e15-8ad4-a954311f957a&txt=txt&verbose=true&clear=true

где токен, это ваш токен и нас интересует окончание &clear=true

После этого можно повторить запрос и успешно получить сертификат


 

Устанавливаем nginx
dnf install nginx -y
systemctl enable nginx --now

И правим его конфигурацию

Заманчиво редактировать /etc/nginx/nginx.conf  т.к. в нем уже есть но закомментирована часть для HTTPS, но это не комильфо.

Гораздо правильнее скопировать его в каталог /etc/nginx/conf.d и удалить лишнее, оставив настройку HTTPS и добавив пути к полученному сертификату и перенаправление запросов на наш сервер 1С.

Получим итоговый текст файла 443.conf, название выбрано произвольно, любой файл с расширением .conf будет считываться при старте nginx


 

 

Желательно перед перезапуском nginx проверить, что все без ошибок.

nginx -t
systemctl restart nginx
systemctl status nginx --no-pager

На этом все. Публикация HTTPS выполнена. Надо добавить правило SeLinux и перезагрузить сервер для верности

setsebool -P httpd_can_network_connect 1

 

 

Устанавливаем Яндекс Диск по инструкции с официального сайта

wget -dv http://repo.yandex.ru/yandex-disk/yandex-disk-latest.x86_64.rpm
rpm -ivh yandex-disk-latest.x86_64.rpm
yandex-disk setup

 


Желательно еще поправить его файл конфигурации, чтобы не синхронизировать лишние каталоги, добавив в него exclude-dirs=<каталоги которые не надо синхронизировать>.

yandex-disk start
yandex-disk status
yandex-disk stop


 

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

 

backup.sh

#!/bin/bash
declare -r DIRNAME=${BASH_SOURCE[0]}
if [ $# -lt 2 ] 
  then
    echo "No arguments supplied"
else
  tar cfz $1/$2_backup_$(date +%Y_%m_%d_%H_%M_%S).tar.gz ${DIRNAME%/*/*}/bases/$2/* --ignore-failed-read > /dev/null 2>&1
fi  

yandex-disk.sh

#!/bin/bash
yandex-disk sync -c /root/.config/yandex-disk/config.cfg > /dev/null 2>&1

Проверяем, что все работает в командной строке

mkdir -p /1c/scripts
chmod -R +777 /1c
chmod +x /1c/scripts/*.sh

/1c/scripts/backup.sh /root/Yandex.Disk/backups/ edo_demo
yandex-disk sync

 

 

Заносим скрипты в расписание cron, не забыв перед этим проверить, что время на компьютере, а точнее часовой пояс установлен корректно

timedatectl
timedatectl list-timezones
timedatectl set-timezone Europe/Moscow

mcedit /etc/crontab
30 20 * * * root /1c/scripts/backup.sh /root/Yandex.Disk/backups/ edo_demo
35 20 * * * root /1c/scripts/yandex-disk.sh
43 6 2 */2 * certbot renew --post-hook "systemctl reload nginx"

systemctl restart crond.service
systemctl status crond.service --no-pager

На этом все цели, поставленные в вебинаре, достигнуты.

 

 

Статья продолжает серию публикаций:

Благодарю компанию ©Serverspace за предоставленное оборудование.

Из планов развития, как обычно, два варианта на выбор:

  • Методы работы и возможности автономного сервера платформы 1С
  • Собрать небольшой домен и рассмотреть доменную авторизацию

Голосование в комментариях.

См. также

Внешние источники данных Облачные сервисы, хостинг Программист Бизнес-аналитик Пользователь Руководитель проекта Платформа 1С v8.3 8.3.14 1С:Розница 2 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Бытовые услуги, сервис Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Гостиничный бизнес Рестораны, кафе и фаст-фуд Реклама, PR и маркетинг Легкая промышленность, мода и одежда Управленческий учет Платные (руб)

Расширение позволяет автоматизировать управление картами лояльности и взаимодействие с покупателями при помощи интеграции корпоративной системы 1С и специализированного облачного сервиса "CARDPR". Автоматическая онлайн синхронизация сведений о владельце электронной карты лояльности и баланса бонусных баллов на карте между корпоративной системой 1С и мобильным устройством покупателя. Оповещение покупателя об изменении баланса его электронной карты лояльности и проведении каких-либо маркетинговых акций в компании при помощи рассылки push-сообщений на его мобильное устройство.

36000 руб.

20.07.2023    3202    1    2    

11

Оптовая торговля Розничная торговля Логистика, склад и ТМЦ Облачные сервисы, хостинг Программист Пользователь Платформа 1С v8.3 Управляемые формы 1С:Управление торговлей 10 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Платные (руб)

Данная система предназначена всем, кому нужно выгружать данные в SPOT 2D или в ОРИМИ. Позволяет гибко настроить получение данных для каждого поля файла и файла выгрузки в целом. Имеет отборы по организации, складу, и папкам номенклатуры. Есть возможность выгружать данные как вручную, с выбором конкретного файла, за конкретный период, так и в автоматическом режиме в указанное вами время. Выгрузка может выполняться в файл или через http напрямую. Имеется подробная справка по настройке, а также примеры запросов для приведенных в примерах файлов выгрузки. Может работать в составе любой конфигурации! Обновление от 31.03.2020!

14400 руб.

19.10.2018    28699    7    1    

9

Linux Программист Бесплатно (free)

При многолетней эксплуатации 1С на Windows и MS SQL в базе накапливаются не самые оптимальные запросы, COM-объекты и скрипты, зависящие от ОС. Из-за этого процесс перехода на PostgreSQL и переноса сервера 1С на Linux неизбежно осложняется длительным исправлением кода и оптимизацией запросов. Расскажем о том, как с задачей такого рефакторинга справились в компании Avito.

13.11.2024    4544    klimat12    15    

25

Облачные сервисы, хостинг Linux Тестирование QA Сервера Системный администратор Программист Платформа 1С v8.3 Бесплатно (free)

Завершающая публикация цикла "В облако на работу:.. Рецепты от Капитана", в ходе которых был собран полнофункциональный рабочий контур 1С в сети на отечественной Ред ОС. С веб-серверами, доменной авторизацией, архивированием, отказоустойчивостью и прочая, прочая... В этой статье мы определяемся с быстродействием системы, проводим нагрузочное тестирование и отпускаем ее в свободное плавание (зачеркнуто) выпускаем ее в продуктовый контур, где, конечно же, придется отлавливать ошибки, мониторить состояние и т.п.

31.10.2024    1308    capitan    0    

0

Облачные сервисы, хостинг Linux Сервера Системный администратор Программист Платформа 1С v8.3 Бесплатно (free)

Одна из завершающих публикаций цикла "В облако на работу:.. Рецепты от Капитана", в ходе которых был собран полнофункциональный рабочий контур 1С в сети на отечественной Ред ОС. С веб-серверами, доменной авторизацией, архивированием и прочая, прочая... На закуску разбираемся с отказоустойчивостью. В этой публикации для серверов 1С заодно попробуем подобно сериалу «Разрушители легенд» подтвердить или опровергнуть пару устойчивых мифов о требованиях назначения функциональности.

18.10.2024    1701    capitan    5    

12

Облачные сервисы, хостинг Бесплатно (free)

Перенос 1С в облако — это процесс, который требует тщательного планирования и грамотного исполнения, чтобы избежать простоев и обеспечить бесперебойную работу системы. В этой статье рассмотрим пошаговую инструкцию по переносу 1С в облако, уделяя особое внимание минимизации рисков и обеспечению беспрерывной работы вашего бизнеса.

02.09.2024    443    EFSOL_oblako    0    

-2

Облачные сервисы, хостинг Системный администратор Программист Бесплатно (free)

Примеры решения некоторых насущных проблем при работе с облачными сервисами, покрываемых CLI версией Открытого пакета интеграций - OInt CLI.

05.08.2024    1831    bayselonarrend    7    

26
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. capitan 2507 29.01.24 18:42 Сейчас в теме
Посмотрел историю своих публикаций.
Обычно пишу их в январе и раньше добавлял в них текст, потом вынес его в отдельный пост
https://forum.infostart.ru/forum1/topic208883/
Прошло уже 5 лет но актуальность не пропала
2. Dragonim 142 30.01.24 07:44 Сейчас в теме
Доменное имя мы получим так же бесплатно на сервисе duckdns

Любое бесплатно полученное доменное имя может в любой момент стать платным, причем очень дорого, или перестать принадлежать вам. Читайте лицензионное соглашение, там очень много интересного. Это касается любого сервиса выдающего бесплатные доменные имена любого уровня.

Устанавливаем nginx

Зачем использовать nginx, ведь у вас уже есть веб-сервер?

Устанавливаем Яндекс Диск

Посмотрите в сторону rclone
3. capitan 2507 30.01.24 10:35 Сейчас в теме
Вспоминается...
Девушка, это вы вчера танцевали на столе в нижнем белье? — Я? В нижнем белье? Да вы рано ушли!

(2) Вы просто первую часть не видели)
Любое бесплатно полученное доменное имя может в любой момент стать платным

duckdns уже сто лет как бесплатный, у него амазон спонсор и сервисов ему подобных чуть больше чем дофига
ведь у вас уже есть веб-сервер?

веб-сервера у нас нет, у нас автономный сервер 1С публикует базу, а он не умеет https
(2)
Посмотрите в сторону rclone

зачем мне мультитул если у меня одно облачное хранилище?
Но так то посмотрю, спасибо
4. Dragonim 142 30.01.24 12:47 Сейчас в теме
(3)
Вспоминается...
Девушка, это вы вчера танцевали на столе в нижнем белье? — Я? В нижнем белье? Да вы рано ушли!

Нет, не вспоминается.

duckdns уже сто лет как бесплатный, у него амазон спонсор и сервисов ему подобных чуть больше чем дофига

Не надо рассказывать как у вас всё хорошо и прекрасно. Откройте договор и почитайте.

веб-сервера у нас нет, у нас автономный сервер 1С публикует базу, а он не умеет https

Вопрос про nginx снимается. Появляется другой вопрос: почему именно автономный сервер, а не файловая база данных? У них разница в лицензию на сервер 1С, а по скорости вы практически не выигрывайте.
5. capitan 2507 30.01.24 12:59 Сейчас в теме
(4)
У них разница в лицензию на сервер 1С

а я не настолько богат

По поводу доменных имен и сертификатов написал в первых строках статьи - желающие могут их купить.
А если например бухгалтер ИП шников собирает для одного любимого себя сервер в облаке зачем они ему нужны?
Оставьте свое сообщение