bloquear fuera de dns, arreglar dns fuga ubuntu 18.04

10

Usando la prueba de fuga dns mientras estaba bajo mi VPN, descubrí que estaba goteando. He configurado mi VPN a través de NetworkManager y funciona correctamente, excepto por la fuga.

Primero, intenté agregar block-outside-vpnal archivo de configuración, excepto que debajo /etc/NetworkManager/system-connectionsno sigue el mismo formato. No pude encontrar el documento sobre cómo escribir correctamente uno para las fugas de DNS.

Además, usar Ubuntu 18.04 resolv.conf no funciona como antes, todas las otras respuestas se basan en eso.

Brevemente, ¿cómo bloquear el dns externo (fuga) usando los archivos de configuración de Network Manager o la GUI?

Pobe
fuente
block-outside-vpnnormalmente es solo una opción de conexión de Windows OpenVPN. Arreglar la "fuga" de DNS sería utilizar un servidor DNS específico que solo exista en el otro lado de la VPN. ¿Cuáles fueron los resultados de la Prueba de fuga de DNS que viste? (son relevantes)
Thomas Ward

Respuestas:

3

Sugiero usar dnscrypt.

Primero instálalo:

sudo apt install dnscrypt-proxy

Por defecto escuchará el 127.0.2.1puerto 53.

Edite su VPN o cualquier otra conexión que desee y configúrela 127.0.2.1como su servidor DNS, con CLI puede ejecutar:

nmcli connection modify [CONNECTION-NAME] ipv4.dns 127.0.2.1

Y por si acaso, bloquee las solicitudes de DNS salientes:

sudo ufw deny out 53

Y asegúrese de que el firewall esté habilitado:

sudo ufw enable
Ravexina
fuente
Mi DNS todavía tiene fugas según la prueba de fuga de DNS. También es importante mencionar que deshabilitar VPN mientras ufw está habilitado haría que Internet no esté disponible (puerto bloqueado 53).
Pobe
Ejecute este comando: nmcli connection modify [CONNECTION-NAME] ipv4.ignore-auto-dns yesvea si ayuda.
Ravexina
3

Para arreglar las fugas de DNS en Ubuntu 18.04, puede editar un archivo llamado /etc/dhcp/dhclient.conf. De acuerdo con la página del manual, este archivo "proporciona un medio para configurar una o más interfaces de red utilizando el Protocolo de configuración dinámica de host, el protocolo BOOTP, o si estos protocolos fallan, asignando una dirección estáticamente".

En cuanto a la reparación de sus fugas de DNS, estaremos editando este archivo. Al abrirlo con los permisos adecuados, verá una línea comentada que se ve así:

#prepend domain-name-servers 127.0.0.53;

Elimine el comentario de esta línea y cambie el servidor de nombres de dominio a uno diferente, como OpenDNS: 208.67.222.222. Usando esta dirección OpenDNS, esta línea ahora se vería así:

prepend domain-name-servers 208.67.222.222;

Después de guardar el archivo y reiniciar su sistema, esto debería solucionar las fugas de DNS en Ubuntu 18.04.


fuente
O simplemente puede editar su conexión en una GUI y obtener el mismo resultado: abra la ventana de edición para su conexión => Configuración de IPv4 / IPv6, cambie "Método" a "Automático, solo direcciones" y agregue sus "servidores DNS".
GoodGuyNick
El método de @GoodGuyNick a través de la GUI no funcionó para mí. He buscado en Google este problema todo el día, y solo el truco "anteponer servidores de nombres de dominio" ha funcionado. Aleluya por esta respuesta. Todo lo demás que intenté (incluida la GUI para servidores DNS) se sobrescribió y no sobrevivió al reinicio.
pesófago
3

Si tiene una fuga de DNS como se indica al consultar browserleaks.com o dnsleaktest.com ,

  1. Apaga tu conexión VPN

  2. Intente deshacer las ediciones de archivos .conf que ya haya perdido el tiempo. Si ha estado probando muchas sugerencias, su mejor oportunidad podría ser realizar una instalación nueva y asegurarse de que también haya instalado networkmanager-openvpn-gnome, ya que Ubuntu no tiene la importación de configuración VPN proporcionada de manera predeterminada.

  3. Instalar dnsmasq

    sudo apt update
    sudo apt install dnsmasq  
    
  4. Deshabilitar resuelto

    sudo systemctl disable systemd-resolved.service
    sudo systemctl stop systemd-resolved.service 
    
  5. Eliminar / etc/resolv.confy crear uno nuevo:

    sudo rm /etc/resolv.conf
    sudo nano /etc/resolv.conf  
    
  6. Ingrese en su .confarchivo vacío :

    nameserver 127.0.0.1`         that's all!
    
  7. Presione Ctrl+ x para salir del editor. Ingrese ypara guardar y luego presione Enterpara sobrescribir su nuevo resolv.confarchivo.

  8. Edite su archivo NetworkManager.conf

    sudo nano /etc/NetworkManager/NetworkManager.conf 
    

    y agregue lo siguiente:

    dns=dnsmasq 
    

    debajo de las líneas (navegar usando las teclas de flecha), [main] y plugins = ifupdown, archivo de claves exactamente así con la nueva línea agregada.

    [main]
    plugins=ifupdown, keyfile
    dns=dnsmasq
    

    Presione Ctrl+ xpara salir del editor. Ingrese y para guardar y luego presione Enterpara sobrescribir el archivo.

  9. Vuelva a salir de la terminal, reinicie el sistema y verifique el sitio de prueba de dnsleak para obtener resultados.

Gracias a Anonymous VPN, cuyas soluciones para Leaks en Ubuntu / Network Manager parecen bien investigadas y exitosas. FUNCIONAN y cuando ninguna otra solución funcionó para mí, estas funcionaron. La solución mostrada anteriormente funciona para Ubuntu 17.xy 18.04 LTS . Vea su otra solución para 16.04 LTS .

Dosenfleisch
fuente
He probado esta solución en una máquina virtual y todo funcionó. Luego probé en una máquina principal y vi dns de VPN y fuga de dns. En una máquina virtual nameservercambiado desde 127.0.2.1que 192.168.122.1y cuando me conecto a VPN en una resolv.confVeo dos nameserverlíneas, una con 192.168.122.1y otra con VPNs dns pero en una máquina principal siempre veo dos líneas search lan nameserver 127.0.1.1.
GoodGuyNick
¿Cómo puedo hacer qué sin administrador de red? solo pon el dns en / etc / network / interfaces?
Mehdi
1

He estado luchando con este problema exacto durante 2 días antes de encontrar la solución que funcionó para mí aquí: /unix//a/470940

TL; DR

$ cd /etc/NetworkManager/system-connections

Aquí es donde se almacenan las conexiones creadas con Network Manager.

$ sudo nmcli connection modify <vpn-connection-name> ipv4.dns-priority -42

Comando simple para modificar el archivo de configuración de conexión. También podría hacerse manualmente, pero de esta manera creo que es más fácil.

$ sudo service network-manager restart

Haga que los cambios se apliquen a su sistema.

Básicamente copia pegada desde el enlace de arriba, crédito al autor original.

Si su sistema no conoce nmcli, o al agregar conexiones utilizando la GUI de Network Manager aparece un error, le recomiendo este enlace

Ahora, para lo que es menos una explicación y más un comentario (más bien, ni idea).

Probé muchas de las soluciones, incluidas resolv.conf, dnsmasq y dnscrypt, todas las cuales hicieron que mi Internet se bloqueara por completo o cuando la conexión vpn estaba apagada. Ninguno de ellos resolvió la fuga dns, según dnsleaktest.com . Si se intenta alguno de estos, se debe realizar un seguimiento de cada paso del camino para poder revertirlos en caso de un resultado no deseado. No tardé mucho tiempo en arreglar mi internet roto una y otra vez sin, adivina qué, internet. No estoy afirmando que estas soluciones no funcionen, posiblemente cometí algún error en alguna parte.
Sin embargo, la solución a la que me vinculé tiene la gran ventaja de que no afecta a la configuración general de la red, sino solo a la conexión que está modificando.

A continuación, block-outside-dns, como se mencionó aquí anteriormente, es una solución única para Windows y arrojó algún tipo de error de opción no reconocido en mi sistema ubuntu.

El uso de los comandos ovpn cli tampoco resolvió la fuga para mí.

El enlace que proporcioné menciona una explicación ( aquí ) sobre algunas inconsistencias de versión que se corrigen en ubuntu 18.10, tal vez alguien con más experiencia en este tema se preocupe por explicar más. Si eso es cierto, los usuarios de LTS tendrán que esperar a abril del próximo año afaik.

Por último, quiero señalar que para los residentes de países con censura en Internet, la fuga de DNS plantea un problema grave porque permitir que el acceso de los isp locales a su tráfico pueda y provocará el bloqueo de dominios censurados a pesar de estar conectado a un VPN. Entonces, para futuras visitas a China, etc., esto es algo de lo que debe ocuparse de antemano.

Espero que esto ayude.

Wbes
fuente
0

Intente usar el update-systemd-resolvedscript que no realiza cambios en el resolv.conf, y en su lugar usa el systemd-resolvedservicio usando su API DBus

Obténgalo de git e instálelo de la siguiente manera:

git clone https://github.com/aghorler/update-systemd-resolved.git
cd update-systemd-resolved
make

Ahora edite nsswitch.confpor:

sudo nano /etc/nsswitch.conf

y luego cambia la línea que comienza con hosts:decir

hosts: files resolve dns myhostname

Habilite el servicio y asegúrese de que se esté ejecutando automáticamente:

sudo systemctl enable systemd-resolved.service
sudo systemctl start systemd-resolved.service

NOTA: Si no desea seguir los pasos anteriores y está de acuerdo con el uso del terminal, la fuga de DNS solo ocurre cuando usa NetworkManager, hasta ahora en mi experiencia no sucede cuando ejecuta openvpn desde el terminal consudo openvpn --config config.ovpn

Amith KK
fuente
¿Cuál sería la línea en config.ovpn que bloquearía la fuga? ¿Tienes un ejemplo de eso? (La solución anterior no funcionó para mí).
Pobe
0

He intentado casi todas las soluciones que pude encontrar en línea para solucionar el problema de fuga de DNS. Openvpn comenzó bien pero demostró que estaba goteando cuando fui a los sitios de prueba. Después de que no me alegró probar todos los remedios, entré en mi configuración de wifi y ethernet y utilicé los servidores dns de openvpn en lugar de los de mi ISP, y todo estuvo bien desde entonces. Estoy seguro de que ha visto las direcciones IP en todo el lugar, pero aquí están si no lo ha hecho: 208.67.222.222 y 208.67.220.220.

John LaFramboise
fuente