OpenVPN conecta mas sem acesso à internet

3

Não consigo descobrir por que minha conexão openvpn não está funcionando. Parece que funciona bem em conexão. Eu posso ligar para o meu servidor, mas uma vez quando estou conectado não consigo usar internet através da VPN.

Este é um servidor VPS rodando no Debian

Aqui está o meu arquivo server.conf openvpn

port 1194

proto udp

dev tun

ca ca.crt
cert server.crt
key server.key  # This file should be kept secret

dh dh2048.pem

server 10.8.0.0 255.255.255.0

ifconfig-pool-persist ipp.txt

push "redirect-gateway def1"

push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"

keepalive 10 120

comp-lzo

user nobody
group nogroup

persist-key
persist-tun

status openvpn-status.log

log         openvpn.log

verb 6

mute 20

E aqui está o meu arquivo client.conf

client

dev tun

proto udp

remote server_ip 1194

resolv-retry infinite

nobind

persist-key
persist-tun

ca ca.crt
cert client.crt
key client.key

ns-cert-type server

comp-lzo

verb 3

remote-cert-tls server

Adicionei regras de firewall também para aceitar conexão e rota, mas o mais estranho é que algumas regras aparecem várias vezes. Aqui está o meu arquivo de salvamento do iptables

# Generated by iptables-save v1.4.8 on Sun Dec 22 04:36:18 2013
*nat
:PREROUTING ACCEPT [53:9749]
:POSTROUTING ACCEPT [9:675]
:OUTPUT ACCEPT [9:675]
-A PREROUTING -d server_ip/32 -p udp -m udp --dport 53 -j REDIRECT --to-ports 1194 
-A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE 
-A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE 
-A POSTROUTING -s 10.8.0.0/24 -j SNAT --to-source server_ip 
-A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE 
COMMIT
# Completed on Sun Dec 22 04:36:18 2013
# Generated by iptables-save v1.4.8 on Sun Dec 22 04:36:18 2013
*filter
:INPUT ACCEPT [946:112417]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [824:172939]
-A INPUT -i tun0 -p tcp -m tcp --dport 1194 -j ACCEPT 
-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT 
-A FORWARD -s 10.8.0.0/24 -j ACCEPT 
-A FORWARD -j REJECT --reject-with icmp-port-unreachable 
-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT 
-A FORWARD -s 10.8.0.0/24 -j ACCEPT 
-A FORWARD -j REJECT --reject-with icmp-port-unreachable 
-A FORWARD -i eth0 -o tun0 -m state --state RELATED,ESTABLISHED -j ACCEPT 
-A FORWARD -s 10.8.0.0/24 -o eth0 -j ACCEPT 
COMMIT
# Completed on Sun Dec 22 04:36:18 2013

Eu também verifiquei o /etc/sysctl.conf para ter certeza de que

net.ipv4.ip_forward=1

Eu também tenho

net.ipv6.conf.all.forwarding=1

Então eu tentei conexão OpenVPN no meu PC Linux e no VirtualBox XP e ambos têm conexão, mas nenhum deles tem acesso à internet, uma vez conectado.

A coisa mais estranha de tudo isso é quando eu faço o traceroute e mostra conexão através de VPN.

Por exemplo, traceroute google.com

1 my ip from vpn connection
2 openvpn server ip
3 ...
4 ...
5 ... few hops between server to google
6 and finally google server ip

Então o traceroute mostra que a conexão passa pela vpn, e também quando eu faço ping, o ping é aumentado para 100ms na diferença quando não estou conectado à vpn quando o ping é de aproximadamente 20ms.

Mas quando eu tento navegar na internet com qualquer programa (firefox, chrome, iexplorer) eu não entendo nada. Nada será carregado e a conexão expirará.

Não é que meu servidor seja lento, portanto, as páginas não serão carregadas, o teste de velocidade mostra uma conexão de 70 MB no servidor e eu tenho uma conexão de 6 bits.

E quando tento me conectar a outra vpn como cloudnymous tudo funciona bem. É apenas algo errado na minha configuração openvpn.

EDIT: Depois de tudo que eu pensei que eu finalmente fiz isso funcionar, depois de mexer em um monte de configurações eu finalmente posso conectar à minha VPN e obter internet a partir daí.

Agora eu tenho um problema final. Desde que eu estou no linux poucos programas não funciona aqui e eu uso o VirtualBox com a instalação do Windows XP, mas quando conectado a VPN on Virtualbox eu posso navegar na internet. Mas nenhum programa pode se conectar à internet. Além disso, minha conexão vpn está perdendo a internet de vez em quando, e não é minha conexão com a internet ou servidor porque durante esse tempo quando eu perco a internet pela vpn eu ainda consigo conectar com putty sobre o ssh ao servidor e fazer várias coisas.

    
por Aleksandar Đorđević 22.12.2013 / 05:04

2 respostas

0

O mascaramento não funciona em um VPS. Você deve usar iptables Source NAT :

iptables -t nat -A POSTROUTING -s 10.x.x.x/xx -j SNAT --to-source y.y.y.y

x.x.x.x/x é a sub-rede da VPN - y.y.y.y é o endereço IP da interface de saída do servidor.

    
por 24.09.2015 / 00:44
-1

Eu tive um problema semelhante em que o OpenVPN estava funcionando bem até que eu mudei o roteador. Eu suspeitava do firewall do roteador, embora eu tivesse aberto as portas necessárias. No entanto, eu olhei para rc.local e vi que, quando configurado pela primeira vez, a linha iptables tinha sido configurada com o endereço IP real em vez da variável $ MY_IP que eu esperava assim:

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j SNAT - para 192.168.0.15

em vez de:

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j SNAT - para $ MY_IP

Problema estava mudando o roteador atribuído um IP diferente para o servidor e eu apenas fiz uma reserva para o novo IP e esperava que tudo funcionasse.

Se eu tivesse reservado o mesmo IP para o servidor, como antes, eu poderia ter poupado muito a atenção.

    
por 11.08.2017 / 13:54