Оглавление
Использование SSL повсеместно стало популярным, а иногда даже необходимым. В данной статье приведены примеры использования бесплатного сертификата от Let’s Encrypt с некоторыми распространенными демонами Unix систем, таких как Dovecot, Postfix, Asterisk и другие
Asterisk (TLS и SRTP)
Сертификат от Let’s Encrypt можно использовать для шифрования трафика между Asterisk и VoIP клиентом. Речь идет о TLS и SRTP. Asterisk ожидает, что этот сертификат будет комбинацией закрытого ключа, сертификата и цепочки. Итак, нам нужно объединить файлы, которые были установленный командой cerbot. Для этого необходимо добавить в /etc/asterisk/sip.conf параметр tlscertfile=/etc/asterisk/tls/SRTP.pem Как настроить TLS и SRTP рассказано в статье Asterisk и TLS
1 2 3 4 |
cat /etc/letsencrypt/live/kost.su/privkey.pem > /etc/asterisk/tls/<span lang="ru">SRTP</span>.pem cat /etc/letsencrypt/live/kost.su/fullchain.pem >> /etc/asterisk/tls/<span lang="ru">SRTP</span>.pem |
Dovecot
Для подключения сертификата необходимо добавить строки в конфигурационный файл/etc/dovecot.conf
1 2 3 4 |
ssl_cert = </etc/letsencrypt/live/kost.su/cert.pem ssl_key = </etc/letsencrypt/live/kost.su/privkey.pem |
1 2 3 4 5 6 7 8 9 10 11 |
ssl_protocols = !SSLv2 !SSLv3 ssl = yes verbose_ssl = no # Fix 'The Logjam Attack' ssl_cipher_list = ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5 # Dovecot 2.2.6 or greater: # Specify the wanted DH parameters length ssl_dh_parameters_length = 2048 ssl_prefer_server_ciphers = yes |
Ejabberd
Для подключения необходимо добавить в конфигурационный файл следующее/etc/ejabberd/ejabberd.yml
1 2 3 |
certfile: "/etc/ejabberd/ssl/ssl.pem" |
1 2 3 4 |
cat /etc/letsencrypt/live/kost.su/privkey.pem > /etc/ejabberd/ssl/ssl.pem cat /etc/letsencrypt/live/kost.su/fullchain.pem >> /etc/ejabberd/ssl/ssl.pem |
Exim
Для добавления сертификата, необходимо добавить вфайл /etc/exim/configure, следующие строки
1 2 3 4 |
ssl_cert_file = /etc/letsencrypt/live/kost.su/fullchain.pem ssl_key_file = /etc/letsencrypt/live/kost.su/privkey.pem |
Postfix
Для использования сертификата добавим строчки в файл /etc/postfix/main.cf
1 2 3 4 5 |
smtpd_tls_key_file = /etc/letsencrypt/live/kost.su/privkey.pem smtpd_tls_cert_file = /etc/letsencrypt/live/kost.su/cert.pem smtpd_tls_CAfile = /etc/letsencrypt/live/kost.su/chain.pem |
1 2 3 4 5 6 7 8 9 |
# Disable SSLv2, SSLv3 smtpd_tls_protocols = !SSLv2 !SSLv3 smtpd_tls_mandatory_protocols = !SSLv2 !SSLv3 smtp_tls_protocols = !SSLv2 !SSLv3 smtp_tls_mandatory_protocols = !SSLv2 !SSLv3 lmtp_tls_protocols = !SSLv2 !SSLv3 lmtp_tls_mandatory_protocols = !SSLv2 !SSLv3 |
1 2 3 4 5 6 |
# Fix 'The Logjam Attack'. smtpd_tls_exclude_ciphers = aNULL, eNULL, EXPORT, DES, RC4, MD5, PSK, aECDH, EDH-DSS-DES-CBC3-SHA, EDH-RSA-DES-CDC3-SHA, KRB5-DE5, CBC3-SHA smtpd_tls_dh512_param_file = /etc/pki/tls/dh512_param.pem smtpd_tls_dh1024_param_file = /etc/pki/tls/dh2048_param.pem |
Тестирование
Для этого необходимо выполнить подключения на порт, которое прослушивает демон, например так, для почтового сервера
1 2 3 |
openssl s_client -connect localhost:587 |