Distribuire e configurare Firewall di Azure Premium
Firewall di Azure Premium è un firewall di nuova generazione con funzionalità necessarie per ambienti altamente sensibili e regolamentati. Esso comprende le seguenti funzionalità:
- Ispezione TLS: decrittografa il traffico in uscita, elabora i dati, quindi crittografa i dati e li invia alla destinazione.
- IDPS: un sistema di rilevamento e prevenzione delle intrusioni di rete (IDPS) consente di monitorare le attività di rete per attività dannose, registrare informazioni su questa attività, segnalarlo e, facoltativamente, tentare di bloccarlo.
- Filtro URL: estende la funzionalità di filtro FQDN di Firewall di Azure per prendere in considerazione un intero URL. Ad esempio,
www.contoso.com/a/c
anzichéwww.contoso.com
. - categorie Web: gli amministratori possono consentire o negare l'accesso degli utenti a categorie di siti Web, ad esempio siti Web di gioco d'azzardo, siti Web di social media e altri.
Per altre informazioni, vedere Funzionalità di Firewall di Azure Premium.
Si userà un modello per distribuire un ambiente di test con una rete virtuale centrale (10.0.0.0/16) con tre subnet:
- una subnet di lavoro (10.0.10.0/24)
- una subnet di Azure Bastion (10.0.20.0/24)
- una subnet del firewall (10.0.100.0/24)
Importante
La tariffa oraria inizia dal momento in cui viene distribuito Bastion, a prescindere dall'utilizzo dei dati in uscita. Per altre informazioni, vedere Prezzi e SKU. Se si distribuisce Bastion nel corso di un'esercitazione o di un test, è consigliabile eliminare questa risorsa dopo averla usata.
In questo ambiente di test viene usata una singola rete virtuale centrale per semplicità. Ai fini della produzione, una topologia hub-spoke con reti virtuali con peering è più comune.
La macchina virtuale del ruolo di lavoro è un client che invia richieste HTTP/S tramite il firewall.
Prerequisiti
Se non si ha una sottoscrizione di Azure, creare un account gratuito prima di iniziare.
Distribuire l'infrastruttura
Il modello distribuisce un ambiente di test completo per Firewall di Azure Premium abilitato con IDPS, ispezione TLS, filtro URL e categorie Web:
- un nuovo criterio Firewall di Azure Premium e Firewall con impostazioni predefinite per consentire una facile convalida delle funzionalità principali (IDPS, ispezione TLS, filtro URL e categorie Web)
- distribuisce tutte le dipendenze, tra cui Key Vault e un'identità gestita. In un ambiente di produzione, queste risorse potrebbero essere già create e non necessarie nello stesso modello.
- genera un'autorità di certificazione radice autofirmata e la distribuisce nell'insieme di credenziali delle chiavi generato
- genera una CA intermedia derivata e la distribuisce in una macchina virtuale di test Windows (WorkerVM)
- Viene distribuito anche un Bastion Host (BastionHost) e può essere usato per connettersi al computer di test di Windows (WorkerVM)
Testare il firewall
È ora possibile testare idps, ispezione TLS, filtri Web e categorie Web.
Aggiungere impostazioni di diagnostica del firewall
Per raccogliere i log del firewall, è necessario aggiungere le impostazioni di diagnostica per raccogliere i log del firewall.
- Selezionare DemoFirewall e in Monitoraggio selezionare Impostazioni di diagnostica.
- Selezionare Aggiungi impostazione di diagnostica.
- Per Nome dell'impostazione di diagnostica digitare fw-diag.
- In Log selezionare AzureFirewallApplicationRule e AzureFirewallNetworkRule.
- In Dettagli destinazione selezionare Invia all'area di lavoro Log Analytics.
- Seleziona Salva.
Test IDPS
Per testare IDPS, è necessario distribuire il proprio server Web di test interno con un certificato server appropriato. Questo test include l'invio di traffico dannoso a un server Web, pertanto non è consigliabile eseguire questa operazione a un server Web pubblico. Per altre informazioni sui requisiti dei certificati Firewall di Azure Premium, vedere Firewall di Azure Certificati Premium.
È possibile usare curl
per controllare varie intestazioni HTTP e simulare il traffico dannoso.
Per testare IDPS per il traffico HTTP:
Nella macchina virtuale WorkerVM aprire una finestra del prompt dei comandi dell'amministratore.
Inserire il seguente comando nel prompt dei comandi:
curl -A "HaxerMen" <your web server address>
Verrà visualizzata la risposta del server Web.
Passare ai log delle regole di rete del firewall nel portale di Azure per trovare un avviso simile al seguente:
{ “msg” : “TCP request from 10.0.100.5:16036 to 10.0.20.10:80. Action: Alert. Rule: 2032081. IDS: USER_AGENTS Suspicious User Agent (HaxerMen). Priority: 1. Classification: A Network Trojan was detected”}
Nota
L'inizio della visualizzazione dei dati nei log può richiedere del tempo. Attendere almeno un paio di minuti per consentire ai log di iniziare a visualizzare i dati.
Aggiungere una regola di firma per la firma 2032081:
- Selezionare DemoFirewallPolicy e in Impostazioni selezionare IDPS.
- Selezionare la scheda Regole firma.
- In ID firma digitare 2032081 nella casella di testo aperta.
- In Modalità selezionare Nega.
- Seleziona Salva.
- Attendere il completamento della distribuzione prima di continuare.
In WorkerVM eseguire di nuovo il
curl
comando:curl -A "HaxerMen" <your web server address>
Poiché la richiesta HTTP è ora bloccata dal firewall, l'output seguente verrà visualizzato dopo la scadenza del timeout della connessione:
read tcp 10.0.100.5:55734->10.0.20.10:80: read: connection reset by peer
Passare ai log di monitoraggio nel portale di Azure e trovare il messaggio per la richiesta bloccata.
Per testare IDPS per il traffico HTTPS
Ripetere questi test curl usando HTTPS anziché HTTP. Ad esempio:
curl --ssl-no-revoke -A "HaxerMen" <your web server address>
Verranno visualizzati gli stessi risultati ottenuti con i test HTTP.
Ispezione TLS con filtro URL
Usare la procedura seguente per testare l'ispezione TLS con il filtro URL.
Modificare le regole dell'applicazione dei criteri firewall e aggiungere una nuova regola chiamata
AllowURL
allaAllowWeb
raccolta regole. Configurare l'URLwww.nytimes.com/section/world
di destinazione, l'indirizzo *IP di origine, l'URL del tipo di destinazione, selezionare Ispezione TLS e protocolli http, https.Al termine della distribuzione, aprire un browser in WorkerVM e passare a
https://www.nytimes.com/section/world
e verificare che la risposta HTML venga visualizzata come previsto nel browser.Nella portale di Azure è possibile visualizzare l'intero URL nei log di monitoraggio delle regole dell'applicazione:
Alcune pagine HTML potrebbero risultare incomplete perché fanno riferimento ad altri URL negati. Per risolvere questo problema, è possibile adottare l'approccio seguente:
Se la pagina HTML contiene collegamenti ad altri domini, è possibile aggiungere questi domini a una nuova regola dell'applicazione con consentire l'accesso a questi FQDN.
Se la pagina HTML contiene collegamenti a url secondari, è possibile modificare la regola e aggiungere un asterisco all'URL. Ad esempio:
targetURLs=www.nytimes.com/section/world*
In alternativa, è possibile aggiungere un nuovo URL alla regola. Ad esempio:
www.nytimes.com/section/world, www.nytimes.com/section/world/*
Test delle categorie Web
Creare una regola dell'applicazione per consentire l'accesso ai siti Web sportivi.
Nel portale aprire il gruppo di risorse e selezionare DemoFirewallPolicy.
Selezionare Regole applicazione e quindi Aggiungi una raccolta regole.
In Nome digitare GeneraleWeb, Priorità 103, Gruppo di raccolta regole selezionare DefaultApplicationRuleCollectionGroup.
In Regole per Tipo di nome AllowSport, Origine *, Protocollo http, https, selezionare Ispezione TLS, Tipo di destinazione selezionare Categorie Web, Destinazione selezionare Sport.
Selezionare Aggiungi.
Al termine della distribuzione, passare a WorkerVM e aprire un Web browser e passare a
https://www.nfl.com
.Verrà visualizzata la pagina Web NFL e il log delle regole dell'applicazione indica che è stata trovata una corrispondenza di una regola Web: sport e la richiesta è stata consentita.