Gerar e exportar certificados - Linux (strongSwan)
Este artigo mostra como criar um certificado raiz autoassinado e gerar certificados de cliente usando strongSwan. As etapas deste exercício ajudam a criar arquivos .pem de certificado. Se você precisar de arquivos .pfx e .cer , consulte as instruções do Windows-PowerShell .
Para conexões ponto a site, cada cliente VPN deve ter um certificado de cliente instalado localmente para se conectar. Além disso, as informações de chave pública do certificado raiz devem ser carregadas no Azure. Para obter mais informações, consulte Configuração ponto a site - autenticação de certificado.
Instale strongSwan
Os passos seguintes ajudam-no a instalar o strongSwan.
A seguinte configuração foi usada ao especificar comandos:
- Computador: Ubuntu Server 18.04
- Dependências: strongSwan
Use os seguintes comandos para instalar a configuração strongSwan necessária:
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
Instruções da CLI do Linux (strongSwan)
As etapas a seguir ajudam você a gerar e exportar certificados usando a CLI do Linux (strongSwan). Para obter mais informações, consulte Instruções adicionais para instalar a CLI do Azure.
Gere o certificado da autoridade de certificação.
ipsec pki --gen --outform pem > caKey.pem
ipsec pki --self --in caKey.pem --dn "CN=VPN CA" --ca --outform pem > caCert.pem
Imprima o certificado da autoridade de certificação no formato base64. Este é o formato suportado pelo Azure. Você carrega esse certificado no Azure como parte das etapas de configuração do P2S.
openssl x509 -in caCert.pem -outform der | base64 -w0 ; echo
Gere o certificado do usuário.
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"
Gere um pacote p12 contendo o certificado do usuário. Esse pacote será usado nas próximas etapas ao trabalhar com os arquivos de configuração do cliente.
openssl pkcs12 -in "${USERNAME}Cert.pem" -inkey "${USERNAME}Key.pem" -certfile caCert.pem -export -out "${USERNAME}.p12" -password "pass:${PASSWORD}"
Próximos passos
Continue com sua configuração ponto a site. Consulte Configurar clientes VPN P2S: autenticação de certificado - Linux.