Особенности работы протокола FTP. Несколько вопросов. FTP, внутренняя сеть и т.п. Настройка в случае использования NAT


2. Не работают FTP хостингов

В офисе подключены к ИС + спутник на входящем. В банке две сетевых + карта для спутника. Одна сетевая для ИС, одна на внутреннюю локалку.

1. Внутренняя сеть не работает.
2. Не работают FTP хостингов

Косяки маршрутов. Иначе говоря:

a) Твоя локалка внутренняя имеет адреса вида 192.168.х.х (скорее всего)
б) Спутниковый впн имеет адреса вида 192.168.х.х
в) ИС имеет адреса вида 192.168.х.х
г) имеются 2 шлюза по умолчанию во внешние сети: ИС и спутник

У маршрутизатора едет крыша, когда он пытается понять куда ты хочешь сходить.

В офисе подключены к ИС + спутник на входящем. В банке две сетевых + карта для спутника. Одна сетевая для ИС, одна на внутреннюю локалку.

1. Внутренняя сеть не работает.
2. Не работают FTP хостингов
ipconfig/all и netstat -r
мож че-нить придумаем =)

ipconfig/all и netstat -r
мож че-нить придумаем =)

Настройка протокола IP для Windows

Имя компьютера. . . . . . . . . : MISHA
Основной DNS-суффикс. . . . . . :
Тип узла. . . . . . . . . . . . . : одноранговый
IP-маршрутизация включена. . . . : да
WINS-прокси включен. . . . . . . : нет
Порядок просмотра суффиксов DNS . : chelcom.ru

офис - Ethernet адаптер:


Описание. . . . . . . . . . . . : Realtek RTL8139 Family PCI Fast Ethe
rnet NIC
Физический адрес. . . . . . . . . : 00-40-F4-C1-BB-D4
IP-адрес. . . . . . . . . . . . : 192.168.0.1
Маска подсети. . . . . . . . . . : 255.255.255.0
Основной шлюз. . . . . . . . . . :

sat - Ethernet адаптер:

DNS-суффикс этого подключения. . :
Описание. . . . . . . . . . . . : TechniSat DVB-PC TV Star PCI
Физический адрес. . . . . . . . . : 00-D0-D7-13-2D-EF
Автонастройка включена. . . . . : нет
IP-адрес. . . . . . . . . . . . : 192.168.45.1
IP-адрес. . . . . . . . . . . . : 81.169.230.150
Маска подсети. . . . . . . . . . : 255.255.255.252
Основной шлюз. . . . . . . . . . : 81.169.230.149
DHCP-сервер. . . . . . . . . . . : 81.169.230.149
Аренда получена. . . . . . . . . : 16 апреля 2007 г. 16:56:54
Аренда истекает. . . . . . . . . : 19 апреля 2007 г. 16:56:54

интерсвязь - Ethernet адаптер:

DNS-суффикс этого подключения. . : chelcom.ru
Описание. . . . . . . . . . . . : NVIDIA nForce Networking Controller
Физический адрес. . . . . . . . . : 0******1-A9-0D-57
Dhcp включен. . . . . . . . . . . : да
Автонастройка включена. . . . . : да
IP-адрес. . . . . . . . . . . . : 192.168.56.201
Маска подсети. . . . . . . . . . : 255.255.252.0
Основной шлюз. . . . . . . . . . : 192.168.56.1
DHCP-сервер. . . . . . . . . . . : 192.168.56.1
83.142.161.19
Аренда получена. . . . . . . . . : 16 апреля 2007 г. 17:54:34
Аренда истекает. . . . . . . . . : 16 апреля 2007 г. 19:04:26

ИС инет - PPP адаптер:

DNS-суффикс этого подключения. . :
Описание. . . . . . . . . . . . : WAN (PPP/SLIP) Interface
Физический адрес. . . . . . . . . : 0******0
Dhcp включен. . . . . . . . . . . : нет
IP-адрес. . . . . . . . . . . . : 80.255.91.191
Маска подсети. . . . . . . . . . : 255.255.255.255
Основной шлюз. . . . . . . . . . : 80.255.91.191
DNS-серверы. . . . . . . . . . . : 83.142.161.17
83.142.161.19
NetBIOS через TCP/IP. . . . . . . : отключен

ipconfig/all и netstat -r
мож че-нить придумаем =)

C:\Documents and Settings\ъъъх>netstat -r

Таблица маршрутов

Список интерфейсов
0x1 ........................... MS TCP Loopback interface
0x2 ...00 40 f4 c1 bb d4 ...... Realtek RTL8139 Family PCI Fast Ethernet NIC - ╠
шэшяюЁЄ яырэшЁют∙шър яръхЄют
0x3 ...00 d0 d7 13 2d ef ...... TechniSat DVB-PC TV Star PCI - ╠шэшяюЁЄ яырэшЁют
∙шър яръхЄют
0x4 ...0******1 a9 0d 57 ...... NVIDIA nForce Networking Controller - ╠шэшяюЁЄ я
ырэшЁют∙шър яръхЄют
0x40006 ...0******0 ...... WAN (PPP/SLIP) Interface
============================== ============================== ===============
============================== ============================== ===============
Активные маршруты:
Сетевой адрес Маска сети Адрес шлюза Интерфейс Метрика
0.0.0.0 0.0.0.0 80.255.91.191 80.255.91.191 2
0.0.0.0 0.0.0.0 81.169.230.149 81.169.230.150 1
0.0.0.0 0.0.0.0 192.168.56.1 192.168.56.201 22
62.153.159.134 255.255.255.255 80.255.91.191 80.255.91.191 1
64.236.167.41 255.255.255.255 80.255.91.191 80.255.91.191 1
80.255.91.191 255.255.255.255 127.0.0.1 127.0.0.1 50
80.255.255.255 255.255.255.255 80.255.91.191 80.255.91.191 50
81.169.147.10 255.255.255.255 80.255.91.191 80.255.91.191 1
81.169.147.16 255.255.255.255 80.255.91.191 80.255.91.191 1
81.169.147.25 255.255.255.255 80.255.91.191 80.255.91.191 1
81.169.147.27 255.255.255.255 80.255.91.191 80.255.91.191 1
81.169.147.32 255.255.255.255 80.255.91.191 80.255.91.191 1
81.169.147.43 255.255.255.255 80.255.91.191 80.255.91.191 1
81.169.230.148 255.255.255.252 81.169.230.150 81.169.230.150 20
81.169.230.150 255.255.255.255 127.0.0.1 127.0.0.1 20
81.255.255.255 255.255.255.255 81.169.230.150 81.169.230.150 20
83.142.160.155 255.255.255.255 192.168.56.1 192.168.56.201 1
83.142.161.9 255.255.255.255 192.168.56.1 192.168.56.201 1
83.142.161.17 255.255.255.255 80.255.91.191 80.255.91.191 1
83.142.161.19 255.255.255.255 80.255.91.191 80.255.91.191 1
83.142.161.20 255.255.255.255 192.168.56.1 192.168.56.201 1
83.142.161.29 255.255.255.255 192.168.56.1 192.168.56.201 1
83.142.161.35 255.255.255.255 192.168.56.21 192.168.56.201 1
83.142.161.40 255.255.255.255 192.168.56.1 192.168.56.201 20
83.142.161.44 255.255.255.255 192.168.56.1 192.168.56.201 1
83.142.161.50 255.255.255.255 192.168.56.1 192.168.56.201 1
83.142.161.62 255.255.255.255 192.168.56.1 192.168.56.201 1
83.142.161.68 255.255.255.255 192.168.56.1 192.168.56.201 1
83.142.161.224 255.255.255.255 192.168.56.1 192.168.56.201 1
83.142.161.226 255.255.255.255 192.168.56.1 192.168.56.201 1
83.142.161.241 255.255.255.255 192.168.56.1 192.168.56.201 1
83.142.161.242 255.255.255.255 192.168.56.1 192.168.56.201 1
83.142.162.174 255.255.255.255 192.168.56.1 192.168.56.201 1
83.142.163.114 255.255.255.255 192.168.56.1 192.168.56.201 1
83.142.163.122 255.255.255.255 192.168.56.1 192.168.56.201 1
83.142.163.158 255.255.255.255 192.168.56.1 192.168.56.201 1
83.142.163.178 255.255.255.255 192.168.56.1 192.168.56.201 1
83.142.163.194 255.255.255.255 192.168.56.1 192.168.56.201 1
83.142.163.202 255.255.255.255 192.168.56.1 192.168.56.201 1
83.142.163.246 255.255.255.255 192.168.56.1 192.168.56.201 1
83.142.163.254 255.255.255.255 192.168.56.1 192.168.56.201 1
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1

192.168.0.1 255.255.255.255 127.0.0.1 127.0.0.1 30
192.168.0.255 255.255.255.255 192.168.0.1 192.168.0.1 30
192.168.45.0 255.255.255.252 192.168.45.1 81.169.230.150 20
192.168.45.1 255.255.255.255 127.0.0.1 127.0.0.1 20
192.168.45.255 255.255.255.255 81.169.230.150 81.169.230.150 20
192.168.56.0 255.255.252.0 192.168.56.201 192.168.56.201 20
192.168.56.201 255.255.255.255 127.0.0.1 127.0.0.1 20
192.168.56.255 255.255.255.255 192.168.56.201 192.168.56.201 20
194.25.134.24 255.255.255.255 80.255.91.191 80.255.91.191 1
194.25.134.25 255.255.255.255 80.255.91.191 80.255.91.191 1
194.25.134.26 255.255.255.255 80.255.91.191 80.255.91.191 1
194.25.134.27 255.255.255.255 80.255.91.191 80.255.91.191 1
194.25.134.32 255.255.255.255 80.255.91.191 80.255.91.191 1
194.25.134.33 255.255.255.255 80.255.91.191 80.255.91.191 1
194.25.134.88 255.255.255.255 80.255.91.191 80.255.91.191 1
194.25.134.89 255.255.255.255 80.255.91.191 80.255.91.191 1
194.25.134.90 255.255.255.255 80.255.91.191 80.255.91.191 1
194.25.134.91 255.255.255.255 80.255.91.191 80.255.91.191 1
194.25.134.96 255.255.255.255 80.255.91.191 80.255.91.191 1
194.25.134.97 255.255.255.255 80.255.91.191 80.255.91.191 1
224.0.0.0 240.0.0.0 81.169.230.150 81.169.230.150 20
224.0.0.0 240.0.0.0 192.168.0.1 192.168.0.1 30
224.0.0.0 240.0.0.0 192.168.56.201 192.168.56.201 20
224.0.0.0 240.0.0.0 80.255.91.191 80.255.91.191 1
255.255.255.255 255.255.255.255 80.255.91.191 80.255.91.191 1
255.255.255.255 255.255.255.255 81.169.230.150 81.169.230.150 1
255.255.255.255 255.255.255.255 192.168.0.1 192.168.0.1 1
255.255.255.255 255.255.255.255 192.168.56.201 192.168.56.201 1
Основной шлюз: 81.169.230.149

Хмм локалка вообще не работает? Пинги проходят между серваком и внутренними машинами? Если не проходят то что дает трейс ипов внутренних тачек с сервака? С маршрутизацией вроде косяков не наблюдаю, маршрут
192.168.0.0 255.255.255.0 192.168.0.1 192.168.0.1 30

192.168.0.0 255.255.0.0 192.168.56.1 192.168.56.201 1

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

Хмм локалка вообще не работает? Пинги проходят между серваком и внутренними машинами? Если не проходят то что дает трейс ипов внутренних тачек с сервака? С маршрутизацией вроде косяков не наблюдаю, маршрут
192.168.0.0 255.255.255.0 192.168.0.1 192.168.0.1 30
имеется, он должен по идее быть главнее роута
192.168.0.0 255.255.0.0 192.168.56.1 192.168.56.201 1
Ибо маска больше и в твою локалку он должен ломиться через внутреннюю сетевую.

Уточни про фтп, че за хостинги? Какие у них ip? Как у тебя вообще организован выход в инет, через прокси спутника? Попробуй на фтп ломиться в пассивном режиме. (192.168.97.253) > logged in anonymously with login/pass: anonymous/IEUser@
(0******1) 18.04.2******7:09:37 - anonymous (192.168.97.253) > 230 User Anonymous logged in.
(0******1) 18.04.2******7:09:37 - anonymous (192.168.97.253) > OPTS utf8 on
(0******1) 18.04.2******7:09:37 - anonymous (192.168.97.253) > 500 Unknown command.
(0******1) 18.04.2******7:09:37 - anonymous (192.168.97.253) > PWD
(0******1) 18.04.2******7:09:37 - anonymous (192.168.97.253) > 257 "/" is current directory.
(0******1) 18.04.2******7:09:37 - anonymous (192.168.97.253) > CWD /
(0******1) 18.04.2******7:09:37 - anonymous (192.168.97.253) > asked to change directory: "L:\Films\ -> L:\Films\" --> Access allowed.
(0******1) 18.04.2******7:09:37 - anonymous (192.168.97.253) > 250 CWD command successful. "/" is current directory.
(0******1) 18.04.2******7:09:37 - anonymous (192.168.97.253) > TYPE A
(0******1) 18.04.2******7:09:37 - anonymous (192.168.97.253) > 200 Type set to A.
(0******1) 18.04.2******7:09:37 - anonymous (192.168.97.253) > PASV
(0******1) 18.04.2******7:09:37 - anonymous (192.168.97.253) > 227 Entering Passive Mode (192,168,0,2,4,6)
(0******1) 18.04.2******7:09:37 - anonymous (192.168.97.253) > 530 PASV command only accepts connection from client IP address (192.168.97.253!=error).
(0******1) 18.04.2******7:09:37 - anonymous (192.168.97.253) > LIST
(0******1) 18.04.2******7:09:37 - anonymous (192.168.97.253) > 550 List failed. No port specified.

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

SFTP

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

Особенности стандарта FTP

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

Особенности активного режима

Во время активного режима клиент инициирует управляющее соединение с серверным портом 21, передавая команду «port», при помощи которой указывается адрес и порт трансфера информации. После получения этой команды сервер запускает соединение собственного 20-го порта с указанным портом пользователя.
Основным недостатком данного метода является обязательное наличие у пользователя для работы выделенного IP-адреса в интернете. Кроме того, некоторые проблемы могут возникнуть, если клиент находится за брандмауэром либо NAT.

Особенности пассивного режима

Для того, чтобы установить пассивное соединение, пользователь должен передать серверу специальную команду «pasv». В качестве ответа на эту команду сервер передает информацию об адресе и порте, с которым клиент должен установить соединение. После получения этих данных, пользователь осуществляет подключение к серверному компьютеру и проводит передачу информации.
При использовании пассивного режима абсолютно все соединения инициируются клиентом, в связи с чем какие-либо требования к нему отсутствуют. Пользователю допускается пользоваться NAT и брандмауэром, а также не использовать выделенный IP-адрес. Поэтому сегодня в качестве основной разновидности доступа и передачи файлов по протоколу FTP в интернете используется именно пассивный режим.

Настройка в случае использования брандмауэра

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

Настройка в случае использования NAT

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

Один из старейших сетевых протоколов — это FTP. Для чего он предназначен, какова его роль в сетевом «общении» компьютеров, как работает данный протокол и стоит ли его использовать — ответы на все эти вопросы вы найдете в статье ниже.

В чем суть технологии FTP

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

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

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

Какое предназначение протокола FTP

Предназначен FTP протокол для передачи данных между клиентом и сервером. Он так и называется — «протокол передачи данных». Поскольку им пользуются уже очень давно, FTP вошел в число стандартов сети Intetnet. Впервые протокол был использован еще в 1971 году. За время существования он сильно изменился. Некоторые функции убрали, и сделали упор на том, что FTP хорошо подходит для обмена данными между удаленными компьютерами. Со временем его сделали более удобным для обычных пользователей. Ведь зайти в FTP-сервер можно как при помощи специальной программы, так и используя стандартные службы операционных систем. К примеру, вы даже сможете подключиться к серверу FTP при помощи стандартного проводника Windows.

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

Некоторые путают FTP и TCP. Хотя эти понятия невозможно сравнивать. FTP является протоколом, а TCP — это канал, по которому он работает. А устанавливается этот канал между устройством-сервером и устройством-клиентом. «Устройством», а не компьютером, потому что FTP можно использовать и на смартфонах при помощи специальных программ, не только на ПК.

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

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

Как работает FTP протокол

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

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

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

А вот в чем заключается общий алгоритм работы для любого протокола FTP на сервере:

  1. Сервер всегда находится в некотором состоянии ожидания со стороны пользователя. В любой момент клиент может подключиться к серверу, потому управляющий канал держит открытым 21-й порт. Именно по нему переходят все управляющие команды. Порт 21 установлен по умолчанию, но его могут изменить. Тогда пользователю придется вводить номер порта вручную, иначе он не сможет выйти на управляющий канал.
  2. После соединения через порт канала управления, программа со стороны клиента может отдавать команды интерпретатору сервера. Эти команды определяют как изменения внутри файловой системы сервера, так и способ передачи данных, их содержание, объем, тип режима работы и многое другое.
  3. После того, как все команды для передачи данных согласованы, один из участников соединения становится в пассивный режим ожидания (сервер или клиент). Он ждет, пока ему выдадут номер порта, чтобы открыть его и получить или отправить данные по нему.
  4. После окончания процесса передачи данных соединение закрывается, но управляющий канал по-прежнему остается открытым. Это позволяет пользователю все проделать снова: дать команду серверу и вновь начать передачу данных. При этом не нужно заново создавать сессию. Потому-то FTP и работает при помощи двух типов соединения.

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

Главное, что нужно понять в работе FTP протокола — это взаимодействие соединений и портов. Большинство ошибок во время работы по этому протоколу связаны с тем, что одна из сторон соединения не настроила свой порт. Есть пассивная и активная сторона протокола. Пассивная должна внимательно слушать и дожидаться, пока активная не передаст номер порта, который тут же нужно открыть. Если порт не будет открыт, передача данных не начнется.

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

Какие команды использует FTP протокол

Скорее всего, вам они в работе не понадобятся, поскольку вы будете использовать юзер-агент в виде программы с удобным интерфейсом. Одна из таких программ — это FileZIlla. Но всякое бывает. Возможно, у вас под рукой будет только Far Maneger, где все необходимо делать через терминал. В таком случае вы должны познакомиться с основными командами для FTP.

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

Одна из самых популярных функций, при помощи которой вы сможете «путешествовать» по серверу — это CWD. Команда нужна для того, чтобы вы могли перемещаться между директориями сервера. Чтобы воспользоваться командой, введите CWD и путь каталога, в который вы хотите попасть.

Если в каком-то случае вам необходимо провести реинициализацию, то есть опустить все данные и настройки текущего соединения, то используйте команду REIN. Во время ее использования передача данных не прекращается, и параметры передачи остаются прежними, какими были до команды REIN. Либо можете сделать это еще более радикальным способом — закрыть управляющее соединение при помощи команды QUIT. Она также не прерывает передачу данных, и только после окончания загрузки сессия полностью прерывается.

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

Команды RETR и STOR вы будете использовать для того, чтобы передавать данные с сервера и на сервер. Первая команда нужна для того, чтобы отправить выделенный файл на устройство клиента, а вторая — на сервер. А чтобы переименовать файл, вам нужно использовать две последовательные команды. Сначала пропишите RNFR со старым именем файла, а затем RNTO, указав новое имя файла. Также вам понадобится команда DELE, которая нужна для удаления данных с файловой системы, точнее того файла, который выделен в текущий момент.

Для удаления каталогов используются другие команды. Чтобы удалить выделенный каталог, вам понадобится команда RMD. А чтобы создать новую папку, используйте строку MKD. Также пользователям часто нужна функция просмотра файлов, которые имеются в каталоге. Для этого используйте команду LIST, либо NLST.

Какие есть аналоги у FTP

У протокола передачи данных FTP есть его прямые «наследники», то есть протоколы, которые образованы из ФТП. Это два протокола: TFTP и SFTP. Первый протокол не самый популярный, потому как сильно ограничен в плане команд. Он гораздо хуже подходит для управления файловой системой сервера, чем FTP. Вы не сможете даже просмотреть список файлов каталога при помощи него. Нужен TFTP только для передачи простейшей 8-битной информации, не более. И в этом протоколе есть всего 5 команд, которые нужны для чтения, записи, запроса пакета данных и других простых операций.

А вот протокол SFTP куда более удачный, чем TFTP и в некоторых случаях — чем FTP. Дело в том, что это защищенный FTP протокол. Он является комбинацией шифрованного SSH соединения и протокола передачи данных FTP. Кроме того, в SFTP многие лишние функции исключены, которые были введены в FTP уже давно, но никем не используются. Потому SFTP и безопаснее, чем FTP, и при этом скромнее в хорошем смысле этого слова. Рекомендуется выбирать именно SFTP в тех случаях, когда вы работаете с какими-то конфиденциальными данными. Тогда даже если хакеры и перехватят отправляемые данные по управляющему соединению, они все равно будут зашифрованными и никакой ценности взломщикам не принесут.

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

FTP — File Transfer Protocol. Главное назначение FTP — это пересылать (копировать, передавать) файлы. FTP можно использовать самостоятельно, а также через другие системы, например, WWW имеет FTP как часть своего протокола.

FTP серверы разбросаны по всему миру, но для соединения с ними не требуется знания их физического расположения. В Internet к компьютеру обращаются по адресу. Например, FTP сервер фирмы Borland имеет адрес ftp.borland.com

Итак, предположим, что Вам известен адрес нужного FTP сервера. Теперь неплохо было бы соединиться с ним. Это делается с помощью специальной программы, которая называется FTP клиент. Раньше, когда выход в Internet имели только UNIX-компьютеры, все FTP клиенты были одинаковы: командная строчка со стандартным набором команд и все. Сейчас же, во времена оконных систем, появилось много программ, при использовании которых не требуется запоминать синтаксис команд, а файлы просто-напросто перетаскиваются мышкой. Однако и в их основе лежит стандартная система команд FTP. На каждое действие мышью FTP клиент генерирует последовательность FTP-команд.

Сервис FTP (File Transfer Protocol) позволяет пользователям одной машины получать доступ к файловой системе другой и получать (передавать) файл с машины на машину. FTP является внутренним протоколом передачи файлов операционной системы UNIX.

FTP является интерфейсом пользователя, реализующий ARPANET стандартный (IP) протокол передачи файлов. Эта программа позволяет пользователю передавать файлы между двумя компьютерами, связанными между собой локальной или глобальной сетью. При этом компьютерные платформы могут быть различных типов, что составляет главную особенность сервиса FTP в Internet.

Существует два способа организации доступа к файловой системе удаленного компьютера (системы) по протоколу FTP: авторизованный и анонимный.

Авторизованный доступ. На конкретной удаленной системе использовать авторизованный доступ имеют право только пользователи этой удаленной системы, после подтверждения своего пользовательского имени (login или user name) и пароля (password), то есть после входа в систему. После входа в систему пользователь, как правило, получает доступ к своему домашнему каталогу и ко всем другим файловым ресурсам удаленной системы, к которым он имеет права на доступ.

Анонимный доступ FTP является весьма новой службой Интернет, возникшей в конце 80-х годов. Такой доступ обеспечивается под видом специально выделенного пользователя (которого чаще всего зовут «anonymous» и который имеет пароль, совпадающий с адресом электронной почты). При входе в систему с правами «anonymous» получаете доступ к специально выделенному для этих пользователей каталогом (как правило, только на чтение), который называется FTP-сервером. Сообщать серверу в качестве пароля адрес своей электронной почты не является обязательным, считается правилом «хорошего тона» в поведении пользователя.

С момента организации анонимного FTP доступа на многих машинах в сети Internet созданы такого типа каталоги (анонимного FTP сервера), которые накопили огромные коллекции (терабайты информации) архивов программных средств, всевозможной документации, художественной литературы, компьютерных фильмов, музыки и дp. Как правило, эта служба на большинстве FTP серверах работает бесплатно, хотя существуют сервера (например, в сети RELCOM), которые предоставляют информацию только своим пользователем.

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

Доступ к FTP серверу, в большинстве операционных систем, как правило, организован через вызов специальной утилиты ftp. Хотя существуют различные программные оболочки, как под UNIX (например, ncftp2), так и под MS Windows (например, Norton Navigator), реализующие протокол FTP и облегчающие работу с этой службой Интернет.

Таким образом, если вы имеете IP-соединение и выход в глобальный Интернет, то вызвав утилиту ftp, набрав соответствующий адрес (или имя FTP-сервера), назвавшись «anonymous» и послав в качестве пароля свой E-mail адрес вы получите доступ к выбранному вами файловому архиву.

Например:

>ftp ftp.ict.nsc.ru

ftp>login: anonymous

ftp>passwd: ваш@email.адрес

Анонимный доступ к FTP серверу можно получить также, используя программу просмоторщик WWW страниц (MS Internet Explorer или Netscape Navigator). К тому же большинство FTP серверов позволяют получать файлы и по электронной почте.

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

Простейшая модель работы протокола FTP представлена на рисунке 1. В FTP соединение инициируется интерпретатором протокола пользователя. Управление обменом осуществляется по каналу управления в стандарте протокола TELNET. Команды FTP генерируются интерпретатором протокола пользователя и передаются на сервер. Ответы сервера отправляются пользователю также по каналу управления. В общем случае пользователь имеет возможность установить контакт с интерпретатором протокола сервера и отличными от интерпретатора протокола пользователя средствами.


Рис.1.Модель работы протокола FTP

FTP (File Transfer Protocol — протокол передачи файлов) —

протокол семейства TCP/IP, обеспечивающий возможность найти, получить и переслать нужные файлы через Internet с одного компьютера на другой.

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

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

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

Алгоритм работы протокола FTP состоит в следующем:

Сервер FTP использует в качестве управляющего соединение на TCP порт 21, который всегда находится в состоянии ожидания соединения со стороны пользователя FTP.

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

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

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

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

Основу передачи данных FTP составляет механизм установления соединения между соответствующими портами и выбора параметров передачи. Каждый участник FTP-соединения должен поддерживать порт передачи данных по умолчанию. По умолчанию «Программа передачи данных пользователя» использует тот же порт, что и для передачи команд (обозначим его «U»), а «Программа передачи данных сервера» использует порт L-1, где «L»- управляющий порт. Однако участниками соединения используются порты передачи данных, выбранные для них «Интерпретатором протокола пользователя», поскольку из управляющих процессов участвующих в соединении, только «Интерпретатор протокола пользователя» может изменить порты передачи данных как у «Программы передачи данных пользователя», так и у «Программы передачи данных сервера».

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

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

Как правило, сервер FTP ответственен за открытие и закрытие канала передачи данных. Сервер FTP должен самостоятельно закрыть канал передачи данных в следующих случаях:

Сервер закончил передачу данных в формате, который требует закрытия соединения.

Сервер получил от пользователя команду «прервать соединение».

Пользователь изменил параметры порта передачи данных.

Было закрыто управляющее соединение.

Возникли ошибки, при которых невозможно возобновить передачу данных.

Общие недостатки:

– невысокая надежность соединения на плохих линиях;

– встречающиеся проблемы при обрыве соединения со включенным proxy;

– невысокая скорость работы из-за закрытия соединения после пересылки;

– недоступность файлов через ftp, адресуемых через протокол http (хотя это и не недостаток самого http, это его особенность.)

– требуется установка FTP-клиента;

– после закачки необходимо проверить ключевые слова и отправить снимки на проверку через Web-интерефейс

Недостатки FTP-серверов:

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

FTP серверы достаточно неустойчивы к DoS атакам.

Одной из проблем FTP-серверов является отсутствие проверки подлинности источника пакетов. Суть в следующем: при установке соединения сервер прослушивает один из TCP портов, сообщает его номер клиенту, после чего клиент открывает указанный порт и начинает передачу данных. Это так называемый пассивный режим. При активном режиме TCP порт назначает клиент, а сервер открывает соединение с порта 20 на порт, назначенный клиентом. Поскольку в процессе сеанса подлинность абонента не проверяется, то возможна атака следующего вида: на открытый порт периодически посылаются запросы на TCP соединение. Как только соединение установлено, происходит подмена клиента. Уязвимость к данной атаке демонстрируют все ftpd — серверы.

Недостатки FTP-клиентов:

Основные недостатки FTP с точки зрения клиента — возможность перехвата данных, недостаточная стандартизованность и плохая совместимость с брандмауэрами. Это само по себе уже достаточный повод избегать использования FTP везде, где можно.

FTP-архивы являются одними из основных информационных ресурсов Internet. Фактически, это распределенный депозитарий текстов, программ, фотографий и прочей информации, хранящейся в виде файлов на различных компьютерах во всем мире.

Информация в FTP-архивах разделена, в основном, на три категории:

Защищенная информация, режим доступа к которой определяется ее владельцами и разрешается по специальному соглашению с потребителем. К этому виду ресурсов относятся коммерческие архивы (к примеру, коммерческие версии программ в архивах ftp.microsoft.com), закрытые национальные и международные некоммерческие ресурсы (например, работы по международным проектам CES или IAEA), частная некоммерческая информация со специальными режимами доступа (например, частные благотворительные фонды).

Информационные ресурсы ограниченного использования, к которым относятся, например, программы класса shareware. В данный класс могут входить ресурсы ограниченного времени использования или ограниченного времени действия.

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

Технология FTP была разработана в рамках проекта ARPA и предназначена для обмена большими объемами информации между машинами с различной архитектурой. Главным в проекте было обеспечение надежной передачи, поэтому с современной точки зрения FTP кажется перегруженным излишними редко используемыми возможностями. Стержень технологии составляет FTP-протокол.

FTP-архив можно использовать и в качестве архива коммерческого программного обеспечения, которое используется в компании, только в этом случае такой архив не должен разрешать анонимного доступа к хранящимся в нем ресурсам.

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

В настоящее время всю систему взаимодействия компонентов FTP-обмена можно представить в виде схемы представленной на рисунке 2.

На этой схеме показано два важных технологических момента: во-первых, доступ к архиву можно осуществлять не только из специализированной программы-клиента, но и из универсального броузера, например Netscape Communicator или Microsoft Internet Explorer, а во-вторых, для поиска информации в FTP-архивах можно воспользоваться программой Archie.

При этом следует четко понимать, что Archie и FTP — это совершенно разные технологии. В большинстве случаев доступ к Archie-серверу пользователи осуществляют из Archie-клиента, который находится на той же машине, что и сервер, т.е. сначала пользователь по Telnet заходит как пользователь Archie, а потом использует программу-клиент (обычно она запускается в качестве оболочки) для доступа к Archie серверу.


Рис.2. Схема взаимодействия компонентов FTP-обмена

FTP site (ftp-страница) —

компьютер в сети Internet, на котором ведется файловый архив, доступный для удаленных пользователей.

FTP-сервер —

программа, работающая на таком компьютере и обеспечивающая обработку запросов к архиву.

anonymous FTP server —

FTP-сервер, допускающий использование своего файлового архива без паролей доступа.

FTP-клиенты —

программы, используемые для доступа к архивам on-line.

ля соединение с удаленной FTP-site в ответ на системное приглашение (>) введите:

> ftp |

или

> ftp

ftp> open |

где — адрес, доменное имя удаленной FTP-site, например:

> ftp

ftp> open ftp.ict.ncs.ru

Если удаленная FTP-site не отвергла посланный запрос на соединение, например, по причине перегруженности, она запросит входное имя (login). Как правило, можно ввести ftp или anonymous. Если дополнительно запрашивается пароль (Passwd), обычно нужно ввести свой адрес в Сети (таким образом, термин anonymous не понимается в буквальном смысле, так как для подключения к серверу может быть проведена проверка указанного и реального обратного адреса, а те, у кого anonymous ошибочно ассоциируется с анонимностью, могут всегда пользоваться вместо anonymous именем ftp). Если на данной FTP-site нет запрета доступа для сторонних абонентов, можно обратиться к его архиву.

Основные команды FTP следующие.

Некоторые FTP команды могут отличаться в зависимости от типа компьютерной платформы и используемой операционной системы, но в целом это обычные UNIX команды. Вы всегда можете проверить их список набрав ‘help’ или ‘?’. Кроме того, если вы работаете в UNIX системе, то, как правило, справочная информация о FTP доступна по команде man — наберите ‘man ftp’ или ‘man ftpd’. В manual pages OS UNIX содержатся исчерпывающие данные о командах, и об их синтаксисе.

open —

устанавливает связь с FTP-site. Эта команда нужна, если при вызове программы ftp связь с требуемой FTP-site не была установлена, например, из-за ошибки в названии удаленной машины. Она применяется также при обращении к разным FTP-site во время сеанса работы с ftp. При этом нужно сначала закрыть связь с одной ftp-площадкой с помощью команды close, а затем вызвать другую машину.

Пример:

ftp> open ftp.ict.nsc.ru

user —

позволяет повторно ввести входное имя и пароль. Полезна, скажем, если удаленная машина не допускает пользователей с именем ftp, но может допустить с именем anonymous.

Пример:

ftp> user anonymous

close —

закрывает связь с данной FTP-site

bye или quit.

Закрывает все связи и прекращает выполнение программы ftp.

help или? —

запрашивает помощь по командам ftp, поддерживаемых на вашей локальной машине. Может иметь параметр — имя интересующей команды. Если параметр не задан, выводит список команд ftp, аналогичный данному описанию, на английском языке.

remotehelp —

запрашивает справку, какие команды ftp поддерживает удаленный FTP сервер.

! [команда[аргументы]]

Выход в shell — интерпретатор на вашей локальной системе.

Как правило, удаленный FTP-сервер размещают на компьютере, работающим под какой-либо разновидность ОС Unix. Файловая система Unix по сравнению с MS DOS имеет некоторые особенности. Хотя она организована иерархически, подобно MS-DOS, имена каталогов в ней разделяются символом «/», а не «\». Корневой каталог обозначается просто как «/» (в том числе и корневой каталог FTP сервера).

Имя файла может иметь произвольную (Unix этих ограничений на формат имени файла и, более того, у файла может быть несколько префиксов (расширений), начинающихся с точки, например, file.my.love. И самое главное, в отличие от MS DOS и MS Windows, строчные и прописные буквы в именах файлов считаются различными.

Установив соединение с файловой системой удаленного компьютера, ориентироваться и перемещаться в ней можно, используя стандартные команды с параметрами (ключами) или без параметров операционной системы Unix:

pwd —

Определить текущий каталог на удаленном компьютере.

ls —

Просмотреть краткий список файлов и подкаталогов. В качестве параметра можно задать имя интересующего вас каталога или способ выдачи информации о файлах из каталогов. Если параметр каталога не задан, подразумевается текущий каталог. Команда ls с ключом -l дает более подробную информацию, включая размер файлов, их принадлежность и дату создания. У команды ls очень много ключей, но используются довольно часто ключи -l (или -al — выдать полную информацию о файлах).

dir —

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

mls —

Поместить краткий список файлов и подкаталогов каталога на удаленной машине в файл на локальном устройстве.

mdir —

Поместить детальный список файлов и подкаталогов каталога на удаленной машине в файл на локальном компьютере.

mkdir —

ftp>mkdir [имя_каталога]

Создать каталог на удаленной машине.

cd —

Перейти в другой каталог на удаленном компьютере.

lcd —

Перейти в другой каталог на локальном компьютере.

Примеры:

ftp> lcd /pub/doc

ftp> dir internet/example

ftp> mdir /doc/ftp/news_ftp.txt

Установка режимов передачи файлов (все команды без параметров)

ascii —

Устанавливает текстовый режим передачи файлов.

binary или bin —

Устанавливает бинарный режим, необходимый например, для передачи исполняемых файлов.

verbose —

Включает/выключает вывод протокольных и статусных сообщений удаленной машины.

prompt —

Включает/выключает запросы на переход к передаче очередного файла в макрокомандах типа mget *.

Команды передачи файлов

При работе с файлами вы можете, либо указать его полное имя в текущем каталоге (или вместе с путем от корня или от текущего каталога), либо использовать групповую операцию UNIX’а (маску). При задании маски используются правила, принятые в OS UNIX: символ «*» обозначает любое количество символов, стоящих на его месте; символ «?» обозначает один символ, стоящий на его месте.

get или recv —

ftp>get [удаленный_файл] [локальный_файл]

Получить файл с удаленного компьютера. В качестве обязательного параметра требуется указать имя этого файла на удаленной машине. Допускает второй параметр — новое имя файла на локальном компьютере.

Пример:

ftp> get /pub/winsite/news/win.zip

mget —

ftp>mget [список удаленных_файлов]

Получить несколько файлов по списку или в соответствии с маской. Пример. Получить файл news.txt и все файлы с расширением tex:

ftp> mget news.txt *.tex

put или s —

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

Пример:

ftp> put myfile newmyfile.

mput —

Переслать несколько файлов по списку или маске. Пример. Переслать файл myfile.txt и все файлы с расширением doc:

ftp> mput myfile.txt *.doc

delete [имя_файла] —

Стереть файл на удаленной машине (требует авторизованного доступа).

Поиск в архивах FTP

Archie . Первые сайты начали появляться в 1993 году, в большинстве это были сайты университетов, но задолго до того как появились они, появился «Арчи», так назывался первый созданный поисковик. Он появился в 1990 году, благодаря Алану Эмтагу, студенту университета МакГила в Монреале. Вначале проект хотели назвать «Архивы», но потом сократили до Арчи.

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

В настоящее время доступ по FTP-протоколу осуществляется из множества мультипротокольных интерфейсов (например, Mosaic или Netscape) или графических ftp-оболочек типа ftptool для X-Window. Все они гораздо удобнее и проще в использовании, но и потребляют гораздо больше ресурсов.

Любопытно, что FTP-сервер есть даже для MS-DOS (пакет NCSA Telbin), не говоря о многозадачных средах. Однако поиск нужного FTP-сервера в Internet — задача сложная и трудоемкая. Для ее облегчения существует специальное средство — Archie. Archie был разработан в Университете McGill в Канаде. Задача Archie — сканировать FTP-архивы на предмет наличия в них требуемых файлов. Работать с Archie можно через telnet-сессию, через локального клиента или по электронной почте.

WAIS (Wide Area Information Server) распределенная система поиска информации (В настоящее время утилита устарела и не используется. Статья сохранена для понимания эволюции Интернет). Поиск производится по базам данных, содержащим текстовые документы (но допустимы также графические, звуковые или видео документы). Тематика баз данных и поиска произвольны. Базы данных могут иметь любую структуру, но пользователю не нужно знать языка управления этими базами. WAIS использует естественный управляющий язык. WAIS доступен в Интернет. Для пользователей, имеющих доступ только к электронной почте, предназначен интерфейс, размещенный по адресу [email protected]. В сети Интернет существует много серверов WAIS. Список депозитариев серверов достаточно широк, начать можно с анонимного FTP по адресу Think.com секция /wais, файл wais-sources.tar.Z (файл архивирован и пересылка должна осуществляться в режиме BINARY). В настоящее время многие WAIS-сервера интегрированы в сети WEB.

Существуют клиент-серверы WAIS для систем MS-DOS, VMS, MVS, OS/2, UNIX и Macintosh, а также для GNU Emacs, NeXT, X-Windows, MS-Windows, Sunview и т.д. Эти продукты несколько отличаются друг от друга, но обычно процедура содержит следующие шаги:

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

Формулируется задание на поиск, выбираются ключевые слова.

В процессе поиска WAIS запрашивает информацию из всех указанных баз данных.

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

Для получения копии пользователь просто отбирает документы из предлагаемого списка.

При необходимости пользователь может переформулировать критерии отбора и повторить поиск.

Вновь найденные документы, если они не совпадают с уже известными будут добавлены в список.

Veronica . Для поиска в виртуальной файловой системе GopherSpace разработана система Veronica. Обращение к ней содержится в корневом меню большинства серверов Gopher. Это полноценная информационно-поисковая система (ИПС), которая позволяет осуществлять поиск с использованием ключевых слов в массивах, поддерживаемых зарегистрированными в университете Миннесоты серверами GopherSpace.

Jughead. Арчи стал настолько популярным, что группа System Computing Services при университете Невады создала Veronica, которая служила тем же целям, что и Арчи, но осуществляла поиск по текстам документов в простом текстовом формате. Всоре появился еще один интерфейс для поиска информации — Jughead, который служил тем же целям, что и Veronica. Они оба работали с документами, пересылаемыми через Gopher, который был создан как альтернатива «Арчи» Марком МакКахилом в университете Миннесоты в 1991 году.

2. Поисковые сервера. Специализированные программы для загрузки файлов. http клиенты

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

Протокол HTTP использован при построении глобальной информационной системы World-Wide Web (начиная с 1990).

Первые версии, такие как HTTP/0.9, представляли собой простые протоколы для передачи данных через Интернет. Версия HTTP/1.0, описанная в RFC-1945, улучшила протокол, разрешив использование сообщений в формате MIME, содержащих метаинформацию о передаваемых данных, и модификаторы для запросов/откликов. Дальнейшее развитие сетей WWW-серверов потребовало новых усовершенствований, которые вряд ли являются последними.

Реальные информационные системы требуют больших возможностей, чем простой поиск и доставка данных. Для описания характера, наименования и места расположения информационных ресурсов введены: универсальный идентификатор ресурса URI (Uniform Resource Identifier), универсальный указатель ресурса URL и универсальное имя ресурса URN. Формат сообщений сходен с используемыми в электронной почте и описанный в стандарте MIME (Multipurpose Internet Mail Extensions).

HTTP используется также в качестве базового протокола для коммуникации пользовательских агентов с прокси-серверами и другими системами Интернет, в том числе и использующие протоколы SMTP, NNTP, FTP, Gopher и Wais. Последнее обстоятельство способствует интегрированию различных служб Интернет.

Все HTTP-транзакции имеют один общий формат. Каждый запрос клиента и ответ сервера состоит из трех частей: строки запроса (ответа), раздела заголовка и тела. Клиент инициирует транзакцию следующим образом:

1. Клиент устанавливает связь с сервером по назначенному номеру порта (по умолчанию — 80). Затем клиент посылает запрос документа, указав HTTP-команду, называемую методом, адрес документа и номер версии HTTP. Например, в запросе

GET /index.html HTTP/1.0

используется метод GET, которым с помощью версии 1.0 HTTP запрашивается документ index.html. Методы HTTP более подробно рассматриваются ниже.

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

User-Agent: Mozilla/4.05 (WinNT; 1)

Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, */*

Завершается заголовок пустой строкой.

3. Послав запрос и заголовки, клиент может отправить и дополнительные данные. Эти данные используются главным образом теми CGI-программами, которые применяют метод POST. Клиенты (например, Netscape Navigator-Gold), также могут использовать их для помещения отредактированной страницы обратно на Web-сервер.

Сервер отвечает на запрос клиента следующим образом:

1. Первая часть ответа сервера — строка состояния, содержащая три поля: версию HTTP, код состояния и описание. Поле версии содержит номер версии HTTP, которой данный сервер пользуется для передачи ответа.

Код состояния — это трехразрядное число, обозначающее результат обработки сервером запроса клиента. Описание, следующее за кодом состояния, представляет собой просто понятный для человека текст, поясняющий код состояния. Например, строка состояния

НТТР/1.0 200 OK

говорит о том, что сервер для ответа использует версию HTTP 1.0. Код состояния 200 означает, что запрос клиента был успешным и затребованные данные будут переданы после заголовков.

2. После строки состояния сервер передает клиенту информацию заголовка, содержащую данные о самом сервере и затребованном документе. Ниже приведен пример заголовка:

Server: Apache/1.2.6

Content-type: text/html

Content-length: 2482

Завершает заголовок пустая строка.

3. Если запрос клиента успешен, то посылаются затребованные данные. Это может быть копия файла или результат выполнения CGI-программы. Если запрос клиента удовлетворить нельзя, передаются дополнительные данные в виде понятного для пользователя разъяснения причин, по которым сервер не смог выполнить данный запрос.

В HTTP 1.0 за передачей сервером затребованных данных следует разъединение с клиентом, и транзакция считается завершенной, если не передан заголовок Connection: Keep Alive. В HTTP 1.1 сервер по умолчанию не разрывает соединение и клиент может посылать другие запросы. Поскольку во многие документы встроены другие документы — изображения, кадры, апплеты и т.д., это позволяет сэкономить время и затраты клиента, которому в противном случае пришлось бы для получения всего одной страницы многократно соединяться с одним и тем же сервером. Таким образом, в HTTP 1.1 транзакция может циклически повторяться, пока клиент или сервер не закроет соединение явно.

HTTP не сохраняет информацию по транзакциям, поэтому в следующей транзакции приходится начинать все заново. Преимущество состоит в том, что HTTP сервер может обслужить в заданный промежуток времени гораздо больше клиентов, ибо устраняются дополнительные расходы на отслеживание сеансов от одного соединения к другому. Есть и недостаток: для сохранения информации по транзакциям более сложные CGI-программы должны пользоваться скрытыми полями ввода или внешними средствами, например «ключиками» (cookies) Netscape.

Поисковый WWW-сервер, отрабатывающий запросы на поиск WWW-АДРЕСОВ ДОКУМЕНТОВ. В WWW-технологии каждый WWW-документ при его создании может быть снабжен набором ключевых слов по усмотрению автора. Поисковые сервера считывают эти ключевые слова, находят такие же в своих больших словарях и добавляют ссылку на данный WWW-документ в список уже имеющихся ссылок для каждого такого слова. Кроме поиска по ключевым словам, все большие поисковые сервера имеют универсальные иерархические классификаторы, охватывающие все отрасли знаний, сферы деятельности, области интересов, стороны общественной жизни и т.п.

Некоторые поисковые сервера содержат внутри себя Yellow и White pages WWW-адресов серверов.

Поиск WWW-адресов интересен как сам по себе (поиск WWW-документы на заданную тему), так и как задача поиска организаций в сети. В свою очередь, найденный WWW-сервер конкретной организации может быть интересен как сам по себе, так и в качестве источника адресной информации (телефоны и e-mail адреса самой организации и ее подразделений).

Типичные поисковые задачи:

поиск WWW-адреса сервера конкретной организации или конкретного человека;

поиск WWW-адреса сервера какой-то организации по определенным условиям;

поиск новых WWW-адресов серверов;

поиск новых WWW-адресов документов.

Основные средства поиска (reference sites):

большие универсальные поисковые WWW-системы (search engines);

поисковые WWW-системы по нескольким search engines;

остальные универсальные и специализированные search engines и index sites;

справочные системы Yellow Pages по WWW-адресам серверов;

MetaReference sites (каталоги search engines, index sites, Yellow Pages WWW).

Дополнительные способы поиска:

персональные и тематические подборки ссылок на WWW-сервера;

newsletters и guides на WWW-серверах, объявления в телеконференциях, списки рассылки

запрос к абонентам какой-либо массовой службы;

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

Наполнение поисковых серверов происходит либо автоматически (они непрерывно обозревают все WWW-сервера в мире), либо вручную (с отбором материала).

Наиболее известные поисковые WWW-сервера:

http://www.yahoo.com

Один из первых и самых известных search engine, отличающийся развитой иерархической классификацией. Наполняется вручную, имеет наименьшее количество ссылок по сравнению с другими search engines (по некоторым темам примерно в 10 раз меньше Webcrawler-а, но по другим — больше его).

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

На первом уровне иерархии имеется раздел «References», содержащий много ссылок на разного рода reference sites.

Имеет развитой сервис новостей.

http://www.lycos.com

Один из самых известных и самых больших по количеству ссылок search engine.

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

http://www.webcrawler.com

Относительно небольшой search engine, по-видимому, наполняется вручную — примерно в 10 раз меньше Lycos-а.

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

http://www.inktomi.com

Новый и, вероятно, самый большой по количеству ссылок search engine — наполняется автоматически и хранит все найденные ссылки (примерно в 5 раз больше Lycos-а).

Имеется иерархический классификатор и поиск по ключевым словам, поддерживающий операции «и», «или», но только одного типа в одном запросе.

Кроме собственно поиска документов имеет Yellow Pages по разным категориям.

http://www.infoseek.com

Средний по количеству ссылок search engine (по некоторым темам чуть больше Webcrawler-а, но по некоторым — больше Lycos-а).

Имеет иерархическую классификацию и поиск по ключевым словам, не поддерживающий операций «и», «или».

Поиск может производится: по всему WWW-пространству, лишь среди серверов, отобранных экспертами данного сервера (в этом случае каждая найденная ссылка снабжена краткой аннотацией), лишь среди серверов компаний (yellow-поиск, каждая найденная ссылка снабжена кратким описанием профиля компании), среди статей USENET, среди e-mail адресов, среди свежих новостей (сервер имеет дополнительный очень развитой сервис новостей). Результат поиска дополнительно снабжается и списком подходящих тем из иерархической классификации (общий список тем для данного запроса, а не конкретные иерархические пути для каждой найденной ссылки, как у Yahoo).

http://www.altavista.com

Большой search engine (немного меньше Lycos-а по числу ссылок). Имеет лишь поиск по ключевым словам, поддерживающий только операцию «и». Поиск может проводиться по всему WWW-пространству или среди статей USENET.

http://www.dejanews.com

Считается наиболее мощным средством поиска новостей Usenet. Поиск может выполняться по дате, автору, теме и группе

http://www.hotbot.com

Средний по количеству ссылок search engines, с довольно устойчивой связью. Производит поиск по ключевым словам, поддерживающий операции «и», «или», но только одного типа в одном запросе. Однако логика не всегда работает корректно.

http://www.mckinley.com/

Поисковая система Magellan — очень неплохая система, типа Yahoo. Возможен поиск как по ключевому слову, так и по темам. Можно искать по ключевому слову в рамках выбранной темы.

Имеет сервис новостей.

http://www.excite.com

http://www.opentext.com

http://www.nlightn.com

Поиск по ключевому слову.

Yandex.ru. Поиск ведется более чем по 47 тыс. серверов, проиндексировано около 3,5 млн. документов. Основное достоинство Яndex’а это способность находить заданные слова независимо от формы, в которой они употребляются в документах. Система может образовывать словоформы даже для тех слов, которых нет в словаре. Есть возможность ограничить поиск указанным диапазоном дат создания документа. А в том случае, если нужные документы не будут найдены, можно продолжить поиск через AltaVista, куда автоматически передается уже обработанный системой запрос. Учёт русской морфологии. Подсветка найденных документов, показ контекстов. Параллельный поиск в «Энциклопедиях», «Новостях», «Маркете». Структурирование поиска по разделам каталога и серверам. Цитируемость: 42000

Rambler. Система охватывает более 2 млн. страниц. Возможен поиск в именах URL, названиях документов, заголовках, адресах (если те находятся в специальных тегах) и только среди слов в начале документа. Есть возможность поиска документов «похожих» на приглянувшийся среди найденных, а также поиска среди уже найденных документов. www.rambler.ru - Цитируемость: 17000

AltaVista. Известный поисковик с поиском на многих языках

Апорт. Поиск ведется почти по 2 миллионам документов и более чем по 13000 серверов. Система умеет искать по различным словоформам введенных слов и даже исправляет в введенных словах ошибки. Система может переводить с русского на английский и с английского на русский не только запрос, но и полученную в результате поиска информацию. Учёт русской морфологии. Выделение контекстов найденных слов. Уточнение поиска по разделам каталога и серверам. www.aport.ru - Цитируемость: 20000.

FlashGet


FlashGet — это один из самых быстрых и удобных менеджеров загрузки. При помощи данной программы можно дозваниваться в Интернет, производить автоматический поиск зеркал и выбирать самый быстрый вариант загрузки. Программа предлагает три режима скорости закачки файлов — неограниченный, ручной и автоматический. В ручном режиме скорость загрузки определяется пользователем, в автоматическом программа подберет наилучшую скорость сама. По умолчанию FlashGet разбивает файл на пять частей, но это количество, равно как и размер одной части, можно изменить. Программа также позволяет просматривать содержимое HTTP- и FTP-серверов, а также создавать неограниченное количество тематических категорий, в которых для облегчения поиска могут располагаться задания на загрузку.

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

ReGet


Как известно, создать программу, которая подходила бы все пользователям, невозможно. Если перегрузить ее возможностями, кому-то они могут мешать, если же их не добавить, найдется те, кому дополнительных опций будет не хватать. Именно поэтому разработчики менеджера загрузки ReGet выпускают не одну, а три программы для загрузки файлов. Это ReGet Junior, ReGet Pro и ReGet Deluxe . Каждая из них ориентирована на свою категорию пользователей. Базовые функции у всех трех программ одинаковые, отличия в дополнительных возможностях.

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

ReGet Junior ориентирован на начинающих пользователей и имеет минимальный набор функций. К его особенностям можно отнести возможность изменения интерфейса при помощи скинов, которая отсутствует в других версиях программы. ReGet Pro может предложить такие опции, как управление скоростью загрузки, благодаря чему можно одновременно производить загрузку файла и открывать веб-страницы; соединение с Интернетом в случае обрыва связи; управление настройками закачки для нескольких файлов одновременно. Кроме этого, с его помощью можно автоматически скачивать галереи изображений и проверять загруженные файлы на вирусы. Однако для опытного пользователя, проводящего в Интернете много времени, наибольший интерес, несомненно, представляет версия ReGet Deluxe. В этой версии менеджера загрузки пользователям предлагается встроенный FTP-клиент, расширенные возможности планировщика (например, планирование загрузки на указанную дату, повторение загрузки в указанное время и дни, начало загрузки при выполнении заданных условий), выключение компьютера, возможность сортировки загруженных файлов по папкам и ведение истории закачек.

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

GetRight

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


Так, наряду с возможностью разбивать файл на части, самостоятельно звонить в Интернет через dial-up модем, разрывать соединение, вести историю загрузок и планировать закачки GetRight Pro может похвастаться многими уникальными опциями. К ним можно отнести проверку файла на целостность после окончания загрузки, автоматический поиск подкастов по указанным адресам, их загрузка и помещение в список воспроизведения проигрывателя, возможность скачивания файлов через протокол BitTorrent, управление менеджером закачки удаленно, через Интернет. Кроме этого, GetRight Pro имеет свой браузер для просмотра содержимого ФТП и веб-серверов. Веб-мастера оценят средства для синхронизации содержимого папок на ФТП-сервере с директориями на жестком диске, возможность загрузки файлов на сервер.

Download Master

Неоспоримое преимущество Download Master перед конкурентами — его полная бесплатность. Единственное, чем он может надоедать пользователю в этой связи, баннер, расположенный в верхней части окна загрузки. Впрочем, на этом недостатки этого менеджера загрузки заканчиваются.




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

Среди наиболее востребованных опций Download Master можно отметить: встроенный ФТП-клиент, возможность просмотра Zip-архивов перед загрузкой, получение размера файлов до начала закачки, проверка и восстановление архивов, установка приоритетов для закачек, работа с командной строкой, загрузка HTML-страниц с изображениями. Кроме этого, недавно разработчики программы сообщили о возможности расширения ее возможностей при помощи подключаемых модулей — плагинов. Предполагается, что они помогут реализовать те функции, которые в настоящее время отсутствуют в Download Master, например, загрузка файлов с файлообменных систем наподобие Rapidshare.

Специфика приложения требует от разработчиков менеджера закачки постоянного развития и совершенствования, так как мир Интернета постоянно изменяется, а вместе с ним изменяются и предпочтения пользователей. Если еще совсем недавно для download-менеджера достаточно было обеспечивать поддержку Internet Explorer, сегодня отсутствие интеграции с альтернативными браузерами Mozilla, Opera и пр. расценивается как большой недостаток. Конкурируя между собой, разработчики менеджеров загрузки постоянно встраивают в программы новые опции, поэтому теми возможностями, которые сегодня являются для программы уникальными, завтра уже наверняка обзаведутся и другие приложения.

Если же говорить о лидере, то это Download Master. Эта программа обходит конкурентов как по функциональности, так и по удобству. К тому же, она постоянно обновляется.

Через различные ТСР-сети, в числе которых значится также и интернет. Данные протоколы достаточно часто применяются для загрузки всевозможных сетевых страниц или же документов с частного устройства разработки на различные открытые серверы хостинга.

Что они собой представляют?

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

Немного истории

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

Порты FTP в наши дни являются одним из самых старых стандартов, ведь он появился в 1971 году еще до TCP/IP и HTTP. В первое время его использовали исключительно поверх NCP, однако на сегодняшний день его применение активно распространяется и для передачи различного программного обеспечения, а также получения доступа к удаленным ресурсам.

В чем его отличия от HTTP?

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

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

В чем преимущества?

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

Используя стандартный порт FTP, клиент изначально входит в сессию, и все последующие операции уже будут проводиться именно в ней. Другими словами, сервер изначально запоминает текущее состояние и поддерживает его на определенном уровне. В то же время при использовании протокола НТТР такая память не присутствует, так как задачей данного протокола является просто передача данных, после чего он полностью забывает о проведенной операции. В связи с этим при использовании протоколов НТТР запоминание состояния осуществляется другими технологиями, которые не относятся к данному протоколу.

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

Работа осуществляется на прикладном уровне модели OSI и применяется для того, чтобы передавать данные при использовании TCP/IP. Для этого изначально требуется запуск FTP-сервера, который будет ожидать входящие запросы. В случае необходимости клиент самостоятельно сможет связаться с данным сервером, используя порт под номером 21. Стоит отметить тот факт, что такое соединение будет оставаться открытым на протяжении данной сессии. Второе соединение открывается сервером из порта под номером 20 к тому порту, который использует клиент, что называется активным режимом, или же может открываться непосредственно самим клиентом из любого удобного ему порта к порту соответствующего сервера. Это называется пассивным режимом и требуется для передачи файла.

Использование потока управления осуществляется для работы с определенной сессией. К примеру, такие потоки активно применяются в процессе обмена между сервером и клиентом всевозможными паролями или же командами, если применяется протокол типа telnet. Таким образом, например, команда «RETR имя_файла» осуществит передачу определенного файла клиенту с сервера. Из-за формирования такой двухпортовой структуры FTP на сегодняшний день принято считать внешнеполосным протоколом в отличие от НТТР, который остается внутриполосным.

Как настроить?

Если вы не знаете, как FTP, сделать это можно при помощи ресурса FileZilla следующим образом:

  1. Изначально запускаете сам FileZilla.
  2. Теперь открывайте «Менеджер сайтов», после чего во всплывшем окне жмите кнопку «Новый сайт».
  3. На вкладке «Общие» вводите: Хост: используемый вами домен; Тип сервера: FTP или же FTPES (рекомендуется использовать именно последний), Тип входа: "Нормальный" или же "Запросить пароль" (опять же, последний вариант является оптимальным по той причине, что ваш пароль не будет сохраняться, хоть и придется постоянно вводить его при входе); Имя пользователя: вводите в данную строку ваш логин FTP.
  4. Теперь переходите в пункт «Настройки передачи», после чего выбирайте в разделе «Режим передачи» пункт «Пассивный».
  5. В конце нажимайте на кнопку «Соединиться».

Теперь вы сделали FTP, ваше соединение настроено и сохранено в «Менеджере сайтов», а вы можете пользоваться им на ваше усмотрение.

Анонимный протокол

Хост, которым предоставляется FTP-сервис, в случае необходимости может предоставить пользователям абсолютно анонимный доступ. В данном случае изначально пользователи попадают в систему в качестве anonymous. Однако стоит отметить, что система может быть также регистрозависимой на определенных серверах. Хотя в преимущественном большинстве случаев пользователей просят указать адрес их электронной почты вместо пароля, в действительности же система не проводит никакой проверки, и данный шаг, по сути, не является обязательным.

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

NAT-PT протокол

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

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