Что такое FTP

FTP (File Transfer Protocol) — стандартный протокол для передачи файлов между клиентом и сервером. Работает по схеме «клиент‑сервер», задействуя два канала:

  • командный (порт 21) — для отправки инструкций;
  • канальный данных (порт 20 или динамический) — для пересылки файлов.

Плюсы FTP:

  • простота настройки;
  • широкая поддержка в ПО;
  • высокая скорость для больших файлов.

Главный минус — отсутствие встроенного шифрования: данные передаются открыто, что небезопасно.

Что такое SSH

SSH (Secure Shell) — криптографический протокол для защищённого удалённого доступа. Все данные, включая пароли, шифруются.

Ключевые возможности:

  • шифрование (алгоритмы AES, RSA);
  • аутентификация по паролю или ключам;
  • туннелирование и переадресация портов.

Сферы применения:

  • управление серверами;
  • безопасная передача файлов (SFTP, SCP);
  • создание защищённых туннелей.

Чем отличаются SSH и FTP

Шифрование:

  • FTP: нет (если не использовать FTPS/SFTP);
  • SSH: есть (по умолчанию).

Порты:

  • FTP: 20, 21;
  • SSH: 22.

Аутентификация:

  • FTP: логин и пароль;
  • SSH: пароль или ключи.

Основное назначение:

  • FTP: передача файлов;
  • SSH: удалённое управление + безопасная передача файлов.

Безопасные альтернативы FTP

Чтобы устранить уязвимости FTP, используют защищённые версии:

  • SFTP (SSH File Transfer Protocol) — работает поверх SSH (порт 22), шифрует всё содержимое.
  • FTPS (FTP + SSL/TLS) — добавляет шифрование к стандартному FTP.

Рекомендации:

  • Для максимальной безопасности выбирайте SFTP (основан на SSH).
  • Для совместимости с устаревшими системами — FTPS.

Практические примеры команд

Подключение по SSH

ssh username@server_address

Где:

  • username — имя пользователя;
  • server_address — IP или домен сервера.

Передача файла через SFTP

sftp username@server_address

После подключения используйте:

  • put filename — загрузить файл;
  • get filename — скачать файл.

Как выбрать подходящий протокол

Ориентируйтесь на задачи и требования к безопасности:

  • FTP подойдёт, если:
    • нужно быстро передать файлы;
    • безопасность не критична;
    • используется внутренняя сеть.
  • SSH/SFTP выбирайте, если:
    • данные конфиденциальны;
    • доступ осуществляется через интернет;
    • требуется удалённое управление сервером.

Современные стандарты рекомендуют использовать SSH и SFTP по умолчанию, чтобы исключить риски утечки данных.