FTP: объяснение протокола передачи файлов

Связь между людьми и устройствами в Интернете и других сетях осуществляется с помощью протоколов. Можно сказать, что протоколы определяют правила общения: Кто и когда должен отправлять какую информацию? Что произойдет, если данные не дойдут до получателя? Как защитить передачу данных от ошибок и нечестной игры? Всякий раз, когда мы пользуемся Интернетом, эти протоколы — из модели OSI — постоянно используются. Наиболее известными являются HTTP и HTTPS, которые обычно используются для доступа к веб-сайтам. Другим важным протоколом является FTP. Для чего же он используется?

Зачем нужен протокол передачи файлов?

Протокол передачи файлов (FTP) — один из старейших протоколов Интернета. Технология передачи целых файлов используется с 1974 года. В 1985 году FTP получил точное определение в RFC 959. Идея протокола заключается в том, чтобы инициировать загрузку и выгрузку файлов с помощью команд. Это позволяет передавать файлы с собственного устройства (ПК, смартфона и т.д.) на сервер и наоборот.

В этом процессе пользователю доступны системы управления файлами (знакомые вам по вашей операционной системе). Файлы могут быть помещены в папки, которые, в свою очередь, могут быть помещены в другие папки, создавая иерархическую структуру каталогов.

Протокол передачи файлов часто используется для создания веб-сайтов. Например, HTML-файлы могут быть переданы на сервер с помощью FTP-доступа. Кроме того, поставщики веб-сайтов могут сделать медиафайлы доступными для своих посетителей.

Как работает FTP?

Протокол передачи файлов работает на прикладном уровне пакета интернет-протоколов TCP/IP. Это ставит его на тот же уровень, что и HTTP или POP. Эти протоколы характеризуются тем, что они работают вместе с такими программами, как браузеры и почтовые клиенты, чтобы предоставлять вам услуги. Существует также специальное программное обеспечение FTP для протокола передачи файлов.

Эти программы обычно имеют две области. В одной области отображается структура локального каталога, включая все файлы на жестком диске. Другая область отображает память сервера, включая расположенные там файлы и папки. Программа позволяет пользователю перемещать файлы между двумя областями. В наши дни для FTP также можно использовать браузеры и командную строку операционной системы.

Факт

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

При FTP-соединении обычно открываются два канала. Сначала клиент и сервер устанавливают командный канал, используя порт 21. Клиент использует этот канал для отправки команд на сервер, в ответ на которые сервер отправляет коды состояния. После этого обе стороны могут установить канал данных. Он используется для передачи выбранных файлов. Во время этого протокол следит за ошибками. Если соединение разрывается до завершения передачи, процесс может быть возобновлен после восстановления соединения.

Можно провести различие между активным и пассивным FTP. В активном варианте клиент устанавливает соединение, используя порт 21, как описано выше, и сообщает серверу, какой порт можно использовать для передачи ответов. Однако если клиент защищен брандмауэром, то сервер не сможет отправить ни одного ответа, так как все внешние соединения заблокированы. Именно поэтому был разработан пассивный режим. Таким образом, сервер может отправить клиенту номер порта, который клиент может использовать для установления канала передачи данных. Поскольку клиент сам инициирует соединение, его брандмауэр не может заблокировать передачу данных.

Протокол передачи файлов знает различные команды и коды состояния. С помощью 32 команд — не все из которых всегда реализованы на сервере — клиент дает указания серверу загрузить или скачать файлы, упорядочить каталоги или удалить файлы. Сервер отвечает кодом состояния, который предоставляет информацию о том, была ли команда успешно выполнена.

Как обычно, для использования FTP на сервере вам потребуется информация о доступе. Но некоторые серверы также предлагают анонимный FTP, с помощью которого любой пользователь может передавать файлы на сервер по FTP или скачивать с него без пароля. Поскольку такие открытые FTP-серверы подвержены рискам безопасности, возможности пользователей обычно довольно ограничены.

Безопасность и FTP

Оригинальный протокол передачи файлов был создан без каких-либо средств защиты. Во время его разработки Интернет был еще очень мал, а киберпреступность не существовала. С тех пор использование FTP было связано с многочисленными рисками для безопасности, поскольку передача данных была полностью незашифрованной. Поэтому были разработаны две более безопасные версии, которые в настоящее время конкурируют друг с другом: FTPS и SFTP. Первая версия — это FTP с использованием SSL. Соединение устанавливается в сочетании с Secure Socket Layers (SSL) или Transport Layer Security (TLS), при котором обмен данными шифруется.

SSH File Transfer Protocol (SFTP) использует Secure Shell (SSH) для безопасной передачи файлов. Как и в случае с FTPS, соединение шифруется. Однако если FTPS требует двух соединений, то SFTP — только одного. Однако SFTP требует использования дополнительной программы.

Совет

Существует еще один протокол, который называют «SFTP»: Simple File Transfer Protocol. Этот вариант задуман как более простая альтернатива обычному FTP и не имеет никаких функций безопасности. Однако SFTP так и не смог себя должным образом зарекомендовать и сегодня имеет лишь историческое значение.

Оцените статью
cdelat.ru
Добавить комментарий