- Что такое stunnel?
- Настройка получения почты через ssl в стандартном почтовом клиенте 1с без дополнительных библиотек и изменения кода через стороннюю бесплатную программу stunnel
- 1: подготовка системы
- 2: установка stunnel
- 3: настройка stunnel
- 4: создание ssl-сертификата
- 5: установка прокси-сервера squid
- 6: настройка stunnel как клиента
- Ссылки
Что такое stunnel?
Программа Stunnel предназначена для развертывания шифрования SSL между удаленным клиентом и локальным или удаленным сервером. Stunnel добавляет функциональность SSL к наиболее часто используемым демонам Inetd (например, POP2, POP3) и IMAP-серверам без каких-либо изменений в коде программы.
Stunnel превращает любой небезопасный TCP-порт в зашифрованный с помощью криптографического пакета OpenSSL. Это похоже на небольшую безопасную VPN, которая работает на определенных портах.
Примечание: данное руководство было протестировано на виртуальных выделенных серверах Ubuntu 12.04, Ubuntu 12.10, Ubuntu 13.04.
Настройка получения почты через ssl в стандартном почтовом клиенте 1с без дополнительных библиотек и изменения кода через стороннюю бесплатную программу stunnel
Многие мои коллеги по работе и по профессии, уверен, сталкиваются с аналогичными ситуациями, когда программа 1С при работе с конфигурацией, мягко говоря, работает “странно”. Как говорит один хороший знакомый (к слову, один из авторов УТ 11):
– “вот, ну согласись, нанять пару серьезных методистов – реальных дядечек с реального производства, до начала разработки – единственная ЭЛЕМЕНТАРНАЯ политика, как можно было этого не сделать???? там их НЕТ. Причем это 0 в плане затрат на разработку, там нет ограничений бюджета, это просто самый тупой прокол.”
В этой статье приведу способы лечения пресловутых проколов (за последний месяц).
21.09.2021
15862
zekrus
26
1: подготовка системы
При помощи нижеприведенных команд обновите список пакетов и сами пакеты:
apt-get updateapt-get upgrade
2: установка stunnel
Программу Stunnel можно установить при помощи стандартного менеджера пакетов:
apt-get install stunnel4 -y
3: настройка stunnel
Настройки Stunnel хранятся в файле stunnel.conf, который по умолчанию находится в /etc/stunnel. Чтобы создать этот файл, используйте:
nano /etc/stunnel/stunnel.conf
Чтобы идентифицировать себя на сервере, нужно использовать сертификат SSL; для этого необходимо задать путь к этому сертификату в файле stunnel.conf Используйте следующую строку (сам файл сертификата будет создан далее):
cert = /etc/stunnel/stunnel.pem
Затем нужно указать сервис для взаимодействия с Stunnel. Это может быть любой сервис, который использует сеть (почтовый сервер, прокси-сервер и т.д.).
В данном руководстве для примера будет показано, как защитить трафик между прокси-сервером Squid и клиентом, использующим Stunnel. Инструкции по установке Squid можно найти в разделе 6.
Указав название сервиса, взаимодействующего с Stunnel, нужно указать Stunnel, на каком порте нужно прослушивать данный сервис. Это может быть любой из 65535 портов, если только он не заблокирован другим сервисом или фаерволом.
[squid]
accept = 8888
Далее нужно указать в конфигурационном файле порт и IP-адрес сервиса, для которого создается безопасный туннель. В основном Stunnel принимает пакеты от безопасного порта, а затем пересылает их на порт и IP-адрес указанного сервиса.
По умолчанию Squid-прокси запускается на локальном хосте и использует порт 3128; следовательно, чтобы программа Stunnel могла принимать соединения с этим сервисом, в данном случае в конфигурационный файл нужно внести следующую строку:
connect = 127.0.0.1:3128
В целом конфигурационный файл stunnel.conf должен иметь такой вид:
client = no[squid]
accept = 8888connect = 127.0.0.1:3128cert = /etc/stunnel/stunnel.pem
Примечание: параметр client = no не является обязательным, поскольку Stunnel по умолчанию работает в режиме сервера.
4: создание ssl-сертификата
Stunnel использует сертификат SSL для защиты соединений. Такой сертификат можно легко создать с помощью пакета OpenSSL:
openssl genrsa -out key.pem 2048openssl req -new -x509 -key key.pem -out cert.pem -days 1095cat key.pem cert.pem >> /etc/stunnel/stunnel.pem
Вышеприведенные команды генерируют закрытый ключ, создают сертификат при помощи этого ключа, а затем объединяют эти файлы в один файл по имени stunnel.pem, который и будет использовать Stunnel.
Примечание: при создании сертификата нужно указать некоторую информацию; обратите внимание на поле Common Name – в нем нужно указать имя хоста или IP-адрес сервера.
Затем настройте автоматический запуск Stunnel. Для этого откройте файл /etc/default/stunnel4 в текстовом редакторе:
nano /etc/default/stunnel4
и измените значение параметра ENABLED на 1:
ENABLED=1
В завершение перезапустите Stunnel, чтобы обновить настройки.
/etc/init.d/stunnel4 restart
5: установка прокси-сервера squid
Чтобы установить Squid, используйте:
apt-get install squid3 -y
6: настройка stunnel как клиента
Примечание: данный раздел демонстрирует установку и настройку Stunnel в качестве клиента в Windows, но настройки и инструкции по установке программы в Linux или даже Android останутся такими же. Единственное отличие – местонахождение конфигурационного файла stunnel.conf.
Для того, чтобы Stunnel мог взаимодействовать с сервером, сертификат SSL (см. раздел 4) должен находиться на клиенте. Существует множество способов перемещение файла stunnel.pem с сервера, но в данном случае для этого используется протокол SFTP – одновременно достаточно простой и безопасный.
При помощи SFTP-клиента (например, Filezilla) подключитесь к серверу и загрузите файл stunnel.pem из каталога /etc/stunnel/ на клиент.
Примечание: чтобы получить больше информации о работе SFTP, читайте руководство «Использование SFTP для безопасного обмена файлами с удаленным сервером».
Ссылки
https://www.digitalocean.com/community/tutorials/how-to-set-up-an-ssl-tunnel-using-stunnel-on-ubuntu
https://ru.wikipedia.org/wiki/Telnet
