Openswan - Configurando uma conexão VPN Site-to-Site e simulando com GNS3

O Openswan é uma ferramenta indispensável para conectar dois sites de forma segura através da internet. Nesse artigo além de mostrar a instalação e configuração do Openswan no Debian Jessie, será simulado todo o ambiente utilizando o GNS3.

[ Hits: 18.423 ]

Por: Sergei Martao em 23/11/2015


Configurando VMs e host hospedeiro



Aqui estão todas as configurações utilizadas nas VMs e no host hospedeiro para deixar o ambiente do GNS3 funcional:

Host: D8-SRV02

Editar o arquivo interfaces:

# vim /etc/network/interfaces

Deixar com o seguinte conteúdo:

# IP da eth0
allow-hotplug eth0
iface eth0 inet static
address 172.16.10.150
netmask 255.255.255.0
gateway 172.16.10.254

Host: D8-FW02

Editar arquivo interfaces:

# vim /etc/network/interfaces

Deixar com o seguinte conteúdo:

# Rede de servidores
allow-hotplug eth0
iface eth0 inet static
address 172.16.10.254
netmask 255.255.255.0

# Rede de desktops
allow-hotplug eth1
iface eth1 inet static
address 172.16.0.254
netmask 255.255.255.0

# Rede WAN
allow-hotplug eth2
iface eth2 inet static
address 201.27.8.2
netmask 255.255.255.252
gateway 201.27.8.1

Criar script de iptables fwregras.sh:

# vim /usr/local/bin/fwregras.sh

Adicionar o seguinte conteúdo:

#!/bin/bash
# Permitir a passagem de pacotes pelo firewall
echo 1 > /proc/sys/net/ipv4/ip_forward

# Limpar as regras anteriores de NAT, caso o script seja executado mais de uma vez
iptables -t nat -F

# Permitir a passagem dos IPs privados sem entrar no NAT
iptables -t nat -A POSTROUTING -d 10.0.0.0/8 -o eth2 -j ACCEPT
iptables -t nat -A POSTROUTING -d 172.16.0.0/12 -o eth2 -j ACCEPT
iptables -t nat -A POSTROUTING -d 192.168.0.0/16 -o eth2 -j ACCEPT

# NAT para qualquer IP de origem da rede interna
iptables -t nat -A POSTROUTING -s 172.16.0.0/24 -o eth2 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 172.16.10.0/24 -o eth2 -j MASQUERADE

Alterar permissão do script fwregras.sh:

# chmod 755 /usr/local/bin/fwregras.sh

Configurar script para iniciar junto com o sistema, editando o arquivo rc.local:

# vim /etc/rc.local

Deixar com o seguinte conteúdo:

/usr/local/bin/fwregras.sh
exit 0

Host: D8-FW01

Editar o arquivo interfaces:

# vim /etc/network/interfaces

Deixar com o seguinte conteúdo:

# Rede de servidores
allow-hotplug eth0
iface eth0 inet static
address 192.168.0.254
netmask 255.255.255.0

# Rede WAN
allow-hotplug eth1
iface eth1 inet static
address 187.8.230.2
netmask 255.255.255.252
gateway 187.8.230.1

Criar script de iptables fwregras.sh:

# vim /usr/local/bin/fwregras.sh

Adicionar o seguinte conteúdo:

# Permitir a passagem de pacotes pelo firewall
echo 1 > /proc/sys/net/ipv4/ip_forward

# Limpar as regras anteriores de NAT, caso o script seja executado mais de uma vez
iptables -t nat -F

# Permitir a passagem dos IPs privados sem entrar no NAT
iptables -t nat -A POSTROUTING -d 10.0.0.0/8 -o eth1 -j ACCEPT
iptables -t nat -A POSTROUTING -d 172.16.0.0/12 -o eth1 -j ACCEPT
iptables -t nat -A POSTROUTING -d 192.168.0.0/16 -o eth1 -j ACCEPT

# NAT para qualquer IP de origem da rede interna
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth1 -j MASQUERADE

Alterar permissão do script fwregras.sh:

# chmod 755 /usr/local/bin/fwregras.sh

Configurar script para iniciar junto com o sistema, editando o arquivo rc.local:

# vim /etc/rc.local

Deixar com o seguinte conteúdo:

/usr/local/bin/fwregras.sh
exit 0

Host: D8-SRV01

Editar o arquivo interfaces:

# vim /etc/network/interfaces

Deixar com o seguinte conteúdo:

# IP da eth0
allow-hotplug eth0
iface eth0 inet static
address 192.168.0.250
netmask 255.255.255.0
gateway 192.168.0.254

Host: D8-BB01

Editar o arquivo interfaces:

# vim /etc/network/interfaces

Deixar com o seguinte conteúdo:

# Rede para saída da internet
allow-hotplug eth0
iface eth0 inet static
address 177.8.8.2
netmask 255.255.255.252
gateway 177.8.8.1

# Bloqueando o roteamento de IPs privados
up route add -net 10.0.0.0/8 reject
up route add -net 172.16.0.0/12 reject
up route add -net 192.168.0.0/16 reject

# Rede do Site-B
allow-hotplug eth1
iface eth1 inet static
address 187.8.230.0
netmask 255.255.255.252

# Rede do Site-A
allow-hotplug eth0
iface eth0 inet static
address 201.27.8.0
netmask 255.255.255.252

Criar script de iptables fwregras.sh:

# vim /usr/local/bin/fwregras.sh

Adicionar o seguinte conteúdo.

#!/bin/bash
# Permitir a passagem de pacotes pelo firewall
echo 1 > /proc/sys/net/ipv4/ip_forward

# NAT necessário para a comunicação funcionar com a interface tuntap
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Alterar permissão do script fwregras.sh

# chmod 755 /usr/local/bin/fwregras.sh

Configurar script para iniciar junto com o sistema, editando o arquivo rc.local:

# vim /etc/rc.local

Deixar com o seguinte conteúdo:

/usr/local/bin/fwregras.sh
exit 0

Host Hospedeiro

Configurações do tunel tap0, utilizado para simular Desk02:

sudo ip tuntap add dev tap1 mode tap
sudo ifconfig tap1 172.16.0.100 netmask 255.255.255.0 up

Configurações do tunel tap1, utilizado para simular o BB-Saida-internet:

sudo ip tuntap add dev tap0 mode tap
sudo ifconfig tap0 177.8.8.1 netmask 255.255.255.0 up

Rota para a rede de servidores Site-A:

sudo route add -net 172.16.10.0/24 gw 172.16.0.254

Rota para a rede de servidores Site-B:

sudo route add -net 192.168.0.0/24 gw 172.16.0.254

Permitir a passagem de pacotes pela interface:

sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"

Mascarar a saída permitindo o acesso a internet das VMs, substituir wlp9s0 pela interface de rede do host hospedeiro:

sudo iptables -t nat -A POSTROUTING -o wlp9s0 -j MASQUERADE

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Configurando VMs e host hospedeiro
   3. Instalação e configuração do Openswan
   4. Validar funcionamento da VPN IPsec
Outros artigos deste autor

Criando um template customizado para o CACTI

Planejando e migrando softwares do Windows para o Linux

Utilizando o script vpnautomatica

Configurando o segundo default gateway para um link de entrada específico

Simulando redes com o GNS

Leitura recomendada

Problemas encontrados na adoção do IPv6

Zoneminder: Substituindo um Unifi NVR

Emulador de Redes Mininet

Conexões Wireless com DHCP no Slackware - Configuração à moda antiga

Docker - Containers em Linux

  
Comentários
[1] Comentário enviado por weidsom em 05/12/2015 - 19:44h


Valeu fera belo artigo!

[2] Comentário enviado por sergeimartao em 07/12/2015 - 23:14h

Fico feliz que tenha gostado, vlw!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts