- DATAENGINER
- Настройка FTP-сервера в Windows Server 2012
- Виртуальный сервер на базе Windows
- Что это такое?
- Установка FTP-сервера
- Настройка Брандмауэра
- Подключение к FTP-серверу
- Настройка Secure FTP
- FTP over SSL (FTPS) в Windows Server 2012 R2
- Установка роли FTP сервера
- Генерация и установка на IIS SSL сертификата
- Создаём FTP сайт с поддержкой SSL
- FTPS и межсетевые экраны
- Тестирование подключения FTP over SSL
DATAENGINER
Добрый день! Сегодня мы продолжаем настраивать наш Ftp — Server для ОС Windows Server 2019! И сегодня мы рассмотрим как открыть порты, для доступа по сети к ftp-серверу.
Для того, чтобы мы могли подключиться к нашему ftp-серверу необходимо в брандмауэре открыть соответствующие порты. Как правило Ftp-сервер использует 21 порт, а sftp 22.
Шаг 1. Для того чтобы открыть порт, для нашего ftp-сервера, нам необходимо открыть firewall windows. Поэтому открываем меню пуск и пишем в поиске firewall.
Шаг 2. Открываем приложение Windows Defender Firewall.
Шаг 3. В левом боковом меню выберем inbound Rules. Далее в правом боковом меню выбираем New Rules.
Шаг 4. В появившемся окне добавления новой роли выбираем Predefined (предопределенные), и в выпадающем списке выбираем ftp-server.
Шаг 5. Отмечаем галочкой все предложенные роли.
Шаг 6. Теперь на следующей странице выбираем разрешить все подключения (Allow Connection) и нажимаем финиш.
Теперь у нас появится три новых правила, для входящих подключений к ftp-серверу.
Вот мы и рассмотрели как добавить правило для работы ftp — сервера.
Настройка FTP-сервера в Windows Server 2012
В статье описан процесс установки и настройки FTP-сервера на VPS под управлением операционной системы Windows Server 2012, настройки работы брандмауэра, подключение к серверу, а также дополнительной настройки Secure FTP.
Виртуальный сервер на базе Windows
Что это такое?
FTP (File Transfer Protocol) — это аббревиатура для протокола передачи файлов. Как следует из названия, FTP используется для передачи файлов между машинами в сети. Вы можете использовать FTP для обмена файлами между локальным ПК и удаленным сервером, доступа к онлайн-архивам программного обеспечения.
В нашей инструкции будет рассмотрен вариант установки FTP-сервера как роли web-сервера IIS, в качестве альтернативы можно использовать другое программное обеспечение, например — FileZilla Server, Titan FTP Server, Home Ftp Server, Ocean FTP Server.
Установка FTP-сервера
Откройте Диспетчер серверов и выберите пункт «Добавить роли и компоненты».
В открывшемся выберите тип установки Установка ролей или компонентов.
Затем выберите нужный сервер из пула. Нажмите Далее.
В списке ролей найдите веб-сервер IIS, и разверните его. Далее нужно отметить галочкой запись «FTP-сервер» и нажать далее.
Примечание: в некоторых версия веб-сервера IIS роль FTP-сервера может быть расположена на другой странице.
Подтвердите установку FTP-сервера.
Откройте диспетчер служб IIS. Правой кнопкой мыши нажмите Сайты и в вертикальном меню выберите Добавить FTP сайт.
На дальнейшем шаге укажите название FTP-сайта и введите путь до каталога, в котором будут храниться файлы.
Затем необходимо выбрать IP-адрес сервера (он должен совпадать с адресом, указанным в панели управления сервером), установить галочку напротив «Запускать сайт FTP автоматически» и «Без SSL»:
На последующем шаге выберите обычную аутентификацию и разрешите доступ всем пользователям (с разрешениями на чтение и запись).
В следующем окне в качестве аутентификации выберите Обычная. Авторизация — Все пользователи. Отметьте галочкой нужные разрешения чтения и записи и нажмите кнопку Готово.
Ваш сайт появится древовидной структуре веб-сервера.
Настройка Брандмауэра
Для внешнего подключения к ftp-серверу необходимо настроить firewall. Для этого откройте Брандмауэр Windows в режиме повышенной безопасности. В вертикальном меню слева выберите Правила для входящих подключений, затем в вертикальном меню справа Создать правило.
В открывшемся окне отметьте тип Предопределенные и в выпадающем списке выберите FTP-сервер. Нажмите Далее.
Отметьте галочками все строки и нажмите Далее.
На дальнейшем шаге выберите Разрешить подключение и нажмите Готово. Чтобы данные правила вступили в силу — перезагрузите сервер.
Подключение к FTP-серверу
Подключиться к FTP-серверу можно несколькими способами, например через стандартную утилиту Windows — Проводник, или через программу FileZilla.
Рассмотрим подключение через Проводник. В адресной строке введите:
ftp://ip-адрес
Например, ftp://188.227.16.74
Откроется окно ввода логина и пароля, укажите данные для подключения из панели управления сервером.
Примечание: веб-сервер IIS позволяет гибко настраивать подключение к FTP-серверу, например разделять видимость пространства для разных пользователей, включать анонимный доступ и настраивать права.
В итоге вы увидите содержимое папки FTP-сервера:
Примечание: встроенный ftp-сервер web-сервера IIS обладает широкими возможностями, например, такими как: изоляция пользователей, поддержка SSL, ограничение попыток входа на сервер, ведения журнала с различными параметрами.
Настройка Secure FTP
Для повышения уровня безопасности вашего файлового сервера можно использовать SSL сертификаты. Существует 2 варианта сертификатов: самоподписанный и заверенный центром сертификации. Наиболее надежным являются файлы центра сертификации, для того чтобы заказать такой SSL-сертификат для веб-сервера IIS воспользуйтесь инструкцией. Процесс установки полученного сертификата на IIS также подробно описан.
При созданном локально самозаверенном сертификате пользователи вашего сервера FTPS будут предупреждены при подключении к серверу.
Для создания самозаверенного сертификата:
- В диспетчере IIS откройте IIS> Сертификаты сервера.
- Нажмите Создать самозаверенный сертификат в вертикальном меню справа.
- Укажите имя сертификата.
Для настройки FTP Secure перейдите на начальную страницу вашего FTP-сайта и двойным щелчком мыши откройте Параметры SSL FTP.
В новом окне выберите политику Требовать SSL-соединения, в выпадающем списке выберите ваш сертификат и нажмите действие Применить.
Для подключения через защищенный канал используйте программу WinSCP, после запуска:
- в качестве протокола выберите FTP;
- шифрование Явное шифрование TLS/SSL;
- имя хоста — домен или ip-адрес;
- порт — 21, если не настраивался другой;
- имя и пароль пользователя системы;
Перед вами откроется содержимое ftp-каталога.
FTP over SSL (FTPS) в Windows Server 2012 R2
Одним из основных недостатков протокола FTP для передачи файлов – отсутствие средств защиты и шифрования передаваемых данных. Имя и пароль пользователя при подключении к FTP серверу также передаются в открытом виде. Для передачи данных (особенно по публичным каналам связи) рекомендуется использовать более безопасные протоколы, такие как FTPS или SFTP. Рассмотрим, как настроить FTPS сервер на базе Windows Server 2012 R2.
Протокол FTPS (FTP over SSL/TLS, FTP+SSL) – является расширением стандартного протокола FTP, но соединение между клиентом и сервером защищается (шифруется) с помощью протоколов SSL /TLS. Как правило, для подключения используется тот же самый порт 21.
Поддержка FTP over SSL появилась в IIS 7.0 (Windows Server 2008). Для работы сервера FTPS, на веб сервере IIS понадобится установить SSL сертификат.
Установка роли FTP сервера
Установка роли FTP сервера на Windows Server 2012 проблем не вызывает и уже не раз описана.
Генерация и установка на IIS SSL сертификата
Затем открываем консоль IIS Manager, выбираем сервер и переходим в раздел Server Certificates.
Этот раздел позволяет импортировать сертификат, создать запрос на получение сертификата, обновить сертификат или создать самоподписанный сертификат. В целях демонстрации мы остановимся на самоподписанном сертфикате (его также можно создать с помощью командлета New-SelfSifgnedCertificate). При обращении к сервису будет появляться предупреждение о том, что сертификат выдан недоверенным CA, чтобы отключить это предупреждение для данного сертификата, его можно добавить в доверенные через GPO.
Выбираем Create Self-Signed Certificate.
В мастере создания сертификата указываем его имя и выбираем тип сертификата Web Hosting.
Самоподписанный сертификат должен появиться в списке доступных сертификатов. Срок действия сертификата – 1 год.
Создаём FTP сайт с поддержкой SSL
Далее нужно создать FTP сайт. В консоли IIS щелкаем ПКМ по узлу Sites и создаем новый FTP сайт (Add FTP).
Указываем имя и путь к корневому каталогу FTP сайта (у нас каталог по-умолчанию C:\inetpub\ftproot).
На следующем шаге мастера в разделе SSL сертификатов выбираем созданный нами сертификат.
Осталось выбрать тип аутентификации и права доступа пользователей.
На этом завершаем работу мастера. По умолчанию SSL защита является обязательной и используется для шифрования как команд управления так и и передаваемых данных.
FTPS и межсетевые экраны
При использовании протокола FTP используется 2 разных TCP соединения, по одному передаются команды, по другому данные. Для каждого канала данных открывается свой TCP порт, номер которого выбирается сервером или клиентом. Большинство файерволов позволяют инспектировать FTP трафик и, анализируя его, автоматически открывать нужные порты. При использовании защищенного FTPS передаваемые данные закрыты и не поддаются анализу, в результате межсетевой экран не может определить какой порт нужно открыть для передачи данных.
Чтобы не открывать снаружи к FTPS серверу весь диапазон TCP портов 1024-65535, можно принудительно указать FTP серверу диапазон используемых адресов. Диапазон указывается в настройках сайта IIS в разделе FTP Firewall Support.
После изменения диапазона портов нужно перезапустить сервис (iisreset).
Во встроенном файерволе Windows за входящий трафик будут отвечать правила:
- FTP Server (FTP Traffic-In)
- FTP Server Passive (FTP Passive Traffic-In)
- FTP Server Secure (FTP SSL Traffic-In)
Соответственно на внешнем межсетевом экране придется открыть порты 21, 990 и 50000-50100 (выбранный нами диапазон портов).
Тестирование подключения FTP over SSL
Для тестирования подключения по FTPS воспользуемся клиентом Filezilla.
- Запустите FileZilla (или любой другой клиент с поддержкой FTPS).
- Нажмите File>SiteManager, и создайте новое подключение (NewSite).
- Укажите адрес FTPS сервера (Host), тип протокола (RequireexplicitFTPoverTLS), имя пользователя (поле User) и требование требовать ввод пароля для авторизации (Askforpassword)
- Нажимаем кнопку Connect и вводим пароль пользователя.
- Должно появиться предупреждение о недоверенном сертификате (при использовании самоподписанного сертификата). Подтверждаем соединение.
- Соединение должно установиться, а в журнале должны появиться строки:
Status: Initializing TLS.
Status: Verifying certificate.
Status: TLS connection established.