Iis ftp настройка windows server 2016

Пошаговая инструкция о том, как установить и настроить FTP-сервер на базе Windows Server 2016 со скриншотами и пояснениями к ним

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

Шаг 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-адрес>.

Documentation » Using WinSCP » Guides » Other »

You may want to install a secure FTP server on Windows either as standalone file storage or to have means of editing your website hosted on IIS (Internet Information Services) web server. In both cases, you can use an optional FTP Server component of the IIS. It can be installed standalone or along with a Web Server.1

  • Installing FTP Server
    • On Windows Server 2022, Windows Server 2019, Windows Server 2016 and Windows Server 2012
    • On Windows Server 2008 R2
    • On Windows Desktop (Windows 11, Windows 10, Windows 8, Windows 7 and Windows Vista)
  • Opening IIS Manager
  • Creating Certificate for the FTPS Server
  • Servers behind external Firewall/NAT
  • Windows Firewall Rules
  • Restarting FTP Service
  • Adding FTP Site
    • To a Web Site
    • Standalone FTP Site
  • Connecting to Your FTPS Server
  • Further reading

Installing FTP Server

On Windows Server 2022, Windows Server 2019, Windows Server 2016 and Windows Server 2012

  • In Windows Server Manager go to Dashboard and run Manage > Add Roles and Features.

Advertisement

  • In Add Roles and Features wizard:
    • Proceed to Installation Type step and confirm Role-based or feature-based installation.
    • Proceed to Server Roles step and check Web Server (IIS) role. Note that it is checked already, if you had IIS installed as a Web Server previously. If your are prompted to install IIS Management Console tool, confirm it.
    • Proceed to Web Server Role (IIS) > Role Services step and check FTP Server role service. Uncheck Web Server role service, if you do not need it.
    • Proceed to the end of the wizard and click Install.
    • Wait for the installation to complete.

Advertisement

Skip to the next step.

On Windows Server 2008 R2

If you do not have IIS installed yet:

  • In Windows Server Manager go to Roles node and in Roles Summary panel click Add Roles.
  • In Add Roles wizard:
    • Proceed to Server Roles step and check Web Server (IIS) role.
    • Proceed to Role Services step and check FTP Server > FTP Service role service. Uncheck Web Server role service, if you do not need it. Make sure Management Service > IIS Management Console role service is checked.
    • Proceed to the end of the wizard and click Install.
    • Wait for the installation to complete.

If you have IIS installed already (i.e. as a Web Server):

  • In Windows Server Manager go to Roles node and in Web Server (IIS) > Role Services panel click Add Role Services.
  • In Add Role Services wizard:
    • Check FTP Server > FTP Service role service.
    • Make sure that Management Service > IIS Management Console is checked.
    • Confirm with Next button.
    • Proceed to the end of the wizard and click Install.
    • Wait for the installation to complete.

Advertisement

Skip to the next step.

On Windows Desktop (Windows 11, Windows 10, Windows 8, Windows 7 and Windows Vista)

  • Go to Control Panel > Programs > Programs and Features > Turn Windows features on or off.
  • On a Windows Features window:
    • Expand Internet Information Services > FTP Server and check FTP Service.
    • Expand Internet Information Services > Web Management Tools and check IIS Management Console, if it is not checked yet.
    • Confirm with OK button.
    • Wait for the installation to complete.

Opening IIS Manager

  • Go to Control Panel > System and Security > Administrative Tools (Windows Tools on Windows 11) and open Internet Information Services (IIS) Manager.
  • Navigate to your Windows server node.

Advertisement

Creating Certificate for the FTPS Server

You need a TLS/SSL certificate to secure your FTP server. Ideally, you should acquire the certificate from a certificate authority.

You may also create a self-signed certificate locally, but in such case users of your FTPS server will be warned, when connecting to the server.

To create the self-signed certificate:

  • In IIS Manager, open IIS > Server Certificates.
  • Click on Create Self-Signed Certificate action.
  • Specify a certificate name (e.g. “FTP Server”) and submit with OK.

Self-signed certificates created by old versions of IIS Manager do not work with FTPS clients that check for key usage violations.2 To create a certificate with a correct key usage, use New-SelfSignedCertificate PowerShell as an Administrator:

New-SelfSignedCertificate -FriendlyName "FTP Server" -CertStoreLocation cert:localmachinemy -DnsName ftp.example.com

Servers behind external Firewall/NAT

If your server is behind an external firewall/NAT, you need to tell the FTP server its external IP address, to allow passive mode connections.

  • In IIS Manager, open FTP > FTP Firewall Support.
  • Specify your server’s external IP address.
    For Microsoft Azure Windows servers you will find the external IP address in Public IP address section of the virtual machine page.

When behind an external firewall, you need to open ports for data connections (obviously in addition to opening an FTP port 21 and possibly an implicit TLS/SSL FTP port 990). You won’t probably want to open whole default port range 1024-65535. In such case, you need to tell the FTP server to use only the range that is opened on the firewall. Use a Data Channel Port Range box for that. Any time you change this range, you will need to restart FTP service. Learn how to open ports on Microsoft Azure.

Advertisement

Click Apply action to submit your settings.

Some external firewalls are able to monitor FTP control connection and automatically open and close the data connection ports as needed. So you do not need to have whole port range opened all the time, even when not in use. This won’t work with the secure FTPS as the control connection is encrypted and the firewall cannot monitor it.

Windows Firewall Rules

An internal Windows firewall is automatically configured with rules for the ports 21, 990 and 1024-65535 when IIS FTP server is installed.

The rules are not enabled initially on some versions of Windows.3 To enable or change the rules, go to Control Panel > System and Security > Windows Defender Firewall4 > Advanced Settings > Inbound Rules and locate three “FTP server” rules. If the rules are not enabled, click on Actions > Enable Rule.

Restarting FTP Service

While the internal Windows firewall is automatically configured to open FTP ports when FTP server is installed, this change does not seem to apply, until FTP service is restarted. The same is true for changing data channel port range.

To restart FTP service go to Control Panel > System and Security > Administrative Tools (Windows Tools on Windows 11) and open Services. Locate Microsoft FTP Service and click Restart service.5

Adding FTP Site

To a Web Site

If you want to add FTP server to manage your existing web site remotely, locate your web site node in IIS Manager and:

  • Click Add FTP Publishing action.
  • In Add FTP Site Publishing wizard:
    • On an initial Binding and SSL Settings step, select Require SSL to disallow non-encrypted connections and select your certificate.
    • On Authentication and Authorization Information step, select Basic authentication and make sure Anonymous authentication is not selected. Select which users (Windows accounts) you allow to connect to the server with what permissions. You can choose All users or select only some. Do not select Anonymous users.
    • Submit with Finish button.

Advertisement

Your secure FTPS server is now running and can be connected to.

Standalone FTP Site

If you want to add a standalone FTP server to store/exchange files, locate Sites node (folder) of your Windows server in IIS Manager and:

  • Click Add FTP Site action.
  • In Add FTP Site wizard:
    • On an initial Site Information step, give a name to your FTP site (if it’s the only site you are going to have, simple “FTP site” suffice) and specify a path to a folder on your server’s disk that is going to be accessible using FTP.
    • On a Binding and SSL Settings step, select Require SSL to disallow non-encrypted connections and select your certificate.
    • On Authentication and Authorization Information step, select Basic authentication and make sure Anonymous authentication is not selected. Select which users (Windows accounts) you allow to connect to the server with what permissions. You can choose All users or select only some. Do not select Anonymous users.
    • Submit with Finish button.

Your secure FTPS server is now running and can be connected to.

Connecting to Your FTPS Server

For connecting to a Microsoft Azure Windows instance, see a specific guide.

Start WinSCP. Login Dialog will appear. On the dialog:

  • Select FTP protocol and TLS/SSL Explicit encryption.
  • Enter your Windows server hostname to Host name field. Avoid using an IP address to allow WinSCP to verify that the hostname matches with host the server’s certificate was issued to (not applicable to self-signed certificates).
  • Specify username and password for Windows account you want to connect with (when using domain accounts, you need to specify a full username with format domainusername).
  • You may want to save your session details to a site so you do not need to type them in every time you want to connect. Press Save button and type site name.
  • Press Login to connect.
  • If you are using self-signed certificate, you will be prompted to accept it.

Advertisement

Further reading

  • Installing secure FTP server on Microsoft Azure using IIS;
  • Installing SFTP/SSH Server on Windows using OpenSSH;
  • Upload files to FTP server or SFTP server;
  • Automate file transfers (or synchronization) to FTP server or SFTP server.

Понравилась статья? Поделить с друзьями:
  • Igri dlya kompyutera skachat besplatno na windows 10 torrent
  • Igram скачать бесплатно на компьютер windows 10
  • Igra windows 7 для windows 7 skachat besplatno
  • Igra gta dlya kompyutera skachat besplatno windows 7
  • Igo навигатор windows ce 2021 скачать