ftp протокол номер порта
Вики для программы «Веб-дизайн»
Компьютерные сети
FTP-протокол
FTP (File Transfer Protocol) – это один из трёх основных протоколов Интернета (mail, www, ftp). FTP или «Протокол Передачи Файлов» – один из старейших протоколов в Интернет и входит в его стандарты. Обмен данными в FTP проходит по TCP-каналу. Построен обмен по технологии «клиент-сервер».
Имеется ряд стандартных (эталонных) протоколов, из которых можно выбрать подходящий. Каждый протокол имеет свои преимущества и недостатки (неудобства); например, некоторые более простые, чем другие, некоторые более надёжны, и некоторые быстрее.
С точки зрения пользователя, единственное, что его интересует в протоколе, – то, что компьютер или устройство должен поддерживать его (протокол) правильно, если Вы хотите связываться с другими компьютерами. Протокол может быть реализован или в оборудовании или в программном обеспечении.
FTP – это свод правил, которые указывают на то, как компьютеры могут совместно использовать файлы в Интернете.
Протокол FTP построен таким образом, что различные компьютеры с различным программным обеспечением и различным «железом» могут эффективно обмениваться любыми файлами.
Сегодня многие пользователи при слове FTP ассоциируют его с warez, mp3, jpeg и mpeg форматами. Но на самом деле этот протокол используется для передачи любых видов файлов, от обычных текстовых документов до защищённых программных файлов. FTP протокол широко используется в автоматических системах проведения оплаты через Интернет и для передачи информации со спутников в космосе.
Пересылка и загрузка файлов в Интернете – столь важные рутинные задачи, что протокол FTP стал широко применяться еще до появления в Сети электронной почты. Однако с помощью этого протокола существенно проще получить доступ к файлам другого компьютера, нежели предоставить другим возможность доступа к вашим файлам и их считывания.
Технические процессы осуществления соединения с помощью протокола FTP
В FTP соединение инициируется интерпретатором протокола пользователя. Управление обменом осуществляется по каналу управления в стандарте протокола TELNET. Команды FTP генерируются интерпретатором протокола пользователя и передаются на сервер. Ответы сервера отправляются пользователю также по каналу управления. В общем случае пользователь имеет возможность установить контакт с интерпретатором протокола сервера и отличными от интерпретатора пользователя средствами.
Команды FTP определяют параметры канала передачи данных и самого процесса передачи. Они также определяют и характер работы с удалённой и локальной файловыми системами.
FTP отличается от других приложений тем, что он использует два TCP соединения для передачи файла.
Сессия управления инициализирует канал передачи данных. При организации канала передачи данных последовательность действий другая, отличная от организации канала управления. В этом случае сервер инициирует обмен данными в соответствии с параметрами, согласованными в сессии управления.
Канал данных устанавливается для того же хоста, что и канал управления, через который ведётся настройка канала данных. Канал данных может быть использован как для приёма, так и для передачи данных.
Канал управления должен быть открыт при передаче данных между машинами. В случае его закрытия передача данных прекращается.
FTP адрес выглядит примерно так:
Дальше идёт непосредственно адрес. Это может быть IP, либо адрес может иметь буквенное значение (ftp.ur.ru). После адреса опять идёт разделительное двоеточие, которое разделяет адрес, и номер порта к которому следует подключаться. По умолчанию этим портом является 21, но может быть любая цифра, обозначенная администратором сервера.
Адрес может выглядеть и так:
Это будет означать, что имя пользователя anonymous, паролем является E-mail адрес, а порт 21-й.
Режимы FTP
В активном режиме FTP клиент соединяется с произвольного непривилегированного порта (N > 1024) к FTP серверному командному порту 21. Затем, клиент начинает слушать порт N+1 и посылать FTP команду PORT N+1 на FTP сервер. В ответ, сервер соединяется с указанным портом данных клиента из своего локального порта данных 20.
В пассивном режиме FTP клиент инициирует оба соединения с сервером, решая проблему с файрволами, которые фильтруют входящий порт данных клиента. При открытии FTP соединения, клиент локально открывает два непривилегированных порта (N > 1024 и N+1). Первый порт контактирует с сервером на порт 21, но вместо того, чтобы затем выдать команду PORT и позволить серверу в ответ соединиться с его портом данных, клиент выдает команду PASV. В результате сервер открывает произвольный непривилегированный порт (P > 1024) и посылает клиенту команду PORT P. Затем, для передачи данных, клиент инициирует соединение от порта N+1 к порту P на сервере.
FTP порт – как “пробросить” и открыть доступ
Время на чтение: 8 минут
Настройка FTP – несложный процесс, который имеет свои специфические особенности. Если вы сразу постараетесь во всем разобраться, то работа с сервером FTP со временем станет для вас одним наслаждением. Через такие сервера вы сможете скачивать музыку, фильмы, картинки и прочие файлы, а также содержать сайт с хостом, работающим через протокол передачи данных. Но для этого нужно хорошо понять, что к чему, а в особенности необходимо разобраться в том, что из себя представляет FTP порт, для чего он нужен и как его настроить. Именно об этом и пойдет речь в статье. Вы узнаете, какой порт стандартный, как изменить настройки по умолчанию для портов и разблокировать его в брандмауэре и роутере.
Что из себя представляет порт и зачем он нужен
Если разобраться, то все предельно просто. У операционной системы компьютера есть определенное ограниченное число портов. Они нужны для того, чтобы программы могли к ним подключаться через сеть. Это сделано для того, чтобы приложения не конфликтовали между собой во время попытки подсоединиться к сети. Порт – это лишь цифра транспортного протокола. Его можно сравнить с трассой. Если все программы запускать по одной и той же “трассе”, то на ней быстро образуется пробка. Потому для каждого приложения должен быть выделен свой уникальный порт – то есть еще не занятое другими программами число.
Разработчики операционных систем уже давно используют такой метод распределения программ по пронумерованным протоколам и он хорошо себя зарекомендовал. Ведь существует более шести тысяч портов, чего с головой хватит для любого компьютера!
FTP – это протокол передачи данных. Он необходим для того, чтобы клиент и сервер могли быстро обмениваться различными файлами.
Такой протокол удобен для тех людей, которым неважен web-интерфейс хранилища, а которые ценят скорость загрузки и количество файлов, которые можно хранить на сервере. Нет лучшего способа обмена объемными данными, чем через протокол FTP. И работает этот протокол через канал TCP. А для того, чтобы подключиться к этому каналу, необходим определенный порт. То есть чтобы открыть сервер, клиент должен зайти на его порт, и уже через него проникнуть на хост. В этом и кроется вся суть портов для FTP.
Что такое активный и пассивный режим, и как они связаны с портами
Дело в том, что есть два варианта развития сценария взаимодействия клиента с сервером. Первый вариант – это когда программа назначает порт, по которому ей удобно пользоваться. То есть на сервере установлен определенный номер порта, и система с этим соглашается, освобождая его. А второй вариант – это когда операционная система сама подбирает для программы порт для выхода в сеть.
В FTP когда клиент пытается подключиться к серверу, активный режим проявляется в момент установки соединения для передачи данных. Если задан активный режим, то тогда клиент задает номер порта соединения, который должен открыть сервер. Получается, что клиент управляет ситуацией, а сервер подстраивается под него. А в пассивном режиме клиент выступает пассивно, то есть принимает от сервера сообщение с номером порта для соединения, и подключается по нему.
Но дело в том, что в протоколе FTP есть два типа соединения:
Активность и пассивность клиента проявляется только во втором типе соединения. А первое необходимо для того, чтобы сервер и клиент могли общаться между собой. То есть чтобы сервер принимал команды от клиента, потому это соединение и называется управляющим. Такое соединение работает через стандартный порт, установленный по умолчанию.
Как настроить порты по умолчанию, чтобы FTP-сервер заработал
Многие, кто пытаются установить FTP-сервер в популярной операционной системе Windows, сталкиваются с проблемой закрытых портов. В результате, клиент не может открыть сервер, потому что тот недоступен для него – “трасса” перекрыта. Потому нужно уметь настраивать порты, и об этом далее пойдет речь в статье.
По умолчанию в FTP настроены 20 и 21 порты. Наибольшее значение имеет 21 порт, который необходим для того, чтобы вы могли открыть сервер и передавать ему команды – то есть он нужен для управляющего соединения. А вот 20 порт нужен в основном для активного режима. В любом случае вам необходимо освоить навык проброса портов, чтобы обойти стандартные блокировки системы и роутера.
Проблема в том, что далеко не все пользователи Windows решаются на затею создать у себя на компьютере FTP-сервер. Потому операционная система блокирует доступ инородных тел (удаленных компьютеров) на ПК через основные каналы транспортных протоколов. И, как правило, 21 и 20 порты также входят в список заблокированных для удаленных клиентов. А блокируют их со стороны компьютера – брандмауэр, и устройство-посредник для доступа к Интернету – роутер. Вам нужно научиться обходить эту двойную защиту, чтобы вы могли открывать не только 21 порт, но и другие, когда потребуется.
Настройка проброса портов 21 и 20 начинается с изменения конфигураций брандмауэра. Вам необходимо открыть “Панель управления” через “Пуск”. Далее отыщите вкладку “Система и безопасность” и внутри нее найдите раздел “Брандмауэр Windows”. Далее вам необходимо добраться к “Дополнительным параметрам брандмауэра” в левом боковом меню настроек. Брандмауэр работает посредством правил, потому вам нужно лишь создать новые стандарты для этой службы, чтобы она не мешала работе FTP-сервера. Для этого нажмите “Правила для входящих подключений” и кнопку “Создать правило”. Ничего прописывать не придется – это не написание программы, так как в Windows все работает через интуитивно понятный интерфейс. Вам нужно будет указать тип правила “Для порта”. Потом выбрать “Протокол TCP” и указать в форме “Определенные локальные порты” число 21. Далее разрешаете подключение через порт 21, определяете уровень доступа для клиентов, прописываете название правила и сохраняете введенные настройки.
Следующим шагом вам необходимо настроить правила для исходящих соединений. Ведь не только клиент будет загружать на сервере различные данные и отдавать команды, но и сервер неоднократно поделиться своими файлами и будет высылать данные удаленному компьютеру. Потому исходящие соединения вам также нужно одобрить. В целом, настройка правил для таких соединений ничем не отличается от выше описанной. Вам также нужно будет прописать порт 21 и везде активировать разрешение, которое по умолчанию заблокировано. Если вы используете активный режим, то можете в строке, куда нужно прописывать порт, указывать через запятую сразу две цифры: 21 и 20. Если понадобится на будущее, то можете в правиле прописать целый диапазон портов, для которых соединение будет разрешено – для этого пропишите цифры через дефис без пробелов.
Иногда настройки одного брандмауэра недостаточно. К стандартным службам подобного плана относится еще и фаерволл. Его настраивать еще проще, чем брандмауэр. Вам не придется добавлять новое правило, а нужно будет лишь отметить галочку возле FTP-сервер для входящих и исходящих соединение. Firewall сам определит порты, через которые работает ваш сервер, и даст добро на их открытие.
Куда сложнее обстоят дела с роутерами. Дело в том, что их сейчас большое множество. Потому открыть порты 21 и 20 через роутер каким-то универсальным способом не получится – у каждой марки и модели свои нюансы, в которых нужно разбираться. Если вы вообще никогда не влазили в настройки роутера, то лучше не спешите с этим. Почитайте на форумах, разберитесь в меню и функциях, и только затем пробуйте пробросить порт в роутере.
Зачастую блокировка порта связана с несколькими опциями, которые установлены в роутере. К примеру, это может быть не проставленная галочка возле опции UPnP. Данная опция необходима для того, чтобы программы автоматически пробрасывали порты через роутер и вас не тревожили. Как правило, если в роутере есть такая функция, то она активирована, но бывает всякое, и вполне может быть, что в вашем маршрутизаторе она отключена. Тогда вам осталось найти такой пункт настроек и поставить возле него одобрительную галочку для включения.
С другой стороны, порой порты нужно указывать в специальных пунктах настроек роутеров. Для этого вам нужно подключиться к роутеру через локальную сеть. Чтобы сделать это, посмотрите на нижней стороне маршрутизатора его IP-адрес, а затем введите его в адресную строку любого браузера. Перед вами откроется меню роутера, в котором нужно найти настройки подключения по локальной сети. В таких настройках, обычно, есть конфигурации семейств IP, которые могут подключаться к роутеру, а также порты, которые открыты для работы. Вам нужно указать диапазон портов, чтобы роутер их не блокировал. Не забудьте учесть диапазон, чтобы числа 20 и 21 вошли в него.
Обязательно ли использовать 21 порт
Люди, которые постоянно имеют дело с серверами и создают их, наслышаны о цифре 21. Для них она является знаковой, так как многие сервера и протоколы, не только FTP, используют 21 порт по умолчанию. И это плохо, если начать анализировать ситуацию. Ведь протокол передачи данных совсем не защищен от перехвата. В любой момент опытные хакеры могут напасть на ваш сервер и перехватить пароль и логин клиента. Затем они проникнут на сервер и украдут оттуда важные данные, либо спрячут в каталогах вредоносные программы и вирусы.
Чтобы хоть как-то повысить уровень безопасности использования протокола FTP, рекомендуется сменить в настройках стандартный порт, который нужен для подключения. Сделать это несложно, но у каждого сервера данная опция настраивается по-своему. Единственный нюанс заключается в том, что потом при подключении клиенту необходимо будет указывать новый номер порта вместо цифры 21. В этом и суть защиты – хакеры не будут знать порт, по которому нужно перехватывать данные, потому не сумеют их украсть.
Протоколы SFTP и FTPS
Буквально неделю назад я писал реферат по обозначенной в заголовке теме и столкнулся с тем, что, скажем так, познавательной информации в сети не так уж много. В основном сухие факты и инструкции по настройке. Поэтому я решил несколько подкорректировать текст и выложить его в качестве статьи.
FTP (File Transfer Protocol) – протокол передачи файлов по сети. Является одним из базовых протоколов Ethernet. Появился в 1971 году и изначально работал в сетях DARPA. На данный момент, как и HTTP, файловая передача основывается на модели, состоящей из совокупности протоколов TCP/IP (Transmission Control Protocol/Internet Protocol). Определён в RFC 959.
Протокол определяет следующее:
Взаимодействие между клиентом и сервером
Рассмотрим происходящие при работе FTP процессы подробнее. Соединение инициализируется интерпретатором протокола пользователя. Управление обменом осуществляется по каналу управления в стандарте TELNET. Команды FTP генерируются интерпретатором протокола пользователя и передаются на сервер. Ответы сервера отправляются пользователю также по каналу управления. В общем случае пользователь имеет возможность установить контакт с интерпретатором протокола сервера и отличными от интерпретатора пользователя средствами.
Основная особенность FTP в том, что он использует двойное подключение. Одно из них используется для передачи команд серверу и происходит по умолчанию через TCP-порт 21, который может быть изменён. Управляющее соединение существует все время, пока клиент общается с сервером. Канал управления должен быть открыт при передаче данных между машинами. В случае его закрытия передача данных прекращается. Через второе происходит непосредственная передача данных. Оно открывается каждый раз, когда осуществляется передача файла между клиентом и сервером. В случае, если одновременно передаётся несколько файлов, для каждого из них открывается свой канал передачи.
FTP может работать в активном или пассивном режиме, от выбора которого зависит способ установки соединения. В активном режиме клиент создаёт управляющее TCP-соединение с сервером и отправляет серверу свой IP-адрес и произвольный номер клиентского порта, после чего ждёт, пока сервер запустит TCP-соединение с этим адресом и номером порта. В случае, если клиент находится за брандмауэром и не может принять входящее TCP-соединение, может быть использован пассивный режим. В этом режиме клиент использует поток управления, чтобы послать серверу команду PASV, и затем получает от сервера его IP-адрес и номер порта, которые затем используются клиентом для открытия потока данных со своего произвольного порта.
Возможна ситуация, когда данные могут передаваться на третью машину. В этом случае пользователь организует канал управления с двумя серверами и организует прямой канал данных между ними. Команды управления идут через пользователя, а данные напрямую между серверами.
При передаче данных по сети могут быть использованы четыре представления данных:
Передача данных может осуществляться в любом из трёх режимов:
FTP server – это сервер, который предусматривает возможность использования протокола передачи файлов. Он обладает определенными особенностями, отличающими его от обычных веб-серверов:
FTP client – это программа, позволяющая подключиться к удаленному серверу по FTP и также выполнять на нем необходимые действия с элементами файловой системы. Клиентом вполне может быть браузер, в адресную строку которого следует ввести адрес, представляющий собой путь до определенного каталога или файла на удаленном сервере, в соответствии с общей блок-схемой URL:
Однако же, использование веб-обозревателя в таком разрезе позволит лишь просмотреть или скачать интересующие файлы. Для того, чтобы в полной мере задействовать все плюсы FTP, в качестве клиента следует применить специализированное программное обеспечение.
FTP-аутентификация использует схему имя пользователя/пароль для предоставления доступа. Имя пользователя посылается серверу командой USER, а пароль – командой PASS. Если предоставленная клиентом информация принята сервером, то сервер отправит клиенту приглашение и начинается сессия. Пользователи могут, если сервер поддерживает эту особенность, войти в систему без предоставления учётных данных, но сервер может предоставить только ограниченный доступ для таких сессий.
Хост, обеспечивающий FTP-сервис, может предоставить анонимный доступ к FTP. Пользователи обычно входят в систему как «anonymous» (может быть регистрозависимым на некоторых FTP-серверах) в качестве имени пользователя. Хотя обычно пользователей просят прислать адрес их электронной почты вместо пароля, никакой проверки фактически не производится. Многие FTP-хосты, предоставляющие обновления программного обеспечения, поддерживают анонимный доступ.
Схема протокола
Взаимодействие «клиент-сервер» при FTP-соединении можно наглядно представить следующим образом:
Безопасный FTP
FTP изначально не задумывался как защищенный, поскольку предназначался для связи между несколькими военными объектами и учреждениями. Но с развитием и распространением интернета опасность несанкционированного доступа возросла во много раз. Возникла необходимость защиты серверов от различного рода атак. В мае 1999 авторы RFC 2577 свели уязвимости в следующий список проблем:
Обычный FTP не обладает возможностью передачи данных в зашифрованном виде, вследствие чего имена пользователей, пароли, команды и другая информация могут при желании легко и просто быть перехвачены злоумышленниками. Обычное решение этой проблемы — использовать «безопасные», TLS-защищённые версии уязвимых протокола (FTPS) или же другой, более защищённый протокол, вроде SFTP/SCP, предоставляемого с большинством реализаций протокола Secure Shell.
FTPS (FTP + SSL) – расширение стандартного протокола передачи файлов, добавляющее в его базовый функционал создание шифрованных сессий с помощью протокола SSL (Secure Sockets Layer — уровень защищенных сокетов). На сегодняшний день защита обеспечивается его более продвинутым аналогом TLS (Transport Layer Security — защита транспортного уровня).
Протокол SSL предложен корпорацией Netscape Communications в 1996 году с целью обеспечения безопасности и секретности интернет-соединений. Протокол поддерживает аутентификацию (установление подлинности) клиента и сервера, не зависит от приложений и прозрачен для протоколов HTTP, FTP и Telnet.
Протокол SSL Handshake состоит из двух этапов: установление подлинности сервера и необязательное установление подлинности клиента. На первом этапе сервер в ответ на запрос клиента посылает свой сертификат и параметры шифрования. Затем клиент генерирует мастер-ключ, зашифровывает его открытым ключом сервера и отсылает серверу. Сервер расшифровывает мастер-ключ своим частным ключом и подтверждает свою подлинность клиенту, возвращая ему сообщение, заверенное мастером-ключом клиента.
Последующие данные шифруются и заверяются ключами, полученными на основе этого мастера-ключа. На втором этапе, который не является обязательным, сервер посылает запрос клиенту, а клиент подтверждает серверу свою подлинность, возвращая запрос с собственной цифровой подписью и сертификат открытого ключа.
SSL поддерживает разнообразные криптографические алгоритмы. В ходе установления связи используется криптосистема открытого ключа RSA. После обмена ключами используется много разных шифров: RC2, RC4, IDEA, DES и TripleDES. Также используется MD5 — алгоритм создания дайджеста сообщений. Синтаксис сертификатов открытого ключа описан в X.509.
Одним из немаловажных преимуществ SSL, является его полная программно-платформенная независимость. Протокол разработан на принципах переносимости, и идеология его построения, не зависит, от тех приложений, в составе которых он используется. Помимо этого, важно и то, что поверх протокола SSL, могут прозрачно накладываться и другие протоколы; либо для еще большего увеличения степени защиты целевых информационных потоков, либо, для адаптации криптографических способностей SSL под какую-нибудь другую, вполне определенную задачу.
SSL-подключение
Предоставляемый SSL безопасный канал обладает тремя основными свойствами:
Особенности FTPS
Существуют две реализации FTPS, использующие различные методы предоставления безопасности:
SFTP (Secure File Transfer Protocol) – протокол прикладного уровня передачи файлов, работающий поверх безопасного канала. Не следует путать с (Simple File Transfer Protocol), имеющим такую же аббревиатуру. Если FTPS является просто расширением FTP, то SFTP это отдельный и никак не связанный с ним протокол, который в качестве основы использует SSH (Secure Shell – безопасная оболочка).
Secure Shell
Разработкой протокола занималась одна из групп IETF под названием Secsh. Рабочая документация к новому протоколу SFTP не стала официальным стандартом, однако начала активно применяться для разработки приложений. В дальнейшем было выпущено шесть версий протокола. Однако, постепенное наращивание в нём функциональности привело к тому, что 14 августа 2006 года было принято решение о прекращении работы над развитием протокола в связи с выполнением основной задачи проекта (разработка SSH) и отсутствием достаточного экспертного уровня для перехода к разработке полноценного протокола удалённой файловой системы.
SSH – это сетевой протокол, позволяющий производить удалённое управление операционной системой и туннелирование TCP-соединений (например, для передачи файлов). Схож по функциональности с протоколами Telnet и rlogin, но, в отличие от них, шифрует весь трафик, включая и передаваемые пароли. SSH допускает выбор различных алгоритмов шифрования. SSH-клиенты и SSH-серверы доступны для большинства сетевых операционных систем.
SSH позволяет безопасно передавать в незащищённой среде практически любой другой сетевой протокол. Таким образом, можно не только удалённо работать на компьютере через командную оболочку, но и передавать по шифрованному каналу звуковой поток или видео (например, с веб-камеры). Также SSH может использовать сжатие передаваемых данных для последующего их шифрования, что удобно, например, для удалённого запуска клиентов X WindowSystem.
Первая версия протокола, SSH-1, была разработана в 1995 году исследователем Тату Улёненом из Технологического университета Хельсинки (Финляндия). SSH-1 был написан для обеспечения большей конфиденциальности, чем протоколы rlogin, telnet и rsh. В 1996 году была разработана более безопасная версия протокола, SSH-2, несовместимая с SSH-1. Протокол приобрел ещё большую популярность, и к 2000 году у него было около двух миллионов пользователей. В настоящее время под термином «SSH» обычно подразумевается именно SSH-2, т.к. первая версия протокола ввиду существенных недостатков сейчас практически не применяется. В 2006 году протокол был утвержден рабочей группой IETF в качестве Интернет-стандарта.
Распространены две реализации SSH: частная коммерческая и бесплатная свободная. Свободная реализация называется OpenSSH. К 2006 году 80 % компьютеров сети Интернет использовало именно OpenSSH. Частная реализация разрабатывается организацией SSH Communications Security, которая является стопроцентным подразделением корпорации Tectia, она бесплатна для некоммерческого использования. Эти реализации содержат практически одинаковый набор команд.
Протокол SSH-2, в отличие от протокола telnet, устойчив к атакам прослушивания трафика («снифинг»), но неустойчив к атакам «человек посередине». Протокол SSH-2 также устойчив к атакам путем присоединения посредине (англ. sessionhijacking), так как невозможно включиться в уже установленную сессию или перехватить её.
Для предотвращения атак «человек посередине» при подключении к хосту, ключ которого ещё не известен клиенту, клиентское ПО показывает пользователю «слепок ключа» (англ. keyfingerprint). Рекомендуется тщательно проверять показываемый клиентским ПО «слепок ключа» со слепком ключа сервера, желательно полученным по надёжным каналам связи или лично.
Поддержка SSH реализована во всех UNIX-подобных системах, и на большинстве из них в числе стандартных утилит присутствуют клиент и сервер ssh. Существует множество реализаций SSH-клиентов и для не-UNIX ОС. Большую популярность протокол получил после широкого развития анализаторов трафика и способов нарушения работы локальных сетей, как альтернативное небезопасному протоколу Telnet решение для управления важными узлами.
Связь с использованием SSH
Для работы по SSH нужен SSH-сервер и SSH-клиент. Сервер прослушивает соединения от клиентских машин и при установлении связи производит аутентификацию, после чего начинает обслуживание клиента. Клиент используется для входа на удалённую машину и выполнения команд.
Сравнение с FTPS
Главное, что отличает SFTP от стандартного FTP и FTPS, это то, что SFTP шифрует абсолютно все команды, имена пользователей, пароли и другую конфиденциальную информацию.
Оба протокола FTPS и SFTP используют сочетание асимметричных алгоритмов (RSA, DSA), симметричных алгоритмов (DES/3DES, AES, Twhofish т.д.), а также алгоритм обмена ключами. Для аутентификации FTPS (или, если быть более точным, SSL / TLS по протоколу FTP) использует сертификаты X.509, в то время как SFTP (SSH протокол) использует SSH ключи.
Сертификаты X.509 включает в себя открытый ключ и некоторую информацию о сертификате владельца. Эта информация позволяет, с другой стороны, проверить целостность самого сертификата, подлинность и владельца свидетельства. Сертификатов X.509 имеет соответствующий закрытый ключ, который обычно хранится отдельно от сертификата по соображениям безопасности.
SSH ключ содержит только открытый ключ (соответствующий закрытый ключ хранится отдельно). В нем не содержится никакой информации о владельце ключа. Некоторые SSH реализации используют сертификаты X.509 для аутентификации, но на самом деле они не проверяют всю цепочку сертификатов — только открытый ключ используется (что делает такую проверку подлинности неполной).
Заключение
Протокол FTP, несомненно, до сих пор играет важную роль в вопросе хранения и распространения информации в сети несмотря на свой почтенный возраст. Это удобный, многофункциональный и стандартизированный протокол. На его базе построено множество файловых архивов, без которых техническая работа была бы не столь эффективна. Кроме того, он лёгок в настройке, а программы-серверы и клиенты существуют практически для всех актуальных и не очень платформ.
В свою очередь его защищённые версии решают проблему конфиденциальности хранимых и передаваемых данных в современном мире. Оба новых протокола имеют свои плюсы и минусы и выполняют немного разные роли. В тех областях, где необходим именно файловый архив предпочтительнее использовать FTPS, особенно если раньше там уже использовался классический FTP. SFTP менее распространён в силу своей несовместимости со старым протоколом, но более защищён и имеет больший функционал, так как является частью системы удалённого управления.