Задать вопрос
CityCat4
@CityCat4
//COPY01 EXEC PGM=IEBGENER

Как выборочно включить выбор шифрования клиентом для отдельных серверов?

Есть sendmail, который при отправке использует SSL. Сертификат выдан корпоративным УЦ, но это неважно. Sendmail использует следующий набор шифров и настройки выбора протоколов:
O CipherList=kEECDH+AES:kEDH+AES:kRSA+AES:!aNULL:!DSS:!SSLv2
O ServerSSLOptions=+SSL_OP_NO_SSLv2 +SSL_OP_NO_SSLv3 +SSL_OP_CIPHER_SERVER_PREFERENCE
O ClientSSLOptions=+SSL_OP_NO_SSLv2 +SSL_OP_NO_SSLv3

И все бы ничего. Но в мире до сих пор существуют сервера, которые игнорируют опасность атак на SSL и используют уязвимое шифрование, например DES-CBC3-SHA или вообще совсем уж убалбешенный RC4-MD5. И с ними надо переписываться, а включать уязвимые шифры не хочется. Сейчас сделал просто отключение шифрования при переписке с данными серверами вот так:
/etc/mail/access
Try_TLS:server.net NO
И при отправке на server.net шифрование просто отсутствует. Вопрос - можно ли выборочно таким же образом задавать шифронаборы для отдельных серверов или же переключать между "шифр выбирает сервер" и "шифр выбирает клиент" для отдельных серверов?
  • Вопрос задан
  • 476 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 1
CityCat4
@CityCat4 Автор вопроса, куратор тега Электронная почта
//COPY01 EXEC PGM=IEBGENER
Итак, судя по тому, что никто не ответил - никто не знает. Значит отвечаю сам себе - вдруг кому понадобится.

Итак, такой функционал есть. Но есть он только в sendmail 8.15.2, и то при ее отдельной пересборке с параметром _FFR_TLS_SE_OPTS_.

Пересборку пока сделал только на FreeBSD (по старой памяти :) ) - в порту mail/sendmail файл files/site.config.m4.tls, первую строку привести к вот такому виду
APPENDDEF(`conf_sendmail_ENVDEF', `-DSTARTTLS -D_FFR_TLS_EC -D_FFR_TLS_SE_OPTS')

и пересобрать, выполнив потом все рекомендации по установке. Для настройки используется файл /etc/mail/access, где прописывается
TLS_Clt_features:server.net       CipherList=kEECDH+AES:kEDH+AES:kRSA+AES:DES-CBC3-SHA:!aNULL:!DSS:!SSLv2;

И все соединения с server.net будут использовать шифр DES-CBC3-SHA, даже если он отсутствует в глобальном CipherList. Также здесь можно прописывать опции SSL, все это изложено в README.

О сборке в центосе допишу отдельно.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
mxms
@mxms
IT voodoo
Так вы поубирайте ваши !SSLv2 и ...NO_SSLv... из конфигов и будет у вас поддержка старых небезопасных видов шифрования. Только вот надо ли оно вам?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы