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: 14.994 ]

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

Planejando e migrando softwares do Windows para o Linux

Criando um template customizado para o CACTI

Simulando redes com o GNS

Utilizando o script vpnautomatica

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

Leitura recomendada

TurnKey Linux - Instale e configure serviços de rede facilmente

Alterando o forward do SSH após conexão

Análise de Desempenho: Web API

Nagios enviando alertas via WhatsAPP

Asterisk - Configuração de conferência com PIN

  
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
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts