Протоколы SSL и TLS предназначены для защиты конфиденциальной информации, используемой во время транзакций, таких как обработка платежей, которая требует аутентификации для подтверждения личности нашего сервера перед пользователями.
TLS 1.3 - это последняя версия протокола TLS. Он является потомком SSL и считается более мощным и эффективным. Команда OpenSSL - самый простой способ проверить версию TLS.
Для поиска версии TLS можно использовать следующие команды:
1 2 3 4 5 | openssl s_client -connect [host]:443 -tls1 openssl s_client -connect [host]:443 -tls1_1 openssl s_client -connect [host]:443 -tls1_2 openssl s_client -connect [host]:443 -tls1_3 nmap -script ssl-enum-ciphers -p 443 [host] |
Понимание SSL
SSL расшифровывается как "Secure Socket Layer".
- Компания Netscape разработала первую версию SSL в 1995 году.
- SSL - это криптографический протокол, который использует явные соединения для установления безопасной связи между веб-сервером и клиентом.
- Было выпущено три версии SSL: SSL 1.0, 2.0 и 3.0.
- Все версии SSL были признаны уязвимыми, и все они были сняты с производства.
Понимание TLS
TLS расшифровывается как "безопасность транспортного уровня".
- Первая версия TLS была разработана рабочей группой по проектированию Интернета (IETF) в 1999 году.
- Было выпущено четыре версии TLS: TLS 1.0, 1.1, 1.2 и 1.3.
- TLS - это криптографический протокол, который обеспечивает безопасную связь между веб-сервером и клиентом через неявные соединения. Он является преемником протокола SSL.
- TLS 1.0 и 1.1 были "взломаны" и устарели с марта 2020 года. TLS 1.2 является наиболее широко распространенной версией протокола.
Что является более безопасным для SSL и TLS?
TLS обеспечивает более надежную систему аутентификации сообщений, генерацию ключевого материала и другие алгоритмы шифрования по сравнению с SSL. Таким образом, TLS обеспечивает поддержку удаленных паролей, ключей с эллиптической кривой и предварительно разделенных ключей, которые не поддерживаются SSL. TLS по-прежнему обеспечивает обратную совместимость для старых устройств.
Протокол TLS работает на двух уровнях, где протокол записи TLS обеспечивает безопасность соединений. Протокол рукопожатия TLS объединяет клиента и сервер для согласования ключей безопасности. И клиент, и сервер проверяют подлинность друг друга перед передачей данных.
Понимание SSL-сертификатов и TLS-сертификатов
Это потому, что и "SSL-сертификат", и "TLS-сертификат" означают, по сути, одно и то же: оба они являются цифровыми сертификатами X.509, которые помогают аутентифицировать сервер и облегчают процесс рукопожатия для создания безопасного соединения.
Некоторые называют их "SSL-сертификатами", другие - "TLS-сертификатами". Название не имеет большого значения, потому что сертификат - это не то же самое, что протокол. Как бы мы их ни называли, важен протокол, по которому он работает. А эти протоколы определяются конфигурацией нашего сервера, а не цифровыми сертификатами.
Последняя версия TLS
TLS 1.3 - это последняя версия протокола TLS. TLS, который используется в HTTPS и других сетевых протоколах для шифрования, является современной версией SSL. В TLS 1.3 отменена поддержка старых, менее безопасных криптографических функций, а также ускорены рукопожатия TLS, среди прочих улучшений.
Проверка версии TLS в Linux
Некоторые производители уже прекратили поддержку ранних версий TLS (TLS 1.0 и TLS 1.1) и полностью перешли на TLS версии 1.2 или 1.3.
Мы можем использовать следующую команду, чтобы проверить, какую версию TLS поддерживает google.com.
1 2 3 4 | openssl s_client -connect www.google.com:443 -tls1 openssl s_client -connect www.google.com:443 -tls1_1 openssl s_client -connect www.google.com:443 -tls1_2 openssl s_client -connect www.google.com:443 -tls1_3 |
- -tls1 для TLSv1
- -tls1_1 для TLSv1.1
- -tls1_2 для TLSv1.2
- -tls1_3 для TLSv1.3
Мы также можем использовать команду nmap для проверки версии TLS в Linux.
1 | nmap -script ssl-enum-ciphers -p 443 www.google.com |