Como faço para usar a AWS CLI para configurar uma Client VPN?

4 minuto de leitura
0

Quero usar a AWS Command Line Interface (AWS CLI) para configurar uma AWS Client VPN.

Resolução

Observação: se você receber erros ao executar comandos da AWS Command Line Interface (AWS CLI), consulte Solucionar erros da AWS CLI. Além disso, verifique se você está usando a versão mais recente da AWS CLI. As ações de API para o serviço Client VPN estão disponíveis somente na versão mais recente da AWS CLI.

Configurar uma Client VPN usando autenticação mútua

Para configurar uma Client VPN com autenticação mútua, conclua as seguintes etapas:

  1. Gere certificados de servidor e cliente e, em seguida, faça upload dos certificados para o AWS Certificate Manager (ACM).
  2. Observe o ARN do certificado de servidor e o ARN do certificado de cliente.
  3. Execute o comando create-client-vpn-endpoint. Por exemplo, o comando a seguir cria um endpoint que usa autenticação mútua com um bloco CIDR cliente de 172.16.0.0/16:
    $ aws --region us-east-1 ec2 create-client-vpn-endpoint --client-cidr-block 172.16.0.0/16 --server-certificate-arn arn:aws:acm:us-east-1:1234567890:certificate/abc1d23e-45fa-678b-9cd0-ef123a45b678 --authentication-options Type=certificate-authentication,MutualAuthentication={ClientRootCertificateChainArn=arn:aws:acm:us-east-1:1234567890:certificate/abc1d23e-45fa-678b-9cd0-ef123a45b678} --connection-log-options Enabled=false

Observação:

  • Para um bloco CIDR IPv4 de cliente, especifique um intervalo de endereços IP na notação CIDR para atribuir endereços IP de cliente.
  • ClientRootCertificateChainArn é o ARN do certificado do cliente. Uma autoridade de certificação (CA) deve assinar o certificado e você deve gerar o certificado no ACM.
  • A AWS Client VPN é específico da região da AWS. A região da sua VPN deve corresponder à região do seu certificado.

Configurar uma Client VPN usando autenticação baseada em usuário

Autenticação do Active Directory

Para configurar uma Client VPN com autenticação do Active Directory, conclua as seguintes etapas: 

  1. Para ID do diretório, especifique a ID do AWS Active Directory.
  2. Execute o comando create-client-vpn-endpoint. Por exemplo, o comando a seguir cria um endpoint que usa a autenticação com base no Active Directory com um bloco CIDR cliente de 172.16.0.0/16:
    $ aws --region us-east-1 ec2 create-client-vpn-endpoint --client-cidr-block 172.16.0.0/16 --server-certificate-arn arn:aws:acm:us-east-1:1234567890:certificate/abc1d23e-45fa-678b-9cd0-ef123a45b678 --authentication-options Type=directory-service-authentication,ActiveDirectory={DirectoryId=d-1234567890} --connection-log-options Enabled=false

Observação:

  • Use a opção —dns-servers para transmitir servidores DNS personalizados para resolução de DNS. Um endpoint da Client VPN pode ter até dois servidores DNS. Se você não especificar um servidor DNS, o endereço DNS configurado no dispositivo local será usado.
  • Use a opção —transport-protocol para definir o protocolo de transporte para a sessão VPN.

Autenticação federada (para autenticação federada baseada em SAML)

Para configurar uma Client VPN com autenticação federada, conclua as seguintes etapas:

  1. Para o ARN do provedor SAML, especifique o ARN do provedor de identidade Security Assertion Markup Language (SAML) do AWS Identity and Access Management (IAM).
  2. Execute o comando create-client-vpn-endpoint. Por exemplo, o comando a seguir cria um endpoint que usa autenticação federada com um bloco CIDR cliente de 172.16.0.0/16:
    $ aws --region us-east-1 ec2 create-client-vpn-endpoint --client-cidr-block 172.16.0.0/16 --server-certificate-arn arn:aws:acm:us-east-1:1234567890:certificate/abc1d23e-45fa-678b-9cd0-ef123a45b678 --authentication-options Type=federated-authentication,FederatedAuthentication={SAMLProviderArn=arn:aws:iam::123456789012:saml-provider/MySAMLProvider} --connection-log-options Enabled=false
    Observação: substitua SAMLProviderArn pelo ARN do recurso do provedor SAML no IAM e MySAMLProvider pelo nome do seu provedor SAML.

Associar uma sub-rede à Client VPN

Execute o comando associate-client-vpn-target-network para associar uma sub-rede ao endpoint da Client VPN:

$  aws --region us-east-1 ec2 associate-client-vpn-target-network --client-vpn-endpoint-id cvpn-endpoint-0ab1cd234ef567ab890 --subnet-id subnet-0123456789abc123

Essa ação altera o estado da Client VPN para Disponível. Rotas locais para a nuvem privada virtual (VPC) são adicionadas automaticamente à tabela de rotas do endpoint da Client VPN. O grupo de segurança padrão da VPC é aplicado automaticamente à associação de sub-rede. Você poderá modificar o grupo de segurança depois de associar a sub-rede.

Adicionar uma regra de autorização para conceder aos clientes acesso à VPC de destino

Para adicionar uma regra de autorização, execute o comando authorize-client-vpn-ingress para a autenticação que você usa:

Autenticação mútua

$ aws --region us-east-1 ec2 authorize-client-vpn-ingress --client-vpn-endpoint-id cvpn-endpoint-0ab1cd234ef567ab890 --target-network-cidr 10.0.0.0/16 --authorize-all-groups

Autenticação do Active Directory

$ aws --region us-east-1 ec2 authorize-client-vpn-ingress --client-vpn-endpoint-id cvpn-endpoint-0ab1cd234ef567ab890 --target-network-cidr 10.0.0.0/16 --access-group-id S-1-2-34-1234567890-1234567890-1234567890-1234

Autenticação federada (SAML 2.0)

$ aws --region us-east-1 ec2 authorize-client-vpn-ingress --client-vpn-endpoint-id cvpn-endpoint-0ab1cd234ef567ab890 --target-network-cidr 10.0.0.0/16 --access-group-id MyAccessGroup

Observação: substitua MyAccessGroup pelo ID do grupo de acesso do grupo de provedores.

(Opcional) Execute o comando create-client-vpn-route para adicionar mais rotas à rede de destino no endpoint da Client VPN:

$ aws --region us-east-1 ec2 create-client-vpn-route --client-vpn-endpoint-id cvpn-endpoint-0ab1cd234ef567ab890 --destination-cidr-block 0.0.0.0/0 --target-vpc-subnet-id subnet-0123456789abcabca

Exportar o arquivo de configuração do endpoint da Client VPN

Exportar o arquivo de configuração do endpoint da Client VPN. Use esse arquivo para distribuir aos seus clientes.

Observação: se você configurou sua Client VPN com autenticação mútua, execute o comando export-client-vpn-client-configuration para acrescentar o certificado de cliente e a chave de cliente ao arquivo de configuração: 

$ aws --region us-east-1 ec2 export-client-vpn-client-configuration --client-vpn-endpoint-id cvpn-endpoint-0ab1cd234ef567ab890 --output text > client-config.ovpn
AWS OFICIAL
AWS OFICIALAtualizada há um ano