Поднять ftp сервер на windows 2016

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

Несмотря на то, что протоколу 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 сервера на windows server 2012 r2

Также можно установить роль FTP сервера одной командой PowerShell:
Install-WindowsFeature Web-FTP-Server

Install-WindowsFeature Web-FTP-Server

Чтобы установить консоль управления FTP сервером выполните команду:

Install-WindowsFeature -Name "Web-Mgmt-Console"

Настройка FTP сайта в Windows Server, предоставление прав пользователям

Запустите Server Manager и откройте консоль управления IIS (Internet Information Service Manager).

Консоль управления IIS (Internet Information Service Manager)

Создайте новый FTP сайт (Sites ->Add FTP Site). Добавить новый FTP сайт

Имя FTP сайта: MyTestSite

Корневой каталог FTP сайта: C:inetpubftproot

Задаем имя и путь к каталогу ftp сайта

Для защиты передаваемых по сети ftp-данных возможно настроить SSL (в этом случае все передаваемые по сети данные и пароли/учетки ftp-пользователей будут зашифрованы), но в нашей демонстрации это не обязательно. Все остальные настройки оставляем стандартными.

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

Import-Module WebAdministration
#Задаем имя FTP сайта
$FTPSiteName = 'New FTP Site'
#Каталог FTP сайта
$FTPRoot = 'E:wwwFTPRoot'
#порт FTP сайта
$FTPPort = 21
New-WebFtpSite -Name $FTPSiteName -PhysicalPath $FTPRoot -Port $FTPPort

Выберите новый FTP сайт и в секции FTP Authentication (Аутентификация) отключите анонимную аутентификацию Anonymous Authentication. Basic Authentication должна быть включена.

Настройка fpt-аутентификации

FTP служба на Windows Server 2016 / 2012 R2 может использовать два типа учетных записей: доменные или локальные. В зависимости от типа учетной записи есть различия в структуре каталогов FTP и настройках изоляции пользователей. Мы будем использовать локальные учетные записи Windows.

Создайте FTP пользователей, допустим, это будут учетные записи ftp_user1, ftp_user2 и ftp_user3. Также создайте группу ftp_users, в которую включим этих пользователей. Создать пользователей можно в разделе Local Users and Groups консоли Computer Management.

Создаем пользователей ftp

Также можно создать пользователей и группы из командной строки (или с помощью PowerShell). Создайте локальную группу:
net localgroup ftp_users /add

Создаем группу пользователей ftp

Создайте нового локального пользователя:

net user ftp_user1 /add *

Создаем пользователя ftp

Добавьте пользователя в группу:

net localgroup ftp_users ftp_user1 /add

Добавляем пользователя в группу

Точно так же создайте еще двух пользователей.

Предоставьте созданной группе ftp_users права (RW) на каталог C:inetpubftproot.

NTFS разрешения на каталог ftproot

Внутри каталога C:inetpubftproot создадйте каталог с именем LocalUser (имя должно полностью соответствовать, это важно!!!). Затем внутри C:inetpubftprootLocalUser создайте три каталога с именами созданных вами пользователей: ftp_user1, ftp_user2, ftp_user3.

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

Тип учетной записи Синтаксис именования домашних каталогов
Анонимные пользователи %FtpRoot%LocalUserPublic
Локальная учетная запись Windows %FtpRoot%LocalUser%UserName%
Доменная учетная запись Windows %FtpRoot%%UserDomain%%UserName%
Специальные учетки IIS Manager или ASP.NET %FtpRoot%LocalUser%UserName%

Каталог ftprootLocalUser

Вернитесь в консоль IIS и в разделе сайта FTP Authorization Rules создайте новое правило (Add Allow Rule), в котором укажите, что группа ftp_users должна иметь права на чтение и запись (разрешения Read и Write). FTP Authorization Rules

Настройка изоляции 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 на windows server 2012 r2

Выберите нужный режим изоляции (я использую второй вариант изоляции ftp пользователей).

При любых изменениях настроек FTP сайта в IIS желательно перезапускать службу Microsoft FTP Service (FTPSVC).

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

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

Для корректной работы FTP севера в пассивном режиме FTP пользователям нужно подключаться к RPC диапазону портов (1025-65535). Чтобы не открывать все эти порты на внешнем файерволе, вы можете ограничить диапазон динамических TCP портов, используемых для передачи данных.

  1. Для этого в настройках FTP сайта в IIS откройте пункт FTP Firewall Support и в поле Data Channel Port Range укажите диапазон портов, который вы хотите использоваться для FTP подключений. Например – 50000-50100; ftp firewall support
  2. Сохраните изменения и перезапустите IIS (iisreset);
  3. Откройте панель управления и перейдите в Control PanelSystem and SecurityWindows FirewallAllowed apps;
  4. Убедитесь, что в списке приложении, которым разрешен доступ через брандмауэр присутствуют разрешения для FTP Server.ftp server правила в windows firewall

Затем в настройках 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 Server (FTP Traffic-In)

Соответственно эти порты нужно открыть на шлюзе (межсетевом экране) для подключения внешних FTP пользователей.

Проверка подключения к FTP серверу с Windows клиента

Вы можете проверить доступность портов на FTP сервере с помощью командлета Test-NetConnection:

Test-NetConnection -ComputerName yourftpservername -Port 21

Или с помощью команды ftp:

ftp yourftpservername

Попробуйте подключиться к своему FTP сайту с помощью любого клиента FTP или непосредственно из Explorer (в адресной строке указав ftp://yourservername/.

Укажите имя и пароль пользователя.

Подключаемся к ftp сайту из проводника

В результате у вас откроется содержимое домашнего каталога с файлами пользователя (являющимся для пользователя корнем FTP сайта). Как вы видите, сессия пользователя является изолированной и пользователь видит на ftp сервера только свои файлы. Изолированная FTP сессия

Совет. Если вы хотите использовать анонимный доступ (All anonymous Users), подключаться к вашему FTP серверу смогут любые пользователи, используя в качестве имени anonymous или guest, а в качестве пароля — email-адрес. При анонимном подключении к FTP сайту – сессия будет ограничена каталогом LocalUserPublic (естественно каталог Public должен быть создан предварительно).

Для просмотра информации о доступе пользователей к FTP серверу можно использовать журналы FTP, которые по умолчанию хранятся в каталоге c:inetpublogslogfiles в файлах формата u_exYYMMDD.log.

Для просмотра текущих подключений пользователей к вашему серверу можно пользоваться значениями счетчиками пользователей IIS через PowerShell или функцией «Текущие сеансы FTP» в консоли IIS. В этой консоли можно посмотреть информацию об имени и IP адресе FTP пользователя и отключить сессию при необходимости.просмотр активных ftp подключений в windows server

Итак, мы рассмотрели, как настроить FTP сайт с изоляцией пользователей на базе Windows Server 2016 / 2012 R2. В режиме изоляции пользователи аутентифицируются на FTP под своими локальным или доменным учетными записями, после чего они получают доступ к своему корневому каталогу, соответствующему имени пользователя.

Как известно, для обмена файлами в сети используется протокол FTP прикладного уровня модели OSI. Этот протокол позволяет осуществлять передачу файлов между клиентом и сервером. Он прекрасно работает как в локальной сети организации, так и в сети Интернет, для размещения файлов на каком-либо хостинге. Если по-простому, FTP-сервер и FTP-клиент, это программное обеспечение, которое предоставляет доступ к организованной структуры файлов и каталогов, доступ для их передачи и хранения на стороне сервера. А на стороне клиента, возможность доступа к этой структуре. В этой статье рассмотрим как установить и настроить FTP-сервер на базе ОС Windows Server 2016.

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

Рассмотрим процедуру штатного развертывания сервера FTP, с помощью визарда Windows Server 2016. Этот инструмент позволит быстро развернуть сервер и полноценно насладиться его работоспособностью на основных настройках.

Откроем «Диспетчер серверов»:

Диспетчер серверов - Как настроить FTP на Windows Server 2016

Добавим роль серверу. Для этого последовательно перейдем в меню «Управление», и выберем «Добавить роли и компоненты»:

Добавить роли и компоненты

Открылось окно мастера, который позволит установить роли, определенные службы и компоненты на основании наших потребностей:

Перед началом работы - Как настроить FTP на Windows Server 2016

В разделе «Тип установки» выбираем опцию «Установка ролей и компонентов»:

Выбор типа установки - Как настроить FTP на Windows Server 2016

Далее, в следующем окне выбираем необходимый нам сервер, для которого добавляются роли:

Выбор целевого сервера

В окне ролей необходимо поставить галочку в строке «Веб-сервер (IIS)» и согласиться с добавлением компонентов, необходимых для работы Веб-сервера (IIS):

Выбор ролей сервера
Мастер добавления ролей и компонентов

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

Окно Роль веб-сервера (IIS)

В этом окне необходимо активировать только «Службу FTP» и «Консоль управления службами IIS», нажать клавишу «Далее»:

Выбор служб ролей

На следующем шаге соглашаемся с выбранными компонентами и нажимаем «Установить»:

Подтверждение установки компонентов

Процесс установки занимает не много по времени. По окончании процесса необходимо перезагрузить сервер:

Ход установки

Добавление пользователей

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

Перейдем к настройкам и выберем в «Диспетчер сервером» раздел «Средства» оснастку «Управление компьютером»:

Управление компьютером

Далее, добавим нового пользователя как показано ниже:

Добавление нового пользователя

После добавления роли, на локальном диске С: появился каталог C:inetpubftproot. Этот каталог создается по умолчанию для FTP сервиса и является корневым. Для следующих этапов организации работы сервера FTP, необходимо создать иерархию каталогов, а также для изоляции пользователей. Архитектура будет следующей:

«имя сайта» -> «users» -> «ftp-client»

В итоге получилось следующая структура: C:inetpubftprootFTPUsersFTPUser.

Перейдем к настройке сайта.

Настройка сайта

Теперь нужно будет добавить сайт. Переходим в «Диспетчер серверов», выбирает раздел «Средства» и запускаем оснастку «Диспетчер служб IIS»:

Диспетчер служб ISS

Добавляем FTP-сайт правой клавишей мыши как показано на рисунке ниже:

Добавление FTP-сайта

В разделе «Сведения о сайте» даем название FTP-сайту, указываем путь до корневого каталога и нажимаем «Далее»:

Сведения о сайте

Далее, в окне «Параметры привязки и SSL» оставляем без изменений, нажимаем «Далее»:

Параметры привязки и SSL

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

Сведения о проверке подлинности и авторизация - Как настроить FTP на Windows Server 2016

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

Изоляция пользователей - Как настроить FTP на Windows Server 2016

В разделе «Изоляция пользователей FTP» отметить «Каталог имени пользователя …»  и нажать «Применить» как показано на рисунке ниже:

Изоляция пользователей FTP - Как настроить FTP на Windows Server 2016

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

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

Перейдем в раздел «Поддержка брандмауэра FTP»:

Поддержка брандмауэра FTP - Как настроить FTP на Windows Server 2016

В окне «Диапазон портов канала данных» укажем, к примеру, порты 50000-50100 и нажмем «Применить»:

Диапазон портов канала данных

Перейдем к настройкам Windows Firewall и выберем в «Диспетчер серверов» раздел «Средства». Далее, найдите оснастку «Брандмауэр Windows в режиме повышенной безопасности»:

Окно Брандмауэр Windows

В окне «Правила для входящих подключений» создадим новое правило:

Окно Правила для входящих подключений

В открывшемся окне нужно будет выбрать тип «Предопределенные» -> «FTP-сервер» и нажать «Далее»:

Тип правила - Предопределённые

Отметим все правила, поставив галочки и нажмем «Далее»:

Правила - Как настроить FTP на Windows Server 2016

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

Разрешить подключение - Как настроить FTP на Windows Server 2016

После окончания настроек Windows Firewall важно перезагрузить сервер.

На этом настройка FTP-сервера на платформе Windows Server 2016 закончена.

FTP — протокол прикладного уровня модели OSI, позволяющий осуществлять передачу файлов между клиентом и сервером. Передача файлов при помощи данного протокола возможна как в локальной сети, так и в сети Интернет. Проще говоря, FTP-сервер и FTP-клиент — это программное обеспечение, с помощью которого можно предоставить доступ к организованной структуре файлов и каталогов для их передачи и хранения на стороне сервера. А на стороне клиента, протокол FTP предоставляет возможность доступа к этой структуре. В этой статье рассмотрим как установить и настроить FTP-сервер на VPS, работающем под управлением ОС Windows Server 2016.

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

Процедура штатного развертывания сервера FTP возможна с помощью визарда Windows Server 2016. Данный инструмент позволит быстро установить FTP-сервер и организовать его работоспособность на основных настройках.

Для начала откройте «Диспетчер серверов»:

Диспетчер серверов - Как настроить FTP на Windows Server 2016

Далее, перейдите в «Добавить роли и компоненты»:

Добавить роли и компоненты - Как настроить FTP на Windows Server 2016

В открывшемся окне мастера нажмите «Далее»:

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

Здесь в разделе «Тип установки» нужно выбрать опцию «Установка ролей и компонентов»:

Тип установки - Как настроить FTP на Windows Server 2016

В следующем окне необходимо выбрать сервер, для которого добавляются роли и нажать «Далее»:

Выбор целевого сервера

Поставьте галочку в строке «Веб-сервер (IIS)»:

Выбор ролей сервера

В открывшемся окне согласитесь с добавлением компонентов, необходимых для работы Веб-сервера (IIS) при помощи кнопки «Добавить компоненты»:

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

Ещё раз нажмите «Далее»:

Выбор ролей сервера - Как настроить FTP на Windows Server 2016

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

Выбор компонентов

В окне выбора ролей нажмите «Далее»:

Роль веб-сервера (IIS)

На следующем шаге необходимо активировать только «Службу FTP» и «Консоль управления службами IIS». После чего нажать клавишу «Далее»:

Выбор служб ролей

В следующем окне следует согласится с набором выбранных компонентов и нажать «Установить»:

Подтверждение установки компонентов

После этого должен запуститься процесс установки компонентов. По окончании необходимо перезагрузить сервер.

Ход установки

Добавление пользователей

Для организации подключений к вашему FTP-серверу необходимо создать специального пользователя. В нашем примере такая учётная запись будет называться ftpuser.

Для этого перейдите в «Диспетчер серверов», откройте раздел «Средства» и оснастку «Управление компьютером»:

Управление компьютером

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

Новый пользователь

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

Новый пользователь

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

«имя сайта» -> «LocalUser» -> «ftp-client»

Поэтому в нашем примере структура директорий будет C:inetpubftprootFTPLocalUserftpuser (регистр в названиях каталогов важен).

C:inetpubftprootFTPLocalUserftpuser

Настройка сайта

Теперь нужно будет добавить сайт. Для этого перейдите в «Диспетчер серверов», далее, в раздел «Средства», и запустите оснастку «Диспетчер служб IIS»:

Диспетчер служб IIS

Добавьте FTP-сайт при помощи правой клавиши мыши:

Добавить FTP-сайт

Теперь в разделе «Сведения о сайте» укажите название FTP-сайта и путь до корневого каталога. После чего нажмите «Далее»:

Сведения о сайте

В окне «Параметры привязки и SSL» установите опцию «Без SSL», нажмите «Далее»:

Параметры привязки SSL

Теперь, в окне «Сведения о проверке подлинности и авторизации» следует указать опцию «Обычная» для раздела «Проверка подлинности», ввести имя нашего пользователя ftpuser в разделе «Авторизация», и там же, необходимо установить разрешения для пользователя. После чего нажмите кнопку «Далее»:

Сведения о проверке подлинности и авторизации

Чтобы каждая учётная запись FTP могла иметь доступ исключительно к своей директории на сервере, при этом не имея возможности просматривать каталоги других пользователей, необходимо настроить параметр «Изоляция пользователей»:

Начальная страница FTP

В разделе «Изоляция пользователей FTP» необходимо отметить «Каталог имени пользователя (отключить глобальные виртуальные каталоги)». После чего нажмите «Применить»:

Изоляция пользователей FTP

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

Итак, мы создали и настроили FTP-сервер. Теперь необходимо будет произвести настройки брандмауэра, разрешающие доступ к созданному ресурсу.

В «Диспетчере серверов» перейдите в «Средства» и далее в «Брандмауэр Windows в режиме повышенной безопасности»:

Брандмауэр Windows в режиме повышенной безопасности - Как настроить FTP на Windows Server 2016

Затем перейдите на «Правила для входящих подключений» и там нажмите на «Создать правило…»:

Брандмауэр Windows в режиме повышенной безопасности

Установите опцию «Предопределенные» и из списка выберите «FTP-сервер». После чего нажмите «Далее»:

Мастер создания правила - Как настроить FTP на Windows Server 2016

Отметьте галочками все три правила и снова нажмите «Далее»:

Мастер создания правила - Как настроить FTP на Windows Server 2016

В следующем окне активируйте «Разрешить подключение» и нажмите «Готово»:

Разрешить подключение - Как настроить FTP на Windows Server 2016

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

Созданные проавила - Как настроить FTP на Windows Server 2016

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

Сегодня материал будет посвящен рассмотрению процесса установки и настройки FTP сервера в операционной системе Windows Server 2016, а также мы поговорим о том, что вообще такое FTP и FTP сервер.

Содержание

  1. Что такое FTP, FTP сервер и для чего это нужно?
  2. Установка FTP сервера на Windows Server 2016
  3. Установка FTP сервера с помощью мастера
  4. Шаг 1
  5. Шаг 2
  6. Шаг 3
  7. Шаг 4
  8. Шаг 5
  9. Шаг 6
  10. Шаг 7
  11. Шаг 8
  12. Шаг 9
  13. Шаг 10
  14. Установка FTP сервера с помощью Windows PowerShell
  15. Настройка FTP сервера на Windows Server 2016 с изоляцией пользователей
  16. Настройка пользователей для FTP сервера
  17. Настройка структуры каталогов FTP сервера
  18. Создание и настройка FTP сайта
  19. Настройка параметров изоляции пользователей FTP сервера
  20. Удаление FTP сервера в Windows Server 2016

FTP (File Transfer Protocol) – это протокол передачи данных. Разработан он достаточно давно и на текущий момент широко используется в сети Интернет для передачи файлов. Данный протокол достаточно часто используют администраторы сайтов, для того чтобы скачивать или закачивать файлы на свой хостинг в Интернете.

Протокол FTP реализован по схеме «клиент-сервер», т.е. существует FTP-клиенты и соответственно FTP-сервер.

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

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

Программ позволяющих реализовать FTP сервер на самом деле много (FTP клиентов еще больше), сегодня, как Вы уже поняли, мы поговорим о реализации FTP сервера в операционной системе Windows Server 2016 с помощью стандартных служб ролей.

Установка FTP сервера на Windows Server 2016

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

Примечание! Если у Вас уже установлены какие-нибудь службы роли «Веб-сервер IIS» и в частности «Консоль управления службами IIS», то Вам, конечно же, не нужно их устанавливать, Вам достаточно проверить установлена ли «Служба FTP» и если установлена, то переходить к настройке FTP сервера.

В данном материале я покажу два варианта установки FTP сервера: первый с помощью мастера и второй с помощью Windows PowerShell.

Установка FTP сервера с помощью мастера

Шаг 1

Открываем «Диспетчер серверов», например из меню пуск.

Скриншот 1

Далее запускаем «Мастер добавления ролей и компонентов», меню «Управление ->Добавить роли и компоненты».

Скриншот 2

Шаг 2

На этом шаге мастера можем сразу нажать «Далее».

Скриншот 3

Шаг 3

Затем выбираем тип установки «Установка ролей или компонентов», жмем «Далее».

Скриншот 4

Шаг 4

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

Скриншот 5

Шаг 5

На этапе выбора ролей отмечаем роль «Веб-сервер (IIS)».

Скриншот 6

Нам сразу предложат установить и «Консоль управления службами IIS», жмем «Добавить компоненты», так как нам эти средства управления нужны, для того чтобы администрировать FTP сервер, жмем «Далее».

Скриншот 7

Шаг 6

На этапе выбора компонентов ничего не выбираем, так как никакие компоненты нам больше не нужны. Жмем «Далее».

Скриншот 8

Шаг 7

На следующем шаге также жмем «Далее».

Скриншот 9

Шаг 8

И вот мы дошли до выбора служб роли «Веб-сервер (IIS)», где нам нужно снять все ненужные галочки (в случае если нам нужен только FTP сервер), и отметить лишь «Служба FTP» и «Консоль управления службами IIS», жмем «Далее».

Скриншот 10

Шаг 9

Проверяем параметры установки и жмем «Установить».

Скриншот 11

Шаг 10

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

Курс по SQL для начинающих

Скриншот 12

Установка FTP сервера с помощью Windows PowerShell

Для установки ролей и компонентов в Windows PowerShell есть специальный командлет Install-WindowsFeature. Чтобы установить FTP сервер с помощью PowerShell выполните следующие команды.

Для установки службы «Служба FTP»

  
  Install-WindowsFeature -Name "Web-Ftp-Service"

Для установки средства «Консоль управления службами IIS»

  
  Install-WindowsFeature -Name "Web-Mgmt-Console"

Скриншот 13

После установки лучше перезагрузить сервер.

Настройка FTP сервера на Windows Server 2016 с изоляцией пользователей

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

Настройка пользователей для FTP сервера

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

Для примера я создам пользователя UserFTP. Это можно сделать в оснастке «Управление компьютером». Для того чтобы запустить данную оснастку зайдите в «Диспетчер серверов- > Средства -> Управление компьютером».

Скриншот 14

Затем открываем пункт «Локальные пользователи и группы», щелкаем правой кнопкой мыши по пункту пользователи и выбираем «Новый пользователь». Заполняем необходимые поля и жмем «Создать». В итоге у нас появится новый пользователь.

Скриншот 15

Настройка структуры каталогов FTP сервера

Потом нам необходимо настроить каталоги. На диске C по умолчанию создался каталог «C:inetpubftproot» — это корневой каталог FTP сервера. В данном каталоге мы создадим отдельный каталог для нашего FTP сайта, например я его назвал TestFTP. В нем создадим каталог LocalUser (регистр важен) — это для того чтобы работала изоляция пользователей, а уже в данном каталоге создаем папки с названием, которое будет соответствовать имени пользователя в моем случае — это UserFTP. В итоге полный путь к каталогу пользователя будет выглядеть следующим образом — «C:inetpubftprootTestFTPLocalUserUserFTP», и для того чтобы в дальнейшем проверить работу FTP сервера, давайте создадим в этом каталоге тестовый файл, например Test.txt.

Создание и настройка FTP сайта

Открываем «Диспетчер служб IIS».

Скриншот 16

Затем в окне «Подключения» щелкаем правой кнопки мыши по пункту «Сайты» и выбираем «Добавить FTP-сайт».

Скриншот 17

Потом вводим название нашего FTP-сайта, я назвал его «TestFTPSite» и указываем каталог, который будет являться корнем нашего FTP-сайта (мы его чуть ранее создали). Жмем «Далее».

Скриншот 18

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

Скриншот 19

Осталось только настроить проверку подлинности и пользователей, которые могут подключаться к нашему FTP серверу. Я выбираю «Обычную» проверку подлинности, т.е. анонимные подключения мне не нужны, и указываю конкретного пользователя UserFTP, я его создал чуть ранее. Он у меня будет иметь права и на чтение и на запись. В «боевой» среде как я уже говорил лучше создать группу и в нее добавлять пользователей FTP, и в данном случае здесь мы бы выбрали пункт «Указанные роли или группы пользователей» и указали созданную нами группу. Жмем «Готово».

Скриншот 20

Настройка параметров изоляции пользователей FTP сервера

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

Скриншот 21

Отмечаем пункт «Каталог имени пользователя (отключить глобальные виртуальные каталоги)» и жмем «Применить».

Скриншот 22

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

Удаление FTP сервера в Windows Server 2016

Для удаления FTP сервера, т.е. тех ролей, которые мы установили выше, можно использовать мастер, т.е. «Мастер удаления ролей и компонентов» или все тот же Windows PowerShell. Для того чтобы запустить мастер, мы также открываем диспетчер серверов и в меню «Управление» выбираем «Удалить роли и компоненты». После того как мастер запустится, мы делаем то же самое что и при установке, только мы не ставим галочки, а наоборот убираем их.

Для того чтобы удалить FTP сервер с помощью Windows PowerShell, можно использовать командлет Uninstall-WindowsFeature. Команды удаления будут выглядеть следующим образом (после удаления необходимо перезагрузить сервер).

Для удаления компонента «Консоль управления службами IIS»

  
  Uninstall-WindowsFeature -Name "Web-Mgmt-Console"

Для удаления службы «Служба FTP»

  
  Uninstall-WindowsFeature -Name "Web-Ftp-Service"

Скриншот 23

На этом у меня все, надеюсь, материал был Вам полезен, пока!

The instructions describe the process of installing and configuring the FTP server on virtual machines run by the Windows Server 2016 operating system, setting up the work of the firewall and dividing the access area for different users.

What is it?

FTP (File Transfer Protocol) is an abbreviation of File Transfer Protocol. As the name implies, FTP is used to transfer files between machines on a network. You can use FTP to share files between a local PC and a remote server and to access online software archives.

Our manual will consider the option of installing an FTP server as an IIS web server role, alternatively, you can use other software, for example, FileZilla Server, Titan FTP Server, Home Ftp Server, Ocean FTP Server.

Installing FTP server on Windows server

Open the Windows Server Control Panel and find the Add roles and features.

Setup FTP Win2016 -- add role

As the installation type, specify Role-based or feature-based installation.

Setup FTP Win2016 -- select type

Select your server from the server pool.

Setup FTP Win2016 -- select server

In the next window, check the IIS web server.

Setup FTP Win2016 -- check box IIS

In the window that opens, click Add features.

Setup FTP Win2016 -- add features

In the next window Features do not select anything.

Next in the Role services window, check the FTP server.

Setup FTP Win2016 -- add role FTP

Install all selected features on the server using the Install button.

Setup FTP Win2016 -- confirmation

Creating an FTP site on a Windows server

Open IIS Manager. Right-click on Sites and select Add FTP Site from the menu.

Setup FTP Win2016 -- start IIS

Setup FTP Win2016 -- add FTP site

Enter the site name and path to the directory.

Setup FTP Win2016 -- add FTP site name

Next, select your IP address in the drop-down list. For encryption, check No SSL.

Setup FTP Win2016 -- add FTP site ip

In the next window, select Basic for authentication. Authorization — Specified roles or groups, enter the name of the group of FTP users (example of creation below). Check the desired read and write permissions and click the Finish button.

Setup FTP Win2016 -- add FTP site authentication

Your website will appear in the tree structure of the Windows web server.

Setup FTP Win2016 -- add FTP site resault

Create user group

Creating a Windows group is necessary to determine the users who will have access to the ftp server. Open Computer Management. In the menu on the right, select Groups. Use the right mouse button to create a new group (New Group).

Setup FTP Win2016 -- create user group - add new

In the window that opens, enter the name of the group, a description if necessary. To add a user, click Add.

Setup FTP Win2016 -- create user group - add name

Enter a name in the input field, to check it, click Check Names. If Windows users exist, click Ok.

Setup FTP Win2016 -- create user group - check

After everything is added, create a group using the Create button.

User isolation

In order for each user to get to his own directory and not have access to other files after connecting to the server, it is necessary to set up isolation. To do this, open your ftp site settings and select FTP User Isolation.

Setup FTP Win2016 -- user isolation

Select the User name directory and click Apply.

Setup FTP Win2016 -- user isolation user name

Then, using the right mouse button, open the menu of your ftp site and select Add Virtual Directory.

Setup FTP Win2016 -- user isolation add virtual directory

In the Alias field, enter a nickname or name, in the path field enter the path to the user directory, to do this, create a subdirectory in the ftp site directory on your Windows server. Click Ok.

Setup FTP Win2016 -- user isolation add alias

To configure permissions in IIS Manager, expand the hierarchical structure of your ftp server. Using the right mouse button, open the Windows virtual directory menu and select Edit Permission.

Setup FTP Win2016 -- user isolation edit permissions

Click the Security tab and click the Advanced button.

Setup FTP Win2016 -- user isolation security

In the window that opens, click the Disable inheritance button, select the first option in the new window, and then click Apply — Ok.

Setup FTP Win2016 -- user isolation disable intf

Setup FTP Win2016 -- user isolation block inheritance.png

Return to the Security tab and click the Edit button.

Setup FTP Win2016 -- user isolation security edit

Select the Users group in which all users are located and click the Remove button. This is necessary so that only the owner of the directory has access to it.

Setup FTP Win2016 -- user isolation security remove users

Now add a Windows user who will have full access to the directory. Click the Add button.

Setup FTP Win2016 -- user isolation security add user

Enter the username of the virtual directory in the input field, to check it, click Check Names. If users exist, click Ok.

Setup FTP Win2016 -- user isolation security add user name

Next you need to add rights for complete control of the directory. Select the created user and check all fields Allow (Permissions).

Setup FTP Win2016 -- user isolation security add user rights

Next, click Apply — Ok.

Firewall Setup

For an external connection to the ftp server, you must configure the firewall. To do this, open Windows Firewall with Advanced Security. In the vertical menu on the left, select Inbound rules, then in the vertical menu on the right New Rule.

Setup FTP Win2016 -- Firewall setup - new rule

In the window that opens, check the Predefined type and select FTP Server from the drop-down list. Click Next.

Setup FTP Win2016 -- Firewall setup - new rule type

Tick all the lines and click Next.

Setup FTP Win2016 -- Firewall setup - perdefined rules

In the next step, select Allow the connection and click Finish. For these rules to take effect — restart the server.

Setup FTP Win2016 -- Firewall setup - new rule finish

Connect to an FTP server

You can connect to an FTP server in several ways, for example, through the standard Windows utility — Explorer, or through the FileZilla program.

Consider connecting through Explorer. In the address bar, enter:

ftp: // ip address

For example,

ftp://83.166.245.89

The login and password input window will open, specify the connection data from the server control panel.

Setup FTP Win2016 -- connect to FTP server

Note: The IIS web server allows you to flexibly configure the connection to the FTP server, for example, to divide the visibility of space for different users, to enable anonymous access and to configure permissions.

As a result, you will see the contents of the FTP server folder:

Setup FTP Win2016 -- connect to FTP server result

Note: the built-in ftp server of the IIS web server has many features, such as: user isolation, SSL support, restriction of login attempts to the server, logging with various parameters.

Шаг 1. Установка FTP в Windows Server 2016

1. На начальном экране щелкните плитку Диспетчер сервера

2. В панели мониторинга диспетчера сервера выберите Добавить роли и компоненты

3. На странице Перед началом работы нажмите кнопку Далее

4. На странице Выбор типа установки выберите Установка ролей или компонентов и нажмите кнопку Далее

5. На странице Выбор целевого сервера нажмите пункт Выберите сервер из пула серверов, выберите сервер в списке Пул серверов, а затем нажмите кнопку Далее

6. На странице Выбор ролей сервера выберите Веб-сервер (IIS), в появившемся меню нажмите Добавить компоненты

7. На странице Выбор компонентов нажмите кнопку Далее

8. На странице Роль веб-сервера (IIS) нажмите кнопку Далее

9. На странице Выбор служб ролей разверните пункт FTP-сервер и выберите Служба FTP. Дополнительно разверните пункт Средства управления и выберите Консоль управления службами IIS установки Диспетчера служб IIS

10. На странице Подтверждение выбранных элементов для установки нажмите кнопку Установить

11. После завершения установки нажимаем Закрыть

Шаг 2. Добавление FTP-сайта

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

Добавление FTP-сайта
1. В диспетчере серверов откройте Диспетчер служб IIS

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

3. На странице сведений о сайте в поле Имя FTP-сайта введите уникальное понятное имя для FTP-сайта. В поле Физический путь введите физический путь или нажмите кнопку обзора (…), чтобы найти физический путь к каталогу содержимого. Пользователь должен обладать соответствующими правами для выполнения действий с выбранным каталогом. Нажмите кнопку Далее, чтобы открыть страницу Параметры привязки и SSL

4. В разделе Привязка в списке IP-адрес выберите или введите IP-адрес, если не требуется оставить значение Все неназначенные.
В поле Порт введите номер порта. Дополнительно можно ввести имя узла в поле Виртуальный узел, если планируется разместить несколько FTP-сайтов на одном IP-адресе.
Если планируется запускать сайт вручную, снимите флажок Запускать FTP-сайт автоматически

В разделе SSL в списке Сертификат SSL можно выбрать сертификат. Дополнительно можно нажать Обзор, чтобы открыть диалоговое окно Сертификаты и проверить сведения об избранном сертификате.
Существуют следующие варианты:
o Без SSL
o Разрешить SSL: разрешает FTP-серверу поддерживать как SSL-соединения, так и другие соединения с клиентом.
o Требовать SSL: требует SSL-шифрование для обмена данными между FTP-сервером и клиентом.
Нажмите кнопку Далее, чтобы открыть страницу сведений о проверке подлинности и авторизации.
5. В разделе Проверка подлинности выберите способы проверки подлинности, которые планируется использовать:
o Анонимный доступ: для доступа к контенту пользователю достаточно предоставить только имя пользователя anonymousили ftp. (Большинство FTP-клиентов (но не все) автоматически вводит имя пользователя.)
o Основная: для доступа к контенту пользователь должен предоставить правильное имя пользователя и пароль. Поскольку обычная проверка подлинности передает по сети нешифрованные пароли, используйте эту проверку подлинности только в том случае, если известно, что соединение между клиентом и FTP-сервером является защищенным, например, с помощью SSL.

В разделе Авторизация выберите в списке Разрешить доступ один из следующих вариантов:
o Всем пользователям: доступ к контенту разрешен всем пользователям, и анонимным, и идентифицированным.
o Анонимным пользователям: анонимные пользователи имеют доступ к контенту.
o Указанным ролям или группам пользователей: доступ к контенту разрешен только членам определенных ролей или групп пользователей. Укажите в соответствующем поле роль или группу пользователей.
o Указанным пользователям: доступ к контенту разрешен только указанным пользователям. Введите имя пользователя в соответствующем поле.
Если из списка Разрешить доступ выбирается именно этот параметр, выберите также выбрать одно или оба следующих разрешения:
o Чтение: авторизованным пользователям разрешается чтение содержимого каталога.
o Запись: авторизованным пользователям разрешается запись в этот каталог.
После завершения всех настроек нажмите кнопку Готово.

Шаг 3. Проверка работоспособности FTP-сайта

1. Откройте браузер и введите строку ftp://<ip-адрес>. Появится окно аутентификации. Имя пользователя должно состоять из латинских символов (например, userpc)

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

3. После этого необходимо произвести настройки брандмауэра с помощью команд, которые нужно выполнить в командной строке:
1. netsh advfirewall firewall add rule name=”FTP” action =allow protocol=TCP dir=in localport=21
2. netsh advfirewall firewall add rule name=”sFTP” action =allow protocol=TCP dir=in localport=900
3. netsh advfirewall firewall add rule name=”FTPpassive” action =allow protocol=TCP dir=in localport=1024-65535

4. Подключение к созданному FTP-сайту можно проверить с клиентского компьютера через браузер, набрав в адресной строке ftp://<ip-адрес>.

The FTP protocol is one of the oldest protocols (it is more than 40 years old), but it is still widely used where a simple file transfer protocol is required. It is possible to install an FTP server on any version of Microsoft operation system. Last deep modernization of the ftp service was made in Windows 7 / Server 2008 R2 (actually the service code has almost been written from scratch). The security of the service has significantly improved and a number of new features have appeared. In particular, FTP server on Windows allows you to configure FTP user isolation. It allows to restrict access of many users to their own folders on a single FTP server.

Due to the isolation, users can work only with their folders and can’t go up in the FTP directory tree (the user’s top ftp level directory is displayed as the root of the FTP server). Thus, the access to the data of other users on the FTP server can be prevented. FTP user isolation is widely used by ISP/hosting providers when it is necessary to provide individual access to a single file storage for different users.

Like in previous Windows versions, the FTP service in Windows Server 2016 / 2012 R2 (do not confuse it with sFTP and TFTP) is based and deeply integrated into the IIS service and has a single administrative management interface.

In this article we’ll show how to install an IIS-based FTP server on Windows Server 2016/2012 R2 and configure the FTP user isolation (this manual also applies to Windows 10 and 8.1).

Contents:

  • How to Install the FTP Server Role on Windows Server 2016/ 2012 R2?
  • Creating an FTP Site, Managing FTP User Permissions
  • How to Configure FTP User Isolation on Windows Server 2016/2012 R2?
  • Configuring Windows Firewall Rules to Access the FTP Server
  • Testing an FTP Server Connection from Windows

How to Install the FTP Server Role on Windows Server 2016/ 2012 R2?

You can install the FTP service using the Server Manager console by checking the option FTP Service and FTP Extensibility in the section Web Server (IIS) -> FTP Server.

Install ftp server on Windows Server 2012 r2

Also you can install the FTP server role with a single PowerShell command:
Install-WindowsFeature Web-FTP-Server
Install-WindowsFeature Web-FTP-Server

To install the FTP server management console, run the following command:

Install-WindowsFeature -Name "Web-Mgmt-Console"

Creating an FTP Site, Managing FTP User Permissions

Start the Server Manager and open the IIS management console (Internet Information Service Manager).

IIS management console

Create a new FTP site (Sites -> Add FTP Site).

Create ftp site

The name of the FTP site: MyTestSite

The root directory of the FTP site: C:inetpubftproot

ftp site name and path

To protect the FTP data transmitted over the network, it is possible to configure SSL for FTP (in this case, all the data and passwords/accounts sent by ftp users during session will be encrypted), but in our demonstration this is not necessary. All other settings are left default.

You can manage your FTP site using the PowerShell module WebAdministration. For example, to create a new FTP site, just run the commands:

Import-Module WebAdministration
# Set the FTP site name
$FTPSiteName = 'CORP_FTP'
#FTP folder
$FTPRoot = 'D:wwwFTPRoot'
#FTP port
$FTPPort = 21
New-WebFtpSite -Name $FTPSiteName -PhysicalPath $FTPRoot -Port $FTPPort

Select a new FTP site and disable the Anonymous Authentication in the FTP Authentication section. Basic Authentication must be enabled.

FTP Authentication

The FTP service on Windows Server 2016/2012 R2 can use two account types: domain or local. Depending on the account type, there are some differences in the structure of FTP directories and user isolation settings. To make it easier to describe, we will use local Windows accounts.

Create some FTP users, suppose, these are ftp_user1, ftp_user2 and ftp_user3. Also create a group ftp_users which includes these users. You can create local users in the Local Users and Groups section of the Computer Management console.

computer managment console

You can also create local users and groups from the command prompt (or using PowerShell). Create a local group:
net localgroup ftp_users /add
net localgroup /add

Create a new local user:
net user ftp_user1 /add *
net user add

Add user to group:
net localgroup ftp_users ftp_user1 /add
add localuser to localgroup

Create the two other users in the same way.

Assign the Read&Write permissions on the directory C:inetpubftproot for the ftp_users group.

ftproot ntfs permissions

Create a directory with the name LocalUser (the name must be the same, it’s important!!!) in the folder C:inetpubftproot. Then make three directories under with the names ftp_user1, ftp_user2, ftp_user3 in the folder C:inetpubftprootLocalUser.

NoteDepending on the account type, you have to create the following directory structures (under %FtpRoot% we mean the root of the FTP site; in our case it is C:inetpubftproot):

Account Type Syntax of Home Directory Naming
Anonymous users %FtpRoot%LocalUserPublic
Local Windows account %FtpRoot%LocalUser%UserName%
Domain Windows account %FtpRoot%%UserDomain%%UserName%
Special IIS Manager or ASP.NET accounts %FtpRoot%LocalUser%UserName%

ftp users home folders

Return to the IIS console and create a new rule (Add AllowRules) in FTP Authorization Rules section of the site. Specify that ftp_users group must have the read and write permisions.

FTP Authorization Rules

How to Configure FTP User Isolation on Windows Server 2016/2012 R2?

Let’s move to configuring FTP user isolation. The isolation of FTP users is configured on the FTP site level, not the entire server. FTP user isolation allows you to organize your ftp-home folder for each user.

Open FTP User Isolation in the settings of the FTP site.

This section contains several settings. The first two of them don’t suggest user isolation:

  1. FTP root directory (an FTP session of a user starts in the root directory of the FTP site);
  2. User name directory (the user starts with physical/virtual directory with the username. If the directory is missing, a session starts in the root FTP directory of the site).

The next three options are different modes of user isolation:

  • User name directory (disable global virtual directories) suggests that the ftp session of a user is isolated in a physical/virtual directory that has the same name as the ftp user. Users see only their own directory (it is their root ftp-directory) and cannot go beyond it (to the upper directory of the FTP tree). Any global virtual directories are ignored;
  • User name physical directory (enable global virtual directories) suggests that the ftp session of a user is isolated in a physical directory that has the same name as the name of the ftp user account. A user cannot go above its directory. However, all created global virtual directories are available to the user;
  • FTP home directory configured in Active Directory – an FTP user is isolated within his home directory specified in the settings of his Active Directory account (FTPRoot and FTPDir properties).

Important. If the global virtual directories are active, all users can access all virtual directories set in the root of the FTP site (if they have the appropriate NTFS permissions).

FTP User Isolation on Windows Server 2012 R2

Select the required isolation mode (I use the second option to isolate ftp users).

It is advisable to restart the Microsoft FTP service (FTPSVC) with any changes to the FTP site settings.

Configuring Windows Firewall Rules to Access the FTP Server

When you install the FTP server role, all necessary rules that are needed for users to access FTP are automatically activated in the Windows Firewall settings.

For FTP to work correctly in passive FTP mode, users need to connect to the RPC port range (1025-65535). In order not to open all these ports on an external firewall, you can limit the range of dynamic TCP ports used for FTP data transmission.

  1. Open the FTP Firewall Support section in FTP site settings and in the Data Channel Port Range field specify the port range that you want to use for FTP connections. For example – 50000-50100;ftp firewall support - set port range on WIndows FTP Server
  2. Save the changes and restart IIS (iisreset);
  3. Open the Windows Control Panel and go to the Control PanelSystem and SecurityWindows FirewallAllowed apps;
  4. Make sure that the list of applications that are allowed access through the firewall contains permissions for the FTP Server role.ftp server windows server 2012 r2: firewall rules

Then check that the following rules are enabled in the settings of Windows Firewall with Advanced Security:

  • FTP Server (FTP Traffic-In) – TCP protocol, port 21;
  • FTP Server Passive (FTP Passive Traffic-In) – local port address 1024-65535 (50000-50100 in our case);
  • FTP Server Secure (FTP SSL Traffic-In) –port 990 (when using FTP with SSL);
  • FTP Server (FTP Traffic-Out) – port 20;
  • FTP Server Secure (FTP SSL Traffic-Out) –port 989 (when using FTP with SSL).

windows firewall inbound ftp rules

Accordingly, these ports need to be opened on your router (gateway, firewall) so that external FTP users can connect to your site.

Testing an FTP Server Connection from Windows

You can check the availability of ports on an FTP server using the Test-NetConnection cmdlet:

Test-NetConnection -ComputerName yourftpservername -Port 21

Or using the ftp command:

ftp yourftpservername

Try to connect to your FTP site with any FTP client or directly from File Explorer (specify ftp://yourservername/ in the address bar).

Enter the user name and password.

open ftp site in windows explorer

And now you have access to the home directory with the user’s files (which is the root of the FTP site for the user). As we can see, the user session is isolated and the user sees only his files on the ftp server.

ftp user home folder is isolated

Tip. If you want to use anonymous access (All anonymous Users), any users will be able to connect to your FTP server using the credentials: anonymous or guest as the username and email address as password. If you connect to an FTP site anonymously, the session will be limited to the LocalUserPublic directory (it’s obvious, the Public directory must be created in advance).

You can use FTP logs to view information about user access to the FTP server. The log files are stored by default in the c:inetpublogslogfiles folder in the u_exYYMMDD.log files.

To view the active user connections to your FTP server, you can use the values of the IIS performance counters through PowerShell or the “Current FTP Sessions” section in the IIS console. In this console, you can view the names and the IP address of the FTP user’s and disconnect the ftp-session if necessary.

windows ftp server: current connection list

So, we have looked at how to configure an FTP site with the user isolation based on Windows Server 2016 / 2012 R2. In the isolation mode the users are authenticated on FTP using their local or domain credentials to access their root directory corresponding to the username.

The File Transfer Protocol (FTP) is a standard network protocol used for the transfer of computer files between a client and server on a computer network.

FTP is built on a client-server model architecture and uses separate control and data connections between the client and the server. FTP users may authenticate themselves with a clear-text sign-in protocol, normally in the form of a username and password, but can connect anonymously if the server is configured to allow it.

For secure transmission that protects the username and password, and encrypts the content, FTP is often secured with SSL/TLS (FTPS). SSH File Transfer Protocol (SFTP) is sometimes also used instead; it is technologically different.

In this tutorial, we are going to explain step by step the process of installing and configuring FTP server role in Windows Server 2016.

1. At the first, we need to install FTP role to do that open your server manager and click “Add roles and features”, and click Next twice.

2. Select your server from server pool and then click Next.

3. On the roles list, expand “Web Server (IIS)”, and check on “FTP Server” and then click Next.

4. You don’t need to add any additional features, just click Next.

5. On this page of the installation wizard, it will confirm with that you want to install “FTP Server”, click “Install” to start the installation progress.

6. Once your FTP server installation progress is done, we will move to the configuration steps of it.

Configure FTP Server

1. Open “Internet Information Services IIS” from the dashboard of your running server.

2. Right click on sites and click “Add FTP Site…”.

3. Give your FTP site a name, and also configure the folder that will contain all the data and click Next.

4. On this step of the configuration, IP address must match the address configured in the network adapter of your server. This IP address will be used by the clients who want to access the FTP server, check “start FTP site automatically and choose “No SSL” and click Next.

5. On authentication page of the configuration choose “Basic”, this authentication not using encryption mechanism so username/password are sent in clear text, you can create users in IIS after installing Management Server under Management Tools which is in Web Server (IIS) role.

Under the authorization, select all users to allow FTP access to all users of the domain. Check both “read and write” permissions, and click Finish.

6. Now you are done with configuration but let’s test it by open your web browser and enter the IP address of your server but add “ftp://” before it.

Once you log in with your server credentials you will be able to access FTP server and check all that it contain from files and folders

Summary

After this tutorial you should be able to know how you can install FTP server and how you can configure it, if you have any inquiry regarding this tutorial please comment below and i shall try to reply ASAP.

Понравилась статья? Поделить с друзьями:
  • Подойдет ли windows 10 корпоративная для игр
  • Поднятие сервера на windows server 2012 r2
  • Подойдет ли windows 10 для старого ноутбука
  • Поднятие почтового сервера на windows server
  • Подойдет ли windows 10 для старого компьютера