FTP расшифровывается как File Transfer Protocol — протокол передачи файлов. Это один из старейших сетевых протоколов: он появился в начале 1970-х годов и до сих пор используется для загрузки файлов на хостинг, обмена данными между серверами и доступа к файловой системе сайта. Несмотря на возраст, FTP остаётся стандартным инструментом веб-разработчиков и системных администраторов.
Если коротко — FTP позволяет подключиться к удалённому серверу и работать с его файлами так же, как с папками на локальном компьютере: загружать, скачивать, переименовывать, удалять. Именно через ФТП разработчики заливают файлы сайта на хостинг, а провайдеры выдают доступ к серверному пространству.
Как работает FTP-протокол
Работает по клиент-серверной модели. На сервере запущен FTP-сервер — программа, которая принимает подключения и управляет доступом к файлам. На компьютере пользователя работает FTP-клиент — программа или встроенный инструмент операционной системы, через который устанавливается соединение.
Особенность в том, что он использует два отдельных соединения одновременно.
- Первое — управляющее, по порту 21 — нужно для передачи команд: войти, перейти в папку, запросить список файлов.
- Второе — соединение данных — открывается отдельно каждый раз, когда нужно передать сам файл или получить содержимое директории.
Именно из-за этой архитектуры FTP иногда конфликтует с файрволами: они видят входящее соединение на нестандартном порту и блокируют его.
Активный и пассивный режим
В активном режиме сервер сам инициирует соединение данных — подключается к клиенту. Это удобно, когда клиент находится в открытой сети, но создаёт проблемы за NAT и файрволом: входящее соединение от сервера блокируется. В пассивном режиме клиент сам инициирует оба соединения — управляющее и соединение данных. Сервер сообщает клиенту, на какой порт подключаться, и ждёт. Этот режим работает надёжнее в большинстве современных условий, поэтому FTP-клиенты по умолчанию используют именно его.
Порты FTP
- Порт 21 — стандартный управляющий порт, зарезервированный за протоколом с момента его появления.
- Порт 20 используется для передачи данных в активном режиме.
- В пассивном режиме сервер открывает случайный порт из заданного диапазона — обычно от 1024 и выше — и сообщает его клиенту.
- FTPS, защищённая версия протокола, использует порт 990 для управляющего соединения.
FTP-сервер: что это такое
FTP-сервер — это программа, которая запускается на удалённой машине и принимает FTP-подключения. Она управляет аутентификацией пользователей, контролирует права доступа к директориям и обрабатывает команды клиента: получить список файлов, скачать файл, загрузить файл, создать папку.
На практике почти каждый хостинг предоставляет фтп доступ к файлам сайта через встроенный фтп сервер. Провайдер создаёт учётную запись с логином и паролем, привязанную к определённой директории на сервере — обычно корневой папке сайта. Пользователь подключается через фтп клиент и видит файлы, как будто это обычная папка на компьютере.
Популярные FTP-серверы
Для Linux самыми распространёнными решениями остаются vsftpd и ProFTPD.
- Vsftpd ценят за лёгкость и безопасность — он специально проектировался с прицелом на минимальную поверхность атаки.
- ProFTPD гибче в настройке и поддерживает более сложные конфигурации с виртуальными пользователями и модульной архитектурой.
- На Windows-серверах исторически использовался встроенный FTP-сервер IIS, хотя сегодня его нередко заменяют сторонними решениями.
FTP-клиент: чем подключиться
FTP-клиент — это программа на компьютере пользователя, через которую устанавливается соединение с сервером. Клиент отображает файлы сервера в графическом интерфейсе и позволяет перетаскивать файлы между локальной машиной и сервером, как в обычном файловом менеджере.
FileZilla
FileZilla — самый популярный бесплатный FTP-клиент. Он работает на Windows, macOS и Linux, поддерживает FTP, FTPS и SFTP, умеет сохранять несколько подключений в менеджере сайтов и показывает прогресс передачи файлов. Для большинства задач FileZilla — оптимальный выбор: простой в освоении, стабильный и бесплатный.
WinSCP
WinSCP — клиент для Windows с акцентом на безопасность. Он поддерживает SFTP, SCP и FTP и умеет автоматически синхронизировать локальную папку с папкой на сервере. Разработчики, которые регулярно заливают обновления на несколько серверов. Ценят WinSCP за функцию синхронизации и возможность запускать скрипты по расписанию.
Командная строка
На Linux и macOS FTP доступен прямо из терминала командой ftp. Это удобно для быстрых операций без установки дополнительного ПО: подключиться, скачать файл, отключиться. Для регулярной работы графический клиент удобнее, но знать базовые команды терминала полезно — когда графический интерфейс недоступен, это единственный вариант.
Как подключиться к сайту по FTP
Для подключения нужны четыре параметра:
- адрес FTP-сервера (обычно это домен сайта или отдельный поддомен вида ftp.домен.ru),
- логин,
- пароль,
- порт.
Все эти данные выдаёт хостинг-провайдер — они есть в панели управления хостингом или в письме при регистрации.
Подключение через FileZilla
Открыть FileZilla, в верхней панели ввести адрес сервера в поле «Хост», логин, пароль и порт 21. Нажать «Быстрое соединение» — в левой части окна появится файловая система локального компьютера, в правой — файлы сервера. Чтобы загрузить файл на сервер, достаточно перетащить его из левой панели в правую.
Для регулярной работы удобнее использовать менеджер сайтов: File → Менеджер сайтов → Новый сайт. Там можно сохранить все параметры подключения. В следующий раз подключаться в один клик, без ввода логина и пароля каждый раз.
FTP-доступ к сайту на WordPress
WordPress использует фтп в нескольких сценариях:
- установка плагинов и тем, когда сервер не даёт разрешение на запись через веб-интерфейс,
- восстановление сайта после сбоя,
- ручная правка файлов конфигурации.
Подключаться нужно к корневой директории сайта — той, где лежат папки wp-admin, wp-content и wp-includes. Именно там хранятся все файлы WordPress, включая темы, плагины и медиазагрузки.
Если сайт недоступен из-за ошибки в коде плагина или темы. Фтп — часто единственный способ добраться до файлов и исправить проблему. Через веб-интерфейс сломанный сайт просто не открывается.
FTP, FTPS и SFTP: в чём разница
Классический FTP передаёт данные в открытом виде — логин, пароль и содержимое файлов не шифруются. В современных условиях это серьёзная уязвимость: всё, что передаётся по протоколу в незащищённой сети, можно перехватить. Именно поэтому появились защищённые альтернативы.
FTPS
FTPS — это FTP с поддержкой шифрования TLS. Он работает по той же двухканальной схеме, что и обычный фтп, но управляющее и дата-соединения защищены. Существует два режима: явный FTPS, где соединение начинается как обычный и потом «апгрейдится» до шифрованного, и неявный FTPS, где шифрование включается сразу с первого байта. Большинство современных хостингов поддерживают FTPS.
SFTP
SFTP расшифровывается как SSH File Transfer Protocol. Это уже принципиально другой протокол, не имеющий отношения к FTP, несмотря на похожее название. Работает поверх SSH и использует один канал для всего: и команд, и данных. Это упрощает работу с файрволами и делает SFTP более безопасным и предсказуемым. Если хостинг поддерживает SSH-доступ, подключаться к файлам лучше по SFTP, а не по классическому доступу.
Для чего используется FTP сегодня
Несмотря на то что появился полвека назад, он до сих пор активно применяется в нескольких сценариях. Хостинг-провайдеры предоставляют FTP-доступ как стандартный способ работы с файлами сайта — это простой и универсальный метод, понятный даже людям без технического бэкграунда.
В корпоративных сетях используется для обмена большими файлами между отделами или с внешними партнёрами. Анонимный FTP — режим, при котором аутентификация не требуется — применяется на публичных серверах для раздачи программного обеспечения, дистрибутивов Linux и других открытых материалов.
Для новых проектов сегодня чаще выбирают SFTP или rsync поверх SSH — они безопаснее и не требуют отдельного сервиса. Но там, где инфраструктура строилась годами и переход на новые протоколы потребует значительных усилий, фтп продолжает работать и, судя по всему, никуда не денется ещё долго.
Типичные проблемы при работе с FTP
Большинство проблем возникают на этапе подключения и связаны с настройками сети или неверными параметрами доступа. Понимание типичных сценариев помогает быстро найти причину и не тратить время на перебор вариантов.
Не удаётся подключиться
Первым делом проверить правильность введённых данных: адрес сервера, логин, пароль и порт. Опечатка в одном символе — достаточная причина для отказа в соединении. Если данные верны, проверить, не заблокирован ли порт 21 файрволом или провайдером. Некоторые провайдеры блокируют исходящие соединения на нестандартных портах. В этом случае переключиться на пассивный режим или уточнить у хостинга, есть ли альтернативный порт.
Соединение установлено, но список файлов не загружается
Это классическая картина конфликта с файрволом в активном режиме. Клиент подключился к порту 21, отправил команду, но соединение данных, которое сервер пытается открыть обратно, блокируется. Решение почти всегда одно: переключить клиент в пассивный режим. В FileZilla это делается в настройках: Правка → Настройки → Соединение → FTP → Пассивный режим.
Медленная передача файлов
Скорость ограничена пропускной способностью канала между клиентом и сервером. Если скорость неожиданно низкая — проверить загрузку сети на обеих сторонах и убедиться, что нет других активных передач. Для больших объёмов данных FTP в принципе не самый быстрый вариант. Rsync или прямое копирование через SSH работают эффективнее за счёт сжатия и дельта-передачи.