Введение
Суть проблемы в следующем. Изначально сервер создавался для внутренней работы над всеми сайтами из локальной сети. Разграничения по правам доступа не было, работали с сайтами мало, изредка что-то правили. Со временем разработчиков вообще не осталось, сайты не менялись. Все управление шло через панели администрирования сайтами.
В один прекрасный день решили обновить один из сайтов. Попросили предоставить доступ к исходникам. В принципе, ничего сложного, думал за 5-10 минут все сделаю. Пошел по простому пути. Решил настроить ftp сервер, благо совсем недавно написал обширную статью на эту тему.
Очень быстро его настроил, проверил изнутри — все отлично работает. Создал системного пользователя, зачрутил его в каталог с нужным виртуальным хостом, расставил права как надо. Дальше дело за малым. Надо пробросить порт на шлюзе для доступа к серверу.
Тут началось самое интересное. Я давно не работал с ftp и подзабыл как там с ним и что. А проблем с ним навалом. Простого проброса 21-го порта недостаточно. Я не смог подключиться извне ни в активном, ни в пассивном режиме. На сервере установлен firewall pf, я с ним не очень знаком, почти не работал. Стал читать, как организуют проброс ftp на нем. Оказалось, что необходимо поднять локальный FTP proxy, редиректить на него все подключения и он динамически будет создавать правила для корректной работы ftp.
Мне очень не понравились перспектива ковырять незнакомый фаервол с кучей правил. К тому же нельзя было допустить ошибку и нарушить работу шлюза. Но делать нечего, решил попробовать. Информации в интернете не очень много на эту тему. По тем примерам, что мне попались не смог корректно настроить. То в синтаксисе ошибка, то просто не работает.
Решил не терять время на ковыряния не нужного для меня фаервола и пойти другим путем. Естественно, подумал сразу на sftp. Там нет таких проблем с пробросом портов. Единственное, чего я не делал раньше, так это ограничение доступа по sftp в пределах какого-то каталога. Но как оказалось это не сложно, задача легко и быстро решается.
Сторонние программы для настройки сервера
Программа для управления TFTP — tftpd32/tftpd64, уже была описана выше в статье, в разделе «Создание и настройка TFTP сервера». Для управления FTP серверами можно использовать программу FileZilla.
- После окончания установки приложения, откройте меню «Файл» и кликнете по разделу «Менеджер сайтов», чтобы редактированию и созданию нового сервера.
Переходим к разделу «Менеджер сайтов»
Работа с FTP сервером в FileZilla
FTP и TFTP сервера предназначены для создания локальных и общих сайтов, позволяющих обмениваться файлами и командами между пользователями, имеющих доступ к серверу. Оформить все нужные настройки можно как с помощью встроенных функций системы, так и через сторонние приложения. Чтобы получить некоторые преимущества, вы можете преобразовать папку с сервером в сетевой диск.
>
Создание и настройка
Установить FTP-сервер на ПК может любой пользователь, даже чайник. Это можно сделать либо средствами операционной системы, либо с помощью сторонних программ, таких как Filezilla server.
FTP в windows
В Windows 7 есть все для того, чтобы установить и настроить FTP сервер, ничего дополнительно устанавливать не придётся. На более новых версиях этой системы все делается аналогично.
Чтобы сделать ФТП сервер на компьютере:
- Кликните по кнопке «Пуск», откройте «Панель управления» и выберите строку «Программы и компоненты».
- Выберите ссылку «Включение или отключение компонентов Windows», откройте пункт «Службы IIS», поставьте галочку в строке «FTP-сервер» и всех его подпунктах.
- Зайдите в меню «Администрирование» на панели управления.
- Откройте «Диспетчер служб IIS».
- Кликните по строке «Сайты», расположенному в правой части окна, и нажмите «Добавить FTP-сервер».
- Задайте имя соединения и путь к общей папке, через которую вы будете обмениваться данными.
- Введите IP-адрес, номер порта и параметры шифрования (можно настроить, как на рисунке).
- Настройте доступ (анонимный – без пароля, обычный – нужно будет ввести имя и пароль).
- Зайдите в «Панель управления», откройте «Система и безопасность» и выберите «Брандмауэр Windows».
- В левом меню выберите пункт «Дополнительные параметры».
- Кликните по строке «Правила для входящих подключений», которая находится слева, кликните правой кнопкой по строке «FTP-сервер» (находится в центральной части окна) и выберите «Включить правило». Те же действия повторите со строкой «Трафик FTP сервера в пассивном режиме».
- В левой части окна выберите «Правила для исходящего подключения» и включите «Трафик FTP-сервера».
- Чтобы настроить права пользователей, зайдите в раздел «Администрирование» панели управления и кликните по строке «Управление компьютером».
- Щёлкните правой кнопкой по свободному месту и выберите сроку «Создать группу».
- Введите имя группы.
- В папке «Пользователи» создайте нового пользователя.
- Заполните поля, касающиеся имени пользователя и пароля.
- Щёлкните правой кнопкой по только что созданному пользователю, выберите пункт «Свойства», перейдите на закладку «Членство в группах» и, нажав кнопку «Добавить», задайте пользователю новую группу.
- Чтобы разрешить пользователю подключаться к выделенной для обмена папкой, щёлкните по ней правой кнопкой и выберите строку «Свойства», перейдите на вкладку «Безопасность» и нажмите кнопку «Изменить».
- Щёлкните по кнопке «Добавить» и добавьте созданную недавно группу. Отметьте галочками все пункты в колонке «Разрешить».
- Зайдите ещё раз в меню службы IIS, щёлкните по вашему сайту и кликните по иконке «Правила авторизации».
- Кликните по пустому месту правой кнопкой и выберите «Добавить разрешающее правило».
- Отметьте пункт «Указанные роли или группы пользователей» и введите название созданной группы.
На этом создание FTP сервера закончено. Теперь вы знаете, как поднять домашний файлообменник.
Filezilla server
Самое популярное приложение для создания FTP – это FileZilla Server. Его можно скачать с официального сайта.
Чтобы создать свой FTP сервер FileZilla:
- для создания пользователя в пункте верхнего меню «Edit» выберите подпункт «Users»;
- нажмите кнопку «Add»;
- в поле ввода наберите имя пользователя;
- после этого введите пароль;
- создайте рабочую папку;
- задайте права на эту папку;
На этом создание FTP-сервера закончено.
Вход на FTP-сервер через браузер
Каждый юзер, собирающийся пользоваться FTP в веб-обозревателе, должен знать, что этот способ далеко не самый безопасный и функциональный. В целом рекомендуется пользоваться специальным программным обеспечением, осуществляющим работу с FTP. К такому софту относятся Total Commander или FileZilla, например.
Если такого желания нет, продолжайте использовать браузер, благо свою основную функцию — скачивание — он выполняет. Теперь рассмотрим, как же можно зайти на FTP.
Этап 1: Получение данных для входа
Первоначально есть два варианта развития событий: получение адреса FTP, если это приватный сервер (например, вашего друга, рабочей компании и др), или поиск публичного сервера.
Вариант 1: Приватный FTP
Приватные серверы создают для раздачи файлов ограниченному количеству людей, и если вам требуется подключиться именно к такому FTP, попросите у владельца или знакомого все необходимые данные для входа:
- Адрес: он распространяется либо в цифровом формате (например, 123.123.123.123, 1.12.123.12), либо в цифровом (например, ftp.lumpics.ru), либо в буквенно-цифровом (например, mirror1.lumpics.ru);
- Логин и пароль: буквенные, цифровые значения любого размера, написанные на латинице.
Вариант 2: Публичный FTP
Публичные FTP представляют собой сборники файлов определенных тематик. Вы можете через поисковые сервисы Яндекс, Google и др. найти подборки работающих ФТП на определенную тематику: развлекательный контент, сборники книг, подборки программ, драйверов и т.д.
Если вы уже нашли такой FTP, все, что нужно — получить адрес. Если вы нашли его в интернете, скорее всего, он будет выделен как гиперссылка. Достаточно будет перейти по ней, чтобы попасть на сервер.
Этап 2: Переход на FTP-сервер
Здесь, опять же, варианты будут несколько разниться в зависимости от типа FTP: приватного или публичного. Если у вас есть адрес, по которому нужно перейти, сделайте следующее:
- Откройте браузер, в адресную строку впишите ftp:// и напечатайте/вставьте адрес сервера. Затем нажмите Enter для перехода.
Когда сервер приватный, от второй стороны приходит требование ввода логина и пароля. В оба поля вставьте полученные на первом этапе данные и нажмите «ОК».
Пользователи, желающие попасть на публичный сервер, сразу же увидят список файлов, минуя ввод логина и пароля.
Если вы переходите на защищенный FTP, можете в адресную строку ввести сразу и логин, и пароль таким образом, что не потребуется ждать вызова диалогового окна. Для этого впишите в адресное поле , например: . Нажмите Enter и спустя пару секунд откроется хранилище со списком файлов.
Этап 3: Скачивание файлов
Выполнить этот шаг уже не составит труда ни для кого: нажимайте на файлы, которые вам нужны, и скачивайте их через встроенный в браузер загрузчик.
Обратите внимание, что не все браузеры могут нормально скачивать, например, текстовые файлы. Допустим, Mozilla Firefox при нажатии на txt-документ открывает пустую страницу
В такой ситуации по файлу необходимо кликать правой кнопкой мыши и из контекстного меню выбирать пункт «Сохранить файл как…». Название этой функции может незначительно отличаться в зависимости от используемого веб-обозревателя.
Теперь вы знаете, как переходить на открытые и закрытые FTP-сервисы через любой веб-обозреватель.
Опишите, что у вас не получилось.
Наши специалисты постараются ответить максимально быстро.
Как создать и настроить FTP-сервер на компьютере Windows 10
Настройка FTP-сервера – это сложный процесс, который вызывает у новичков массу сложностей. Однако встроенные средства Windows 10 дают возможность подготовить сервер для подключения устройств любому желающему. Главное – четко следовать требованиям инструкции, а они не такие мудреные, как может показаться на первый взгляд.
Алгоритм действий для создания и настройки FTP-сервера выглядит следующим образом:
Сначала нам нужно активировать встроенный FTP-протокол на компьютере, так как по умолчанию он отключен. Для этого нужно открыть «Панель управления» через поисковую строку Windows или любым другим способом.
Во вкладке «Просмотр» установите значение «Крупные значки». Это поможет вам как можно быстрее найти нужный раздел «Программы и компоненты», в который необходимо перейти для дальнейшей настройки.
В открывшемся окне вы увидите несколько вкладок. Поочередно раскройте «Службы IIS» и «FTP-сервер».
Отметьте галочками вкладки «FTP-сервер», «Расширяемость FTP» и «Служба FTP».
Теперь можно сказать, что мы активировали протокол. Далее останется создать собственный сервер и задать координаты для подключения к нему. Поэтому вернитесь на главную страницу «Панели управления» и перейдите в раздел «Администрирования».
Здесь находится множество файлов, среди которых нас будет интересовать «Диспетчер служб IIS». Запустите его двойным щелчком ЛКМ или откройте любым другим способом.
- В левой части открывшегося интерфейса будет располагаться вкладка «Сайты». Щелкните по ней ПКМ и выберите опцию «Добавить FTP-сайт».
- Придумайте название и укажите расположение данных (например, диск «D» или конкретная папка).
Следующим шагом требуется настроить параметры привязки. Здесь рекомендуется установить значение «Все свободные» в качестве IP-адреса, выбрать порт «21», отметить галочкой пункт «Запускать сайт FTP автоматически» и запретить использование SSL («Без SSL»).
На следующем этапе настраиваем параметры доступа. «Анонимный» – доступ к серверу можно будет получить без логина и пароля, «Обычный» – наоборот.
Важно. После создания FTP-сервера необходимо перейти в настройки брандмауэра и активировать доступ к FTP
Для этого откройте «Дополнительные параметры» и поставьте соответствующие галочки.
Создание сервера закончилось, и теперь нам осталось определить, кто из пользователей получит к нему доступ:
Через «Панель управления» запустите инструмент «Управление компьютером» (находится в разделе «Администрирование»).
- Щелкните ПКМ и выберите «Создать группу».
- Добавьте пользователей, открыв получившуюся группу и нажав ПКМ.
- Как только все учетные записи будут добавлены, перейдите в «Свойства» группы и откройте вкладку «Безопасность».
- Нажмите на кнопку «Изменить» и добавьте созданную группу в список.
Теперь пользователи, добавленные в группу, смогут получить доступ к вашему FTP-серверу.
Как можно создать сервер FTP
Простой FTP сервер с небольшим количеством файлов вы и сами сможете создать у себя на компьютере. Способ создания такого сервера напрямую зависит от средств, которыми вы располагаете и от установленной у вас на компьютере операционной системы. В целом, методы установки сервера можно поделить на те, которые подходят для Linux, и те, которые подходят для Windows.
В операционных системах, похожих на Linux, создать сервер можно прямо из терминала. Это очень легко, и после первого раза вы быстро освоите этот навык. Для создания такого сервера в Linux и в подобных операционных системах используется сервис VSFTPD. Это тот же протокол FTP, только с некоторыми особенностями, которые в работе вам абсолютно не помешают. Для начала вам нужно будет зайти в командную строку и через консоль ввести команду для установки сервиса VSFTPD: sudo apt-get install vsftpd. После этого вы сможете управлять папками и правами на них через тот же консоль. Чтобы узнать дополнительные возможности, пропишите в терминале строку man 5 vsftpd.conf для вызова мануала.
Настройка сервера в операционной системе Linux и подобных OC при помощи сервиса VSFTPD проходит внутри файла vsftpd.conf. Он располагается в файловой системе компьютера в папке ETC. Найдите его и откройте при помощи текстового редактора. Внутри вы обнаружите множество строчек. Те, которые начинаются с решетки #, считаются закомментированными, потому не активны и на конфигурации сервера никак не влияют. Над каждой функциональный строкой есть пояснение на английском. Там вы найдете и строки для добавления анонимных пользователей, для изменения способа авторизации, корректировки уровня доступа для юзеров, создания бан-листа и др. Не забудьте прежде почитать мануал и определиться с тем, для каких целей вам нужен сервер.
В Windows и вовсе можно сгенерировать сервер и сделать его онлайн при помощи стандартных возможностей операционной системы. Такое возможно благодаря тому, что Windows размещает множество служб в ОС по умолчанию, но не всех их активирует. Так что вы сможете создать сервер полностью free, даже не придется заходить в браузер, чтобы через него что-либо скачивать.
Итак, чтобы у вас был сервер, у которого есть свой адрес, и на который пользователи могут заходить и через клиент, и через браузер, вам нужно активировать некоторые компоненты Windows. Эта опция находится в “Панели управления” внутри вкладки “Программы и компоненты”. В левом боковом меню вы найдете пункт для включения различных компонентов. Вам нужно активировать службы IIS, в том числе ФТП сервер и другие компоненты внутри папки IIS. После того, как добавите компоненты, они активируются в разделе “Администрирование”. Вам нужно найти “Диспетчер служб IIS” и запустить его. Внутри диспетчера вы сможете добавить новый FTP-сайт. У него будет свой адрес, по какому пользователи и смогут подключиться к вашему серверу.
Учтите, что вам нужно будет не только указать адрес, но и создать пользователей для сервера. По-другому они не смогут получить доступ к вашему удаленному ПК и к его файловой системе. Вам нужно создать сначала группу пользователей, потом отдельного пользователя, а уже затем назначить всей группе права для корневого каталога сервера. Затем, вбивая адрес, они смогут зайти к вам на сервер через браузер или клиент. Но может возникнуть еще одна проблема – они не смогут получить доступ, если у вас не настроен брандмауэр. Вам нужно активировать внешний и исходящий трафик для FTP, то есть включить такие правила внутри настроек брандмауэра.
Почему при входе возникает ошибка «Неправильный логин» («Invalid login»)?
Чаще всего данная проблема связана с неправильно веденным паролем. Если зайти на почту, то в присланном документе от хостера находится следующая информация:
- Данные для входа в панель управления – обычно они совпадают с входом по FTP;
- Конкретные реквизиты FTP для входа – логин, пароль и адрес хоста;
- Данные входа в базу данных MySQL.
Если есть сервер, то информацию авторизации можно при желании поменять. Убедитесь, что вы не меняли имя и пароль для входа на сервер.
Также, не рекомендуется копировать пароль и вставлять его в поле, так как обычно в конце прибавляется пробел. Вводим пароль и логин вручную.
Возможно, у вас не получилось связаться с хостом по FTP никакими способами. Попробуйте обратиться в техническую поддержку своего хостинг-провайдера.
Стоит попробовать использовать подключение через браузер. Если оно будет работать, тогда проблема возникла на стороне программного обеспечения и его нужно либо перезапустить, либо переустановить. Чтобы войти по FTP через браузер нужно в адресной строке ввести такую команду:
ftp://имя-пользвателя_ftp:пароль_ftp@домен
Некоторые браузеры могут не поддерживать этот протокол, стоит использовать современные обозреватели, такие как Google Chrome, Mozilla Firefox или Opera.
FTP account setup
When you purchase a web hosting plan you commonly use an FTP connection to upload your website files to the server. Although not the most secure one, the FTP is the most popular and proven method of uploading content on a web server. The main benefit of the FTP transfer in comparison to the web-based file managers is that the FTP connection allows you to upload a whole directory tree at once. Also, the FTP allows you to stop and then to resume the transfer. Even popular PHP applications like Joomla provide FTP upload options.
FTP accounts are usually generated manually by the user through a web-based FTP management interface provided by the host. With the web hosting services offered by NTC Hosting you get a default FTP account with your control panel username and password at sign-up and a usable, control panel-integrated FTP Manager from where you can create many independent FTP accounts and edit them at any time.
Различия FTP и TFTP серверов
Активация обоих серверов даст вам возможность обмениваться файлами и командами между компьютерами или устройствами, подключёнными друг к другу по локальной сети или другим способом.
TFTP — более простой в открытии сервер, но при этом не поддерживающий какую-либо проверку личности, кроме проверки ID. Поскольку ID можно подделать, то TFTP нельзя считать надёжными, но они легки в использовании. Например, их используют для настройки бездисковых рабочих станций и умных сетевых устройств.
FTP сервера выполняют те же функции, что и TFTP, но имеют возможность проверки подлинности подключаемого устройства при помощи логина и пароля, поэтому более надёжны. С помощью них можно отправлять и принимать файлы и команды.
Если ваши устройства соединены через роутер или используют Firewall, то необходимо заранее пробросить порты 21 и 20 для входящих и исходящих соединений.
Как подключиться к FTP-серверу
Необходимо учитывать, что протокол передачи
файлов знает различные команды и коды состояния. В общей сложности 32 команды –
не все из которых всегда реализуются на сервере – клиентская сторона дает
команду серверной стороне загружать или скачивать файлы, организовывать
каталоги или удалять файлы. Сервер отвечает кодом состояния, который указывает,
может ли команда быть успешно реализована.
Обычно вам нужны данные доступа, чтобы иметь
возможность использовать FTP на сервере. Но есть
также вариант сервера, предлагающего анонимный FTP. Затем оператор сервера позволяет каждому пользователю перемещать файлы на
сервер через FTP или загружать их оттуда – без использования
пароля. Поскольку такой общедоступный FTP-сервер
связан с угрозами безопасности, возможности его пользователей обычно
ограничены.
Установить соединение с FTP-сервером так же просто, как ввести имя пользователя и пароль, адрес
сервера, часто выражаемый как адрес домена, и дополнительно (если он не указан
по умолчанию) ввести номер порта для подключения. Данные доступа к FTP-серверам могут отличаться в зависимости от того, как, где и для чего мы
хотим получить такой доступ.
Используя функционал FTP на своем хостинге, вы можете создавать любое количество пользователей,
предоставляя им различные права доступа. Даже изолировать отдельные папки, к
которым у них будет доступ. Кроме того, есть еще функционал так называемого
анонимный пользователь (анонимный), который, используя данные для входа по
умолчанию, разрешает доступ к отдельному разделу сервера. Анонимный
пользователь всегда имеет одни и те же данные для входа на каждый FTP-сервер, с каждым оператором, что делает саму концепцию этого типа
соединения. Однако это не означает, что каждый пользователь получит доступ к
нашему серверу, потому что, как его администраторы, мы всегда можем включить
или отключить эту функцию.
Когда мы подключаемся к FTP-серверу по протоколу FTP, мы получаем доступ ко
всему содержимому нашего сервера. В случае сервисов home.pl это будет контент, введенный пользователем,
и папки резервного копирования, которые мы делаем для вас каждую ночь. Вы
можете изменять и обмениваться файлами на FTP-сервере, добавлять музыку, фильмы и документы. Создайте каталог,
перечислите содержимое папок. FTP-сервер также может
разделяться на скрытый контент, то есть контент, присутствующий на сервере, но
недоступный в сети извне, и общедоступный контент. В том числе по этой причине,
предоставляя веб-сайт в распоряжение пользователей, не забудьте добавить его в
папку?
Углубленная настройка FileZilla Server
В следующем подпункте можно настроить приветственное сообщение, которое будут видеть пользователи при подключении. Здесь же можно воспользоваться, так называемыми, текстовыми параметрами. Например, можно задать вывод для клиентов версии ftp-сервера. Для этого введите, помимо приветствия, сочетание символов %v . В месте где вы их введете, будет автоматически выводится вышеупомянутая версия.
Далее переходим на подпункт “IP bindings”. Здесь настраиваются IP-адреса, по которым будет доступен наш FTP сервер. Если вам хочется, чтобы сервер был доступен только из локальной сети, то вместо звёздочки, следует указать ваш локальный IP-адрес, как например, 192.168.1.5. В противном случае, здесь трогать ничего не стоит.
В подпункте “IP Filter” можно задать IP адреса (или их диапазон), которым будет запрещено подключаться к вашему серверу, а так же задать исключения из заданного диапазона (второе поле).
Т.е, например, если вы хотите кого-то забанить и запретить ему попадать на ваш сервер, то укажите его в первом окошке. Так же, если вы хотите предоставить доступ только кому-то определенному и запретить всем остальным, то поставьте звёздочку в первом поле и задайте список IP-адресов во втором.
Вкладка “Passive mode settings” регламентирует параметры для пассивного подключения к серверу и его отклик.
Менять здесь что-либо стоит только в том случае, если Вы подключены к интернету не напрямую, а через роутер, на котором обитает фаерволл и NAT. В этом случае может потребоваться указать в поле “Use the following IP” свой внешний IP-адрес (можно узнать у провайдера или в интерфейсе роутера), а так же задать диапазон портов (Use custom port range), через которые клиент сможет подключаться к вашему серверу в пассивном режиме.
Идем далее. В пункте настроек “Security Settings” задаются ограничения на входящие и исходящие соединения типа “сервер-сервер”. Здесь ничего менять не стоит.
Раздел настроек “Miscellaneous” содержат малозначительные для домашнего фтп-сервера настройки. Например, такие как “Не показывать пароль в лог-файлах” (Don’t show passwords in message log), “Запускать интерфейс свернутым” (Start minimized), а так же размеры буферов передачи. Трогать здесь, в общем-то, ничего не нужно.
На вкладке “Admin Interface Settings” можно задать IP-адрес и порт, по которым будет доступен интерфейс управления сервером (тот самый, что мы вначале использовали как 127.0.0.1 и 14147, т.е, если есть желание, то вы можете их сменить). Кроме того, можно указать IP-адреса, которым разрешено подключаться к нему.
Раздел настроек “Logging” позволяет включать запись лог-файлов (Enable logging to file), настроить их максимальный размер (Limit log file size to), писать все в один файл (Log all to “FileZilla Server.log”) или для каждого дня создавать отдельный (в этом случае можно ограничить их максимальный срок хранения).
Вкладка “GSS Settings” отвечает за использования протокола Kerberos GSS, но для обычного использования эта опция не требует настройки.
1.2. Технические процессы осуществления соединения с помощью протокола FTP
В FTP соединение
инициируется интерпретатором протокола пользователя. Управление обменом
осуществляется по каналу управления в стандарте протокола TELNET. Команды FTP
генерируются интерпретатором протокола пользователя и передаются на сервер.
Ответы сервера отправляются пользователю также по каналу управления. В общем
случае пользователь имеет возможность установить контакт с интерпретатором
протокола сервера и отличными от интерпретатора пользователя средствами.
Команды FTP определяют
параметры канала передачи данных и самого процесса передачи. Они также
определяют и характер работы с удаленной и локальной файловыми системами.
FTP отличается от других приложений тем,
что он использует два TCP
соединения для передачи файла.
Управляющее соединение
устанавливается как обычное соединение клиент-сервер. Сервер осуществляет
пассивное открытие на заранее известный порт FTP (21) и ожидает запроса на соединение от клиента.
Клиент осуществляет активное открытие на TCP порт 21, чтобы установить управляющее соединение.
Управляющее соединение существует все время, пока клиент общается с сервером.
Это соединение используется для передачи команд от клиента к серверу и для
передачи откликов от сервера. Тип IP сервиса для управляющего соединения устанавливается для получения
«минимальной задержки», так как команды обычно вводятся пользователем.
Соединение данных
открывается каждый раз, когда осуществляется передача файла между клиентом и
сервером. (Оно также открывается и в другие моменты, как мы увидим позже.) Тип
сервиса IP для соединения данных должен быть
«максимальная пропускная способность», так как это соединение используется для
передачи файлов.
Сессия управления
инициализирует канал передачи данных. При организации канала передачи данных
последовательность действий другая, отличная от организации канала управления.
В этом случае сервер инициирует обмен данными в соответствии с параметрами,
согласованными в сессии управления.
Канал данных
устанавливается для того же host’а, что и канал управления, через который
ведется настройка канала данных. Канал данных может быть использован как для приема,
так и для передачи данных.
Возможна ситуация, когда
данные могут передаваться на третью машину. В этом случае пользователь
организует канал управления с двумя серверами и организует прямой канал данных
между ними. Команды управления идут через пользователя, а данные напрямую между
серверами .
Канал управления должен
быть открыт при передаче данных между машинами. В случае его закрытия передача
данных прекращается.
FTP адрес выглядит
примерно так:
ftp://user:password@127.0.0.1:21/
user — имя пользователя.
двоеточие — это
разделитель для программы между именем пользователя и паролем
password — пароль.
@ — означает разделение
между данными о пользователе и адресом.
Дальше идёт
непосредственно адрес. Это может быть IP, а может иметь и буквенное значение
(как-то ftp.ur.ru). После адреса опять идёт разделительное двоеточие, которое
разделяет адрес, и номер порта к которому следует подключаться. По умолчанию
этим портом является 21, но может быть любая цифра, обозначенная
администратором сервера.
Адрес может выглядеть и
так:
ftp://127.0.0.1
Соединение с двумя
разными серверами и передача данных между ними
Авторизация
Для идентификации пользователя и последующего назначения прав для управления файлами используется схема — имя пользователя/пароль. Отправка имени осуществляется командой USER, а пароля — PASS.
Сервер принимает эти данные, если они сходятся с теми, что указаны в базе данных. Далее клиент получает приглашение, после чего начинается сессия. Иногда сервер поддерживает возможность входа без учетных данных. Как правило, предоставляется ограниченный доступ для таких связей, используется какое-то стандартное имя, например anonymous. Но чаще всего для авторизации нужно ввести адрес действующей почты, и в дальнейшем она используется, чтобы войти.