Nainstalujte server TFTP na Windows Server 2012 R2

Produktová řada Windows Server od nepaměti podporuje schopnost organizovat server TFTP. Ačkoli vyhrazená role a služba Server TFTP chybí (nehledejte jej v části FTP server), tato funkce, stejně jako v systému Windows Server 2003, je součástí služby Windows Deployments Services (WDS). Služba TFTP funguje uvnitř procesu svchost.exe služby WDS.

Protokol TFTP (Triviální Soubor Převod Protokol) Zjednodušený protokol pro přenos souborů, který poskytuje snadné stahování a odesílání souborů. TFTP se obvykle používá k organizování zaváděcích systémů PXE (síťové spouštění, bezdiskových pracovních stanic atd.), Načtení / uvolnění konfigurace síťového zařízení a řadu dalších specifických úkolů. V punkci chybí nástroje pro zabezpečení, autentizaci a správu. Jeho hlavní výhodou je snadná implementace klientské části a vysoký výkon při přenosu velkých souborů. Protokol funguje na portu 69 UDP.

Poznámka:. Server Microsoft TFTP má poněkud omezenou funkci, která je pro spuštění systému PXE nezbytně nutná. Klienti mohou zejména číst pouze data z takového serveru TFTP a operace zápisu nejsou k dispozici..

Chcete-li nainstalovat službu TFTP v systému Windows Server 2012 R2, otevřete konzolu Správce serveru a pomocí průvodce Přidejte role a funkce Wiazrd vyberte roli Služby nasazení systému Windows (Služby nasazení systému Windows).

V dalším kroku průvodce v komponentách role WDS vybereme pouze Doprava Server (Transportní server), zrušte zaškrtnutí políčka Deployment Server.

Po dokončení instalace rolí musíte vytvořit adresář, který bude například kořenovým adresářem serveru TFTP C: \ tftp.

Poté použijte editor registru ve větvi HKLM \ SYSTEM \ CurrentControlSet \ services \ WDSServer \ Providers \ WDSTFTP vytvořit nový parametr řetězce s názvem Rootfolder, a hodnotu obsahující cestu k kořenovému adresáři TFTP vytvořenému dříve.

Věnujte pozornost hodnotě parametru Readfilter. Ve výchozím nastavení umožňuje stahovat soubory pouze z adresářů \ boot a \ tmp. Pokud potřebujete možnost stahovat soubory z kořenového adresáře a jiných adresářů, musíte změnit hodnotu parametru ReadFilter na \ *.

Spusťte službu WDS pomocí příkazu

WDSUTIL / Start-TransportServer

Tip. Chcete-li službu spustit automaticky, musíte změnit spouštěcí typ služby Windows Deployment Services na Auto pomocí modulu snap-in services.msc nebo z příkazového řádku PowerShell pomocí rutiny Set-Service:

set-service WDSServer -StartupType Automatic

Ve firewallu Windows by se mělo objevit pravidlo, které umožňuje příchozí provoz na port 69 UDP (služba odpoví libovolným číslem portu nad 1023). Některé antivirové programy mohou blokovat port 69 (v tomto bylo zaznamenáno McAffee Enterprise)

Tím je dokončena konfigurace serveru TFTP.

K testování provozu serveru TFTP potřebujeme klienta TFTP. Můžete jej nainstalovat pomocí Správce serveru výběrem komponenty TFTP Klient.

Pokuste se o přístup k nasazenému serveru TFTP místně a pokuste se stáhnout soubor test.zip

Soubor můžete stáhnout pomocí příkazu

tftp -i localhost GET tmp \ test.zip C: \ temp \ test.zip

Výsledkem takového příkazu bude uložený soubor c: \ temp \ test.zip stažený z lokálního serveru.

To je vše teoreticky, ale v praxi jsem po provedení posledního příkazu dostal chybu:

Požadavek na připojení selhal

Při spuštění nebo restartování serveru Windows Deployment Services se v protokolu aplikace zobrazí událost ze služby WDSTFTP s EventID 259 a text:

Kořenová složka serveru TFTP pro nasazení systému Windows není nakonfigurována. Informace o chybě: 0x2

Aby server TFTP fungoval, musel jsem nainstalovat komponentu role WDS -> Nasazení Služba a okamžitě ji vyjměte. Po instalaci do větve WDSTFTP je třeba změnit hodnotu klíče RootFolder z C: \ RemoteInstall na c: \ tftp. Pokuste se soubor stáhnout znovu:

PS C: \ temp> tftp -i localhost get boot \ test.zip

Ukázalo se to!

Zkoumali jsme tedy, jak rychle nasadit server TFTP do systému Windows Server 2012 bez použití nástrojů třetích stran. Funkčnost takového serveru bude spíše zkrácena, takže pro složitější instalace je vhodnější použít alternativní implementaci serveru TFTP, například tftpd32..