Protezione del volume a blocchi
Questo argomento fornisce informazioni e suggerimenti sulla sicurezza per il volume a blocchi.
Il servizio Block Volume consente di eseguire il provisioning e gestire in modo dinamico i volumi di storage a blocchi . Puoi creare, collegare, connettere e spostare volumi, nonché modificare le prestazioni dei volumi, se necessario, per soddisfare i requisiti di storage, prestazioni e applicazioni. Dopo aver collegato e connesso un volume a un'istanza, puoi utilizzare il volume come un normale disco rigido. Inoltre, puoi disconnettere un volume e collegarlo a un'altra istanza senza perdere i dati.
Responsabilità di sicurezza
Per utilizzare i volumi a blocchi in tutta sicurezza, scopri le tue responsabilità in termini di sicurezza e conformità.
Oracle è responsabile dei seguenti requisiti di sicurezza:
- Sicurezza fisica: Oracle è responsabile della protezione dell'infrastruttura globale che esegue tutti i servizi offerti in Oracle Cloud Infrastructure. Questa infrastruttura è costituita da hardware, software, networking e strutture che eseguono i servizi Oracle Cloud Infrastructure.
In questa pagina sono descritte le responsabilità di sicurezza dell'utente, che includono le aree riportate di seguito.
- Controllo dell'accesso: limitare il più possibile i privilegi. Agli utenti dovrebbe essere concesso solo l'accesso necessario per svolgere il proprio lavoro.
- Cifratura e riservatezza: utilizzare le chiavi di cifratura e i segreti per proteggere i dati e connettersi a risorse protette. Ruotare questi tasti regolarmente.
Task di sicurezza iniziali
Utilizzare questa lista di controllo per identificare i task eseguiti per proteggere il volume a blocchi in una nuova tenancy di Oracle Cloud Infrastructure.
| Attività | Ulteriori informazioni |
|---|---|
| Utilizzare i criteri IAM per concedere l'accesso a utenti e risorse | Criteri IAM |
| Cifra le risorse utilizzando una chiave personalizzata | Cifratura dati |
| Abilita e configura Cloud Guard (facoltativo) | Cloud Guard |
| Creare una zona di sicurezza (facoltativo) | Zone di sicurezza |
Task di sicurezza di routine
Dopo aver iniziato a usare Block Volume, utilizza questa lista di controllo per identificare i task di sicurezza che ti consigliamo di eseguire regolarmente.
| Attività | Ulteriori informazioni |
|---|---|
| Ruota chiavi di cifratura | Cifratura dati |
| Rispondi ai problemi rilevati in Cloud Guard | Cloud Guard |
| Esegui backup regolari | Durabilità dei dati |
| Eseguire un controllo della sicurezza | Audit |
Criteri IAM
Utilizza i criteri per limitare l'accesso al volume a blocchi.
Una policy specifica chi può accedere alle risorse di Oracle Cloud Infrastructure e come. Per ulteriori informazioni, vedere Funzionamento dei criteri.
Assegnare a un gruppo i privilegi minimi necessari per eseguire le proprie responsabilità. Ogni criterio ha un verbo che descrive le azioni che il gruppo può eseguire. Dal minor numero di accessi al massimo, i verbi disponibili sono: inspect, read, use e manage.
Si consiglia di concedere le autorizzazioni DELETE a un set minimo di utenti e gruppi IAM. Questa pratica riduce al minimo la perdita di dati da eliminazioni involontarie da parte di utenti autorizzati o da attori malintenzionati. Assegnare solo le autorizzazioni DELETE agli amministratori della tenancy e del compartimento.
Oracle Cloud Infrastructure supporta due tipi di volumi: volumi a blocchi e volumi di avvio. I volumi a blocchi consentono di espandere la capacità di storage delle istanze in modo dinamico. Un volume di avvio contiene l'immagine usata per avviare l'istanza di calcolo. Il servizio IAM raggruppa la famiglia di tipi di risorse di volume correlati in un tipo di risorsa combinato denominato volume-family.
Assegnare l'accesso con privilegi minimi per gli utenti e i gruppi IAM ai tipi di risorsa in volume-family. I tipi di risorsa in volume-family sono volumes,volume-attachments e volume-backups.
- Le risorse
volumessono dispositivi di volumi a blocchi scollegabili che consentono l'espansione dinamica della capacità di storage dell'istanza o contengono l'immagine per l'avvio dell'istanza. - Le risorse
volume-attachmentssono collegamenti tra volumi e istanze. - Le risorse
volume-backupssono copie point-in-time dei volumi che possono essere utilizzati per creare volumi a blocchi o recuperare i volumi a blocchi.
Il seguente criterio di esempio consente al gruppo VolumeUsers di eseguire tutte le azioni sui volumi e sui backup, ad eccezione dell'eliminazione.
Allow group VolumeUsers to manage volumes in tenancy
where request.permission!='VOLUME_DELETE'
Allow group VolumeUsers to manage volume-backups in tenancy
where request.permission!='VOLUME_BACKUP_DELETE'Se VolumeUsers non è in grado di scollegare i volumi dalle istanze, è possibile aggiungere il criterio seguente all'esempio precedente.
Allow group VolumeUsers to manage volume-attachments in tenancy
where request.permission!='VOLUME_ATTACHMENT_DELETE'Per ulteriori informazioni sui criteri dei volumi a blocchi e per visualizzare altri esempi, vedere Dettagli per i servizi di base.
Cloud Guard
Abilita Cloud Guard e usalo per rilevare e rispondere ai problemi di sicurezza nel volume a blocchi.
Quando rileva un problema, Cloud Guard suggerisce azioni correttive. Inoltre, puoi configurare Cloud Guard in modo che esegua automaticamente determinate azioni. Cloud Guard include le regole del rilevatore riportate di seguito per il volume a blocchi.
- Il volume a blocchi è cifrato con una chiave gestita da Oracle
- Il volume a blocchi non è collegato
Per una lista di tutte le regole del rilevatore disponibili in Cloud Guard, vedere Riferimento ricetta rilevatore.
Se non lo hai già fatto, abilita Cloud Guard e configuralo per monitorare i compartimenti che contengono le tue risorse. Puoi configurare le destinazioni Cloud Guard per esaminare l'intera tenancy (compartimento radice e tutti i compartimenti secondari) o per controllare solo compartimenti specifici. Vedere Introduzione a Cloud Guard.
Dopo aver abilitato Cloud Guard, puoi visualizzare e risolvere i problemi di sicurezza rilevati. Vedere Elaborazione dei problemi segnalati.
Zone di sicurezza
L'uso delle zone di sicurezza garantisce che le risorse presenti nei volumi a blocchi siano conformi alle procedure ottimali di sicurezza.
Una zona di sicurezza è associata a uno o più compartimenti e a una ricetta della zona di sicurezza. Quando crei e aggiorni le risorse nel compartimento di una zona di sicurezza, Oracle Cloud Infrastructure convalida queste operazioni rispetto alla lista dei criteri della zona di sicurezza nella ricetta. Se un criterio nella ricetta viene violato, l'operazione viene negata. I criteri della zona di sicurezza riportati di seguito sono disponibili per le risorse nel volume a blocchi.
-
deny block_volume_not_in_security_zone_attach_to_instance_in_security_zone -
deny block_volume_in_security_zone_attach_to_instance_not_in_security_zone -
deny boot_volume_not_in_security_zone_attach_to_instance_in_security_zone -
deny boot_volume_in_security_zone_attach_to_instance_not_in_security_zone -
deny attached_block_volume_not_in_security_zone_move_to_compartment_in_security_zone -
deny attached_boot_volume_not_in_security_zone_move_to_compartment_in_security_zone -
deny block_volume_without_vault_key -
deny boot_volume_without_vault_key
Per una lista di tutti i criteri delle zone di sicurezza, vedere Criteri delle zone di sicurezza.
Per spostare le risorse esistenti in un compartimento che si trova in una zona di sicurezza, le risorse devono essere conformi a tutti i criteri della zona di sicurezza nella ricetta della zona. Allo stesso modo, le risorse in una zona di sicurezza non possono essere spostate in un compartimento esterno alla zona di sicurezza perché potrebbero essere meno sicure. Vedere Gestione delle zone di sicurezza.
Cifratura dati
Il servizio per volumi a blocchi esegue sempre la cifratura di tutti i volumi a blocchi, i volumi di avvio e i backup dei volumi in archivio utilizzando l'algoritmo AES (Advanced Encryption Standard) con cifratura a 256 bit. È possibile utilizzare una chiave di cifratura fornita da Oracle o una chiave personalizzata nel servizio Vault. È inoltre possibile cifrare i volumi di dati utilizzando strumenti quali dm-crypt, veracrypt e Bit-Locker.
Per impostazione predefinita, tutti i volumi e i relativi backup vengono cifrati utilizzando le chiavi di cifratura fornite da Oracle. Ogni volta che un volume viene duplicato o ripristinato da un backup, al volume viene assegnata una nuova chiave di cifratura univoca.
Cifratura dei volumi con il servizio Vault
Sebbene le chiavi di cifratura predefinite possano essere generate automaticamente quando si creano determinate risorse di Oracle Cloud Infrastructure, si consiglia di creare e gestire le proprie chiavi di cifratura personalizzate nel servizio Vault.
Un vault è un'entità logica che memorizza le chiavi di cifratura utilizzate per proteggere i dati. A seconda della modalità di protezione, le chiavi vengono memorizzate sul server o su moduli di sicurezza hardware (HSM) ad alta disponibilità e durata. I nostri HSM soddisfano la certificazione di sicurezza FIPS (Federal Information Processing Standards) 140-2 Security Level 3. Vedere Gestione dei vault e Gestione delle chiavi.
Crea e ruota le chiavi di cifratura nel servizio Vault per proteggere le risorse presenti nel volume a blocchi. Vedere Creazione di un volume a blocchi e Assegnazione di una chiave a un volume a blocchi.
A ogni chiave di cifratura master viene assegnata automaticamente una versione della chiave. Quando si ruota una chiave, il servizio Vault genera una nuova versione della chiave. La rotazione periodica delle chiavi limita la quantità di dati cifrati o firmati da una versione della chiave. Se una chiave è sempre inclusa, la rotazione delle chiavi riduce il rischio per i tuoi dati. Vedere Gestione delle chiavi.
Si consiglia di utilizzare i criteri IAM per limitare in modo rigoroso la creazione, la rotazione e l'eliminazione delle chiavi di cifratura. Vedere Dettagli per il servizio Vault.
Cifratura dei volumi non root con dm-crypt
dm-crypt è un meccanismo di cifratura a livello kernel (parte della struttura devicemapper di Linux) per fornire volumi cifrati. Crittografa i dati passati dal file system (ad esempio, ext4 e NTFS) e li memorizza su un dispositivo di memorizzazione in formato LUKS (Linux Unified Key Setup).
I volumi cifrati possono essere memorizzati in un disco completo, in una partizione disco, in un volume logico o in uno storage basato su file creato utilizzando dispositivi di loopback. Cryptsetup è la utility a livello utente utilizzata per gestire dm-crypt e utilizzata per cifrare partizioni e file. dm-crypt utilizza le API crypto di Linux per le routine di cifratura.
Se è necessario accedere al volume cifrato:
cryptsetup luksOpen /dev/sdb <dev_name> --key-file=/home/opc/keyfile
mount /dev/mapper/<dev_name> /home/encrypt_fs
Se si perde il file chiave o se il file chiave o la passphrase vengono danneggiati, non è possibile decifrare il volume cifrato. Il risultato è una perdita permanente di dati. Si consiglia di memorizzare copie permanenti del file chiave in un host on premise.
Montaggio remoto dei volumi di dati crittografati con dm-crypt
I passi riportati di seguito presuppongono che il file di chiavi si trovi in un host in locale (SRC_IP) e che <OCI_SSH_KEY> sia la chiave privata SSH dell'istanza.
Durabilità dei dati
Esegui backup periodici dei tuoi dati nel volume a blocchi. Si consiglia di concedere a un set minimo di utenti e gruppi l'autorizzazione per eliminare i backup.
Per ridurre al minimo la perdita di dati causata da eliminazioni o danneggiamenti, si consiglia di eseguire backup periodici dei volumi. Oracle Cloud Infrastructure consente backup pianificati automatizzati. Per ulteriori informazioni sui backup pianificati, vedere Backup basati su criteri.
Per ridurre al minimo la perdita di dati causata da eliminazioni involontarie da parte di un utente autorizzato o da eliminazioni dannose, si consiglia di concedere le autorizzazioni VOLUME_DELETE, VOLUME_ATTACHMENT_DELETE e VOLUME_BACKUP_DELETE a un set minimo possibile di utenti e gruppi IAM. Concedere le autorizzazioni DELETE solo agli amministratori della tenancy e del compartimento.
Audit
Individua i log di accesso e altri dati di sicurezza per il volume a blocchi.
Il servizio di audit registra automaticamente tutte le chiamate API alle risorse Oracle Cloud Infrastructure. È possibile raggiungere gli obiettivi di sicurezza e conformità utilizzando il servizio di audit per monitorare tutte le attività utente all'interno della tenancy. Poiché tutte le chiamate alla console, all'SDK e alla riga di comando (CLI) passano attraverso le nostre API, viene inclusa tutta l'attività da tali origini. I record di audit sono disponibili tramite un'interfaccia API di query autenticata e filtrabile oppure possono essere recuperati come file in batch dallo storage degli oggetti. I contenuti del log di audit includono l'attività che si è verificata, l'utente che l'ha avviata, la data e l'ora della richiesta, nonché l'IP di origine, l'user agent e le intestazioni HTTP della richiesta. Vedere Visualizzazione degli eventi del log di audit.
{
"datetime": 1642993213028,
"logContent": {
"data": {
"additionalDetails": {
"X-Real-Port": 55984
},
"availabilityDomain": "AD3",
"compartmentId": "ocid1.compartment.oc1..<unique_ID>",
"compartmentName": "mycompartment",
"definedTags": null,
"eventGroupingId": "<unique_ID>",
"eventName": "ListBootVolumes",
"freeformTags": null,
"identity": {
"authType": null,
"callerId": null,
"callerName": null,
"consoleSessionId": null,
"credentials": "<key>",
"ipAddress": "<IP_address>",
"principalId": "<user_ID>",
"principalName": "<user_name>",
"tenantId": "ocid1.tenancy.oc1..<unique_ID>",
"userAgent": "Oracle-JavaSDK/1.37.1 (Linux/4.14.35-2047.510.4.1.el7uek.x86_64; Java/1.8.0_301; Java HotSpot(TM) 64-Bit Server VM GraalVM EE 20.3.3/25.301-b09-jvmci-20.3-b18)"
},
"message": "ListBootVolumes succeeded",
"request": {
"action": "GET",
"headers": {
"Accept": [
"application/json"
],
"Authorization": [
"Signature headers=\"date (request-target) host\",keyId=<key>"
],
"Connection": [
"keep-alive"
],
"Date": [
"Mon, 24 Jan 2022 03:00:12 GMT"
],
"User-Agent": [
"Oracle-JavaSDK/1.37.1 (Linux/4.14.35-2047.510.4.1.el7uek.x86_64; Java/1.8.0_301; Java HotSpot(TM) 64-Bit Server VM GraalVM EE 20.3.3/25.301-b09-jvmci-20.3-b18)"
],
"opc-client-info": [
"Oracle-JavaSDK/1.37.1"
],
"opc-request-id": [
"<unique_ID>"
]
},
"id": "<unique_ID>",
"parameters": {
"availabilityDomain": [
"EMIr:PHX-AD-3"
],
"compartmentId": [
"ocid1.compartment.oc1..<unique_ID>"
],
"limit": [
"1000"
]
},
"path": "/20160918/bootVolumes"
},
"resourceId": null,
"response": {
"headers": {
"Connection": [
"close"
],
"Content-Length": [
"2"
],
"Content-Type": [
"application/json"
],
"Date": [
"Mon, 24 Jan 2022 03:00:13 GMT"
],
"X-Content-Type-Options": [
"nosniff"
],
"opc-request-id": [
"<unique_ID>"
]
},
"message": null,
"payload": {},
"responseTime": "2022-01-24T03:00:13.028Z",
"status": "200"
},
"stateChange": {
"current": null,
"previous": null
}
},
"dataschema": "2.0",
"id": "<unique_ID>",
"oracle": {
"compartmentid": "ocid1.compartment.oc1..<unique_ID>",
"ingestedtime": "2022-01-24T03:00:45.483Z",
"loggroupid": "_Audit",
"tenantid": "ocid1.tenancy.oc1..<unique_ID>"
},
"source": "",
"specversion": "1.0",
"time": "2022-01-24T03:00:13.028Z",
"type": "com.oraclecloud.BlockVolumes.ListBootVolumes"
}
}Se Cloud Guard è stato abilitato nella tenancy, viene segnalato qualsiasi attività utente che costituisce un potenziale problema di sicurezza. Quando rileva un problema, Cloud Guard suggerisce azioni correttive. Inoltre, puoi configurare Cloud Guard in modo che esegua automaticamente determinate azioni. Vedere la Guida introduttiva a Cloud Guard e l'elaborazione dei problemi segnalati.