Skins Ubuntuchina Logo

Quando falei que instalar a VPN grátis OpenSwan no Ubuntu não era fácil algumas pessoas me perguntaram como eu consegui. Resolvi fazer então um breve tutorial, assim como colocar aqui os arquivos envolvidos nessa instalação. Já aviso que não sou especialista, apenas um curioso fuçador.

Para configurar a VPN usamos a nomenclatura left e right para estabelecer os lados da conexão. No meu caso left é o lado da minha rede de casa. Vamos lá.

1. Instalar o OpenSwan:

$ sudo apt-get install openswan

2. Verificar a instalação:

$ sudo ipsec verify

3. Os arquivos de configuração que você precisará mexer são:
/etc/ipsec.d/private/ubuntuKey.pem (gerada automaticamente na instalação)
/etc/ipsec.secrets (contém os ips válidos – seu e do gateway vpn do outro lado)

201.201.201.201 200.200.200.200 : PSK "senha"
: RSA /etc/ipsec.d/private/ubuntuKey.pem

/etc/init.d/meu_nat (arquivo que contém o nat do meu ip válido (201.201.201.201) válido para o ip final – da máquina que desejo acessar – veja o conteúdo)

if [[ $1 == start ]] ; then
sudo iptables -t nat -A POSTROUTING -s 10.100.0.0/16 -d 200.200.200.5/32 -j SNAT --to 201.201.201.201
echo "1" > /proc/sys/net/ipv4/ip_forward
else
sudo iptables -F -t nat
fi

/etc/ipsec.conf (coloco os comentarios depois de #)

interfaces="ipsec0=eth0"
klipsdebug=none
plutodebug=all
uniqueids=yes
nat_traversal=yes
conn minhavpn
type=tunnel
auto=add
auth=esp
authby=secret
pfs=no
keyingtries=2
left=10.100.5.53 #ip da máquina que faz o acesso remoto
leftid=201.201.201.201 # ip válido da minha rede (do modem adsl)
leftnexthop=10.100.254.254 # meu gateway do meu modem adsl
leftsubnet=201.201.201.201/32 # ip válido da minha rede (do modem adsl)
right=200.200.200.200 # ip do gateway vpn do outro lado que desejo acessar
rightid=200.200.200.200 # ip do gateway vpn
rightsubnet=200.200.200.5/32 # ip da máquina final
esp="3des-md5"
compress=no

Você tem que executar o NAT pra tudo funcionar. Depois basta levantar a rede:

sudo ipsec auto --up minhavpn

Parar a VPN:

sudo ipsec auto --down csn

Reiniciar o serviço de VPN:

sudo ipsec setup restart

Para ver se a vpn está ativa, verifique na tabela de rotas:

netstat -nr

ou

ipsec look

Para debugar a VPN:

sudo ipsec auto --status

Dê um ping no endereço IP da máquina final e veja o tráfego do pacote via o comando:

sudo tcpdump -i eth0

você pode jogar este log para arquivo também:

sudo ipsec barf >> /tmp/log-vpn.txt

Para dar um find e encontrar uma palavra chave dentro de algum arquivo texto:

find /etc/init.d/ -type f -print0 | xargs -0 grep "palavra"

Este tutorial inglês mostra bem outros detalhes da configuração.

Página oficial OpenSwan