
FTP (File Transfer Protocol) — это классический способ загрузки и скачивания файлов с сервера, который часто используется для управления сайтами, перемещения резервных копий или передачи медиафайлов. Однако «обычный FTP» не зашифрован, поэтому в современных хостинговых рабочих процессах из соображений безопасности обычно предпочитают использовать SFTP или FTPS.
Если вы управляете веб-сайтом на виртуальном хостинге, доступ по FTP/SFTP обычно доступен. Если вам нужен полный контроль (пользователи, брандмауэр, порты, автоматизация), для рабочих процессов в производственной среде лучше подойдет VPS на Linux или VPS-хостинг.
FTP — это протокол, который определяет, как клиент (ваш компьютер) подключается к серверу и передает файлы. Он поддерживает просмотр каталогов, загрузку, скачивание, переименование и удаление файлов — по сути, это «удаленный файловый менеджер» по сети.
FTP использует отдельный канал данных. В зависимости от режима либо сервер подключается обратно к клиенту (активный режим), либо клиент подключается к открытому порту сервера (пассивный режим). На практике пассивный режим используется чаще, поскольку он лучше работает за NAT и строгими брандмауэрами.
| Режим | Кто инициирует соединение для передачи данных | Типичные проблемы | Оптимальное применение |
|---|---|---|---|
| Активный | Сервер → Клиент | Блокируется брандмауэром клиента/NAT | Сегодня встречается редко |
| Пассивный | Клиент → Сервер | Требуется открытый диапазон пассивных портов сервера | Большинство хостинговых конфигураций |
Эти названия выглядят похожими, но безопасность и поведение в сети различаются.
| Протокол | Шифрование | Порт по умолчанию | Примечания |
|---|---|---|---|
| FTP | ❌ Нет | 21 | Учетные данные в виде открытого текста (не рекомендуется в Интернете) |
| FTPS | ✅ TLS | 21 (явное) / 990 (неявное) | FTP TLS, по-прежнему имеет сложность Active/Passive |
| SFTP | ✅ SSH | 22 | Другой протокол, более простая настройка брандмауэра, очень распространен на VPS |
В Windows WinSCP — популярный выбор для SFTP. Если вы работаете с инфраструктурой Windows, вы также можете размещать проекты на VPS под управлением Windows, но для SFTP обычно подключаются к серверам на базе Linux или устройствам, предоставляющим SSH.
Для безопасной передачи файлов предпочтительнее использовать SFTP:
# SFTP interactive session
sftp user@server-ip
# Download a file
get remote_file.zip
# Upload a file
put local_file.zip
# Exit
exit
Если вам необходимо использовать классический FTP (не рекомендуется в публичных сетях):
ftp server-ip
# login
ls
cd public_html
put index.html
get backup.tar.gz
bye
Для работы FTP в пассивном режиме на сервере должен быть открыт диапазон портов. Если вы не настроите его, передача файлов может «зависать» или произвольно завершаться сбоем.
Пример (на стороне сервера): настройте пассивный диапазон, например 50000–50100, а затем разрешите его в брандмауэре. Точные шаги зависят от вашего программного обеспечения FTP-сервера (vsftpd/proftpd/pure-ftpd), но принцип всегда один и тот же: определите диапазон и откройте его.
Для современных развертываний SFTP (SSH) обычно проще и безопаснее, чем FTP. Если вам нужен полный контроль над пользователями, ключами и правилами брандмауэра, запустите свой стек на VPS под управлением Linux или на масштабируемом VPS-хостинге. Для типичной загрузки веб-сайтов в небольших проектах виртуальный хостинг часто включает готовый доступ по FTP/SFTP.