Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
本文说明如何使用 strongSwan 创建自签名根证书以及生成客户端证书。 本练习中的步骤可帮助你创建证书 .pem 文件。 如果需要.pfx和.cer文件,请参阅Windows-PowerShell说明。
对于点到站点连接,每个 VPN 客户端都必须在本地安装一个客户端证书才能连接。 此外,必须将根证书公钥信息上传到 Azure。 有关详细信息,请参阅点到站点配置 - 证书身份验证。
以下步骤可帮助你安装 strongSwan。
指定命令时使用了以下配置:
- 计算机:Ubuntu Server 18.04
- 依赖项:strongSwan
使用以下命令安装所需的 strongSwan 配置:
sudo apt-get update
sudo apt-get upgrade
sudo apt install strongswan
sudo apt install strongswan-pki
sudo apt install libstrongswan-extra-plugins
sudo apt install libtss2-tcti-tabrmd0
以下步骤可帮助你使用 Linux CLI (strongSwan) 生成和导出证书。 有关详细信息,请参阅安装 Azure CLI 的其他说明。
生成 CA 证书。
ipsec pki --gen --outform pem > caKey.pem
ipsec pki --self --in caKey.pem --dn "CN=VPN CA" --ca --outform pem > caCert.pem
以 base64 格式打印 CA 证书,即 Azure 支持的格式。 按照 P2S 配置步骤,将此证书上传到 Azure。
openssl x509 -in caCert.pem -outform der | base64 -w0 ; echo
生成用户证书。
Nota
Azure 建议使用最安全的可用身份验证流。 本过程中介绍的身份验证流程需要非常高的信任度,并携带其他流中不存在的风险。 请仅在无法使用其他更安全的流(例如托管标识)时才使用此流。
export PASSWORD="password"
export USERNAME=$(hostnamectl --static)
ipsec pki --gen --outform pem > "${USERNAME}Key.pem"
ipsec pki --pub --in "${USERNAME}Key.pem" | ipsec pki --issue --cacert caCert.pem --cakey caKey.pem --dn "CN=${USERNAME}" --san "${USERNAME}" --flag clientAuth --outform pem > "${USERNAME}Cert.pem"
生成包含用户证书的 p12 捆绑包。 在后续步骤中使用客户端配置文件时将使用此捆绑包。
openssl pkcs12 -in "${USERNAME}Cert.pem" -inkey "${USERNAME}Key.pem" -certfile caCert.pem -export -out "${USERNAME}.p12" -password "pass:${PASSWORD}"
继续使用点到站点配置。 请参阅配置 P2S VPN 客户端:证书身份验证 - Linux。