Полная версия

OSS Group


Авторизация

  

Навигация

Текущее местоположение:  OSS Group :: Wiki :: Admin :: Настройка поддержки SASL в Postfix
Главное меню:   Главная   Документация   Разработка   Контакты   Поиск   Карта сайта   Wiki   Блоги
Разделы Wiki:   Admin  APT  Sandbox

Настройка поддержки SASL в Postfix

SASL обеспечивает возможность отправки сообщений пользователям не из mynetworks. При этом пользователь должен аутенифицироваться при соединении с сервером. Т.к. имя пользователя/пароль передавать открытым текстом не следует, то предварительно должно быть установлено защищённое соединение через TLS.

Требуется postfix с поддержкой SSL (с релиза 2.2 должна быть штатно в основной ветви). Устанавливается cyrus-sasl2.

При использовании базы данных пользователей в файле настройка и запуск демона saslauthd не требуется.
База пользователей должна быть в chroot-окружении Postfix (/var/spool/postfix/etc/sasl2/sasldb2).

Создаём каталог и файл:

 # mkdir /var/spool/postfix/etc/sasl2/
 # touch /var/spool/postfix/etc/sasl2/sasldb2
 # chmod 640 /var/spool/postfix/etc/sasl2/sasldb2
 # chown root:postfix /var/spool/postfix/etc/sasl2/sasldb2

Добавляются новые пользователи:

 # saslpasswd2 -f /var/spool/postfix/etc/sasl2/sasldb2 -c user@domain

Проверяем наличие пользователя:

 # sasldblistusers2 /var/spool/postfix/etc/sasl2/sasldb2

Указываем метод проверки паролей для Postfix:

 # echo "pwcheck_method: sasldb" > /etc/sasl2/smtpd.conf

Создаём сертификаты postfix.pem; postfix-dsa.pem; cacert.pem, без DH. См. Создание сертификатов OpenSSL.

Создаём ключи DH:

 # openssl gendh -out /etc/postfix/dh_1024.pem -2 -rand /var/run/egd-pool 1024
 # openssl gendh -out /etc/postfix/dh_512.pem -2 -rand /var/run/egd-pool 512
 # chmod 400 /etc/postfix/dh_1024.pem /etc/postfix/dh_512.pem
 # chown root:root /etc/postfix/dh_1024.pem /etc/postfix/dh_512.pem

Создаём файлы для кеширования соединений:

 # touch /etc/postfix/smtpd_scache.dir
 # touch /etc/postfix/smtpd_scache.pag 
 # chown root:postfix /etc/postfix/smtpd_scache.*
 # chmod 660 /etc/postfix/smtpd_scache.*

Добавляем в main.cf:

 # SASL support
 smtpd_sasl_auth_enable = yes
 smtpd_sasl_local_domain = domain.ru
 smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination
 smtpd_sender_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination
 smtpd_sasl_security_options = noanonymous
 smtpd_sasl_tls_security_options = $smtpd_sasl_security_options
 smtpd_tls_auth_only=yes

 # TLS support
 smtp_use_tls = yes
 smtpd_use_tls = yes
 smtp_tls_note_starttls_offer = yes
 smtpd_tls_enforce_tls = yes
 smtpd_tls_session_cache_database = sdbm:/etc/postfix/smtpd_scache
 smtpd_tls_session_cache_timeout = 360s
 # tls_random_source = dev:/dev/urandom
 # tls_daemon_random_source = dev:/dev/urandom

 # Sertificates
 smtpd_tls_cert_file = /etc/postfix/postfix.pem
 smtpd_tls_key_file = $smtpd_tls_cert_file
 smtpd_tls_dcert_file = /etc/postfix/postfix-dsa.pem
 smtpd_tls_dkey_file = $smtpd_tls_dcert_file
 smtpd_tls_CAfile = /etc/postfix/cacert.pem

 smtpd_tls_dh1024_param_file = /etc/postfix/dh_1024.pem
 smtpd_tls_dh512_param_file = /etc/postfix/dh_512.pem

И всё. Без TLS оно работает в обычном режиме, без авторизации.
При подключении с использованием TLS - разрешает авторизацию.


Для получения сертификатов сервера и проверки работы SSL к серверу можно подключиться через

 openssl s_client -connect <server>:<port> -showcerts -starttls smtp

Дата создания: 2006-11-25 17:45:04 (Фетисов Н. А. (naf))
Последнее изменение: 2006-11-25 17:45:04 (Фетисов Н. А. (naf))
Владелец: Фетисов Н. А. (naf)
Версия: 1


  Не показывать комментарии


Wiki::Admin   Карта раздела  Оглавление  Изменения за сутки  Изменения за неделю  Изменения за месяц



Быстрый поиск по Wiki:
И ИЛИ

На эту страницу ссылаются:

©2006-2024 OSS Group. All rights reserved. | Техническая поддержка: Открытые Информационные Технологии и Системы