Configurar serviço VPN de acesso remoto em uma aplicação Vyatta


Você pode configurar a aplicação Vyatta para funcionar como um gateway VPN de acesso remoto para que os clientes possam conectar-se em segurança a suas infraestruturas na nuvem da Rackspace.

Introdução

Este artigo mostra como configurar a aplicação Vyatta para VPN de acesso remoto usando L2TP/IPsec com chaves pré-compartilhadas para autenticação.

Para acessar um guia completo sobre a configuração de VPN na Vyatta, clique aqui

Para obter orientação sobre a configuração de regras de firewal na Vyatta para permitir acesso remoto à VPN, consulte o seguinte artigo:

Configurando um firewall baseado em interface na aplicação de rede Vyatta

O acesso VPN usando L2TP/IPsec com chave pré-compartilhada funciona assim:

  1. Primeiro, o cliente remoto estabelece um túnel IPsec com o servidor VPN (Vyatta).
  2. O cliente L2TP e o servidor estabelecem um túnel L2TP em cima do túnel IPsec.
  3. Por fim, uma sessão PPP é estabelecida em cima do túnel L2TP, isto é, os pacotes PPP são encapsulados e enviados/recebidos dentro do túnel L2TP.

Na ilustração a seguir, o tráfego dos clientes de acesso remoto entra na interface pública da aplicação Vyatta. 192.168.100.0/24 é a sub-rede atribuída aos clientes quando a sessão VPN é estabelecida. O endereço X.X.X.X é o endereço de IP público da Vyatta.

Configure a VPN L2TP/IPsec na aplicação Vyatta

Passo 1. Configure a Vyatta como um servidor VPN L2TP/IPsec

No exemplo a seguir, eth0 é a interface pública habilitada para IPsec. O segredo pré-compartilhado é "SUPERSECRET".

  1. Entre na aplicação Vyatta usando ssh:
    ssh vyatta@X.X.X.X

    Onde X.X.X.X é o endereço IP da interface pública da Vyatta. Você verá a mensagem de boas-vindas da Vyatta e uma solicitação de senha.

    Após entrar na aplicação, você pode digitar "?" ou pressionar a tecla Tab para obter ajuda.

  2. Entre no modo de configuração:
    vyatta@vyatta: configure
    [edit]
    vyatta@vyatta#

    O símbolo # indica que você está no modo de configuração.

  3. Defina a interface usada para IPsec; neste caso, eth0 é a interface pública habilitada para IPsec:
    set vpn ipsec ipsec-interfaces interface eth0
  4. Habilite a NAT transversal, permitindo que pacotes IPSec circulem através dos pontos NAT na rede:
    set vpn ipsec nat-traversal enable
  5. Defina a sub-rede de IP do cliente remoto a partir da qual a conexão é iniciada. Para que os clientes possam se conectar de qualquer lugar, especifique 0.0.0.0/0 como a rede autorizada
    set vpn ipsec nat-networks allowed-network 0.0.0.0/0
  6. Efetive a alteração:
    vyatta@vyatta# commit
    
  7. Salve a alteração:
    vyatta@vyatta# save
    Saving configuration to /config/config.boot
  8. Exiba a configuração do IPsec:
    vyatta@vyatta# show vpn ipsec
    ipsec-interfaces {
    interface eth0
    }
    nat-networks {
    allowed-network 0.0.0.0/0 {
    }
    }
    nat-traversal enable

Passo 2. Configure o endereço de acesso remoto do L2TP e o pool de clientes

  1. Vincule o servidor L2TP ao endereço externo:
    set vpn l2tp remote-access outside-address X.X.X.X

    Onde X.X.X.X representa o endereço IP da interface eth0 da Vyatta.

  2. Configure o pool de endereços IP que os clientes remotos da VPN irão assumir:
    set vpn l2tp remote-access client-ip-pool start 192.168.100.1

    Onde 192.168.100.10 representa o endereço IP inicial para o pool de clientes.

    set vpn l2tp remote-access client-ip-pool stop 192.168.100.100

    Onde 192.168.100.100 representa o endereço IP final para o pool de clientes.

Passo 3. Configure a autenticação de usuário e o segredo pré-compartilhado do IPsec

  1. Defina o modo de autenticação do IPsec para o segredo pré-compartilhado:

    set vpn l2tp remote-access ipsec-settings authentication mode pre-shared-secret
  2. Defina o segredo pré-compartilhado:

    set vpn l2tp remote-access ipsec-settings authentication pre-shared-secret SUPERSECRET
  3. Defina o modo de autenticação de acesso remoto do L2TP como "local":

    set vpn l2tp remote-access authentication mode local

    Isso indica que a autenticação de usuário ocorre localmente na aplicação Vyatta.

  4. Defina o nome de usuário e a senha de acesso remoto do L2TP:

    set vpn l2tp remote-access authentication local-users username test password test

    test e test representam o nome de usuário e a senha do cliente.

  5. Efetive a alteração:
    vyatta@vyatta# commit
  6. Salve a alteração:
    vyatta@vyatta# save 
    Saving configuration to /config/config.boot
  7. Exiba a configuração do LT2P:
    vyatta@vyatta# show vpn l2tp remote-access
    authentication {
    local-users {
    username test {
    password test
    }
    }
    mode local
    }
    client-ip-pool {
    start 192.168.100.1
    stop 192.168.100.100
    }
    ipsec-settings {
    authentication {
    mode pre-shared-secret
    pre-shared-secret SUPERSECRET
    }
    }
    outside-address X.X.X.X

Isso completa a configuração do L2TP na aplicação Vyatta. Caso queira editar a configuração de acesso remoto do L2TP mais tarde, digite remote-access enquanto estiver no modo edit do dispositivo Vyatta.

vyatta@vyatta# edit vpn l2tp remote-access 
[edit vpn l2tp remote-access]
vyatta@vyatta# 

A seção a seguir descreve como definir as configurações VPN em clientes Mac e Windows.

Configuração de cliente Mac

Em clientes Mac, será necessário configurar as seguintes opções:

  • Preferências de rede
  • Detalhes de conexão
  • Configurações de autenticação

Preferências de rede do cliente Mac

No menu Apple, selecione Preferências do Sistema e clique em Rede.

Selecione a rede Vyatta VPN (LT2P) e atualize as seguintes opções:

Detalhes de conexão do cliente Mac

Configurações de autenticação do cliente Mac

 

Configure um túnel dividido no cliente IPsec nativo do Mac

Se quiser que a conexão VPN seja usada apenas para acessar seus cloud servers e que todo o tráfego restante (tráfego de internet) não use o túnel IPsec, desmarque a opção "Enviar todo o tráfego pela conexão VPN", em Opções.

Depois de ativar a divisão de túnel em um cliente MAC, você pode precisar adicionar uma rota estática para forçar todo o tráfego destinado à rede VPN através da interface PPP. Por exemplo:

sudo /sbin/route add -net 192.168.x.0/24 -interface ppp0

Onde 192.168.x.0/24 é o CIDR da sua rede em nuvem.

 

O captura de tela a seguir mostra uma conexão bem-sucedida:

Configuração de cliente Windows

Para configurar clientes Windows, atualize as opções de rede a seguir.

Configure uma conexão de rede privada virtual (VPN)

 

Digite o endereço da internet com o qual se conectar

Digite as credenciais de login

Conecte-se à VPN

Configure as propriedades de VPN do Vyatta

Configure as propriedades da VPN na guia de configurações Gerais

Configure a guia Segurança da VPN

Configure as propriedades avançadas

Configure a divisão de túnel no cliente IPsec nativo do Windows

Em um cliente Windows, por padrão, após a criação da configuração da VPN, o cliente fica configurado para tunelamento total (todo o tráfego flui através da VPN). Se quiser configurar o cliente para tunelamento dividido (no qual o tráfego da internet não flui através da VPN), você pode modificar a configuração VPN do cliente da seguinte forma:

  1. Selecione Iniciar, Painel de Controle, Conexões de Rede.
  2. Clique com o botão direito no ícone da conexão VPN (Vyatta-L2TP) e escolha Propriedades.
  3. Clique em Avançado. Desmarque a caixa "Usar gateway padrão em rede remota".
  4. Clique em OK três vezes.

 

Exiba a conexão do cliente

Para verificar a conexão do cliente, faça o seguinte:

Acesse a Central de Rede e Compartilhamento para ver o cliente conectado à VPN do Vyatta.

Digite ipconfig em uma janela de linha de comandos para ver o endereço IP do cliente.

Exiba a configuração na aplicação Vyatta:

vyatta@vyatta:~$ show vpn remote-access 
Active remote access VPN sessions:
User            Proto Iface     Tunnel IP       TX byte RX byte  Time 
----            ----- -----     ---------       ------- -------  ---- 
test            L2TP  l2tp0     192.168.100.1      1.0K    6.1K  00h01m26s 
 


Este conteúdo foi útil?




© 2011-2013 Rackspace US, Inc.

Salvo indicação em contrário, o conteúdo deste site está licenciado sob uma licença não adaptada de Creative Commons Attribution-NonCommercial-NoDerivs 3.0


Ver detalhes da licença e o AVISO LEGAL