Home » Полезные советы » Centos 8 и TLS 1.0 и 1.1

Centos 8 и TLS 1.0 и 1.1

Информация для тех, кто уже использует Centos 8. По-умолчанию, на уровне системы отключена поддержка устаревших протоколов TLS 1.0 и 1.1. Но зачастую они еще много где используются. Отсутствие их поддержки создает некоторые неудобства, но это легко исправить, и я расскажу как.

Онлайн-курс по устройству компьютерных сетей

На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.

Лично я столкнулся с этой проблемой на обновленном почтовом сервере, который я настроил на Centos 8. Я предполагал, что может возникнуть такая проблема и подстраховался параметрами postfix.

smtpd_tls_security_level = may
smtpd_tls_mandatory_protocols = !SSLv2,!SSLv3
smtpd_tls_protocols = !SSLv2,!SSLv3
smtpd_tls_ciphers = low

Ожидал, что это позволит подключаться клиентам со старыми версиями TLS. А тем, кто совсем никак не может, оставил возможность подключаться по нешифрованному соединению. По факту некоторым не помогло. У клиентов были различные ошибки. Чаще всего это те, у кого сам tls устарел, но при этом запрещены нешифрованные подключения. Вот несколько вариантов ошибок.

TLS connect failed: error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version;
14969:error:1409442E:SSL routines:SSL3_READ_BYTES:tlsv1 alert protocol version:s3_pkt.c:1092:SSL alert number 70
warning: TLS library problem: error:1420918C:SSL routines:tls_early_post_process_client_hello:version too low:ssl/statem/statem_srvr.c:1655:

И все в таком духе. Сервер в активной работе. Таких клиентов хоть и не много было, но тем не менее несколько нашлось. Настройки postfix в части разрешенных протоколов tls не работали, так как они запрещены на уровне системы. Подробнее об этом написано в документации Red Hat.

Для того, чтобы разрешить приложениям работать по протоколам TLS v1.0 и 1.1 необходимо выполнить команду на сервере.

# update-crypto-policies --set LEGACY
Setting system policy to LEGACY
Note: System-wide crypto policies are applied on application start-up.
It is recommended to restart the system for the change of policies
to fully take place.

После этого надо перезапустить postfix и проверить с какого-нибудь другого сервера подключиться к целевому по протоколу tls 1.0, например вот так.

# openssl s_client -starttls smtp -connect mail.site.ru:25 -tls1

Если увидите информацию о сертификате, значит все в порядке. Если какие-то ошибки, то разбирайтесь, почему не работает.

Если же вам не повезло настолько, что надо разрешить работу по протоколу ssl3, то я вам сочувствую :) Я не знаю, каким образом это можно сделать на современной системе. Наверное, придется самим собирать openssl из старых исходников и как-то ставить в систему. Задача не простая.

Онлайн-курс по устройству компьютерных сетей.

На углубленном курсе "Архитектура современных компьютерных сетей" вы с нуля научитесь работать с Wireshark и «под микроскопом» изучите работу сетевых протоколов. На протяжении курса надо будет выполнить более пятидесяти лабораторных работ в Wireshark.
Не понравилась статья и хочешь научить меня администрировать? Пожалуйста, я люблю учиться. Комментарии в твоем распоряжении. Расскажи, как сделать правильно!

Помогла статья? Подписывайся на telegram канал автора

Анонсы всех статей, плюс много другой полезной и интересной информации, которая не попадает на сайт.

Автор Zerox

Владимир, системный администратор, автор сайта. Люблю настраивать сервера, изучать что-то новое, делиться знаниями, писать интересные и полезные статьи. Открыт к диалогу и сотрудничеству. Если вам интересно узнать обо мне побольше, то можете послушать интервью. Запись на моем канале - https://t.me/srv_admin/425 или на сайте в контактах.

4 комментария

  1. Я откатился на 7-ку. Уж очень многое не работает, что в теории, должно было. Погодим, пока не пройдет еще пара минорных релизов, как в свое время было с семеркой.

    • А что именно не работает? Я классические web сервера и почтовые уже на Centos 8 поднимаю. Целую инфраструктуру недавно настроил полностью на восмерке. Проблем особых не вижу. С докером есть какие-то нюансы, но я его последнее время на ubuntu ставлю. Там всегда все ОК с ним.

      На семерке остались более глобальные вещи - кубер, ceph и т.д. В принципе, чтобы не плодить сущности, можно было бы на семерке оставаться, но мне больше нравится идти вперед, если есть возможность. Потом наверстывать не придется.

      • Проблема в том, что Шапка мечется от одной своей поделки к другой, переставая поддерживать предыдущие. Введение в "прод" новой линейки продуктов, без сохранения совместимости со старыми является приятным сюрпризом, в том случае, когда "почти все уже работает".
        Несовместимость FRRouting с Quagga, сюрпризы с Systemd-Networkd, неработающие скрипты Kickstart и так далее.
        Так что с переходами на проде, можно пока погодить, если нет острой необходимости.

      • Андрей

        В моём случае заметил, что при переходе на RedHat8, не могу теперь подключиться через JDBC к MSSQL, ругается на то что, СУБД ожидает подключение по TLS1, когда я к ней стучусь по TLS1.2

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Нажимая кнопку "Отправить комментарий" Я даю согласие на обработку персональных данных.
Используешь Telegram? Подпишись на канал автора →
This is default text for notification bar