Zmiana portu dla Terminal Services

Opublikowano: 18 stycznia 2007

Zwykle po instalacji systemu z rodziny Windows Server 2003 (bo tych systemów dotyczył będzie ten artykuł) usługi terminalowe działają w oparciu o standardowy port TCP 3389. Ze względów bezpieczeństwa lub innych na zaporze chroniącej sieć firmową port ten może zostać zablokowany (Rys.1). Może on także zostać zablokowany na zaporze chroniącej sieć lokalną w której znajduje się klient i wówczas, aby móc zdalnie zarządzać serwerami lub korzystać z usług serwera terminali znajdującego się w sieci lokalnej przedsiębiorstwa, zachodzi konieczność zmiany tej domyślnej konfiguracji usług terminalowych.

Zapora uniemożliwia dostęp terminalowy do serwera wewnątrz sieci LAN

Rys. 1. Zapora uniemożliwia dostęp terminalowy do serwera wewnątrz sieci LAN.

Ponieważ nie tylko port TCP 3389 może zostać zablokowany na zaporze, lecz także sam protokół RDP, to w zależności od konfiguracji samej zapory (lub zapór) możemy skorzystać z jednego z poniższych scenariuszy:

Ustawienie dodatkowego portu nasłuchowego dla usług terminalowych w systemie Windows w sytuacji, gdy nie jest blokowany protokół RDP, a jedynie port 3389.

Ustawienie dodatkowego portu nasłuchowego usług terminalowych w systemie Windows oraz wykorzystanie klienta webowego usług terminalowych działającego na nowym porcie w sytuacji, gdy blokowany jest protokół RDP oraz port 3389 lub aplikacja klienta RDP.

Sytuacja, gdy blokowany jest sam protokół RDP, lecz nie jest blokowany port 3389 jest specyficznym przypadkiem drugiego scenariusza i nie będzie dodatkowo opisywana.

Artykuł ten stanowi krótki opis kroków potrzebnych do zmodyfikowania ustawień usług terminalowych tak, aby można było łączyć się do serwera terminalowego znajdującego się za zaporą/zaporami w zależności od jednego z wyżej wymienionych scenariuszy.
Nie jest jednakże celem tego artykułu opisywanie odpowiedniej konfiguracji zapory (zapór) i przyjęte zostało, że albo stosowna konfiguracja przekierowań na zaporze została już wykonana, albo stosowne serwery są widoczne spoza sieci LAN bądź to pod własnymi, zewnętrznymi adresami IP, bądź to pod rozstrzygalnymi nazwami DNS-owymi.

*
Zawartość strony
Scenariusz 1: Ustawienie dodatkowego portu nasłuchowego dla usług terminalowych w systemie WindowsScenariusz 1: Ustawienie dodatkowego portu nasłuchowego dla usług terminalowych w systemie Windows
Scenariusz 2: Ustawienie dodatkowego portu nasłuchowego usług terminalowych oraz wykorzystanie klienta webowego usług terminalowych działającego na nowym porcieScenariusz 2: Ustawienie dodatkowego portu nasłuchowego usług terminalowych oraz wykorzystanie klienta webowego usług terminalowych działającego na nowym porcie
Uwagi końcoweUwagi końcowe

Scenariusz 1: Ustawienie dodatkowego portu nasłuchowego dla usług terminalowych w systemie Windows

Interfejs graficzny aplikacji Terminal Services Configuration (Konfiguracja usług terminalowych) w Administrative Tools (Narzędzia administracyjne) nie pozwala na dodanie kolejnego portu nasłuchowego dla usług terminalowych - możliwe jest to tylko i wyłącznie poprzez edycję rejestru. Standardowo port nasłuchowy usług terminalowych jest zapisany w rejestrze w kluczu HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp w zmiennej PortNumber (Rys. 2).

Port nasłuchowy usług terminalowych w rejestrze

Rys. 2. Port nasłuchowy usług terminalowych w rejestrze.

Jeśli chcemy dodać kolejny port nasłuchowy dla usług terminalowych musimy wykonać poniższe kroki:

uruchomić REGEDIT na serwerze z usługami terminalowymi,

wyeksportować z rejestru poniższy klucz:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp,

zmodyfikować wyeksportowany plik REG zmieniając wszystkie wystąpienia powyższego klucza na na przykład poniższy:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp-New,

zlokalizować w pliku REG słowo PortNumber i zmienić jego wartość na żądaną (w tym artykule posłużymy się przykładową wartością 81). Pamiętać należy, że wartość ta jest zapisana szesnastkowo, tak więc przykładowy port 81 musi być wpisany jako 00000051, czyli po modyfikacji odpowiednia linia w pliku REG będzie miała następującą postać:
"PortNumber"=dword:00000051,

zapisać zmodyfikowany plik REG, a następnie zaimportować go do rejestru.

Od tej pory usługi terminalowe działać będą także na nowym porcie (nie ma konieczności restartu serwera), możliwa będzie także konfiguracja ustawień dla nowo zdefiniowanego połączenia RDP (Rys. 3).

Konfiguracja usług terminalowych

Rys. 3. Konfiguracja usług terminalowych.

Jednak by móc skorzystać z połączenia się z serwerem terminali na nowym porcie wymagany jest klient RDP w wersji przynajmniej 5.1 (obecnie najnowszą wersją dostępną do ściągnięcia ze stron Microsoftu jest wersja 6.0), wówczas w oknie połączenia zdalnego należy po podaniu adresu IP serwera terminalowego (najczęściej) lub jego nazwy (o ile dostęp po nazwie czy to DNS-owej, czy to NetBIOS-owej jest możliwy) wpisać dwukropek i numer portu, na który klient ma się łączyć (Rys. 4).

Okno połączenia zdalnego

Rys. 4. Okno połączenia zdalnego.

Do początku stronyDo początku strony

Scenariusz 2: Ustawienie dodatkowego portu nasłuchowego usług terminalowych oraz wykorzystanie klienta webowego usług terminalowych działającego na nowym porcie

Scenariusz drugi wymaga przeprowadzenia kroków opisanych w scenariuszu pierwszym oraz wymienionych poniżej czynności, tak aby możliwy był dostęp poprzez zaporę do klienta webowego usług terminalowych za pomocą protokołu HTTP lub HTTPS (Rys. 5), oraz połączenie się z tegoż klienta do serwera terminali na nowo dodanym porcie.

Kroki do realizacji tego scenariusza są zatem następujące:

ustawienie dodatkowego portu nasłuchowego usług terminalowych (jak w Scenariuszu 1),

instalacja klienta webowego serwera terminali,

modyfikacja ustawień klienta webowego tak, by mógł on korzystać z nowego portu usług terminalowych.

Dostęp przez klienta webowego usług terminalowych

Rys. 5. Dostęp przez klienta webowego usług terminalowych .

Instalacja klienta sieci Web serwera terminali systemu Windows

Kolejnym krokiem do wykonania (po dodaniu nowego portu nasłuchowego) jest instalacja na serwerze terminalowym klienta webowego usług terminalowych. W tym celu należy włożyć do napędu płytę instalacyjną systemu, uruchomić aplet Dodaj/Usuń składniki systemu Windows (Start-> Panel Sterowania-> Dodaj lub usuń programy) oraz zainstalować następujący komponent:
Serwer Aplikacji-> Internetowe usługi informacyjne (IIS)-> Usługa World Wide Web-> Podłączanie pulpitu zdalnego w sieci Web.

Uwaga: W przypadku gdy usługa serwera IIS, która jest wymagana do działania klienta webowego usług terminalowych, nie była do tej pory zainstalowana na tym serwerze, to zostanie ona wraz z odpowiednimi jej komponentami także zainstalowana.
Od tej pory można korzystać z klienta webowego usług terminalowych dostępnego pod adresem http://IPserwera/tsweb lub http://nazwa_serwera/tsweb

Zmiana portu nasłuchiwania dla klienta sieci Web serwera terminali

Ponieważ chcemy, aby połączenie terminalowe było realizowane na innym niż standardowy port TCP 3389, to musimy jeszcze zmienić w ustawieniach klienta webowego, aby korzystał z wybranego przez nas portu na jakim nasłuchuje serwer terminali. Należy to wykonać w następujący sposób:

w folderze %system root%\Web\TsWeb należy odnaleźć plik Default.htm,

otworzyć ten plik w Notatniku,

znaleźć sekcję zawierającą wpisy zaczynające się od „MsRdpClient.AdvancedSettings2”,

dopisać za tymi wierszami dodatkowy wiersz zawierający następujący wpis:
MsRdpClient.AdvancedSettings2.RDPPort = xxxx.

gdzie xxxx oznacza nasz zdefiniowany uprzednio nowy port nasłuchowy usług terminalowych (a więc w naszym przykładzie będzie to 81). Uwaga: tym razem należy wprowadzić wartość dziesiętną!

Można teraz sprawdzić funkcjonowanie nowego ustawienia łącząc się do klienta webowego usług terminalowych i otwierając nową sesję, a jednocześnie za pomocą Menedżera usług terminalowych na serwerze terminali sprawdzić, które z połączeń zostało wybrane (Rys. 6).

Klient webowy korzystający z nowego portu usług terminalowych

Rys. 6. Klient webowy korzystający z nowego portu usług terminalowych.

Do początku stronyDo początku strony

Uwagi końcowe

Opisana w scenariuszu drugim procedura jest oczywiście najprostszym modelem – w szczególności może okazać się konieczne rozdzielenie funkcjonalności usług IIS wraz z klientem webowym usług terminalowych od samego serwera terminali na dwie różne fizycznie maszyny. Wówczas oczywiście opisane powyżej kroki należy zastosować do odpowiednich serwerów.
Zalecane jest także zabezpieczenie usług IIS oraz korzystanie z protokołu HTTPS do łączenia się do klienta webowego usług terminalowych, co jednakże nie jest już przedmiotem tego artykułu.


Mikołaj Kamiński

Mikołaj Kamiński (MVP, MCP)
Pierwszy kontakt z komputerami miał już w szkole podstawowej dzięki ojcu, który przywiózł z Niemiec mikrokomputer ZX-81. Po zakończeniu nauki rozpoczął pracę jako administrator w banku, potem jako pracownik serwisowy prywatnej firmy komputerowej, gdzie odpowiadał za wsparcie systemów Microsoftowych. W kwietniu 2002 roku rozpoczął trwałą współpracę z twórcami serwisu Jama Mastaha. Na łamach Forum tego serwisu zajmuje się wsparciem użytkowników systemów Microsoft Windows, zarówno wersji serwerowych, jak i desktopowych. Za tę właśnie działalność został uhonorowany tytułem Microsoft MVP. Ostatnio także opublikował swój pierwszy artykuł o możliwościach zbliżenia funkcjonalności Windows XP Home Edition do wersji Professional w czasopiśmie IT-FAQ.


Do początku stronyDo początku strony