Инсталиране на защитен FTP сървър на Windows чрез IIS
Протокол за прехвърляне на файлове на Microsoft (FTP)услугата включва функции, които позволяват на уеб авторите да публикуват съдържание по-добре от преди, като позволяват на множество потребители да имат достъп до техните директории, без да получават достъп до директориите на други потребители. Това предлага на уеб администраторите повече сигурност и опции за внедряване.
Една от тези функции е известна катоFTP през Secure Sockets Layer (SSL) или FTPS. FTPS позволява сесиите да бъдат криптирани между FTP клиент и сървър. Това е разширение на често използвания протокол за прехвърляне на файлове (FTP), който добавя поддръжка за сигурността на транспортния слой (TLS), известен преди като Secure Sockets Layer (SSL). FTPS не трябва да се бърка с FTP през SSH, което е практиката за тунелиране на FTP през SSH връзка; или SSH File Transfer Protocol (SFTP), защитена подсистема за прехвърляне на файлове за протокола Secure Shell (SSH), който не се поддържа от IIS.
В тази статия ще ви преведем през процеса на инсталиране на FTPS (защитен FTP) сървър на Windows с помощта на IIS. Стъпките, необходими за изпълнение на процедурите в тази статия, включват:
- Инсталиране на функции на IIS и FTP сървър.
- Създаване на SSL сертификат.
- Работа със сървъри зад външна защитна стена/NAT.
- Създаване на нов FTP потребител с Windows.
- Създаване на новия FTP сайт в IIS.
- Свързване на сертификата към TLS/SSL в IIS.
- Конфигуриране на FTP удостоверяване и оторизация.
- Тестване на вашия нов FTP сървър.
Инсталиране на функции на IIS и FTP сървър
IIS е инсталиран по подразбиране на повечето Windows сървъри, но функцията на FTP сървъра обикновено е деактивирана по подразбиране. Следователно първата стъпка е да активирате функциите на FTP сървъра. Следвайте стъпките по-долу, за да активирате функцията FTP сървър на Windows Server 2022, Windows Server 2019, Windows Server 2016 или Windows Server 2012:
- В Windows Server Manager отидете на таблото за управление и стартирайте Управление >> Добавяне на роли и функции.
- В съветника за добавяне на роли и функции: Продължете към стъпката Тип инсталация и потвърдете инсталацията, базирана на роли или функции.
- Продължете към стъпката Роли на сървъра и проверете ролята на уеб сървъра (IIS). Имайте предвид, че вече е проверено дали сте имали IIS инсталиран като уеб сървър преди това. Ако бъдете подканени да инсталирате инструмента IIS Management Console, потвърдете го.
- Продължете към стъпка Роля на уеб сървър (IIS) >> Ролеви услуги и проверете услугата за роля на FTP сървър. Премахнете отметката от услугата за роля на уеб сървър, ако не ви е необходима.
- Потвърдете инсталацията си, като щракнете върху „Напред“, продължете с инсталирането и изчакайте инсталацията да завърши.
Създаване на TLS/SSL сертификат за FTPS сървъра
Вашият FTP сървър се нуждае от TLS/SSL сертификат, за да установи защитена връзка между клиент и сървър. Сертификатът съдържа информация за самоличността на сървъра, заедно с техниката на криптиране, използвана за установяване на защитен канал. Това улеснява крайните потребители да проверяват самоличността на отдалечен компютър. В зависимост от случая на използване или сценария TLS/SSL сертификатът може да бъде или самоподписан, подписан от домейн, подписан от трета страна.
- Самоподписаните сертификати се използват във вътрешни уебсайтове, но в такива случаи потребителите на вашия FTPS сървър винаги ще получават предупреждение за сигурност. Това е така, защото няма начин да докажете, че самоличността е ваша, освен ако не я е създал сертифициращ орган (CA).
- Домейн сертификатите се използват вътре в домейни и се подписват от сертифициращия орган на организацията. Вътрешните потребители няма да получат предупредително съобщение за сигурност, но потребителите извън домейна ще го направят.
- Сертификатите, подписани от трети страни, се използват в производствените сървъри, защото са подкрепени от сертифициращ орган (CA). Сертификатите, подписани от CA, гарантират на FTP клиентите, че вашият сървър е този, за когото се представя.
С IIS можете да създадете самоподписан сертификат и сертификат за домейн. За да създадете a самоподписан сертификат, следвайте стъпките по-долу:
- В IIS Manager отворете IIS >> Server Certificates.
- В менюто Действия от дясната страна на IIS Manager изберете опцията „Създаване на самоподписан сертификат“.
- Посочете име на сертификат (напр. „Моят FTP сертификат“) и щракнете върху „OK“, за да изпратите.
- За да създадете a сертификат за домейн, следвайте стъпките по-долу:
- Отидете на Сертификати на сървъра и изберете „Създаване на сертификат за домейн“.
Ще трябва да предоставите информация за отличително име (DN), когато записвате и създавате заявка за подписване на сертификат (CSR).
- В полето „Общо име“ използвайте пълно квалифицирано име на домейн (FQDN) на компютъра или уеб сървъра.
- В Организация използвайте официалното име на компанията.
- В организационна единица (OU) използвайте отдела или областта (по избор за домейни на Active Directory).
- Посочете онлайн CA във вашия домейн. Ако има онлайн сертифициращ орган, трябва да видите наличната опция „избор“. Ако опцията „Избор“ не е налична, можете да посочите DA, като използвате подходящото име, като CertificateAuhtorityNameNameServerName.
Работа със сървъри зад външна защитна стена/NAT
Ако вашият сървър е зад външна защитна стена/NAT, трябва да кажете на FTP сървъра неговия външен IP адрес, за да разрешите връзки в пасивен режим. Следвайте стъпките по-долу, за да завършите този процес:
- В IIS Manager отворете FTP >> FTP Firewall Support.
- Посочете външния IP адрес на вашия сървър.
За Microsoft Azure Windows сървъри ще намерите външния IP адрес в секцията Публичен IP адрес на страницата на виртуалната машина.
Когато работите зад външна защитна стена, трябва да отворите портове за връзки за данни, в допълнение към отварянето на FTP порт 21 и евентуално косвен TLS/SSL FTP порт 990. Вероятно няма да искате да отворите целия диапазон от портове по подразбиране 1024-65535. В такъв случай трябва да кажете на FTP сървъра да използва само диапазона, който е отворен на защитната стена. За това използвайте кутия за обхват на порта на канала за данни. Всеки път, когато промените този диапазон, ще трябва да рестартирате FTP услугата.
- Щракнете върху Прилагане на действие, за да изпратите вашите настройки.
Някои външни защитни стени могат да наблюдават FTP контролната връзка и автоматично да отварят и затварят портовете за връзка за данни, ако е необходимо. Така че не е необходимо целият обхват на портовете да е отворен през цялото време, дори когато не се използва. Това няма да работи със защитения FTPS, тъй като контролната връзка е криптирана и защитната стена не може да я наблюдава.
В машини с Windows вътрешната защитна стена на Windows се конфигурира автоматично с правила за портове 21, 990 и 1024-65535, когато IIS FTP сървърът е инсталиран. Правилата не са активирани първоначално в някои версии на Windows. За да активирате или промените правилата, следвайте стъпките по-долу:
- Отидете на Контролен панел >> Система и сигурност >> Защитна стена на Windows Defender >> Разширени настройки >> Входящи правила и намерете три правила за „FTP сървър“.
- Ако правилата не са активирани, щракнете върху Действия >> Активиране на правило.
Създаване на нов FTP потребител с Windows
В този раздел ще ви покажем как да създадете нов потребител за свързване към FTPS сървъра с подходящите разрешения. Ето стъпките, които трябва да предприемете:
- Отворете Локални потребители и групи на вашия Windows Server. Отидете на Server Manager >> Tools >> Computer Management. Разгънете системните инструменти >> и отворете „Локални потребители и групи“.
- Като алтернатива можете да използвате прекия път Win+R, за да отворите „Run“ и да въведете „lusrmgr.msc“.
- Отидете на Действие и щракнете върху „Нов потребител“.
- В прозореца „Нов потребител“ продължете и въведете идентификационната информация на потребителя.
- Кликнете върху „Създаване“.
Сега трябва да предоставите на новия потребител разрешение за основната папка на FTP
- Папката по подразбиране в IIS за съхраняване на съдържание се нарича „inetpub“. Отидете до C:inetpub и намерете папката „ftproot“.
- Щракнете с десния бутон върху него и отворете „Свойства“.
- Отидете в раздела Сигурност >> и след това щракнете върху „Редактиране“ и намерете потребителя, който сте създали преди това, и задайте разрешенията. Например, можете да ограничите или разрешите достъп на потребителя до ресурсите на главната папка на FTP.
Сега, след като създадохме потребител с правилното разрешение, трябва да създадем FTP сайт, който може да бъде отворен само от потребител с правилните разрешения.
Създаване на нов FTP сайт в IIS
FTP сайтът е сървър, който може да бъде достъпен извън LAN - от всяко място в Интернет. В панела Връзки щракнете върху възела Сайтове в дървото.
- Отворете IIS Manager >> отидете на вашия домашен сървър >> в панела Connections щракнете върху възела „Sites“ в дървото.
- Добавете FTP сайт. Щракнете с десния бутон върху възела Сайтове в дървото и щракнете върху Добавяне на FTP сайт или щракнете върху Добавяне на FTP сайт в панела Действия.
- Когато се появи съветникът за добавяне на FTP сайт, въведете информацията за FTP сайта (например „Моят нов FTP сайт“) и физическия път на директорията със съдържание (например %SystemDrive%inetpubftproot) в полето за име на FTP сайт. Какъвто и път да сте избрали тук, уверете се, че има правилните разрешения за разрешаване или ограничаване на достъпа.
- Щракнете Напред
Свързване на сертификата към TLS/SSL в IIS
На следващата страница на съветника ще се опитаме да свържем сертификата към TLS/SSL в IIS. Можете да обвържете TLS/SSL сертификати, докато създавате или след като сте създали своя FTP сайт. Следвайте стъпките по-долу, за да завършите процеса:
- Изберете IP адрес за вашия FTP сайт от падащото меню IP адрес или изберете да приемете избора по подразбиране „Всички неназначени“.
- Въведете TCP/IP порта за FTP сайта в полето Порт. За това разглеждане изберете да приемете порта по подразбиране 21. FTPS използва порт 21 за своите изрични FTPS контролни връзки и порт 990 за неявните FTPS контролни връзки.
- По желание можете да поставите отметка в „Автоматично стартиране на FTP сайт“. Тази опция е полезна винаги, когато сървърът падне. IIS ще стартира FTPS сайта автоматично, след като сървърът се върне онлайн
- За това разглеждане не използваме име на хост, така че се уверете, че полето Виртуален хост е празно.
- Уверете се, че падащото меню Сертификати е зададено на вашия TLS/SSL сертификат. Можете да направите това, като изберете своя самоподписан сертификат, сертификат за домейн или прегледате всеки сертификат, създаден по друг начин.
- Уверете се, че Разрешете SSL е избрана опция.
- Щракнете Напред.
- Щракнете върху Напред отново.
Конфигуриране на FTP удостоверяване и оторизация
На следващата страница на съветника ще можете да определите кои и как потребителите се свързват с вашия FTPS сървър.
Можете да изберете Anonymous (с активирано криптиране) или Basic (без криптиране), което зависи от типа на SSL сертификата.
- За тази стъпка през, изберете Basic за настройките за удостоверяване.
За настройките за оторизация:
- Изберете „Конкретни потребители“ от падащото меню Разрешаване на достъп до.
- Въведете „администратор“ за потребителско име.
- Изберете Четене и запис за опцията Разрешения. Когато завършите тези елементи, щракнете върху Готово.
Тестване на вашия нов FTP сървър
След като горните стъпки са изпълнени, последната стъпка е да проверите дали вашият FTPS сървър работи правилно. Можете да започнете тестването си от локалния хост, последван от клиенти на трети страни.
- За да тествате от localhost, просто отидете на който и да е уеб браузър на вашия сървър и въведете „FTP://localhost“.
За базирано на трета страна тестване, Solarwind Serv-U управляван сървър за прехвърляне на файлове е страхотен инструмент. Serv-U Managed File Transfer Server е надежден софтуер за FTP сървър за сигурно прехвърляне на файлове. Той осигурява по-добра сигурност и контрол върху прехвърлянето на файлове във и извън вашата организация.