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 utilizzando l'autenticazione dei certificati
I seguenti argomenti forniscono istruzioni per configurare la crittografia IPSec utilizzando l'autenticazione dei certificati su un file system FSx for ONTAP e un client che esegue Libreswan IPSec. Questa soluzione utilizza AWS Certificate Manager e AWS Autorità di certificazione privata 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 sui file system FSx for ONTAP e sui client connessi sono i seguenti:
Disponete di un'autorità di certificazione per il rilascio 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.
Definire il database delle politiche di sicurezza (SPD).
Configurare IPSec per l'accesso a più client.
Creazione e installazione di certificati CA
Per l'autenticazione dei certificati, è necessario generare e installare 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 utilizza AWS Autorità di certificazione privata la configurazione di un'autorità di certificazione privata e la generazione dei certificati da installare sul file system e sul client. Utilizzando AWS Autorità di certificazione privata, è possibile creare una gerarchia interamente AWS ospitata di autorità di certificazione (CA) principali e subordinate per uso interno da parte dell'organizzazione. Questo processo prevede 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, consulta la sezione Amministrazione privata della CA nella Guida AWS Autorità di certificazione privata per l'utente.
Per creare la CA privata principale
Quando si crea una CA, è necessario specificare la configurazione della CA in un file fornito dall'utente. 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'argomento
$ >nano ca_config.txtViene visualizzato l'editor di testo.
Modifica il file con le specifiche della tua CA.
{ "KeyAlgorithm":"RSA_2048", "SigningAlgorithm":"SHA256WITHRSA", "Subject":{ "Country":"US", "Organization":"Example Corp", "OrganizationalUnit":"Sales", "State":"WA", "Locality":"Seattle", "CommonName":"*.ec2.internal" } }Salvate e chiudete il file, uscendo dall'editor di testo. Per ulteriori informazioni, vedere Procedura per la creazione di una CA nella Guida per l' AWS Autorità di certificazione privata utente.
Utilizza 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 genera 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. AWS Autorità di certificazione privata
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 utilizzando 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
Utilizzate il
request-certificateAWS CLI comando per richiedere un AWS Certificate Manager certificato da utilizzare sul file system e sui 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 riguarda 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 Usa 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 immesso 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
Connect alla tua istanza EC2 tramite SSH. Per istruzioni specifiche su come eseguire questa operazione, consulta Connect 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) Durante la verifica di IPSec in un passaggio successivo, 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 l'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 -pVerificare la configurazione IPSec.
$sudo ipsec verifyVerifica che la versione installata
Libreswansia in esecuzione.Inizializza il database IPSec NSS.
$sudo ipsec checknss
Per installare il certificato sul client
Copia il certificato che hai 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 richiesta.
$sudo ipsec import certkey.p12Crea un file di configurazione IPSec utilizzando l'editor di testo preferito.
$sudo cat /etc/ipsec.d/nfs.confAggiungere 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
Avvierai IPSec sul client dopo aver configurato IPSec sul tuo 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 del certificato principale ()
rootCA.pem), del certificato client (cert.pem) e della chiave decrittografata (decrypted.key) nel file system. Dovrai 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 comando seguente. 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 la ONTAP CLI.
Utilizzatelo cat su un client (non sul file system in uso) per elencare il contenuto dei
decrypted.keyfilecert.pemerootCA.pem, in modo da 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 entrambi i certificati CA ONTAP-side e quelli lato client, nella gestione dei ONTAP certificati, a meno che non siano già installati (come nel caso di una ROOT-CA autofirmata ONTAP).
Utilizzate 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}:Invio
nper completare l'immissione del certificato client.Crea e installa un certificato da utilizzare da parte della SVM. La CA emittente di questo certificato deve essere già installata ONTAP e aggiunta a IPSec.
Utilizzare 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 rientri nel percorso di ricerca CA IPSec durante l'autenticazione, aggiungi le CA di gestione dei ONTAP certificati al modulo IPSec utilizzando il comando «security ipsec ca-certificate add».
Immettere il comando seguente per aggiungere il certificato root.
FSxID123:: >security ipsec ca-certificate add -vserverdr-ca-certs ipsec-ca-certImmettere il comando seguente 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"Utilizzare il comando seguente per mostrare la politica IPSec per la conferma del 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.
Connect al sistema client tramite SSH.
Avvia 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/drVerificate 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 con più client.
FSx for ONTAP supporta la connessione di più client su più reti a un singolo indirizzo IP SVM con IPSec abilitato. È possibile eseguire questa operazione utilizzando la subnet configurazione o la Allow all clients configurazione, illustrate 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 specificarla sotto forma di sottorete. remote-ip-subnets Inoltre, è necessario specificare il remote-identity campo con l'identità lato client corretta.
Importante
Quando si utilizza l'autenticazione tramite certificato, ogni client 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 della lista 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 comando seguente. 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 la ONTAP CLI.
Utilizzate il comando
security ipsec policy createNetApp ONTAP CLI come segue, sostituendosamplei valori 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 che consente l'accesso a tutti i client
Per consentire a qualsiasi client, indipendentemente dall'indirizzo IP di origine, di connettersi all'indirizzo IPsec-enabled IP SVM, utilizzate la 0.0.0.0/0 wild card quando specificate il campo. remote-ip-subnets
Inoltre, è necessario specificare il remote-identity campo con l'identità lato client corretta. Per l'autenticazione del certificato, puoi inserireANYTHING.
Inoltre, quando la versione 0.0.0. 0/0 Se si utilizza una wild card, è necessario configurare uno specifico numero di porta locale o remota 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 comando seguente. 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 la ONTAP CLI.
Utilizzate il comando
security ipsec policy createNetApp ONTAP CLI come segue, sostituendosamplei valori 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