Local correto para anunciar rotas do OpenVPN para Instâncias do EC2?

3

Configuração

Eu tenho um servidor OpenVPN funcionando bem na AWS. Todos na minha equipe podem usá-lo para alcançar qualquer um dos servidores da AWS.

Precisa

Agora eu tenho uma nova necessidade. Agora, os servidores da AWS precisam ser capazes de alcançar um (mas tudo ficaria bem) das máquinas conectadas via VPN. Do próprio servidor VPN, posso acessar a máquina (que é um roteador) e todas as máquinas que ela pode ver em sua rede. No entanto, nenhum dos outros servidores na AWS pode.

Perguntas

Onde é o local correto para anunciar (para máquinas no datacenter) que as solicitações para 10.10.10.0/16 (site conectado VPN remoto) devem ser roteadas através do meu servidor VPN?

Qual interface do endereço do servidor VPN devo usar?

Detalhes

  • AWS VPC CIDR: 172.31.0.0/16
    • openvpn.conf: push "route 172.31.0.0 255.255.0.0"
  • IP do servidor OpenVPN: 172.31.17.151
  • CIDR do cliente OpenVPN Server: 172.141.0.0/17
    • openvpn.conf: server 172.141.0.0 255.255.128.0
  • Cliente a ser alcançado: 10.10.10.1
    • openvpn.conf: route 10.10.10.0 255.255.255.0
    • openvpn.conf: push "route 10.10.10.0 255.255.255.0"
    • ccd / commonname: ifconfig-push 10.10.10.1 10.10.10.2
    • ccd / commonname: iroute 10.10.10.0 255.255.255.0
  • Ponto do cliente a ser alcançado: 10.10.10.101

OpenVPN ifconfig :

eth0      Link encap:Ethernet  HWaddr 06:52:B7:00:71:F9
          inet addr:172.31.17.151  Bcast:172.31.17.255  Mask:255.255.255.0

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0

tun0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
          inet addr:172.141.0.1  P-t-P:172.141.0.2  Mask:255.255.255.255

OpenVPN iptables:

Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination
1    ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:1194
2    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:22
3    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:80

Chain FORWARD (policy ACCEPT)
num  target     prot opt source               destination
1    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
2    ACCEPT     all  --  172.31.0.0/16        0.0.0.0/0
3    ACCEPT     tcp  --  172.127.0.0/20       172.31.6.110        tcp dpt:22
4    REJECT     tcp  --  172.127.0.0/20       0.0.0.0/0           tcp dpt:22 reject-with icmp-host-prohibited
5    ACCEPT     all  --  172.127.0.0/20       0.0.0.0/0
6    ACCEPT     tcp  --  172.141.0.0/17       172.31.6.110        tcp dpt:22
7    REJECT     tcp  --  172.141.0.0/17       0.0.0.0/0           tcp dpt:22 reject-with icmp-host-prohibited
8    ACCEPT     all  --  172.141.0.0/17       0.0.0.0/0
9    REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-port-unreachable

Chain OUTPUT (policy ACCEPT)
    
por Bruno Bronosky 26.05.2017 / 21:48

1 resposta

0

O local correto para anunciar o roteamento de VPN para outras máquinas na AWS está na tabela de roteamento de sub-rede.

Para fazer isso:

  • VPC > Sub-redes > [sub-rede para dar acesso] > Tabela de rota > [nome da tabela de rotas]
  • Rotas > Editar > Adicione outra rota
    • Destino: 10.10.10.0/24 (corresponde a "rota 10.10.10.0 255.255.255.0")
    • Destino: eni-a1b2c3d4 (id da interface de rede associada a 172.31.17.151)

Você também deve alterar a "Verificação de origem / destino" da interface de rede.

Para fazer isso:

  • EC2 > Interfaces de Rede > [interface associada ao IP interno da VPN]
  • Ações > Alterar origem / destino Verifica
    • Origem / destino verificar: desativado

O que não funcionou foi adicionar a rota a uma única máquina.

Eu esperava que conseguisse o mesmo efeito, mas em uma única máquina:

sudo ip addr add 172.31.17.151 dev eth0
sudo ip route add 10.10.10.0/24 via 172.31.17.151 dev eth0

Isso não funcionou para mim. Eu adoraria saber o porquê.

    
por 27.05.2017 / 08:04