Настройка будет состоять из пунктов:
- Настройка Брандмауэра
- Создание пользователей
- Настройка FTP-сайта
- Изоляция пользователей
Установка FTP-сервера
Для начала нужно установить FTP-сервер.
Открываем Пуск
в нижнем левом углу, Диспетчер серверов (Server Manager)
, плитка которого закреплена по умолчанию. Далее все основные действия по настройке будем совершать здесь.
Находим пункт Добавить Роль и Функции (Add roles and features)
.
Появится мастер добавления ролей, для продолжения нажимаем Далее (Next)
.
В качестве типа установки выбираем Базовая Роль или Базовая Функция (based-roles or feature-based installation)
.
Далее из списка серверов, выбираем нужный сервер, в качестве примера он один, поэтому жмём Далее (Next)
.
На этапе выбора ролей отмечаем роль Веб-сервер (IIS) (Web Server (IIS))
.
Откроется окно и предложит установить Консоль управления службами IIS (IIS Management Console)
, жмем Добавить компоненты (Add Featues)
, они понадобятся, чтобы администрировать FTP-сервер, жмем Далее (Next)
.
Следующие 2 шага пропускаем, нажимая Далее (Next)
.
Дойдя до пункта Службы ролей (Role Services)
, снимаем все галочки и выбираем Служба FTP (FTP Service)
и Консоль управления службами IIS (IIS Management Console)
, жмем Далее (Next)
.
На следующем пункте проверяем все компоненты и жмём Установить (Install)
.
Дожидаемся окончания установки, после чего жмём Закрыть (Close)
.
Далее ещё нужно настроить пару моментов, не торопитесь перезагружать сервер.
Настройка Брандмауэра
Для подключения к FTP-серверу необходимо настроить Firewall. Для этого откройте Брандмауэр Windows
в режиме повышенной безопасности (Windows Firewall with Advanced Security)
.
В вертикальном меню слева выберите Правила для входящих подключений (Inbound rules)
, затем в вертикальном меню справа Создать правило (New Rule)
.
В открывшемся окне отмечаем тип Предопределенные (Predefined)
и в выпадающем списке выберите FTP-сервер (FTP Server)
. Нажмите Далее (Next)
.
Отмечаем все галочки, Далее (Next)
, Готово (Finish)
. Перезагружаем сервер для применения всех настроек.
Создание пользователей
Теперь нужно создать пользователей, которым дадим право подключаться к FTP-серверу.
Открываем Управление компьютером (Computer Management)
.
Открываем пункт Локальные пользователи и группы (Local Users and Groups)
, щелкаем правой кнопкой мыши по пункту Пользователи (Users)
и выбираем Новый пользователь (New User)
. Заполняем необходимые поля, снимаем все галочки и жмем Создать (Create)
.
Если появилась следующая ошибка при создании пользователя, значит пароль не соответствует нужным требованиям:
Пароль должен соответствовать как минимум трём условиям из списка перечисленного ниже:
- Наличие прописных букв английского алфавита от A до Z;
- Наличие строчных букв английского алфавита от a до z;
- Наличие десятичных цифр (от 0 до 9);
- Наличие неалфавитных символов (например, !, $, #, %).
Настройка FTP-сайта
Открываем Диспетчер служб IIS (Internet Information Server (IIS) Manager)
.
В окне Подключения (Connections)
, кликаем правой кнопкой мыши по нашему сайту, выбираем Добавить FTP-сайт (Add FTP Site)
.
В открывшемся окне Добавить FTP-сайт (Add FTP Site)
вводим название нашего FTP-сайта, указываем нужную директорию и жмём Далее (Next)
.
Далее указываем IP-адрес из выпадающего списка, или указываем Все свободные (All Unassigned)
. Отмечаем галочку ниже. Указываем настройки SSL, если нужно чтобы использовалось шифрование, устанавливаем SSL-сертификат, если нет, то выбираем первый вариант, как показано в примере. Жмём Далее (Next)
.
Выбираем проверку подлинности как Обычную (Basic)
. Из выпадающего списка выбираем Указанные пользователи (Specified users)
, и вводим имя ранее созданного пользователя. Ставим галочки напротив необходимых разрешений: Чтение (Read)
или Запись (Write)
. Нажимаем Готово (Finish)
.
Изоляция пользователей
Чтобы после подключения к FTP-серверу пользователь попадал в свою директорию и не имел доступ к чужим файлам других пользователей, необходимо настроить их изоляцию. Для этого откройте настройки вашего ftp сайта и выберите Изоляция пользователей (FTP User Isolation)
.
Выберите Каталог имени пользователя (User name directory)
и Примените (Apply)
.
Кликаем правой кнопкой мыши по нашему FTP-сайту, выбираем Добавить виртуальный каталог (Add Virtual Directory)
.
В первой строке указываем имя FTP-пользователя, ниже полный путь к директории пользователя. Её нужно создать заранее. Для понимания какая директория кому принадлежит, лучше создавать директорию с именем пользователя.
Необходимо настроить права на виртуальный каталог, кликаем правой кнопкой мыши по нему, выбираем Редактировать разрешения (Edit Permission)
.
Переходим во вкладку Безопасность (Security)
и жмём кнопку Дополнительно (Advanced)
.
В окне жмём кнопку Отключение наследования (Disable inheritance)
, в новом окне выбираем первый вариант, затем Применить (Apply)
и ОК
.
Жмём кнопку Изменить (Edit)
.
Удаляем группу пользователей Users
, и добавляем нового пользователя.
В новом окне, нужно ввести имя FTP-пользователя, для проверки нажмите Проверить имена (Check Names)
. Если пользователь есть, строка, где вводили имя, дополнится, нажмите ОК
.
Даём все права пользователю на его директорию, отметив все галочки в первой колонке, жмём Применить (Apply)
— ОК
.
На этом все настройки завершены. Чтобы подключиться к серверу, используйте следующие доступы:
- Хост: IP сервера
- Пользователь: FTP-пользователь, которого вы создали
- Пароль: Пароль от FTP-пользователя
Подключиться можно через разное ПО, например FileZilla или, если вы используете Windows — Проводник, введя в адресной строке ftp://IP-сервера
, после чего откроется окно для входа.
-
Главная
-
Инструкции
-
Windows
-
Как настроить FTP-сервер на Windows Server 2019
Настройка FTP Server состоит из нескольких этапов. Сначала нужно установить сам сервер, затем — создать и изолировать пользователей, настроить брандмауэр и FTP-соединение. Рассмотрим все этапы подробно в этом руководстве.
Но сначала быстро вспомним, что такое FTP-сервер. Фактически это только часть инфраструктуры, которая позволяет передавать данные между хостами. Вторая часть — клиент. Между ними устанавливается соединение, которое использует File Transfer Protocol.
Главный плюс такого подключения — кроссплатформенность. Минусов хватает: скорость обмена файлами не очень высокая, есть проблемы с безопасностью. Но протокол все равно пользуется популярностью.
Нам нужен хост с установленной и настроенной ОС Windows Server 2019. Заказать его можно на timeweb.cloud.
Вот инструкция, которая поможет организовать FTP-сервер. Названия всех разделов будут на русском. Но если у вас англоязычный интерфейс, вы тоже без проблем разберетесь.
- Вызовите меню «Пуск» и запустите «Диспетчер серверов». Основные настройки вы будете выбирать через эту утилиту.
- Нажмите «Добавить роли и функции».
- Запустится мастер добавления. Чтобы продолжить работу с ним, щелкните «Далее».
- Выберите опцию «Базовая роль или Базовая функция».
- Укажите сервер, где должен появиться FTP on Windows.
- Отметьте роль — «Веб-сервер (IIS)».
- Появится окно с предложением добавить консоль администрирования служб IIS. Щелкните «Добавить компоненты».
- Пропустите следующие два шага, менять ничего не следует.
- В «Службах ролей» выделите пункты «Служба FTP» и «Консоль управления службами IIS».
- Проверьте список компонентов, готовых к инсталляции, и нажмите «Установить».
После завершения инсталляции закройте окно мастера. Win Server FTP готов к дальнейшей регулировке.
Настройка файрвола
Для конфигурирования файрвола, который защищает FTP сервер на Windows, зайдите в меню Tools в диспетчере и запустите Windows Firewall with Advanced Security. Далее:
- В левом меню перейдите к настройке правил входящих соединений.
- В правом меню выберите добавление правила.
- В настройках правила выделите тип «Предопределенные» и укажите значение «FTP-сервер».
- Выделите все предложенные опции и завершите конфигурирование правила.
Чтобы применить новую конфигурацию, перезагрузите сервер.
Управление пользователями
Одна из главных проблем протокола — низкий уровень безопасности. Поэтому нужно очень строго относиться к списку тех, кому можно подключаться, а кому — нет. Для этого настраиваются группы или отдельные пользователи.
- Откройте в диспетчере инструмент «Управление компьютером».
- Перейдите в «Локальные пользователи и группы».
- Вызовите правой кнопкой контекстное меню пункта «Пользователи» и перейдите к созданию новой учетной записи.
- Укажите имя и пароль. Выберите параметры учетной записи. Например, можно включить требование изменить пароль при первом подключении. Или наоборот – запретить менять пароли.
Чтобы система приняла пароль, он должен отвечать требованиям безопасности:
- Есть строчные и прописные латинские буквы.
- Есть цифры.
- Есть специальные символы вроде ! или #.
Никакой кириллицы — если пароль не проходит хотя бы одной характеристике, при попытке сохранить учетную запись появится сообщение об ошибке.
Добавление сайта
Для дальнейшей работы нам нужно поднять FTP-сайт. После создания юзеров возвращаемся к диспетчеру серверов. Вся настройка FTP-сервера будет проходить здесь. Затем:
- Запустите инструмент «Диспетчер служб IIS».
- В разделе «Подключения» вызовите контекстное меню нужного сервера и выберите добавление FTP-сайта.
- Укажите название сайта и выберите папку, в которой хранится его содержимое.
- Укажите IP-адрес для подключения или установите режим «Все доступные».
- Настройте параметры SSL. Можно не использовать шифрование или включить его и добавить свой сертификат.
- Выберите базовую проверку подлинности. Выдайте разрешение на аутентификацию «Указанным пользователям».
- Введите имя созданной учетки.
- Выдайте нужные разрешения — например, только чтение, чтение и запись.
- Нажмите «Готово».
Это только один из примеров конфигурации. Можно выдать разрешения не конкретным юзерам, а сразу целым группам. Подключать или не подключать SSL, менять разрешения и адрес для подключения. Финальная конфигурация зависит от того, какие задачи вы решаете.
Изолирование каталогов
На одном из предыдущих шагов мы создали учетные записи, через которые можно подключаться к серверу. Но обычно этого недостаточно для того, чтобы обеспечить даже минимальную безопасность. Еще один важный момент — изоляция.
Допустим, мы поднимаем сервер для телевизионной компании. Он нужен для того, чтобы обмениваться видео между разными отделами. Операторы загрузили, монтажеры забрали, корреспонденты посмотрели.
Изолирование позволяет сделать так, чтобы каждый тип пользователей имел доступ только к конкретным директориям.
У нас есть FTP-сайт. Переходим в параметры и начинаем делить зоны доступности между разными учетными записями.
- Откройте «Изоляцию пользователей».
- Выберите «Каталог имени пользователя» и кликните «Применить».
- Вызовите контекстное меню FTP-сайта и создайте виртуальный каталог.
- Укажите логин, а в строке ниже — полный путь к папке, которой он будет пользоваться. Чтобы было проще разобраться, кому куда можно, лучше сразу в имени директории использовать логин.
У нас есть один виртуальный каталог. Изменим права доступа.
- Вызовите контекстное меню виртуального каталога и перейдите к редактированию разрешений.
- Откройте параметры безопасности и нажмите «Дополнительно».
- Запретите наследование и сохраните изменения.
- Вернитесь к параметрам безопасности.
- Щелкните «Изменить» под списком групп/пользователей.
- Удалите группу Users и добавьте нового пользователя.
- Впишите имя FTP-пользователя и запустите проверку имен.
- Щелкните «ОК» для сохранения изменений.
- Выдайте новому пользователю нужные права и сохраните конфигурацию.
Организация FTP-сервера завершена.
Подключение через FTP
Мы разобрались, как создать FTP-сервер и настроить учетные записи пользователей. Напоследок посмотрим, как соединиться с нашим файловым хранилищем.
Для установки соединения требуется клиент. Один из самых известных — FileZilla. Можно также использовать WinSCP.
Для подключения потребуется:
- IP-адрес FTP-сервера.
- Имя и пароль от созданной учетной записи.
После установки соединения пользователь будет попадать в ту директорию, которую вы указали в настройках сайта. Если вы настроили изоляцию, то он будет попадать в виртуальный каталог и не сможет переместиться в чужие папки.
Как известно, для обмена файлами в сети используется протокол FTP прикладного уровня модели OSI. Этот протокол позволяет осуществлять передачу файлов между клиентом и сервером. Он прекрасно работает как в локальной сети организации, так и в сети Интернет, для размещения файлов на каком-либо хостинге. Если по-простому, FTP-сервер и FTP-клиент, это программное обеспечение, которое предоставляет доступ к организованной структуры файлов и каталогов, доступ для их передачи и хранения на стороне сервера. А на стороне клиента, возможность доступа к этой структуре. В этой статье рассмотрим как установить и настроить FTP-сервер на базе ОС Windows Server 2016.
Установка сервера
Рассмотрим процедуру штатного развертывания сервера FTP, с помощью визарда Windows Server 2016. Этот инструмент позволит быстро развернуть сервер и полноценно насладиться его работоспособностью на основных настройках.
Откроем «Диспетчер серверов»:
Добавим роль серверу. Для этого последовательно перейдем в меню «Управление», и выберем «Добавить роли и компоненты»:
Открылось окно мастера, который позволит установить роли, определенные службы и компоненты на основании наших потребностей:
В разделе «Тип установки» выбираем опцию «Установка ролей и компонентов»:
Далее, в следующем окне выбираем необходимый нам сервер, для которого добавляются роли:
В окне ролей необходимо поставить галочку в строке «Веб-сервер (IIS)» и согласиться с добавлением компонентов, необходимых для работы Веб-сервера (IIS):
Следующее окно пропустим, т.к. больше никаких компонентов для нашей задачи добавлять не нужно. По нажатию кнопки «Далее» перейдем к настройке «Службы ролей»:
В этом окне необходимо активировать только «Службу FTP» и «Консоль управления службами IIS», нажать клавишу «Далее»:
На следующем шаге соглашаемся с выбранными компонентами и нажимаем «Установить»:
Процесс установки занимает не много по времени. По окончании процесса необходимо перезагрузить сервер:
Добавление пользователей
Для организации подключений к нашему FTP-серверу необходимо создать пользователя и наделить его соответствующими правами, которые в последствии определят его уровень доступа к файлам и каталогам.
Перейдем к настройкам и выберем в «Диспетчер сервером» раздел «Средства» оснастку «Управление компьютером»:
Далее, добавим нового пользователя как показано ниже:
После добавления роли, на локальном диске С:\ появился каталог C:\inetpub\ftproot\
. Этот каталог создается по умолчанию для FTP сервиса и является корневым. Для следующих этапов организации работы сервера FTP, необходимо создать иерархию каталогов, а также для изоляции пользователей. Архитектура будет следующей:
«имя сайта» -> «users» -> «ftp-client»
В итоге получилось следующая структура: C:\inetpub\ftproot\FTP\Users\FTPUser\
.
Перейдем к настройке сайта.
Настройка сайта
Теперь нужно будет добавить сайт. Переходим в «Диспетчер серверов», выбирает раздел «Средства» и запускаем оснастку «Диспетчер служб IIS»:
Добавляем FTP-сайт правой клавишей мыши как показано на рисунке ниже:
В разделе «Сведения о сайте» даем название FTP-сайту, указываем путь до корневого каталога и нажимаем «Далее»:
Далее, в окне «Параметры привязки и SSL» оставляем без изменений, нажимаем «Далее»:
Следующий шаг: в окне «Сведения о проверке подлинности и авторизация» выберем нашего пользователя FTPUser в разделе «Авторизация». Выберем обычную проверка подлинности и назначим права на «чтение и запись». Там нажмите кнопку «Далее»:
Для того, чтобы каждый FTP-пользователь мог иметь доступ только к своему каталогу на сервере, и не имел возможности просматривать каталоги других пользователей, необходимо настроить параметр «Изоляция пользователей».
В разделе «Изоляция пользователей FTP» отметить «Каталог имени пользователя …» и нажать «Применить» как показано на рисунке ниже:
Настройка брандмауэра для FTP-сервера
После того, как мы произвели соответствующие работы по созданию и настройке FTP-сервера, в Firewall добавились и активировались необходимые правила, для полноценного «хождения» трафика. Но для более успешной работы пользователей с сервером, важно поддерживать подключение в пассивном режиме. Произведем некоторые настройки.
Перейдем в раздел «Поддержка брандмауэра FTP»:
В окне «Диапазон портов канала данных» укажем, к примеру, порты 50000-50100 и нажмем «Применить»:
Перейдем к настройкам Windows Firewall и выберем в «Диспетчер серверов» раздел «Средства». Далее, найдите оснастку «Брандмауэр Windows в режиме повышенной безопасности»:
В окне «Правила для входящих подключений» создадим новое правило:
В открывшемся окне нужно будет выбрать тип «Предопределенные» -> «FTP-сервер» и нажать «Далее»:
Отметим все правила, поставив галочки и нажмем «Далее»:
На следующем шаге необходимо выбрать опцию «Разрешить подключение», после чего, нажать «Далее»:
После окончания настроек Windows Firewall важно перезагрузить сервер.
На этом настройка FTP-сервера на платформе Windows Server 2016 закончена.
Несмотря на то, что протоколу FTP, являющемуся одним из старейших протоколов, уже исполнилось больше 40 лет, он продолжает использоваться повсеместно там, где требуется простой протокол передачи файлов. Сервер FTP можно установить на всех операционных системах Microsoft. Последняя глубокая модернизация этой службы была произведена в Windows 7 / Server 2008 R2 (по сути код сервиса был переписан заново). Была существенно улучшена безопасность службы, и появился ряд новых возможностей. В частности, в FTP сервере на Windows появилась возможность настроить изоляцию FTP пользователей, позволяющая разграничить доступ множества пользователей к собственным папкам на одном FTP сервере.
Благодаря возможности изоляции пользователи могут работать только со своими ftp каталогами, и не могут подняться выше по дереву каталогов, т.к. каталог верхнего уровня пользователя отображается для него, как корень службы FTP. Таким образом можно предотвратить доступ пользователей к чужим файлам на FTP сервере. Изоляция FTP пользователей широко применяется хостинг-провайдерами, когда нужно предоставить индивидуальный доступ различным пользователям к одному файловому хранилищу.
Как и в предыдущих версиях Windows, служба FTP (не путайте с sFTP и TFTP) в Windows Server 2016/2012 R2 основана и глубоко интегрирована в сервис IIS, и имеет единый административный интерфейс управления. В этой статье мы покажем, как установить сервер FTP на базе IIS в Windows Server 2016 / 2012 R2 и настроить на нем изоляцию пользователей (инструкция также применима и к Windows 10 / 8.1).
Содержание:
- Установка роли FTP сервера в Windows Server 2016/ 2012 R2
- Настройка FTP сайта в Windows Server, предоставление прав пользователям
- Настройка изоляции FTP пользователей в Windows Server 2016/2012 R2
- Настройка правил брандмауэра Windows для доступа к FTP серверу
- Проверка подключения к FTP серверу с Windows клиента
Установка роли FTP сервера в Windows Server 2016/ 2012 R2
Установить сервис FTP можно через консоль Server Manager, отметив в разделе Web Server(IIS) -> FTP Server опции FTP Service и FTP Extensibility.
Также можно установить роль FTP сервера одной командой PowerShell:
Install-WindowsFeature Web-FTP-Server
Чтобы установить консоль управления FTP сервером выполните команду:
Install-WindowsFeature -Name "Web-Mgmt-Console"
Настройка FTP сайта в Windows Server, предоставление прав пользователям
Запустите Server Manager и откройте консоль управления IIS (Internet Information Service Manager).
Создайте новый FTP сайт (Sites ->Add FTP Site).
Имя FTP сайта: MyTestSite
Корневой каталог FTP сайта: C:\inetpub\ftproot
Для защиты передаваемых по сети ftp-данных возможно настроить SSL (в этом случае все передаваемые по сети данные и пароли/учетки ftp-пользователей будут зашифрованы), но в нашей демонстрации это не обязательно. Все остальные настройки оставляем стандартными.
Вы можете управлять FTP сайтом с помощью модуля PowerShell WebAdministration. Напримерм, чтобы создать новый FTP сайт достаточно выполнить команды:
Import-Module WebAdministration
#Задаем имя FTP сайта
$FTPSiteName = 'New FTP Site'
#Каталог FTP сайта
$FTPRoot = 'E:\www\FTPRoot'
#порт FTP сайта
$FTPPort = 21
New-WebFtpSite -Name $FTPSiteName -PhysicalPath $FTPRoot -Port $FTPPort
Выберите новый FTP сайт и в секции FTP Authentication (Аутентификация) отключите анонимную аутентификацию Anonymous Authentication. Basic Authentication должна быть включена.
FTP служба на Windows Server 2016 / 2012 R2 может использовать два типа учетных записей: доменные или локальные. В зависимости от типа учетной записи есть различия в структуре каталогов FTP и настройках изоляции пользователей. Мы будем использовать локальные учетные записи Windows.
Создайте FTP пользователей, допустим, это будут учетные записи ftp_user1, ftp_user2 и ftp_user3. Также создайте группу ftp_users, в которую включим этих пользователей. Создать пользователей можно в разделе Local Users and Groups консоли Computer Management.
Также можно создать пользователей и группы из командной строки (или с помощью PowerShell). Создайте локальную группу:
net localgroup ftp_users /add
Создайте нового локального пользователя:
net user ftp_user1 /add *
Добавьте пользователя в группу:
net localgroup ftp_users ftp_user1 /add
Точно так же создайте еще двух пользователей.
Предоставьте созданной группе ftp_users права (RW) на каталог C:\inetpub\ftproot.
Внутри каталога C:\inetpub\ftproot создадйте каталог с именем LocalUser (имя должно полностью соответствовать, это важно!!!). Затем внутри C:\inetpub\ftproot\LocalUser создайте три каталога с именами созданных вами пользователей: ftp_user1, ftp_user2, ftp_user3.
Примечание. В зависимости от типа учетных записей необходимо создать следующую структуру каталогов (под %FtpRoot%\ подразумевается корень сайта FTP, в нашем случае это C:\inetpub\ftproot\):
Тип учетной записи | Синтаксис именования домашних каталогов |
Анонимные пользователи | %FtpRoot%\LocalUser\Public |
Локальная учетная запись Windows | %FtpRoot%\LocalUser\%UserName% |
Доменная учетная запись Windows | %FtpRoot%\%UserDomain%\%UserName% |
Специальные учетки IIS Manager или ASP.NET | %FtpRoot%\LocalUser\%UserName% |
Вернитесь в консоль IIS и в разделе сайта FTP Authorization Rules создайте новое правило (Add Allow Rule), в котором укажите, что группа ftp_users должна иметь права на чтение и запись (разрешения Read и Write).
Настройка изоляции FTP пользователей в Windows Server 2016/2012 R2
Перейдем к настройке изоляции пользователей FTP. Изоляция FTP пользователей настраивается на уровне сайта FTP, а не всего сервера и позволяет организовать собственный домашний каталог для каждого пользователя. В настройках FTP сайта откройте пункт FTP User Isolation.
В этом разделе имеются несколько настроек. Первые две не предполагают изоляции пользователей:
- FTP root directory (ftp‑сессия пользователя начинается с корневого каталога ftp-сайта);
- User name directory (пользователь начинает работу с физического/виртуального каталога с именем пользователя. Если каталог отсутствует, сессия начинается с корневого каталога ftp-сайта).
Следующие 3 опции представляют различные режимы работы изоляции пользователей:
- User name directory (disable global virtualdirectories) – предполагает, что ftp-сессия пользователя изолирована физическим или виртуальным каталогом имя которого соответствует имени пользователя ftp. Пользователи видят только собственный каталог (для них он является корневым) и не могут выйти за его рамки (в вышестоящий каталог дерева FTP). Любые глобальные виртуальные каталоги игнорируются;
- User name physical directory (enable global virtual directories) – предполагается, что FTP-сессия пользователя ограничена (изолирована) физическим каталогом с именем учетной записи пользователя FTP. Пользователь не может перейти выше своего каталога по структуре FTP. Однако пользователю доступны все созданные глобальные виртуальные каталоги;
- FTP home directory configured in Active Directory – FTP-пользователь изолируется в рамках своего домашнего каталога, заданного в настройках его учетной записи Active Directory (свойства FTPRoot и FTPDir).
Важно. Если глобальные виртуальные директории активны, все пользователи могут получить доступ ко всем виртуальным каталогам, настроенным в корне FTP сайта (при наличии соответствующих NTFS прав доступа).
Выберите нужный режим изоляции (я использую второй вариант изоляции ftp пользователей).
При любых изменениях настроек FTP сайта в IIS желательно перезапускать службу Microsoft FTP Service (FTPSVC).
Настройка правил брандмауэра Windows для доступа к FTP серверу
При установке роли FTP сервера в настройках Windows Firewall автоматически активируются все необходимые правила, которые нужна для доступа пользователей к FTP.
Для корректной работы FTP севера в пассивном режиме FTP пользователям нужно подключаться к RPC диапазону портов (1025-65535). Чтобы не открывать все эти порты на внешнем файерволе, вы можете ограничить диапазон динамических TCP портов, используемых для передачи данных.
- Для этого в настройках FTP сайта в IIS откройте пункт FTP Firewall Support и в поле Data Channel Port Range укажите диапазон портов, который вы хотите использоваться для FTP подключений. Например – 50000-50100;
- Сохраните изменения и перезапустите IIS (iisreset);
- Откройте панель управления и перейдите в Control Panel\System and Security\Windows Firewall\Allowed apps;
- Убедитесь, что в списке приложении, которым разрешен доступ через брандмауэр присутствуют разрешения для FTP Server.
Затем в настройках Windows Firewall with Advanced Security проверьте, что включены следующие правила:
- FTP Server (FTP Traffic-In) – протокол TCP, порт 21;
- FTP Server Passive (FTP Passive Traffic-In) – адрес локального порта 1024-65535 (либо 50000-50100 как в нашем примере);
- FTP Server Secure (FTP SSL Traffic-In) – (при использовании FTP с SSL) порт 990;
- FTP Server (FTP Traffic-Out) – порт 20;
- FTP Server Secure (FTP SSL Traffic-Out) – (при использовании FTP с SSL) порт 989.
Соответственно эти порты нужно открыть на шлюзе (межсетевом экране) для подключения внешних FTP пользователей.
Проверка подключения к FTP серверу с Windows клиента
Вы можете проверить доступность портов на FTP сервере с помощью командлета Test-NetConnection:
Test-NetConnection -ComputerName yourftpservername -Port 21
Или с помощью команды ftp:
ftp yourftpservername
Попробуйте подключиться к своему FTP сайту с помощью любого клиента FTP или непосредственно из Explorer (в адресной строке указав ftp://yourservername/.
Укажите имя и пароль пользователя.
В результате у вас откроется содержимое домашнего каталога с файлами пользователя (являющимся для пользователя корнем FTP сайта). Как вы видите, сессия пользователя является изолированной и пользователь видит на ftp сервера только свои файлы.
Совет. Если вы хотите использовать анонимный доступ (All anonymous Users), подключаться к вашему FTP серверу смогут любые пользователи, используя в качестве имени anonymous или guest, а в качестве пароля — email-адрес. При анонимном подключении к FTP сайту – сессия будет ограничена каталогом LocalUser\Public (естественно каталог Public должен быть создан предварительно).
Для просмотра информации о доступе пользователей к FTP серверу можно использовать журналы FTP, которые по умолчанию хранятся в каталоге c:\inetpub\logs\logfiles в файлах формата u_exYYMMDD.log.
Для просмотра текущих подключений пользователей к вашему серверу можно пользоваться значениями счетчиками пользователей IIS через PowerShell или функцией «Текущие сеансы FTP» в консоли IIS. В этой консоли можно посмотреть информацию об имени и IP адресе FTP пользователя и отключить сессию при необходимости.
Итак, мы рассмотрели, как настроить FTP сайт с изоляцией пользователей на базе Windows Server 2016 / 2012 R2. В режиме изоляции пользователи аутентифицируются на FTP под своими локальным или доменным учетными записями, после чего они получают доступ к своему корневому каталогу, соответствующему имени пользователя.
FTP Server enables the transfer of files between a client and server by using the File Transfer Protocol. File Transfer Protocol is a standard communication protocol used for transferring files. This step by step tutorial covers how to install and configure FTP Server on Windows Server 2022.
Table of Contents
- Install FTP Server
- Configure Passive Mode – FTP Server
Demo environment
- Computer Name: server1.test.com
- Operating System: Windows Server 2022 Datacenter
- IP Address: 192.168.0.2
Steps for Install FTP Server
- Open Add roles and features Wizard
- Select installation type
- Select destination server
- Select server roles
- Select features
- Select role services
- Confirm installation selections
1. Open Add roles and features Wizard
Open the Server Manager dashboard and click Add roles and features.
Before you begin, click Next.
2. Select installation type
Select Role-based or feature-based installation and click Next.
3. Select destination server
Select a Host to which you’d like to add services and click Next.
4. Select server roles
Choose the Web Server (IIS) box from the server roles page.
As soon as you choose Web Server (IIS) a new window appears. Click Add Features.
Please ensure the Web Server (IIS) option is selected and click Next.
5. Select features
On the Select features console, just click Next because we do not require any extra features at the moment.
On the Web Server Role (IIS) console, you can read brief information about the Web Server (IIS). Click Next to continue.
6. Select role services
Enable FTP Service and click Next.
7. Confirm installation selections
Verify installation selections and click Install.
After finishing Installation, click Close.
Configure Passive Mode – FTP Server
1. Open the Server Manager dashboard, click Tools, and select Internet Information Services(IIS) Manager.
2. Select FTP Firewall Support.
3. Configure the Data Channel Port range and click Apply.
4. Click OK.
5. Restart Microsoft FTP Service
Open the Server Manager dashboard, click Tools, and select Services.
Right click on Microsoft FTP Service and select Restart.
6. Create an Inbound port allow rule on Windows Firewall
Add inbound rule to allow passive ports you set and also 21 port FTP Service like follows.