NAMOR CMS Developer
Joined: 15 Oct 2005 Posts: 1079
|
Posted: 11 May 2012 21:31 (Fri) Post subject: v1,2,3| Обмениваемся почтой по SSL (на примере gmail.com) |
|
|
Обмениваемся почтой по SSL (на примере gmail.com)
Задача:
Организовать в CMS приём входящей почты из ящиков, расположенных на gmail.com, и отправку исходящей почты на gmail.com.
Дополнение от 29.03.2015. В CMS 3.05 beta 1 была добавлена поддержка SSL/TLS, в связи с чем данное решение более не актуально для этой и последующих версий CMS.
Code: | [!] Поддержка защищённых соединений (SSL/TLS) с внешними SMTP- и
POP3-серверами, в том числе при MX-доставке. |
Дополнение от 11.08.2016. В CMS 3.07 beta 1 была добавлена поддержка SSL/TLS в SMTP- и POP3-сервисах. Таким образом, теперь в CMS весь обмен почтой может быть защищён с помощью SSL/TLS штатными средствами.
Code: | [!] Поддержка защищённых соединений (SSL/TLS) в SMTP- и POP3-сервисах
(в режиме подключения на стандартный порт). |
Решение:
Поскольку в CMS пока нет встроенной поддержки SSL/TLS, воспользуемся программой stunnel. Она позволяет создавать SSL-туннели двух видов:
- клиент без SSL -> stunnel -> сервер с SSL
- клиент с SSL -> stunnel -> сервер без SSL
Для решения нашей задачи нужен туннель первого вида, используя который CMS сможет работать в качестве клиента с внешними SMTP- и POP3-серверами по SSL.
Работоспособность решения проверена автором на CMS 2.12 и stunnel 4.53.
Установка и настройка stunnel
1. Загружаем stunnel 4.53 (964 Кб) (сайт — www.stunnel.org) на тот же компьютер, где установлен CMS, и запускаем.
2. Устанавливаем все предлагаемые компоненты (2.4 Мб).
Примечание. Если в процессе установки появилось сообщение "Ошибка при инициализации приложения (0xc0150002)", прекращаем установку, устанавливаем Microsoft .NET Framework (проверено на версии 3.5) и повторно запускаем установку stunnel. В stunnel 4.54 (бета-версия) данная проблема решена. (Подсказал Karman).
3. В процессе установки появляется окно консоли. В нём нужно вводить запрашиваемые данные для создания SSL-сертификата. Можно просто нажимать Enter, тогда будут использованы значения по умолчанию, указанные в квадратных скобках.
Code: | Country Name (2 letter code) [PL]:
State or Province Name (full name) [Mazovia Province]:
Locality Name (eg, city) [Warsaw]:
Organization Name (eg, company) [Stunnel Developers]:
Organizational Unit Name (eg, section) [Provisional CA]:
Common Name (FQDN of your server) [localhost]: |
4. После установки в корне диска появляется файл .rnd. Судя по информации, приведённой в справке, этот файл можно без последствий удалить.
5. Для установки службой (название службы — stunnel) выполняем: Пуск - Программы - stunnel - Service install.
6. Открываем файл настроек для редактирования: Пуск - Программы - stunnel - Edit stunnel.conf.
В разделе "Global options" добавляем строку (чтобы не появлялся значок в области уведомлений):
В разделе "Service definitions" настройки приводим к следующему виду (остальные настройки не меняем):
Quote: | ;[pop3s]
;accept = 995
;connect = 110
;[imaps]
;accept = 993
;connect = 143
;[ssmtp]
;accept = 465
;connect = 25
[gmail-pop3]
client = yes
accept = 127.0.0.1:2110
connect = pop.gmail.com:995
[gmail-smtp]
client = yes
accept = 127.0.0.1:2025
connect = smtp.gmail.com:465 |
Если нужно работать по SSL и с другими серверами, добавляем для них дополнительные секции в разделе "Service definitions". Например для почты Яндекса добавляем:
Quote: | [yandex-pop3]
client = yes
accept = 127.0.0.1:2111
connect = pop.yandex.ru:995
[yandex-smtp]
client = yes
accept = 127.0.0.1:2026
connect = smtp.yandex.ru:465 |
Для Mail.Ru:
Quote: | [mailru-pop3]
client = yes
accept = 127.0.0.1:2112
connect = pop.mail.ru:995
[mailru-smtp]
client = yes
accept = 127.0.0.1:2027
connect = smtp.mail.ru:465 |
Сохраняем конфигурацию.
7. Запускаем службу stunnel: Пуск - Программы - stunnel - Service start.
8. Проверяем подключение к pop.gmail.com:
Code: | > telnet.exe 127.0.0.1 2110
+OK Gpop ready for requests from 173.194.71.108 i9pf4396573lbh.10
|
Проверяем подключение к smtp.gmail.com:
Code: | > telnet.exe 127.0.0.1 2025
220 mx.google.com ESMTP mo3sm6496546lab.2 |
Установка и настройка stunnel закончена.
Настройка CMS
Приём и отправку почты настраиваем как обычно, только вместо адреса:порта pop.gmail.com:995 используем 127.0.0.1:2110, а вместо smtp.gmail.com:465 — 127.0.0.1:2025. Соответствующие имена пользователей, пароли, адреса e-mail — от почтовых ящиков на gmail.com, без изменений.
Настройка почтовых клиентов
Настройку почтовых клиентов не меняем. Они по-прежнему должны быть настроены на обмен почтой с CMS. |
|