Zainstaluj serwer TFTP w systemie Windows Server 2012 R2

Od niepamiętnych czasów linia produktów Windows Server obsługuje możliwość organizacji serwera TFTP. Chociaż dedykowana rola i usługa Serwer TFTP brakuje (nie szukaj w sekcji Serwer FTP), ta funkcja, podobnie jak w Windows Server 2003, jest częścią Windows Deployments Services (WDS). Usługa TFTP działa w procesie svchost.exe usługi WDS.

Protokół TFTP (Trywialne Plik Przeniesienie Protokół) Uproszczony protokół przesyłania plików, który zapewnia łatwe pobieranie i wysyłanie plików. Zazwyczaj TFTP służy do organizowania systemów rozruchowych PXE (rozruch sieciowy, bezdyskowe stacje robocze itp.), Ładowania / rozładowywania konfiguracji sprzętu sieciowego i szeregu innych konkretnych zadań. Przebiciu brakuje narzędzi bezpieczeństwa, uwierzytelniania i zarządzania. Jego główną zaletą jest łatwość implementacji części klienta i wysoka wydajność przy przesyłaniu dużych plików. Protokół działa na porcie 69 UDP.

Uwaga. Serwer Microsoft TFTP ma raczej uproszczoną funkcjonalność, która jest minimalnie niezbędna do rozruchu PXE. W szczególności klienci mogą odczytywać dane tylko z takiego serwera TFTP, a operacje zapisu nie są dostępne..

Aby zainstalować usługę TFTP w systemie Windows Server 2012 R2, otwórz konsolę Menedżer serwera i za pomocą kreatora Dodaj role i funkcje Wiazrd wybierz rolę Usługi wdrażania systemu Windows (Usługi wdrażania systemu Windows).

W następnym kroku kreatora, w składnikach roli WDS, wybieramy tylko Transport Serwer (Serwer transportu), odznacz Serwer wdrażania.

Po zakończeniu instalacji roli musisz utworzyć katalog, który będzie na przykład katalogiem głównym serwera TFTP C: \ tftp.

Następnie za pomocą edytora rejestru w oddziale HKLM \ SYSTEM \ CurrentControlSet \ services \ WDSServer \ Providers \ WDSTFTP utwórz nowy parametr ciągu o nazwie Folder główny, oraz wartość zawierającą ścieżkę do utworzonego wcześniej katalogu głównego TFTP.

Zwróć uwagę na wartość parametru Readfilter. Domyślnie pozwala tylko na pobieranie plików z katalogów \ boot i \ tmp. Jeśli potrzebujesz możliwości pobierania plików z katalogu głównego i innych katalogów, musisz zmienić wartość parametru ReadFilter na \ *.

Uruchom usługę WDS za pomocą polecenia

WDSUTIL / Start-TransportServer

Wskazówka. Aby automatycznie uruchomić usługę, musisz zmienić typ rozruchu Usług wdrażania systemu Windows na Automatyczny za pomocą przystawki services.msc lub z wiersza polecenia programu PowerShell za pomocą polecenia cmdlet Set-Service:

set-service WDSServer -StartupType Automatic

W zaporze systemu Windows powinna pojawić się reguła, która zezwala na ruch przychodzący do portu UDP 69 (usługa odpowiada dowolnym numerem portu powyżej 1023). Niektóre antywirusy mogą blokować port 69 (zauważono w tym McAffee Enterprise)

To kończy konfigurację serwera TFTP.

Aby przetestować działanie serwera TFTP, potrzebujemy klienta TFTP. Możesz zainstalować go za pomocą Menedżera serwera, wybierając komponent TFTP Klient.

Spróbujmy uzyskać dostęp do wdrożonego serwera TFTP lokalnie i spróbuj pobrać plik test.zip

Możesz pobrać plik za pomocą polecenia

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

Wynikiem takiego polecenia będzie zapisany plik c: \ temp \ test.zip, pobrany z lokalnego serwera.

To wszystko w teorii, ale w praktyce po wykonaniu ostatniego polecenia mam błąd:

Żądanie połączenia nie powiodło się

Podczas uruchamiania lub ponownego uruchamiania serwera Windows Deployment Services Server zdarzenie z usługi pojawia się w dzienniku aplikacji WDSTFTP z EventID 259 i tekst:

Folder główny serwera TFTP Windows Deployment nie jest skonfigurowany. Informacje o błędzie: 0x2

Aby serwer TFTP działał, musiałem zainstalować komponent roli WDS -> Wdrożenie Service i usuń go natychmiast. Po zainstalowaniu go w gałęzi WDSTFTP musisz zmienić wartość klucza RootFolder z C: \ RemoteInstall na c: \ tftp. Ponowna próba pobrania pliku:

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

Okazało się!

Sprawdziliśmy więc, jak szybko wdrożyć serwer TFTP w systemie Windows Server 2012 bez korzystania z narzędzi innych firm. Funkcjonalność takiego serwera będzie raczej obcięta, więc w przypadku bardziej złożonych instalacji lepiej jest zastosować alternatywną implementację serwera TFTP, na przykład tftpd32.