Konfigurácia servera FTP s izoláciou používateľa v systéme Windows Server 2016/2012 R2

Aj keď protokol FTP, Jeden z najstarších protokolov je už 40 rokov starý a používa sa všade tam, kde je potrebný jednoduchý protokol na prenos súborov. Server FTP je možné nainštalovať na všetky operačné systémy spoločnosti Microsoft. Posledná hlboká modernizácia tejto služby bola vykonaná v systéme Windows 7 / Server 2008 R2 (v skutočnosti bol servisný kód znova prepísaný). Bezpečnosť služby sa výrazne zlepšila a objavilo sa množstvo nových funkcií. Najmä na FTP serveri vo Windows bolo možné konfigurovať izolácia FTP používateľov, umožňuje rozlíšiť prístup viacerých používateľov do ich vlastných priečinkov na jednom serveri FTP.

Vďaka funkcii izolácie môžu používatelia pracovať iba so svojimi ftp adresármi a nemôžu vyšplhať vyššie v adresárovom strome, pretože Adresár najvyššej úrovne používateľa sa mu javí ako koreň služby FTP. Takto môžete zabrániť používateľom v prístupe k súborom iných ľudí na serveri FTP. Izolácia používateľov FTP je často využívaná poskytovateľmi hostingu, keď je potrebné poskytnúť individuálny prístup rôznym používateľom k jednému úložisku súborov.

Rovnako ako v predchádzajúcich verziách systému Windows je služba FTP (nemýľte sa s sFTP a TFTP) v systéme Windows Server 2016/2012 R2 založená a hlboko integrovaná do služby IIS a má jediné rozhranie správy pre správu. V tomto článku ukážeme, ako inštalačný server FTP založené na IIS v oknách server 2016/2012 R2 a nakonfigurujte na ňom izoláciu používateľa (Pokyny sa vzťahujú aj na Windows 10 / 8.1).

obsah:

  • Inštalácia úlohy servera FTP v systéme Windows Server 2016/2012 R2
  • Nastavenie servera FTP v systéme Windows Server, udeľovanie práv používateľom
  • Konfigurácia izolácie používateľa FTP v systéme Windows Server 2016/2012 R2
  • Nakonfigurujte pravidlá brány firewall systému Windows na prístup na server FTP
  • Kontrola pripojenia k FTP serveru z klienta Windows

Inštalácia úlohy servera FTP v systéme Windows Server 2016/2012 R2

Službu FTP môžete nainštalovať prostredníctvom konzoly Server Manager, všimnite si v tejto časti Webový server (IIS) -> FTP server možnosti FTP služba a Rozšíriteľnosť FTP.

Rolu FTP servera môžete nainštalovať aj pomocou jedného príkazu PowerShell:
Nainštalujte webový server FTP FTP

Ak chcete nainštalovať konzolu pre správu FTP servera, spustite príkaz:

Install-WindowsFeature - Názov "Web-Mgmt-Console"

Nastavenie servera FTP v systéme Windows Server, udeľovanie práv používateľom

Spustite Správca serverov a otvorte konzolu správy Internet Information Service Manager (IIS).

Vytvorte nový server FTP (Webové stránky -> Pridať FTP site).

Názov servera FTP: MyTestSite

Koreňový adresár servera FTP: C: \ inetpub \ ftproot

Na ochranu údajov ftp prenášaných sieťou je možné nakonfigurovať SSL (v tomto prípade budú všetky údaje prenášané sieťou a heslá / účty používateľov ftp šifrované), čo však v našej ukážke nie je potrebné. Všetky ostatné nastavenia zostanú predvolené..

Svoj server FTP môžete spravovať pomocou modulu WebAdministration PowerShell. Napríklad, ak chcete vytvoriť nový server FTP, stačí vykonať nasledujúce príkazy:

Webová správa pre importovací modul
# Nastaviť názov servera FTP
$ FTPSiteName = 'Nový FTP server'
# FTP adresár stránky
$ FTPRoot = 'E: \ www \ FTPRoot'
# Port servera FTP
$ FTPPort = 21
New-WebFtpSite - meno $ FTPSiteName -FyzicalPath $ FTPRoot -Port $ FTPPort

Vyberte nový server FTP av sekcii FTP overenie pravosti (Overenie) zakáže anonymné overenie Anonymné overenie. Základné overenie totožnosti musí byť povolená.

Služba FTP v systéme Windows Server 2016/2012 R2 môže používať dva typy účtov: doménu alebo lokálny. V závislosti od typu účtu existujú rozdiely v štruktúre adresárov FTP a nastavení izolácie používateľa. Použijeme miestne účty Windows.

Vytvorte používateľov FTP, napríklad to budú účty ftp_user1, ftp_user2 a ftp_user3. Tiež vytvorte skupinu ftp_users, do ktorej budú títo používatelia zaradení. V sekcii môžete vytvoriť používateľov miestna užívatelia a skupiny konzola počítačový management.

Môžete tiež vytvárať používateľov a skupiny z príkazového riadku (alebo pomocou PowerShell). Vytvorenie miestnej skupiny:
net localgroup ftp_users / add

Vytvorenie nového miestneho používateľa:

net user ftp_user1 / add *

Pridajte používateľa do skupiny:

net localgroup ftp_users ftp_user1 / add

Rovnakým spôsobom vytvorte ďalších dvoch používateľov..

Vytvorené práva skupiny ftp_users (RW) udelte adresáru C: \ inetpub \ ftproot.

Vo vnútri adresára C: \ inetpub \ ftproot vytvorte adresár s menom LocalUser (názov musí byť úplne konzistentný, to je dôležité!!!). Potom vo vnútri C: \ inetpub \ ftproot \ LocalUser vytvorte tri adresáre s menami používateľov, ktorých ste vytvorili: ftp_user1, ftp_user2, ftp_user3.

poznámka. V závislosti od typu účtov musíte vytvoriť nasledujúcu adresárovú štruktúru (% FtpRoot% \ máme na mysli koreň servera FTP, v našom prípade je to C: \ inetpub \ ftproot \):

Typ účtuSyntax názvov domovského adresára
Anonymní používatelia% FtpRoot% \ LocalUser \ Public
Windows Local Account% FtpRoot% \ LocalUser \% UserName%
Účet domény Windows% FtpRoot% \% UserDomain% \% UserName%
Špeciálne účty IIS Manager alebo ASP.NET% FtpRoot% \ LocalUser \% UserName%


Vráťte sa do konzoly IIS a do sekcie lokality Pravidlá autorizácie FTP vytvoriť nové pravidlo (Pridajte pravidlo Povoliť), v ktorých je uvedené, že skupina ftp_users by mala mať oprávnenie na čítanie a zápis (povolenia na čítanie a zápis).

Konfigurácia izolácie používateľa FTP v systéme Windows Server 2016/2012 R2

Poďme k nastaveniu izolácie FTP používateľov. Izolácia používateľov FTP je nakonfigurovaná na úrovni servera FTP, nie celého servera, a umožňuje vám usporiadať si vlastný domovský adresár pre každého používateľa. V nastaveniach servera FTP otvorte položku FTP užívateľ izolácia.

V tejto časti je niekoľko nastavení. Prvé dva neznamenajú izoláciu používateľa:

  • FTP koreň adresár (ftp - relácia používateľa začína koreňovým adresárom ftp stránky);
  • užívateľ názov adresár (používateľ začína fyzickým / virtuálnym adresárom s užívateľským menom. Ak adresár chýba, relácia sa spustí z koreňového adresára ftp stránky).

Nasledujúce 3 možnosti predstavujú rôzne režimy operácie izolácie používateľa:

  • užívateľ názov adresár (disable globálnej VirtualDirectories) - predpokladá, že relácia ftp používateľa je izolovaná fyzickým alebo virtuálnym adresárom, ktorého meno sa zhoduje s menom používateľa ftp. Používatelia vidia iba svoj vlastný adresár (pre nich je to koreňový adresár) a nemôžu prekročiť tento adresár (vo vyššom adresári stromu FTP). Akékoľvek globálne virtuálne adresáre sa ignorujú;
  • užívateľ názov fyzický adresár (umožňujú globálnej virtuálne adresára) - predpokladá sa, že relácia FTP používateľa je obmedzená (izolovaná) fyzickým adresárom s názvom užívateľského účtu FTP. Užívateľ nemôže ísť nad svojím adresárom v štruktúre FTP. Používateľ má však prístup ku všetkým vytvoreným globálnym virtuálnym adresárom;
  • Domovský adresár FTP nakonfigurovaný v službe Active Directory - Užívateľ FTP je izolovaný vo svojom domovskom adresári určenom v nastaveniach svojho účtu Active Directory (vlastnosti FTPRoot a FTPDir)..
Je dôležité. Ak sú globálne virtuálne adresáre aktívne, všetci používatelia majú prístup ku všetkým virtuálnym adresárom nakonfigurovaným v koreňovom adresári servera FTP (s príslušnými povoleniami NTFS)..

Vyberte požadovaný režim izolácie (pre izoláciu užívateľa ftp používam druhú možnosť).

Pri akýchkoľvek zmenách nastavenia servera FTP v službe IIS sa odporúča reštartovať službu Microsoft FTP (FTPSVC)..

Nakonfigurujte pravidlá brány firewall systému Windows na prístup na server FTP

Keď nainštalujete úlohu servera FTP v nastaveniach brány Windows Firewall, automaticky sa aktivujú všetky potrebné pravidlá potrebné na prístup používateľa k FTP..

Aby server FTP North pracoval správne v pasívnom režime FTP, používatelia sa musia pripojiť k rozsahu portov RPC (1025-65535). Aby ste neotvorili všetky tieto porty na externom firewalle, môžete obmedziť rozsah dynamických portov TCP používaných na prenos údajov.

  1. Ak to chcete urobiť, otvorte položku v nastaveniach servera FTP v službe IIS FTP firewall podpora a na poli údaje channel prístav rozsah zadajte rozsah portov, ktoré chcete použiť pre pripojenia FTP. Napríklad - 50000 - 50100;
  2. Uložte zmeny a reštartujte službu IIS (iisreset);
  3. Otvorte ovládací panel a prejdite na Ovládací panel \ Systém a zabezpečenie \ Windows Firewall \ Povolené aplikácie;
  4. Skontrolujte, či má zoznam aplikácií, ktoré majú povolený prístup cez bránu firewall, oprávnenie FTP server.

Potom v bráne Windows Firewall s nastaveniami rozšíreného zabezpečenia overte, či sú povolené nasledujúce pravidlá:

  • FTP server (FTP Traffic-In) - TCP, port 21;
  • FTP Server Passive (FTP Passive Traffic-In) - adresa miestneho portu 1024-65535 (alebo 50000-50100 ako v našom príklade);
  • FTP Server Secure (FTP SSL Traffic-In) - (pri použití FTP s SSL) port 990;
  • FTP server (FTP Traffic-Out) - port 20;
  • Bezpečný FTP server (FTP SSL Traffic-Out) - (pri použití FTP s SSL) port 989.

Preto musia byť tieto porty otvorené na bráne (firewall), aby sa mohli pripojiť externí používatelia FTP.

Kontrola pripojenia k FTP serveru z klienta Windows

Dostupnosť portov na serveri FTP môžete skontrolovať pomocou rutiny Test-NetConnection:

Test-NetConnection -ComputerName yourftpservername -Port 21

Alebo pomocou príkazu ftp:

ftp yourftpservername

Skúste sa pripojiť k svojmu serveru FTP pomocou ľubovoľného klienta FTP alebo priamo z prieskumníka (v paneli s adresou zadajte ftp: // yourservername /.

Zadajte meno používateľa a heslo.

Vo výsledku uvidíte obsah domovského adresára so súbormi používateľa (čo je koreňom servera FTP pre používateľa). Ako vidíte, relácia používateľa je izolovaná a užívateľ vidí iba svoje súbory na ftp serveri.

rada. Ak chcete používať anonymný prístup (Všetci anonymní používatelia), všetci používatelia sa môžu pripojiť k vášmu FTP serveru pomocou anonymného alebo hosťujúceho mena a e-mailovej adresy ako hesla. Pri anonymnom pripojení k serveru FTP bude relácia obmedzená na adresár LocalUser \ Public (prirodzene je potrebné vopred vytvoriť verejný adresár).

Na zobrazenie informácií o prístupe používateľov k FTP serveru môžete použiť protokoly FTP, ktoré sú predvolene uložené v adresári c: \ inetpub \ logs \ logfiles vo formáte súborov u_exYYMMDD.log.

Ak si chcete zobraziť aktuálne užívateľské pripojenia k serveru, môžete použiť hodnoty počítadla používateľov IIS pomocou PowerShell alebo funkcie Aktuálne FTP relácie v konzole IIS. V tejto konzole si môžete zobraziť informácie o mene a adrese IP používateľa FTP av prípade potreby reláciu odpojiť.

Pozreli sme sa teda na to, ako nakonfigurovať server FTP s izoláciou používateľa založenou na systéme Windows Server 2016/2012 R2. V izolovanom režime sa používatelia autentifikujú na FTP pod svojimi miestnymi alebo doménovými účtami, po ktorých získajú prístup do svojho koreňového adresára zodpovedajúceho užívateľskému menu.