Atualmente, executo o servidor Ubuntu 18.04.1 LTS. Configurei a VPN de túnel dividido e parece funcionar bem, mas quero verificar se há vazamentos de DNS. Existe uma maneira de fazer isso com a linha de comando? Realmente não é possível abrir um navegador no servidor Ubuntu ...
Atualizado com informações para heynnema:
ls -al /etc/openvpn
total 52
drwxrwxrwx 4 root root 4096 Nov 2 21:32 .
drwxr-xr-x 99 root root 4096 Nov 3 12:40 ..
-rwxrwxrwx 1 root root 1403 Nov 2 20:35 ca.crt
drwxrwxrwx 2 root root 4096 Sep 5 14:43 client
-rwxrwxrwx 1 root root 1597 Nov 2 20:39 iptables.sh
-rwxrwxrwx 1 root root 18 Nov 2 20:36 login.txt
-rwxrwxrwx 1 root root 670 Nov 2 21:29 openvpn.conf
-rwxrwxrwx 1 root root 623 Nov 2 20:40 routing.sh
drwxrwxrwx 2 root root 4096 Sep 5 14:43 server
-rwxrwxrwx 1 root root 636 Nov 2 20:35 tls.key
-rwxrwxrwx 1 root root 11773 Nov 12 2017 update-systemd-resolved
#
grep -i hosts /etc/nsswitch.conf
hosts: files resolve [!UNAVAIL=return] dns
# A seção "evitar vazamento de DNS" que obtive do guia on-line, no entanto, a VPN não funcionará para mim se eu habilitar esse comando.
up/down/down-pre
#up and down scripts to be executed when VPN starts or stops
up /etc/openvpn/iptables.sh
down /etc/openvpn/update-systemd-resolved
down-pre
# prevent DNS leakage
#dhcp-option DOMAIN-ROUTE .
Mais informações:
#! /bin/bash
# Niftiest Software – www.niftiestsoftware.com
# Modified version by HTPC Guides – www.htpcguides.com
export INTERFACE="tun0"
export VPNUSER="vpn"
export LOCALIP="192.168.1.10"
export NETIF="enp1s0"
# flushes all the iptables rules, if you have other rules to use then add them into the script
iptables -F -t nat
iptables -F -t mangle
iptables -F -t filter
# mark packets from $VPNUSER
iptables -t mangle -A OUTPUT -j CONNMARK --restore-mark
iptables -t mangle -A OUTPUT ! --dest $LOCALIP -m owner --uid-owner $VPNUSER -j MARK --set-mark 0x1
iptables -t mangle -A OUTPUT --dest $LOCALIP -p udp --dport 53 -m owner --uid-owner $VPNUSER -j MARK --set-mark 0x1
iptables -t mangle -A OUTPUT --dest $LOCALIP -p tcp --dport 53 -m owner --uid-owner $VPNUSER -j MARK --set-mark 0x1
iptables -t mangle -A OUTPUT ! --src $LOCALIP -j MARK --set-mark 0x1
iptables -t mangle -A OUTPUT -j CONNMARK --save-mark
# allow responses
iptables -A INPUT -i $INTERFACE -m conntrack --ctstate ESTABLISHED -j ACCEPT
# block everything incoming on $INTERFACE to prevent accidental exposing of ports
iptables -A INPUT -i $INTERFACE -j REJECT
# let $VPNUSER access lo and $INTERFACE
iptables -A OUTPUT -o lo -m owner --uid-owner $VPNUSER -j ACCEPT
iptables -A OUTPUT -o $INTERFACE -m owner --uid-owner $VPNUSER -j ACCEPT
# all packets on $INTERFACE needs to be masqueraded
iptables -t nat -A POSTROUTING -o $INTERFACE -j MASQUERADE
# reject connections from predator IP going over $NETIF
iptables -A OUTPUT ! --src $LOCALIP -o $NETIF -j REJECT
# Start routing script
/etc/openvpn/routing.sh
exit 0
Verifiquecat /etc/resolv.conf
os endereços dos servidores de nomes. Se for 127.0.0.1 ou 127.0.0.53, provavelmente há vazamentos de DNS. Você deve ver o endereço IP do seu VPN DNS e 127.0.0.1/127.0.0.53 (que provavelmente aponta para o seu roteador em 192.168.0.1/192.168.1.1).O roteador provavelmente está definido como 8.8.8.8/8.8.4.4 ou 208.67.222.222/208.67.220.220 para seus roteadores DNS e você terá um vazamento de DNS.
Se você pode SSH em seu servidor e obter uma GUI, você pode verificar http://dnsleak.com ou http://dnsleaktest.com para verificar se há vazamentos de DNS.
Nota: isso pode não se aplicar a uma "configuração de VPN de túnel dividido", não sei.Atualização nº 1:
O usuário está executando com
openvpn-system-resolved
, portanto, a maior parte da minha resposta não se aplica.O que eu fiz:
Em seguida, navegue até um site para teste de vazamento de DNS.