Установка и конфигурация FTP сервера Filezilla. Filezilla Server: настройка и подключение

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

FTP (File Transfer Protocol) - это протокол передачи информации в интернете и локальных компьютерных сетях. Это программа, осуществляющая удалённое подключение к выделенной папке для просмотра и обмена файлами, в том числе больших размеров. Обмен данными возможен от компьютера к удалённому серверу и между другими ФТП-серверами.

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

Собственный FTP-сервер имеет определённые преимущества:

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

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

Компанией Майкрософт в Windows 7 добавлена функция Internet Information Services (IIS), осуществляющая общий доступ из сети к выделенной для этой цели папке. Поэтому, чтобы создать FTP-сервер для Windows 7, не требуется дополнительно устанавливать ПО.

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

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

Для создания ФТП-сервера на Windows 7 необходимо:

  • Нажать «Пуск» и открыть раздел «Панель управления». Для удобства просмотра можно выбрать режим «Мелкие значки».

  • Перейти в раздел «Программы и компоненты», где выбрать «Включение или отключение компонентов Windows».

  • В списке открывшегося меню нужно отметить компоненты, которые следует активировать, поставив рядом галочку. Это папка «FTP-сервер», в ней два пункта: «Расширяемость FTP» и «Служба FTP», а также папка «Средства управления веб-сайтом», а в ней- «Консоль управления IIS». Для запуска нажать OK.

Настройка ФТП-сервера

  1. Теперь нужно снова зайти через «Пуск» в «Панель управления».
  2. Найти раздел «Администрирование» и открыть в этом разделе «Диспетчер служб IIS».
  3. Перейти во вкладку «Сайты», щёлкнув на название правой кнопкой, выбрать из списка «Добавить FTP сайты».
  4. В новом окне требуется указать имя будущего ФТП-сервера, и путь к каталогу с его данными. К следующему этапу настройки можно перейти, нажав кнопку «Далее».
  5. Теперь устанавливаются параметры сервера. В поле IP-адреса выбрать нужный из списка. Можно привязать его к определённому адресу или сделать расширенный доступ, выбрав пункт «Все свободные». При этом должен быть отмечен стандартный порт- 21. Если планируется постоянно использовать FTP-сервер, то следует поставить отметку галочкой «Запускать FTP-сайт автоматически». Выбрать опцию «Без SSL», её можно включить в случае необходимости позже. Снова нажать «Далее».
  6. В новом окне задаётся тип авторизации. В пункте «Проверка подлинности» можно разрешить вход для обычных или анонимных пользователей. Здесь же можно настроить для них права. Нажать«Готово».

После завершения установки в разделе «Сайты» появится новый ФТП-сервер.

Настройка брандмауэра Windows

Теперь обязательно необходимо настроить брандмауэр Windows для открытия портов и функционирования служб.

Снова войти в «Панель управления», затем «Брандмауэр Windows». Найти раздел «Дополнительные параметры».

В нём выбрать «Правила для входящих соединений». Для них рекомендуется установить пассивный режим. Для этого правой кнопкой мыши нажать и включить правила «FTP Server Passive» и «FTP-сервер (входящий трафик)». Таким же образом для исходящих подключений включить в соответствующем разделе правило «FTP-Server».

Подключение пользователей

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

  • Во вкладке «Панель управления» открыть папку «Администрирование».

Раздел Администрирование

  • Найти раздел «Управление компьютером», затем перейти к папке «Локальные пользователи». Нажав правой кнопкой на строку «Группы», выбрать функцию «Создать группу». В новом окне указать имя и короткое описание группы, нажать «Создать».
  • Теперь можно подключить пользователей к созданной группе. В папке «Локальные пользователи» нажать правой кнопкой на строку «Пользователи» и выбрать из списка меню «Новый». Заполнить поля, введя имя и пароль, здесь же следует установить галочкой запрет на смену пароля.
  • Для подключения пользователя нажать правой кнопкой на его учётную запись и выбрать из списка меню пункт «Свойства», далее - вкладка «Членство в группах» и кнопка «Добавить». Найти созданную группу, добавить и нажать OK. Эту процедуру нужно выполнить для всех пользователей сервера.
  • На следующем этапе определяются права доступа пользователей группы к рабочему каталогу. Для этого нужно перейти к каталогу «Сайт», щёлкнуть по названию правой кнопкой и открыть «Свойства». Далее - вкладка «Безопасность», в пункте «Изменить» указать название группы и нажать ОК. Затем нужно настроить права для пользователей.
  • Войти в «Диспетчер служб IIS», нажав правой кнопкой на строку «Правила авторизации FTP», добавить разрешающее правило. Можно позволить пользователям запись и удаление данных, а можно только чтение.

Установка и настройка сервера завершена. Однако, теперь нужно знать, как зайти на FTP-сервер.

Стандартные функции Windows позволяют сделать это просто. Достаточно открыть папку «Мой компьютер», затем в адресной строке указать путь к серверу.

Другой способ - создать ярлык подключения к ФТП на рабочем столе компьютера.

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

Доброго времени суток, дорогие читатели! В последнее время приходит много сообщений с просьбами рассказать о том, как установить свой собственный 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) .

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

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

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

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

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

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

В следующем подпункте можно настроить приветственное сообщение, которое будут видеть пользователи при подключении. Например: “Сервер Заметок Сис. Админа! ”. Здесь же можно воспользоваться, так называемыми, текстовыми параметрами. Например, можно задать вывод для клиентов версии ftp -сервера. Для этого введите, помимо приветствия, сочетание символов %v . В месте где Вы их введете, будет автоматически выводится вышеупомянутая версия.

Далее переходим на подпункт “IP bindings ”. Здесь настраиваются IP -адреса, по которым будет доступен наш FTP сервер. Если Вам хочется, чтобы сервер был доступен только из локальной сети, то вместо звёздочки, следует указать ваш локальный IP -адрес, как например, 192.168.1.5 . В противном случае, здесь трогать ничего не стоит.

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

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

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

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

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

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

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

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

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

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

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


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

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

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

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

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

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

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

Послесловие.

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

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

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

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

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

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

Регистрация

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

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

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

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

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

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

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

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

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

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

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

В числе самых популярных программ для организации сетевых соединений с использованием сервера в домашней или небольшой корпоративной сети — решение Filezilla. В чем заключаются особенности его настройки? На что обратить внимание при выставлении тех или иных опций в соответствующей программе?

Инсталляция программы

Очевидно, прежде чем рассматривать то, каким образом осуществляется необходимая для обеспечения функционирования Filezilla Server настройка Windows 8.1 или более старших версий ОС, изучим особенности инсталляции программы, о которой идет речь. Дистрибутив, имеющийся в распоряжении пользователя, необходимо запустить, после чего выбрать оптимальный режим установки ПО: стандартный, полный, только FTP, только интерфейс, выборочная инсталляция.

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

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

Инсталлировать сервер как службу и задать его запуск при загрузке компьютера;

Установить сервер как службу и задать ручной запуск программы при загрузке ПК;

Использовать простую установку при ручной загрузке ПО.

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

Непосредственно при загрузке системы — для любого пользователя;

При запуске ОС — для конкретного пользователя;

В ручном режиме.

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

Инсталляция Filezilla: выбор модели загрузки интерфейса

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

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

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

Основные интерфейсы программы

Решение Filezilla Server, настройка которого осуществляется в несколько этапов, состоит из 2 основных интерфейсов.

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

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

Рассмотрим теперь то, каким образом осуществляется на практике - с задействованием указанных интерфейсов программы Filezilla Server, - настройка соответствующего ПО.

Настройка Filezilla Server: на что обратить внимание?

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

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

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

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

Аналогично в опции Miscellaneous для пользователей доступны настройки, которые не будут иметь особого значения с точки зрения корректной настройки сервера. В числе таковых — запрет на показ пароля в интерфейсах, величина буферов трансфера данных. Обеспечение функциональности сети практически не будет зависеть от внесения изменений в соответствующей группе настроек. Также, скорее всего, не потребуется настройки протокола Kerberos GSS посредством интерфейса GSS Settings.

Посредством интерфейса Admin Interface Settings пользователь может установить оптимальный IP-адрес, а также порт, который будет задействоваться для получения доступа к модулям управления сервером. Следует иметь в виду, что к данной опции Filezilla Server не имеет отношения. На маршрутизаторе прописывается другой IP-адрес. Задействуя опцию, о которой идет речь, можно настроить перечень IP-адресов, с которых компьютерам открыт доступ к серверу.

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

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

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

Ключевые настройки

Рассмотрим теперь более детально то, каким образом выставляются наиболее востребованные параметры Filezilla Server. Настройка программы, о которой идет речь, начинается со страницы General Settings — интерфейс ПО, о котором идет речь, составлен на английском языке. Выбрав данную опцию, пользователь сможет, к примеру, поменять стандартный порт для подключения — по умолчанию ему присвоен номер 21, на какой-либо другой.

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

Настройки IP

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

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

Настройки пассивного режима

Еще одна примечательная опция Filezilla Server — настройка пассивного режима. Для этого пользователю нужно задействовать опцию Passive mode в интерфейсах программы, о которой идет речь. Соответствующая настройка формирует, таким образом, параметры, которые нужны для обеспечения пассивного подключения к администрируемому серверу. При этом может потребоваться при внесении корректировок в соответствующие параметры Filezilla Server — настройка роутера. TP Link, к примеру, и другие популярные бренды-производители маршрутизаторов, позволяют внести в ПО соответствующего девайса необходимые параметры. Конечно, важно, чтобы роутер поддерживал функцию брандмауэра и NAT для активации многих нужных опций.

Скорее всего, пользователю потребуется узнать конкретный IP-адрес, который присваивается провайдером. Его как раз можно узнать, задействовав программные интерфейсы маршрутизатора. Данную задачу можно успешно решить вне зависимости от того, на какой операционной системе установлен Filezilla Server — настройка Windows 7 в части получения доступа к соответствующим адресам будет осуществляться так же, как если бы это была, к примеру, Windows 8.1. На практике вносить корректировки в настройки IP-адресов в большинстве случаев требуется, если имеются проблемы с подключением тех или иных ПК к серверу.

Настройки безопасности сервера

Изучим теперь то, каким образом настроить безопасность пользования серверными соединениями. Нам понадобится в целях оптимизации соответствующих параметров Filezilla Server настройка SSL. Осуществляется она через интерфейс SSL/TLS Settings. В данном случае необходимо активировать поддержку соответствующих протоколов. Как правило, в этом случае необходимо фиксировать в настройках адрес закрытого ключа, сертификата, а также пароль.

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

Настройка аккаунтов

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

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

Эксперты рекомендуют по возможности устанавливать пароль для учетной записи в рассматриваемой программе, хотя, в принципе без него можно обойтись. Технологически решить данную задачу несложно, особенно, с учетом универсальности решения Filezilla Server. Настройка Windows 7 для доступа из внешней сети, к примеру, или же выставление необходимых опций в Windows 8.1, осуществляется по одним и тем же алгоритмам.

Настройка общего доступа к папкам

Еще одна примечательная опция рассматриваемого ПО — общий доступ к папкам. Для этого задействуется модуль Share Folders. Для того чтобы выбрать каталоги, к которым будет организован доступ, необходимо нажать кнопку Add, после чего — выбрать нужный на диске. Также задается перечень прав доступа к тому или иному каталогу. Например, можно регулировать такие операции, как чтение, запись, удаление, а также внесение изменений в файлах, которые расположены в том или ином каталоге.

Как обеспечить связь пользователей с сервером?

Еще одна важная задача после того, как необходимые опции выставлены в Filezilla Server, — настройка Windows 7 или более новой ОС предполагает довольно оперативный доступ к ключевым параметрам интерфейсов, может заключаться в обеспечении связи пользователей с администрируемым компьютером. Для этого необходимо, прежде всего, узнать IP-адрес сервера. Чтобы узнать его, может потребоваться обратиться к провайдеру или, опять же, войти в интерфейс настроек роутера, если администратор сети его задействует.

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

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




Top