Archive

Archive for ottobre 2012

TMG, IIS and an issue with 443 port binding to all ip addresses

E’ sempre la casualità che ci fa imbattere nei problemi.

Per puro caso mi sono ritrovato in una infrastruttura di rete a dover configurare su Forefront Threat Management Gateway, installato in una virtual machine gestita da Hyper-V, una Firewall Policy per pubblicare un web site in HTTPS.

Nell’implementare la regola ho riscontrato la mancata pubblicazione del sito ed ho trovato nel registro eventi questo errore:

Per indagare sulle cause ed individuare il processo che sta in ascolto sulla porta 443 eseguo un netstat come in figura

ed individuato il PID, vado a verificare nel Task Manager che corrisponde al processo System

A questo punto, non capendo per quale motivo il processo System debba stare in ascolto sulla porta 443 per tutti gli indirizzi ip, faccio una ricerca su internet e trovo

“By default IIS (and its HTTP.sys driver) will listen on ALL IP addresses configured on the server (including any new ones added while it is running).  If you want to have IIS listen only on specific IP addresses (and leave others alone for other servers that need to use port 80 as well), you will need to define an IP Inclusion List (also called an IP Listen List in some places).

In Windows Server 2003, use the HTTPCFG.EXE utility from the command line.  There is a TechNet article that describes the specifics on the commands to use to do this.

For Windows Server 2008, use the NETSH utility.”

Riferimento: http://serverfault.com/questions/109486/why-is-the-system-process-listning-on-80-443

A questo punto utilizzo i comandi indicati qui Netsh Commands for Hypertext Transfer Protocol (HTTP) nel seguente modo:

1) prima eseguo un netsh http show sslcert per verificare la presenza dei binding della porta 443 su tutti gli indirizzi IPv4 e IPv6;

2) poi rimuovo il binding con i comandi seguenti

Fatte le suddette operazioni, rilancio speranzoso il netstat ma ottengo ancora

e come ulteriore conferma, riabilitando la firewall policy di pubblicazione in TMG, trovo nei log il triste

Un po’ deluso, torno a rileggere la documentazione trovata in internet ed interpreto meglio la frase illuminante:

If you want to have IIS listen only on specific IP addresses (and leave others alone for other servers that need to use port 80 as well), you will need to define an IP Inclusion List (also called an IP Listen List in some places).

sempre nel medesimo link indicato in precedenza quindi decido di provare questa mossa

e finalmente ottengo

ma soprattutto, riabilitando la regola di pubblicazione del web site in TMG, non c’è più alcun errore e il sito in SSL risulta raggiungibile da internet, il tutto senza essere costretto a stoppare l’IIS in esecuzione sullo stesso server.

Alla prossima 😉

Microsoft Community Contributor

Dear Edoardo,

Congratulations! We are pleased to inform you that your
contributions to Microsoft online technical communities have been recognized
with the Microsoft Community Contributor badge.

This recognition is
reserved for participants who made notable contributions in Microsoft online
communities such as MSDN, TechNet and Microsoft Answers. The value of these
online resources is greatly enhanced by participants like you who voluntarily
contribute your time and energy to improve the online community experience for
others.

[cut]
Once again, congratulations!
The Microsoft Community Contributor Team