FTP
Материал из Википедии — свободной энциклопедии
Название: | File Transfer Protocol |
---|---|
Уровень (по модели ВОС): | Прикладной |
Семейство: | TCP/IP |
Создан в: | 1971 г. |
Порт/ID: | 21/TCP для команд, 20/TCP для данных |
Назначение протокола: | Передача файлов |
Спецификация: | RFC 959 |
Основные реализации (клиенты): | См. FTP клиенты |
Основные реализации (серверы): | ProFTPD, Pure-FTPd, vsftpd, WU-FTPD, FileZilla, IIS, CrossFTP Server, wzdftpd |
Расширяемость: | Доп. команды |
FTP (англ. File Transfer Protocol — протокол передачи файлов) — протокол, предназначенный для передачи файлов в компьютерных сетях. FTP позволяет подключаться к серверам FTP, просматривать содержимое каталогов и загружать файлы с сервера или на сервер; кроме того, возможен режим передачи файлов между серверами (см. FXP).
FTP является одним из старейших прикладных протоколов, появившимся задолго до HTTP, в 1971 году. До начала 90-х годов на долю FTP приходилось около половины трафика в сети Интернет[источник?]. Он и сегодня широко используется для распространения ПО и доступа к удалённым хостам.
Протокол не шифруется, при аутентификации передаёт логин и пароль открытым текстом. Если злоумышленник находится в одном сегменте сети с пользователем FTP, то, используя сниффер, он может перехватить логин и пароль пользователя, или, при наличии специального ПО, получать передаваемые по FTP файлы без авторизации. Чтобы предотвратить перехват трафика, необходимо использовать протокол шифрования данных SSL, который поддерживается многими современными FTP-серверами и некоторыми FTP-клиентами.
Процесс нешифрованной авторизации проходит в несколько этапов (символы \r\n означают перевод строки):
* Установка TCP-соединения с сервером (обычно на 21 порт) * Посылка команды USER логин\r\n * Посылка команды PASS пароль\r\n
Если к серверу разрешён анонимный доступ, то можно авторизоваться так:
* USER anonymous\r\n * PASS someone@email\r\n
После успешной авторизации можно посылать на сервер другие команды.
На многих FTP-серверах существует каталог (под названием incoming, upload и т. п.), открытый на запись и предназначенный для закачки файлов на сервер. Это позволяет пользователям наполнять сервер свежими данными.
Изначально протокол предполагал встречное TCP-соединение от сервера к клиенту для передачи файла или содержимого каталога. Это делало невозможным общение с сервером, если клиент находится за IP NAT, кроме того, часто запрос соединения к клиенту блокируется файерволом. Чтобы этого избежать, было разработано расширение протокола FTP passive mode, когда соединение для передачи данных тоже происходит от клиента к серверу. Кроме того, этой проблемы можно избежать, если использовать прокси-сервер.
[править] FXP
FXP (англ. File eXchange Protocol — протокол обмена файлами) — способ передачи файлов между двумя FTP сайтами напрямую, не закачивая их на свой компьютер . При FXP сессии, клиент открывает два FTP соединения к двум разным сайтам, запрашивая пакеты данных у первого сайта как будто бы от имени второго. Польза этого метода в том, что можно перекачивать файлы по сети с огромной скоростью, обладая низкоскоростным соединением. FXP часто используется для распространения пиратского программного обеспечения и другого нелегального контента. Это свойство протокола FTP обнаружили и стали использовать задолго до появления файлообменных программ (p2p).
[править] См. также
[править] Ссылки
- Первоначальная спецификация FTP RFC 959
- Расширения безопасности RFC 2228
- Интернационализация FTP RFC 2640
- Шифрование KEA и SKIPJACK RFC 2773
- Расширение команд FTP RFC 3659
Это незавершённая статья о компьютерных сетях. Вы можете помочь проекту, исправив и дополнив её. |