Установка FTP сервера и его настройка (на примере программы FileZilla Server). Способы подключения к FTP серверу. FileZilla FTP Server для домашней или небольшой офисной сети

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

FTP-сервер входит в состав служб IIS. Для его установки открываем Панель управления -> Программы -> Включение или отключение компонентов Windows. Раскрываем раздел Службы IIS и ставим галочки напротив следующих компонентов: Служба FTP и Консоль управления IIS.

Настройка FTP-сервера.

Открываем Панель управления -> Система и безопасность -> Администрирование -> Управление компьютером (можно быстрее: меню Пуск -> правый клик на Компьютер -> в меню выбрать пункт Управление). В открывшемся окне раскрываем группу Службы и приложения и открываем Диспетчер служб IIS. В окне Подключения выбираем папку Сайты, затем в правом окне Действия нажимаем на ссылку Добавить FTP-сайт.


В мастере создания ftp-сайта указываем его название и расположение (по умолчанию c:\inetpub\ftproot).


Далее указываем параметры привязки и SSL. Раздел привязка оставляю без изменений. Опцию «Запускать ftp-сайт автоматически» отключаю (ftp мне нужен только время от времени). В разделе SSL выставляю опцию «Без SSL».


В следующем окне оставляем все без изменений и нажимаем Готово.


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


Следующий этап — настройка брандмауэра Windows. Откройте Панель управления -> Система и безопасность -> Брандмауэр Windows -> Дополнительные параметры. В разделе «Правила для входящих подключений» находим и активируем «FTP-сервер (входящий трафик)» и «FTP Server Passive (FTP Passive Traffic-In)». Последнее правило позволяет подключаться ftp-клиенту в пассивном режиме.



В разделе «Правила для исходящего подключения» находим и активируем «FTP Server (FTP Traffic-Out)».


Если в системе установлен дополнительный брандмауэр (Comodo, Outpost и т.п.), то в нем также необходимо открыть порт 21 (TCP) для входящих подключений и порт 20 (TCP) для исходящих.

Если подключение к Интернет осуществляется с помощью маршрутизатора, и вы хотите сделать свой сервер доступным интернет-пользователям, тогда необходимо настроить проброс портов на маршрутизаторе. На моем Dlink DI-804HV это выполняется в разделе Virtual Server.


192.168.10.4 — ip-адрес ftp-сервера в локальной сети.

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

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

Открываем Панель управления -> Система и безопасность -> Администрирование -> Управление компьютером (Пуск -> правый клик на Компьютер -> в меню выбрать пункт Управление). Далее раскрываем группу Локальные пользователи и группы (данная настройка доступна только в редакциях Бизнес и Максимальная). Правый клик на папке Группы, в меню выбираем Создать группу.


Вводим название группы — Пользователи FTP, описание (можно не вводить) и нажимаем кнопку Создать.


Теперь необходимо создать пользователя. Делаем правый клик на папке Пользователи и в меню выбираем Новый пользователь.


Вводим имя пользователя (например ftp_user_1), пароль (не менее 6 символов), выставляем галочки напротив опций «Запретить смену пароля пользователем» и «Срок действия пароля не ограничен».


Пользователь создан. Теперь необходимо присвоить ему ранее созданную группу Пользователи ftp. Для этого открываем свойства пользователя и переходим на закладку «Членство в группах». По умолчанию новому пользователю присваивается группа Пользователи, удаляем ее. Нажимаем кнопку Добавить -> Дополнительно -> Поиск. Откроется список групп пользователей. Выбираем группу Пользователи FTP и нажимаем Ok. В итоге получаем:


Нажимаем Ok и переходим к следующему этапу.

На этапе создания ftp-сайта нам было необходимо выбрать рабочий каталог (c:\inetpub\ftproot). Теперь для группы «Пользователи FTP» необходимо настроить права доступа к этому каталогу. Открываем c:\inetpub в проводнике, открываем свойства папки ftproot, переходим на закладку Безопасность и нажимаем кнопку Изменить. В открывшемся окне нажимаем кнопку Добавить и выбираем группу «Пользователи FTP» (как при создании пользователя). Устанавливаем уровень прав — «Полный доступ» и нажимаем Ок.


Последний этап. Вновь открываем Диспетчер служб IIS и выделяем наш ftp-сервер (Test FTP). В панели управления ftp-сайтом выбираем «Правила авторизации FTP». Добавляем разрешающее правило. В открывшемся окне выбираем опцию «Указанные роли или группы пользователей». Внизу в текстовом поле руками прописываем название нашей группы (Пользователи FTP), далее ставим галочки в разделе Разрешения напротив Чтение и Запись и нажимаем Ок.


На этом настройка завершена.

В начале мы не выбрали опцию автоматического запуска сервера, поэтому не забываем запустить его вручную (правый клик на названии сайта -> Управление FTP-сайтом -> Пуск).

Как подключиться?

Вариант с использованием проводника Windows.
Открываем Компьютер (Vista, Win 7) или Мой Компьютер (XP).
Для анонимного доступа просто вводим в адресную строку адрес сервера (ftp://192.168.10.4).
Чтобы войти с именем пользователя и паролем вводим адрес вида: ftp://[имя пользователя]:[пароль]@[адрес ftp-сервера]. Например ftp://ftp_user_1:[email protected] - для подключения из локальной сети. Для подключения из Интернет локальный адрес заменяем на внешний или на доменное имя.

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

Что нам нужно:

1. FTP cервер Filezilla - переходим по ссылке, прокручиваем страницу вниз и видим FileZilla Server версии 0.9.41 на момент написания данного материала, скачиваем
2. FTP-клиент или любой браузер для проверки работоспособности FTP-сервера

# Установка

Скачанный дистрибутив запускаем и начинаем установку

1. В первом шаге нажимаем I Agree
2. Далее необходимо выбрать компоненты установки, здесь ничего сложного, оставляем как есть или убираем ярлыки, Source Code устанавливать не нужно
3. Выбираем место установки, можно сотавить по-умолчанию
4. на четвертом шаге необходимо выбрать апраметры работы службы сервера, есть 3 варианта:
а. Установка сервера как службы и автоматический запуск
б. Установка сервера как службы и ручной запуск, при старте системы сервер не будет работать
в. Установка сервера как обычное приложение и автоматический запуск

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

Кроме того необходимо выбрать порт, по которому будет происходить соединение панели управления с сервером, он не должен быть занят другим ПО, в большинстве случаев можно оставить порт по-умолчанию, т.е. 14147
5. Выбор метода запуска интерфейса сервера, рекомендую выбрать Start manually , т.к. по большому счету интерфейс понадобится 1 раз - во время первоначальной настройки и только изредка будет необходим для внесения изменений, так что нет смысла держать его всегда запущенным, галку оставляем, тогда интерфейс будет запущен сразу после окончания установки, жмем Install

# Настройка
По окончанию установки будет запущен менеджер сервера, сначало появится окно с предложением настроить подключение к серверу, т.к. сервер находится на том же самом ПК, что и менеджер, то как Server Address оставляем
127.0.0.1 , порт тоже не трогаем, именно он был указан во время установки, или меняем, если изменяли ранее. пароль оставляем пустым, т.к. по-умолчанию его нет, позже можно установить. Ставим галку, подключаемся

# Основная конфигурация сервера

В меню выбрать Edit -> Settings , это основная конфигурация сервера, произведем некоторые приятные изменения. Я не буду останавливаться на всех опциях, а укажу только на наиболее значимые и полезные для большинства пользователей

1.General Settings . Можно изменить 21 порт на какой-либо другой, обычно это не нужно, но бывает полезно, чтобы оградить свой сервер от лишних посягательств, т.е. 21 порт будет недоступен и тот, кто не осведомлен может предположить, что сервера нет. Так же можно указать максимальное количество одновременно подключенных пользователей, помогает для снижения нагрузки для слабых машин. Ниже можно указать количество ядер процессора, которые буду использоваться сервером для распределения нагрузки.
- IP Filter - фильтр для ограничения доступа по IP-диапазонам, в первом списке вводим адреса и диапазоны, которым запрещаем доступ к серверу, а во втором те адреса из первого списка диапазонов, которым будет дано исключение, т.е. предоставлен доступ
2. Miscellaneous . В дополнительных настройках есть некоторые полезности. Первая галка (если стоит) позволяет скрывать в окне интерфейса сервера проль, отправляемый пользователем, вторая галка будет запускать приложение свернутым. Третья галка разрешит к передачи файлы, открытые на запись, делать этого не рекомендуется - можно повредить файлы, четвертая галка
3. Logging . Собственно логирование, по умолчанию выключено, но можно включить. Размер можно ограничить, тогда по достижению лимита файл будет перезаписан. Так же можно задать лог в один большой файл (не рекомендуется) или создавать логи по дням + активировать опцию удалению через необходимый временной промежуток
4. Speed Limits . Возможность задать ограничения скорости на загрузку и закачку. Можно просто сделать общее ограничение скорости или добавить необходимое число правил по дням и часам. Полезно использовать для того, чтобы FTP-сервер не загружал весь канал
5. Autoban . Название говорит само за себя, если пользователь несколько раз подряд указывает не верные учетные данные, то его адрес блокируется. Количество попыток и промежуток блокировки указывается. Полезно против программ-брутов, которые осуществляют банальный перебор, данным методом их можно остановить

По окончанию настройки можно нажать ОК

# Добавляем пользователей

Переходим в меню Edit -> Users . Для начала я опишу общую процедуру добавления пользователей
1. General . Здесь мы создаем новую учетную запись. Нажимаем Add , появляется поле ввода имени пользователя и выбора группы, в которую мы хотим его добавить. Если группы нет, то соответственно выбрать ее нельзя. Для серверов с небольшим количеством учетных записей создавать группы не обязательно, достаточно просто создать несколько учетных записей и на каждую назначить свои права
Затем ставим галку Password и вводим пароль для учетной записи. Ниже можно установить лимиты для пользователя по количеству подключений и количеству подключений с одного IP. Нулевые значения будут означать отсутствие ограничений

2. Shared folders . Здесь для конкретного пользователя мы выбираем папки, в которые он будет иметь доступ и права на эти папки
Если существует уже несколько пользователей, то в правом окне выбираем того, кому мы будем добавлять права, затем слева нажимаем Add , и выбираем на ПК папку, если требуется доступ к нескольким папкам, то добавляем еще, одна из папок должна быть помечена как HomeDir, те. папка, в которую пользователь будет попадать по умолчанию при подключении к серверу. Иногда необходимо дать доступ к разным дискам ПК одному пользователю, здесь есть один нюанс - можно добавить сколько угодно папок в пределах одного диска, но для того, чтобы дать доступ к другому диску, надо сделать Алиас, т.е. ссылку-псевдоним с диска директории HomeDir на необходимую папку другого диска. Для этого создаем доступ еще к одной папке на другом диске, затем нажимаем ПКМ на созданной папке - Edit Aliases , в поле папку HomeDir, к которой пользователь имеет доступ+ еще добавляем псевдоним виртуальной папки, которая будет отсылать нас в папку другого диска. в нашем случае получается D:/Temp/Soft . Теперь при подключении к своей основной папке пользователь в папке Temp еще увидит папку Soft и сможет в нее перейти, в то время как она будет находится на другом диске


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

Read - только чтение, т.е. можно просматривать файлы и папки на сервере и скачивать их
Write - позволяет перезаписывать существующие файлы
Delete - удаление файлов и папок
Append - добавление новых файлов на сервер
Create - создавать новые папки
List - просматривать содержимое папок
+Subdirs - просматривать все папки, которые вложены в основную

Если мы создаем анонимного пользователя, т.е. которым будут пользоваться сразу несколько пользователей для получения каких-либо данных с сервера, то нам необходимо создать ученую запись с именем anonymous без пароля, добавить ему необходимые директории и назначить на них права. обычно анонимным пользователям необходимо только чтение (в целях безопасности прежде всего), т.е. включаем для него права Read , List , +Subdirs

3. Speed Limits & IP Filter . Здесь как и в основном конфиге сервера можно произвести индивидуальные настройки для аккаунта относительно ограничений по адресам и скоростям, удобно для создания исключений от основных правил

Сохраняем настройки. При желании и большом количестве пользователей сервера можно создать несколько групп, если будут различия для них по правам. Для этого необходимо перейти в Edit ->Groups . Конфигурация прав группы не отличается от конфигурации отдельного пользователя, после создания группы можно будет просто создавать пользователя и выбирать для него группу, после чего у него будут права группы

Во время настройки сервера вполне логично и удобно оградить от него доступ к пользователям, для этого надо перейти в меню Server , в нем будет 2 опции - Active и Lock . Первая опция по умолчанию активна и если убрать галку, тогда сервер будет выключен и никто не сможет подключиться, в этот момент можно будет производить его конфигурацию, при первом включении сервера все настройки будут применены. Активация Lock позволяет оставить сервер в работающем состоянии, но блокирует его, т.е. пользователи будут видеть, что сервер работает, но им будет отказано в доступе к нему

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

Способов передачи больших файлов через интернет много, но почти все они с ограничениями – либо по размеру файла, либо по объему свободного пространства, либо по скорости скачки.

Но существует один отличный вариант – создание FTP сервера. Главные его преимущества:

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

Как настроить FTP сервер?

Настройка осуществляется очень просто. Для этого Вам понадобится программа для FTP сервера (или точнее – утилита), которая называется Golden FTP Server (Free версии будет предостаточно).

Скачали программу? Установили? Теперь приступаем к созданию. Для этого выполняете следующую инструкцию:

Вот и все. Теперь Вы знаете, как сделать FTP сервер. И можете свободно обмениваться файлами с любыми пользователями.

Чтобы проверить, что создание ФТП сервера прошло успешно, зайдите на него через Internet Explorer.

Кстати, еще один момент. Качать расшаренные документы могут одновременно несколько пользователей, которым Вы дали ссылку на скачивание. Разумеется, скорость скачки в таком случае будет делиться. Но если у Вас 100 Мбит/с, то это не является проблемой. Просто, чтобы Вы были в курсе.

Если же Вы не поняли, как настроить FTP сервер, и все это для Вас слишком сложно, тогда можете попробовать другие варианты. Благо существует еще минимум 5 способов, .

    Аббревиатура FTP происходит от английского F ile T ransfer P rotocol (протокол передачи файлов) - протокол прикладного уровня для обмена файлами по транспортному протоколу TCP/IP между двумя компьютерами, FTP-клиентом и FTP-сервером. Это один их старейших, и тем не менее, по-прежнему активно используемый протокол.

Протокол FTP предназначен для решения следующих задач:

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

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

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

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

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

    Реалии же сегодняшнего дня таковы, что подобное TCP - соединение от сервера к клиенту в подавляющем большинстве случаев невозможно, или очень непросто реализовать по причине того, что в большинстве случаев, для подключения к Интернет используется технология с трансляцией сетевых адресов NAT (Network Address Translation) , когда клиент не имеет сетевого интерфейса, доступного для создания прямого TCP- соединения из Интернет. Типовая схема стандартного подключения к Интернет выглядит следующим образом:

    Подключение к Интернет выполняется через специальное устройство - Router (маршрутизатор с функцией NAT), имеющее, как минимум два сетевых порта - один подключенный к сети провайдера, имеющий сетевой интерфейс с маршрутизируемым IP-адресом (так называемый, "белый IP"), например 212.248.22.144, и порт с сетевым интерфейсом для подключения устройств локальной сети с приватным, немаршрутизируемым IP-адресом, например 192.168.1.1 ("серый IP"). При создании соединений от сетевых устройств локальной сети к внешним сетевым узлам, IP-пакеты направляются на маршрутизатор, который выполняет трансляцию адресов и портов таким образом, чтобы, адресом отправителя стал его белый IP-адрес . Результаты трансляции сохраняются и при получении ответного пакета, выполняется обратное преобразование адреса. Таким образом, маршрутизатор обеспечивает пересылку TCP/IP - пакетов от любых устройств локальной сети во внешние сети и обратную пересылку полученных ответных пакетов. Но в тех случаях, когда на вход сетевого интерфейса, подключенного к сети провайдера, принимается пакет, который не имеет отношения к ответным TCP-пакетам, возможны следующие варианты реакции программного обеспечения маршрутизатора:

    Пакет игнорируется, так как нет сетевой службы, которая могла бы его обработать.

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

    Пакет пересылается серверу в локальной сети, ожидающему данный вид входящих соединений в соответствии с правилами перенаправления портов (port mapping) заданными настройками маршрутизатора.

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

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

    PASSV - команда на переключение в пассивный режим, передаваемая FTP - клиентом FTP-серверу

    227 Entering Passive Mode (212,248,22,144,195,89) - ответ FTP-сервера, где 227 - код ответа, текстовое сообщение о переходе в пассивный режим и в скобках IP-адрес и номер порта, которые будут использованы для создания канала передачи данных. Адрес и номер порта отображаются в виде десятичных чисел, разделяемых запятой. Первые 4 числа - это IP-адрес (212.248.22.144), оставшиеся 2 числа задают номер порта, который вычисляется по формуле - первое число умножается на 256 и к результату прибавляется второе число, в данном примере номер порта 195*256 +89 = 50017

    PORT IP адрес клиента номер порта - клиент передает команду, чтобы организовать сеанс в активном режиме. IP-адрес и номер порта задаются в том же формате, как и в предыдущем примере, например PORT 212.248.22.144,195,89 Для организации передачи данных сервер сам подключается к клиенту на указанный порт.

    Установка и настройка FileZilla FTP Server.

    Скачать инсталляционный пакет FileZilla Server для вашей версии операционной системы можно на

    Установка сервера выполняется стандартным образом, за исключением пункта с выбором настроек панели управления сервером :

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

    После завершения установки откроется окно приглашения для подключения к серверу:

    После ввода IP-адреса, номера порта и пароля (если вы задавали их в процессе установки) открывается панель управления FileZilla Server:

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

    File - режимы работы панели управления FTP-сервером. Содержит подпункты

    - Connect to Server - подключиться к серверу
    - Disconnect - отключиться от сервера
    - Quit - завершение работы панели управления.

    Server - управление FTP-сервером. Содержит подпункты:

    - Active - запустить/остановить FTP-сервер. При установленной галочке FTP-сервер запущен, при снятой - остановлен.
    - Lock - запретить/разрешить подключения к серверу. При установленной галочке новые подключения к серверу запрещены.

    Edit - редактирование настроек. Подпункты:

    - Settings - основные настройки сервера.
    - Users - настройки пользователей FTP-сервера
    - Groups - настройки групп пользователей.

    В качестве примера, выполним настройки сервера для следующих условий:

  • сервер находится за NAT, имеет приватный IP-адрес, но должен быть доступен из Интернет, поддерживает пассивный режим и использует нестандартные TCP порты. Использование нестандартных портов позволяет уменьшить вероятность хакерских атак, и кроме того, некоторые провайдеры используют фильтрацию трафика и блокируют стандартные 20 и 21 порты.
  • пользователи имеют возможность скачивать с сервера, закачивать на сервер, удалять и переименовывать файлы и папки.
  • в случае использования динамического IP-адреса, требуется обеспечить доступность сервера по DNS-имени.
  • сервер будет функционировать на рабочей станции в среде ОС Windows 7 / Windows 8.
  • Другими словами, нужно создать доступный из Интернет FTP-сервер для обмена файлами между пользователями, разумеется бесплатно. Вполне понятно, что кроме создания необходимой конфигурации самого FTP - сервера, потребуется изменение некоторых настроек маршрутизатора, параметров брандмауэра Windows, решение проблемы динамического IP-адреса, чтобы сервер был доступен по имени, независимо от смены IP-адреса.

    Решение проблемы динамического IP-адреса.

        Данная проблема не требует решения в тех случаях, когда при подключении к интернет используется статический IP - адрес, или же динамический, но в соответствии с настройками провайдера, практически всегда один и тот же. В противном случае, можно воспользоваться технологией, получившей название Динамический DNS ( DDNS ) . Данная технология, позволяет почти в реальном масштабе времени обновлять информацию об IP-адресе на DNS-сервере, и получать доступ к маршрутизатору (и службам за ним) по зарегистрированному имени, не обращая внимание на изменение динамического IP.

    Для бесплатной реализации данной технологии потребуется регистрация на каком-нибудь сервисе динамического DNS и установка клиентского программного обеспечения для обновления записи DNS в случае изменения соответствующего IP-адреса. Поддержку динамического DNS, как правило, осуществляют производители сетевого оборудования (D-Link, Zyxel и др.), некоторые хостинговые и специализированные компании, как например, широко известная DynDNS . Однако, после того, как во второй половине 2014 года, все услуги, которые предоставлялись зарегистрированным пользователям бесплатно для некоммерческого использования, стали платными, наиболее популярным решением, пожалуй, стало использование динамического DNS на базе сервиса No-IP.org , который в бесплатном режиме предоставляет услуги по поддержке 2-х узлов с динамическим IP. Для бесплатного использования сервиса потребуется регистрация, и периодическое (приблизительно 1 раз в месяц) посещение сайта для обновления информации об используемых узлах с динамическим IP. Эсли пропустить обновление данных об узле, то услуга приостанавливается, и соответственно, подключиться к узлу по имени станет невозможно. При платном использовании сервиса обновление не требуется.

        Практически все современные маршрутизаторы (модемы) имеют встроенную поддержку динамического DNS-клиента. Его настройка обычно очень простая, - заполняются поля с именем пользователя и паролем, а также с именем узла, полученные при регистрации на сервисе DDNS . Пример для Zyxel P660RU2

        Использование клиента DDNS, встроенного в маршрутизатор/модем предпочтительнее по сравнению с утилитой обновления данных DNS, работающей в среде ОС, поскольку позволяет реализовать дополнительные возможности, как например, управление маршрутизатором через Интернет при выключенном компьютере и удаленное включение электропитания компьютеров за NAT по технологии Wake On Lan .

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

    Порядок действий следующий:

  • Идем на сайт No-IP.org . Для работы с уже имеющейся или новой учетной записью используется кнопка "Sign In" (в верхней правой части страницы).

  • Создаем, если она еще не создана, свою учетную запись - жмем "Create Account" . Форма регистрации периодически меняется, но обязательными являются ввод желаемого имени пользователя, пароля и вашего E-mail. На указанный при регистрации e-mail приходит письмо с ссылкой для подтверждения регистрации. При регистрации выбираем бесплатный доступ - жмем кнопку Free Sign Up после заполнения всех требуемых полей формы.
  • После успешной регистрации входим на сайт и добавляем запись для своего узла - жмем кнопку "Add Hosts"

    Фактически, необходимо ввести только выбранное имя узла, в данном случае - myhost8.ddns.net . Остальные параметры менять не нужно. Затем необходимо скачать и установить специальное программное обеспечение - Dynamic Update Client (DUC), ссылка на который размещена на главной странице сайта. После завершения установки DUC выполнится его запуск и откроется окно авторизации, где нужно ввести имя пользователя или E-mail и пароль, полученные при регистрации на сайте no-ip.org. Затем нажать кнопку Edit Hosta и поставить галочку напротив созданного ранее имени узла (myhost8.ddns.net) . Теперь, выбранному имени узла будет постоянно соответствовать "белый IP-адрес" вашего подключения к Интернет. При возникновении проблем с обновлением IP-адреса, проверьте, не блокируется ли сетевая активность клиента DUC брандмауэром.

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

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

    Настройки FileZilla Server выполняются через меню "Edit" -"Settings"

    Окно General Settings предназначено для общих настроек FTP-сервера.

    В поле "Listen on this port" можно указать номер порта для входящих TCP-соединений. По умолчанию в данном поле установлено значение 21 , и для использования нестандартного номера нужно указать выбранное значение, например - 12321 . Использование нестандартного TCP-порта имеет некоторое неудобство, поскольку требует обязательное указание его значения при создании сеанса:

    Если сервер планируется использовать как с доступом из Интернет, так и в локальной сети, есть смысл оставить стандартное значение 21, а нестандартный номер порта использовать для подключений из Интернет, настроив перенаправление пакетов, пришедших на порт 12321 маршрутизатора, на порт 21 FTP-сервера в локальной сети. При такой настройке, для FTP-сессий внутри локальной сети указывать номер порта не нужно.

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

    Welcome Message - текст, который передается клиенту при подключении.

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

    IP Filter - настройка правил фильтрации IP-адресов клиентов. По умолчанию - разрешены подключения для любых IP.

    Раздел Passive mode settings служит для настроек пассивного режима FTP и потребует изменения практически всех параметров, принятых по умолчанию.

    Номера портов, которые будут использоваться для передачи данных в пассивном режиме, нужно задавать вручную, поскольку потребуется настройка маршрутизатора для перенаправления их на слушаемый сервером сетевой интерфейс. Поэтому нужно установить галочку на разрешение режима "Use custom port range" и задать диапазон - например от 50000 до 50020 . Количество портов, слушаемых сервером, определяет предельное число одновременных сеансов передачи данных.

    Подраздел IPv4 specific определяет IP - адрес, который будет отправляться сервером в ответ на команду PASV. В данном случае, это должен быть не собственный IP сервера 192.168.1.3, а "белый IP" нашего подключения к Интернет. Поэтому нужно установить режим "Use the following IP" и вместо IP-адреса ввести имя, полученное при регистрации на сервисе динамического DNS - myhost8.ddns.net . В качестве альтернативы, можно использовать режим определения внешнего IP-адреса средствами проекта FileZilla, включив. "Retrieve external IP Address from:". Данный вариант можно выбрать в тех случаях, когда нет возможности использовать средство динамического DNS. Если предполагается использование FTP - сервера в своей локальной сети, нужно установить режим "Don"t use external IP for local connections" (не использовать внешний IP-адрес для соединений внутри локальной сети)

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

    Miscellaneous - настройки размеров буферов и прочих параметров журналов и некоторых команд FTP.

    Admin Interface settings - настройки панели управления сервером. Можно указать сетевой интерфейс, номер слушаемого порта, IP-адреса, с которых разрешено подключение к панели управления и пароль.

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

    Speed Limit - настройки ограничения скорости передачи данных. По умолчанию - без ограничений.

    Filetransfer compression - настройки сжатия файлов при передаче. По умолчанию - без сжатия.

    SSL/TLS settings включение режима шифрования передаваемых данных. По умолчанию - без шифрования.

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

    Настройка перенаправления портов и брандмауэра

    Для того, чтобы FTP-сервер был доступен из Интернет, необходимо выполнить настройки маршрутизатора таким образом, чтобы входящие соединения, пришедшие на определенные TCP-порты внешнего интерфейса, перенаправлялись на TCP - порты, слушаемые FTP-сервером внутренней сети. Для различных моделей маршрутизаторов настройки могут отличаться терминологией, но смысл их один и то же - принятый на внешнем (WAN) интерфейсе TCP-пакет с определенным номером порта переслать в локальную сеть на нужный IP-адрес и порт. Пример настроек маршрутизатора D-Link DIR-320NRU для перенаправления портов, используемых для пассивного режима FTP:

    Пакеты, принятые на интерфейсе с "белым IP" и имеющие номера портов в диапазоне 50000-50020 будут перенаправляться на IP-адрес, задаваемый полем "Внутренний IP" (в нашем случае - 192.168.1.3). Аналогичным образом создается перенаправление для порта 50021, если вы изменили номер стандартного порта, или на порт 21 FTP-сервера, если вы оставили его без измененния.

    После применения данных настроек, FTP-сервер будет доступен по URL ftp://myhost8.ddns.net:50021 или, для соединения внутри локальной сети:

    ftp://192.168.1.3 - если вы не изменяли стантартный номер порта (21) в настройках FTP-сервера.

    ftp://192.168.1.3:50021 - если используется нестандартный номер порта.

    Вместо IP-адреса можно использовать имя компьютера, если оно может быть разрешено в IP-адрес

    ftp://comp1

    ftp://comp1.mydomain.ru

    Диагностика проблем

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

    Начать диагностику лучше всего на самом FTP-сервере. В качестве средства диагностики, можно использовать стандартный telnet - клиент (утилита telnet.exe ) . Все брандмауэры не блокируют соединения на петлевом интерфейсе и для проверки правильности настроек сервера можно подключиться к нему введя команду:

    telnet localhost 21 - если используется стандартный номер порта.

    telnet localhost 50021 - если был изменен стандартный номер порта.

    При выполнении данной команды происходит подключение к FTP-серверу по петлевому интерфейсу и в окне telnet должно отобразиться приглашение сервера (Welcome Message). Если этого не происходит, возможно, сервер остановлен, имеет место конфликт портов, или слушается не порт 21 (50021) . Для диагностики можно использовать команду netstat :

    netstat –nab

    Параметры командной строки означают:

    n - использовать числовые номера портов и адреса IP

    a - отображать все соединения и слушаемые порты

    b - отображать имена программ, участвующих в создании соединений.

    Пример отображаемых результатов выполнения команды:

    Активные подключения

    Имя     Локальный адрес     Внешний адрес     Состояние
    TCP         0.0.0.0:21                 0.0.0.0:0                 LISTENING
    TCP         0.0.0.0:135               0.0.0.0:0                 LISTENING
    RpcSs

    В колонке Локальный адрес имеется значение 0.0.0.0:21 , которое говорит о том, что программа с именем FileZilla Server.exe слушает (состояние LISTENING ) TCP порт с номером 21 на всех сетевых интерфейсах. Если в настройках FTP-сервера был указан конкретный интерфейс и другой номер порта, то это значение будет содержать IP:порт , например – 192.168.1.3:50021

    Для вывода результатов в постраничном режиме, можно воспользоваться командой:

    netstat -nab | more

    Или использовать поиск результатов по номеру порта: netstat -nab | find ":21"

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

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

    Настройка пользователей и групп выполняется через меню "Edit" - "Users" ("Groups"). Группы создавать необязательно, но иногда удобно, для тех случаев, когда имеется большое количество пользователей, и их права по отношению к FTP-серверу различаются. Настройки и групп и пользователей практически идентичны:

    В данном примере отображен результат добавления пользователя FTP-сервера с именем user1 имеющего полные права на запись, чтение, удаление и слияние файлов, а также на просмотр содержимого, удаление и создание подкаталогов в каталоге C:\ftp\public

    На странице General выполняется добавление, удаление и изменение свойств пользователей.
    На странице Shared Folders выполняются настройки, определяющие перечень каталогов файловой системы, которые будут использоваться FTP-сервером для предоставления доступа к ним по протоколу FTP. Каждому пользователю или группе пользователей может предоставлен свой каталог с определенными правами по отношению к его содержимому.
    На странице Speed limits можно задавать ограничения по скорости обмена данными.
    На странице IP Filter можно задать правила фильтрации для IP - адреса пользователя, указав адреса с которых запрещено или разрешено подключение к серверу.

    Список основных команд FTP

    ABOR - Прервать передачу файла
    CDUP - Сменить директорию на вышестоящую.
    CWD - Сменить текущую директорию.
    DELE - Удалить файл (DELE filename).
    HELP - Выводит список команд принимаемых сервером.
    LIST - Возвращает список файлов директории. Список передается через соединение данных (20 порт).
    MDTM - Возвращает время модификации файла.
    MKD - Создать директорию.
    NLST - Возвращает список файлов директории в более кратком формате чем LIST. Список передается через соединение данных (20 порт).
    NOOP - Пустая операция
    PASV - Войти в пассивный режим. Сервер вернет адрес и порт к которому нужно подключиться чтобы забрать данные. Передача начнется при введении команд RETR, LIST и т.п.
    PORT - Войти в активный режим. Например PORT 12,34,45,56,78,89. В отличие от пассивного режима для передачи данных сервер сам подключается к клиенту.
    PWD - Возвращает текущую директорию сервера.
    QUIT - Отключиться
    REIN - Реинициализировать подключение
    RETR - Скачать файл. Перед RETR должна быть команда PASV или PORT.
    RMD - Удалить директорию
    RNFR и RNTO - Переименовать файл. RNFR - что переименовывать, RNTO - во что.
    SIZE - Возвращает размер файла
    STOR - Закачать файл на сервер. Перед STOR должна быть команда PASV или PORT.
    SYST - Возвращает тип системы(UNIX, WIN,)
    TYPE - Установить тип передачи файла(A- текстовый ASCII, I - двоичный)
    USER - Имя пользователя для входа на сервер

    Пример FTP-сессии

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

    После подключения, сервер передает клиенту сведения о себе:
    220-FileZilla Server version 0.9.45 beta
    220-written by Tim Kosse ([email protected])
    220 Please visit http://sourceforge.net/projects/filezilla/
    Клиент передает имя пользователя:
    USER user1
    Сервер запрашивает ввод пароля:
    331 Password required for user1
    Клиент передает пустой пароль:
    PASS
    Сервер проверяет учетную запись пользователя и сообщает о начале сеанса:
    230 Logged on
    Клиент запрашивает тип операционной системы на сервере:
    SYST
    Сервер сообщает, что тип Unix , эмулируемый Filezilla-сервером:
    215 UNIX emulated by FileZilla
    Клиент запрашивает перечень параметров, поддерживаемых сервером:
    FEAT
    Сервер отвечает перечнем поддерживаемых параметров:
    211-Features:
    MDTM
    REST STREAM
    SIZE
    MLST type*;size*;modify*;
    MLSD
    UTF8
    CLNT
    MFMT
    211 End

    Клиент запрашивает текущий каталог сервера:
    PWD
    Сервер сообщает, что текущий каталог – корневой ("/"):
    257 "/" is current directory.
    Клиент сообщает, что будет передавать двоичные данные:
    TYPE I

    Сервер подтверждает тип передаваемых данных:
    200 Type set to I
    Клиент сообщает, что будет использовать пассивный FTP-режим:
    PASV
    Сервер сообщает о переходе в пассивный режим и передает IP и порт для пассивного FTP-режима.
    227 Entering Passive Mode (212,248,22,114,195,97)
    Клиент запрашивает прием файла с именем cpu-v из текущего каталога сервера
    RETR cpu-v
    Сервер сообщает о начале передачи данных:
    150 Opening data channel for file download from server of "/cpu-v"
    По завершении, сервер сообщает об успешной передаче:
    226 Successfully transferred "/cpu-v"

    В заключение добавлю, что проект Filezilla включает в себя не только разработку и поддержку качественного бесплатного FTP-сервера, но и популярного бесплатного FTP-клиента

    Статья с кратким описанием бесплатного FTP клиента для Linux, Mac OS и Windows. Данный FTP клиент поддерживает множество прикладных протоколов передачи данных - FTP, FTP поверх SSL/TLS (FTPS), SSH File Transfer Protocol (SFTP), HTTP, SOCKS и FTP-Proxy. Другими словами, Filezilla FTP Client - это универсальное программное обеспечение для приема и передачи файлов по всем современным прикладным протоколам между узлами на различных платформах.

    Порой у человека появляется потребность обмениваться большими файлами в Сети. Отсылать такие файлы, размер которых превышает 10 Мб, неудобно через электронную почту, так как не все сервисы дают на это добро, потому либо приходится дробить файл на части, либо архивировать его, чтобы снизить размер до требуемого. А что делать, если вам нужно выслать не один файл весом выше 100 Мб? Тогда вам пригодится свой FTP server. Вы сможете сделать его на удаленном компьютере и загружать туда любые файлы на высокой скорости через клиент. В данной статье рассмотрим, как создать FTP сервер и в чем заключается основная настройка FTP сервера.

    Для каких случаев нужен свой FTP server

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

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

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

    У вас может быть своя причина, почему вы хотите сделать FTP server, как и метод, которым вы это осуществите. Но в данной статье будет рассмотрен популярный способ генерации «дома» — вы узнаете, как настроить FTP при помощи программы FileZilla.

    Как сделать FTP server в FileZilla

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

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

    Последний этап установки — это определение пользователей, которым можно пользоваться программой FileZilla server. Лучше, чтобы вы были единственным пользователем на компьютере — тогда не придется настраивать доступ к программе вручную. После этого жмете не кнопку «Install», и дожидаетесь окончания установки.

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

    Далее вам нужно пройти в меню «Edit» и открыть «Settings». Во вкладке «General» вы увидите основные настройки для сервера. Вы сможете задать порт, по которому будут подключаться пользователи к серверу, указать максимальное число клиентов, потоков и ограничить сессии таймаутами. Вот теперь порт имеет значение — чтобы обезопасить свой сервер, лучше указать нестандартный порт. Но потом вам нужно будет оповестить об этом пользователей. Если вы не планируете как-либо ограничивать число клиентов, то можете оставить в поле «Max. number of user» значение «0», то есть отсутствие лимита.

    Преимущество создания сервера именно при помощи FileZilla server в том, что все настройки вы можете выставлять при помощи удобного интерфейса. Если бы вы делали это где-нибудь в среде Linux, то вам пришлось бы все конфигурации прописывать, что не очень удобно и сложно. К примеру, в FileZilla даже можно настроить привественное сообщение для пользователей. Для этого вам всего лишь нужнно зайти в раздел «Welcome message» и написать текст приветствия для клиентов. А в иной среде вам бы пришлось прописывать специальные команды для этого.

    В пункте «IP buildings» вы сможете указать IP-адреса, для которых сервер будет доступен. Если вы укажите ваш IP-адрес, то сервер будет доступен только в локальной сети для вашего компьютера. Если вы хотите работать через сервер в Интернете, то не рекомендуется ограничивать IP-адреса. Если же у вас есть недоброжелатели, и вы знаете их IP-адреса, то можете прописать их в пункте «IP Filters», который будет запрещать вход для указанных IP (можно указывать диапазоны).

    Главное отличие настройки сервера для локальной сети и Интернета в том, что во втором случае вам придется как-то согласовать конфигурации с фаерволом и роутером. Фаервол может начать «ругаться» из-за того, что кто-то пытается подключиться к компьютеру, а роутер может не пропустить их через порт. В таком случае вам нужно указать в настройках FileZilla внешний IP-адрес компьютера в разделе «Passive mode settings». Для локальной сети ничего подобного делать не придется — все сразу заработает.

    Многие настройки внутри программы FileZilla server вам и вовсе не стоит трогать. К примеру, вам навряд ли понадобится настройка пункта меню «Security Settings», который нужен для регулировки подключения сервера к серверу. Также вам не нужно настраивать «Miscellaneous» и многие другие разделы меню. Не старайтесь вначале разобрать сразу все конфигурации программы, дабы не запутаться и создать конфликтные ситуации в работе сервера из-за неправильных настроек.

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

    Во вкладке «Speed Limits» вы сможете добавить ограничения как для исходящих, так и для входящих соединений в плане скорости загрузки. Но не стоит этого делать, если нет потребности. Ведь один из самых основных плюсов протокола FTP — это быстрая загрузка, которая перестанет быть таковой, если поставите ограничения. После того, как разберетесь в настройках, добавьте пользователей через меню «Users» — и вашим сервером уже можно будет пользоваться! Только не забудьте передать данные для входа пользователям. По надобности, вы сможете указать анонимных юзеров без логинов. Обязательно укажите для пользователей права доступа.