Regole di sicurezza
Il servizio di networking offre due funzioni firewall virtuali che utilizzano entrambe le regole di sicurezza per controllare il traffico a livello di pacchetto. Le due funzionalità sono le seguenti.
- Elenchi di sicurezza: la funzione firewall virtuale originale del servizio di networking.
- Gruppi di sicurezza di rete (NSG): una funzione progettata in seguito per i componenti dell'applicazione che hanno impostazioni di sicurezza diverse. I gruppi NSG sono supportati solo per servizi specifici.
Queste due funzioni offrono modi diversi per applicare le regole di sicurezza a un set di schede di interfaccia di rete virtuale (VNIC, Virtual Network Interface Card) nella rete cloud virtuale (VCN, Virtual Cloud Network).
Questo argomento riassume le differenze di base tra le due funzioni. Vengono inoltre illustrati i concetti importanti relativi alle regole di sicurezza che è necessario conoscere. Il modo in cui si creano, gestiscono e applicano le regole di sicurezza varia tra le liste di sicurezza e i gruppi di sicurezza di rete. Per dettagli sull'implementazione, vedere gli argomenti correlati riportati di seguito.
È possibile utilizzare Zero Trust Packet Routing (ZPR) insieme o al posto dei gruppi di sicurezza di rete per controllare l'accesso di rete alle risorse OCI applicando loro attributi di sicurezza e creando criteri ZPR per controllare la comunicazione tra di loro. Per ulteriori informazioni, vedere Zero Trust Packet Routing.
Se un endpoint dispone di un attributo di sicurezza ZPR, il traffico verso l'endpoint deve soddisfare le regole ZPR e anche tutte le regole NSG e della lista di sicurezza. Ad esempio, se si stanno già utilizzando gruppi di sicurezza di rete e si applica un attributo di sicurezza a un endpoint, non appena viene applicato l'attributo, tutto il traffico verso l'endpoint viene bloccato. Da quel momento in poi, un criterio ZPR deve consentire il traffico verso l'endpoint.
Confronto di liste di sicurezza e gruppi di sicurezza di rete
Gli elenchi di sicurezza consentono di definire un set di regole di sicurezza che si applicano a tutte le VNIC in un'intera sottorete. Per utilizzare una lista di sicurezza specifica con una subnet specifica, associare la lista di sicurezza alla subnet durante la creazione della subnet o in un secondo momento. Una subnet può essere associata a un massimo di cinque liste di sicurezza. Tutte le VNIC create in tale subnet sono soggette alle liste di sicurezza associate alla subnet.
I gruppi di sicurezza di rete (NSG) consentono di definire un set di regole di sicurezza che si applicano a un gruppo scelto di VNIC (o alle risorse principali delle VNIC, come i load balancer o i sistemi DB). Ad esempio, le VNIC appartenenti a un set di istanze di computazione che hanno tutte lo stesso livello di sicurezza. Per utilizzare un gruppo NSG specifico, aggiungere le VNIC di interesse al gruppo. Qualsiasi VNIC aggiunta a tale gruppo è soggetta alle regole di sicurezza di tale gruppo. È possibile aggiungere una VNIC a un massimo di cinque gruppi NSG.
Nella tabella riportata di seguito viene fornito un riepilogo delle differenze.
Strumento di sicurezza | Si applica a | Per abilitare | Limitazioni |
---|---|---|---|
Liste di sicurezza | Tutte le VNIC in una subnet che utilizzano tale lista di sicurezza | Associare la lista di sicurezza alla subnet | Massimo cinque liste di sicurezza per subnet |
Gruppi di sicurezza di rete | VNIC scelte nella stessa VCN | Aggiungere VNIC specifiche al gruppo NSG | Massimo cinque NSG per VNIC |
Si consiglia di utilizzare i gruppi NSG anziché le liste di sicurezza perché i gruppi NSG consentono di separare l'architettura della subnet della VCN dai requisiti di sicurezza dell'applicazione.
Tuttavia, se lo si desidera, è possibile utilizzare sia le liste di sicurezza che i gruppi NSG. Per ulteriori informazioni, vedere Se si utilizzano sia elenchi di sicurezza che gruppi di sicurezza di rete.
Informazioni sulle VNIC e sulle risorse padre
Una VNIC è un componente del servizio di networking necessario per una risorsa in rete, ad esempio un'istanza di computazione, per connettersi a una rete cloud virtuale (VCN). La VNIC influisce sul modo in cui l'istanza si connette agli endpoint all'interno e all'esterno della VCN. Ogni VNIC risiede in una subnet in una VCN.
Quando crei un'istanza di computazione, viene creata automaticamente una VNIC per l'istanza nella subnet dell'istanza. L'istanza viene considerata la risorsa padre per la VNIC. Puoi aggiungere altre VNIC (secondarie) a un'istanza di computazione. Per questo motivo, le VNIC di un'istanza vengono visualizzate in modo prominente come parte delle risorse correlate di un'istanza di computazione nella console.
Anche altri tipi di risorse padre determinano la creazione automatica di una VNIC. Ad esempio, quando crei un load balancer, il servizio Load balancer crea automaticamente VNIC per il bilanciamento del traffico nel set backend. Inoltre, quando crei un sistema DB, il servizio di database crea automaticamente le VNIC come nodi del sistema DB. Tali servizi creano e gestiscono tali VNIC per l'utente. Per questo motivo, queste VNIC non sono così ovvie nella console allo stesso modo delle VNIC per le istanze di computazione.
Per utilizzare un gruppo NSG, inserisci attivamente le VNIC nel gruppo, una VNIC non fa mai parte di un gruppo NSG perché si trova in una determinata subnet. Tuttavia, in genere si lavora con la risorsa padre quando si aggiunge una VNIC al gruppo, non con la VNIC stessa. Ad esempio, quando crei un'istanza di computazione, puoi facoltativamente specificare un gruppo NSG per l'istanza. Sebbene l'istanza venga inserita concettualmente nel gruppo, si sta inserendo la VNIC primaria dell'istanza nel gruppo di sicurezza di rete. Le regole di sicurezza del gruppo si applicano a tale VNIC, non all'istanza. Inoltre, se aggiungi una VNIC secondaria all'istanza, puoi facoltativamente specificare un NSG per tale VNIC e le regole si applicano a tale VNIC, non all'istanza. Tenere presente che tutte le VNIC in un gruppo NSG devono trovarsi nella stessa VCN a cui appartiene il gruppo NSG.
Allo stesso modo, quando inserisci un load balancer in un gruppo di sicurezza di rete, concettualmente inserisci il load balancer nel gruppo. Tecnicamente stai inserendo le VNIC gestite dal servizio Load Balancer nel gruppo di sicurezza di rete.
È possibile gestire l'appartenenza alla VNIC di un gruppo NSG alla risorsa padre e non al gruppo NSG stesso. Ad esempio, per aggiungere una risorsa padre a un gruppo NSG, è possibile eseguire l'azione sulla risorsa padre specificando a quali gruppi NSG viene aggiunta la risorsa padre. Non si esegue l'azione sul gruppo NSG (specificando quali VNIC o risorse padre aggiungere al gruppo NSG). Analogamente, per rimuovere una VNIC da un gruppo NSG, eseguire tale azione aggiornando la risorsa padre, non il gruppo NSG. Ad esempio, per aggiungere una VNIC di un'istanza di computazione esistente a un gruppo NSG, è necessario aggiornare le proprietà della VNIC e specificare il gruppo NSG. Ad esempio, con l'API REST, si chiama UpdateVnic
. Nella console è possibile visualizzare l'istanza, quindi la VNIC di interesse, quindi modificare le proprietà della VNIC.
Per un elenco delle risorse padre che supportano l'uso dei gruppi di sicurezza di rete, vedere Supporto per i gruppi di sicurezza di rete.
Gruppo di sicurezza rete come origine o destinazione di una regola
Una differenza importante nel modo in cui è possibile scrivere regole di sicurezza per i gruppi NSG rispetto alle liste di sicurezza: quando si scrivono regole per un gruppo NSG, è possibile specificare un gruppo NSG come origine del traffico (per le regole di entrata) o destinazione del traffico (per le regole di uscita). Per risolvere questo problema, utilizzare le regole della lista di sicurezza, in cui è possibile specificare un CIDR come origine o destinazione.
La possibilità di specificare un gruppo NSG significa che è possibile scrivere facilmente regole per controllare il traffico tra due gruppi NSG diversi. I gruppi NSG devono trovarsi nella stessa VCN.
Inoltre, per controllare il traffico tra le VNIC in un gruppo NSG specifico, è possibile scrivere regole che specificano il GNS della regola come origine (per le regole di entrata) o destinazione (per le regole di uscita).
Per ulteriori informazioni, vedere Panoramica dei gruppi di sicurezza di rete.
Differenze API REST
Il modello API REST per i gruppi NSG presenta alcune differenze di base rispetto alle liste di sicurezza. Per ulteriori informazioni, vedere Utilizzo dell'interfaccia API.
Regole predefinite
Una VCN viene fornita automaticamente con una lista di sicurezza predefinita che contiene diverse regole di sicurezza predefinite che consentono di iniziare a utilizzare il servizio di networking. Quando crei una subnet, la lista di sicurezza predefinita viene associata alla subnet a meno che non specifichi una lista di sicurezza personalizzata già creata nella VCN.
In confronto, la VCN non dispone di un gruppo di sicurezza di rete predefinito.
Limiti
Le due caratteristiche hanno limiti diversi. Per esaminare un elenco dei limiti applicabili e le istruzioni per richiedere un incremento del limite, consulta i limiti del servizio.
Risorsa |
Ambito |
Oracle Universal Credit |
Pay As You Go o prova |
---|---|---|---|
Liste di sicurezza | VCN | 300 | 300 |
Liste di sicurezza | Subnet | 5* | 5* |
Regole di sicurezza | Lista di sicurezza |
200 Regole di entrata* and 200 regole di uscita* |
200 Regole di entrata* and 200 regole di uscita* |
* Impossibile aumentare il limite per questa risorsa |
Risorsa | Ambito | Oracle Universal Credit | Pay As You Go o prova |
---|---|---|---|
Gruppi di sicurezza di rete | VCN | 1.000 | 1.000 |
VNIC | Gruppo di sicurezza di rete |
Un determinato gruppo di sicurezza di rete può avere tutte le VNIC presenti nella VCN. Una determinata VNIC può appartenere a un massimo di 5 gruppi di sicurezza di rete.* |
Un determinato gruppo di sicurezza di rete può avere tutte le VNIC presenti nella VCN. Una determinata VNIC può appartenere a un massimo di 5 gruppi di sicurezza di rete.* |
Regole di sicurezza | Gruppo di sicurezza di rete |
120 (ingresso totale più uscita) |
120 (ingresso totale più uscita) |
* Impossibile aumentare il limite per questa risorsa |
Procedure consigliate per le regole di sicurezza
Usa gruppi di sicurezza di rete
Si consiglia di utilizzare i gruppi NSG per i componenti che hanno tutti la stessa postura di sicurezza. Ad esempio, in un'architettura multilivello, è necessario disporre di un gruppo NSG separato per ogni livello. Le VNIC di un livello appartenerebbero tutte al gruppo NSG di quel livello. All'interno di un livello specifico, è possibile che si disponga di un sottoinsieme specifico delle VNIC del livello con requisiti di sicurezza speciali aggiuntivi. Pertanto, è necessario creare un altro gruppo NSG per tali regole aggiuntive e inserire tale sottoinsieme di VNIC sia nel gruppo NSG del livello che nel gruppo NSG aggiuntivo.
Oracle consiglia inoltre di utilizzare i gruppi NSG perché Oracle dà la priorità ai gruppi NSG rispetto alle liste di sicurezza durante l'implementazione di miglioramenti futuri.
Acquisire familiarità con le regole predefinite degli elenchi di sicurezza
Una VCN viene fornita automaticamente con una lista di sicurezza predefinita che contiene diverse regole di sicurezza predefinite che consentono di iniziare a utilizzare il servizio di networking. Queste regole esistono perché abilitano la connettività di base. Anche se non si utilizzano le liste di sicurezza o la lista di sicurezza predefinita, acquisire familiarità con le regole in modo da comprendere meglio i tipi di traffico richiesti dalle risorse cloud in rete. È possibile utilizzare tali regole nei gruppi NSG o in qualsiasi lista di sicurezza personalizzata impostata.
La lista di sicurezza predefinita non include regole per abilitare il ping. Se è necessario utilizzare il ping, vedere Regole per abilitare il ping.
Non eliminare regole di sicurezza predefinite in modo non discriminatorio
Una VCN potrebbe disporre di subnet che utilizzano la lista di sicurezza predefinita per impostazione predefinita. Non eliminare alcuna regola di sicurezza predefinita della lista a meno che non si sia verificato per la prima volta che le risorse nella VCN non le richiedono. In caso contrario, potresti interrompere la connettività della VCN.
Verificare che le regole del firewall del sistema operativo siano allineate alle regole di sicurezza
Le istanze di computazione che eseguono immagini della piattaforma dispongono anche di regole del firewall del sistema operativo che controllano l'accesso all'istanza. Durante la risoluzione dei problemi di accesso a un'istanza, assicurarsi che tutti gli elementi riportati di seguito siano impostati correttamente.
- Le regole nei gruppi di sicurezza di rete in cui si trova l'istanza
- Le regole negli elenchi di sicurezza associati alla subnet dell'istanza
- Regole firewall del sistema operativo dell'istanza
Se un'istanza esegue Oracle Autonomous Linux 8.x, Oracle Autonomous Linux 7, Oracle Linux 8, Oracle Linux 7 o Oracle Linux Cloud Developer 8, devi utilizzare firewalld per interagire con le regole iptables. Per riferimento, ecco i comandi per l'apertura di una porta (1521 in questo esempio):
sudo firewall-cmd --zone=public --permanent --add-port=1521/tcp
sudo firewall-cmd --reload
Per le istanze con un volume di avvio iSCSI, il comando --reload
precedente può causare problemi. Per informazioni dettagliate e una soluzione alternativa, vedere Instances experience system hang after running firewall-cmd --reload.
Utilizzare le metriche VNIC per risolvere i problemi relativi ai pacchetti eliminati a causa delle regole di sicurezza
Il servizio di networking offre metriche per le VNIC, che mostrano i livelli di traffico VNIC (pacchetti e byte). Due delle metriche riguardano i pacchetti in entrata e in uscita che violano le regole di sicurezza e vengono pertanto eliminati. È possibile utilizzare queste metriche per risolvere i problemi relativi alle regole di sicurezza e se le VNIC ricevono il traffico appropriato.
Se si utilizzano sia le liste di sicurezza che i gruppi di sicurezza di rete
È possibile utilizzare le liste di sicurezza da sole, i gruppi di sicurezza di rete da soli o entrambi insieme. Dipende dalle esigenze di sicurezza specifiche.
Se si dispone di regole di sicurezza che si desidera applicare per tutte le VNIC in una VCN: la soluzione più semplice consiste nell'inserire le regole in un'unica lista di sicurezza, quindi associare tale lista di sicurezza a tutte le subnet nella VCN. In questo modo puoi assicurarti che le regole vengano applicate, indipendentemente da chi crea una VNIC nella VCN. Un'opzione consiste nell'utilizzare la lista di sicurezza predefinita della VCN, che viene fornita automaticamente con la VCN e contiene un set di regole essenziali per impostazione predefinita.
Se si utilizzano entrambi gli elenchi di sicurezza e i gruppi di sicurezza di rete, il set di regole che si applica a una determinata VNIC è l'unione dei seguenti elementi:
- Le regole di sicurezza negli elenchi di sicurezza associati alla subnet della VNIC
- Le regole di sicurezza in tutti i gruppi NSG in cui si trova la VNIC
Il seguente diagramma di Venn illustra l'idea.
La VNIC 1 è coperta dalla lista di sicurezza 1, dalla lista di sicurezza 2, da NSG A e da NSG B. Un pacchetto in questione può raggiungere la VNIC 1 se qualsiasi regola in uno qualsiasi degli elenchi e dei gruppi rilevanti consente il traffico (o se il traffico fa parte di una connessione in fase di tracciamento esistente). Un avvertimento è se le liste contengono sia regole statali che apolide che coprono lo stesso traffico. Per ulteriori informazioni, vedere Stateful Rispetto alle regole senza conservazione dello stato.
Parti di una regola di sicurezza
Una regola di sicurezza consente un determinato tipo di traffico in entrata o in uscita da una VNIC. Ad esempio, una regola di sicurezza comunemente utilizzata consente al traffico della porta TCP in entrata 22 di stabilire connessioni SSH all'istanza (VNIC dell'istanza). Senza regole di sicurezza, non è consentito alcun traffico in entrata e in uscita dalle VNIC nella VCN.
Le regole di sicurezza non vengono applicate per il traffico che coinvolge il blocco CIDR 169.254.0.0/16, che include servizi come iSCSI e metadati dell'istanza.
Ogni regola di sicurezza specifica gli elementi indicati di seguito.
- Direzione (in entrata o in uscita): l'ingresso è traffico in entrata verso la VNIC e l'uscita è traffico in uscita dalla VNIC. Il modello API REST per le liste di sicurezza è diverso dai gruppi di sicurezza di rete. Le liste di sicurezza hanno un oggetto
IngressSecurityRule
e un oggettoEgressSecurityRule
separato. I gruppi di sicurezza di rete hanno solo un oggettoSecurityRule
e l'attributodirection
dell'oggetto mostra se la regola è relativa al traffico in entrata o in uscita. - Con conservazione dello stato o senza conservazione dello stato: se con conservazione dello stato, viene utilizzato il tracciamento della connessione per il traffico che corrisponde alla regola. Se è senza conservazione dello stato, non viene utilizzato alcun tracciamento della connessione. Vedere Stateful Rispetto alle regole senza conservazione dello stato.
-
Tipo di origine e origine (solo regole di entrata): l'origine fornita per una regola di entrata dipende dal tipo di origine selezionato.
Tipi di origine consentitiTipo origine Origine consentita CIDR Blocco CIDR da cui proviene il traffico. Utilizzare 0.0.0.0/0 per indicare tutti gli indirizzi IP. Il prefisso è obbligatorio (ad esempio, includere /32 se si specifica un singolo indirizzo IP). Per ulteriori informazioni sulla notazione CIDR, vedere RFC1817 e RFC1519. Gruppo di sicurezza di rete Un gruppo NSG nella stessa VCN del gruppo NSG di questa regola.
Questo tipo di origine è disponibile solo se la regola appartiene a un gruppo NSG e non a una lista di sicurezza.
Servizio Solo per i pacchetti provenienti da un servizio Oracle tramite un service gateway. Se un gateway di servizio non è presente in una VCN, il traffico proveniente dall'IP pubblico di un endpoint OSN può essere instradato a una VCN tramite un gateway NAT o un gateway Internet. Il traffico attraversa ancora il backbone OCI nella VCN.
Il servizio di origine è l'etichetta CIDR del servizio a cui si è interessati.
-
Tipo di destinazione e destinazione (solo regole di uscita): la destinazione fornita per una regola di uscita dipende dal tipo di destinazione selezionato.
Tipi di destinazione consentitiTipo di destinazione Destinazione consentita CIDR Blocco CIDR a cui è destinato il traffico. Utilizzare 0.0.0.0/0 per indicare tutti gli indirizzi IP. Il prefisso è obbligatorio (ad esempio, includere /32 se si specifica un singolo indirizzo IP). Per ulteriori informazioni sulla notazione CIDR, vedere RFC1817 e RFC1519. Gruppo di sicurezza di rete Un gruppo NSG nella stessa rete VCN del gruppo NSG di questa regola.
Questo tipo di destinazione è disponibile solo se la regola appartiene a un gruppo NSG e non a una lista di sicurezza.
Servizio Solo per i pacchetti che passano a un servizio Oracle (ad esempio, Object Storage) tramite un service gateway. Se un gateway di servizio non è presente in una VCN, il traffico destinato all'IP pubblico di un endpoint OSN può essere instradato a OSN tramite un gateway NAT o un gateway Internet. L'instradamento attraverso un gateway di servizi consente di selezionare gli endpoint di Oracle Services Network (OSN) a cui si desidera instradare il traffico (selezionare Solo storage degli oggetti o Tutti i servizi).
Il servizio di destinazione è l'etichetta CIDR del servizio OSN a cui si è interessati.
- Protocollo IP: un singolo protocollo IPv4 o "all" per coprire tutti i protocolli.
- Porta di origine: la porta da cui proviene il traffico. Per TCP o UDP, è possibile specificare tutte le porte di origine oppure, facoltativamente, un numero di porta di origine singola o un intervallo.
- Porta di destinazione: la porta a cui è destinato il traffico. Per TCP o UDP, è possibile specificare tutte le porte di destinazione oppure, facoltativamente, un singolo numero di porta di destinazione o un intervallo.
- Tipo e codice ICMP: per ICMP, è possibile specificare tutti i tipi e i codici oppure, facoltativamente, specificare un singolo tipo ICMP con un codice facoltativo. Se il tipo contiene più codici, creare una regola separata per ogni codice che si desidera consentire.
- Descrizione (solo regole NSG): le regole di sicurezza NSG includono un attributo facoltativo in cui è possibile fornire una descrizione descrittiva della regola. Non è supportato per le regole della lista di sicurezza.
Per esempi di regole di sicurezza, vedere Scenari di rete.
Per il limite del numero di regole che è possibile avere, vedere Confronto tra liste di sicurezza e gruppi di sicurezza di rete.
Se si utilizzano gruppi NSG e due VNIC che si trovano nella stessa VCN devono comunicare utilizzando i relativi indirizzi IP pubblici, è necessario utilizzare l'indirizzo IP pubblico della VNIC e non il gruppo NSG della VNIC come origine (per l'ingresso) o destinazione (per l'uscita) nelle regole di sicurezza pertinenti. Il pacchetto viene instradato al gateway Internet della VCN e, a quel punto, le informazioni NSG della VNIC non sono disponibili. Pertanto, una regola di sicurezza che specifica il gruppo NSG come origine o destinazione non è efficace nel consentire quel tipo specifico di traffico.
Confronto con stato rispetto a regole senza stato
Quando si crea una regola di sicurezza, è possibile selezionare se è con conservazione dello stato o senza stato. La differenza è descritta nelle sezioni successive. L'impostazione predefinita è Stateful. Le regole di conservazione dello stato sono consigliate se si dispone di un sito Web che interagisce con Internet a volumi elevati (per il traffico HTTP/HTTPS).
Questa sezione fa riferimento alle istanze di computazione e al relativo traffico. Tuttavia, la discussione è applicabile a tutti i tipi di risorse con VNIC. Vedere Confronto delle liste di sicurezza e dei gruppi di sicurezza di rete.
Regole con conservazione dello stato
Se si contrassegna una regola di sicurezza come con conservazione dello stato, significa che si desidera utilizzare il monitoraggio della connessione per qualsiasi traffico corrispondente a tale regola. Ciò significa che quando un'istanza riceve traffico corrispondente alla regola di entrata con conservazione dello stato, la risposta viene tracciata e restituita automaticamente all'host di origine, indipendentemente dalle regole di uscita applicabili all'istanza. Inoltre, quando un'istanza invia traffico che corrisponde a una regola di uscita con conservazione dello stato, la risposta in entrata viene consentita automaticamente, indipendentemente dalle regole di entrata.
Ad esempio, è possibile disporre di una regola di sicurezza di entrata con conservazione dello stato per un'istanza (istanza A) che deve ricevere e rispondere al traffico HTTP dall'host B. L'host B può essere qualsiasi host, sia esso un'istanza o meno. L'istanza A e l'host B stanno comunicando perché la regola di entrata con conservazione dello stato consente il traffico da qualsiasi indirizzo IP di origine (0.0.0.0/0) solo alla porta di destinazione 80 (protocollo TCP). Non è richiesta alcuna regola di uscita per consentire il traffico delle risposte perché le risposte vengono tracciate e consentite automaticamente.
Le regole con conservazione dello stato memorizzano le informazioni in una tabella di tracciamento delle connessioni in ogni istanza di computazione. La dimensione di tale tabella è specifica della forma di computazione utilizzata (vedere la pagina dei limiti del servizio per Tracciamento connessioni). Quando la tabella di monitoraggio della connessione è piena, non è possibile aggiungere nuove informazioni sullo stato e le nuove connessioni subiscono la perdita di pacchetti. L'uso di una forma di computazione più grande consente di avere una tabella più grande, ma potrebbe non essere sufficiente per evitare la perdita di pacchetti quando si utilizzano regole con conservazione dello stato.
Se una subnet dispone di un volume di traffico elevato, si consiglia di utilizzare regole senza conservazione dello stato anziché regole con conservazione dello stato.
Regole senza conservazione dello stato
La figura successiva mostra l'istanza A e l'host B come in precedenza, ma ora con regole di sicurezza senza conservazione dello stato. Come per la regola con conservazione dello stato nella sezione precedente, la regola di entrata senza conservazione dello stato consente il traffico da tutti gli indirizzi IP e da qualsiasi porta, solo sulla porta di destinazione 80 (utilizzando il protocollo TCP). Per consentire il traffico di risposta, è necessario disporre di una regola di uscita senza conservazione dello stato corrispondente che consenta il traffico verso qualsiasi indirizzo IP di destinazione (0.0.0.0/0) e qualsiasi porta, solo dalla porta di origine 80 (utilizzando il protocollo TCP).
Se invece l'istanza A deve avviare il traffico HTTP e ottenere la risposta, è necessario un set diverso di regole senza conservazione dello stato. Come mostra la figura successiva, la regola di uscita avrebbe la porta di origine = all e la porta di destinazione = 80 (HTTP). La regola di entrata avrebbe quindi la porta di origine 80 e la porta di destinazione = tutto.
Se si dovesse utilizzare l'associazione delle porte sull'istanza A per specificare esattamente da quale porta provenire il traffico HTTP, è possibile specificare che come porta di origine nella regola di uscita e la porta di destinazione nella regola di entrata.
Se per qualche motivo si utilizzano sia regole con conservazione dello stato che regole senza conservazione dello stato e un certo traffico corrisponde sia a una regola con conservazione dello stato che a una regola senza conservazione dello stato in una determinata direzione (ad esempio, entrata), la regola senza conservazione dello stato ha la precedenza e la connessione non viene tracciata. Per consentire il traffico di risposta, è necessaria una regola corrispondente nell'altra direzione (ad esempio, uscita, senza conservazione dello stato o con conservazione dello stato).
Dettagli di tracciamento connessione per regole con conservazione dello stato
Oracle utilizza il monitoraggio della connessione per consentire risposte per il traffico che corrisponde a regole con conservazione dello stato (vedere Confronto con conservazione dello stato con regole senza conservazione dello stato). Ogni istanza dispone di un numero massimo di connessioni concorrenti che è possibile tenere traccia, in base alla forma dell'istanza.
Per decidere il traffico di risposta per TCP, UDP e ICMP, Oracle esegue il tracciamento della connessione su questi elementi per il pacchetto:
- Protocollo
- Indirizzo IP di origine e destinazione
- Porte di origine e destinazione (solo per TCP e UDP)
Per altri protocolli, Oracle tiene traccia solo del protocollo e degli indirizzi IP e non delle porte. Ciò significa che quando un'istanza avvia il traffico verso un altro host e tale traffico è consentito dalle regole di sicurezza in uscita, qualsiasi traffico che l'istanza riceve in seguito da tale host per un periodo viene considerato traffico di risposta ed è consentito.
Le connessioni monitorate vengono gestite fino a quando viene ricevuto traffico per la connessione. Se una connessione rimane inattiva abbastanza a lungo, si verifica il timeout e viene rimossa. Dopo la rimozione della connessione, le risposte per una regola di sicurezza con conservazione dello stato vengono eliminate. La tabella seguente mostra i timeout di inattività predefiniti:
Protocollo | Stato | Timeout inattività |
---|---|---|
TCP | stabilita | 1 giorno |
TCP | Configurazione | 1 minuti |
TCP | Chiusura | 2 minuti |
UDP | Stabilito (questo significa un pacchetto ricevuto in entrambe le direzioni) | 3 minuti |
UDP | Non stabilito (pacchetto ricevuto solo in una direzione) | 30 secondi |
ICMP | NON PERTINENTE | 15 secondi |
Altro | NON PERTINENTE | 5 minuti |
Abilitazione dei messaggi di ricerca automatica MTU percorso per le regole senza conservazione dello stato
Se decidi di utilizzare regole di sicurezza senza conservazione dello stato per consentire il traffico da/verso gli endpoint esterni alla VCN, è importante aggiungere una regola di sicurezza che consenta l'ingresso del codice 4 del tipo di traffico ICMP 3 dalla porta di origine 0.0.0.0/0 e da qualsiasi porta di origine. Questa regola consente alle istanze di computazione di ricevere messaggi di frammentazione di ricerca automatica MTU percorso. Questa regola è fondamentale per stabilire una connessione alle istanze. Senza di esso, puoi riscontrare problemi di connettività. Per ulteriori informazioni, vedere In attesa di connessione.
Regole per abilitare il ping
La lista di sicurezza predefinita della VCN contiene diverse regole predefinite, ma non una per consentire le richieste di ping. Per eseguire il ping di un'istanza, assicurarsi che le liste di sicurezza applicabili o i gruppi NSG dell'istanza includano una regola di entrata con conservazione dello stato extra per consentire il tipo di traffico ICMP 8 dalla rete di origine da cui si prevede di eseguire il ping. Per consentire l'accesso tramite ping da Internet, utilizzare 0.0.0.0/0 per l'origine. Tenere presente che questa regola per il ping è separata dalle regole predefinite correlate a ICMP nella lista di sicurezza predefinita. Non rimuovere queste regole.
Regole per gestire i pacchetti UDP frammentati
Le istanze possono inviare o ricevere traffico UDP. Se un pacchetto UDP è troppo grande per la connessione, viene frammentato. Tuttavia, solo il primo frammento del pacchetto contiene il protocollo e le informazioni sulla porta. Se le regole di sicurezza che consentono questo traffico in entrata o in uscita specificano un numero di porta specifico (origine o destinazione), i frammenti dopo il primo vengono eliminati. Se prevedi che le istanze di computazione inviino o ricevano pacchetti UDP di grandi dimensioni, imposta sia le porte di origine che quelle di destinazione per le regole di sicurezza applicabili su ALL (anziché su un numero di porta particolare).