FTP команды в Linux

Сегодня я решил рассказать Вам о командах к ftp серверу. Нужны они, в основном, при работе в консоле, так как в графическом режиме проще всего использовать любой из FTP клиентов, например бесплатный FTP клиент Filezilla .
FTP (File Transfer Protocol) — Это сетевой протокол, который служит для копирования файлов с одного компьютера на другой по средствам либо локальной сети, либо сети интернет. FTP использует 21 порт.
Здесь так же стоит отметить, что протокол FTP уязвим, ваши данные при передаче не шифруются, и могут легко быть перехвачены злоумышленниками. Для более безопасной передачи данных, используйте протокол SFTP ( Secure File Transfer Protocol). Протокол SFTP использует точно такие же команды, как и FTP.
Используйте один из следующих вариантов обращения к серверу:
Как подключиться к FTP-серверу, способы подключения
Основная проблема протокола FTP – это незащищенная передача данных. Поэтому рекомендуется использовать более новые его версии – FTPS или SFTP, с поддержкой шифрования.
Что нужно, чтобы подключиться к FTP-серверу
Для установления соединения с FTP вам нужно знать:
- Имя хоста (адрес FTP-сервера). Он похож на адрес сайта, но содержит в наименовании «ftp», а также домен, на котором он расположен. Если речь идет об управлении сайтом, это будет домен его хостера.
- Логин и пароль пользователя. Для подключения к FTP-серверу вы должны авторизоваться, поэтому у вас обязательно должны быть логин и пароль для подключения.
- Номер порта – если он отличается от стандартного.
Далее вам потребуется FTP-клиент – программа, с помощью которой можно подключиться к FTP-серверу. Это может быть специальное приложение для FTP – и тогда в нем будет множество опций, в том числе поддержка защищенного соединения, возможность тонкой настройки параметров подключения, возможность редактирования файлов сразу на FTP-сервере и т. п. Или же вы можете подключиться к FTP-серверу с помощью универсальной программы, такой как браузер или Проводник Windows, но возможности такого соединения будут сильно урезаны.
Ниже мы расскажем про самые распространенные способы подключения.
Подключение к FTP через программу Total Commander
Total Commander – популярная программа для управления файлами и каталогами. Она имеет в том числе и функционал для работы с FTP. Программа платная, но есть месяц бесплатного пользования.
Чтобы подключиться через нее к FTP, в меню «Сеть» выберите «Соединиться с FTP-сервером». Так как вы подключаетесь первый раз, нужно заполнить параметры соединения. Для этого в открывшемся окне нажмите кнопку «Добавить» и заполните поля:
- Имя соединения – здесь пишете что-то понятное вам. Например, название сайта, с файлами которого вы собираетесь работать через FTP.
- Сервер [:порт] – здесь пишете имя хоста, и опционально – номер порта. Порт нужно указывать, если для соединения будет использоваться не стандартный 21-й, а другой.
- Учетная запись – это ваш логин.
- Пароль – помните, что в Total Commander, как и во многих других FTP-клиентах, пароль легко может быть украден трояном или другой вредоносной программой. С точки зрения безопасности лучше не заполнять пароль в этом поле, а вводить непосредственно при подключении, по запросу.
Как подключиться к FTP через FileZilla

Это популярный FTP-клиент: простой, удобный и, что немаловажно, бесплатный. Чаще всего для работы с FTP используют именно его. Программа доступна для Windows, Linux и MacOS.
Для соединения с FTP-сервером через FileZilla есть два способа:
- Быстрое соединение. На верхней панели программы есть специальные поля для него:
- Хост – здесь вы пишете адрес FTP-сервера.
- Имя пользователя – указываете свой логин.
- Пароль – вводите пароль для подключения.
- Порт – номер порта указываете, если он отличается от стандартного.
После чего жмете кнопку «Быстрое соединение».
- Менеджер сайтов. Если вы работаете с многими FTP-подключениями или просто не хотите вводить все данные заново при каждом подключении, можно записать параметры соединения в «Менеджер сайтов», который находится в меню «Файл». Дополнительно там можно прописать различные настройки соединения.
Помните, что хранение паролей в FileZilla небезопасно – они записываются в файлы программы в незащищенном виде и могут быть украдены не только троянами, но и другими пользователями, имеющими доступ к вашему ПК.
Подключение с помощью терминала в Linux-системах
Подключиться к FTP-серверу в ОС семейства Linux можно несколькими способами: поставить Midnight Commander и работать через него, смонтировать FTP-каталог и работать в ней, как в обычной папке и т. п.
Но мы рассмотрим самый простой способ, не требующий никаких дополнительных телодвижений, – используем стандартный клиент FTP, который встроен в обычный терминал Linux. Чтобы запустить его, достаточно ввести команду «ftp», а на следующей строке – «open» и адрес хоста, к которому мы подключаемся.
Далее терминал запросит логин и пароль – вводим их. После этого мы подключены к FTP и можно работать. Конечно же, здесь все делается командами в терминале, например:
- get – скачать файл с FTP;
- put – закачать файл на FTP;
- delete – удалить файл;
- rmdir – удалить папку;
- mcdir – создать новую папку;
- binary – установить двоичный режим передачи файлов (необходим в некоторых случаях, чтобы файлы не повреждались при передаче);
- bye – завершение соединения по FTP.
Полный список команд можно найти в справке по работе с терминалом.

Подключение к FTP через браузер (любой)
Такое подключение ограничено в функциональности – вы не сможете, например, редактировать файлы сразу на сервере. Но посмотреть список файлов и скачать нужные такой способ позволяет. В некоторых случаях этого достаточно, например, чтобы предоставить ссылки для скачивания последних драйверов или прошивок.
Чтобы подключиться, вбейте в адресную строку браузера имя хоста вашего FTP с приставкой «ftp://», а после в появившемся окошке введите логин и пароль.
Подключение к FTP с помощью Проводника Windows
Примерно так же можно подключиться с помощью Проводника Windows. Просто введите в адресную строку Проводника (там, где показывается путь к файлам и папкам) путь – ftp://имя_хоста. В появившемся окне авторизации введите свой логин пользователя и пароль. После этого в окне Проводника появятся файлы и папки FTP.
FTP-подключение в командной строке Windows
Этот способ похож на соединение с FTP-сервером через терминал в «Линуксе». Для подключения:
- Нажмите Win + R.
- В появившемся окне введите в поле «открыть» – cmd и нажмите «Ок».
- Перед вами открылось окно с черным фоном – это и есть интерфейс командной строки.
- Введите в нее ftp и нажмите Enter.
- Затем «open» и адрес сервера.
- После чего, в ответ на запрос, – ваш логин и пароль.
Далее, как и в терминале «Линукса», работайте с помощью команд. Какие-то будут точно такими же, но часть будет отличаться – прочитайте справку.
FTP-Map: определяем программное обеспечение и его версию для FTP-серверов и ищем для них эксплойты
Ftpmap сканирует удалённые FTP-сервера для идентификации, какое программное обеспечение и какой версии они используют. Она использует специфичные для программ «отпечатки пальцев» для обнаружения имени программного обеспечение даже тогда, когда банеры были изменены или удалены или когда некоторые функции были отключены. FTP-Map также попытается найти эксплойты для программы/версии, используемой для FTP сервера. FTP-Map также содержит инструменты для удалённого «снятия отпечатков».
Установка FTP-Map на Kali Linux
apt-get install automake autoconf
Я все сторонние программы ставлю в каталог ~/opt
cd ~/opt/ git clone git://github.com/Hypsurus/ftpmap cd ftpmap/ autoreconf ./configure make sudo make install
Использование FTP-Map
ftpmap -s [host] [OPTIONS].
Опции: --scan, -S - Начать FTP сканирование. --server, -s - FTP сервер. --port, -P - FTP порт (по умолчанию: 21). --user, -u - FTP пользователь (по умолчанию: anonymous). --password, -p - FTP пароль (по умолчанию: NULL). --execute, -x - Запустить команду на FTP сервере. --nofingerprint, -n - Не создавать отпечаток пальцев. --login, -A - Только залогиниться, напечатать вывод и выйти. --force, -F - Принудительно создать отпечаток. --output, -o - Файл вывода. --list, -L - Получить список файлов и каталогов на FTP сервере. --delete - Удалить файлы/каталоги на сервере. --last-modified, -m - Вернуть время последней модификации заданного файла Опции Fuzzer: --fuzzer, -f - Использовать Fuzzer. --fuzzerlength,-b - Длина буфера для отправки. (по умолчанию: 256) --fuzzer-nologin, -l - Не логиниться. Общие параметры: --version, -v - Показать информацию о версии и выйти. --help, -h - Показать справку и выйти.
Кстати, если судить по адреску электронной почты ( hypsurus@mail.ru ) оставленному для отправки на него новых отпечатков и соответствующих ему названий программного обеспечения, проект создан нашим соотечественником.
4 комментария
Добрый день. Не выполняется команда apt-get install automake autoconf. Какие репозиторий надо добавить в Kali Linux, чтобы выполнить команду?
WebWare Team :
Все команды для Kali на сайте WebWare.biz только для стандартных репозиториев! Это одно из главных правил пользования Kali — не добавлять сторонние источники приложений. Если у вас ошибки «пакеты не найдены» или что-то подобное, то попробуйте
apt-get update
А после этого опять команды из статьи. Если всё равно «пакеты не найдены», то проверьте, есть ли Интернет. Если есть, значит отсутствуют стандартные репозитории. В этой статье рассказано как поправить: https://codeby.net/blogs/proverka-i-vosstanovlenie-repozitoriev-v-kali-linux-iz-komandnoj-stroki/
Алешенька :
Что за ошибка? root@pl:~# ftpmap -S :: Starting FTP-Map 0.14 — Scanning (127.0.0.1:21)…
Error: Cannont read data
root@pl:~# ftpmap -S -s ftp://dota71.dlinkddns.com :: Starting FTP-Map 0.14 — Scanning (:21)…
Error: Cannont read data
root@pl:~# ftpmap -S —server -P 21 ftp://dota71.dlinkddns.com :: Starting FTP-Map 0.14 — Scanning (:21)…
Error: Cannont read data
root@pl:~# ftpmap -S —server ftp://dota71.dlinkddns.com :: Starting FTP-Map 0.14 — Scanning (:21)…
Error: Cannont read data
root@pl:~# ftpmap —server ftp://dota71.dlinkddns.com
Error: Cannont read data
WebWare Team :
Не нужно указывать протокол, так прекрасно работает:
root@WebWare:~/opt/ftpmap# ftpmap -S -s dota71.dlinkddns.com :: Starting FTP-Map 0.14 - Scanning (5.138.187.58:21). :: FTP Banner: 220 (vsFTPd 2.3.4) :: Trying to login with: anonymous:NULL :: 530 Login incorrect. :: SYST command failed. :: Trying to detect FTP server by banner. :: Trying to detect FTP server by fingerprint. :: Generating fingerprint [100%] :: This may be running : +-------------------------------+ 1) Pure-FTPd 1.0.12 (french-funny) - 6.9% +-------------------------------+ 2) Pure-FTPd 0.98.5 - 7% +-------------------------------+ 3) Pure-FTPd 0.97pre5 - 7% +-------------------------------+ :: Searching exploits. :: FTP-Map didn't find any exploits for dota71.dlinkddns.com :: Testing user 'root' for weak passwords.. :: Unable to determine FTP port sequence numbers :: Scan for: 5.138.187.58 completed :: :: Please send the fingerprint to hypsurus@mail.ru to improve FTP-Map.
Что такое FTP-сервер
Рассказываем о преимуществах и принципах работы файлового сервера и FTP-протокола.

FTP-сервер (файловый сервер) — это компьютер, использующийся для передачи данных по протоколу FTP. С помощью него сервер обрабатывает запросы клиентов, определяет их права, разрешая скачивать или загружать файлы. Клиент же может управлять передачей данных, отправляя специальные команды.
Применение FTP-сервера
Эффективный обмен данными. В отличие от протокола HTTP, FTP передает только файлы, без служебной информации. Как следствие: данные передаются быстрее. Поэтому FTP-сервер — это распространенное решение для удаленного обмена данными между компьютерами. Проще говоря, его можно использовать как хранилище и файлообменник.
Резервное копирование данных. Помимо передачи файлов, FTP-серверы также применяют как средство резервного копирования данных. В зависимости от задачи FTP-серверы могут послужить недорогим и эффективным решением. Чтобы понять, при чем здесь резервное копирование, важно разобраться в принципе работы протокола.
Что такое протокол FTP и как он работает
Наиболее подробно работа FTP-протокола описана в отдельной статье. Ниже выделим основные принципы.
FTP-протокол (File Transport Protocol, протокол передачи файлов) — средство прямой отправки файлов по сети между отправителем (сервером) и получателем (клиентом). В модели OSI считается протоколом прикладного уровня.
FTP использует два различных канала данных: командный канал и канал данных.
Первый передает сообщения о действиях и ответах от сервера клиенту и наоборот. Второй канал передает сами файлы, без служебной информации и команд.
Передача файлов по FTP
FTP поддерживает два режима работы: активный и пассивный. От выбора зависит алгоритм установки сессии.
Активный режим
- Клиент устанавливает связь с сервером и отправляет запрос с нестандартного порта P (P > 1024) на 21 порт сервера.
- Сервер генерирует и отправляет ответ на порт P клиента.
- Сервер устанавливает связь для передачи данных клиенту через 20 порт. При этом данные отправляются на P+1 порт клиента.
Если на пути передачи находится межсетевой экран, использовать активный режим невозможно. Либо потребуется постоянно перенастраивать правила на межсетевом экране.
Пассивный режим
- Клиент соединяется с сервером и через 21 порт сообщает, что необходимо работать в пассивном режиме. Запрос отправляется с нестандартного порта P (P > 1024).
- Сервер определяет нестандартный порт X для канала передачи данных (X > 1024) и посылает на порт P ответ с номером порта X.
- Клиент устанавливает связь для передачи данных через порт P+1 на порт X.
Важно отметить, что установка соединения и передача данных осуществляется по протоколу Telnet, который считается небезопасным, поскольку передаваемые данные не шифруется. Но существуют модификации протокола, способные устанавливать безопасные соединения.
Безопасность
При подключении к серверу проверяются клиентские учетные данные, позволяя узнать подлинность пользователя. Но простой авторизации и аутентификации недостаточно для обеспечения достаточной безопасности, если вы работаете с конфиденциальной информацией.
Как было сказано ранее, по умолчанию FTP не обеспечивает безопасное соединение, так как не шифрует трафик. То есть злоумышленники могут перехватывать пакеты для чтения имен, паролей и остальных файлов.
Чтобы этого избежать, можно использовать альтернативные протоколы — SFTP, FTPS или FTPES. Шифрование FTP с помощью этих протоколов обеспечивает защиту данных, ограничивая возможности злоумышленников — например, прослушку или кражу данных.
FTPS- и SFTP-протоколы
FTPS (File Transfer Protocol + SSL) — этот тот же протокол FTP, но с функционалом по созданию зашифрованных сессий с помощью протокола SSL/TLS.
SFTP (Secure File Transport Protocol) — отдельный протокол, основанный не на FTP, а протоколе SSH. Он полностью шифрует трафик, вместе с данными об аутентификации.
Преимущества и недостатки FTP-сервера
Недостатки сервера FTP
- FTP не обеспечивает безопасность. Все файлы отправляются открытым текстом и подключившийся к каналу злоумышленник может полностью их прочесть.
- Серверы передачи файлов не проверяют источник отправки на подлинность. Это делает сервер уязвимым перед хакерскими атаками вроде DDoS.
- Сложно отслеживать действия пользователей, загруженные и скаченные файлы с сервера.
Плюсы сервера FTP
- FTP умеет быстро передавать большие объемы данных. Из-за отсутствия шифрования и записи системных данных процесс передачи быстрее.
- С помощью FTP одновременно можно передавать несколько разных файлов или каталогов.
- Передача может быть возобновлена. Если передача файла прерывается, можно не беспокоиться о потере прогресса. FTP поддерживает функцию бесшовного восстановления — для этого используется команда rest.
Создайте FTP-сервер на мощностях Selectel
Более 100 фиксированных конфигураций с готовностью — 2 минуты.
Как создать и настроить FTP-сервер
Встроенные инструменты Windows
Создать FTP-сервер можно с помощью встроенных инструментов Windows:
1. Откройте панель управления и перейдите в раздел Программы и компоненты:

2. Во вкладке слева выберите пункт Включение или отключение компонентов Windows.
3. Раскройте IIS, FTP-сервер и поставьте галочки напротив Расширяемость FTP и Служба FTP. Также проверьте папку Средства управления веб-сайтом, поставьте галочки напротив пунктов Консоль управления IIS и Служба управления IIS:

4. Далее FTP-сервер необходимо настроить. В панели управления нужно выбрать раздел Администрирование.
5. В следующем перечне откройте Диспетчер служб IIS:

6. Разверните список слева, кликнув ПКМ на раздел Сайты, выберите Добавить FTP-сайт:

7. В следующем окне введите название сервера и выберите путь к папке:

8. Выберите IP-адрес для сервера:

9. Выберите правила доступа — с проверкой логина и пароля или анонимный:

10. Далее настройте брандмауэр Windows — для этого его нужно выбрать в панели управления:

11. Перейдите к дополнительным параметрам, раскройте пункт Правила для входящих подключений, найдите Входящий трафик FTP и включите его:

Клиенты смогут сами присоединяться к серверу, если выполнить следующие пункты:
1. В панели управления откройте раздел Администрирование и выберите пункт Управление компьютером:

2. Откройте пункт Локальные пользователи, раскройте папку Группы и кликните на Создать группу.
3. Добавьте в группу конкретных пользователей или создайте новых, кликнув по полю Локальные пользователи.
FileZilla Server
Создать FTP-сервер можно с помощью сторонних утилит. Наиболее простой, распространенный и удобный — FileZilla Server. Это решение также поддерживает SSL, что гарантирует безопасность передачи данных.
1. Для начала работы загрузите FileZilla Server. При установке выберите порт администратора или воспользуйтесь предложенным:

2. После завершения установки запустите приложение и подключитесь к серверу в качестве администратора. Для этого используйте имя и пароль, которые вы установили во время установки.
3. Откройте Server-Configure. В Server Listeners можно указать адреса, которые будет прослушивать сервер.
4. В разделе Rights management выберите Users и создайте нового пользователя:

5. В Virtual path впишите виртуальный путь до каталога. Чтобы сразу попасть в корень папки, введите обратный слеш. В Native path укажите полный путь к папке с файлами:

6. Перейдите в раздел Network Configuration wizard — в нем можно указать диапазон портов, на которых будет работать сервер, а также установить внешний IP-адрес для подключения пользователей:


Настройка проброса портов на роутере
Для работы FTP-серверу требуется два типа портов: управляющий (21 по умолчанию) и порты для передачи данных.
Для управляющего порта в конфигурации роутера введите статический адрес сервера, во внешних и внутренних портах укажите порт 21:

По аналогии создайте второе правило, но во внешних и внутренних портах укажите диапазон используемых сервером портов.
Как подключиться к серверу FTP
Через проводник Windows
Введите в адресную строку проводника путь до сервера: ftp:// . В появившемся окне введите логин и пароль пользователя. Готово — в окне проводника должны появиться файлы и директории FTP.
Через браузер
Инструкция похожа на предыдущую. В адресной строке браузера впишите путь до сервера: ftp:// . В появившемся окне введите логин и пароль пользователя. После вы получите доступ к содержимому FTP-сервера.

Через FileZilla Client
Загрузите FileZilla Client на устройство и через менеджер сайтов добавьте FTP-сервер. В качества хоста укажите IP-адрес FTP-сервера и порт. Ниже введите логин пользователя и пароль. Нажмите кнопку Соединиться — в левом окне программы отобразится содержимое FTP-сервера.

Заключение
FTP-сервер относительно прост для настройки и использования. Он позволяет быстро скачивать и загружать большие объемы данных, однако не может обеспечить необходимый уровень безопасности. Поэтому необходимо использовать его усовершенствованные версии, такие как SFTP или FTPS. Хотите узнать о них подробнее? Следите за обновлениями в Академии Selectel.