Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Configurazione di IPSec mediante l'autenticazione tramite certificato
Gli argomenti seguenti forniscono istruzioni per configurare la crittografia IPSec utilizzando l'autenticazione con certificato su un file system FSx for ONTAP e un client che esegue Libreswan IPSec. Questa soluzione utilizza AWS Certificate Manager e Autorità di certificazione privata AWS per creare un'autorità di certificazione privata e per generare i certificati.
I passaggi di alto livello per configurare la crittografia IPsec utilizzando l'autenticazione dei certificati su FSx per i file system ONTAP e i client connessi sono i seguenti:
Disponi di un'autorità di certificazione per l'emissione dei certificati.
Genera ed esporta certificati CA per il file system e il client.
Installa il certificato e configura IPSec sull'istanza del client.
Installa il certificato e configura IPSec sul tuo file system.
Definisci il database delle politiche di sicurezza (SPD).
Configura IPSec per l'accesso di più client.
Creazione e installazione di certificati CA
Per l'autenticazione dei certificati, è necessario generare e installare i certificati da un'autorità di certificazione sul file system FSx for ONTAP e sui client che accederanno ai dati sul file system. L'esempio seguente viene utilizzato Autorità di certificazione privata AWS per configurare un'autorità di certificazione privata e generare i certificati da installare sul file system e sul client. Utilizzando Autorità di certificazione privata AWS, è possibile creare una gerarchia interamente AWS ospitata di autorità di certificazione (CA) principali e subordinate per uso interno da parte dell'organizzazione. Questo processo è composto da cinque fasi:
Crea un'autorità di certificazione (CA) privata utilizzando AWS Private CA
Emetti e installa il certificato principale sulla CA privata
Richiedi un certificato privato AWS Certificate Manager per il tuo file system e i tuoi client
Esporta il certificato per il file system e i client.
Per ulteriori informazioni, vedere Private CA Administration nella Guida Autorità di certificazione privata AWS per l'utente.
Per creare la CA privata principale
Quando si crea una CA, è necessario specificare la configurazione della CA in un file fornito. Il comando seguente utilizza l'editor di testo Nano per creare il
ca_config.txtfile, che specifica le seguenti informazioni:Il nome dell'algoritmo
L'algoritmo di firma utilizzato dalla CA per firmare
X.500 informazioni sull'oggetto
$ >nano ca_config.txtViene visualizzato l'editor di testo.
Modifica il file con le specifiche per la tua CA.
{ "KeyAlgorithm":"RSA_2048", "SigningAlgorithm":"SHA256WITHRSA", "Subject":{ "Country":"US", "Organization":"Example Corp", "OrganizationalUnit":"Sales", "State":"WA", "Locality":"Seattle", "CommonName":"*.ec2.internal" } }Salva e chiudi il file, uscendo dall'editor di testo. Per ulteriori informazioni, vedere Procedura per la creazione di una CA nella Guida per l' Autorità di certificazione privata AWS utente.
Usa il comando AWS Private CA CLI create-certificate-authority per creare una CA privata.
~/home >aws acm-pca create-certificate-authority \ --certificate-authority-configuration file://ca_config.txt \ --certificate-authority-type "ROOT" \ --idempotency-token 01234567 --regionaws-regionIn caso di successo, questo comando restituisce l'Amazon Resource Name (ARN) della CA.
{ "CertificateAuthorityArn": "arn:aws:acm-pca:aws-region:111122223333:certificate-authority/12345678-1234-1234-1234-123456789012" }
Per creare e installare un certificato per la tua CA root privata (AWS CLI)
Genera una richiesta di firma del certificato (CSR) utilizzando il comando
get-certificate-authority-csrAWS CLI.$aws acm-pca get-certificate-authority-csr \ --certificate-authority-arn arn:aws:acm-pca:aws-region:111122223333:certificate-authority/12345678-1234-1234-1234-123456789012 \ --output text \ --endpoint https://acm-pca.aws-region.amazonaws.com \ --region eu-west-1 > ca.csrIl file risultante
ca.csr, un file PEM codificato in formato base64, ha il seguente aspetto.-----BEGIN CERTIFICATE----- MIICiTCCAfICCQD6m7oRw0uXOjANBgkqhkiG9w0BAQUFADCBiDELMAkGA1UEBhMC VVMxCzAJBgNVBAgTAldBMRAwDgYDVQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBbWF6 b24xFDASBgNVBAsTC0lBTSBDb25zb2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMxHzAd BgkqhkiG9w0BCQEWEG5vb25lQGFtYXpvbi5jb20wHhcNMTEwNDI1MjA0NTIxWhcN MTIwNDI0MjA0NTIxWjCBiDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAldBMRAwDgYD VQQHEwdTZWF0dGxlMQ8wDQYDVQQKEwZBbWF6b24xFDASBgNVBAsTC0lBTSBDb25z b2xlMRIwEAYDVQQDEwlUZXN0Q2lsYWMxHzAdBgkqhkiG9w0BCQEWEG5vb25lQGFt YXpvbi5jb20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAMaK0dn+a4GmWIWJ 21uUSfwfEvySWtC2XADZ4nB+BLYgVIk60CpiwsZ3G93vUEIO3IyNoH/f0wYK8m9T rDHudUZg3qX4waLG5M43q7Wgc/MbQITxOUSQv7c7ugFFDzQGBzZswY6786m86gpE Ibb3OhjZnzcvQAaRHhdlQWIMm2nrAgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAtCu4 nUhVVxYUntneD9+h8Mg9q6q+auNKyExzyLwaxlAoo7TJHidbtS4J5iNmZgXL0Fkb FFBjvSfpJIlJ00zbhNYS5f6GuoEDmFJl0ZxBHjJnyp378OD8uTs7fLvjx79LjSTb NYiytVbZPQUQ5Yaxu2jXnimvw3rrszlaEXAMPLE= -----END CERTIFICATE-----Per ulteriori informazioni, vedere Installazione di un certificato CA root nella Guida per l'utente. Autorità di certificazione privata AWS
Usa il
issue-certificateAWS CLI comando per emettere e installare il certificato root sulla tua CA privata.$aws acm-pca issue-certificate \ --certificate-authority-arn arn:aws:acm-pca:aws-region:111122223333:certificate-authority/12345678-1234-1234-1234-123456789012 \ --csr file://ca.csr \ --signing-algorithm SHA256WITHRSA \ --template-arn arn:aws:acm-pca:::template/RootCACertificate/V1 \ --validity Value=3650,Type=DAYS --regionaws-region-
Scarica il certificato principale utilizzando il
get-certificateAWS CLI comando.$aws acm-pca get-certificate \ --certificate-authority-arn arn:aws:acm-pca:aws-region:111122223333:certificate-authority/12345678-1234-1234-1234-123456789012 \ --certificate-arn arn:aws:acm-pca:aws-region:486768734100:certificate-authority/12345678-1234-1234-1234-123456789012/certificate/abcdef0123456789abcdef0123456789 \ --output text --regionaws-region> rootCA.pem Installa il certificato root sulla tua CA privata usando il
import-certificate-authority-certificateAWS CLI comando.$aws acm-pca import-certificate-authority-certificate \ --certificate-authority-arn arn:aws:acm-pca:aws-region:111122223333:certificate-authority/12345678-1234-1234-1234-123456789012 \ --certificate file://rootCA.pem --regionaws-region
Genera ed esporta il file system e il certificato client
Usa il
request-certificateAWS CLI comando per richiedere un AWS Certificate Manager certificato da utilizzare sul tuo file system e sui tuoi client.$aws acm request-certificate \ --domain-name *.ec2.internal \ --idempotency-token 12345 \ --regionaws-region\ --certificate-authority-arn arn:aws:acm-pca:aws-region:111122223333:certificate-authority/12345678-1234-1234-1234-123456789012Se la richiesta ha esito positivo, viene restituito l'ARN del certificato emesso.
-
Per motivi di sicurezza, è necessario assegnare una passphrase per la chiave privata durante l'esportazione. Create una passphrase e memorizzatela in un file denominato
passphrase.txt -
Usa il
export-certificateAWS CLI comando per esportare il certificato privato emesso in precedenza. Il file esportato contiene il certificato, la catena di certificati e la chiave RSA privata crittografata a 2048 bit associata alla chiave pubblica incorporata nel certificato. Per motivi di sicurezza, è necessario assegnare una passphrase per la chiave privata durante l'esportazione. L'esempio seguente è per un'istanza Linux EC2.$aws acm export-certificate \ --certificate-arn arn:aws:acm:aws-region:111122223333:certificate/12345678-1234-1234-1234-123456789012 \ --passphrase $(cat passphrase.txt | base64) --regionaws-region> exported_cert.json Utilizzate i seguenti
jqcomandi per estrarre la chiave privata e il certificato dalla risposta JSON.$passphrase=$(cat passphrase.txt | base64) cat exported_cert.json | jq -r .PrivateKey > prv.key cat exported_cert.json | jq -r .Certificate > cert.pem-
Usa il
opensslcomando seguente per decrittografare la chiave privata dalla risposta JSON. Dopo aver inserito il comando, viene richiesta la passphrase.$openssl rsa -in prv.key -passin pass:$passphrase -out decrypted.key
Installazione e configurazione di Libreswan IPSec su un client Amazon Linux 2
Le seguenti sezioni forniscono istruzioni per l'installazione e la configurazione di Libreswan IPSec su un'istanza Amazon EC2 che esegue Amazon Linux 2.
Per installare e configurare Libreswan
Connettiti alla tua istanza EC2 tramite SSH. Per istruzioni specifiche su come eseguire questa operazione, consulta Connessione alla tua istanza Linux utilizzando un client SSH nella Amazon Elastic Compute Cloud User Guide for Linux Instances.
Esegui il seguente comando per l'installazione:
libreswan$sudo yum install libreswan(Facoltativo) Quando si verifica IPSec in una fase successiva, queste proprietà potrebbero essere contrassegnate senza queste impostazioni. Ti consigliamo di testare prima la configurazione senza queste impostazioni. Se la connessione presenta problemi, torna a questo passaggio e apporta le seguenti modifiche.
Al termine dell'installazione, utilizzate il vostro editor di testo preferito per aggiungere le seguenti voci al
/etc/sysctl.conffile.net.ipv4.ip_forward=1 net.ipv4.conf.all.accept_redirects = 0 net.ipv4.conf.all.secure_redirects = 0 net.ipv4.conf.all.send_redirects = 0 net.ipv4.conf.default.accept_redirects = 0 net.ipv4.conf.default.send_redirects = 0 net.ipv4.conf.lo.accept_redirects = 0 net.ipv4.conf.lo.send_redirects = 0 net.ipv4.conf.all.rp_filter = 0 net.ipv4.conf.default.rp_filter = 0 net.ipv4.conf.eth0.rp_filter = 0Salvate le modifiche e uscite dall'editor di testo.
Applica le modifiche.
$sudo sysctl -pVerifica la configurazione IPSec.
$sudo ipsec verifyVerifica che la versione installata
Libreswansia in esecuzione.Inizializza il database NSS IPSec.
$sudo ipsec checknss
Per installare il certificato sul client
Copia il certificato generato per il client nella directory di lavoro sull'istanza EC2. Utente corrente
Esporta il certificato generato in precedenza in un formato compatibile con
libreswan.$openssl pkcs12 -export -in cert.pem -inkey decrypted.key \ -certfile rootCA.pem -out certkey.p12 -name fsxImporta la chiave riformattata, fornendo la passphrase quando richiesto.
$sudo ipsec import certkey.p12Crea un file di configurazione IPSec utilizzando l'editor di testo preferito.
$sudo cat /etc/ipsec.d/nfs.confAggiungete le seguenti voci al file di configurazione:
conn fsxn authby=rsasig left=172.31.77.6 right=198.19.254.13 auto=start type=transport ikev2=insist keyexchange=ike ike=aes256-sha2_384;dh20 esp=aes_gcm_c256 leftcert=fsx leftrsasigkey=%cert leftid=%fromcert rightid=%fromcert rightrsasigkey=%cert
IPSec verrà avviato sul client dopo aver configurato IPSec sul file system.
Configurazione di IPSec sul file system
Questa sezione fornisce istruzioni sull'installazione del certificato sul file system FSx for ONTAP e sulla configurazione di IPSec.
Per installare il certificato sul file system
Copia i file root certificate ()
rootCA.pem), client certificate (cert.pem) e key (decrypted.key) decrittografati nel tuo file system. È necessario conoscere la passphrase del certificato.Per accedere alla ONTAP CLI, stabilisci una sessione SSH sulla porta di gestione del file system Amazon FSx for NetApp ONTAP o SVM eseguendo il seguente comando. Sostituisci
con l'indirizzo IP della porta di gestione del file system.management_endpoint_ip[~]$ssh fsxadmin@management_endpoint_ipPer ulteriori informazioni, consulta Gestione dei file system con ONTAP CLI.
Utilizzalo cat su un client (non sul tuo file system) per elencare il
rootCA.pemcontenuto deidecrypted.keyfilecert.peme in modo da poter copiare l'output di ogni file e incollarlo quando richiesto nei passaggi seguenti.$ >cat cert.pemCopia il contenuto del certificato.
È necessario installare tutti i certificati CA utilizzati durante l'autenticazione reciproca, inclusi i CA ONTAP-side sia sul lato client, nella gestione dei ONTAP certificati, a meno che non siano già installati (come nel caso di una Root-CA autofirmata ONTAP).
Usa il comando
security certificate installNetApp CLI come segue per installare il certificato client:FSxID123:: >security certificate install -vserverdr-type client -cert-name ipsec-client-certPlease enter Certificate: Press <Enter> when doneIncolla il contenuto del
cert.pemfile che hai copiato in precedenza e premi Invio.Please enter Private Key: Press <Enter> when doneIncolla il contenuto del
decrypted.keyfile e premi invio.Do you want to continue entering root and/or intermediate certificates {y|n}:Inserisci
nper completare l'immissione del certificato cliente.Crea e installa un certificato da utilizzare da SVM. La CA emittente di questo certificato deve essere già installata ONTAP e aggiunta a IPSec.
Utilizzate il comando seguente per installare il certificato principale.
FSxID123:: >security certificate install -vserverdr-type server-ca -cert-name ipsec-ca-certPlease enter Certificate: Press <Enter> when doneIncolla il contenuto del
rootCA.pemfile e premi invio.Per garantire che la CA installata si trovi all'interno del percorso di ricerca della CA IPSec durante l'autenticazione, aggiungi le CA di gestione dei ONTAP certificati al modulo IPSec utilizzando il comando «security ipsec ca-certificate add».
Immettete il seguente comando per aggiungere il certificato principale.
FSxID123:: >security ipsec ca-certificate add -vserverdr-ca-certs ipsec-ca-certImmettete il seguente comando per creare la politica IPSec richiesta nel database delle politiche di sicurezza (SPD).
security ipsec policy create -vserverdr-namepolicy-name-local-ip-subnets198.19.254.13/32-remote-ip-subnets172.31.0.0/16-auth-method PKI -action ESP_TRA -cipher-suite SUITEB_GCM256 -cert-name ipsec-client-cert -local-identity "CN=*.ec2.internal" -remote-identity "CN=*.ec2.internal"Utilizzate il comando seguente per visualizzare i criteri IPSec da confermare per il file system.
FSxID123:: >security ipsec policy show -vserverdr-instanceVserver: dr Policy Name: promise Local IP Subnets: 198.19.254.13/32 Remote IP Subnets: 172.31.0.0/16 Local Ports: 0-0 Remote Ports: 0-0 Protocols: any Action: ESP_TRA Cipher Suite: SUITEB_GCM256 IKE Security Association Lifetime: 86400 IPsec Security Association Lifetime: 28800 IPsec Security Association Lifetime (bytes): 0 Is Policy Enabled: true Local Identity: CN=*.ec2.internal Remote Identity: CN=*.ec2.internal Authentication Method: PKI Certificate for Local Identity: ipsec-client-cert
Avviare IPSec sul client
Ora IPSec è configurato sia sul file system FSx for ONTAP che sul client, è possibile avviare IPSec sul client.
Connettiti al tuo sistema client tramite SSH.
Avviare IPSec.
$sudo ipsec startControlla lo stato di IPSec.
$sudo ipsec statusMonta un volume sul tuo file system.
$sudo mount -t nfs198.19.254.13:/benchmark/home/ec2-user/acm/drVerifica la configurazione IPSec mostrando la connessione crittografata sul file system FSx for ONTAP.
FSxID123:: >security ipsec show-ikesa -node FsxId123FsxId08ac16c7ec2781a58::> security ipsec show-ikesa -node FsxId08ac16c7ec2781a58-01 Policy Local Remote Vserver Name Address Address Initator-SPI State ----------- ------ --------------- --------------- ---------------- ----------- drpolicy-name198.19.254.13 172.31.77.6 551c55de57fe8976 ESTABLISHED fsxpolicy-name198.19.254.38 172.31.65.193 4fd3f22c993e60c5 ESTABLISHED 2 entries were displayed.
Configurazione di IPSec per più client
Quando un numero limitato di client deve sfruttare IPSec, è sufficiente utilizzare una singola voce SPD per ogni client. Tuttavia, quando centinaia o addirittura migliaia di client devono sfruttare IPsec, si consiglia di utilizzare la configurazione IPSec per più client.
FSx for ONTAP supporta la connessione di più client su più reti a un unico indirizzo IP SVM con IPSec abilitato. È possibile eseguire questa operazione utilizzando la subnet configurazione o la Allow all clients configurazione, spiegate nelle seguenti procedure:
Per configurare IPsec per più client utilizzando una configurazione di sottorete
Per consentire a tutti i client di accedere a una particolare sottorete (192.168.134). 0/24 ad esempio) per connettersi a un singolo indirizzo IP SVM utilizzando una singola voce di policy SPD, è necessario specificare il modulo in subnet. remote-ip-subnets Inoltre, è necessario specificare il remote-identity campo con l'identità corretta sul lato client.
Importante
Quando si utilizza l'autenticazione tramite certificato, ogni cliente può utilizzare il proprio certificato univoco o un certificato condiviso per l'autenticazione. FSx for ONTAP IPSec verifica la validità del certificato in base alle CA installate nel suo trust store locale. FSx for ONTAP supporta anche il controllo dell'elenco di revoca dei certificati (CRL).
Per accedere alla ONTAP CLI, stabilisci una sessione SSH sulla porta di gestione del file system Amazon FSx for NetApp ONTAP o SVM eseguendo il seguente comando. Sostituisci
con l'indirizzo IP della porta di gestione del file system.management_endpoint_ip[~]$ssh fsxadmin@management_endpoint_ipPer ulteriori informazioni, consulta Gestione dei file system con ONTAP CLI.
Utilizzate il comando
security ipsec policy createNetApp ONTAP CLI come segue, sostituendo isamplevalori con i vostri valori specifici.FsxId123456::>security ipsec policy create -vserversvm_name-namepolicy_name\ -local-ip-subnets192.168.134.34/32-remote-ip-subnets192.168.134.0/24\ -local-ports2049-protocolstcp-auth-method PSK \ -cert-namemy_nfs_server_cert-local-identityontap_side_identity\ -remote-identityclient_side_identity
Per configurare IPSec per più client utilizzando una configurazione Consenti tutti i client
Per consentire a qualsiasi client, indipendentemente dall'indirizzo IP di origine, di connettersi all'indirizzo IPsec-enabled IP SVM, usa la 0.0.0.0/0 wild card quando specifichi il campo. remote-ip-subnets
Inoltre, è necessario specificare il remote-identity campo con l'identità corretta sul lato client. Per l'autenticazione tramite certificato, puoi inserireANYTHING.
Inoltre, quando il file 0.0.0. 0/0 viene utilizzata una wild card, è necessario configurare un numero di porta locale o remoto specifico da utilizzare. Ad esempio, la porta NFS 2049.
Per accedere alla ONTAP CLI, stabilisci una sessione SSH sulla porta di gestione del file system Amazon FSx for NetApp ONTAP o SVM eseguendo il seguente comando. Sostituisci
con l'indirizzo IP della porta di gestione del file system.management_endpoint_ip[~]$ssh fsxadmin@management_endpoint_ipPer ulteriori informazioni, consulta Gestione dei file system con ONTAP CLI.
Utilizzate il comando
security ipsec policy createNetApp ONTAP CLI come segue, sostituendo isamplevalori con i vostri valori specifici.FsxId123456::>security ipsec policy create -vserversvm_name-namepolicy_name\ -local-ip-subnets192.168.134.34/32-remote-ip-subnets 0.0.0.0/0 \ -local-ports2049-protocolstcp-auth-method PSK \ -cert-namemy_nfs_server_cert-local-identityontap_side_identity\ -local-ports2049-remote-identityclient_side_identity