OpenVPN -Linux central x Linux filial

Montei esse artigo para facilitar e orientar na montagem de uma VPN sem muito trabalho ou esforço, facilitando a ligação da empresa central com as filiais, com segurança. Espero ajudar a todos e aprender também.

[ Hits: 29.468 ]

Por: Anderson Aguiar em 07/08/2008


Mascarando e colocando regras iptables em nossa VPN



Agora vamos para parte mais chata. Esse próximo passo vai fazer nossa rede se enxergar. Você deve estar perguntando porque? Nossa VPN está funcionando, mas não conseguimos enxergar a rede da filial pela empresa e nem a empresa pela filial.

Agora vamos criar rota para acessar a rede. Vamos criar um arquivo chamado route:

# vi /etc/openvpn/route

#! /bin/bash

#Nesse processo estou apontando uma rota para gateway filial
route add -net 192.168.0.0 netmask 255.255.0.0 gw 10.0.0.1

#Aqui estou liberando a máscara
iptables -t nat -A POSTROUTING -o tun+ -j MASQUERADE

#E aqui estou permitindo a passagem de pacotes entre as redes
iptables -A FORWARD -i tun0 -s 192.168.1.0/24 -d 192.168.0.0/24 -j ACCEPT

O arquivo da empresa está pronto, vamos criar o arquivo da filial.

Na máquina da filial:

# vi /etc/openvpn/route

#! /bin/bash

#Nesse processo estou apontando uma rota para gateway filial
route add -net 192.168.1.0 netmask 255.255.0.0 gw 10.0.0.2

#Aqui estou liberando o máscara
iptables -t nat -A POSTROUTING -o tun+ -j MASQUERADE

#E aqui estou permitindo a passagem de pacotes entre as redes
iptables -A FORWARD -i tun0 -s 192.168.0.0/24 -d 192.168.1.0/24 -j ACCEPT

Pronto galera. Agora temos uma rede conectada com outra.

Faça um teste, vá em uma máquina Windows e em executar abra a pasta do servidor que está na outra rede.

Sua VPN está segura e funcionando!

Se sua VPN estiver lenta, reflita sobre o tamanho da banda larga que você tem, quantos acessos terá na rede e o mais importante, se você está desperdiçando banda com MSN, sites pesados etc.

Lembrando que ainda falta o OpenSSL, que cria a chave certificadora dando mais segurança ao seu túnel. Mas essa parte vai ficar para outro tutorial que postarei em breve.

Espero ter ajudado e também espero obter ajuda caso tenha escrito algo de errado ou faltando informações.

Mais uma coisa, quando mandarem perguntas, por favor responda se deu certo ou não, a maioria das pessoas pede ajuda e desaparece, não dizem se deu certo, lembrando que somos uma comunidade.

Até a próximo.
Anderson Aguiar - [email protected]

Página anterior    

Páginas do artigo
   1. Instalação e preparação do ambiente VPN
   2. Criar a chave, montar e configurar nossa OpenVPN
   3. Mascarando e colocando regras iptables em nossa VPN
Outros artigos deste autor

Montando o Squid

Leitura recomendada

Tomcat com URL limpa

VivoZAP - Placa pcmcia

Compartilhando a internet com apenas uma placa de rede e um hub/switch

Servidor de e-mail completo

Simulando aplicações simples com TinyOS e Cooja

  
Comentários
[1] Comentário enviado por andrebsilva em 07/08/2008 - 10:30h

bem instrutivo...

parabéns

[2] Comentário enviado por irado em 07/08/2008 - 10:44h

hmm... acho que mais claro/esclarecedor artigo que já li sobre a utilização do OpenVPN. Parabéns.

[3] Comentário enviado por removido em 07/08/2008 - 11:17h

Achei muito bacana já tinha visto um aqui no volume bem legal também...

[4] Comentário enviado por redhat2 em 07/08/2008 - 11:30h

Muito bom muito instrutivo

[5] Comentário enviado por der.aguiar em 07/08/2008 - 12:50h

Galera agradeço a força...... se tiver melhorias ou dicas por favor me envie....

agradeço a todos.....

Anderson Aguiar - [email protected]

[6] Comentário enviado por Riverfount em 07/08/2008 - 17:37h

Bem interessante, mas e se na sede da empresa o servidor VPN for um Windows, como configuro para que o terminal Linux, na filial, acesse essa rede?

Grato

Vicente

[7] Comentário enviado por grandmaster em 08/08/2008 - 00:00h

Assim fica fácil montar :D

Renato de Castro Henriques
CobiT Foundation 4.1 Certified ID: 90391725
http://www.renato.henriques.nom.br

[8] Comentário enviado por der.aguiar em 08/08/2008 - 07:28h

Amigo Vicente....
Vpn de Windows x Linux, usando a openvpn é um pouco chato...
eu montei uma para vendedores externo, é longo para explicar dessa forma.
Vou montar um Artigo no mais tardar em 2 dias vou mandar pra vc via e-mail.

Qual é o seu e-mail?

Anderson Aguiar - [email protected]

[9] Comentário enviado por ctavares em 11/08/2008 - 21:39h

Amigo, pelo que vi nesse tutorial nós precisamos executar alguns comandos na filial e matriz para o tunel ser criado, mas imagina o seguinte, se por acaso o link de um dos lados cair por algumas horas e depois voltar, o OPEN VPN irá recriar o tunel automaticamente?

[10] Comentário enviado por der.aguiar em 12/08/2008 - 07:16h

Não, não faz automaticamente!!
Se vc estiver colocando um ip fixo na vpn, é so digitar novamente o comando.
Na realidade, esqueci de falar sobre isso. É so vc criar um arquivo *.sh, com as linhas
de comando e executar.
Quem tem ip dinamico, não vai conseguir. Nesse caso tem que dar
kill no servico e dar o comando novamente.

Se não ficou claro o que escrevi, entre em contato que lhe enviarei mais informações.

anderson aguiar
[email protected]

[11] Comentário enviado por andrewsluiz em 01/09/2008 - 19:41h

Bom, configurei e funcionou blz ... perfeito seu artigo, agora (pra variar) apareceu mais um necessidade aqui na empresa e se voce souber como fazer te agradeço se puder ajudar. Preciso da seguinte configuração Matriz acessa Filiais e Filiais acessam Matriz .. até ai ok ... mas preciso de Filiais tambem acessam Filiais ... é possivel ????

[12] Comentário enviado por der.aguiar em 02/09/2008 - 07:32h

Bom dia, bem faça o seguinte vc tem que ter o ip fixo nas maquinas, 1 ponto.
Agora vc utiliza o seguinte comando .

aqui vc cria scripts para executar ou coloca no rc.local do seu linux que ele executa sozinho.

####Matrix
#! /bin/bash
#Aqui estou fazendo a matrix ter mais 2 gateway (confiança de acesso), que seriam das filiais conectadas a matrix
route add -net IP_da_Rede_Filial1 netmask 255.255.255.0 gw Ip_vpn_Filial1 dev tun0
iptables -t nat -s Ip_vpn_Filial1 -A POSTROUTING -o eth0 -j MASQUERADE

route add -net Ip_da_Rede_Filial2 netmask 255.255.255.0 gw Ip_vpn_filial2 dev tun0
iptables -t nat -s Ip_da_Rede_filial2 -A POSTROUTING -o eth0 -j MASQUERADE


Agora coloque nas Filiais
###Filial2
#! /bin/bash
route add -net IP_da_Rede_Filial1 netmask 255.255.255.0 gw Ip_vpn_Filial1 dev tun0
iptables -t nat -s Ip_vpn_Filial1 -A POSTROUTING -o eth0 -j MASQUERADE

route add -net Ip_da_Rede_Matrix netmask 255.255.255.0 gw Ip_vpn_Matrix dev tun0
iptables -t nat -s Ip_da_Rede_Matrix -A POSTROUTING -o eth0 -j MASQUERADE

faça isso tb na filial1 invertendo os para o ip da filial2..

detalhe não e ip externo mas sim da rede interna, repare que meu eth0 é a rede interna, assim direciono a entrada da rede externa para a interna.

Blz! se precisar so entrar em contato.

Anderson Aguiar - adm. Redes
[email protected]

[13] Comentário enviado por agimenez em 18/09/2008 - 07:14h

Olá Anderson, vi que você tem alguma documentação de OpenVPN de Windows para Linux, poderia enviar pra mim via e-mail?

Agradeço desde já!

alexandre.gimenez at gmail.com

[14] Comentário enviado por hgdanilo em 07/10/2008 - 11:58h

Olá Anderson, achei muito interessante seu artigo.

Gostaria de saber como eu devo fazer no caso de filiais windows? Ex: Tenho uma matriz conforme a que você montou e tenho o micro na minha casa que é windows XP e gostaria de entrar nessa VPN, como devo fazer?

Agradeço desde já

Danilo - [email protected]

[15] Comentário enviado por der.aguiar em 09/10/2008 - 11:24h

Galera prometo, que na semana que vem eu termino o artigo da openvpn entre linux x windows....

estou trabalhando muito e não tive tempo de terminar... blz
anderson aguair - [email protected]

[16] Comentário enviado por leandrobrunoo em 17/07/2009 - 16:31h

Ola amigo der.aguiar

seu artigo e show

agora me tira uma duvida, eu fiz tudo como manda o artigo, funcionou certin.
quando ping da maquina server central pra maquina server cliente, funfa legal,
agora quando eu entro em outra maquina, tipo windows xp e pingo com outra maquina da rede 192.168.0.1 naum funciona

tanto da central pra cliente, quantu da client pra central !
pode me ajudar ?????


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts