FileZilla Server - это сервер который поддерживает FTP и FTP через SSL/TLS и обеспечивает безопасное шифрованное подключение к серверу.

FileZilla поддерживает SSL. Такой же уровень шифрования поддерживает ваш браузер, чтобы защитить вашу информацию. Когда вы используете SSL ваша информация шифруется так, что никто не сможет подсмотреть её, поэтому ваша конфиденциальность гарантирована. Также поддерживается функция сжатия «на лету», что ускоряет передачу данных.
К сожалению, опция сжатия данных может иногда работать некорректно, поэтому рекомендуется пользоваться ею с осторожностью. Есть вероятность, что уже сжатые файлы будут переданы, имея больший размер, чем исходные.

Поддержка SFTP (SSH File Transfer Protocol) не предусмотрена в Filezilla Server.

  • Запустите exe установщик
  • Нужно выбрать admin port и запомнить его
  • Запустите FileZilla Server Interface
  • Введите admin port и пароль для администратора, нажмите ok/connect
  • Создайте профиль пользователя и/или группу с разрешениями для home directory.
  • Создайте еще один каталог и включите отображение alias name в home directory (/AliasName)
  • Завершите установку

Установка на Windows 7 с встроенным брандмауэром

После установки убедитесь, что FileZilla Server внесен в список разрешенных программ встроенного брандмауэра. В Control Panel, откройте System and Security. В разделе Windows Firewall, нужно выбрать "Allowed Programs" для того чтобы открылось окно настроек. Нужно выбрать обе Частную и Общественную сеть для "FileZilla Server" (Не "FileZilla Server Interface". Если "FileZilla Server" нету в списке, нужно добавить"C:\Program Files\FileZilla Server\FileZilla server.exe" в соответсвии с тем куда был установлен клиент). Если не выбрать Частную Сеть, входящее FTP соединение будет заблокировано.

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

Что нужно сделать перед тем, как создать сервер FTP

Разумеется, прежде, чем запустить сервер по локальной сети или через Интернет, вам нужно подготовить компьютер к этому. Для начала определитесь с программой, которую будете использовать. Рекомендуется установить именно FileZilla server, потому что это специализированное приложение, которое можно скачать бесплатно и для которого есть масса уроков в Сети. Кроме того, есть не только FileZilla server, но и клиентская версия, что весьма удобно.

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

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

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

На третьем шаге установки FileZilla sever вам нужно выбрать путь, куда инсталлировать программу. С этим вы решайте самостоятельно, а вот с четвертым шагом лучше выберите первый или второй пункт из выпадающего списка. Вам предложат способ запуска программы. Куда лучше, если операционная система будет воспринимать установленный server как службу, и занесет программу в автозапуск. Это куда удобнее, чем каждый раз после запуска заходить в «Панель управления» и вручную запускать сервер.

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

Настройка сервера FTP в FileZilla

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

Чтобы настроить сам сервер FTP, вам нужно перейти в раздел Edit и Settings, где находятся все конфигурации программы. Основные настройки вы сможете прописать в разделе меню General Settings. В форме Listen on these port вы сможете прописать нестандартное значение порта, которое необходимо клиенту для подключения к серверу. В поле ниже, которое называется Max. number of users пропишите максимальное число клиентов, подключенных к серверу FTP. Еще ниже можно указать количество потоков, а последние три пункта настроек — это конфигурации тайм-аутов. Учтите, что указанные по умолчанию настройки в этом пункте вполне сгодятся для подключения PS3 к компьютеру по локальной сети. Если вы хотите разместить ваш сервер в Интернете, то тогда нужно будет поменять порт, количество юзеров и тайм-ауты для повышения уровня безопасности.

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

В разделе IP Buildings вам следует указать IP-адреса, которым можно будет подключаться к вашему серверу. Учтите, что если FTP нужен для подключения платформы PS3, то можете указать IP-адрес устройства. Но если вы планируете подключаться через PS3 сначала к роутеру, а потом к серверу, то лучше не указывать конкретный адрес IP, так как многие маршрутизаторы используют динамический IP, а не статический. А в разделе IP Filters вы сможете написать конкретные адреса, вход для которых воспрещен. Но в начале у вас навряд ли будут такие адреса — это уже со временем, когда появятся недоброжелатели, пытающиеся взломать сервер.

Раздел настроек Passive mode settings лучше вообще не трогать. Вам понадобится там что-либо изменить только в том случае, если в пассивном режиме клиент подключается к вашему серверу через роутер. В таком случае нужно будет указать внешний IP-адрес вашего компьютера, а также диапазон адресов, по которым работает маршрутизатор. Возможно, менять этот пункт настроек придется, когда будете пытаться настроить соединение PS3 с ПК. Ведь зачастую PS3 подключается к компьютеру через роутер.

В настройках серверной программы FileZilla есть множество параметров, которые вообще лучше не изменять. Они вроде бы ничего не дают, но если неправильно изменить конфигурации, то в дальнейшем у вас могут возникнуть проблемы и клиенты не смогут подключиться к созданному серверу. К примеру, не трогайте пункт настроек под названием Security Settings, а также раздел Miscellaneous. Для домашней сети, нужной для подключения PS3, эти настройки все равно не понадобятся.

В разделе Admin Interface Settings вы сможете изменить параметры, которые вы ввели во время первого запуска программы FileZilla. То есть указать другой порт, IP-адрес, пароль и прочие данные авторизации для админа. В целом, навряд ли ваш PS3 будут пытаться взломать, потому не относитесь слишком серьезно к защите домашней сети. Тем не менее, лучше всегда быть осторожным, потому рекомендуется активировать во вкладке Logging запись логов сеансов. По крайней мере, так вы сможете узнать, не пользовался ли кто вашим PS3 без спроса.

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

Теперь, чтобы подключиться к серверу, клиент должен ввести его IP адрес, свой логин и пароль (которые вы задали в разделе Users), а также порт, если его меняли. Вот и вся премудрость работы с FTP серверами. Как видите, это совсем не сложно, даже если вы хотите подключить платформу PS3 к компьютеру!

Нередко бывают случаи, когда нам необходимо обменяться файлами с кем-то в сети. Для файлов небольшого размера можно воспользоваться почтой или передать файл, например, через интернет-пейджер. Это приемлемо, когда его размер не превышает нескольких мегабайт. А если это фильм или игра, или архив с фотографиями в несколько гигабайт?! Можно, конечно, воспользоваться публичным файлообменником, разделить файл на части и предоставить его для скачивания, но тут тоже не всё гладко, большинство пользователей привыкли качать бесплатно, а это, как правило, ограничение скорости и ожидание таймера. Вот тут нам и придет на помощь собственный FTP-сервер (File Transfer Protocol).
В чем, собственно, плюсы собственного FTP-сервера:

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

Обо всём по порядку

В данной статье предлагаю читателям МирСоветов рассмотреть, как имея динамический адрес и подключение по технологии ADSL, сделать так, чтоб любой пользователь сети, независимо от того, в каком месте планеты он находится, мог получить доступ к Вашему FTP-серверу, разумеется, с Вашего позволения. Для того чтобы Ваш FTP-сервер был доступен, Вам нужен сервис, который сопоставит доменное имя Вашему IP-адресу. Сопоставлением доменных имен занимается DNS-сервер.
Что же такое DNS-сервер?! Это система доменных имен (DNS – domain name system), которая позволяет сопоставить доменное имя IP-адресу. Благодаря DNS мы набираем в адресной строке браузера не IP-адреса, а понятные и привычные нам названия сайтов. Но обычный DNS-сервер работает только со статическими IP-адресами, и привязать наш динамический IP-адрес к доменному имени мы не можем. Так что же нам нужно, чтобы иметь доменное имя для своего FTP-сервера?! Нам понадобится зарегистрироваться в такой системе, которая нам может предоставить такой сервис, который будет отслеживать изменение нашего IP-адреса и сопоставлять его нашему доменному имени и, желательно, совершенно бесплатно.
На сегодняшний день наибольшей популярностью пользуются сервисы DynDns (http://www.dyndns.com/) и No-IP (http://www.no-ip.com/). Так как особых различий в них нет, рассмотрим один из них чуть подробней.

Регистрация

Регистрироваться мы будем в DynDNS.com. Переходим на страницу и жмем на кнопку «Sing up Free», далее на кнопку «Sing Up».
В поле «Hostname» пишем имя, которое Вам нравится, главное, чтоб оно не было никем занято. Далее выбираем из списка понравившийся вам домен. Список доменов достаточно большой, так что есть из чего выбрать.
В поле «IP Address» можно вписать свой текущий IP-адрес. Всё, больше ничего менять и отмечать не нужно. У вас должно получиться примерно следующее:

Далее нажимаем на кнопку внизу страницы «Add To Cart», и если все в порядке и доменное имя никем не занято, то процесс регистрации будет продолжен, в противном случае система предложит Вам изменить имя или домен. В нашем случае всё прошло удачно, и был создан Dynamic DNS Hosts с именем mirsovetov.homeftp.net. Теперь нам нужно создать свой аккаунт. Сразу стоит оговориться, что email-адреса сервера mail.ru не допускаются.

Ну, вот, собственно, и всё, осталось зайти на почту и подтвердить регистрацию. Переходим по ссылке указанной в письме и активируем сервис нажатием на кнопку «Activate Services». Не рекомендую читателям МирСоветов увлекаться созданием большого количества имен, так как бесплатно сервис предоставит не более пяти имен, и даже если Вы удалите ненужные вам, то счётчик всё равно не сбросится. Так что уделяйте имени достаточно внимания.
Теперь нам нужна небольшая программа, которая будет отслеживать изменение вашего IP-адреса и отправлять его для сопоставления с доменным именем. Находится она на странице «Support» (https://www.dyndns.com/support/). Скачиваем DynDNS® Updater, устанавливаем, авторизуемся. Сложностей при этом никаких нет. Программа будет запускаться автоматически при старте системы.
Итак, с нашим динамическим адресом мы разобрались, теперь сервис DynDNS предоставит нам постоянное доменное имя для нашего FTP-сервера. Самое время перейти к установке и настройке нашего FTP-сервера на свой домашний компьютер. Использовать мы будем программу Рablo’s FTP server в связи с её доступностью, бесплатностью, простотой и интуитивно понятным интерфейсом (скачать можно по ссылке: http://gooddi.webhop.net/files/pablos_ftp_server_v1_52.rar).

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

Для начала скачаем программу Рablo’s FTP server и разархивируем ее в любое удобное для Вас место. Программа работает без установки и требует минимальных настроек. Создадим папку «FTP_SERVER», к которой мы предоставим доступ.
Запустим программу и перейдем на закладку «Конфигурация»:

В поле «IP-адрес» нужно вписать IP-адрес компьютера, на котором запущен FTP-сервер. Если у Вас дома один компьютер и Ваш ADSL-модем имеет адрес 192.168.1.1, а в настройках модема ничего не менялось, то адрес компьютера будет 192.168.1.2. Это можно узнать, щелкнув по значку сетевого подключения правой кнопкой и выбрав в меню пункт «Состояние», затем перейдя на вкладку «Поддержка», или выполнением команды «ipconfig» в командной строке (нажимаем «Win+R», вводим «cmd» без кавычек, и в открывшемся окне набираем «ipconfig» также без кавычек). Думаю, все остальные параметры в объяснении не нуждаются («Автозапуск», «Запуск свернутой в трей», «Автоматически активировать сервер при старте»).
Теперь приступим к созданию пользователей, назначению им корневых директорий и прав. Жмём кнопку «Добавить» и создаем пользователя «guest» («Гость»). После нажатия «Ок» программа попросит указать для пользователя корневую директорию, выше которой он подняться не сможет, в каком месте она бы не находилась. Вы можете задать пароль и назначить права для пользователя. Количество пользователей ограничивается Вашей фантазией, но увлекаться не стоит, иначе сами запутаетесь. Как видно на изображении ниже, мы создали пользователя «guest», задали ему пароль и корневую директорию «FTP_SERVER», дали ему права на загрузку, выгрузку и создание директорий. При желании Вы можете подключить виртуальную директорию, которая может находиться где угодно, но будет видна в корневой директории пользователя. Эта возможность доступна в закладке «Директории».

Нажимаем кнопку «Старт» – и Ваш сервер начнет работать. Осталось проверить его работу. Нажимаем «Пуск – Выполнить» (либо комбинацию клавиш «Win+R») и пишем вот такой адрес: ftp://192.168.1.2.
Если всё в порядке, Вы увидите окно аутентификации пользователя, в котором вводим имя «guest» и пароль, который был задан для этого пользователя. Результатом работы Вы увидите окно проводника – это означает, что Ваш FTP-сервер работает. Но пока Ваш сервер доступен только локально.
Для того чтоб Ваш сервер был доступен из , нужно сделать ещё одно, а именно, настроить ваш ADSL-модем таким образом, чтобы он направлял запросы Вашему FTP-серверу. Это называется пробросом портов.

Настройка модема

Для этого Вам нужно войти в интерфейс модема. Скорей всего, его адрес 192.168.1.1. Уточните это в документации к Вашему модему. Вводить его нужно в адресной строке вашего браузера. Далее настройки будут на примере ADSL-модема D-Link, в других моделях модемов настройки мало чем отличаются.
Итак, Вы зашли в интерфейс модема, перейдите в раздел «Advanced Setup – NAT – Virtual Server» и нажимаем кнопку «Add». В открывшемся окне выбираем из списка «FTP Server», после чего в строке «Server IP Address» пишем адрес компьютера, на котором у Вас запущен FTP-Server (в нашем случае – 192.168.1.2), жмём «Add/Apply» и перезапускаем модем. После загрузки модема Вы можете отправить письма своим друзьям и сообщить им, что Вы рады предоставить им доступ к вашему собственному FTP-серверу для обмена файлами. Не забудьте сообщить им адрес, который Вы зарегистрировали в сервисе DynDNS.com. Для большего удобства, чтоб Вам не пришлось объяснять своим друзьям, как, куда и что им нужно вводить, Вы можете сами создать ярлык для подключения и отправить его по почте.

Создания ярлыка подключения

Для этого Вам нужно открыть панель управления и щелкнуть значок «Сетевое окружение», далее в сетевых задачах выбираем «Добавить новый элемент в сетевое окружение». Запустится мастер добавления в сетевое окружение. Жмём «Далее» и в строке «Сетевой адрес или адрес в Интернете» вписываем адрес, который вы зарегистрировали в системе DynDNS.com. В следующем окне снимаем галочку «Анонимный вход» и вводим имя пользователя «guest». Далее даем имя ярлыку, например, «MyFTP_Server», и завершаем работу мастера. Галочку «Открыть это место в сетевом окружении по завершению работы мастера» можно убрать, потому что при открытии этого адреса Вы попадёте в интерфейс настройки модема, для Вас Ваш сервер доступен локально по адресу компьютера, на котором запущен FTP-сервер. Теперь Вы можете отправить этот ярлык по почте со словами «Оцените друзья, как я крут, у меня собственный FTP-сервер».
Стоит обратить внимание читателей МирСоветов, что FTP-сервер прекрасно работает с менеджером загрузки Download Master и поддерживает многопоточность, докачку файлов, а также прекрасно работает с любым FTP-клиентом.
Вот мы и закончили создание и запуск собственного FTP-сервера на домашнем компьютере, не так уж это сложно, не правда ли, и без каких-либо затрат. Зато как можно облегчить обмен файлами между пользователями и на хорошей скорости, без каких-либо ограничений.
Желаю всем успехов в Ваших начинаниях.

В этом разделе будет кратко рассмотрена история и технические сведения, касающиеся протокола FTP. Для получения подробной информации смотрите спецификации .

Исторические сведения

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

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

Те времена прошли и многое изменилось. Технологический прогресс шел быстрее, чем кто-либо мог себе представить, одновременно выросло новое поколение пользователей. Интернет теперь - повсеместное явление, благодаря которому миллионы людей общаются друг с другом множеством разных способов. Главное ощутимое изменение: Интернет стал враждебным. Доступность и открытость сети привлекла злонамеренных пользователей, активно эксплуатирующих ошибки и неопытность других.

Побочным эффектом такого развития событий стали, следующие явления:

  • NAT -роутеры. Большинство сети использует протокол IPv4 , имеющий ограниченное адресное пространство (IPv6 разработан решить эту проблему). Благодаря NAT-роутерам системы с большим количеством устройств могут пользоваться одним и тем же IP-адресом.
  • Персональные файрволы для защиты пользователей от недоработок операционных систем и приложений.

В большинстве случаев эти явления конфликтуют с работой протокола. Ситуацию ухудшают недоработки в самих роутерах и файрволах.

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

Технические сведения

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

Существует два способа создания этого подключения: активный и пассивный режимы.

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

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

В обоих случаях файл/листинг будут переданы через подключение для передачи данных.

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

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

Типичная сетевая конфигурация может выглядеть так:

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

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

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

NAT-роутеры

У большинства пользователей широкополосного подключения NAT-роутер расположен между их компьютером и сетью. Это может быть самостоятельное устройство (возможно беспроводной роутер), или же встроенный роутер в DSL- или кабельном модеме. В среде NAT все устройства за роутером составляют локальную сеть (LAN), каждое из устройств в сети имеют локальный IP-адрес (четыре небольших числа разделённых точками). NAT-роутер в свою очередь имеет свой локальный IP-адрес, а также внешний IP-адрес для идентификации в глобальной сети. Локальные адреса действительны только внутри LAN, для удаленного устройства они не имеют смысла. Пример:

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

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

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

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

Файрволы

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

В особенности при использовании FTP пользователи файрвола могут получать такие сообщения:

Trojan Netbus заблокирован на порту 12345, который используется процессом FileZilla.exe

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

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

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

Приведем пример. Предположим, что клиент находится за NAT-роутером и пытается подключиться к серверу. Предположим также, что клиент не осведомлен в том, что он находится за NAT и использует активный режим. Клиент отсылает команду PORT со своим локальным, немаршрутизируемым IP-адресом, серверу:

PORT 10,0,0,1,12,34

Эта команда указывает серверу на подключение по адресу 10.0.0.1 на порту 12*256+34 = 3106

После этого NAT-роутер бесшумно подменяет команду, включая внешний IP-адрес, а также создает временный порт для переброски FTP-сессии, возможно даже на другом порту:

PORT 123,123,123,123,24,55

Эта команда указывает серверу на подключение по адресу 123.123.123.123 на порту 24*256+55 = 6199

Благодаря такому поведению NAT-роутер позволяет неправильно настроенному клиенту использовать активный режим.

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

  • NAT-роутер слепо предполагает, что некоторые подключения принадлежат FTP основываясь на таких данных, как целевые порты или ответы сервера:
    • Нет никакой гарантии относительно используемого протокола, несмотря на автоматическое определение (такие случаи называют ложной тревогой ). Хоть это и маловероятно, вполне допустимо, что в будущих версиях протокола FTP синтаксис команды PORT может измениться. NAT-роутер, модифицируя команду PORT, изменяет без ведома пользователя параметры, которые он не поддерживает, из-за чего соединение будет разорвано.
    • Определение протокола роутером может не распознать FTP. Предположим, что роутер следит только за целевым портом, а если этот порт 21-ый, он будет распознан как FTP. Подключения в активном режиме от неправильно настроенного клиента к серверу на 21-ом порту будут работать, но подключения к другим серверам на нестандартных портах - нет.
  • Очевидно, что NAT-роутер не сможет модифицировать подключение, если FTP-сессия зашифрована, оставляя пользователя в недоумении, т.к. работать будут только незашифрованные подключения.
  • Предположим, что клиент за NAT-роутером отсылает "PORT 10,0,0,1,12,34". Каким образом NAT-роутер осведомлен в том, что клиент настроен неправильно? Также возможен случай с правильно настроенным клиентом, который инициирует FXP (сервер-сервер) передачу между сервером, к которому он подключен и устройством, которое находится в локальной сети сервера.

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

В этом подразделе мы рассматривали сочетание NAT-роутера на стороне клиента в активном режиме, те же рассуждения применяются и в случае сервера за NAT и ответами на команду PASV.

Настройка клиента FileZilla

Очевидно, что для подключения к любому серверу ваш файрвол должен разрешить такие действия для FileZilla. Большинство обычных FTP-серверов используют 21-ый порт, SFTP-серверы - 22-ой, а FTP через SSL/TLS (неявный режим) по умолчанию - 990-ый. Номера портов не являются жестко заданными, поэтому лучше всего разрешить исходящие подключения на любой порт.

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

Пассивный режим

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

Активный режим

В активном режиме клиент открывает сокет и ожидает от сервера подключения для передачи.

По умолчанию клиент FileZilla запрашивает у операционной системы IP-адрес и свободный номер порта. Такая конфигурация сработает только в случае прямого соединения с интернетом без NAT-роутеров, также ваш файрвол должен разрешать создание подключений на всех портах выше 1024-го.

Если у вас присутствует NAT-роутер, вам нужно указать FileZilla внешний IP-адрес, в противном случае соединения в активном режиме не сработают для серверов вне вашей локальной сети:

  • Статический IP-адрес можно указать в диалоге настройки FileZilla.
  • Если ваш IP-адрес динамический, у вас есть возможность разрешить FileZilla получать внешний IP-адрес на специальном сайте автоматически каждый раз при запуске. Никакая информация не будет передана от вас на этот сайт, кроме версии используемого клиента FileZilla.

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

TCP

Настройка и тестирование сервера FileZilla

Настройка сервера по большей части повторяет настройку клиента, главным отличием является то, что в случае сервера активный и пассивный режимы меняются ролями.

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

  • Роутер заблокирует доступ к своему внешнему адресу изнутри локальной сети как возможную атаку
  • Роутер перебросит соединение вашему провайдеру, который заблокирует его как возможную атаку.

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

Активный режим

Убедитесь, что серверу FileZilla разрешено создавать исходящие подключения по любому порту, т.к. в этом режиме клиент определяет порт для соединения.

На локальной стороне подключения сервер FileZilla пытается использовать порт со значением на единицу ниже, чем у порта для контрольного соединения (к примеру, порт 20, если сервер принимает соединения на порту 21). Тем не менее, это не всегда возможно, поэтому не следует всегда полагаться на эту особенность.

Пассивный режим

Настройка сервера в этом случае практически повторяет настройку клиента в активном режиме.

В пассивном режиме сервер открывает сокет и ожидает соединения от клиента.

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

При наличии NAT-роутера вам нужно сообщить серверу FileZilla ваш внешний IP-адрес, в противном случае соединения в пассивном режиме будут работать только внутри локальной сети:

  • Статический IP-адрес можно указать в диалоге настройки сервера FileZilla.
  • Если ваш IP-адрес динамический, у вас есть возможность разрешить серверу FileZilla получать внешний IP-адрес на специальном сайте автоматически при каждом запуске. Никакая информация не будет передана от вас на этот сайт, кроме версии используемого сервера FileZilla.

Если вы не уверены в своем выборе, используйте второй вариант.

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

Доступные порты находятся в диапазоне от 1 до 65535, порты ниже 1024-го зарезервированы для остальных протоколов. Для активного режима FTP лучшим выбором является номер порта равный или выше 50000. В связи с устройством протокола TCP (протокол, который находится ниже уровня FTP и используется для передачи данных), порт не может быть использован повторно сразу после каждого подключения. Таким образом, диапазон портов не должен быть слишком узким, в противном случае вы не сможете передать много файлов малого размера. В большинстве случаев достаточно диапазона в 50 портов.

Решение проблем

К сожалению, множество персональных файрволов и пользовательских роутеров имеют свои недоработки или, в некоторых случаях, даже способны саботировать работу FTP (например SMC Barricade v1.2).

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

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

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

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

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

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

Таймауты при передаче больших файлов

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

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

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

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

Препятствием этому служит то, что многие роутеры и файрволы разрывают соединения, которые не использовались меньше чем 2 и 4 минуты. Такое поведение нарушает спецификацию протокола TCP, в RFC 5382 это указано достаточно ясно. Другими словами, роутеры и файрволы, разрывающие соединение раньше нужного момента, нельзя признать рабочими, т.к. они не могут использоваться при длительной передаче данных через FTP. К сожалению, производители роутеров потребительского класса и поставщики файрволов не заботятся о соблюдении спецификаций.

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

Настройка сервера FileZilla под Windows Firewall

Если вы испытываете проблемы при настройке сервера FileZilla при работающем Windows Firewall (в особенности, если клиент, подключающийся к такому серверу получает сообщение об ошибке "Невозможно получить листинг директории"), вам нужно добавить сервер FileZilla в список исключений Windows Firewall. Для этого вам нужно сделать следующие шаги:

  • Откройте Windows Firewall из Панели Управления
  • Если вы пользуетесь Vista, нажмите "Изменить настройки"
  • Выберите вкладку "Исключения"
  • Нажмите "Добавить программу.."
  • НЕ выбирайте "интерфейс сервера FileZilla" из списка, вам нужно нажать на "Просмотр..."
  • Найдите установочную директорию сервера FileZilla (обычно это "C:\Program Files\FileZilla Server\")
  • Выберите "FileZilla server.exe" и нажмите открыть (повторим еще раз, НЕ ВЫБИРАЙТЕ "FileZilla Server Interface.exe")
  • Выберите "FileZilla server.exe" из списка и нажмите "Ok"
  • Удостоверьтесь в том, что "FileZilla server.exe" находится в списке исключений и отметьте соответствующий пункт
  • Нажмите "Ok" для закрытия окна

Это обеспечивает работу пассивного режима. Если после этого вы все равно испытываете проблемы при подключении (внутри или извне сети), проверьте настройки вашего роутера или попробуйте добавить номер порта в настройках Windows Firewall во вкладке "Исключения".

Обратитесь к 931130 KB-статье от Microsoft, описывающей работу FileZilla со включенными сервисами "Маршрутизация и удаленный доступ" или "Шлюз уровня приложения".

Здравствуйте админ, объясните мне пожалуйста, что такое FTP сервер и могу ли я сам создать его на своём компьютере?

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

Привет друзья! Наш Ro8 написал для Вас классную статью на эту тему, читаем.

Во-первых, FTP - это протокол передачи файлов по сети интернет по принципу «клиент-сервер» , а FTP сервер, это хранилище файлов в интернете, то есть - обычный компьютер с установленной Windows 7, 8.1 или Windows Server 2012 и несколькими жёсткими дисками большого объёма, на которых могут быть расположены любые ваши файлы. На этом компьютере установлена программа, например - FileZilla Server , подключиться к этому компьютеру может любой другой с помощью: командной строки , проводника Windows и различных программ, рассмотрим в нашей статье две: FileZilla Client , и Total Commander . После подключения к FTP-серверу вы можете закачивать на него любые файлы (фильмы, музыку и т.д) и также скачивать.

Управление FTP-сервером будет осуществлять администратор, установивший программу - FileZilla Server. Именно в ней можно каждому пользователю присвоить различные права доступа (возможность изменения файлов на сервере) : Append (возможность изменения файлов), Read (только чтение), Write (запись), Delete (удаление). Естественно, большей части пользователей можно не давать права Delete (удаление).

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

Как происходит работа

В качестве программной реализации FTP сервера в статье будет рассмотрена программа FileZilla Server, которая будет установлена на машину с Windows Server 2012

Также в качестве машины с которой будет производится подключение к созданному FTP серверу выступает компьютер с предустановленной Windows 8.1 Enterprise (x64)

Для того, чтобы машина с Windows 8.1 могла подключиться к FTP серверу, на нее будет произведена установка программы FileZilla Client (один из способов подключения с помощью данной программы)

Переходим по адресу https://filezilla-project.org и скачиваем FileZilla Server и FileZilla Client

Скачанный файл FileZilla Server запускаем на машине с Windows Server 2012 , а файл FileZilla Client на машине с Windows 8.1 . Обе программы устанавливаются одинаково. В первую очередь установим программу FileZilla Server.

Установка FileZilla Server

После запуска скачанного файла FileZilla Server на Windows Server 2012 нажимаем далее

Нажимаем Установить

Установить

Процесс установки FileZilla Server

Установка завершена

После установки откроется вот такое окно, в котором вводим локальный адрес FTP сервера и нажимаем OK

После ввода локального адреса FTP сервера появится основное окно программы FileZilla Server

Произведем некоторые настройки выбрав Edit-Users

На вкладке General для добавления нового пользователя нажимаем на кнопку Add

Вводим имя пользователя. ОК

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

Переходим на вкладку Shared Folders. На данной вкладке добавим папку FTP01 которая будет доступна созданному пользователю Ro8. Нажимаем Add

Указываем заранее созданную папку FTP01. ОК

Выделяем добавленную папку и указываем для нее права доступа: - Read (только чтение), Write (запись), Delete (удаление), Append (возможность изменения файлов в данной папке)

Определяем ip адрес машины с Windows Server 2012 (192.168.1.4)

Установка FileZilla Client

Переходим на машину с Windows 8.1 и производим установку программы FileZilla Client

Принимаем лицензионное соглашение

Установка

Установка завершена

У нас есть сеть, представленная на схеме

Выполним подключение к FTP серверу различными способами.

Подключимся к FTP серверу используя командную строку

На машине с Windows 8.1 запустим командную строку.

Указываем имя пользователя (Ro8 ) и вводим пароль. Пароль при вводе не отображается

Logged on означает что мы произвели вход на FTP сервер

Создадим папку My_Backup_win8.1 на FTP сервере - введя команду mkdir My_Backup_win8.1

Посмотрим список папок на FTP сервере - введя команду ls

Как видим, на FTP сервере присутствует папка My_Backup_win8.1

Закрываем соединение с FTP сервером введя команду bye

Подключение к FTP-серверу с помощью программы T otal Commander

Запустим на машине с Windows 8.1 файловый менеджер Total Commander. Для настройки подключения к FTP серверу нажимаем на кнопку указанную на скриншоте

Нажимаем Добавить

Указываем имя соединения (произвольно), сервер и порт (сервер это ip адрес FTP сервера, порт прописываем 21). Также указываем имя пользователя и пароль. ОК

Выделяем созданное FTP соединение и нажимаем Соединится

Соединение с FTP сервером установлено

Для отключения от FTP сервера нажимаем Отключение

Отключение от FTP сервера выполнено

Подключение к FTP-серверу с помощью программы FileZilla Client

Запустим программу FileZilla Client

Откроется главное окно программы



Эта статья также доступна на следующих языках: Тайский

  • Next

    Огромное Вам СПАСИБО за очень полезную информацию в статье. Очень понятно все изложено. Чувствуется, что проделана большая работа по анализу работы магазина eBay

    • Спасибо вам и другим постоянным читателям моего блога. Без вас у меня не было бы достаточной мотивации, чтобы посвящать много времени ведению этого сайта. У меня мозги так устроены: люблю копнуть вглубь, систематизировать разрозненные данные, пробовать то, что раньше до меня никто не делал, либо не смотрел под таким углом зрения. Жаль, что только нашим соотечественникам из-за кризиса в России отнюдь не до шоппинга на eBay. Покупают на Алиэкспрессе из Китая, так как там в разы дешевле товары (часто в ущерб качеству). Но онлайн-аукционы eBay, Amazon, ETSY легко дадут китайцам фору по ассортименту брендовых вещей, винтажных вещей, ручной работы и разных этнических товаров.

      • Next

        В ваших статьях ценно именно ваше личное отношение и анализ темы. Вы этот блог не бросайте, я сюда часто заглядываю. Нас таких много должно быть. Мне на эл. почту пришло недавно предложение о том, что научат торговать на Амазоне и eBay. И я вспомнила про ваши подробные статьи об этих торг. площ. Перечитала все заново и сделала вывод, что курсы- это лохотрон. Сама на eBay еще ничего не покупала. Я не из России , а из Казахстана (г. Алматы). Но нам тоже лишних трат пока не надо. Желаю вам удачи и берегите себя в азиатских краях.

  • Еще приятно, что попытки eBay по руссификации интерфейса для пользователей из России и стран СНГ, начали приносить плоды. Ведь подавляющая часть граждан стран бывшего СССР не сильна познаниями иностранных языков. Английский язык знают не более 5% населения. Среди молодежи — побольше. Поэтому хотя бы интерфейс на русском языке — это большая помощь для онлайн-шоппинга на этой торговой площадке. Ебей не пошел по пути китайского собрата Алиэкспресс, где совершается машинный (очень корявый и непонятный, местами вызывающий смех) перевод описания товаров. Надеюсь, что на более продвинутом этапе развития искусственного интеллекта станет реальностью качественный машинный перевод с любого языка на любой за считанные доли секунды. Пока имеем вот что (профиль одного из продавцов на ебей с русским интерфейсом, но англоязычным описанием):
    https://uploads.disquscdn.com/images/7a52c9a89108b922159a4fad35de0ab0bee0c8804b9731f56d8a1dc659655d60.png