====== Директивы модуля ngx_imap_ssl_module ====== Модуль ngx_imap_ssl_module обеспечивает поддержку SSL/TLS для POP3/IMAP. Конфигурация практически идентична конфигурации модуля [[sysoev>nginx/docs/http/ngx_http_ssl_module.html|ngx_http_ssl_module]], но проверка клиентских сертификатов не поддерживается. ===== Директивы ===== ==== ssl ==== **syntax**: ssl //**on | off**//\\ **default**: off\\ **context**: imap, server Директива включает протокол SSL/TLS для данного виртуального сервера. ==== ssl_certificate ==== **syntax**: ssl_certificate //**файл**//\\ **default**: ssl_certificate cert.pem\\ **context**: imap, server Директива указывает файл с сертификатом в формате PEM для данного виртуального сервера. В этом же файле могут находиться другие сертификаты, а также секретный ключ в формате PEM. ==== ssl_certificate_key ==== **syntax**: ssl_certificate_key //**файл**//\\ **default**: ssl_certificate_key cert.pem\\ **context**: imap, server Директива указывает файл с секретным ключом в формате PEM для данного виртуального сервера. ==== ssl_protocols ==== **syntax**: ssl_protocols //**[SSLv2] [SSLv3] [TLSv1]**//\\ **default**: ssl_protocols SSLv2 SSLv3 TLSv1\\ **context**: imap, server Директива разрешает указанные протоколы. ==== ssl_ciphers ==== **syntax**: ssl_ciphers //**шифры**//\\ **default**: ssl_ciphers ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP\\ **context**: imap, server Директива описывает разрешённые шифры. Шифры задаются в формате, поддерживаемом библиотекой OpenSSL. Полный список можно посмотреть с помощью команды openssl ciphers. ==== ssl_prefer_server_ciphers ==== **syntax**: ssl_prefer_server_ciphers //**on | off**//\\ **default**: ssl_prefer_server_ciphers off\\ **context**: imap, server Директива указывает, чтобы при использовании протоколов SSLv3 и TLSv1 серверные шифры были более приоритетны, чем клиентские. ==== ssl_session_cache ==== **syntax**: ssl_session_cache //**[builtin[:размер]] [shared:название:размер]**//\\ **default**: ssl_session_cache builtin:???\\ **context**: imap, server Директива задаёт тип и размеры кэшей для хранения параметров сессий. Тип кэша может быть следующим: * builtin — встроенный в OpenSSL кэш, используется в рамках только одного рабочего процесса. Размер кэша задаётся в сессиях. * shared — разделяемый между всеми рабочими процессами. Размер кэша задаётся в байтах, в 1 мегабайт может поместиться около 4000 сессий. У каждого разделяемого кэша должно быть произвольное название. Кэш с одинаковым названием может использоваться в нескольких виртуальных серверах. Можно использовать одновременно оба типа кэша, например: ssl_session_cache builtin:1000 shared:SSL:10m; однако использование только разделяемого кэша без встроенного должно быть более эффективным. ==== ssl_session_timeout ==== **syntax**: ssl_session_timeout //**время**//\\ **default**: ssl_session_timeout 5m\\ **context**: imap, server Директива задаёт время, в течение которого клиент может повторно использовать параметры сессии, хранящейся в кэше. ==== starttls ==== **syntax**: starttls //**on | off | only**//\\ **default**: starttls off\\ **context**: imap, server * on - разрешить использование команд STLS для POP3 и STARTTLS для IMAP * off - не разрешать команды STLS/STARTTLS * only - требовать предварительного перехода на TLS