Открыть сервис

FTP over SSL/TLS

FTP over SSL/TLS (также известный как FTPS) — это расширение протокола передачи файлов (FTP), которое добавляет поддержку шифрования и аутентификации с использованием протоколов SSL (Secure Sockets Layer) и его преемника TLS (Transport Layer Security). FTPS обеспечивает защиту данных, передаваемых между клиентом и сервером, от перехвата и модификации, в отличие от стандартного FTP, который передаёт данные и учётные данные в открытом виде.

История и происхождение

Стандартный протокол FTP, определённый в RFC 959 (1985 год), изначально не предусматривал механизмов шифрования. Все данные, включая логин и пароль пользователя, передавались в незашифрованном виде, что делало их уязвимыми для атак типа «человек посередине» (MITM) и сниффинга трафика. С развитием интернета и ростом требований к безопасности в середине 1990-х годов возникла необходимость в защищённой альтернативе.

В 1996 году был разработан стандарт RFC 2228 «FTP Security Extensions», который формализовал механизмы добавления безопасности в FTP. Он ввёл новые команды (AUTH, PBSZ, PROT) и возможность согласования защищённых каналов. На основе этого стандарта появились две основные реализации защищённого FTP: FTPS (FTP over SSL/TLS) и SFTP (SSH File Transfer Protocol), хотя последний технически является отдельным протоколом, не связанным с FTP.

Первые реализации FTPS появились в коммерческих и открытых FTP-серверах в конце 1990-х — начале 2000-х годов. Протокол получил широкое распространение благодаря своей совместимости с существующей инфраструктурой FTP и возможности использования стандартных сертификатов X.509.

Технические особенности

Архитектура и принцип работы

FTPS работает поверх протокола TCP. Как и в обычном FTP, соединение устанавливается через два канала:

В FTPS оба канала или только управляющий могут быть зашифрованы с использованием SSL/TLS. Шифрование инициируется клиентом с помощью команды AUTH TLS (или AUTH SSL), после чего сервер и клиент выполняют рукопожатие TLS, обмениваются сертификатами и устанавливают защищённое соединение.

Режимы работы

FTPS поддерживает два основных режима, определяющих, какие каналы шифруются:

  1. Эксплицитный (явный) FTPS (FTPES) — клиент явно запрашивает шифрование через команду AUTH TLS. Соединение начинается как обычное FTP, но после согласования переходит в защищённый режим. Этот режим описан в RFC 2228 и является наиболее распространённым.
  2. Имплицитный (неявный) FTPS (FTPS) — шифрование начинается сразу после установления TCP-соединения, без предварительного незащищённого обмена. Обычно используется отдельный порт (например, 990 для управляющего канала и 989 для данных). Этот режим не стандартизирован в RFC, но поддерживается многими серверами.

Аутентификация и сертификаты

Для аутентификации сервера и, опционально, клиента используются сертификаты X.509. Сервер предоставляет свой сертификат, который клиент проверяет на соответствие доверенному центру сертификации (CA). Клиентская аутентификация (взаимная) требует от клиента также предоставить сертификат. В FTPS также возможна аутентификация по паролю (логин/пароль), передаваемому в зашифрованном виде.

Команды и расширения

FTPS использует расширения команд FTP, определённые в RFC 2228:

Классификация и сравнение с другими протоколами

FTPS является одним из нескольких протоколов для защищённой передачи файлов. Основные альтернативы:

ПротоколШифрованиеАутентификацияПорт по умолчаниюМеханизм
FTPSSSL/TLSСертификаты X.509, пароль21 (явный), 990 (неявный)Расширение FTP
SFTPSSHКлючи SSH, пароль22Отдельный протокол (часть SSH-2)
HTTPSSSL/TLSСертификаты X.509443Протокол HTTP с шифрованием
FTPНетПароль (открытый текст)21Базовый протокол

FTPS отличается от SFTP тем, что использует инфраструктуру открытых ключей (PKI) на основе сертификатов, в то время как SFTP использует ключи SSH. FTPS проще интегрируется с существующими FTP-клиентами и серверами, но требует настройки сертификатов.

Применение

FTPS широко используется в корпоративной среде и веб-хостинге для защищённой передачи файлов. Основные сценарии применения включают:

В России FTPS используется в государственных и коммерческих информационных системах, где требуется соответствие требованиям безопасности (например, Федеральный закон № 152-ФЗ «О персональных данных»). Однако в последние годы наблюдается тенденция к переходу на более современные протоколы, такие как SFTP или WebDAV over HTTPS.

Критика и ограничения

Несмотря на свою защищённость, FTPS имеет ряд недостатков:

Интересные факты

Источники

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →