本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
SSL 使用 的新憑證和私有金鑰重新設定 AWS CloudHSM (選用)
AWS CloudHSM 使用SSL憑證建立與硬體安全模組的連線 (HSM)。安裝用戶端時,會包含預設金鑰和SSL憑證。不過,您可以建立和使用自己的金鑰和 SSL 憑證。請注意,您將需要在初始化叢集時所建立的自簽憑證 (customerCA.crt
)。
在高層級,這個步驟分為兩個步驟:
-
建立私有金鑰,然後使用該金鑰來建立憑證簽署請求 (CSR)。使用發出憑證,即您在初始化叢集時建立的憑證,來簽署 CSR。
-
使用設定工具將金鑰和憑證複製到適當的目錄。
步驟 1. 建立金鑰、 CSR,然後簽署 CSR
用戶端 3 SDK 或用戶端 5 SDK 的步驟相同。
SSL 使用新憑證和私有金鑰重新設定
-
使用下列 OpenSSL 命令建立私有金鑰:
openssl genrsa -out ssl-client.key 2048
Generating RSA private key, 2048 bit long modulus
........+++
............+++
e is 65537 (0x10001)
-
使用下列 OpenSSL 命令來建立憑證簽署請求 (CSR)。將會詢問一連串有關憑證的問題。
openssl req -new -sha256 -key ssl-client.key -out ssl-client.csr
Enter pass phrase for ssl-client.key:
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:
State or Province Name (full name) []:
Locality Name (eg, city) [Default City]:
Organization Name (eg, company) [Default Company Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) []:
Email Address []:
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
-
CSR 使用您在初始化叢集時建立的customerCA.crt
憑證簽署 。
openssl x509 -req -days 3652 -in ssl-client.csr \
-CA customerCA.crt \
-CAkey customerCA.key \
-CAcreateserial \
-out ssl-client.crt
Signature ok
subject=/C=US/ST=WA/L=Seattle/O=Example Company/OU=sales
Getting CA Private Key
步驟 2. 啟用 SSL 的自訂 AWS CloudHSM
用戶端 3 SDK 或用戶端 5 SDK 的步驟不同。如需使用設定命令列工具的詳細資訊,請參閱 AWS CloudHSM 設定工具。
用戶端 3 SDK SSL的自訂
使用 Client 3 SDK 的設定工具來啟用自訂 SSL。如需針對用戶端 3 SDK 設定工具的詳細資訊,請參閱 AWS CloudHSM Client SDK 3 設定工具。
使用自訂憑證和金鑰與 Linux 上的 Client SDK 3 進行TLS用戶端伺服器相互身分驗證
-
將您的金鑰和憑證複製到適當的目錄。
sudo cp ssl-client.crt /opt/cloudhsm/etc
sudo cp ssl-client.key /opt/cloudhsm/etc
-
使用設定工具來指定 ssl-client.crt
和 ssl-client.key
。
sudo /opt/cloudhsm/bin/configure --ssl \
--pkey /opt/cloudhsm/etc/ssl-client.key
\
--cert /opt/cloudhsm/etc/ssl-client.crt
-
將 customerCA.crt
憑證新增至信任存放區。建立憑證主體名稱的雜湊。這會建立索引,以允許依該名稱來查詢憑證。
openssl x509 -in /opt/cloudhsm/etc/customerCA.crt -hash | head -n 1
1234abcd
建立目錄。
mkdir /opt/cloudhsm/etc/certs
建立檔案,其中包含憑證與雜湊名稱。
sudo cp /opt/cloudhsm/etc/customerCA.crt /opt/cloudhsm/etc/certs/1234abcd.0
用戶端 5 SDK SSL的自訂
使用任何 Client SDK 5 設定工具來啟用自訂 SSL。如需設定 Client 5 SDK 工具的詳細資訊,請參閱 AWS CloudHSM Client SDK 5 設定工具。
- PKCS #11 library
-
使用自訂憑證和金鑰與 Linux 上的 Client SDK 5 進行TLS用戶端伺服器相互身分驗證
-
將您的金鑰和憑證複製到適當的目錄。
$
sudo cp ssl-client.crt /opt/cloudhsm/etc
$
sudo cp ssl-client.key /opt/cloudhsm/etc
-
使用設定工具來指定 ssl-client.crt
和 ssl-client.key
。
$
sudo /opt/cloudhsm/bin/configure-pkcs11 \
--server-client-cert-file /opt/cloudhsm/etc/ssl-client.crt
\
--server-client-key-file /opt/cloudhsm/etc/ssl-client.key
使用自訂憑證和金鑰與 Windows 上的 Client SDK 5 進行TLS用戶端伺服器相互身分驗證
-
將您的金鑰和憑證複製到適當的目錄。
cp ssl-client.crt C:\ProgramData\Amazon\CloudHSM\ssl-client.crt
cp ssl-client.key C:\ProgramData\Amazon\CloudHSM\ssl-client.key
-
透過 PowerShell 解譯器,使用設定工具指定 ssl-client.crt
和 ssl-client.key
。
& "C:\Program Files\Amazon\CloudHSM\bin\configure-pkcs11.exe" `
--server-client-cert-file C:\ProgramData\Amazon\CloudHSM\ssl-client.crt
`
--server-client-key-file C:\ProgramData\Amazon\CloudHSM\ssl-client.key
- OpenSSL Dynamic Engine
-
使用自訂憑證和金鑰與 Linux 上的 Client SDK 5 進行TLS用戶端伺服器相互身分驗證
-
將您的金鑰和憑證複製到適當的目錄。
$
sudo cp ssl-client.crt /opt/cloudhsm/etc
sudo cp ssl-client.key /opt/cloudhsm/etc
-
使用設定工具來指定 ssl-client.crt
和 ssl-client.key
。
$
sudo /opt/cloudhsm/bin/configure-dyn \
--server-client-cert-file /opt/cloudhsm/etc/ssl-client.crt
\
--server-client-key-file /opt/cloudhsm/etc/ssl-client.key
- JCE provider
-
使用自訂憑證和金鑰與 Linux 上的 Client SDK 5 進行TLS用戶端伺服器相互身分驗證
-
將您的金鑰和憑證複製到適當的目錄。
$
sudo cp ssl-client.crt /opt/cloudhsm/etc
sudo cp ssl-client.key /opt/cloudhsm/etc
-
使用設定工具來指定 ssl-client.crt
和 ssl-client.key
。
$
sudo /opt/cloudhsm/bin/configure-jce \
--server-client-cert-file /opt/cloudhsm/etc/ssl-client.crt
\
--server-client-key-file /opt/cloudhsm/etc/ssl-client.key
使用自訂憑證和金鑰與 Windows 上的 Client SDK 5 進行TLS用戶端伺服器相互身分驗證
-
將您的金鑰和憑證複製到適當的目錄。
cp ssl-client.crt C:\ProgramData\Amazon\CloudHSM\ssl-client.crt
cp ssl-client.key C:\ProgramData\Amazon\CloudHSM\ssl-client.key
-
透過 PowerShell 解譯器,使用設定工具指定 ssl-client.crt
和 ssl-client.key
。
& "C:\Program Files\Amazon\CloudHSM\bin\configure-jce.exe" `
--server-client-cert-file C:\ProgramData\Amazon\CloudHSM\ssl-client.crt
`
--server-client-key-file C:\ProgramData\Amazon\CloudHSM\ssl-client.key
- CloudHSM CLI
-
使用自訂憑證和金鑰與 Linux 上的 Client SDK 5 進行TLS用戶端伺服器相互身分驗證
-
將您的金鑰和憑證複製到適當的目錄。
$
sudo cp ssl-client.crt /opt/cloudhsm/etc
sudo cp ssl-client.key /opt/cloudhsm/etc
-
使用設定工具來指定 ssl-client.crt
和 ssl-client.key
。
$
sudo /opt/cloudhsm/bin/configure-cli \
--server-client-cert-file /opt/cloudhsm/etc/ssl-client.crt
\
--server-client-key-file /opt/cloudhsm/etc/ssl-client.key
使用自訂憑證和金鑰與 Windows 上的 Client SDK 5 進行TLS用戶端伺服器相互身分驗證
-
將您的金鑰和憑證複製到適當的目錄。
cp ssl-client.crt C:\ProgramData\Amazon\CloudHSM\ssl-client.crt
cp ssl-client.key C:\ProgramData\Amazon\CloudHSM\ssl-client.key
-
透過 PowerShell 解譯器,使用設定工具指定 ssl-client.crt
和 ssl-client.key
。
& "C:\Program Files\Amazon\CloudHSM\bin\configure-cli.exe" `
--server-client-cert-file C:\ProgramData\Amazon\CloudHSM\ssl-client.crt
`
--server-client-key-file C:\ProgramData\Amazon\CloudHSM\ssl-client.key