Parte I IntrodutórioParte Dois Configurar regras de firewall e NATParte três. Configuração DHCPParte Quatro Configuração de roteamentoParte Cinco Configurando um Balanceador de CargaHoje, examinamos as opções de configuração de VPN que o NSX Edge nos oferece.
Em geral, podemos dividir as tecnologias VPN em dois tipos principais:
- VPN site a site. Na maioria das vezes, o IPSec é usado para criar um túnel seguro, por exemplo, entre a rede do escritório principal e a rede em um site remoto ou na nuvem.
- VPN de acesso remoto. É usado para conectar usuários individuais a redes privadas de organizações usando o software cliente VPN.
O NSX Edge nos permite usar as duas opções.
Vamos configurar usando um banco de testes com dois NSX Edge, um servidor Linux com o daemon de
guaxinim instalado e um laptop Windows para testar a VPN de acesso remoto.
IPsec
- Na interface do vCloud Director, vá para a seção Administração e selecione vDC. Na guia Edge Gateways, selecione o Edge de que precisamos, clique com o botão direito do mouse e selecione Edge Gateway Services.

- Na interface do NSX Edge, vá para a guia VPN VPN-IPsec, vá para a seção Sites VPN IPsec e clique em + para adicionar um novo site.

- Preencha os campos obrigatórios:
- Ativado - ativa o site remoto.
- PFS - garante que todas as novas chaves criptográficas não estejam associadas a nenhuma chave anterior.
- Local ID e Local Endpoin t são o endereço externo do NSX Edge.
- Sub-rede local s - Redes locais que usarão a VPN IPsec.
- ID de ponto e ponto final de ponto - endereço do site remoto.
- Sub -redes de mesmo nível - redes que usarão a VPN IPsec no lado remoto.
- Algoritmo de criptografia - algoritmo de criptografia de túnel.

- Autenticação - como autenticaremos um banquete. Você pode usar uma chave pré-compartilhada ou um certificado.
- Chave pré-compartilhada - especifique a chave que será usada para autenticação e deve corresponder nos dois lados.
- Grupo Diffie-Hellman - algoritmo de troca de chaves.
Após preencher os campos obrigatórios, clique em Manter.

- Feito.

- Após adicionar o site, vá para a guia Status da Ativação e ative o Serviço IPsec.

- Após as configurações serem aplicadas, vá para a guia Estatísticas -> IPsec VPN e verifique o status do túnel. Vemos que o túnel subiu.

- Verifique o status do encapsulamento no console do gateway Edge:
- show service ipsec - verifique o status do serviço.

- show service ipsec site - informações sobre o estado do site e os parâmetros acordados.

- show service ipsec sa - Verificação de status da Security Association (SA).

- Verificação de conectividade do site remoto:
root@racoon:~# ifconfig eth0:1 | grep inet inet 10.255.255.1 netmask 255.255.255.0 broadcast 0.0.0.0 root@racoon:~# ping -c1 -I 10.255.255.1 192.168.0.10 PING 192.168.0.10 (192.168.0.10) from 10.255.255.1 : 56(84) bytes of data. 64 bytes from 192.168.0.10: icmp_seq=1 ttl=63 time=59.9 ms --- 192.168.0.10 ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev = 59.941/59.941/59.941/0.000 ms
Arquivos de configuração e comandos de diagnóstico adicionais do servidor Linux remoto: root@racoon:~# cat /etc/racoon/racoon.conf log debug; path pre_shared_key "/etc/racoon/psk.txt"; path certificate "/etc/racoon/certs"; listen { isakmp 80.211.43.73 [500]; strict_address; } remote 185.148.83.16 { exchange_mode main,aggressive; proposal { encryption_algorithm aes256; hash_algorithm sha1; authentication_method pre_shared_key; dh_group modp1536; } generate_policy on; } sainfo address 10.255.255.0/24 any address 192.168.0.0/24 any { encryption_algorithm aes256; authentication_algorithm hmac_sha1; compression_algorithm deflate; } === root@racoon:~# cat /etc/racoon/psk.txt 185.148.83.16 testkey === root@racoon:~# cat /etc/ipsec-tools.conf #!/usr/sbin/setkey -f flush; spdflush; spdadd 192.168.0.0/24 10.255.255.0/24 any -P in ipsec esp/tunnel/185.148.83.16-80.211.43.73/require; spdadd 10.255.255.0/24 192.168.0.0/24 any -P out ipsec esp/tunnel/80.211.43.73-185.148.83.16/require; === root@racoon:~# racoonctl show-sa isakmp Destination Cookies Created 185.148.83.16.500 2088977aceb1b512:a4c470cb8f9d57e9 2019-05-22 13:46:13 === root@racoon:~# racoonctl show-sa esp 80.211.43.73 185.148.83.16 esp mode=tunnel spi=1646662778(0x6226147a) reqid=0(0x00000000) E: aes-cbc 00064df4 454d14bc 9444b428 00e2296e c7bb1e03 06937597 1e522ce0 641e704d A: hmac-sha1 aa9e7cd7 51653621 67b3b2e9 64818de5 df848792 seq=0x00000000 replay=4 flags=0x00000000 state=mature created: May 22 13:46:13 2019 current: May 22 14:07:43 2019 diff: 1290(s) hard: 3600(s) soft: 2880(s) last: May 22 13:46:13 2019 hard: 0(s) soft: 0(s) current: 72240(bytes) hard: 0(bytes) soft: 0(bytes) allocated: 860 hard: 0 soft: 0 sadb_seq=1 pid=7739 refcnt=0 185.148.83.16 80.211.43.73 esp mode=tunnel spi=88535449(0x0546f199) reqid=0(0x00000000) E: aes-cbc c812505a 9c30515e 9edc8c4a b3393125 ade4c320 9bde04f0 94e7ba9d 28e61044 A: hmac-sha1 cd9d6f6e 06dbcd6d da4d14f8 6d1a6239 38589878 seq=0x00000000 replay=4 flags=0x00000000 state=mature created: May 22 13:46:13 2019 current: May 22 14:07:43 2019 diff: 1290(s) hard: 3600(s) soft: 2880(s) last: May 22 13:46:13 2019 hard: 0(s) soft: 0(s) current: 72240(bytes) hard: 0(bytes) soft: 0(bytes) allocated: 860 hard: 0 soft: 0 sadb_seq=0 pid=7739 refcnt=0
- Tudo está pronto, a VPN IPsec site a site está configurada e funcionando.
Neste exemplo, usamos o PSK para autenticar o par, mas também é possível uma opção de autenticação de certificado. Para fazer isso, vá para a guia Configuração global, ative a autenticação de certificado e selecione o próprio certificado.
Além disso, nas configurações do site, será necessário alterar o método de autenticação.


Observo que o número de túneis IPsec depende do tamanho do Edge Gateway implantado (leia sobre isso em nosso primeiro artigo ).

VPN SSL
SSL VPN-Plus é uma das opções para VPN de acesso remoto. Ele permite que usuários remotos individuais se conectem com segurança a redes privadas atrás do gateway do NSX Edge. Um túnel criptografado SSL VPN-plus é estabelecido entre o cliente (Windows, Linux, Mac) e o NSX Edge.
- Vamos configurar. No painel de controle do serviço Edge Gateway, vá para a guia SSL VPN-Plus e, em seguida, para Configurações do servidor. Selecionamos o endereço e a porta na qual o servidor escutará as conexões recebidas, ativamos o log e selecionamos os algoritmos de criptografia necessários.

Aqui você pode alterar o certificado que o servidor usará.

- Depois que tudo estiver pronto, ligue o servidor e não esqueça de salvar as configurações.

- Em seguida, precisamos configurar o pool de endereços que emitiremos para os clientes quando conectados. Essa rede é separada de qualquer sub-rede existente no seu ambiente NSX, não precisa ser configurada em outros dispositivos em redes físicas, exceto nas rotas que apontam para ela.
Vá para a guia Pools de IPs e clique em +.

- Escolha endereços, máscara de sub-rede e gateway. Aqui você pode alterar as configurações dos servidores DNS e WINS.

- O pool resultante.

- Agora adicione as redes às quais os usuários que se conectam à VPN terão acesso. Vá para a guia Redes privadas e clique em +.

- Nós preenchemos:
- Rede - uma rede local à qual os usuários remotos terão acesso.
- Enviar tráfego, ele tem duas opções:
- sobre túnel - envia tráfego para a rede através do túnel,
- desvio de túnel - envia tráfego para a rede ignorando diretamente o túnel. - Ativar otimização TCP - marque se a opção Over Tunnel estiver selecionada. Quando a otimização está ativada, você pode especificar os números de porta para os quais deseja otimizar o tráfego. O tráfego para as portas restantes dessa rede específica não será otimizado. Se os números de porta não forem especificados, o tráfego para todas as portas será otimizado. Leia mais sobre esse recurso aqui .

- Em seguida, vá para a guia Autenticação e clique em +. Para autenticação, usaremos um servidor local no próprio NSX Edge.

- Aqui, podemos escolher políticas para gerar novas senhas e configurar opções para bloquear contas de usuário (por exemplo, o número de tentativas quando a senha é inserida incorretamente).


- Como usamos a autenticação local, precisamos criar usuários.

- Além de coisas básicas como nome e senha, aqui você pode, por exemplo, impedir que o usuário altere a senha ou, inversamente, forçá-lo a alterar a senha no próximo login.

- Após a adição de todos os usuários necessários, vá para a guia Pacotes de instalação, clique em + e crie o próprio instalador, que fará o download do funcionário remoto para instalação.

- Clique em +. Selecionamos o endereço e a porta do servidor ao qual o cliente se conectará e as plataformas para as quais você deseja gerar o pacote de instalação.

Você pode especificar as configurações do cliente para Windows abaixo nesta janela. Escolha:
- iniciar cliente no logon - o cliente VPN será adicionado à inicialização em uma máquina remota;
- criar ícone da área de trabalho - criará um ícone do cliente VPN na área de trabalho;
- validação do certificado de segurança do servidor - validará o certificado do servidor na conexão.
A configuração do servidor está concluída.

- Agora baixe o pacote de instalação que criamos na última etapa no PC remoto. Ao configurar o servidor, especificamos seu endereço externo (185.148.83.16) e a porta (445). É neste endereço que precisamos acessar o navegador da web. No meu caso, são 185.148.83.16 : 445.
Na janela de autorização, você deve inserir as credenciais do usuário que criamos anteriormente.

- Após a autorização, vemos uma lista dos pacotes de instalação criados disponíveis para download. Criamos apenas um - e faça o download.

- Clicamos no link, o download do cliente começa.

- Descompacte o arquivo baixado e execute o instalador.

- Após a instalação, execute o cliente, na janela de autorização, clique em Login.

- Na janela de verificação de certificado, selecione Sim.

- Nós inserimos as credenciais para o usuário criado anteriormente e vemos que a conexão foi concluída com sucesso.


- Verifique as estatísticas do cliente VPN no computador local.


- Na linha de comando do Windows (ipconfig / all), vemos que um adaptador virtual adicional apareceu e há conectividade com a rede remota, tudo funciona:


- E finalmente - uma verificação no console do Edge Gateway.

VPN L2
O L2VPN é necessário quando você precisa combinar vários
redes distribuídas em um domínio de broadcast.
Isso pode ser útil, por exemplo, ao migrar uma máquina virtual: quando uma VM é movida para outro site geográfico, a máquina salva as configurações de endereçamento IP e não perde a conectividade com outras máquinas localizadas no mesmo domínio L2.
Em nosso ambiente de teste, conectaremos dois sites, chamaremos de A e B. respectivamente.Temos duas redes roteadas NSX e duas criadas de forma idêntica conectadas a um Edge diferente. A máquina A tem o endereço 10.10.10.250/24, a máquina B tem o endereço 10.10.10.2/24.
- No vCloud Director, vá para a guia Administração, para o VDC necessário, vá para a guia Org VDC Networks e adicione duas novas redes.

- Selecionamos o tipo de rede roteada e ligamos essa rede ao nosso NSX. Colocamos a caixa de seleção Criar como subinterface.

- Como resultado, devemos obter duas redes. No nosso exemplo, eles são chamados de rede-ae rede-b com as mesmas configurações de gateway e a mesma máscara.


- Agora vamos para as configurações do primeiro NSX. Esse será o NSX ao qual a rede A. está conectada e atuará como um servidor.
Volte para a interface do NSx Edge / Vá para a guia VPN -> L2VPN. Ativamos o L2VPN, selecione o modo de operação do servidor, nas configurações globais do servidor, especifique o endereço IP externo do NSX, no qual a porta do túnel será ouvida. Por padrão, o soquete será aberto na porta 443, mas pode ser alterado. Não esqueça de escolher as configurações de criptografia para o futuro túnel.

- Vá para a guia Sites do servidor e adicione um banquete.

- Ligue o banquete, defina o nome, a descrição, se necessário, defina o nome de usuário e a senha. Mais tarde, precisaremos desses dados ao configurar o site do cliente.
No Endereço do gateway de otimização de saída, defina o endereço do gateway. Isso é necessário para que não haja conflito de endereços IP, porque o gateway em nossas redes tem o mesmo endereço. Em seguida, pressionamos o botão SELECT SUB-INTERFACES.

- Aqui nós selecionamos a subinterface desejada. Salve as configurações.

- Vimos que o site do cliente recém-criado apareceu nas configurações.

- Agora, vamos configurar o NSX no lado do cliente.
Vamos para o lado B do NSX, vamos para VPN -> L2VPN, ativamos o L2VPN, configuramos o modo L2VPN para o modo cliente. Na guia Global do cliente, defina o endereço e a porta do NSX A, que indicamos anteriormente como IP e porta de escuta no lado do servidor. Também é necessário definir as mesmas configurações de criptografia para que sejam consistentes ao elevar o túnel.

Role para baixo, selecione a subinterface através da qual o túnel para L2VPN será construído.
No Endereço do gateway de otimização de saída, defina o endereço do gateway. Defina o ID do usuário e a senha. Selecionamos a subinterface e não esquecemos de salvar as configurações.

- Isso é tudo, na verdade. As configurações do cliente e do servidor são quase idênticas, com exceção de algumas nuances.
- Agora podemos ver o que nosso túnel ganhou, acessando Estatísticas -> L2VPN em qualquer NSX.

- Se formos para o console de qualquer Edge Gateway agora, veremos os endereços das duas VMs em cada uma delas na tabela arp.

Isso é tudo sobre VPN no NSX Edge. Pergunte se algo não está claro. Esta é também a última parte de uma série de artigos sobre como trabalhar com o NSX Edge. Esperamos que tenham sido úteis :)