Как настроить filezilla server в локальной сети. Настройка FileZilla, соединение компьютера с хостингом. Редактирование файлов прямо из фтп клиента

Успешная передача данных по FTP требует очень точной и скрупулезной настройки. Правда, в новейших программах-клиентах, в значительной мере данный процесс автоматизирован. Тем не менее, надобность вносить основные настройки для соединения все-таки осталась. Давайте на подробном примере изучим, как производится настройка программы FileZilla – самого популярного FTP-клиента на сегодняшний день.

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

Для этих целей переходим в раздел верхнего меню «Файл», и выбираем пункт «Менеджер сайтов».

Можно также перейти в Менеджер сайтов, открыв соответствующий значок на панели инструментов.

Перед нами открывается Менеджер сайтов. Чтобы добавить подключение к серверу, жмем на кнопку «Новый сайт».

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

Далее переходим к правой части Менеджера сайтов, и начинаем заполнять настройки для учетной записи «Новый сайт» (или как вы по-другому её назовете). В графу «Хост» записываем адрес в буквенной форме или IP-адрес сервера, с которым собираемся соединиться. Данное значение нужно получить на самом сервере от администрации.

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

В графе шифрование, тоже по возможности оставляем данные по умолчанию – «Использовать явный FTP через TLS если доступен». Это позволит максимально защитить соединение от злоумышленников. Только если возникают проблемы с подключением по защищенному соединению TLS, есть смысл выбрать пункт «Использовать обычный FTP».

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

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

В остальных вкладках Менеджера сайтов «Дополнительно», «Настройки передачи» и «Кодировка» никаких изменений вносить не нужно. Все значения должны оставаться по умолчанию, и только в случае каких-то неполадок в соединении, в соответствии с их конкретными причинами, в данных вкладках можно вносить изменения.

После того, как мы ввели все настройки, чтобы произвести их сохранение, жмем на кнопку «OK».

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

Общие настройки

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

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

В первой открывшейся вкладке «Соединение» вводятся такие параметры подключения, как время ожидания, максимальное число попыток подключения и пауза между ожиданиями.

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

В разделе «Передачи» производится настройка количества одновременных передач. В данной графе можно выбрать значение от 1 до 10, но по умолчанию стоит 2 подключения. Также при желании, вы можете в этом разделе указать ограничение скорости, хотя по умолчанию она не ограничена.

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

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

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

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

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

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

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

Большинство пользователей ПК хотя бы раз слышали о приложении FileZilla, которое через клиентский интерфейс передает и принимает данные по протоколу FTP. Но мало кто знает, что у данного приложения существует серверный аналог – FileZilla Server. В отличие от обычной версии, данная программа реализует процесс передачи данных по протоколам FTP и FTPS на серверной стороне. Давайте изучим основные настройки программы FileZilla Server. Это особенно актуально, учитывая тот факт, что существует только англоязычный вариант данной программы.

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

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

Общие настройки

Теперь перейдем к общим настройкам программы. Попасть в секцию настроек можно, нажав на раздел верхнего горизонтального меню Edit, а затем выбрав пункт Setting.

Перед нами открывается мастер настройки программы. Сразу же мы попадем в раздел Основных настроек (General Settings). Тут нужно установить номер порта, к которому будут подключаться пользователи, и указать максимальное их число. Нужно отметить, что параметр «0» означает неограниченное количество пользователей. Если по какой-то причине их число нужно ограничить, то проставляйте соответствующую цифру. Отдельно устанавливается количество потоков. В подразделе «Timeout settings», настраивается величина таймаута до следующего подключения, при отсутствии отклика.

В разделе «Welcome message» можно вписать приветственное сообщение для клиентов.

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

Во вкладке «IP Filter», наоборот, вписывают заблокированные адреса тех пользователей, подключение которых к серверу нежелательно.

В следующем разделе «Passive mode setting» можно вписать параметры работы в случае применения пассивного режима передачи данных по FTP. Эти настройки довольно индивидуальны, и без особой надобности их трогать не рекомендуется.

Подраздел «Security Settings» отвечает за безопасность подключения. Как правило, тут производить изменения не требуется.

Во вкладке «Miscellaneous» производятся мелкие настройки внешнего вида интерфейса, например его сворачиваемости, и установка других малозначительных параметров. Лучше всего, эти настройки тоже оставить без изменений.

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

Во вкладке «Logging» производится включение создания лог-файлов. Тут же можно указать их допустимый максимальный размер.

Название вкладки «Speed Limits» говорит само за себя. Тут при необходимости устанавливается размер скорости передачи данных, как по входящему каналу, так и по исходящему.

В разделе «Filetransfer compression» можно включить компрессию файлов при их передаче. Это поможет сэкономить трафик. Тут же следует указать максимальный и минимальный уровень компрессии.

В разделе «FTP over TLS settings» настраивается защищенное соединение. Тут же при его наличии следует указать местонахождение ключа.

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

Настройки пользовательского доступа

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

Чтобы добавить нового участника, нужно нажать на кнопку «ADD».

В открывшемся окне требуется указать имя нового пользователя, а также, при желании, группу, к которой он относится. После того, как данные настройки произведены, жмем на кнопку «OK».

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

Во вкладках «Speed Limits» и «IP Filter» можно выставить индивидуальные ограничения скорости и блокировки для конкретного пользователя.

После завершения всех настроек, жмем на кнопку «OK».

Настройки групп

Теперь переходим в раздел редактирования настроек групп пользователей.

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

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

Здравствуйте админ, объясните мне пожалуйста, что такое 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

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

В этом разделе будет кратко рассмотрена история и технические сведения, касающиеся протокола 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 со включенными сервисами "Маршрутизация и удаленный доступ" или "Шлюз уровня приложения".

Доброго времени суток, дорогие читатели! Как Вы поняли из заголовка, сегодня поговорим про FileZilla Server и создание своего FTP сервера как такового.

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

О том, что такое FTP , если кто-то вдруг не в курсе, Вы можете узнать в этой моей статье " " или сразу приступать к чтению (в рамках данной статьи есть пару слов о самом протоколе).

Подготовка к установке своего FTP-сервера

Как и обещал, для начала кратко о том, что такое FTP для тех, кто не знает:

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

Для установки Вам необходимо скачать один из множественных дистрибутивов, которые помогут развернуть FTP -сервер. Лично я рекомендую Вам использовать FileZilla Server , ибо он, как и некогда упомянутый мной клиент (см.статью по ссылке выше), предельно прост в установки и настройке, и к тому же бесплатен.

Установка FTP FileZilla Server

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

На первом окне нужно согласиться с лицензионным соглашением, нажмите “I Аgree ”.

  • Стандартный (Standart) - вариант для установки с нуля для полного функционирования сервера.
  • Полный (Full) - почти тоже самое, но так же в папку установки будут скопированы исходный код программы, на случай, если вы что-то захотите в ней изменить.
  • Только FTP сервис (Service only) - устанавливается непосредственно FTP сервис, без доступа к нему через интерфейс. Полезно, если вы планируете управлять своим файлохранилищем с другого компьютера.
  • Интерфейс управления (Interface only) - в отличие от предыдущего пункта, ставится только графическая оболочка управления сервером, но не он сам. Используйте, если вы хотите удаленно получить доступ к своему FTP серверу.
  • Выборочная установка (Custom) - Вы вольны выбирать, что хотите поставить на свой компьютер.

На следующем окне необходимо выбрать папку установки, например, “C:\Program Files\FileZilla Server ”. После выбора переходите к следующему окну (Next ).

Теперь установщик попросит нас выбрать способ установки и запуска сервера.

Есть три варианта:

  • Как службу и запускать при входе в систему
  • Как службу и запускать вручную
  • Простая установка, запускать вручную

Рекомендуется выбрать первый или второй вариант. Разница лишь в том, что во втором случае для работы сервера, Вам необходимо будет переходить в "Панель управления - Администрирование - Управление службами ", находить там службу в списке и запускать её самостоятельно, надавив на кнопочку запуск.

Порт и первичный запуск FileZilla Server

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

Так же по-умолчанию, отмечена опция запустить сервер после установки (Start Server after setup completes). Можете оставить эту галочку, а можете убрать. Дело Ваше. Сделав оное, переходим к последнему окну, используя кнопочку Next .

Здесь выбираем варианты запуска интерфейса.

Их опять же три:

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

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

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

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

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

Галочка (Start Interface after setup completes ) в данном окне, опять же, задает запуск интерфейса сразу в конце установки.

Ну и, разобравшись со всем оным, наконец-то можно начать установку сервера (используя, само собой, кнопочку "Install ") :)

Первичная настройка FTP FileZilla Server

Итак, после установки, при первом запуске интерфейса, появится маленькое окошко, где требуется указать адрес и порт для подключения, а так же пароль администратора (при первой установки его нет). Можно отметить опцию "Всё время подключаться к этому серверу" (Always connect to this server). Нажимаем "Ok ".

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

Теперь перейдем к настройкам. Это делается путем перехода по адресу "Edit -> Settings " или кликом на кнопку на панели интерфейса:

Перед вами откроется окно настроек. На первой вкладке (General Settings) можно задать следующие параметры:

Сверху вниз по скриншоту:

  • Порт, по которому клиенты будут подключаться к серверу
  • Максимальное количество клиентов
  • Количество потоков
  • Различные таймауты (три штуки)

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

Вторая настройка отвечает за максимальное количество подключений. По-умолчанию значение параметра стоит “0 ”, это означит, что их количество не ограничено. Менять этот параметр стоит в том случае, например, если Ваш интернет канал не справляется с нагрузкой, т.к к Вам подключается уж очень много людей.

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

В подпункте “IP Filter ” можно задать IP адреса (или их диапазон), которым будет запрещено подключаться к Вашему серверу, а так же задать исключения из заданного диапазона (второе поле).

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

Вкладка “Passive mode settings ” регламентирует параметры для пассивного подключения к серверу и отклик оного.

Менять здесь что-либо стоит только в том случае, если Вы подключены к интернету не напрямую, а через роутер, на котором обитает фаерволл и NAT . В этом случае может потребоваться указать в поле "Use the following IP " свой внешний IP -адрес (можно узнать у провайдера или в интерфейсе роутера), а так же задать диапазон портов (Use custom port range), через которые клиент сможет подключаться к Вашему серверу в пассивном режиме.

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

Раздел настроек “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 . Для обычного использования эта опция не требует настройки.

Остаточные настройки FTP сервера - скорости, шифрование и тп

Далее у нас “Speed Limits ”. Оная может помочь ограничить скорость входящих и исходящих соединений. Есть два пути ограничения: задать постоянное ограничение на все время или создать правила на конкретный день и/или час. Ограничения задаются в килобайтах.

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

Чтобы настроить защищенное соединение между клиентом и сервером, надо перейти к пункту настроек “SSL/TLS Settings ”. Здесь нужно включить поддержку этих протоколов и указать пути к закрытому ключу, файлу сертификата и пароль. Для среднестатистического пользователя в этом нет необходимости, поэтому в этой статье рассматриваться не будет.

И наконец, можно включить автоматический бан пользователей после n -ых попыток неудачных подключений, и время бана. Для этого стоит перейти на вкладку “Autobans ” и, если Вам оное необходимо, то выставить галочку "Enable automatic bans ", указать в графе "Ban IP adress after " количество попыток после которых будет осуществляться блокировка, а так же время блокировки в поле "Ban for ".

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

Первоначальная настройка аккаунтов пользователей (users) и шары (share) в FileZilla Server

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

Итак, для добавления нового аккаунта следуем, в главном окне интерфейса, по пути “Edit -> Users ”. Перед нами предстанет окно работы с пользователями.

Для добавления нового необходимо нажать “Add ”. Далее необходимо будет задать его имя, например, anonymous, и принадлежность к группе (в нашем случае указывать не будем). Задаем, жмем “Ok ”.



Теперь для нашего нового пользователя можно задать пароль и ограничение по количеству соединений. При необходимости сделайте оное, выставив галочку "Password " и указав его (пароль) в окошке напротив. Настоятельно рекомендуется использовать пароли для пользователей в целях безопасности.

Далее переходим на вкладку “Share Folders ”. Здесь, собственно, мы задаем к каким именно папкам пользователь будет иметь доступ. Делается это просто: жмем “Add ” и выбираем нужную папку на диске. Слева можно задать права доступа к ней: только чтение - “Read ”, запись - “Write ”, удаление - “Delete ” и возможность изменения существующих файлов в директории - “Append ”. Ниже можно разрешить создание, удаление, получение списка файлов и распространение разрешений на подкаталоги.

Задаём необходимые Вам параметры и папки и.. Жмакаем ОК

На этом первоначальная настройка закончена. Для домашнего пользования большего и не надо;)

Доступ пользователей к серверу FileZilla Server

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

Узнать внешний IP -адрес можно, обратившись к провайдеру, посмотрев в настройках роутера или же, попросту, воспользовавшись одним из многочисленных сервисов, как например, (как Вы наверняка догадались, Вам нужно то, что написано под текстом “Ваш IP адрес:” ;)).

Послесловие

Вот такие вот дела.

Не смотря на то, что статья максимально ориентирована для небольшого домашнего использования, я постарался максимально подробно объяснить все необходимые настройки и нюансы FileZilla Server .

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

PS: За существование оной статьи отдельное спасибо другу проекта и члену нашей команды под ником “Kellis"у “.

Обзор технологий