STARTTLS: различия между версиями
[непроверенная версия] | [непроверенная версия] |
TLS и SSL это зашифрованные соединения. |
исправлена формулировка - что поверх чего |
||
Строка 1: | Строка 1: | ||
'''STARTTLS''' это расширение обычного протокола текстового обмена, которое позволяет создать зашифрованное соединение |
'''STARTTLS''' это расширение обычного протокола текстового обмена, которое позволяет создать зашифрованное соединение ([[Transport Layer Security|TLS]] или [[SSL]]) прямо поверх обычного [[TCP]]-соединения вместо открытия для шифрованного соединения дополнительного порта. |
||
STARTTLS для [[IMAP]] и [[POP3]] определён в RFC 2595, для [[SMTP]] в RFC 3207, для [[FTP]] в RFC 4217, для [[XMPP]] в RFC 6120, для [[LDAP]] в RFC 2830 и для [[NNTP]] в RFC 4642. |
STARTTLS для [[IMAP]] и [[POP3]] определён в RFC 2595, для [[SMTP]] — в RFC 3207, для [[FTP]] — в RFC 4217, для [[XMPP]] — в RFC 6120, для [[LDAP]] — в RFC 2830 и для [[NNTP]] — в RFC 4642. |
||
==Уровни== |
==Уровни== |
Версия от 18:20, 6 ноября 2014
STARTTLS это расширение обычного протокола текстового обмена, которое позволяет создать зашифрованное соединение (TLS или SSL) прямо поверх обычного TCP-соединения вместо открытия для шифрованного соединения дополнительного порта.
STARTTLS для IMAP и POP3 определён в RFC 2595, для SMTP — в RFC 3207, для FTP — в RFC 4217, для XMPP — в RFC 6120, для LDAP — в RFC 2830 и для NNTP — в RFC 4642.
Уровни
TLS это независимый от уровня приложений протокол; в терминах RFC 5246
- Высокоуровневые протоколы могут располагаться поверх прозрачного TLS протокола. Стандарт TLS не описывает как другие протоколы взаимодействуют с TLS, он не описывает как инициализировать рукопожатие TLS и как использовать обмен сертификатами аутентификации. Этим занимаются протоколы, запущенные поверх TLS.[1]
Для использования TLS необходимо использовать библиотеки, в которые уже встроен TLS. Например, расширение RFC 3207 SMTP показывает в следующем описании протокола, как клиент и сервер запускают зашифрованную сессию:[2]
S: <waits for connection on TCP port 25> C: <opens connection> S: 220 mail.example.org ESMTP service ready C: HELO client.example.org S: 250-mail.example.org offers a warm hug of welcome S: 250 STARTTLS C: STARTTLS S: 220 Go ahead C: <starts TLS negotiation> C & S: <negotiate a TLS session> C & S: <check result of negotiation> C: HELO client.example.org[3] . . .
Последняя команда HELO проходит через защищённый канал. Отметим, что возможность аутентификации не обязательна для SMTP, и возможные ответы сервера могут не распознаваться как AUTH PLAIN расширения SMTP, которых нет в обычном текстовом обмене.
SSL порты
Перед тем, как STARTTLS появился, многие TCP порты были назначены для SSL-криптованого соединения многих серверов. TLS устанавливает безопасное соединение посредством коммуникационного потока идентичного старому, не криптованному протоколу. С момента внедрения более эффективного STARTTLS, не рекомендуется использовать дефицитные номера портов, что позволяет упростить конфигурацию устройств[4]. Некоторые примеры:
Protocol | Purpose | Normal port | SSL variant | SSL port |
---|---|---|---|---|
HTTP | Web server | 80 | HTTPS | 443 |
SMTP | Send email | 25 | SMTPS | 465 |
IMAP | Read email | 143 | IMAPS | 993 |
Ссылки
- ↑ Tim Dierks; Eric Rescorla.: The Transport Layer Security (TLS) Protocol . RFC Editor (август 2008). Дата обращения: 8 октября 2009. Архивировано 10 апреля 2013 года.
- ↑ Paul Hoffman. SMTP Service Extension for Secure SMTP over Transport Layer Security . RFC Editor (февраль 2002). Дата обращения: 8 октября 2009. Архивировано 10 апреля 2013 года.
- ↑ The last line in the example added for clarity. See e.g. the thread started by Paul Smith. STARTTLS & EHLO . ietf-smtp mailing list. Internet Mail Consortium (26 января 2009). Дата обращения: 8 октября 2009. Архивировано 10 апреля 2013 года.
- ↑ C. Newman. Using TLS with IMAP, POP3 and ACAP . RFC (июнь 1999). Дата обращения: 27 августа 2014.
Внешние ссылки
- SMTP TLS Tests and Tools (the "Receiver Test" shows dialogs like the one above)