Configurar clientes VPN ponto a site: autenticação de certificado – Linux

Este artigo ajuda você a se conectar à VNet (rede virtual) do Azure usando o Gateway de VPN P2S (ponto a site) e a Autenticação de certificado de um cliente Linux. Há vários conjuntos de etapas neste artigo, dependendo do tipo de túnel selecionado para sua configuração P2S, o sistema operacional e o cliente VPN que é usado para se conectar.

Antes de começar

Antes de começar, verifique se você está no artigo correto. A tabela a seguir mostra os artigos de configuração disponíveis para clientes VPN P2S do Gateway de VPN do Azure. As etapas diferem, dependendo do tipo de autenticação, do tipo de túnel e do sistema operacional do cliente.

Autenticação Tipo de túnel Gerar arquivos de configuração Configurar o cliente VPN
Certificado do Azure IKEv2, SSTP Windows Cliente VPN nativo
Certificado do Azure OpenVPN Windows - Cliente OpenVPN
- Cliente VPN do Azure
Certificado do Azure IKEv2, OpenVPN macOS-iOS macOS-iOS
Certificado do Azure IKEv2, OpenVPN Linux Linux
ID do Microsoft Entra OpenVPN (SSL) Windows Windows
ID do Microsoft Entra OpenVPN (SSL) macOS macOS
RADIUS – certificado - Artigo Artigo
RADIUS – senha - Artigo Artigo
RADIUS – outros métodos - Artigo Artigo

Importante

Começando em 1 de julho de 2018, o suporte está sendo removido para TLS 1.0 e 1.1 do Gateway de VPN do Azure. O Gateway de VPN oferecerá suporte somente ao protocolo TLS 1.2. Somente conexões ponto a site são afetadas; conexões site a site não serão afetadas. Se você estiver usando TLS para VPNs ponto a site em clientes Windows 10 ou posterior, não precisará fazer nada. Se você estiver usando TLS para conexões ponto a site em clientes Windows 7 e Windows 8, consulte as Perguntas frequentes sobre o Gateway de VPN para obter instruções de atualização.

Gerar certificados

Para autenticação de certificado, um certificado do cliente deve ser instalado em cada computador cliente. O certificado do cliente que você deseja deve ser exportado com a chave privada e deve conter todos os certificados no caminho de certificação. Além disso, para algumas configurações, você também precisa instalar informações de certificado raiz.

Para obter informações sobre trabalho com certificados, consulte Ponto a site: gerar certificados.

Gerar os arquivos de configuração de cliente VPN

Todas as definições de configuração necessárias para os clientes VPN estão contidas em um arquivo zip de configuração de perfil de cliente VPN. Os arquivos de configuração do perfil do cliente VPN gerados são específicos para a configuração do gateway de VPN P2S para a rede virtual. Se houver alterações na configuração de VPN P2S depois de gerar os arquivos, como alterações no tipo de protocolo VPN ou no tipo de autenticação, você precisará gerar novos arquivos de configuração de perfil de cliente VPN, e aplicar a nova configuração a todos os clientes VPN que você deseja conectar. Para obter mais informações sobre conexões P2S, confira Sobre a VPN ponto a site.

Para gerar arquivos de configuração usando o portal do Azure:

  1. No portal do Azure, acesse o gateway da rede virtual à qual você deseja conectar.

  2. Na página do gateway de rede virtual, selecione Configuração ponto a site para abrir a página Configuração ponto a site.

  3. Na parte superior da página da configuração ponto a site, selecione Baixar cliente VPN. Isso não baixa o software cliente VPN, ele gera o pacote de configuração usado para configurar clientes VPN. Levará alguns minutos para o pacote de configuração do cliente ser gerado. Durante esse tempo, talvez você não veja nenhuma indicação até que o pacote tenha sido gerado.

    Captura de tela da página da configuração ponto a site.

  4. Depois que o pacote de configuração tiver sido gerado, o navegador indicará que um arquivo zip de configuração do cliente está disponível. Ele terá o mesmo nome do seu gateway.

  5. Descompacte o arquivo para exibir as pastas. Você usará alguns desses arquivos para configurar seu cliente VPN. Os arquivos gerados correspondem às configurações de tipo de autenticação e túnel que você configurou no servidor P2S.

Próximo, configurar o cliente VPN. Selecione as seguintes instruções:

IKEv2 – etapas do strongSwan

Instalar o strongSwan

A configuração a seguir foi usada ao especificar comandos:

  • Computador: Ubuntu Server 18.04
  • Dependências: strongSwan

Use os comandos a seguir para instalar a configuração necessária do 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

Instalar certificados

Um certificado do cliente é necessário para autenticação ao usar o tipo de autenticação de certificado do Azure. Um certificado de cliente deve ser instalado em cada computador cliente. O certificado do cliente exportado deve ser exportado com a chave privada e deve conter todos os certificados no caminho de certificação. Verifique se o computador cliente tem o certificado do cliente apropriado instalado antes de prosseguir para a próxima seção.

Para obter informações sobre certificados de cliente, consulte Gerar certificados – Linux.

Exibir arquivos de perfil do cliente VPN

Vá para os arquivos de configuração do perfil de cliente VPN baixado. Você pode encontrar todas as informações que você precisa para configuração na pasta Generic. O Azure não fornece um arquivo de configuração móvel para essa configuração.

Se você não vir a pasta Genérica, verifique os itens a seguir e gere o arquivo zip novamente.

  • Verifique o tipo de túnel para sua configuração. É provável que IKEv2 não tenha sido selecionado como um tipo de túnel.
  • No gateway de VPN, verifique se a SKU não é Básica. Observe que o SKU Básico do Gateway de VPN não dá suporte a IKEv2. Em seguida, selecione IKEv2 e gere o arquivo zip novamente para recuperar a pasta Genérico.

A pasta Genérico contém os seguintes arquivos:

  • VpnSettings.xml, que contém configurações importantes, como o tipo de túnel e o endereço do servidor.
  • VpnServerRoot.cer, que contém o certificado raiz necessário para validar o gateway de VPN do Azure durante a instalação de conexão P2S.

Depois de exibir os arquivos, prossiga com as etapas que deseja usar:

Etapas de GUI strongSwan

Esta seção orienta você pela configuração usando a GUI strongSwan. As instruções a seguir foram criadas no Ubuntu 18.0.4. O Ubuntu 16.0.10 não dá suporte para GUI do StrongSwan. Se você quiser usar o Ubuntu 16.0.10, será necessário usar a linha de comando. Os exemplos a seguir podem não corresponder às telas que você vê, dependendo da sua versão do Linux e do strongSwan.

  1. Abra o Terminal para instalar o strongSwan e seu Gerenciador de Rede executando o comando no exemplo.

    sudo apt install network-manager-strongswan
    
  2. Selecione Configurações e, depois, escolha Rede. Selecione o botão + para criar uma conexão.

    Captura de tela que mostra a página conexões de rede.

  3. Escolha IPsec/IKEv2 (strongSwan) no menu e clique duas vezes.

    Captura de tela que mostra a página Adicionar VPN.

  4. Na página Adicionar VPN, adicione um nome para a conexão VPN.

    Captura de tela que mostra Escolher um tipo de conexão.

  5. Abra o arquivo VpnSettings.xml da pasta Genérico contida nos arquivos de configuração do perfil do cliente de VPN baixados. Localize a marca chamada VpnServer e copie o nome, iniciando com "azuregateway" e finalizando com ". cloudapp.net".

    Captura de tela que mostra Copiar dados.

  6. Cole esse nome no campo Endereço da sua nova conexão VPN na seção Gateway. Em seguida, selecione o ícone da pasta no final do campo Certificado, navegue até a pasta Genérico e selecione o arquivo VpnServerRoot.

  7. Na seção Cliente da conexão, da Autenticação, selecione Certificado/chave privada. Para Certificado e Chave privada, escolha o certificado e a chave privada que foram criados anteriormente. Em Opções, selecione Solicitar um endereço IP interno. Em seguida, selecione Adicionar.

    Captura de tela que mostra Solicitar um endereço IP interno.

  8. Ative a conexão.

    Captura de tela que mostra Copiar.

Etapas de CLI strongSwan

Esta seção orienta você pela configuração usando a CLI strongSwan.

  1. Na pasta Generic dos arquivos de configuração do perfil do cliente de VPN, copie ou mova o VpnServerRoot.cer para /etc/ipsec.d/cacerts.

  2. Copie ou mova os arquivos gerados para /etc/ipsec.d/certs e /etc/ipsec.d/private/ respectivamente. Esses arquivos são o certificado do cliente e a chave privada. Eles precisam estar localizados em seus diretórios correspondentes. Use os seguintes comandos:

    sudo cp ${USERNAME}Cert.pem /etc/ipsec.d/certs/
    sudo cp ${USERNAME}Key.pem /etc/ipsec.d/private/
    sudo chmod -R go-rwx /etc/ipsec.d/private /etc/ipsec.d/certs
    
  3. Execute o comando a seguir para anotar o nome do host. Você usará esse valor na próxima etapa.

    hostnamectl --static
    
  4. Abra o arquivo VpnSettings.xml e copie o valor <VpnServer>. Você usará esse valor na próxima etapa.

  5. Ajuste os valores no exemplo a seguir e adicione o exemplo à configuração /etc/ipsec.conf.

    conn azure
          keyexchange=ikev2
          type=tunnel
          leftfirewall=yes
          left=%any
          # Replace ${USERNAME}Cert.pem with the key filename inside /etc/ipsec.d/certs  directory. 
          leftcert=${USERNAME}Cert.pem
          leftauth=pubkey
          leftid=%client # use the hostname of your machine with % character prepended. Example: %client
          right= #Azure VPN gateway address. Example: azuregateway-xxx-xxx.vpn.azure.com
          rightid=% #Azure VPN gateway FQDN with % character prepended. Example: %azuregateway-xxx-xxx.vpn.azure.com
          rightsubnet=0.0.0.0/0
          leftsourceip=%config
          auto=add
          esp=aes256gcm16
    
  6. Adicione os valores de segredo a /etc/ipsec.secrets.

    O nome do arquivo PEM deve corresponder ao que você usou anteriormente como o arquivo de chave do cliente.

    : RSA ${USERNAME}Key.pem  # Replace ${USERNAME}Key.pem with the key filename inside /etc/ipsec.d/private directory. 
    
  7. Por fim, execute estes comandos:

    sudo ipsec restart
    sudo ipsec up azure
    

Etapas do OpenVPN

Esta seção ajuda você a configurar clientes Linux para autenticação de certificado que usa o tipo de túnel OpenVPN. Para se conectar ao Azure, baixe o cliente do OpenVPN e configure o perfil de conexão.

Observação

O Cliente OpenVPN versão 2.6 ainda não tem suporte.

  1. Abra uma nova sessão de Terminal. Você pode abrir uma nova sessão pressionando simultaneamente "Ctrl + Alt + t".

  2. Insira o comando a seguir para instalar os componentes necessários:

    sudo apt-get install openvpn
    sudo apt-get -y install network-manager-openvpn
    sudo service network-manager restart
    
  3. Em seguida, vá para a pasta de perfil do cliente VPN e descompacte para exibir os arquivos.

  4. Exporte o certificado de cliente P2S que você criou e carregou para sua configuração P2S no gateway. Para ver as etapas, consulte Gateway de VPN ponto a site.

  5. Extraia a chave privada e a impressão digital base64 do .pfx. Há várias maneiras de realizar isso. Usar OpenSSL no computador é uma maneira.

    openssl pkcs12 -in "filename.pfx" -nodes -out "profileinfo.txt"
    

    O arquivo profileinfo.txt conterá a chave privada e a impressão digital da CA e do certificado do Cliente. Certifique-se de usar a impressão digital do certificado do cliente.

  6. Abra profileinfo.txt em um editor de texto. Para obter a impressão digital do certificado cliente (filho), selecione o texto incluindo e entre "-----BEGIN CERTIFICATE-----" e "-----END CERTIFICATE-----" do certificado filho e copie-o. Você pode identificar o certificado filho observando o assunto =/linha.

  7. Abra o arquivo vpnconfig.ovpn localize a seção mostrada abaixo. Substitua tudo entre "cert" e "/cert".

    # P2S client certificate
    # please fill this field with a PEM formatted cert
    <cert>
    $CLIENTCERTIFICATE
    </cert>
    
  8. Abra o profileinfo.txt em um editor de texto. Para obter a chave privada, selecione o texto incluindo e entre "-----BEGIN PRIVATE KEY-----" e "-----END PRIVATE KEY-----" e copie-o.

  9. Abra o arquivo vpnconfig.ovpn em um editor de texto e localize esta seção. Cole a chave privada substituindo tudo entre "key" e "/key".

    # P2S client root certificate private key
    # please fill this field with a PEM formatted key
    <key>
    $PRIVATEKEY
    </key>
    
  10. Não altere os outros campos. Use a configuração preenchida da entrada do cliente para se conectar à VPN.

    • Para conectar usando a linha de comando, digite o seguinte comando:

      sudo openvpn --config <name and path of your VPN profile file>&
      
    • Para desconectar usando a linha de comando, digite o seguinte comando:

      sudo pkill openvpn
      
    • Para se conectar usando o GUI, acesse as configurações do sistema.

  11. Selecione + para adicionar uma nova conexão VPN.

  12. Em Adicionar VPN, selecione Importar do arquivo....

  13. Navegue até o arquivo de perfil e clique duas vezes ou escolha Abrir.

  14. Selecione Adicionar na janela Adicionar VPN.

    Captura de tela que mostra Importar do arquivo na página Adicionar VPN.

  15. Você pode se conectar LIGANDO a VPN na página Configurações de Rede, ou no ícone de rede na bandeja do sistema.

Próximas etapas

Para etapas adicionais, retorne ao artigo ponto a site original no qual você estava trabalhando.