OpenVPN: sem encaminhamento de DNS

1

Consegui configurar um OpenVPN roteado no meu VPS com o Ubuntu 10.04. Eu sou capaz de fazer o ping nos dois sentidos, bem como abrir qualquer site usando endereços IP no cliente. Por meio de nomes de domínio, no entanto, isso não funciona.

Desde que eu sou relativamente novo no OpenVPN e Linux, eu não tenho certeza de onde para iniciar a solução de problemas. Como o servidor é um VPS eu não tenho acesso ao seu local rede, mas tenho pressionado que eu deveria ser capaz de definir o meu servidor como servidor DNS para meus clientes VPN? Usando seu servidor DNS como meu servidor de clientes VPN. Baseado nisso eu tentei adicionando push "dhcp-option DNS 10.x.x.x", mas sem sorte.

A configuração do lado do meu servidor é semelhante à configuração de amostra Além disso, incluímos push "redirecionamento-gateway def1"

A configuração do meu cliente é assim,

client
dev tun
proto udp
remote my.server.com 1194
resolv-retry infinite
nobind
user nobody
group nobody
persist-key
persist-tun
ca ca.crt
cert sovos.crt
key sovos.key
comp-lzo
verb 6

Atualização: Eu descobri que o servidor envia as configurações de DNS corretamente, ou seja, os valores no resolv.conf mudam quando eu me conecto à VPN no cliente. No entanto, ainda não consigo fazer pesquisas, mesmo usando servidores DNS públicos, como o do Google.

    
por KG Christensen 13.08.2012 / 06:40

2 respostas

0

Acontece que o iptables estava mal configurado.

Essas configurações funcionaram, onde XX é meu eth0 ip.

#Make vpn clients who connect on the tun interface able to reach the internet through the main interface (eth0)
iptables -t nat -A POSTROUTING -s 10.8.0.0/255.255.255.0 -j SNAT --to-source XX.XX.XX.XX
    
por 15.08.2012 / 03:34
0

Seu servidor precisa estar executando um servidor DNS para que isso funcione, o que não será por padrão. Suas opções basicamente são:

  1. Não envie servidores DNS e deixe os clientes usarem o servidor DNS em sua rede local. Isso pode não funcionar se o servidor DNS local não estiver na mesma sub-rede que o cliente.
  2. Envie um servidor DNS público como o do Google (8.8.8.8 e 8.8.4.4), que os clientes acessarão através da VPN.
  3. Executar um servidor DNS no servidor VPN ( dnsmasq é provavelmente o mais fácil de configurar), e empurre isso para os clientes.
por 13.08.2012 / 08:35