Configurando a autenticação de cliente para site

Defina suas configurações de autenticação para os clientes VPN e servidor VPN. Certificados são gerenciados por meio do IBM Cloud® Secrets Manager.

Criando uma autorização de serviço para serviço do IAM

Para criar uma autorização de serviço a serviço do IAM para seu servidor VPN e IBM Cloud Secrets Manager, siga estas etapas:

Você também pode configurar a autorização de serviço a serviço do IAM na página de provisionamento do servidor VPN ou usar o painel lateral Editar autorização.

  1. No console IBM Cloud, acesse a página Manage authorizations(Gerenciar autorizações) e clique em Create (Criar ).
  2. Selecione VPC Infrastructure Services no menu. Em seguida, selecione Recurso baseado em atributos selecionados.
  3. Selecione Tipo de recurso > VPN do cliente para VPC.
  4. Para o serviço de destino, selecione Secrets Manager.
  5. Mantenha Todos os recursos selecionado Em seguida, marque a caixa de seleção SecretsReader..
  6. Clique em Autorizar.

Gerenciando o servidor VPN e os certificados de cliente

Importando um certificado no Secrets Manager

O procedimento a seguir usa o OpenVPN easy-rsa para gerar o servidor VPN e os certificados do cliente e, em seguida, importa esses certificados para o Secrets Manager. Para obter mais informações, consulte o README de iniciação rápida do Easy-RSA 3.

  1. Clone o repositório Easy-RSA 3 em sua pasta local:

    git clone https://github.com/OpenVPN/easy-rsa.git
    cd easy-rsa/easyrsa3
    
  2. Crie uma infraestrutura de chave pública (PKI) e uma autoridade de certificação (CA):

    ./easyrsa init-pki
    ./easyrsa build-ca nopass
    

    Verifique se o certificado da autoridade de certificação é gerado no caminho ./pki/ca.crt. Conforme descrito na próxima seção, ao importar os certificados do servidor ou do cliente para o Secrets Manager, o certificado usado para assinar outros certificados será exigido como certificado intermediário.

  3. Gerar um certificado de servidor VPN:

    ./easyrsa build-server-full vpn-server.vpn.ibm.com nopass
    

    Verifique se a chave pública do servidor VPN é gerada no caminho ./pki/issued/vpn-server.vpn.ibm.com.crt e se a chave privada está no caminho ./pki/private/vpn-server.vpn.ibm.com.key.

  4. Gerar um certificado de cliente VPN:

    ./easyrsa build-client-full client1.vpn.ibm.com nopass
    

    Verifique se a chave pública do cliente VPN é gerada no caminho ./pki/issued/client1.vpn.ibm.com.crt e se a chave privada está no caminho ./pki/private/client1.vpn.ibm.com.key.

  5. Se você precisar criar mais certificados de cliente VPN, repita a etapa 4.

Considerações importantes:

  • No exemplo anterior, o servidor VPN e os certificados de cliente são assinados pela mesma autoridade de certificação. Para usar autoridades de certificação diferentes para assinar o certificado do cliente, copie a pasta easyrsa3 em um novo caminho e siga as etapas 2 e 4.

  • Se você já tiver o certificado do servidor VPN de outras CAs, certifique-se de que o certificado tenha o uso de chave Estendido: TLS Web Client Authentication. É possível usar o seguinte comando para verificar as informações de certificado com base no conteúdo do arquivo de certificado codificado: cat YOUR-CERTIFICATE-FILE | openssl x509 -noout -text.

  • Se o certificado for usado como certificado de cliente VPN para autenticar o cliente, você deverá carregar o arquivo de certificado e o arquivo de certificado intermediário. Por exemplo, se você usar certificados de cliente diferentes para autenticar usuários diferentes, certifique-se de que esses certificados sejam assinados pela mesma CA e que tenha transferido por upload um dos certificados de cliente (Arquivo de certificado e Arquivo de certificado intermediário apenas) para o Secrets Manager.

    É possível usar uma cadeia de CA para empacotar os certificados (Intermediate CA 1, Intermediate CA 2 e root CA) em um único arquivo e fazer upload para o arquivo de certificado intermediário. Além disso, lembre-se de que é possível criar vários certificados de cliente off-line usando a mesma CA sem precisar fazer upload dos certificados para o Secrets Manager.

Importando certificados do servidor VPN para o Secrets Manager

Para importar certificados de servidor VPN para Secrets Manager, siga estas etapas:

  1. Se ainda não tiver uma instância do Secrets Manager, acesse a página Secrets Manager. Em seguida, preencha as informações e clique em Create para criar uma instância do Secrets Manager.

    Para obter mais informações, consulte pedindo certificados para Secrets Manager.

  2. No console, clique no ícone do menu de navegação ícone do menu > Resource List > Security

  3. Na lista de serviços, selecione sua instância de Secrets Manager.

  4. Na tabela Segredos, clique em Incluir.

  5. Clique em Certificado importado e, em seguida, em Next.

  6. Siga estas etapas para importar o certificado:

    1. Inclua um nome e uma descrição para identificar facilmente o segredo.
    2. Selecione o grupo de segredos que você deseja designar ao segredo.
    3. Opcional: inclua rótulos para ajudar a procurar segredos semelhantes em sua instância.
    4. Opcional: Adicione metadados ao seu segredo ou a uma versão específica do seu segredo.
    5. Clique em Next e selecione o bloco Import a certificate (Importar um certificado ).
    6. Clique em Procurar e selecione ./pki/issued/vpn-server.vpn.ibm.com.crt como o arquivo de certificado.
    7. Clique em Procurar e selecione ./pki/private/vpn-server.vpn.ibm.com.key como chave privada do certificado.
    8. Clique em Procurar e selecione ./pki/ca.crt como o certificado intermediário.
    9. Clique em Avançar.
    10. Revise os detalhes de seu certificado e clique em Add (Adicionar ).

Para obter mais informações, consulte Importando seus certificados existentes

Considerações importantes:

  • Neste exemplo, os certificados do servidor VPN e do cliente são assinados pela mesma CA, portanto, você precisa fazer upload apenas do certificado do servidor VPN. Também se deve usar o certificado como um certificado de servidor VPN e autenticar o cliente VPN. Se o certificado do servidor VPN e do cliente forem assinados por CAs diferentes, você deverá carregá-los separadamente.

  • Se você atualizou o certificado em Secrets Manager, o servidor VPN não está ciente da atualização do certificado. Você deve reimportar o certificado com um CRN diferente e, em seguida, atualizar o servidor VPN com o novo CRN do certificado.

  • Se o certificado for usado como o certificado do servidor VPN, você deverá carregar o arquivo de certificado, o arquivo de chave privada e o arquivo de certificado intermediário. Se o certificado for usado como certificado de cliente VPN para autenticar o cliente, você deverá carregar o arquivo de certificado e o arquivo de certificado intermediário.

    É possível usar uma cadeia de CA para empacotar os certificados (Intermediate CA 1, Intermediate CA 2 e root CA) em um único arquivo e fazer upload para o arquivo de certificado intermediário.

Pedindo um certificado público usando o Secrets Manager

Você pode usar o site Secrets Manager para solicitar um certificado SSL/TLS público como certificado do servidor VPN. Como o certificado raiz da CA pública não é armazenado em Secrets Manager, o Secrets Manager armazena apenas os certificados intermediários. É necessário que os certificados raiz do Let's Encrypt sejam salvos como um arquivo .pem. Os dois arquivos necessários estão localizados em https://letsencrypt.org/certs/lets-encrypt-r3.pem e https://letsencrypt.org/certs/isrgrootx1.pem. Esses arquivos foram concatenados para sua conveniência; no entanto, por motivos de segurança, é recomendável fazer o download e concatenar seu próprio certificado raiz em um arquivo. Além disso, ao fazer download e atualizar o perfil do cliente VPN, use esse certificado raiz para substituir a seção <ca> no perfil do cliente.

Para obter mais informações sobre a cadeia de certificados do Let's Encrypt, consulte https://letsencrypt.org/certificates/.

-----BEGIN CERTIFICATE-----
MIIFFjCCAv6gAwIBAgIRAJErCErPDBinU/bWLiWnX1owDQYJKoZIhvcNAQELBQAw
TzELMAkGA1UEBhMCVVMxKTAnBgNVBAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2Vh
cmNoIEdyb3VwMRUwEwYDVQQDEwxJU1JHIFJvb3QgWDEwHhcNMjAwOTA0MDAwMDAw
WhcNMjUwOTE1MTYwMDAwWjAyMQswCQYDVQQGEwJVUzEWMBQGA1UEChMNTGV0J3Mg
RW5jcnlwdDELMAkGA1UEAxMCUjMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC7AhUozPaglNMPEuyNVZLD+ILxmaZ6QoinXSaqtSu5xUyxr45r+XXIo9cP
R5QUVTVXjJ6oojkZ9YI8QqlObvU7wy7bjcCwXPNZOOftz2nwWgsbvsCUJCWH+jdx
sxPnHKzhm+/b5DtFUkWWqcFTzjTIUu61ru2P3mBw4qVUq7ZtDpelQDRrK9O8Zutm
NHz6a4uPVymZ+DAXXbpyb/uBxa3Shlg9F8fnCbvxK/eG3MHacV3URuPMrSXBiLxg
Z3Vms/EY96Jc5lP/Ooi2R6X/ExjqmAl3P51T+c8B5fWmcBcUr2Ok/5mzk53cU6cG
/kiFHaFpriV1uxPMUgP17VGhi9sVAgMBAAGjggEIMIIBBDAOBgNVHQ8BAf8EBAMC
AYYwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsGAQUFBwMBMBIGA1UdEwEB/wQIMAYB
Af8CAQAwHQYDVR0OBBYEFBQusxe3WFbLrlAJQOYfr52LFMLGMB8GA1UdIwQYMBaA
FHm0WeZ7tuXkAXOACIjIGlj26ZtuMDIGCCsGAQUFBwEBBCYwJDAiBggrBgEFBQcw
AoYWaHR0cDovL3gxLmkubGVuY3Iub3JnLzAnBgNVHR8EIDAeMBygGqAYhhZodHRw
Oi8veDEuYy5sZW5jci5vcmcvMCIGA1UdIAQbMBkwCAYGZ4EMAQIBMA0GCysGAQQB
gt8TAQEBMA0GCSqGSIb3DQEBCwUAA4ICAQCFyk5HPqP3hUSFvNVneLKYY611TR6W
PTNlclQtgaDqw+34IL9fzLdwALduO/ZelN7kIJ+m74uyA+eitRY8kc607TkC53wl
ikfmZW4/RvTZ8M6UK+5UzhK8jCdLuMGYL6KvzXGRSgi3yLgjewQtCPkIVz6D2QQz
CkcheAmCJ8MqyJu5zlzyZMjAvnnAT45tRAxekrsu94sQ4egdRCnbWSDtY7kh+BIm
lJNXoB1lBMEKIq4QDUOXoRgffuDghje1WrG9ML+Hbisq/yFOGwXD9RiX8F6sw6W4
avAuvDszue5L3sz85K+EC4Y/wFVDNvZo4TYXao6Z0f+lQKc0t8DQYzk1OXVu8rp2
yJMC6alLbBfODALZvYH7n7do1AZls4I9d1P4jnkDrQoxB3UqQ9hVl3LEKQ73xF1O
yK5GhDDX8oVfGKF5u+decIsH4YaTw7mP3GFxJSqv3+0lUFJoi5Lc5da149p90Ids
hCExroL1+7mryIkXPeFM5TgO9r0rvZaBFOvV2z0gp35Z0+L4WPlbuEjN/lxPFin+
HlUjr8gRsI3qfJOQFy/9rKIJR0Y/8Omwt/8oTWgy1mdeHmmjk7j1nYsvC9JSQ6Zv
MldlTTKB3zhThV1+XWYp6rjd5JW1zbVWEkLNxE7GJThEUG3szgBVGP7pSWTUTsqX
nLRbwHOoq7hHwg==
-----END CERTIFICATE-----

-----BEGIN CERTIFICATE-----
MIIFazCCA1OgAwIBAgIRAIIQz7DSQONZRGPgu2OCiwAwDQYJKoZIhvcNAQELBQAw
TzELMAkGA1UEBhMCVVMxKTAnBgNVBAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2Vh
cmNoIEdyb3VwMRUwEwYDVQQDEwxJU1JHIFJvb3QgWDEwHhcNMTUwNjA0MTEwNDM4
WhcNMzUwNjA0MTEwNDM4WjBPMQswCQYDVQQGEwJVUzEpMCcGA1UEChMgSW50ZXJu
ZXQgU2VjdXJpdHkgUmVzZWFyY2ggR3JvdXAxFTATBgNVBAMTDElTUkcgUm9vdCBY
MTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAK3oJHP0FDfzm54rVygc
h77ct984kIxuPOZXoHj3dcKi/vVqbvYATyjb3miGbESTtrFj/RQSa78f0uoxmyF+
0TM8ukj13Xnfs7j/EvEhmkvBioZxaUpmZmyPfjxwv60pIgbz5MDmgK7iS4+3mX6U
A5/TR5d8mUgjU+g4rk8Kb4Mu0UlXjIB0ttov0DiNewNwIRt18jA8+o+u3dpjq+sW
T8KOEUt+zwvo/7V3LvSye0rgTBIlDHCNAymg4VMk7BPZ7hm/ELNKjD+Jo2FR3qyH
B5T0Y3HsLuJvW5iB4YlcNHlsdu87kGJ55tukmi8mxdAQ4Q7e2RCOFvu396j3x+UC
B5iPNgiV5+I3lg02dZ77DnKxHZu8A/lJBdiB3QW0KtZB6awBdpUKD9jf1b0SHzUv
KBds0pjBqAlkd25HN7rOrFleaJ1/ctaJxQZBKT5ZPt0m9STJEadao0xAH0ahmbWn
OlFuhjuefXKnEgV4We0+UXgVCwOPjdAvBbI+e0ocS3MFEvzG6uBQE3xDk3SzynTn
jh8BCNAw1FtxNrQHusEwMFxIt4I7mKZ9YIqioymCzLq9gwQbooMDQaHWBfEbwrbw
qHyGO0aoSCqI3Haadr8faqU9GY/rOPNk3sgrDQoo//fb4hVC1CLQJ13hef4Y53CI
rU7m2Ys6xt0nUW7/vGT1M0NPAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNV
HRMBAf8EBTADAQH/MB0GA1UdDgQWBBR5tFnme7bl5AFzgAiIyBpY9umbbjANBgkq
hkiG9w0BAQsFAAOCAgEAVR9YqbyyqFDQDLHYGmkgJykIrGF1XIpu+ILlaS/V9lZL
ubhzEFnTIZd+50xx+7LSYK05qAvqFyFWhfFQDlnrzuBZ6brJFe+GnY+EgPbk6ZGQ
3BebYhtF8GaV0nxvwuo77x/Py9auJ/GpsMiu/X1+mvoiBOv/2X/qkSsisRcOj/KK
NFtY2PwByVS5uCbMiogziUwthDyC3+6WVwW6LLv3xLfHTjuCvjHIInNzktHCgKQ5
ORAzI4JMPJ+GslWYHb4phowim57iaztXOoJwTdwJx4nLCgdNbOhdjsnvzqvHu7Ur
TkXWStAmzOVyyghqpZXjFaH3pO3JLF+l+/+sKAIuvtd7u+Nxe5AW0wdeRlN8NwdC
jNPElpzVmbUq4JUagEiuTDkHzsxHpFKVK7q4+63SM1N95R1NbdWhscdCb+ZAJzVc
oyi3B43njTOQ5yOf+1CceWxG1bQVs5ZufpsMljq4Ui0/1lvh+wjChP4kqKOJ2qxq
4RgqsahDYVvTH9w7jXbyLeiNdd8XM2w9U/t7y0Ff/9yi0GE44Za4rF2LN9d11TPA
mRGunUHBcnWEvgJBQl9nJEiU0Zsnvgc/ubhPgXRR4Xq37Z0j4r7g1SgEEzwxA57d
emyPxgcYxn/eR44/KJ4EBs+lVDR3veyJm+kXQ99b21/+jh5Xos1AnX5iItreGCc=
-----END CERTIFICATE-----

Os certificados solicitados são certificados de SSL/TLS públicos e devem ser usados apenas como um certificado de servidor VPN. Não é possível usar os certificados solicitados para autenticar os clientes VPN por causa dos motivos a seguir:

  • Qualquer pessoa pode solicitar um novo certificado de uma AC pública. Em seguida, eles podem passar a autenticação se você usar certificados SSL/TLS públicos para autenticar seu cliente VPN.
  • Você não pode criar uma lista de revogação de certificados (CRL) para revogar um certificado de cliente VPN com uma CA pública.

Você deve criar sua própria CA e importar o certificado da CA para Secrets Manager para autenticar seu cliente VPN.

Usando um certificado privado

É possível usar um certificado privado Secrets Manager em seu servidor VPN. Revise as considerações importantes a seguir ao fazer isso:

  • Todas as autoridades de certificação em uma cadeia de CA devem estar contidas em uma instância do Secrets Manager. Além disso, deve-se criar a CA raiz dentro do Secrets Manager. Ao selecionar uma autoridade de certificação intermediária, as opções a seguir são necessárias para assegurar que cada autoridade de certificação possa ser localizada enquanto a cadeia de autoridade de certificação de um certificado privado em seu servidor VPN é verificada:

    • Na seção Tipo, você deve selecionar Assinatura interna.
    • Na seção Tipo, é necessário ativar a opção Codificar URL ao criar uma CA para codificar o URL do certificado de emissão em certificados de entidade final. Ele não funcionará se você ativar a opção Codificar URL depois de criar a CA.
  • O número máximo de CAs em uma cadeia de CA de certificado privado é 11 (uma CA raiz e 10 CAs intermediárias no máximo).

  • Na seção Lista de revogação de certificado, ative os comutadores de construção de CRL e de pontos de distribuição de CRL se desejar usar a CRL de CA de um certificado privado. Um certificado revogado não é mais confiável pelos aplicativos após uma hora.

  • A CRL de CA só funcionará se você não fizer upload de uma lista de revogação de certificado ao criar um servidor VPN. Não será necessário ativar uma CRL de CA se a CRL do servidor VPN já tiver sido transferida por upload.

  • Ao criar um modelo para uma CA intermediária, na seção Funções de Certificado:

    • Marque a caixa de seleção Usar certificados para o servidor se essa CA criada assinará o certificado do servidor para o servidor VPN
    • Marque a caixa de seleção Usar certificados para o cliente se a CA criada assinará o certificado de cliente para o servidor VPN.
    • Marque as caixas de seleção Usar certificados para o servidor e Usar certificados para o cliente se a CA criada assinará os certificados do servidor e do cliente para o servidor VPN.
  • Certifique-se de que cada CA tenha um nome comum exclusivo na cadeia de CAs ao criá-la na instância Secrets Manager.

Para obter mais informações, consulte Criando certificados privados na documentação do Secrets Manager..

Localizando o certificado CRN

Ao configurar a autenticação para um servidor VPN cliente-para-site durante o provisionamento usando a interface do usuário, você pode optar por especificar o certificado Secrets Manager e SSL ou o CRN do certificado. Talvez você queira fazer isso se não conseguir visualizar o Secrets Manager no menu, o que significa que você não tem acesso à instância do Secrets Manager. Tenha em mente que você deve inserir o CRN se estiver usando a API para criar um servidor VPN de cliente para site.

Para obter o CRN, você deve ter permissão para acessar a instância Secrets Manager.

Para localizar o CRN de um certificado, siga estas etapas:

  1. No console IBM Cloud, vá para Navigation menu icon menu icon > Resource list**.
  2. Clique para expandir Security (Segurança) e selecione Secrets Manager para o qual você deseja encontrar o CRN.
  3. Selecione em qualquer lugar na linha da tabela do certificado para abrir o painel lateral Detalhes do certificado. O CRN do certificado é listado no painel lateral

Configurando IDs e senhas de usuários

Para configurar a autenticação para usuários clientes VPN, siga estas etapas:

  1. O administrador VPN convida o usuário do cliente VPN para a conta em que o servidor VPN reside.

  2. O administrador VPN atribui ao usuário cliente VPN uma permissão do IAM. Essa permissão permite que esse usuário se conecte ao servidor VPN. Para obter mais informações, consulte Criando um grupo de acesso do IAM e concedendo a função para conectar ao servidor VPN.

  3. O usuário cliente VPN abre o website a seguir para gerar uma senha para seu ID de usuário:

    https://iam.cloud.ibm.com/identity/passcode
    
  4. O usuário cliente VPN insere a senha em seu cliente openVPN e inicia a conexão com o servidor VPN. Para obter mais informações, consulte Configurando um ambiente VPN do cliente e conectando a um servidor VPN.