Ciao a tutti!

Se qualcuno di voi ha mai usato TMG per pubblicare il protocollo RDP, e all’improvviso non è piu stato in grado di effettuare connessioni remote verso il TMG stesso, questo articolo fa decisamente al caso vostro!

In TMG 2010 esiste una System Policy Rule che consente le connessioni remote all’host locale da una white-list di workstations predefinite.

clip_image002

Grazie a ciò, è possibile usare Remote Desktop per connettersi al TMG dai PC consentiti da rete interna.

Se provate a lanciare il seguente comando, potrete quindi visualizzare il listener TCP associato al servizio “Remote Desktop Services” che accetta le connessioni sulla porta di default 3389

Netstat –ano |findstr :3389

clip_image004

Assumiamo ora che vogliate pubblicare il protocollo RDP esternamente attraverso il TMG stesso, in modo da render possibile una connessione Terminal Server generata da un device esterno verso un server interno, mantenendo mascherato l’IP interno di questo server.

E’ possibile fare ciò molto semplicemente configurando una “Non-Web server publishing rule” in TMG:

clip_image006

A questo punto, se lanciate nuovamente il netstat dopo questa configurazione, non dovreste notare alcuna differenza nell’immediato, e tutto dovrebbe funzionare come atteso.

Ora, assumiamo che dobbiate riavviare il server TMG.

Dopo il reboot, se lanciate nuovamente il netstat, vedrete che la situazione è mutata:

clip_image008

clip_image010

Ora il server sta “ascoltando” in attesa di connessioni RDP solamente sull’indirizzo IP che è stato configurato all’interno della Server Publishing Rule, inoltre potrete notare come il listener sia ora associato al PID del servizio Firewall, e non è piu presente alcun listener associato al servizio RDS.

Se testate la connettività al server TMG da una delle workstation interne consentite, essa fallirà.

Questo accade a causa di un conflitto di socket generato tra i servizi FW e RDS, ed è in realtà un comportamento atteso.

Per risolvere questo problema, è possibile configurare RDS per “ascoltare” su una specifica accoppiata IP/Porta, o su uno specifico adapter.

Per fare ciò, aprite Remote Desktop Session Host Configuration > Right-Click su DRP-TCP > Network Adapter > selezionate quindi la NIC interna.

clip_image012

Fatto ciò, riavviate il servizio RDS.

Se ora lanciate nuovamente netstat, noterete le seguenti configurazioni:

clip_image014

Come si può notare, ora il servizio RDS “ascolta” sugli indirizzi IP configurati sull’interfaccia di rete interna, mentre il servizio FW “ascolta” sul lato esterno per pubblicare RDP.

Grazie a questa configurazione, è nuovamente possibile effettuare connessioni remote al server TMG mentre si pubblica RDP esternamente.

Spero che questo piccolo trucco possa tornare utile!!

Ciao,
Senior Support Engineer
Daniele Gaiulli