Что такое FTP? Что располагается на FTP

Сегодня по плану - все о технологии FTP. Расскажу, что такое ftp-серверы и аккаунты (доступы), где используются и как применяется.

FTP — что это такое?

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

Чтобы передать файл по TCP-порту через протокол ФТП, FTP-клиенту нужно связаться с настроенным и запущенным FTP-сервером. Подобная организация передачи файлов наиболее часто используется веб-разработчиками - когда с ПК нужно получить доступ к «внутренностям» сайта и что-нибудь там изменить, улучшить.

Как и HTTP (что это такое?), протокол FTP построен на «клиент-серверной» архитектуре и использует несколько сетевых соединений, чтобы передавать команды и файлы между «клиентом» и «сервером».

Доступ к сайту по фтп аккаунту - что это? Это функция, позволяющая просматривать, изменять, скачивать и загружать файлы. Для получения клиентом доступа к FTP-серверу сайта нужно пройти аутентификацию - ввести логин и пароль. Для отправки имени используется команда «USER», для отправки пароля - команда «PASS».

Если сервер принимает пару логин:пароль, то он отправляет клиенту приглашение. Клиент принимает приглашение и начинается сессия.

У FTP предельно простой синтаксис, описанный в спецификации RFC1738 (данные в квадратных скобках необязательны для заполнения) - ftp://[[:]@][:]/.

Пример 1 - ftp://ftp..txt

Пример 2 - ftp://UNIQUE_USER:[email protected]

Также есть т.н. «анонимный FTP» - когда любой пользователь может анонимно подключиться к ФТП серверу без предоставления данных USER/PASS. Для сессий такого типа предоставляется ограниченный доступ.

Пользователи осуществляют анонимный вход как «anonymous» (имя пользователя), но бывает и так что просят ввести email-адрес вместо пароля. Конечно же, никто не проверяет эти адреса на предмет достоверности.

Анонимный FTP-хосты достаточно популярны, ведь они часто используются для скачивания и обновления ПО на ПК. Более того, доступ может быть организован и через обычные браузеры - ведь они могут напрямую извлекать файлы с FTP-серверов. Происходит это очень просто - при указании FTP-адреса фтп-контент предоставляется точно также как веб-контент при HTTP. А в браузере Фаерфокс можно даже установить полноценный FTP-клиент - FireFTP.

Несмотря на то что работать с FTP можно в браузере, FTP довольно сильно отличается от HTTP:

Особенности протокола FTP:

  1. Использование множественного подключения, минимум - двойного. Один канал - управляющий, через него поступают команды для фтп-сервера и возвращаются ответы; другие каналы используются для передачи данных: одна передача - один канал (для каждого открывается TCP-порт). Благодаря этому свойству, в обоих направлениях одновременно можно передавать несколько файлов, а управляющий поток остается открытым на все время ftp-сессии.
  2. В FTP-протоколе есть двоичный режим передачи данных - при котором уменьшается время передачи файлов и расход трафика. В HTTP такого нет.
  3. По FTP-протоколу проводятся операции в рамках одной сессии с помощью TCP/IP - пока сервер «не забыл» текущее состояние и авторизованного пользователя. В HTTP сессий нет: он просто отдает данные.

FTP имеет три режима передачи данных:

  • Поточный - непрерывная передача данных в виде потока (без обработки, обработка выполняется TCP);
  • Блочный - FTP делит данные на блоки (заголовок, поле данных, размер файла в байтах) и передает их TCP;
  • Режим сжатия данных единым алгоритмом.

Что такое безопасный FTP: FTPS и FTPES, SFTP, SSH-FTP?

Вы наверное уже поняли, что обычный FTP не является безопасным, потому что данные не шифруются при передаче. Это можно исправить, например используя протокол SSH, который зашифрует пару логин:пароль и передаваемое содержимое. Сейчас расскажу подробнее обо всех безопасных FTP - FTPS, SFTP, SSH-FTP.

Откровенно говоря, FTP и не задумывался как безопасный при создании. Так его и сделали с многочисленными уязвимостями, список которых на 1999 год был примерно таким: захват портов и перехват пакетов, сниффинг и спуффинг, брутфорс и скрытые атаки.

FTP был разработан до TLS/SSL и просто физически не может шифровать свой трафик, поэтому любой человек, который способен перехватить пакет по сети, получит данные к именам пользователей, паролям, командам, а значит обретет доступ к приватному FTP-серверу. А доступ к FTP сайта это очень важно - можно много дел натворить.

Решение этой проблемы - использование защищенных версий протокола ФТП. Например, неявный FTPS это TLS-защищенная версия FTP, а SFTP/SCP защищены Secure Shell. Расскажу подробнее о защищенных FTP.

Явный FTPS (FTPES, FTP over Explicit SSL/TLS) - расширенный FTP, создающий возможность «клиентам» требовать шифрование FTP-сессии при использовании команды «AUTH TLS». В ответ на нее, сервер может позволить создать такое соединение или отклонить запрос. Порт - 21. Есть еще неявный FTPS (требует SSL- или TLS-соединение), но он устарел.

SFTP (англ. «SSH File Transfer Protocol») - расширение протокола SSH. Он никак не связан с FTP, но точно также передает файлы и использует те же команды. SFTP использует Secure Shell (SSH) для передачи файлов, т.е. шифрует и файлы, и команды (не передает данные по сети в открытом виде). Порт - 22 или 2222. Функционально SFTP близок к FTP и очень похож на него, но клиенты стандартного ФТП не могут подсоединиться к SFTP-серверу, как и наоборот.

SFTP, используемый как подсистема второй версии реализации протокола SSH, имеет ряд преимуществ перед FTP:

  • Поддержка аутентификации «без пароля» с помощью SSH-ключей более безопасная, чем если хранить пароль на диске или вводить вручную;
  • Поддержка символических ссылок;
  • SFTP-соединение более быстрое и надежное, когда в FTP бывают тормоза и перебои;
  • SFTP-клиенты обладают возможностями прерывания и возобновления передачи файла, его удаления; загруженные файлы могут иметь метки времени, связанные с атрибутами файлов - а в FTP нет условйи для загрузок.

FTP через SSH (обратите внимание, SSH-FTP это не SFTP) - осуществляет обычную FTP-сессию, соединяясь через безопасный SSH-туннель. Такое тунеллирование затруднительно, т.к. FTP открывает несколько TCP-соединений. Это значит, что при установке несколькими SSH-клиентами туннеля для канала управления (по порту 21) защищенным будет только этот один канал, а передача данных пойдет по вновь созданным каналам данных (TCP-соединения), обходящим SSH и от этого являющимися небезопасными.

Еще раз повторю, не нужно путать FTP через SSH с FTPS, SFTP, SCP - последние более безопасные.

Что такое FTP-сервер?

FTP-сервер - «библиотека» файлов на хостинге , используется для хранения файлов разных форматов. Соединение между FTP-сервером и FTP-клиентом происходит по протоколу передачи данных FTP.

Самые популярные ftp-сервера это vsftpd и proftpd. Их настройка осуществляется в файлах.ftpaccess.

ФТП-сервера нужны для того, чтобы размещать на них для публичного и приватного скачивания больших объемов данных: как по количеству файлов, так и по их размеру. Часто такие сервера используются для анонимного (гостевого) доступа к размещенным в открытом виде дистрибутивов ПО, музыки и фото. Доступ для анонимов как правило позволяет только просматривать каталоги и скачивать требуемую информацию, но на некоторых серверах наоборот - есть спецкаталоги, куда любой аноним может загрузить файл для обмена.

При неанонимном доступе возможности пользователя шире (можно загружать файлы), но строго ограничиваются тем каталогом, куда ему предоставлен доступ, даже если «выше» или «по соседству» есть другие каталоги с файлами других пользователей.

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

Ну и кратко о наиболее популярных FTP-клиентах - программах для доступа к FTP-серверам с шифрованием передаваемых данных:

  • WS_FTP;
  • LeechFTP;
  • CuteFTP;
  • FileZilla - самый популярный FTP-клиент для Windows/Mac/Linux. Есть поддержка FTPS, SFTP.
  • FAR Manager - самый «древний» консольный файловый менеджер для Виндоуса. Очень простой, имеет много плагинов, поддерживает SFTP (нужен плагин WinSCP).
  • Total Commander - теряет популярность (на любителя) и поддерживает FTPS. Плагины для SFTP, к сожалению, устаревшие.
  • FireFTP - а это вообще плагин для Мозиллы Фаерфокс. Есть поддержка FTPS, SFTP.
  • Cyberduck - фтп клиент для маков, поддерживает FTP/SFTP.
  • WinSCP - минималистичный и красивый SCP-, FTP- и SFTP-клиент для Виндоуса.

Лично я пользуюсь WinSCP.

Подведу итог. В чистом виде, ФТП не предназначен для безопасной передачи файлов по сети, хоть и является стандартом. Я рекомендую более безопасные протоколы с шифрованием FTPS и SFTP.

Успехов при работе по FTP!

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

FTP (File Transfer Protocol) - это протокол передачи информации в интернете и локальных компьютерных сетях. Это программа, осуществляющая удалённое подключение к выделенной папке для просмотра и обмена файлами, в том числе больших размеров. Обмен данными возможен от компьютера к удалённому серверу и между другими ФТП-серверами.

Данные передаются без шифрования трафика, поэтому доступ к логинам и паролям легко могут получить злоумышленники. Для безопасной передачи файлов рекомендуется использовать протокол с TLS-защитой - FTPS, шифрующий данные.

Собственный FTP-сервер имеет определённые преимущества:

  • позволяет управлять сервером и его ресурсами;
  • предоставлять пользователям разные права доступа;
  • для него не нужен статический IP-адрес.
  • нет ограничений скорости;
  • отсутствие оплаты хостеру за его размещение;

В соответствии с тем, какой сложности будет доступ, выбирается программное обеспечение. Чтобы создать FTP-сервер для частного пользования с минимальными настройками,вполне подойдут бесплатные программные пакеты.

Компанией Майкрософт в Windows 7 добавлена функция Internet Information Services (IIS), осуществляющая общий доступ из сети к выделенной для этой цели папке. Поэтому, чтобы создать FTP-сервер для Windows 7, не требуется дополнительно устанавливать ПО.

Установка FTP-сервера

Некоторые стандартные возможности, которыми пользуются не так часто, в Windows 7 отключены по умолчанию. Поэтому, чтобы их активировать, необходимо выполнить ряд шагов.

Для создания ФТП-сервера на Windows 7 необходимо:

  • Нажать «Пуск» и открыть раздел «Панель управления». Для удобства просмотра можно выбрать режим «Мелкие значки».

  • Перейти в раздел «Программы и компоненты», где выбрать «Включение или отключение компонентов Windows».

  • В списке открывшегося меню нужно отметить компоненты, которые следует активировать, поставив рядом галочку. Это папка «FTP-сервер», в ней два пункта: «Расширяемость FTP» и «Служба FTP», а также папка «Средства управления веб-сайтом», а в ней- «Консоль управления IIS». Для запуска нажать OK.

Настройка ФТП-сервера

  1. Теперь нужно снова зайти через «Пуск» в «Панель управления».
  2. Найти раздел «Администрирование» и открыть в этом разделе «Диспетчер служб IIS».
  3. Перейти во вкладку «Сайты», щёлкнув на название правой кнопкой, выбрать из списка «Добавить FTP сайты».
  4. В новом окне требуется указать имя будущего ФТП-сервера, и путь к каталогу с его данными. К следующему этапу настройки можно перейти, нажав кнопку «Далее».
  5. Теперь устанавливаются параметры сервера. В поле IP-адреса выбрать нужный из списка. Можно привязать его к определённому адресу или сделать расширенный доступ, выбрав пункт «Все свободные». При этом должен быть отмечен стандартный порт- 21. Если планируется постоянно использовать FTP-сервер, то следует поставить отметку галочкой «Запускать FTP-сайт автоматически». Выбрать опцию «Без SSL», её можно включить в случае необходимости позже. Снова нажать «Далее».
  6. В новом окне задаётся тип авторизации. В пункте «Проверка подлинности» можно разрешить вход для обычных или анонимных пользователей. Здесь же можно настроить для них права. Нажать«Готово».

После завершения установки в разделе «Сайты» появится новый ФТП-сервер.

Настройка брандмауэра Windows

Теперь обязательно необходимо настроить брандмауэр Windows для открытия портов и функционирования служб.

Снова войти в «Панель управления», затем «Брандмауэр Windows». Найти раздел «Дополнительные параметры».

В нём выбрать «Правила для входящих соединений». Для них рекомендуется установить пассивный режим. Для этого правой кнопкой мыши нажать и включить правила «FTP Server Passive» и «FTP-сервер (входящий трафик)». Таким же образом для исходящих подключений включить в соответствующем разделе правило «FTP-Server».

Подключение пользователей

Чтобы на сервер могли заходить пользователи, их необходимо подключить.

  • Во вкладке «Панель управления» открыть папку «Администрирование».

Раздел Администрирование

  • Найти раздел «Управление компьютером», затем перейти к папке «Локальные пользователи». Нажав правой кнопкой на строку «Группы», выбрать функцию «Создать группу». В новом окне указать имя и короткое описание группы, нажать «Создать».
  • Теперь можно подключить пользователей к созданной группе. В папке «Локальные пользователи» нажать правой кнопкой на строку «Пользователи» и выбрать из списка меню «Новый». Заполнить поля, введя имя и пароль, здесь же следует установить галочкой запрет на смену пароля.
  • Для подключения пользователя нажать правой кнопкой на его учётную запись и выбрать из списка меню пункт «Свойства», далее - вкладка «Членство в группах» и кнопка «Добавить». Найти созданную группу, добавить и нажать OK. Эту процедуру нужно выполнить для всех пользователей сервера.
  • На следующем этапе определяются права доступа пользователей группы к рабочему каталогу. Для этого нужно перейти к каталогу «Сайт», щёлкнуть по названию правой кнопкой и открыть «Свойства». Далее - вкладка «Безопасность», в пункте «Изменить» указать название группы и нажать ОК. Затем нужно настроить права для пользователей.
  • Войти в «Диспетчер служб IIS», нажав правой кнопкой на строку «Правила авторизации FTP», добавить разрешающее правило. Можно позволить пользователям запись и удаление данных, а можно только чтение.

Установка и настройка сервера завершена. Однако, теперь нужно знать, как зайти на FTP-сервер.

Стандартные функции Windows позволяют сделать это просто. Достаточно открыть папку «Мой компьютер», затем в адресной строке указать путь к серверу.

Другой способ - создать ярлык подключения к ФТП на рабочем столе компьютера.

Для этого открыть«Панель управления», кликнуть правой кнопкой раздел «Сетевое окружение». В задачах выбрать «Добавить новый элемент в сетевое окружение», затем щёлкнуть на пункт «Выберите другое сетевое размещение» и «Далее». Теперь в разделе «Сетевое размещение» появится ярлык, который нужно просто перетащить мышью на рабочий стол.

Здравствуйте! Как вы знаете, любой сайт состоит из множества различных файлов: картинки, текстовые документы, системные файлы и т.д. Рано или поздно вы столкнетесь с тем, что вам будет необходимо что-то загрузить или скачать с вашего сайта. Существует несколько способов, как это сделать. Самый простой способ это FTP. Возможно, вы уже слышали такую аббревиатуру, но не знали что это такое. Что такое ftp и как им пользоваться ?

Что такое FTP?

FTP (англ. File Transfer Protocol - протокол передачи файлов) - стандартный протокол, предназначенный для передачи файлов по TCP-сетям (например, Интернет). FTP часто используется для загрузки сетевых страниц и других документов с частного устройства разработки на открытые сервера хостинга.

Говоря обычным языком ftp, это возможность работы с файлами в сети (интернет). Имеется еще два понятия ftp-сервер и ftp-клиент. На одной стороне находиться ftp-сервер, к примеру, наш сайт, а если точнее, то сервер с файлами нашего сайта. С другой стороны ftp-клиент, наш компьютер. С помощью программы мы можем зайти на наш сайт, но увидим мы сайт не во всех его прелестях, а просто набор файлов, которые мы с легкостью можем скачать к себе на компьютер, отредактировать эти файлы (если в этом есть необходимость), а так же с легкостью закачать файлы на ftp-сервер, то есть на сайт.

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

Зайти на ftp мы можем несколькими способами, даже с помощью стандартного Проводника Windows (Мой Компьютер), где в адресную строку мы должны ввести ftp://ваш_сайт/.

Потом у вас потребуют ввести «Имя пользователя» и «Пароль». Чаще всего имя пользователя и пароль к FTP совпадают с данными, которые вы вводите при входе в административную панель своего хостинга. Но даже если у вас не будет что-то получаться, вы всегда можете спросить, где взять свой логин и пароль к ftp в тех. поддержке своего хостинга.

Так же зайти на ftp мы можем с помощью популярной программы Total Commander. Наверняка многие ей пользуются, а если у вас ее нет, то вы можете скачать ее тут.

Работать с FTP с помощью Total Commander гораздо проще, чем через «Мой Компьютер». Если вы с этим не согласны дальше статью можете не читать, потому что я вам покажу как настроить FTP в Total Commander.

И так, первое что мы должны сделать, это зайти в программу Total Commander, найти и нажать на вкладку «FTP» — «Соединиться с FTP-сервером».

У нас появится вот такая табличка, где вы должны нажать на кнопочку «Добавить».

После нажатия появится новое окно, где нужно будет вводить данные нашего FTP-сервера. Хочу напомнить вам еще раз, что «учетная запись» и «пароль» для ftp чаще всего совпадают с данными, которые вы вводите для входа в панель управления своего хостинга. При регистрации на хостинге вам должны были прислать письмо со всеми логинами и пароля для хостинга, в том числе и на FTP-сервер.

После того как вы все ввели, нажмите «ок», выберите свой ftp и нажмите кнопку «соединится». И теперь вы можете наблюдать с правой или с левой стороны файлы вашего FTP-сервера, а с противоположной стороны файлы вашего компьютера.

Теперь вы знаете. Один раз настроив программу, вы можете наслаждаться приятной работай с файлами вашего сайта, при необходимости с легкостью скачивать файлы к себе на компьютер и обратно на сайт с помощью нескольких щелчков мыши. Если у вас будут возникать вопросы по работе с программой, задавайте их в комментариях. Не забывайте подписываться на обновления блога.

Современный интернет представляет собой множество компьютеров, объединенных между собой специальными протоколами обмена информацией. Для отображения сайтов используют протоколы а для обмена крупными файлами применяют FTP, SFTP и FTPS. Разберемся, что такое FTPS-сервер. Узнаем также, как с ним работать.

Что такое FTPS

Название протокола можно разделить на две части: FTP+SSL или FTP+TLS (развитая версия SSL). Первая часть является основной и является сокращением от - протокол переноса файлов. Этот метод обмена данными стандартно не шифруется, поэтому файлы, отправленные по FTP, легко перехватить и взломать. Этими особенностями раньше пользовались хакеры для кражи важной документации с серверов компаний.

Чтобы исправить недостаток защищенности информации, разработали В нем все передаваемые файлы сначала обрабатываются через SSL или TLS (протоколы шифрования), поэтому команды и пакеты во время перемещения имеют неразборчивый для мошенников вид, например, вместо «Hello» приходит «GTYSL». На сервере же весь код обратно превращается в логические выражения.

Можем подвести итог по вопросу о том, FTPS - это что такое и в чем его функции. Это защищенный FTP протокол. Теперь при передаче информации можно быть уверенным, что файлы останутся известны только разрешенным пользователям. Не путайте FTPS и SFTP, это разные протоколы и работают по разным принципам.

Как перевести сервер на FTPS

Некоторые не знают, что такое FTPS-сервер. Это компьютер, на котором хранятся файлы, он работает так же, как и FTP-сервер (передает файлы по запросу клиента). За исключением того, что перед началом обмена файлами вся информация шифруется.

Чтобы защитить файловый сервер от нежелательного проникновения, потребуется создать цифровой сертификат. Если используется Filezilla Server, то для этого перейдите в раздел настроек SSL/TLS. Здесь понадобится создать новый сертификат, в котором указываются данные о коде страны, названии организации и т.п.

Сертификат можно получить бесплатный через Filezilla или же через другие сервисы. Для локального доступа хватит самоподписного сертификата, но для публичной деятельности этих мер будет недостаточно, и сертификат можно купить у центра сертификации.

Подключение по FTPS

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

  1. Клиент запросил шифрование данных (отправляет CSR-код запроса).
  2. Сервер согласует алгоритм шифрования и отправляет клиенту SSL-сертификат для проверки и открытый ключ от RSA-шифра.
  3. Клиент читает информацию из сертификата и обращается к центру, который выдал сертификат. Если у центра и сервера сертификаты одинаковы между собой, то проверка пройдена и соединение продолжается. Иначе соединение прерывается и на сервер отсылается код ошибки.
  4. Если проверка пройдена успешно, то клиент создает зашифрованный ключ сеанса (для шифрования файлов) и он отправляется серверу. Для этого используются случайные числа и RSA-шифрование с открытым и закрытым ключами.
  5. Сервер получает ключ и расшифровывает его. В дальнейшем этот ключ применяется для шифрования всех отправляемых и принимаемых файлов.

После получения секретного ключа сеанса начинается передача данных. Ключ проверяется при каждом новом запросе, все данные внутри FTPS-протокола надежно шифруются.

Надежность соединения

Благодаря TSL/SSL-сертификатам можно избавиться от фишинга. Проверка подлинности позволяет браузеру точно знать, что его данные направляются в шифрованном виде именно на указанный сервер, а не в компьютер злоумышленников. Особенно важно использовать шифрование при вводе личной информации, номеров банковских карт и т. п.

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

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

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

.jpg

Или применить более сложный вариант, ежели используется порт, отличный от 21:

Ftp://login:password@сайт:35/images/file-1.jpg

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


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

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

Но продолжим. Схематически взаимодействие «клиент-сервер» при ФТП-соединении можно наглядно представить следующим образом:


Если расписать этот процесс по пунктам, то получится примерно следующее:

  1. Пользователь активирует клиентское приложение и соединяется с сервером, введя логин и пароль.
  2. Устанавливается управляющее соединение между соответствующими модулями — интерпретаторами протокола со стороны клиента и сервера.
  3. Пользователь посредством клиента посылает команды серверу, определяющие различные параметры FTP-соединения (активный или пассивный режим , порт, вид передачи данных, их тип), а также директивы для действий, которые юзер намерен осуществить (например, удалить, переименовать, закачать файл и т.д.).
  4. После того, как установлены все необходимые параметры, один из участников (к примеру, клиент), являющийся пассивным, становится в режим ожидания открытия соединения на порт, который задан для передачи информации. Затем активный участник открывает соединение и начинает передавать данные по предназначенному для этого каналу.
  5. По завершении передачи это соединение закрывается, но управляющий канал между интерпретаторами остается открытым, вследствие чего пользователь в рамках той же сессии может вновь открыть передачу данных.

Если пользователь является администратором сайта, который расположен на удаленном сервере, то после аутентификации и подключения он в силах совершать любые возможные действия.

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

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

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

Ftp://сайт/images/file-1.jpg

На практике при анонимном ФТП обычно в качестве логина для доступа применяется известное в сети слово «anonymous», а в качестве пароля — адрес электронной почты, который, впрочем, в большинстве случаев не проверяется.

Безопасный ФТП (SFTP, FTPS и с использованием SSH)

Этот протокол изначально не задумывался как защищенный, так ка разрабатывался в далеком 1971 году и использовался поначалу лишь в научно-исследовательской сети APRANET, доступ в которую имели только несколько военных объектов и университетов.

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

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

По этой причине были разработаны несколько методов, позволяющих зашифровать передаваемую посредством ФТП информацию. Вкупе все эти способы получили обобщающее и емкое название «Безопасный FTP» . Вот какие разновидности протокола соответствуют этому термину:

1. FTPS (FTP + SSL) — фактически это расширение стандартного протокола передачи файлов, которое обеспечено криптографическим протоколом SSL (Secure Sockets Layer — уровень защищенных сокетов). На сегодняшний день более передовым его аналогом является TLS (Transport Layer Security — защита транспортного уровня). При этом есть два метода предоставления безопасности:

1.1. Неявный является устаревшим и использует стандартный протокол, требующий применения SSL или TLS, которые могут обеспечить шифрование информации. При таком методе обязательно нужно использовать порты, отличные от обычных, что создает неудобства, поскольку нарушается совместимость клиентов и серверов, не поддерживающих FTPS.

1.2. Явный — намного более удобный, так как применяет команды стандартного протокола FTP, но при отправке ответа зашифровывает информацию, что позволяет сохранить совместимость, поскольку в этом случае применяются одни и те же порты как для FTPS, так и для FTP. При этом для шифрования данных клиентом отправляется команда «AUTH TLS» или «AUTH SSL».

2. SFTP (SSH FTP) — протокол прикладного уровня для передачи файлов, который работает поверх безопасного канала, его не следует путать с «Simple File Transfer Protocol», имеющего такую же аббревиатуру. Если FTPS является просто расширением FTP, то SFTP это отдельный и никак не связанный с ФТП протокол, который снабжен SSH (Secure Shell - безопасная оболочка).

Главное, в чем заключается его отличие от стандартного ФТП и ФТПС, это то, что СФТП шифрует абсолютно все команды, имена пользователей, пароли и другую конфиденциальную информацию. Так как это совершенно другая конфигурация, клиенты FTP (FTPS) не могут соединиться с SFTP-сервером.

3. FTP через SSH — производит обычную FTP-сессию через SSH-туннель, то есть этот вариант нельзя путать с SFTP, который является отдельным независимым протоколом. Этот метод нельзя назвать стопроцентно безопасным. Почему?

Дело в том, что если несколько SSH-клиентов устанавливают туннель для управляющего канала, который изначально осуществляется через 21 порт (а такая ситуация практически всегда и наблюдается), то защищенным окажется именно этот канал. При передаче же данных клиентское программное обеспечение откроет новые TCP-соединения, которые будут находиться уже вне воздействия защитной оболочки SSH.

Надеюсь, вы не запутались во всех этих вариантах безопасных протоколов. Для того, чтобы как-то облегчить понимание, позволю себе сделать краткое резюме. Объективно обеспечивающим самую высокую степень защиты является SFTP. Немного уступает ему в надежности явный FTPS, однако он более удобен, поскольку дает возможность пользоваться обычными портами. Какой из них выбрать, зависит от вида задачи, которая перед вами стоит и, конечно, настроек сервера.