STARTTLS

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: EHLO 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: EHLO client.example.org[3]
  . . .

Последняя команда EHLO проходит через защищённый канал. Отметим, что возможность аутентификации не обязательна для SMTP, и возможные ответы сервера могут не распознаваться как AUTH PLAIN расширения SMTP, которых нет в обычном текстовом обмене.

SSL-порты

Перед тем, как STARTTLS появился, многие TCP порты были назначены для SSL-шифрованного соединения многих серверов. TLS устанавливает безопасное соединение посредством коммуникационного потока идентичного старому, не шифрованному протоколу. С момента внедрения более эффективного STARTTLS, не рекомендуется использовать дефицитные номера портов, что позволяет упростить конфигурацию устройств[4]. Некоторые примеры:

ProtocolPurposeNormal portSSL variantSSL port
HTTPWeb server80HTTPS443
SMTPSend email25SMTPS465
IMAPRead email143IMAPS993

Примечания

  1. Tim Dierks; Eric Rescorla. The Transport Layer Security (TLS) Protocol (недоступная ссылка). RFC Editor (August 2008). Дата обращения: 8 октября 2009. Архивировано 10 апреля 2013 года.
  2. Paul Hoffman. SMTP Service Extension for Secure SMTP over Transport Layer Security (недоступная ссылка). RFC Editor (February 2002). Дата обращения: 8 октября 2009. Архивировано 10 апреля 2013 года.
  3. 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 года.
  4. C. Newman. Using TLS with IMAP, POP3 and ACAP. RFC (Июнь 1999). Дата обращения: 27 августа 2014.

Ссылки

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.