Обеспечиваем безопасность FTP

FTP (File Transfer Protocol) – один из базовых протоколов, цель которого – передача данных по сетям между компьютерами. Появился в 1971 году. Позволяет подключаться к FTP-серверам, просматривать, что находится в каталогах, загружать файлы с одного сервера на другой. По умолчанию использует 21-й порт.
Поскольку изначально FTP не разрабатывался как защищенный протокол, он имеет существенные проблемы с безопасностью. Передаваемый трафик не шифруется, всю информацию, в том числе логины и пароли, личные данные пользователей может просматривать кто угодно – достаточно просто перехватить пакет по сети.
Еще в далеком 1999 году был опубликован документ RFC 2577, в котором рассматривались вопросы безопасности FTP. Авторы Марк Оллман (Mark Allman) и Шон Остерман (Shawn Ostermann) выделили основные типы атак, которые могут применяться по отношению к протоколу, учитывая его уязвимости:
- скрытые атаки (bounce attacks);
- атаки методом грубой силы (brute force attacks);
- спуф-атаки (spoof attacks);
- перехват пакетов, сниффинг (packet capture, sniffing);
- захват портов (port stealing);
- защита имени пользователя.
Как решить проблему безопасности FTP? Использовать защищенные TLS (transport layer security) версии уязвимых протоколов или любые другие протоколы с поддержкой реализации протокола Secure Shell.
FTPS (FTP over SSL/TLS, FTP+SSL) – по сути тот же самый протокол FTP, только соединение защищено при помощи протокола SSL или TLS. При подключении также используется 21 порт.
SFTP (Secure FTP, SSH FTP, но не Simple FTP) – никак не связан с FTP, кроме того, что выполняет идентичную функцию (передача данных) и имеет аналогичный набор команд. Этот протокол шифрует команды и данные, тем самым предотвращая открытый доступ к информации.
В отличие от FTP, есть возможность аутентификации без пароля при помощи SSH-ключей – вводить пароль нет необходимости, он не хранится на диске компьютера. Это позволяет обезопасить себя от вредоносных программ, которые отслеживают данные, введенные с клавиатуры. Еще одним преимуществом SFTP перед FTP является поддержка символических ссылок.
Защита FTP, NFS, Samba, а также многое другое – все это подробно рассматриваем на курсе «L2-Security. Безопасность в Linux»!