OpenVPN [RESOLVIDO]

1. OpenVPN [RESOLVIDO]

Leandro Miranda Nonato
leandro.miranda

(usa Debian)

Enviado em 31/08/2010 - 12:42h

Seguinte,

Fiz a VPN entre duas lojas, os servidores já estão se comunicando atravéz de ping com as estações das duas classes de rede. Mais as estações só veem o Servidor A e Servidor B e eu não estou conseguindo resolver isso há dias.

Servidor A
tun0 10.0.0.1
eth0 192.168.0.250

Estação Windows A1
Está estação consegue pingar 192.168.1.250 mais não consegue pingar as demais maquinas na rede....

Servidor B
tun0 10.0.0.2
eth0 192.168.1.250


Matriz.conf
dev tun
ifconfig 10.0.0.2 10.0.0.1
secret /etc/openvpn/static.key
comp-lzo
port 5010
user root
group root
keepalive 10 60
ping-timer-rem
persist-tun
persist-key
push "route 192.168.1.0 255.255.255.0"
proto udp
Estação Windows B1
Está estação consegue pingar 192.168.0.250 mais não consegue pingar as demais....


  


2. resp

Jeferson Irineu Marchi
jeffy.marchi

(usa OpenBSD)

Enviado em 31/08/2010 - 13:21h

Como esta teus roteamentos as maquinas atras, estas maquinas sao gateways na tua rede ou fizeste em maquinas separadas ???


3. push route

irado furioso com tudo
irado

(usa XUbuntu)

Enviado em 31/08/2010 - 13:22h

reveja essa questão do "push route"; se estou bem lembrado, isso aí deveria mencionar os ip.addr das interfaces tun de ambos os lados, porque é por elas que os pacotes vpn vão trafegar.

"Including multiple machines on the server side when using a routed VPN (dev tun)

Once the VPN is operational in a point-to-point capacity between client and server, it may be desirable to expand the scope of the VPN so that clients can reach multiple machines on the server network, rather than only the server machine itself.

For the purpose of this example, we will assume that the server-side LAN uses a subnet of 10.66.0.0/24 and the VPN IP address pool uses 10.8.0.0/24 as cited in the server directive in the OpenVPN server configuration file.

First, you must advertise the 10.66.0.0/24 subnet to VPN clients as being accessible through the VPN. This can easily be done with the following server-side config file directive:

push "route 10.66.0.0 255.255.255.0"

Next, you must set up a route on the server-side LAN gateway to route the VPN client subnet (10.8.0.0/24) to the OpenVPN server (this is only necessary if the OpenVPN server and the LAN gateway are different machines).

Make sure that you've enabled IP and TUN/TAP forwarding on the OpenVPN server machine.
"

http://www.openvpn.net/index.php/open-source/documentation/howto.html



4. Rotas da VPN A

Leandro Miranda Nonato
leandro.miranda

(usa Debian)

Enviado em 31/08/2010 - 13:53h

leandro@vpn:~$ sudo route -n
[sudo] password for leandro:
Tabela de Roteamento IP do Kernel
Destino Roteador MáscaraGen. Opções Métrica Ref Uso Iface
10.0.0.2 0.0.0.0 255.255.255.255 UH 0 0 0 tun0
192.168.1.0 10.0.0.2 255.255.255.0 UG 0 0 0 tun0
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
0.0.0.0 192.168.0.1 0.0.0.0 UG 0 0 0 eth0
leandro@vpn:~$


=============

leandro@valemar:~$ sudo route -n
[sudo] password for leandro:
Tabela de Roteamento IP do Kernel
Destino Roteador MáscaraGen. Opções Métrica Ref Uso Iface
10.0.0.1 0.0.0.0 255.255.255.255 UH 0 0 0 tun0
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
192.168.0.0 10.0.0.1 255.255.255.0 UG 0 0 0 tun0
0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth0
leandro@valemar:~$





5. Rotas

Fabio Soares Schmidt
fs.schmidt

(usa CentOS)

Enviado em 31/08/2010 - 15:05h

Olá amigo! Pelo que entendi você possui essa seguinte estrutura:

PONTA A:
REDE: 192.168.0.0/24
IP LOCAL: 192.168.0.250
TUN0: 10.0.0.1

PONTA B:
REDE: 192.168.1.0/24
IP LOCAL: 192.168.1.250
TUN0: 10.0.0.2

Desta forma, você precisa verificar:

- O endereço 10.0.0.1 está atribuido na interface TUN0 da PONTA A?
- O endereço 10.0.0.2 está atribuido na interface TUN0 da PONTA B?
- O encaminhamento de pacotes está habilitado nos dois servidores e as rotas estão criadas? (na ponta A seria "route add -net 192.168.1.0 netmask 255.255.255.0 gw 10.0.0.2" e na ponta B "route add -net 192.168.0.0 netmask 255.255.255.0 gw 10.0.0.1"
- Os servidores estão configurados como o gateway padrão de todas as estações?

Se precisar, consulte esse meu artigo que pode ajudar a esclarecer: http://www.vivaolinux.com.br/artigo/Criando-VPN-sitetosite-conectando-diversas-filiais-a-matriz-com-...


6. Tem um detalhes.

Leandro Miranda Nonato
leandro.miranda

(usa Debian)

Enviado em 31/08/2010 - 15:25h

Eu na loja B tenho um router 192.168.1.1 que compartilha a internet. E na Loja A eu tenho um Endian Firewall 192.168.0.1 instalado... Esse servidor VPN terá um SAmba com os arquivos da empresa..

Se eu tirar o 192.168.0.1 como gateway eu perco conexão com a internet. Ai o servidor perde a VPN.


7. Re: OpenVPN [RESOLVIDO]

Fabio Soares Schmidt
fs.schmidt

(usa CentOS)

Enviado em 31/08/2010 - 15:38h

Leandro, como você irá fechar a VPN através dos servidores Linux, adicione os routers que você falou como gateway default nos servidores, habilite o encaminhamento de pacotes, crie as rotas para as redes como falei e configure o servidor linux de cada ponta como GW default das estações.

Desta forma, se o pacote for destinado a outra rede, o linux encaminha para a outra ponta da VPN, se não, encaminha para o router que faz a sua conexão à internet.

Obs.: Eu não instalaria os serviços de VPN e servidor de arquivos em um mesmo host, se houver uma incidente de segurança e conseguirem acesso a este servidor terão acesso também aos arquivos.


8. fs.

Leandro Miranda Nonato
leandro.miranda

(usa Debian)

Enviado em 01/09/2010 - 11:42h

Vou tentar fazer com que todas as estações possam ter como default gw o VPN e você diz fazer um iptables para que tudo que vier solicitando a porta 80 443 21 e demais do msn e tal passem para o gw da internet, é isso?


9. Re: OpenVPN [RESOLVIDO]

Carlos A. Parisotto
carlosparisotto

(usa Red Hat)

Enviado em 01/09/2010 - 11:46h

Se os servidores estão se comunicando apenas pelo IP da interface 'tun' vc tem que adicionar uma rota para cada servidor:
no A: route add -net 192.168.1.0 netmask 255.255.255.0 gw 10.0.0.1
no B: route add -net 192.168.0.0 netmask 255.255.255.0 gw 10.0.0.2
Se os servidores estiverem se comunicando pelos IPs de faixa interna, você precisa colocar o IP do servidor como gateway para os terminais da sua rede interna.
Além disso, vocÊ tem que deixar o Forward e o Postrouting do iptables funcionando:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Espero que eu tenha ajudado



10. carlosparisotto

Leandro Miranda Nonato
leandro.miranda

(usa Debian)

Enviado em 01/09/2010 - 12:38h

carlosparisotto,

Eu fiz essas rotas no servidor, e também usei esta regra no iptables. coloquei elas no /etc/rc.local

Veja abaixo:

leandro@vpn:~$ tail /etc/rc.local
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -s 10.0.0.2 -A POSTROUTING -o eth0 -j MASQUERADE
exit 0
leandro@vpn:~$ ip route
10.0.0.2 dev tun0 proto kernel scope link src 10.0.0.1
192.168.1.0/24 via 10.0.0.2 dev tun0
192.168.0.0/24 dev eth0 proto kernel scope link src 192.168.0.250
default via 192.168.0.1 dev eth0
leandro@vpn:~$ ping 192.168.1.4 -c1
PING 192.168.1.4 (192.168.1.4) 56(84) bytes of data.
64 bytes from 192.168.1.4: icmp_seq=1 ttl=127 time=104 ms

--- 192.168.1.4 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 104.082/104.082/104.082/0.000 ms
leandro@vpn:~$ ping 192.168.1.98 -c1
PING 192.168.1.98 (192.168.1.98) 56(84) bytes of data.
64 bytes from 192.168.1.98: icmp_seq=1 ttl=127 time=105 ms

--- 192.168.1.98 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 105.091/105.091/105.091/0.000 ms
leandro@vpn:~$

==============
Veja acima eu estou pingando as estações na VPN A e a VPNB também. Só que as estações não estão acessíveis.
==============
O que me deixa confuso é que de qualquer estação da Ponta A eu pingo o servidor da VPN na ponta B e o ping ocorre normal.




11. RESOLVI

Leandro Miranda Nonato
leandro.miranda

(usa Debian)

Enviado em 01/09/2010 - 13:24h

Pessoal, muito obrigado pela atenção.

Dentro do rc.local VPN (A)
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -s 10.0.0.2 -A POSTROUTING -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE

Dentro do rc.local VPN (B)
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -s 10.0.0.1 -A POSTROUTING -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE

Nas estações do Windows VPN A
route add 192.168.1.0 mask 255.255.255.0 192.168.0.250

Nas estações do Windows VPN A
route add 192.168.0.0 mask 255.255.255.0 192.168.1.250

Estão trabalhando normalmente!!!







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts