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

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

Виталий Леонидович Черкасов
Системный администратор, инженер компьютерных систем.
Основное назначение FTP сервера – это передача файлов по сети. Дома его используют для обмена фотографиями и другими данными между друзьями и родственниками. На предприятии – для обмена документами и другой служебной информацией между филиалами. При этом располагаться на FTP серверах могут большие файлы, которые не отправишь по e-mail. Этот протокол передачи данных также используется для загрузки контента на сервер web-сайта.
Общее описание протокола
Традиционно, у нас два формата. Видео и текстовый. Видеоформат Вы можете увидеть ниже, а текстовый сразу после него. Какой из них Вам ближе, – смотрите сами.
(англ. File Transfer Protocol — протокол передачи файлов) — протокол, предназначенный для передачи файлов в компьютерных сетях. позволяет подключаться к серверам этого протокола и просматривать содержимое каталогов, загружать файлы с сервера или на сервер.
Формально это что-то вроде подключения к некой папке, которая находится на другом компьютере/сервере, используя сеть или интернет. В случае, если передача файла была прервана по каким-либо причинам, протокол предусматривает средства для докачки файла, что бывает очень удобно при передаче больших файлов.
является одним из старейших прикладных протоколов, появившимся задолго до HTTP, в году. Он и сегодня широко используется для распространения программного обеспечения и передачи файлов.
Доброго времени суток, дорогие читатели! Как Вы поняли из заголовка, сегодня поговорим про и создание своего сервера как такового.
В последнее время приходит много сообщений с просьбами рассказать о том, как установить свой собственный сервер в домашних (или не очень) условиях.

Время на прочтение
Сразу оговорюсь: подробных инструкций/конфигураций не предоставляю, просто делюсь мыслями как можно сделать. Так же, под FTP подразумеваю не только классический FTP, но также SFTP и SSL-FTP – это статья про безопасность паролей, а не протокола как такового.
Представьте хостинг компанию предоставляющую хостинг аккаунты с повышенной безопасностью, а именно с двухфакторной аутентификацией.
Сложного ничего нет, надо просто внедрить на сервере один или несколько вариантов подключаемых модулей аутентификации со вторым фактором (например code.google.com/p/google-authenticator/wiki/PamModuleInstructions или motp.sourceforge.net/#6 ) и привязать к ним пользователей.
В большинстве случаев, PAM можно указать и в конфигурации FTP серверов, и принципе проблема безопасности FTP будет решена таким же образом.
Проблема в другом; дело в том, что в зависимости от скорости соединения, настроек сервера/роутера или режима FTP соединения FTP сессия может прерываться при отсутствии активности в течение определённого времени (или даже просто прерываться в самый неподходящий момент). В «классическом» FTP клиент просто подключится еще раз, надо просто поставить галочку «сохранить пароль». В случае же двух факторной аутентификации это не сработает, придется вводить пароль и код с «токена» довольно часто, а это для конечного пользователя очень неудобно. Если как то можно убедить пользователя в необходимости использования «токена» при входе в систему, объяснить необходимость делать это в процессе загрузки файлов по несколько раз уже сложно.
Проблему, я надеюсь, объяснил. Теперь поделюсь идеей повышения удобства для конечных пользователей.
Генерация временных паролей для FTP
На самом деле, сам принцип не оригинален, я предлагаю сделать, что то вроде паролей приложений используемых для учетных записей Google с активированной двухэтапной аутентификацией.
Для этого нужно подобие веб-интерфейса для генерации паролей приложений. Сам веб-интерфейс будет доступен только с использованием двухфакторной аутентификации. После входа в систему, пользователь будет генерировать FTP пароль, который будет активен только в течение определённого времени и только для определённого IP адреса (по умолчанию будет предлагаться текущий адрес). Приблизительный интерфейс может выглядеть вот так:

При генерации скрипт заносит данные в таблицу базы данных (например, MySQL), а именно имя пользователя, IP адрес и timestamp указанного пользователем времени, а также сгенерированный FTP пароль, который и показывается пользователю в интерфейсе. Для доступа по FTP будет использоваться именно этот временный пароль. Таблица будет выглядеть вот так:

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

Если вы обращаетесь к подобного рода статьям, то лишний раз напоминать о сути и назначении подобных серверов, скорее всего, не имеет смысла, но для проформы стоит уточнить, что File Transfer Protocol по умолчанию использует порт 21 и может быть использован для просмотра как интернет браузером так и большинством файловых менеджеров в число которых входит и Windows Explorer.
Продолжая обязательное вступление, напомню что для нормальной работы в локальной сети вам необходимо будет открыть порт 21 в Fierwall’е серверного компьютера (очевидно того на котором вы будете производить настройку), а для доступа из внешней сети ещё и необходимо пробросить данный порт на роутере. Последние напоминания необходимы счастливым владельцам фаерволов и роутеров. Так что, если вы пользуетесь этими программами и устройствами, не будет лишним прочитать инструкции и выполнить настройку.
Начнём с того что убедимся в том, что наша операционная систем вообще умеет выполнять такую работу. Для этого просто смотрим на название сборки и всё что выше Home версии считаем пригодным для наших нужд.
Далее по шагам:
Находим на панели управления пункт «программы и компоненты» а в нём переходим на пункт «Включение или отключение компонентов Windows”

Открывшееся меню предложит нам список компонентов из которых мы должны найти и включить «службы IIS» и все её подслужбы. Нужно чтобы получилось так:

Нажимаем кнопку ОК и ждём когда Windows завершит установку.
Теперь нам нужно непосредственно запустить наш сервер. Во всё той же панели управления находим пункт «Администрирование», а в нём «диспетчер служб IIS»

В открывшемся окне в левой колонке открываем дерево до вкладки «Сайты» и жмём по этой вкладке правой клавишей. Выбираем «Добавить FTP-сайт»

После чего задаём имя сайта и каталог к которому физически будет обращаться протокол ftp

Далее определяются параметры запуска сервера и для упрощения доступа стоит указать запуск без SSL. Запускать ли его при запуске системы и привязывать ли его к конкретному адресу остаётся на ваше усмотрение.

На следующей странице ставим галочку напротив «Анонимный» и «Обычная» и жмём готово.

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

Здесь переходим в дополнительные параметры.
Затем нужно включить 2 правила для входящих подключений
- FTP-сервер (входящий трафик)
- Трафик FTP-сервера в пассивном режиме (входящий трафик FTP в пассивном режиме).

Для исходящих подключений в брандмауере нужно включить следующее правило «Трафик FTP-сервера (исходящий трафик FTP)».

Теперь необходимо создать пользователя для работы с сервером. Для чего открываем системную консоль. Нажимаем комбинацию клавиш Win+R и вводим в поле «mmc»

в открывшейся консоли нажмите Ctrl+M или меню «файл»- «Добавить или удалить оснастку». Откроется меню в котором нужно добавить «Локальные пользователи и группы»

Если вы выполнили всё правильно то у вас получится окно такого вида:

Теперь создаём группу для пользователя нашего FTP-сервера.
Нажимаем правой кнопкой мыши на «Группы» — «Создать новую группу»

Отдаём команду «создать» и переходим к созданию пользователя.

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

Нам необходимо указать разрешения группы для каталога, который мы указывали при создании сервера. Для этого открываем его свойства на вкладку «Безопасность» и жмём кнопку «Изменить»:

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

Вернёмся в настройки FTP —сервера
Перейдём к настройке правил авторизации на нашем сайте

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

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

Теперь Ваш FTP сервер настроен и полностью готов к работе. Не забудьте проверить Firewall и router на наличие открытых портов для сайта и можете смело приступать к работе.

FTP (от англ. File Transfer Protocol — протокол передачи файлов) — протокол, используемый для передачи файлов в ТСР-сетях.
Протокол был создан в 1971, еще задолго до появления стека TCP/IP, который увидел свет лишь в конце 70-х годов.
Изначально, в своей первой редакции, протокол использовал один и тот же канал для передачи команд и передачи данных.
Но уже в 1972 протокол стал очень похожим, на тот, с которым мы имеем дело сегодня — для обмена между сервером и клиентом создается отдельный канал управления, который работает на 21 порту, передача данных осуществляется по каналу данных, для которого создается отдельное соединение.
Последняя версия протокола была представлена в 1985 году.
Существенным недостатком FTP являются многочисленные уязвимости в защите, список которых был составлен и опубликован в 1999 году: проблема захвата портов, защиты имени пользователя, низкая стойкость к брутфорс-, спуф-, сниф-, скрытым атакам.
Данная проблема характерна для всех ранних версий протоколов (например, почтовых SMTP, POP, IMAP), разработанных до появления механизмов шифрования SSL, TLS.
Для решения этой проблемы рекомендуем использовать протокол передачи файлов с TLS-защитой — FTPS, при таком подходе шифруются два канала — канал управления и канал передачи данных.
Шаг 1. Установка FTP-компонента
1.2. В поле поиска вводим «Программы и компоненты», без кавычек.
1.3. Выбираем соответствующий пункт меню.
1.4. В появившемся окне, в левой колонке переходим в меню «Включение или отключение компонент Windows».
1.5. Выбираем компоненты Windows, которые следует установить — FTP-сервер и Консоль управления IIS.
1.6. Нажимаем «ОК».

Шаг 2. Конфигурирование FTP-сервера
2.2. В поле поиска вводим «Администрирование», без кавычек.
2.3. Выбираем соответствующий пункт меню.
2.4. В появившемся окне переходим в меню «Диспетчер служб IIS».

2.5 Переходим на вкладку «сайты», кликаем правой кнопкой мыши и выбираем «Добавить FTP-сайт».

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

Стандартный порт (21) оставляем без изменений.
Если планируется использование FTP-сервера на постоянной основе — ставим галочку «Запускать FTP-сайт автоматически». Выбираем «Без SSL».

2.8. Выбираем обычную проверку подлинности, поле авторизации оставляем без изменений. На этом настройка FTP-сервера завершена.

После настройки в меню «сайты» появится только что созданный FTP-сервер.

Шаг 3. Настройки брандмауэра
Для открытия соответствующих портов и разрешения работы служб FTP-сервера необходимо выполнить настройки брандмауэра Windows. Для этого:
3.2. В поле поиска вводим «Брандмауэр», без кавычек.
3.3. Выбираем соответствующий пункт меню.
3.4. Заходим в меню «Правила для входящих подключений» и включаем два правила касающиеся работы FTP-сервера.

3.5. Для включения необходимо нажать на каждом из правил правой кнопкой мыши и выбрать в меню пункт «Включить правило».

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

3.7. Переходим к правилам для исходящего подключения и, как в предыдущем пункте, активируем правило FTP Server (FTP Traffic-Out).
На этом настройка брандмауэра для FTP-сервера завершена.
Шаг 4. Создание FTP-пользоватей и назначение прав
4.2. В поле поиска вводим «Управление компьютером», без кавычек.
4.3. Выбираем соответствующий пункт меню.
4.4. Переходим в меню, расположенное в левой колонке — «Локальные пользователи». Нажимаем правой кнопкой мыши на пункт «Группы», выбираем «Создать группу».

4.6. Создадим пользователей, для которых будет доступен FTP-сервер.
Для этого в предыдущем меню «Локальные пользователи», нажимаем правой кнопкой мыши на пункте «Пользователи», выбираем «Новый пользователь» и заполняем поля как показано на рисунке.

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


4.9. Перейдем в панель управления FTP-сервером (п.2.1-2.4), после чего обратимся к меню «Правила авторизации FTP».

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

4.11. Перейдем в предыдущее меню и настроим «Ведение журнала FTP».

Выставляем максимально допустимый размер файла журнала — 1Гб или 1048576 байт, этого размера вполне достаточно для ведения подробного журнала.

Установка FTP FileZilla Server
После скачивания дистрибутива, собственно, запустите его установку (имеется ввиду, что надо кликнуть по скачанному -файлу) и следуйте рекомендациям ниже.
На первом окне нужно согласиться с лицензионным соглашением, нажмите “”.

Далее надо выбрать тип установки. Всего их пять:

- (Standart) – вариант для установки с нуля для полного функционирования сервера.
- (Full) – почти тоже самое, но так же в папку установки будут скопированы исходный код программы, на случай, если вы что-то захотите в ней изменить.
- Только FTP сервис (Service only) – устанавливается непосредственно FTP сервис, без доступа к нему через интерфейс. Полезно, если вы планируете управлять своим файлохранилищем с другого компьютера.
- (Interface only) – в отличие от предыдущего пункта, ставится только графическая оболочка управления сервером, но не он сам. Используйте, если вы хотите удаленно получить доступ к своему FTP серверу.
- (Custom) – Вы вольны выбирать, что хотите поставить на свой компьютер.
Для первой установки рекомендую выбрать стандартный вариант (). Нажмите “”.
На следующем окне необходимо выбрать папку установки, например, “C:Program FilesFileZilla Server”. После выбора переходите к следующему окну ().
Теперь установщик попросит нас выбрать способ установки и запуска сервера.

Есть три варианта:
- Как службу и запускать при входе в систему
- Как службу и запускать вручную
- Простая установка, запускать вручную
Рекомендуется выбрать первый или второй вариант. Разница лишь в том, что во втором случае для работы сервера, Вам необходимо будет переходить в “Панель управления – Администрирование – Управление службами”, находить там службу в списке и запускать её самостоятельно, надавив на кнопочку запуск.
Настройка и тестирование сервера FileZilla
Настройка сервера по большей части повторяет настройку клиента, главным отличием является то, что в случае сервера активный и пассивный режимы меняются ролями.
- Роутер заблокирует доступ к своему внешнему адресу изнутри локальной сети как возможную атаку
- Роутер перебросит соединение вашему провайдеру, который заблокирует его как возможную атаку.
Даже если вам удалось подключиться, у вас нет никакой гарантии того, что пользователю из внешней сети удастся это сделать и, кроме того, загружать файлы на ваш сервер. Единственное надежное средство проверки работы сервера — подключение извне вашей локальной сети.
Активный режим
Убедитесь, что серверу FileZilla разрешено создавать исходящие подключения по любому порту, т.к. в этом режиме клиент определяет порт для соединения.
На локальной стороне подключения сервер FileZilla пытается использовать порт со значением на единицу ниже, чем у порта для контрольного соединения (к примеру, порт 20, если сервер принимает соединения на порту 21). Тем не менее, это не всегда возможно, поэтому не следует всегда полагаться на эту особенность.
Пассивный режим
Настройка сервера в этом случае практически повторяет настройку клиента в активном режиме.
В пассивном режиме сервер открывает сокет и ожидает соединения от клиента.
Если вы не уверены в своем выборе, используйте второй вариант.
Если вы не хотите разрешать входящие соединения на всех портах, или ваш компьютер расположен за NAT-роутером, укажите серверу FileZilla использовать определенный диапазон портов для соединений в активном режиме. Этот диапазон также нужно будет открыть для вашего файрвола. При наличии NAT-роутера вам нужно перебросить эти порты на локальный компьютер, на котором установлен сервер FileZilla. Вы можете перебросить диапазон портов, или же каждый порт по отдельности, это зависит от модели вашего роутера.
Доступные порты находятся в диапазоне от 1 до 65535, порты ниже 1024-го зарезервированы для остальных протоколов. Для активного режима FTP лучшим выбором является номер порта равный или выше 50000. В связи с устройством протокола TCP (протокол, который находится ниже уровня FTP и используется для передачи данных), порт не может быть использован повторно сразу после каждого подключения. Таким образом, диапазон портов не должен быть слишком узким, в противном случае вы не сможете передать много файлов малого размера. В большинстве случаев достаточно диапазона в 50 портов.

Подготовка к установке своего FTP-сервера
Как и обещал, для начала кратко о том, что такое для тех, кто не знает:
(от англ.ile ransport rotocol) – это протокол передачи данных, который позволяет получить доступ к файлам на удаленном сервере. В данной технологии различают две стороны, серверную ( сервер) и клиентскую ( клиент). В случае, если вы хотите поделиться своей коллекцией музыки или художественными изысканиями, Вам понадобится сервер, т.е место куда все будут подключаться и скачивать всё, что Вы разрешили. Как раз о том, как это настроить, и пойдет речь в данной статье.
Хочется сразу отметить, что в статье будет рассматриваться вариант домашнего использования, без хитрых и тонких настроек, которые используются в случае с полноценными корпоративными серверами.
Определение
Сначала давайте разберёмся, что такое FTP сервер. FTP (file transfer protocol протокол передачи файлов) – это протокол, обеспечивающий удалённую передачу данных по сети интернет. Он построен на клиенте серверной архитектуры и использует разные каналы для обмена командами и данными. При этом для передачи используется одно соединение, которое стандартно устанавливается через 21 TCP-порт.
Каналов для обмена данными может быть несколько, поэтому во время одного сеанса можно одновременно передавать и принимать файлы. Для каждого канала, используемого для обмена данными, открывается отдельный TCP-порт.
Настройка клиента FileZilla
Если вы пользуетесь FileZilla 3, мы рекомендуем запустить мастер настройки сети. С помощью мастера вы пройдете все нужные шаги, а после их завершения у вас будет возможность протестировать вашу конфигурацию.
Очевидно, что для подключения к любому серверу ваш файрвол должен разрешить такие действия для FileZilla. Большинство обычных FTP-серверов используют 21-ый порт, SFTP-серверы — 22-ой, а FTP через SSL/TLS (неявный режим) по умолчанию — 990-ый. Номера портов не являются жестко заданными, поэтому лучше всего разрешить исходящие подключения на любой порт.
Т.к. в интернете достаточно неправильно настроенных серверов, или серверов, которые не поддерживают оба режима передачи, вам рекомендуются оба режима передачи на своей стороне.
Клиент не может указывать серверу выбор порта для передачи данных в пассивном режиме, поэтому для использования пассивного режима вам нужно разрешить исходящие подключения по любому порту на своем компьютере.
В активном режиме клиент открывает сокет и ожидает от сервера подключения для передачи.
Если вы не хотите разрешать входящие соединения на всех портах, или ваш компьютер расположен за NAT-роутером, укажите FileZilla использовать определенный диапазон портов для соединений в активном режиме. Этот диапазон также нужно будет открыть для вашего файрвола. При наличии NAT-роутера вам нужно перебросить эти порты на локальный компьютер, на котором установлен FileZilla. Вы можете перебросить диапазон портов, или же каждый порт по отдельности, это зависит от модели вашего роутера.

Как подключиться
Существует несколько способов подключения к FTP. Рассмотрим основные из них.
Через проводник Windows
Чтобы подключиться к FTP серверу через проводник, выполните следующие операции:
Теперь вы сможете соединяться с FTP через подключение, созданное в проводнике.
Через любой браузер
Ещё проще зайти на FTP сервер с помощью браузера. Для этого в адресную строку вводим адрес хоста и нажимаем кнопку «Enter».
С помощью Filezilla
После запуска программы для подключения потребуется ввести следующие сведения:
- Хост. IP сервера FTP, к которому вы хотите подключиться.
- Пароль. При использовании публичного доступа ничего вводить не требуется.
- Порт. Оставьте это поле пустым или введите порт по умолчанию — 21.

После того, как вы нажмёте кнопку «Быстрое соединение», подключение установится и вы сможете работать с файлами.
Чтобы не вводить постоянно параметры соединения, в FileZilla можно настроить постоянное подключение к FTP серверу.

После настройки для того, чтобы установить соединение, нужно будет зайти в меню «Файл», кликнуть по строке «Менеджер сайтов», выбрать нужный сайт и нажать кнопку «Соединиться».
Порт и первичный запуск FileZilla Server
Кроме того, на этом этапе следует указать порт, по которому будет подключаться интерфейс управления сервером, т.е так сказать, Ваша консоль администрирования, которая позволит Вам задавать настройки, смотреть кто и куда подключился и тп. Для повышения безопасности, смените его со стандартного () на какой-нибудь еще.
Так же по-умолчанию, отмечена опция запустить сервер после установки (Start Server after setup completes). Можете оставить эту галочку, а можете убрать. Дело Ваше. Сделав оное, переходим к последнему окну, используя кнопочку .
Здесь выбираем варианты запуска интерфейса.

Их опять же три:
- При вход в систему, для всех пользователей
- При входе в систему, для текущего пользователя
- Вручную
Первый вариант сгодится, если вы единственный пользователь компьютера, куда устанавливается сервер, и Вам, в принципе, всё равно под всеми аккаунтами операционной системы интерфейс будет запускаться автоматически или же только под одним.
Второй подходит для тех, кто работает на компьютере не один (т.е на компьютере несколько аккаунтов, используемых разными людьми) и хочет, чтобы никто другой не управлял его сервером, т.е запуск интерфейса осуществлялся только из под аккаунта, в котором сейчас и производится установка.
И третий вариант задает параметр запуска только вручную, т.е оный не будет стартовать вместе с системой вовсе.
Напомню, что интерфейс представляет собой нечто вроде административной программы, которая позволяет следить за состоянием сервера, запускать-останавливать и настраивать оный.
Галочка (Start Interface after setup completes) в данном окне, опять же, задает запуск интерфейса сразу в конце установки.
Ну и, разобравшись со всем оным, наконец-то можно начать установку сервера (используя, само собой, кнопочку “”) 🙂
Взаимодействуем с протоколом по средством программы
Сначала жмем в значок:


После этого, нажав на “флажок” возле известной Вам кнопочки, Вы увидите список введеных Вами хостов с заданными названиями (по умолчанию это “”), нажав на название Вы соединитесь с сервером. После соединения слева Вы увидите окно отображающее содержимое Вашего компьютера, а справа удаленного .
Далее все собственно просто как в “” – перетаскивайте нужные вам файлы с сервера или на него, путешествуйте по папкам и тд и тп.
Скачиваем Filezilla для работы с FTP
Собственно, использование тоже большого труда не составит, однако я сделаю небольшую инструкцию, чтобы Вам было проще и удобней разобраться что там к чему.
В рамках данной статьи я предполагаю, что Вы таки его знаете, а если и нет, то следуя рекомендациям в статье, Вы и без оных просто сможете узнать куда их ввести и куда нажать чтобы соединиться с удаленным сервером (так сказать, на будущее). Дабы не расписывать всё отдельно, я покажу Вам наглядно (все скришноты кликабельны, т.е. увеличиваются по клику) в виде картинок.
Углубленная настройка FileZilla Server – пользователи, приветстве и прочее
В следующем подпункте можно настроить приветственное сообщение, которое будут видеть пользователи при подключении. Например: “Сервер Заметок Сис. Админа на FileZilla Server! :)”. Здесь же можно воспользоваться, так называемыми, текстовыми параметрами. Например, можно задать вывод для клиентов версии -сервера. Для этого введите, помимо приветствия, сочетание символов . В месте где Вы их введете, будет автоматически выводится вышеупомянутая версия.


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

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

Идем далее. В пункте настроек “” задаются ограничения на входящие и исходящие соединения типа “сервер-сервер”. Здесь ничего менять не стоит.
Раздел настроек “” содержат малозначительные для домашнего фтп-сервера настройки. Например, такие как “Не показывать пароль в лог-файлах” (Don’t show passwords in message log), “Запускать интерфейс свернутым” (Start minimized), а так же размеры буферов передачи. Трогать здесь, в общем-то, ничего не нужно.


Раздел настроек “” позволяет включать запись лог-файлов (Enable logging to file), настроить их максимальный размер (Limit log file size to), писать все в один файл (Log all to “FileZilla Server.log”) или для каждого дня создавать отдельный (в этом случае можно ограничить их максимальный срок хранения).

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

Это все что нужно, чтобы установить filezilla server и настроить ftp сервер через роутер.
Настройка сервера FileZilla под Windows Firewall
Если вы испытываете проблемы при настройке сервера FileZilla при работающем Windows Firewall (в особенности, если клиент, подключающийся к такому серверу получает сообщение об ошибке «Невозможно получить листинг директории»), вам нужно добавить сервер FileZilla в список исключений Windows Firewall. Для этого вам нужно сделать следующие шаги:
- Откройте Windows Firewall из Панели Управления
- Если вы пользуетесь Vista, нажмите «Изменить настройки»
- Выберите вкладку «Исключения»
- Нажмите «Добавить программу..»
- НЕ выбирайте «интерфейс сервера FileZilla» из списка, вам нужно нажать на «Просмотр. «
- Найдите установочную директорию сервера FileZilla (обычно это «C:Program FilesFileZilla Server»)
- Выберите «FileZilla server.exe» и нажмите открыть (повторим еще раз, НЕ ВЫБИРАЙТЕ «FileZilla Server Interface.exe»)
- Выберите «FileZilla server.exe» из списка и нажмите «Ok»
- Удостоверьтесь в том, что «FileZilla server.exe» находится в списке исключений и отметьте соответствующий пункт
- Нажмите «Ok» для закрытия окна
Это обеспечивает работу пассивного режима. Если после этого вы все равно испытываете проблемы при подключении (внутри или извне сети), проверьте настройки вашего роутера или попробуйте добавить номер порта в настройках Windows Firewall во вкладке «Исключения».
Программа-клиент для FTP
-клиента, представляет собой программу для подключения к тому или иному -серверу (как аська, например, позволяет подключиться серверу ICQ и посылать таким же подключенным свои сообщения или получать оные от них).
В общем-то, программа, которую я хочу порекомендовать, довольно известна в сети и существует уже давно. Называется она и, во-первых, полностью бесплатна, во-вторых кроссплатформенная (т.е. идет под почти всеми операционными системами), а в-третьих поддерживает русский язык, что, несомненно, приятно и удобно.
Так же, она содержит в себе нормальный внятный интерфейс, максимум возможностей, минимум глюков и отличную скорость работы.
Проще говоря, меня она вполне себе устраивает, а посему я хочу поделиться оной и с Вами 🙂
Послесловие
Вот такие вот дела.
Не смотря на то, что статья максимально ориентирована для небольшого домашнего использования , я постарался максимально подробно объяснить все необходимые настройки и нюансы .
Как и всегда, если есть какие-то вопросы, дополнения и тп, то пишите в комментариях, – буду рад помочь.
PS: За существование оной статьи отдельное спасибо другу проекта и члену нашей команды под ником ““.
Создание и настройка
Установить FTP-сервер на ПК может любой пользователь, даже чайник. Это можно сделать либо средствами операционной системы, либо с помощью сторонних программ, таких как Filezilla server.
FTP в windows
В Windows 7 есть все для того, чтобы установить и настроить FTP сервер, ничего дополнительно устанавливать не придётся. На более новых версиях этой системы все делается аналогично.
Чтобы сделать ФТП сервер на компьютере:
На этом создание FTP сервера закончено. Теперь вы знаете, как поднять домашний файлообменник.
Чтобы создать свой FTP сервер FileZilla:
На этом создание FTP-сервера закончено.
Настройка сети
Настройка FTP является довольно сложной задачей. Т.к. существуют тысячи разных файрволов и моделей роутеров, практически невозможно привести полное пошаговое руководство для каждого пользователя. Пользователь должен понимать основы протокола FTP для того, чтобы настроить FileZilla и роутеры/файрволы через которые происходит подключение. В этой статье приведена краткая история развития протокола FTP и принципы работы некоторых его аспектов. Внимательное прочтение этой статьи предотвратит многие проблемы, которые могут возникнуть при настройке FTP-подключения.
При подключении к FTP клиент и сервер создают сессию, которая остаётся активной на протяжении всего сеанса обмена файлами.
Существуют два режима работы данного протокола:

Обмен данными может осуществляться в одном из режимов:
- в поточном режиме данные передаются сплошным потоком, протокол её не обрабатывает;
- при передаче в блочном режиме протокол делит передаваемые данные на блоки, в каждый из которых входит заголовок, размер и информация.
Вот, собственно и всё. Надеюсь, что оная статья оказалась для Вас хоть как-то полезна.
Если что-то не понятно и есть вопросы, то смело задавайте их в комментариях – я обязательно постараюсь помочь Вам 😉
Остаточные настройки FTP сервера – скорости, шифрование и тп
Далее у нас “”. Оная может помочь ограничить скорость входящих и исходящих соединений. Есть два пути ограничения: задать постоянное ограничение на все время или создать правила на конкретный день и/или час. Ограничения задаются в килобайтах.


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

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


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

Задаём необходимые Вам параметры и папки и.. Жмакаем
На этом первоначальная настройка закончена. Для домашнего пользования большего и не надо 😉
Первичная настройка FTP FileZilla Server
Итак, после установки, при первом запуске интерфейса, появится маленькое окошко, где требуется указать адрес и порт для подключения, а так же пароль администратора (при первой установки его нет). Можно отметить опцию “Всё время подключаться к этому серверу” (Always connect to this server). Нажимаем “”.

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

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

Сверху вниз по скриншоту:
- Порт, по которому клиенты будут подключаться к серверу
- Максимальное количество клиентов
- Количество потоков
- Различные таймауты (три штуки)
В рамках данной статьи нас интересуют первые два пункта. Порт можно оставить как есть, а можно и сменить для повышения безопасности, но тогда придется сообщать об оном всем желающим подключиться.
Вторая настройка отвечает за максимальное количество подключений. По-умолчанию значение параметра стоит “”, это означит, что их количество не ограничено. Менять этот параметр стоит в том случае, например, если Ваш интернет канал не справляется с нагрузкой, т.к к Вам подключается уж очень много людей.
Остальное можно оставить без изменений, т.к для домашнего использования настройки оптимальны.
Решение проблем
К сожалению, множество персональных файрволов и пользовательских роутеров имеют свои недоработки или, в некоторых случаях, даже способны саботировать работу 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. К сожалению, производители роутеров потребительского класса и поставщики файрволов не заботятся о соблюдении спецификаций.
Для решения этой проблемы вам нужно удалить такие файрволы и заменить неправильно работающий роутер на качественный.




