Archivi categoria: Azure Networking

Azure IaaS and Azure Stack: announcements and updates (April 2021 – Weeks: 13 and 14)

This series of blog posts includes the most important announcements and major updates regarding Azure infrastructure as a service (IaaS) and Azure Stack, officialized by Microsoft in the last two weeks.

Azure

Compute

Virtual machine (VM) level disk bursting available on all Dsv3 and Esv3 families

Virtual machine level disk bursting allows your virtual machine to burst its disk IO and MiB/s throughput performance for a short time daily. This feature is now enabled on all our Dsv3-series and Esv3-series virtual machines, with more virtual machine types and families support soon to come. There is no additional cost associated with this new capability or adjustments on the VM pricing and it comes enabled by default.

Cloud Services (extended support) is generally available

Cloud Services (extended support), which is a new Azure Resource Manager (ARM)-based deployment model for Azure Cloud Services, is generally available. Cloud Services (extended support) has the primary benefit of providing regional resiliency along with feature parity with Azure Cloud Services deployed using Azure Service Manager (ASM). It also offers some ARM capabilities such as role-based access and control (RBAC), tags, policy, private link support, and use of deployment templates. The ASM-based deployment model for Cloud Services has been renamed Cloud Services (classic). Customers retain the ability to build and rapidly deploy web and cloud applications and services. Customers will be able to scale cloud services infrastructure based on current demand and ensure that the performance of applications can keep up while simultaneously reducing costs. The platform-supported tool for migrating existing cloud services to Cloud Services (extended support) also goes into preview. Migrating to ARM will allow customers to set up a robust infrastructure platform for their applications. 

Storage

Azure File Sync agent v12 

Improvements and issues that are fixed in the v12 release:

  • New portal experience to configure network access policy and private endpoint connections
    • You can now use the portal to disable access to the Storage Sync Service public endpoint and to approve, reject and remove private endpoint connections. To configure the network access policy and private endpoint connections, open the Storage Sync Service portal, go to the Settings section and click Network.
  • Cloud Tiering support for volume cluster sizes larger than 64KiB
  • Measure bandwidth and latency to Azure File Sync service and storage account
    • The Test-StorageSyncNetworkConnectivity cmdlet can now be used to measure latency and bandwidth to the Azure File Sync service and storage account. Latency to the Azure File Sync service and storage account is measured by default when running the cmdlet. Upload and download bandwidth to the storage account is measured when using the “-MeasureBandwidth” parameter. To learn more, see the release notes.
  • Improved error messages in the portal when server endpoint creation fails
    • We heard your feedback and have improved the error messages and guidance when server endpoint creation fails.
  • Miscellaneous performance and reliability improvements
    • Improved change detection performance to detect files that have changed in the Azure file share.
    • Performance improvements for reconciliation sync sessions.
    • Sync improvements to reduce ECS_E_SYNC_METADATA_KNOWLEDGE_SOFT_LIMIT_REACHED and ECS_E_SYNC_METADATA_KNOWLEDGE_LIMIT_REACHED errors.
    • Files may fail to tier on Server 2019 if Data Deduplication is enabled on the volume.
    • AFSDiag fails to compress files if a file is larger than 2GiB.

To obtain and install this update, configure your Azure File Sync agent to automatically update when a new version becomes available or manually download the update from the Microsoft Update Catalog.

More information about this release:

  • This release is available for Windows Server 2012 R2, Windows Server 2016 and Windows Server 2019 installations.
  • A restart is required for servers that have an existing Azure File Sync agent installation.
  • The agent version for this release is 12.0.0.0.
  • Installation instructions are documented in KB4568585.

Encryption scopes in Azure Storage

Encryption scopes introduce the option to provision multiple encryption keys in a storage account for blobs. Previously, customers using a single storage account for multi-tenancy scenarios were limited to using a single account-scoped encryption key for all the data in the account. With encryption scopes, you now can provision multiple encryption keys and choose to apply the encryption scope either at the container level (as the default scope for blobs in that container) or at the blob level. 

Azure Data Explorer external tables

An external table is a schema entity that references data stored outside the Azure Data Explorer database. Azure Data Explorer Web UI can create external tables by taking sample files from a storage container and creating schema based on these samples. You can then analyze and query data in external tables without ingestion into Azure Data Explorer.

Azure Networking: comparativa tra il nuovo Azure Firewall e le virtual appliance di terze parti

La messa in sicurezza delle architetture di rete è un aspetto di fondamentale importanza anche quando si adotta il cloud pubblico e diventa ormai obbligata l’adozione di una soluzione firewall per proteggere e segregare al meglio i flussi di rete. Recentemente è stata annunciata la disponibilità di Azure Firewall Premium, il next generation firewall di Microsoft con interessanti funzionalità che possono risultare utili in ambienti altamente sensibili alla sicurezza e che necessità di un elevato livello di regolamentazione. In questo articolo vengono riportate le caratteristiche di questa nuova soluzione e viene fatta una comparativa con le Network Virtual Appliances (NVAs) di vendor di terze, per valutare la scelta di una opportuna “Firewall Strategy”.

Nuove funzionalità in Azure Firewall Premium

Azure Firewall è la soluzione di firewall-as-a-service (FWaaS) presente nel cloud pubblico di Microsoft, che consente di mettere in sicurezza le risorse presenti nelle Virtual Network di Azure e di governare i relativi flussi di rete.

Figura 1 – Panoramica di Azure Firewall Premium

Azure Firewall Premium utilizza Firewall Policy, una risorsa globale utilizzata per gestire centralmente i firewall tramite Azure Firewall Manager. Tutte le nuove funzionalità sono configurabili solo tramite Firewall Policy.

Nei capitoli seguenti vengono riportate le nuove funzionalità introdotte in Azure Firewall Premium.

TLS inspection

La tecnologia di sicurezza standard che consente di stabilire un collegamento crittografato tra un client ed un server è il Transport Layer Security (TLS), precedentemente noto come Secure Sockets Layer (SSL). Questo standard garantisce che tutti i dati che transitano tra i client ed il server rimangano privati e crittografati. Azure Firewall Premium è in grado di intercettare ed ispezionare le connessioni TLS. Per farlo viene effettuata una de-crittografia completa delle comunicazioni di rete, vengono eseguiti i controlli di sicurezza necessari e viene crittografato nuovamente il traffico che deve essere inviato alla destinazione.

La soluzione TLS Inspection di Azure Firewall Premium risulta ideale per i seguenti casi d’uso:

  • Terminazione TLS in uscita.

Figura 2 – TLS Inspection di Azure Firewall per il traffico in uscita

  • Terminazione TLS tra virtual network di spoke (est-ovest).
  • Terminazione TLS in ingresso con Application Gateway. Nei flussi di comunicazione Azure Firewall può essere distribuito dietro ad un Application Gateway. Adottando questa configurazione, il traffico Web in ingresso passa sia attraverso il WAF dell’Application Gateway sia attraverso il firewall di Azure. Il WAF fornisce una protezione a livello di applicazione Web, mentre Azure Firewall funge da punto centrale di controllo e di registrazione per ispezionare il traffico tra l’Application Gateway e i server di back-end. L’Azure Firewall può infatti de-crittografare il traffico ricevuto dall’Application Gateway per un’ulteriore ispezione e crittografarlo nuovamente prima di inoltrarlo al Web server di destinazione. Per maggiori dettagli su codesto caso d’uso è possibile consultare questo documento Microsoft.

Figura 3 – Implementazione dell’Application Gateway prima dell’Azure Firewall

Per abilitare la TLS Inspection in Azure Firewall Premium è opportuno utilizzare un certificato presente in un Azure Key Vault. L’accesso di Azure Firewall verso il key vault per recuperare i certificati avviene utilizzando una managed identity. Per maggiori informazioni in merito all’utilizzo dei certificati, per questa funzionalità di Azure Firewall Premium, è possibile consultare la documentazione ufficiale Microsoft.

Questi casi d’uso consentono ai clienti di adottare un modello zero trust e di implementare una segmentazione della rete tramite crittografia end-to-end.

IDPS

Un Intrusion Detection and Prevention system (IDPS) di rete consente di monitorare le attività di rete per rilevare quelle dannose, registrare informazioni su queste attività, segnalarle e, facoltativamente, tentare di bloccarle. Azure Firewall Premium fornisce IDPS basato sulle firme ed è in grado di consentire il rilevamento degli attacchi cercando pattern specifici, come sequenze di byte nel traffico di rete oppure sequenze di istruzioni dannose note utilizzate dai malware. Le firme IDPS sono automaticamente gestite e continuamente aggiornate.

Questa capacità funziona per tutte le porte ed i protocolli, ma nonostante alcuni rilevamenti possono essere eseguiti anche con il traffico crittografato, l’abilitazione della TLS Inspection è importante per utilizzare al meglio l’IDPS.

Figura 4 – Modalità dell’IDPS

URL filtering

La funzionalità di URL filtering permette di filtrare l’accesso in uscita verso specifici URL, e non solo per determinati FQDN. Vengono infatti estese la capacità di filtro FQDN di Azure Firewall per considerare un intero URL. Ad esempio, www.microsoft.com/a/b anziché solo www.microsoft.com. Questa funzionalità è efficace anche per il traffico crittografato se la TLS Inspection è abilitata.

L’URL filtering può anche essere utilizzata insieme alla categorizzazione Web per estendere una determinata categoria aggiungendo più URL in modo esplicito oppure per consentire/negare l’accesso agli URL all’interno della intranet dell’organizzazione.

Figura 5 – URL filtering nelle application rules

Categorizzazione Web

La categorizzazione Web nei criteri di Azure Firewall permette di consentire oppure negare l’accesso degli utenti a Internet in base a specifiche categorie, come ad esempio, social network, motori di ricerca, giochi d’azzardo, etc.

Questa funzionalità è possibile usarla come tipologia di destinazione nelle application rules nelle SKU sia Standard sia Premium di Azure Firewall. La differenza principale è che lo SKU Premium permette di ottenere un livello maggiore di ottimizzazione, classificando il traffico in base all’URL completo, tramite la funzionalità di TLS Inspection, mentre lo SKU standard classifica il traffico solamente in base all’FQDN. Questa funzione permette di avere la visibilità ed il controllo nell’utilizzo del traffico Internet di un’organizzazione ed è ideale per controllare la navigazione Internet per i client Windows Virtual Desktop.

Figura 6 – Categorizzazione Web in una regola di accesso

Azure Firewall Premium vs Network Virtual Appliances (NVAs) di terze parti

Le Network Virtual Appliances (NVAs) fornite da vendor di terze parti e disponibili nel marketplace di Azure sono numerose e possono offrire funzionalità avanzate. Tipicamente la configurazione di queste soluzioni è più articolata e il costo è tendenzialmente più elevato rispetto alle soluzioni fornite dalla piattaforma Azure.

Il divario tra le funzionalità di Azure Firewall, grazie alle funzionalità Premium, e le NVAs di terze parti è ora molto ridotto.

Si riporta una comparativa ad alto livello tra Azure Firewall Premium e le NVAs:

Figura 7 – Comparativa funzionalità Azure Firewall Premium vs NVAs

Il set di funzionalità di Azure Firewall è pertanto adatto per la maggior parte dei clienti e fornisce alcuni vantaggi chiave essendo un servizio gestito nativo del cloud, come ad esempio:

  • Integrazione con i modelli DevOps e con altri artifacts Azure (es. tag, impostazioni di diagnostica).
  • L’alta disponibilità è integrata nel servizio e non sono richieste configurazioni specifiche o componenti aggiuntivi per renderla effettiva. Questo è sicuramente un elemento che lo distingue rispetto a soluzioni di terze parti che, per la configurazione delle Network Virtual Appliance (NVA) in HA, richiedono tipicamente la configurazione di load balancer aggiuntivi.
  • Azure Firewall consente di scalare facilmente per adeguarsi ad eventuali cambi dei flussi di rete.
  • Non è necessaria nessuna attività di manutenzione.
  • Notevole risparmio sul TCO per la maggior parte dei clienti. Infatti, per le NVAs è opportuno considerare:
    • Costi computazionali (almeno due macchine virtuali per l’HA)
    • Costi di licensing
    • Costi per gli standard load balancer (interni ed esterni)
    • Costi di manutenzione
    • Costi per il supporto

Risulta comunque opportuno specificare che per alcuni clienti le soluzioni di terze parti sono più adatte in quanto consentono di dare una continuità nell’esperienza d’uso rispetto alle soluzioni già attive nell’ambiente on-premises.

Conclusioni

Con il rilascio della SKU Premium Azure Firewall diventa un next generation firewall completamente integrato nella fabric di Azure, che mette a disposizione funzionalità molto interessanti, al punto da renderlo la scelta ideale per i clienti con esigenze avanzate di controllo e di sicurezza del proprio networking di Azure.

Come effettuare il monitor, diagnosticare problemi e ottenere informazioni dettagliate sul networking con gli strumenti di Azure

Le architetture di rete nel cloud pubblico hanno particolarità e introducono concetti che le differenziano in modo sostanziale rispetto a quelle tradizionali presenti nell’ambiente on-premises. Un aspetto però che le accomuna è sicuramente la necessità di doverle monitorare, verificando costantemente le prestazioni e lo stato di salute. Per fare tutto questo in modo efficace, contemplando le particolarità intrinseche del cloud pubblico ed architetture di rete ibride è opportuno dotarsi di strumenti efficaci. In questo articolo vengono riportare le caratteristiche del servizio di piattaforma Azure Network Watcher, che fornisce una suite di strumenti per monitorare, diagnosticare e visualizzare le metriche ed i log delle risorse di rete.

Network Watcher è stato progettato per effettuare il monitor e controllare l’integrità dell’infrastruttura di rete, anche in ambienti ibridi, in modo specifico per i componenti IaaS (Infrastructure-as-a-Service) attestati sulle virtual network di Azure. Network Watcher non mette a disposizione strumenti per monitorare l’infrastruttura PaaS (Platform-as-a-Service) oppure per effettuare l’analisi di componenti web.

Network Watcher è un servizio regionale, zone-resilient e totalmente gestito. L’abilitazione del componente avviene ora di default per ogni subscription Azure che contiene delle virtual network. Le risorse Network Watcher vengono posizionate di default nel resource group, nascosto e creato automaticamente, chiamato NetworkWatcherRG.

Gli strumenti inclusi in Azure Network Watcher possono essere suddivisi in tre categorie in base alle funzionalità offerte: Monitoring, Diagnostica e Logging

Strumenti di Monitoring

Topology view

In architetture di rete particolarmente complesse può risultare utile individuare quali risorse sono attestate su una specifica virtual network e come si relazionano tra loro. Grazie a questo strumento è possibile visualizzare direttamente nel portale di Azure un diagramma visivo dei componenti presenti in una specifica rete virtuale e le relazioni presenti tra le varie risorse.

Figura 1 – Esempio di una Topology view

Connection Monitor

Connection Monitor è stato recentemente rivisto e nella versione 2.0 permette di monitorare le connessione end-to-end sia in ambienti Azure che in presenza di architetture di rete ibride.

Tra i principali punti di forza di questa nuova soluzione troviamo:

  • Esperienza di monitor unificata ed intuitiva sia per ambienti totalmente dislocati in Azure che per ambienti ibridi.
  • Monitor della connettività, anche cross-region, e verifica delle latenze di rete verso gli endpoint.
  • Frequenze di probing elevate che permettono di ottenere una maggiore visibilità sulle performance di rete.
  • Avvisi più immediati per segnalare condizioni anomale in presenza di architetture di rete ibride.
  • Possibilità di fare dei check di connettività basati sui protocolli HTTP, TCP, e ICMP.
  • Supporto del salvataggio dei dati nelle metriche di Azure Monitor e nei workspace di Log Analytics.

Figura 2 – Panoramica dello strumento Connection Monitor

Per fare in modo che Connection Monitor sia in grado di riconoscere le VMs di Azure come origini per le attività di monitor, è necessario installare su di esse la Network Watcher Agent virtual machine extension.

Network Performance Monitor

Network Performance Monitor è ora parte integrante di Connection Monitor e pertanto incluso in Azure Network Watcher. La soluzione richiede la presenza dell’agent di Azure Monitor e, grazie all’utilizzo di transazioni sintetiche, fornisce la possibilità di monitorare i parametri di rete in architetture di rete ibride, per avere le informazioni relative alle performance, come la perdita di pacchetti e la latenza. Inoltre, questa soluzione consente di localizzare facilmente la sorgente di una problematica in uno specifico segmento di rete oppure identificando un determinato dispositivo. La soluzione, tenendo traccia dei pacchetti di retransmission e del tempo di roundtrip, è in grado di restituire un grafico di facile e immediata interpretazione. Inoltre, permette di verificare le performance tra l’ambiente on-premises ed Azure, anche in presenza di connettività ExpressRoute.

Strumenti di Diagnostica

IP Flow Verify

In determinate circostanze, può accadere che una macchina virtuale non è in grado di comunicare con altre risorse, a causa delle regole di sicurezza presenti. Questa funzionalità permette di specificare un indirizzo IPv4 di origine e di destinazione, una porta, un protocollo (TCP o UDP) e la direzione del traffico (in entrata o in uscita). IP Flow Verify verifica la comunicazione e informa se la connessione ha esito positivo oppure negativo. Se la connessione non riesce, viene indicata quale regola di sicurezza ha negato la comunicazione, in modo da poter risolvere la problematica.

Next Hop

Questo strumento aiuta a verificare le rotte del traffico di rete e permette di rilevare eventuali problemi di instradamento. La funzionalità Next Hop consente di specificare un indirizzo IPv4 di origine e di destinazione e di verificarne la relativa comunicazione.

Connection Troubleshoot

Questo strumento consente di controllare una tantum la connettività e la latenza tra una macchina virtuale e un’altra risorsa di rete, che può essere un’altra macchina virtuale, un FQDN, un URI oppure un indirizzo IPv4. Il test restituisce informazioni simili a quelle restituite quando si utilizza Connection Monitor, ma la verifica sulla connessione avviene in un determinato momento, anziché effettuare un monitor nel tempo come avviene per Connection Monitor.

Packet Capture

Grazie a questo strumento è possibile catturare in modo versatile il traffico di rete su una macchina virtuale di Azure, applicando eventuali opzioni di filtro avanzate e impostando limiti di tempo e di dimensione. L’acquisizione può essere archiviata in Azure Storage, sul disco della VM oppure in entrambe le posizioni. Il traffico di rete catturato è poi possibile analizzarlo con diversi strumenti standard di analisi, come ad esempio Wireshark.

VPN Troubleshoot

Questo strumento esegue diversi controlli diagnostici sui VPN gateway e sulle relative connessioni, utili per risolvere le problematiche.

Le funzionalità Packet Capture e Connection Troubleshoot richiedono la presenza sulle VMs dell’extension Network Watcher, così come riportato per Connection Monitor.

Strumenti di Logging

NSG Flow Logs

In Azure per poter consentire o negare la comunicazione di rete verso le risorse connesse alle Azure Virtual Networks (VNet) vengono utilizzati i Network Security Group (NSG), che contengono una lista di regole di accesso. I NSG vengono solitamente applicati alle subnet (scelta consigliata) oppure direttamente alle interfacce di rete connesse alle macchine virtuali. La piattaforma Azure utilizza i NSG flow logs per mantenere la visibilità del traffico di rete in ingresso e in uscita dai Network Security Group.

Traffic Analytics

Traffic Analytics si basa sull’analisi dei NSG flow logs e dopo una opportuna aggregazione dei dati, inserendo l’intelligence necessaria relativamente a security, topologia e mappa geografica, è in grado di fornire informazioni dettagliate sul traffico di rete del proprio ambiente cloud Azure.

Figura 3 – Data flow di Traffic Analytics

Utilizzando Traffic Analytics si possono effettuare le seguenti operazioni:

  • Visualizzare le attività di rete cross Azure subscriptions e identificare hotspots.
  • Intercettare potenziali minacce di security lato network, per poi poter adottare le giuste operazioni correttive. Questo viene reso possibile grazie alle informazioni riportate dalla soluzione: quali porte sono aperte, quali applicazioni tentano di accedere verso Internet e quali macchine virtuali si connettono a reti non autorizzate.
  • Comprendere i flussi di rete presenti tra le varie region Azure e Internet, al fine di ottimizzare il proprio deployment di rete in termini di performance e capacità.
  • Individuare configurazioni di rete non corrette che portano ad avere tentativi di comunicazione errati.

Figura 4 – Virtual Network in Traffic Analytics

Il costo di Network Watcher è dettagliato nella pagina ufficiale Microsoft e dipende dall’utilizzo che ne viene fatto dei vari strumenti inclusi nella soluzione.

Conclusioni

All’aumentare della complessità delle architetture di rete Azure ed in presenza in ambienti ibridi, è utile disporre di strumenti particolarmente efficaci e di facile utilizzo per poter effettuare il monitor. Azure mette a disposizione diversi strumenti integrati nella piattaforma che oltre al monitor permettono di diagnosticare problematiche di diversa natura ed ottenere una visibilità complessiva delle proprie risorse di rete in modo semplice e intuitivo.

Azure Application delivery: quale servizio di load balancing scegliere?

La transizione verso soluzioni cloud per erogare le applicazioni è una tendenza che procede a un ritmo molto elevato e garantire un accesso rapido, sicuro ed affidabile a tali applicazioni è un’attività sfidante che deve essere indirizzata adottando le giuste soluzioni. Microsoft Azure mette a disposizione una vasta gamma di servizi per garantire una erogazione ottimale delle applicazioni, ma nella valutazione di quale soluzione di load-balancing adottare ci sono diversi aspetti da prendere in considerazione. Questo articolo vuole fare chiarezza sugli elementi che è opportuno valutare per adottare la soluzione Azure più idonea in questo ambito.

L’esigenza di distribuire i carichi di lavoro su più risorse di elaborazione può essere data dalla necessità di ottimizzare l’uso delle risorse, massimizzare il throughput, ridurre al minimo i tempi di risposta ed evitare di sovraccaricare ogni singola risorsa. Inoltre, può essere rivolta anche a migliorare la disponibilità delle applicazioni condividendo un carico di lavoro tra risorse di elaborazione ridondanti.

Servizi di load balancing di Azure

Per erogare servizi di load-balancing di Azure troviamo i seguenti componenti.

Azure Load Balancer e cross-region Azure Load Balancer: si tratta di componenti che consentono il bilanciamento del carico Layer-4 per tutti i protocolli TCP e UDP, garantendo alte prestazioni e bassissime latenze. Azure Load Balancer è un componente zone-redundant, pertanto offre un’elevata disponibilità tra le Availability Zones.

Figura 1 – Panoramica di Azure Load Balancer e cross-region Azure Load Balancer

Azure Application Gateway: si tratta di un servizio gestito dalla piattaforma Azure, con funzionalità intrinseche di alta disponibilità e scalabilità. L’Application Gateway è un load balancer applicativo (OSI layer 7) per il traffico web, che consente di governare il traffico HTTP e HTTPS delle applicazioni (URL path, host based, round robin, session affinity, redirection). L’Application Gateway è in grado di gestire in modo centralizzato i certificati per la pubblicazione applicativa, tramite policy SSL ed effettuando SSL offload quando necessario. L’Application Gateway può avere assegnato un indirizzo IP Privato oppure un indirizzo IP Pubblico, se la ripubblicazione applicativa deve avvenire verso Internet. In particolare, in quest’ultimo caso, è consigliato attivare la funzionalità di Web Application Firewall (WAF), che consente di ottenere una protezione applicativa, basandosi su regole OWASP core rule sets. Il WAF protegge l’applicativo da vulnerabilità e da attacchi comuni, come ad esempio attacchi X-Site Scripting e SQL Injection.

Figura 2 – Panoramica di Azure Application Gateway

Front Door: è un application delivery network che fornisce bilanciamento del carico a livello globale e un servizio di site accelleration per le applicazioni web. Offre funzionalità Layer-7 per la pubblicazione applicativa come ad esempio SSL offload, path-based routing, fast failover, caching, al fine di migliorare le prestazioni e l’alta disponibilità delle applicazioni.

Figura 3 – Panoramica di Azure Front Door

Traffic Manager: è un servizio di bilanciamento del carico basato su DNS che consente di distribuire il traffico in modo ottimale ai servizi distribuiti in differenti region di Azure, fornendo al contempo alta disponibilità e responsività. Sono disponibili diversi metodi di instradamento per determinare verso quale endpoint dirigere il traffico. Basandosi su DNS, il failover può non essere immediato a causa delle sfide comuni relative al caching DNS e ai sistemi che non rispettano i TTL del DNS.

Figura 4 – Panoramica di Azure Traffic Manager (performance traffic-routing method)

Aspetti da valutare nella scelta dei servizi di load balancing di Azure

Ogni servizio ha le proprie caratteristiche e per scegliere quello più opportuno è bene fare una classificazione rispetto ai seguenti aspetti.

Servizi di load-balancing: globali vs regionali

  • Global load-balancing: vengono utilizzati per distribuire il traffico verso i backend distribuiti globalmente su più region, i quali possono essere dislocati in ambienti cloud oppure ibridi. Rientrano in questa categoria Azure Traffic Manager, Azure Front Door ed i cross-region Azure Load Balancer.
  • Regional load-balancing: consentono di distribuire il traffico verso le macchine virtuali attestate su una specifica virtual network oppure verso endpoint in una specifica region. Rientrano in questa categoria gli Azure Load Balancer e gli Azure Application Gateway.

Tipologia di traffico: HTTP(S) vs non-HTTP(S)

Un’altra importante discriminante nella scelta della soluzione di load-balancing da adottare è la tipologia di traffico che si deve gestire:

  • HTTP(S): è consigliata l’adozione di servizi di load-balancing Layer-7 che accettano solo traffico HTTP(S). Sono adatti per questa tipologia di traffico Azure Front Door ed Azure Application Gateway. Tipicamente vengono utilizzati per applicazioni web oppure per altri endpoint HTTP(S) e includono funzionalità come: SSL offload, web application firewall, path-based load balancing, e session affinity.
  • Non-HTTP(S): viene richiesto l’utilizzo di servizi di load-balancing che permettono di contemplare il traffico non-HTTP(S), come Azure Traffic Manager, cross-region Azure Load Balancer e Azure Load Balancer.

Nella valutazione del servizio Azure di load-balancing da adottare è opportuno far rientrare anche considerazioni riguardanti i seguenti aspetti:

Per facilitare la scelta della soluzione di load-balancing è possibile utilizzare come base di partenza il seguente diagramma di flusso, che indirizza la scelta su una serie di aspetti chiave:

Figura 5 – Flowchart per la scelta della soluzione Azure di load-balancing

NOTA: Questo flowchart non contempla i cross-region Azure Load Balancer in quanto al momento (11/2020) sono in preview.

Questo diagramma di flusso è un ottimo punto di inizio per le proprie valutazioni, ma siccome ogni applicazione ha requisiti unici è bene effettuare un’analisi specifica più di dettaglio.

Se l’applicazione è composta da più workload è opportuno valutare ciascuno di questi in modo separato, in quanto può essere necessario adottare una o più soluzioni di bilanciamento del carico.

I vari servizi di load load-balancing possono essere utilizzati in combinazione tra loro per garantire un accesso applicativo affidabile e sicuro ai servizi erogati in ambienti IaaS, PaaS oppure on-premises.

Figura 6 – Possibile esempio di come combinare i vari servizi di load-balancing di Azure

Conclusioni

Grazie ad un’ampia gamma di servizi globali e regionali Azure è in grado di garantire performance, sicurezza ed alta disponibilità nell’accesso agli applicativi. Per stabilire l’architettura più idonea alle proprie esigenze sono diversi gli elementi da valutare, ma la giusta combinazione delle soluzioni di Application Delivery di Azure permette di fornire un notevole valore alle organizzazioni IT, garantendo una distribuzione veloce, sicura ed affidabile delle applicazioni e dei dati all’utente.

Azure Networking: come monitorare ed analizzare i log di Azure Firewall

Nelle architetture di rete in Azure dove è presente Azure Firewall, la soluzione di firewall-as-a-service (FWaaS) che consente di mettere in sicurezza le risorse presenti nelle Virtual Network e di governare i relativi flussi di rete, diventa strategico adottare degli strumenti per monitorare in modo efficace i relativi log. In questo articolo viene esplorato come interpretare al meglio i log e come è possibile fare analisi approfondite di Azure Firewall, un componente che spesso detiene un ruolo fondamentale nelle architetture di rete in Azure.

Un aspetto importante da verificare è che in Azure Firewall siano correttamente configurate le impostazioni di diagnostica, per far confluire i dati di log e le metriche verso un workspace di Azure Monitor Log Analytics.

Figura 1 – Impostazioni di diagnostica di Azure Firewall

Per avere una panoramica complessiva dei diagnostic logs e delle metriche disponibili per Azure Firewall è possibile consultare la specifica documentazione di Microsoft.

Uno dei metodi più efficaci per visualizzare ed analizzare i log di Azure Firewall è utilizzare i Workbooks, che consentono di combinare testo, query di Log Analytics, metriche di Azure e parametri, costituendo così dei report interattivi e facilmente consultabili.

Per Azure Firewall è presente un workbook specifico fornito da Microsoft che permette di ottenere informazioni dettagliate sugli eventi, conoscere le application e le network rule attivate e visualizzare le statistiche sulle attività del firewall per URL, porte e indirizzi.

L’importazione di questo workbook può avvenire tramite ARM template oppure Gallery template, seguendo le istruzioni riportate in questo articolo.

Figura 2 – Importazione del workbook di Azure Firewall

Completato il processo di importazione è possibile consultare nella pagina di overview una panoramica dei diversi eventi e delle tipologie di log presenti (application, networks, threat intel, DNS proxy), con la possibilità di applicare dei filtri specifici relativi ai workspace, alla fascia oraria ed ai firewall.

Figura 3 – Azure Firewall Workbook overview

Nel workbook è presente una sezione specifica per le Application rule dove vengono mostrate le origini per indirizzo IP, l’utilizzo delle application rule, e gli FQDN negati e consentiti. Inoltre, è possibile applicare dei filtri di ricerca sui dati delle Application rule.

Figura 4 – Azure Firewall Workbook – Application rule log statistics

Inoltre, nella sezione Network Rule è possibile visualizzare le informazioni in base alle azioni compiute dalle regole (allow/deny), alle target port e alle azioni DNAT.

Figura 5 – Azure Firewall Workbook – Network rule log statistics

Nel caso Azure Firewall sia stato impostato per funzionare anche come DNS Proxy è possibile visualizzare nel tab “Azure Firewall – DNS Proxy” del Workbook anche informazioni riguardanti il traffico e le richieste DNS gestite.

Qualora si renda necessario effettuare degli approfondimenti per ottenere maggiori informazioni sulle comunicazioni di specifiche risorse è possibile utilizzare la sezione Investigation andando ad agire sui filtri a disposizione.

Figura 6 – Azure Firewall Workbook – Investigation

Per visualizzare ed analizzare gli activity log è possibile connettere i log di Azure Firewall ad Azure Sentinel, il servizio che amplia le capacità dei tradizionali prodotti SIEM (Security Information and Event Management), utilizzando le potenzialità del cloud e l’intelligenza artificiale. In questo modo, tramite workbook specifici disponibili in Azure Sentinel, è possibile ampliare le capacità di analisi e creare alert specifici per poter identificare e gestirerapidamente le minacce di security che interessano questo componente di infrastruttura. Per connettere i log di Azure Firewall ad Azure Sentinel è possibile seguire la procedura riportata in questo documento Microsoft.

Conclusioni

Azure Firewall è un servizio ampliamene utilizzato e spesso è il fulcro della propria architettura network in Azure, dove transitano e vengono controllate tutte le comunicazioni di rete. Diventa pertanto importante datarsi di uno strumento per analizzare le metriche e le informazioni raccolte, in grado di fornire anche un valido supporto nella risoluzione di eventuali problemi ed incident. Grazie all’adozione di questi Workbooks è possibile consultare agilmente i dati raccolti da Azure Firewall, utilizzando report visivamente accattivanti, con funzionalità avanzate che consentono di arricchire l’esperienza di analisi direttamente dal portale di Azure.

Azure Networking: nuove funzionalità da conoscere per progettare al meglio le architetture di rete

Le soluzioni cloud evolvono molto rapidamente e rimanere costantemente aggiornati è un elemento fondamentale per innovarsi e per saper rispondere efficacemente ai cambiamenti tecnologici. Con il cambio di passo imposto dalla digital transformation anche le infrastrutture di rete devono essere sempre più efficienti, flessibili ed in grado di erogare al meglio i servizi richiesti dal business aziendale. Per modernizzare la propria strategia di progettazione e di implementazione in ambito Azure Networking è perciò importante valutare come evolvono le varie tecnologie. In questo articolo vengono riportate le novità recentemente rilasciate da Microsoft e che possono interessare la progettazione del networking di Azure, con dei riferimenti a dei casi d’uso reali.

Azure Bastion e VNet peering

Azure Bastion è un servizio PaaS che offre un accesso RDP ed SSH sicuro e affidabile alle macchine virtuali, direttamente tramite il portale di Azure. Il provisioning del servizio Azure Bastion viene effettuato all’interno di una Virtual Network di Azure e consente l’accesso senza dover assegnare degli indirizzi IP pubblici direttamente ai sistemi.

La novità è che ora Azure Bastion può lavorare in sinergia con i Virtual Network (VNet) peering. Questo significa che è possibile attivare Azure Bastion su una VNet specifica e lo stesso servizio può essere utilizzato per connettersi anche alle macchine virtuali attestate sulle VNet in peering con questa.

Azure Bastion funziona sia in presenza di network peering che collegano VNet sulla stessa region di Azure, sia con VNet peering di tipologia global, che collegano VNet dislocate in region di Azure differenti. Dal punto di vista delle architetture di rete questa possibilità apre nuovi possibili scenari. Nel modello di rete tipico ed ampiamente utilizzato, definito hub-and-spoke, si ha una rete virtuale in Azure di hub che funge da punto di connettività verso la rete on-premises e le reti virtuali che eseguono il peering con l’Hub vengono definite spoke, utili per isolare i carichi di lavoro. Adottando questo modello è possibile attivare Azure Bastion sulla rete di hub. In questo modo sarà possibile raggiungere con un unico servizio Azure Bastion anche tutte le macchine virtuali distribuite nelle VNet di spoke.

Figura 1 – Azure Bastion in una architettura hub-and-spoke

Nel diagramma seguente viene riportato il deployment di Azure Bastion in una architettura di rete hub-and-spoke dove:

  • Il Bastion host viene attivato nella rete virtuale centralizzata di Hub.
  • Vengono consentite le comunicazioni, per le porte TCP 3389 e 22, provenienti dalla subnet di Azure Bastion presente nella virtual network di Hub, verso gli IP privati delle virtual network di Spoke.
  • Nessun IP pubblico viene richiesto per accedere alle macchine virtuali.

Grazie a questa configurazione sarà possibile semplificare l’architettura e ridurre i costi Azure, in quanto sarà necessario un solo servizio Azure Bastion per l’intera topologia di rete hub-and-spoke.

Inoltre, può essere effettuato il provisioning di Azure Bastion anche in topologie di rete full-mesh, ottenendo la medesima esperienza di accesso ai sistemi in modalità RDP / SSH per le VMs attestate su tutte le virtual network in peering.

Si riportano alcune osservazioni in merito:

  • Risulta possibile avere attivi contemporaneamente più Bastion hosts tra virtual network in peering. Questo può accadere in particolare nel periodo di transizione, quando si vogliono consolidare diversi Bastion hosts secondo la topologia hub-and-spoke sopra descritta. In presenza di più Bastion host, quando si effettuerà la connessione, sarà proposto di scegliere quale Bastion host utilizzare.
  • Attualmente Azure Bastion supporta gli scenari di virtual network in peering solo se queste risiedono in subscription appartenenti allo stesso tenant.

Azure Firewall: nuove impostazioni DNS

Azure Firewall è la soluzione di firewall-as-a-service (FWaaS) presente nel cloud pubblico di Microsoft, che consente di mettere in sicurezza le risorse presenti nelle Virtual Network di Azure e di governare i relativi flussi di rete. Le funzionalità di Azure Firewall sono state arricchite aggiungendo il supporto dei custom DNS e del DNS proxy.

Custom DNS

Per impostazione predefinita Azure Firewall utilizza i DNS di Azure per la risoluzione dei nomi. Ora è stata inclusa la possibilità di configurare Azure Firewall per utilizzare dei server DNS specifici.

Nelle impostazioni è possibile configurare un singolo server DNS oppure più server DNS:

Figura 2 – Impostazione dei custom DNS in Azure Firewall dal portale Azure

Azure Firewall può effettuare la risoluzione dei nomi anche utilizzando Azure Private DNS. In questo scenario è richiesto che la VNet all’interno della quale risiede Azure Firewall sia collegata all’Azure Private Zone.

DNS proxy

Azure Firewall può ora essere configurato per svolgere il ruolo di DNS proxy. Abilitando questa nuova funzionalità è possibile configurare come DNS delle virtual network l’indirizzo IP privato di Azure Firewall. In questo modo tutto il traffico DNS viene indirizzato verso Azure Firewall, il quale funge da intermediario tra i sistemi che effettuano le richieste DNS e i server DNS stessi, evitando in questo modo possibili incoerenze nelle risoluzioni dei nomi se vengono utilizzati dei DNS custom.

Quando il firewall di Azure agisce come DNS proxy, sono previste due tipologie di cache:

  • Positive cache: la risoluzione DNS va a buon fine. In questo caso Azure Firewall utilizza il TTL (time to live) del pacchetto o dell’oggetto.
  • Negative cache: la risoluzione DNS non va a buon fine. In questo caso le informazioni vengono memorizzate nella cache di Azure Firewall per un’ora.

Figura 3 – Configurazione di Azure Firewall come DNS proxy dal portale Azure

Questa funzionalità consente di valutare un nuovo scenario di utilizzo per Azure Firewall, molto utile quando si ha la necessità di gestire la risoluzione DNS in presenza dei Private Link, il meccanismo che permette di instaurare una connessione privata verso i servizi in Azure.

Ad ogni servizio PaaS di Azure che utilizza Azure Private Link viene assegnato un FQDN mappato e archiviato in una Azure Private DNS zone. Le richieste inviate verso le Azure DNS Private Zones vengono indirizzate all’IP di piattaforma 168.63.129.16, il quale è raggiungibile solo dall’interno dell’ambiente Azure. Per questa ragione, se la richiesta DNS ha origine dai sistemi on-premises (o comunque dall’esterno di Azure), è necessario attivare un DNS proxy all’interno di una rete virtuale di Azure connessa all’ambiente on-premise. Grazie a questa nuova funzionalità di DNS proxy di Azure Firewall è possibile gestire questa sfida di risoluzione dei nomi dei servi PaaS che utilizzano Private Link con i seguenti step:

  • La VNet all’interno della quale risiede Azure Firewall la si collega all’Azure Private Zone.
  • Azure Firewall lo si configura per utilizzare il DNS predefinito di Azure e si abilita la funzionalità di DNS Proxy.
  • Si configura il server DNS locale per inoltrare in modo condizionale le richieste ad Azure Firewall per il nome della zona richiesto.

Azure Firewall: utilizzo di FQDN filtering nelle network rule

Nelle Network Rule di Azure Firewall è ora possibile utilizzare dei fully qualified domain name (FQDN) basati sulla risoluzione DNS di Azure Firewall. Questa funzionalità permette di filtrare il traffico in uscita per qualsiasi protocollo TCP / UDP (NTP, SSH, RDP, etc.) e richiede che sia attiva la funzionalità di DNS proxy descritta nel paragrafo precedente. Azure Firewall, quando configurato come DNS proxy, archivia tutti gli indirizzi IP risolti dagli FQDN utilizzati nelle network rule. Per questa ragione come best practice è bene utilizzare gli FQDN nelle network rule.

Azure Firewall, sia per le application rule che per le network rule, converte l’FQDN in uno o più indirizzi IP in base al server DNS selezionato (Azure DNS oppure DNS personalizzato). Nel momento in cui avviene una nuova risoluzione DNS vengono aggiunti i nuovi indirizzi IP alle regole del firewall, mentre gli indirizzi IP che non vengono più restituiti dal server DNS hanno una scadenza di 15 minuti. Le Network Rule di Azure Firewall vengono aggiornate ogni 15 secondi utilizzando la risoluzione DNS. Se si ha la necessità di applicare dei filtri FQDN rimane comunque buona norma utilizzare sempre le application rule di Azure Firewall per i protocolli HTTP/S oppure MSSQL, mentre per tutti i restanti protocolli è possibile utilizzare sia le application rule che le network rule.

Nuove funzionalità per gli Azure VPN gateway

In seguito, si riportano le nuove funzionalità che è possibile adottare in presenza degli Azure VPN gateway:

  • Alta disponibilità dei server RADIUS nelle VPN point-to-site: questa funzionalità consente di effettuare una configurazione in alta disponibilità presso i clienti che utilizzano l’autenticazione RADIUS/AD per le VPN point-to-site.
  • Policy IPsec/IKE personalizzate con timeout DPD: l’impostazione del timeout IKE DPD (Dead Peer Detection) consente di regolare il valore di timeout della sessione IKE in base alla latenza di connessione e alle condizioni del traffico. Questa configurazione risulta utile per ridurre al minimo le disconnessioni del tunnel, migliorando l’affidabilità e l’esperienza di utilizzo.
  • Supporto APIPA per gli annunci BGP: questa funzione consente di stabilire sessioni Border Gateway Protocol (BGP), con i VPN gateway di Azure, usando indirizzi APIPA (169.254.x.x). Questa funzionalità è utile in particolare per i clienti con router VPN legacy, Amazon Web Service (AWS) VGW, Google Cloud Platform (GCP) VPN che utilizzano indirizzi APIPA (Automatic Private IP Addressing) per annunciare gli indirizzi BGP.
  • Supporto dei nomi FQDN per le VPN site-to-site: questa funzionalità consente di configurare le VPN site-to-site in presenza di apparati che non dispongono di indirizzi IP pubblici statici per connettersi ai VPN gateway di Azure. Risulta infatti possibile utilizzare il nome di dominio completo (FQDN) anziché gli indirizzi IP. I VPN gateway di Azure saranno in grado di effettuare la risoluzione del nome DNS, aggiornando automaticamente la destinazione per stabilire le connessioni IPsec/IKE della VPN.
  • Gestione delle sessioni e revoca degli utenti per le VPN point-to-site: viene data la possibilità di elencare e revocare le connessioni dei singoli utenti ai VPN gateway, direttamente dal portale di Azure ed in tempo reale.

Conclusioni

Diverse sono le novità rilasciate recentemente da Microsoft in ambito Azure networking ed è opportuno valutarle attentamente per effettuare una progettazione accurata. In questo modo sarà possibile realizzare architetture di rete efficaci, ottimizzando i costi ed in grado di sfruttare tutte le potenzialità offerte dalla piattaforma Azure.

Come configurare il servizio Azure Bastion per accedere in modo sicuro alle macchine virtuali

Azure Bastion è un servizio PaaS che offre un accesso RDP ed SSH sicuro e affidabile alle macchine virtuali, direttamente tramite il portale di Azure. Il provisioning del servizio Azure Bastion viene effettuato all’interno di una Virtual Network di Azure e supporta l’accesso a tutte le macchine virtuali su di essa attestate, senza dover assegnare degli indirizzi IP pubblici direttamente ai sistemi. In questo articolo viene riportato come attivare il servizio e quali accorgimenti è bene prendere in considerazione.

Il deployment di Azure Bastion è per virtual network e non per subscription oppure per singola virtual machine. Pertanto, completata la configurazione sarà possibile accedere direttamente dal portale Azure a tutte le macchine virtuali attestate sulla virtual network del Bastion host.

L’attivazione del servizio Azure Bastion richiede:

  • Una subnet almeno /27, la quale deve essere chiamata AzureBastionSubnet e sulla quale sarà attestato il Bastion host. Su questa subnet al momento non è supportata la configurazione di User Defined Routes.
  • Un indirizzo IP Pubblico statico che sarà assegnato alla risorsa Bastion. L’IP pubblico deve essere di SKU Standard e deve essere nella stessa region Azure sulla quale si intende attivare il servizio.

Sulla subnet AzureBastionSubnet è possibile applicare uno specifico Network Security Group (NSG). I NSG sono lo strumento principale per controllare il traffico di rete in Azure e consentono di filtrare le comunicazioni con apposite regole di deny e permit.

Per farlo è opportuno esaminare il traffico di rete necessario per Azure Bastion:

Figura 1 – Flussi di rete necessari per Azure Bastion

Il Network Security Group (NSG) sulla subnet AzureBastionSubnet dovrà contemplare le seguenti regole.

Inbound security rules

  • Traffico in ingresso da Internet: l’indirizzo IP Pubblico di Azure Bastion deve essere acceduto sulla porta TCP 443. Le porte 3389/22 *non* è necessario aprirle.
  • Traffico in ingresso dall’Azure Bastion control plane. Risulta necessario abilitare la porta 443 in entrata utilizzando il tag di servizio GatewayManager. Ciò consente al control plane, ovvero Gateway Manager, di poter comunicare con Azure Bastion.

Figura 2 – NSG AzureBastionSubnet – Inbound security rules

Outbound security rules

  • Traffico in uscita verso le VMs target: Azure Bastion raggiungerà le VM di destinazione tramite indirizzo IP privato. I NSG devono consentire il traffico in uscita verso le altre sottoreti di destinazione per le porte 3389 e 22.
  • Traffico in uscita verso altri endpoint pubblici in Azure. Azure Bastion deve essere in grado di connettersi a vari endpoint pubblici all’interno di Azure (ad esempio, per archiviare i logs di diagnostica e i metering logs). Per questo motivo, Azure Bastion deve essere autorizzato ad uscire con la porta 443 verso il tag di servizio AzureCloud.

Figura 3 – NSG AzureBastionSubnet – Outbound security rules

Per la sottorete sulla quale viene è attestata la macchina che deve essere acceduta da Azure Bastion è necessario prevedere le seguenti regole.

Inbound security rules

  • Traffico in ingresso da Azure Bastion: Azure Bastion raggiungerà la VM di destinazione tramite IP privato sulle porte RDP / SSH (rispettivamente le porte 3389 e 22). Pertanto, come best practice, è possibile aggiungere come sorgente solo la sottorete di Azure Bastion in questa regola.

Figura 4 – NSG sulla subnet target

La creazione dell’Azure Bastion host può essere fatta direttamente dal portale Azure completando i seguenti passaggi:

Figura 5 – Aggiunta del servizio Azure Bastion

Figura 6 – Parametri richiesti in fase di creazione del servizio Azure Bastion

Completata la configurazione del servizio Azure Bastion è possibile utilizzarlo come riportato in seguito.

Figura 7 – Accesso a una VM dal portale Azure

Figura 8 – Inserimento delle credenziali per accedere a una VM dal portale Azure

Figura 9 – Accesso RDP alla VM direttamente dal browser

Per consentire l’accesso al servizio è necessario assegnare i seguenti ruoli:

  • Reader role sulle virtual machine alle quali si vuole consentire l’accesso
  • Reader role sulle NIC con indirizzo IP privato della virtual machine
  • Reader role sulla risorsa Azure Bastion

Azure Bastion è un servizio a pagamento, per ottenere i dettagli sui costi è possibile accedere alla pagina Azure Bastion pricing.

Conclusioni

Azure Bastion garantisce un accesso remoto semplice e sicuro ai sistemi presenti in ambiente Azure. Diverse sono le funzionalità che saranno prossimamente rilasciate per questo servizio e che lo renderanno ancora più completo e flessibile. Tra queste il supporto per Virtual Network in peering e per la multi-factor authentication.

Azure Networking: come mettere in sicurezza i deployments di Window Virtual Desktop

Windows Virtual Desktop è un servizio completo di virtualizzazione dei desktop e delle applicazioni disponibile in Azure che, in un periodo come questo, dove il lavoro da casa è aumentato esponenzialmente, ha visto un’ampia adozione. Consentire ai propri dipendenti di lavorare da casa richiede alle organizzazioni di affrontare cambiamenti importanti della propria infrastruttura IT in termini di capacità, rete, sicurezza e governance. La soluzione Virtual Desktop Infrastructure (VDI) in Azure può aiutare le realtà aziendali ad affrontare in modo efficace queste evoluzioni, ma è necessario proteggere l’accesso a questi ambienti VDI in modo opportuno. In questo articolo viene descritto come è possibile strutturare il networking in Azure per proteggere in modo efficace i deployment di Windows Virtual Desktop.

Per poter adottare il giusto approccio è necessario valutare quali sono i componenti di Windows Virtual Desktop (WVD) e le loro iterazioni. Il servizio è distribuito secondo un modello di responsabilità condivisa e vede:

  • RD Clients che si collegano ai desktop e alle applicazioni erogati dal servizio WVD. L’ambiente può essere raggiunto da qualsiasi postazione con accesso Internet e la gestione dei client ricade nelle responsabilità del cliente.
  • Servizi Azure gestiti che hanno il compito di pilotare le connessioni tra i client RD e le macchine virtuali Windows in Azure. Si tratta dei ruoli server necessari per questo ambiente, quali Gateway, Web Access, Broker e Diagnostics, in modalità totalmente gestita da Microsoft.
  • Macchine virtuali in Azure attestate su una virtual network, la cui gestione è totalmente in carico al cliente.

Figura 1 – Shared Responsibility model di Windows Virtual Desktop

Per mettere in totale sicurezza l’ambiente Windows Virtual Desktop è necessario definire la topologia di rete più opportuna e i flussi di comunicazione necessari.

Topologia di rete Hub-Spoke per Windows Virtual Desktop

Nell’architettura di rete di tipologia Hub-Spoke, l’Hub è una rete virtuale in Azure che funge da punto di connettività verso la rete on-premises. Tale connettività può avvenire tramite VPN Site to site oppure tramite ExpressRoute. Gli Spoke sono le reti virtuali che eseguono il peering con l’Hub e possono essere usate per isolare i carichi di lavoro. Un buon approccio potrebbe quindi essere quello di strutturare il networking di Azure adottando fin da subito questa topologia di rete e posizionare le macchine virtuali Windows Virtual Desktop in una rete di Spoke. Questa architettura di rete è pensata anche per posizionare nella rete di Hub una network virtual appliance (NVA) per controllare i flussi di rete in modo centralizzato. Il controllo delle comunicazioni di rete può essere demandato a una network virtual appliance (NVA) di terze parti oppure ad Azure Firewall, il servizio gestito e totalmente integrato nel cloud pubblico di Microsoft, che consente di mettere in sicurezza le risorse presenti sulle Virtual Network di Azure.

Figura 2 – Hub-spoke network topology in Azure

Flussi di comunicazione necessari per Windows Virtual Desktop

Diversi sono i flussi di comunicazione che è necessario prevedere e che grazie alla topologia di rete Hub-Spoke è possibile governare facilmente e in modo centralizzato.

Figura 3 – Flussi di comunicazione per l’ambiente Windows Virtual Desktop nella topologia Hub-Spoke

Windows Virtual Desktop non richiede di dover aprire dei flussi di comunicazione in ingresso verso la virtual network su cui sono attestate le relative macchine virtuali.

Per consentire un corretto funzionamento del servizio è però necessario prevedere l’accesso dalle macchine WVD, attestate sulla virtual network di spoke, verso specifici Fully Qualified Domain Names (FQDNs). La lista completa degli indirizzi necessari per il funzionamento di Windows Virtual Desktop è possibile consultarla in questo documento Microsoft. Per semplificare questa configurazione, in Azure Firewall è disponibile l’apposito FQDN tag chiamato WindowsVirtualDesktop, che è possibile utilizzare in una application rule specifica. A questo proposito è bene specificare che questo tag non contempla l’accesso agli storage e service bus accounts necessari per gli host pool di Windows Virtual Desktop. Trattandosi di URL specifici per deployment è possibile andare a consentire il traffico https in modo puntuale verso gli URL specifici oppure si può utilizzare il wildcard per i seguenti FQDNs: *xt.blob.core.windows.net, *eh.servicebus.windows.net e *xt.table.core.windows.net. Questi FQDN tag sono presenti anche nelle Virtual Appliance di terze parti per facilitare la configurazione.

Le macchine Windows Virtual Desktop devono inoltre poter accedere ai server DNS, al servizio KMS per i processi di attivazione e ai server NTP per la sincronizzazione dell’orario.

In base alle esigenze aziendali può inoltre essere necessario abilitare l’accesso a Internet per gli utenti finali, applicando opzionalmente specifiche regole per la navigazione. Per filtrate il traffico Internet può essere utilizzato un secure web gateway posizionato on-premises oppure la network virtual appliance posizionata nella rete di Hub.

Infine, è opportuno prevedere l’abilitazione dei flussi di comunicazione necessari tra le macchine Windows Virtual Desktop, posizionate nella rete di Spoke, e le risorse che risiedono nell’ambiente on-premises.

Conclusioni

Uno dei primi aspetti da tenere in considerazione quando si decide di implementare soluzioni nel cloud è l’architettura di rete da adottare. Stabilire fin dall’inizio la topologia di rete più opportuna consente di avere una strategia vincente ed evita di trovarsi nella condizione di dover migrare in seguito i workloads, per adottare architetture di rete differenti, con tutte le complicazioni che ne conseguono. L’architettura di rete Hub-Spoke si presta bene anche per scenari di deploy di Windows Virtual Desktop, in quanto consente di ottenere un elevato livello di controllo sugli aspetti legati alla sicurezza di rete e di effettuare una segregazione del traffico di rete adottando Azure Firewall oppure Network Virtual Appliance di terze parti.

Azure Networking: gestione degli indirizzi IP per il traffico in uscita da Azure

Quando si progettano architetture in Azure è spesso importante stabilire con precisione quali indirizzi IP pubblici vengono utilizzati per il traffico di rete in uscita. Un requisito comunemente richiesto è garantire che il traffico in uscita dalla rete virtuale di Azure avvenga con indirizzi IP pubblici stabiliti. Questo requisito tipicamente è dato dalla necessità di autorizzare in modo esplicito il traffico proveniente da Azure su altre risorse. In questo articolo viene descritto come in Azure è possibile governare questo aspetto, quali sono gli elementi da prendere in considerazione e quali novità sono state recentemente introdotte in questo ambito.

Per impostazione predefinita, il traffico in uscita da una rete virtuale di Azure utilizza degli indirizzi IP pubblici allocati in modo casuale e questi possono cambiare.

Assegnazione IP Pubblico alla singola macchina virtuale

Quando si ha la necessità di fissare l’indirizzo IP Pubblico per il traffico in uscita di una singola macchina virtuale, il metodo più semplice è assegnare a questa un indirizzo IP Pubblico. Tale indirizzo IP sarà utilizzato per il traffico in ingresso, se necessario, e per il traffico in uscita. Tramite i Network Security Groups (NSGs), lo strumento principale per controllare il traffico di rete in Azure, è possibile filtrare le comunicazioni con apposite regole di deny e permit.

Assegnazione IP Pubblico al Load Balancer

Anziché assegnare un indirizzo IP pubblico direttamente a una macchina virtuale, è possibile assegnarlo a un load balancer. In questo modo, qualsiasi macchina virtuale aggiunta al pool di back-end del load balancer utilizzerà l’IP pubblico ad esso assegnato per il traffico di rete in uscita.

Figura 1 – Load Balancer con IP Pubblico

Questo approccio è consigliato qualora ci sia davvero l’esigenza di adottare un Load Balancer per bilanciare il traffico di rete in ingresso tra più macchine virtuali. In questo modo è anche possibile limitare il numero di IP pubblici richiesti, configurando più macchine virtuali dietro allo stesso load balancer.

Utilizzo di Azure Firewall

In presenza di Azure Firewall, se il traffico di rete viene opportunamente fatto confluire a questo componente tramite delle rotte specifiche, si ha la certezza che uscirà verso Internet usando gli IP Pubblici assegnati all’istanza Azure Firewall. Ad Azure Firewall si possono associare fino a 250 indirizzi IP pubblici, ma è opportuno tenere in considerazione che attualmente l’indirizzo IP Pubblico sorgente di Azure Firewall utilizzato per le connessioni viene scelto in modo casuale tra gli IP assegnati. Questo aspetto è da valutare quando sono necessarie autorizzazioni specifiche per il traffico proveniente da Azure Firewall e se si deve gestire l’accesso a FTP Passivi (non supportati se Azure Firewall ha più indirizzi IP assegnati). Microsoft ha comunque in roadmap la possibilità di fare configurazioni SNAT specificando l’indirizzo IP Pubblico da utilizzare.

Figura 2 – Azure Firewall overview

Azure Firewall è un componente sempre più diffuso e la sua attivazione è consigliata per gestire e governare al meglio il traffico di rete. Tuttavia, in assenza di questo componente è possibile valutare metodi alternativi meno costosi se l’obiettivo unico è governare quali indirizzi IP vengono utilizzati nel traffico di rete in uscita.

Virtual Network NAT

Virtual Network NAT è un nuovo metodo che è stato recentemente introdotto per semplificare nelle reti virtuali la connettività Internet ed interessa esclusivamente il traffico di rete in uscita. Se configurato su una subnet, tutta il traffico in uscita utilizzerà gli indirizzi IP pubblici statici specificati. Il tutto è possibile senza l’adozione di indirizzi IP pubblici direttamente collegati alle macchine virtuali e di load balancer.

Figura 3 – Virtual Network NAT

Una subnet può quindi essere configurata specificando quale risorsa Gateway NAT utilizzare. Al termine della configurazione tutti i flussi di rete in uscita (UDP e TCP) provenienti da qualsiasi macchina virtuale attestata su quella subnet, utilizzeranno l’IP Pubblico (standard SKU), il Public IP Prefix oppure una combinazione di questi. La medesima risorsa Gateway NAT può essere utilizzata da più subnet, purché appartenenti alla stessa Virtual Network.

Virtual Network NAT è compatibile con le seguenti risorse, aventi SKU standard:

  • Load balancer
  • Public IP address
  • Public IP prefix

Questi componenti utilizzati insieme a Virtual Network NAT forniscono connettività Internet in entrata alle subnet. Virtual Network NAT gestisce invece tutta la connettività Internet in uscita dalla subnet. L’utilizzo congiunto di questi componenti è possibile in quanto sono consapevoli della direzione in cui è stato avviato il flusso e ne permettono la corretta gestione.

Figura 4 – Virtual Network NAT flow direction

Lo SLA garantito per questa funzionalità è del 99.9%, in quanto viene distribuita automaticamente dalla piattaforma su più fault domains per sostenere al meglio eventuali fault.

Virtual Network NAT è di default un servizio regionale ed è possibile isolarlo in una specifica zona (zonal deployment), quando si devono contemplare scenari che adottano diverse availability zones.

Figura 5 – Virtual Network NAT con availability zones

Per monitorare l’utilizzo di questo componente e per effettuare operazioni di troubleshooting è possibile consultare le metriche esposte in Azure Monitor:

  • Bytes
  • Packets
  • Dropped Packets
  • Total SNAT connections
  • SNAT connection state transitions per interval.

NSG flow logging non è al momento supportato per il Virtual Network NAT.

Il costo di questo componente è dato da due fattori:

  • Ore di esistenza della risorsa
  • Dati processati

Per maggiori dettagli sui costi è possibile consultare la pagina Microsoft relativa al pricing per questo componente.

Conclusioni

Per governare quali indirizzi IP vengono utilizzati dai sistemi in Azure per comunicare verso l’esterno ci sono diverse possibilità, ciascuna con le proprie caratteristiche. Nel caso si stia adottando la topologia di rete Hub-spoke con un Azure Firewall nella rete di Hub, il controllo è garantito by design. Un’ottima soluzione in assenza di Azure Firewall oppure di altre Network Virtual Appliance è l’adozione della metodologia Virtual Network NAT recentemente introdotta.

Formazione: Cloud Community con la scuola per esplorare il mondo digitale

Siamo lieti di comunicarvi che la nostra community parteciperà ad un importante progetto di formazione dedicato alle classi quarta e quinta dell’Istituto Superiore Statale P. Gobetti di Scandiano (RE).

L’iniziativa di formazione durerà due mesi e coinvolgerà circa 50 ragazzi. Si tratta di un percorso di formazione appositamente pensato per avvicinare gli studenti ai grandi argomenti digital. In seguito si riportano i temi trattati durante questo progetto.

Automation con Powershell

Powershell è la shell multi-piattaforma Microsoft pensata per automatizzare e rendere ripetibili le operazioni amministrative sui sistemi IT. L’automazione consente di rendere certe e ripetibili le operazioni siano esse applicate a poche unità o migliaia di sistemi. In questo modulo introduttivo ci si limiterà alla gestione della piattaforma Windows e non si tratteranno temi legati alla piattaforma Linux.

Obiettivi

Rendere gli studenti in grado di:

  • Identificare le varie versioni di Powershell e l’ambito di utilizzo
  • Descrivere le funzionalità di powershell, ricercare ed eseguire i comandi base
  • Utilizzare la powershell pipeline
  • Lavorare con variabili, array e hash tables
  • Scrivere un semplice script powershell
  • Eseguire comandi e script powershell remotamente

Prerequisiti

  • Logica di programmazione per oggetti
  • Conoscenza dei meccanismi base ai autenticazione e autorizzazione in un dominio Active Directory

Docente

Cloud Networking in ambienti ibridi

L’IT aziendale non è più limitato o limitabile alle sole reti di proprietà tra sedi o stabilimenti, la cloud pubblica nelle sue varie declinazioni è ormai componente fondamentale di qualsiasi architettura IT. La possibilità di interconnettere sistemi e servizi è il primo mattone per la costruzione di un ambiente ibrido tra pubblico e privato (on-premises). In questo modulo gli studenti avranno modo di comprendere il networking su cloud pubblica e di realizzare un collegamento tra cloud pubblica e rete privata.

Obiettivi

Rendere gli studenti in grado di:

  • Identificare i maggiori cloud provider pubblici
  • Descrivere le varie tipologie di cloud computing
  •  Descrivere le differenze in termini di gestione dei costi tra sistemi di proprietà e cloud computing (se studiano anche economia ci può essere un rimando alla differenza tra capital expenses e operational expenses)
  • Descrivere cosa si intende per virtual networking e in particolare i concetti di virtual network di Microsoft Azure
  • Raccogliere le informazioni necessarie alla creazione di una virtual network su Microsoft Azure
  •  Creare una virtual network in subnet, definire regole di routing e network security group
  • Conoscere le diverse tipologie di connettività tra virtual network diverse e tra virtual network e reti private
  • Mettere in comunicazione una virtual network Azure con una rete locale privata
  • Cenni di sicurezza per le virtual network su cloud pubblica.

Prerequisiti

  • Conoscenza del protocollo tcp/ip e delle modalità di routing

Docente

Conclusioni

L’obiettivo principale di questa iniziativa community è quello di aiutare ed incentivare i giovani talenti a crescere e formarsi per le professioni legate al mondo digitale. Grazie a questo percorso di formazione si vuole darà l’opportunità ai giovani partecipanti di avvicinarsi al mondo del lavoro con una maggiore consapevolezza e una visione più ampia.