Nach meinem besten Wissen funktionieren bei mir alle Teile, nämlich DNSmasq und OpenVPN, einwandfrei, wenn auch unabhängig voneinander. Was habe ich getan?
- OpenVPN wie folgt installiert:https://github.com/Nyr/openvpn-install
- Nach der Installation kann ich den Client (PC, Telefon) verbinden, funktioniert. Kein Problem.
- Ich habe DNSmasq installiert und es scheint auch wie erwartet zu laufen und zu funktionieren
0.0.0.0
Ich habe ein oder zwei Websites blockiert, d. h. in der Datei darauf verwiesen/etc/hosts
, und wenn ich das tuenslookup thatdomain.com
, erhalte ich die0.0.0.0
Antwort
Das ist derzeit mein/etc/openvpn/server/server.conf
local 134.122.60.252
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh.pem
auth SHA512
tls-crypt tc.key
topology subnet
server 10.8.0.0 255.255.255.0
push "redirect-gateway def1 bypass-dhcp"
ifconfig-pool-persist ipp.txt
push "dhcp-option DNS 10.8.0.1"
keepalive 10 120
cipher AES-256-CBC
user nobody
group nogroup
persist-key
persist-tun
verb 3
crl-verify crl.pem
explicit-exit-notify
duplicate-cn
Und die einzige Änderung, die ich an der Standarddatei vorgenommen habe, /etc/dnsmasq.conf
besteht darin, die Kommentierung aufzuheben und die Schnittstelle in dieser Zeile anzugeben:
interface=tun0
Wo brauche ich Hilfe?
So verwenden Sie OpenVPN DNSmasq füralleDNS-Anfragen. Ich kann einfach keine eindeutige Antwort darauf finden, wie das zu erreichen ist, welche Dateien geändert und was hinzugefügt werden soll.
Habe ich irgendwelche Schritte übersehen?
Bearbeiten: Mit der obigen Konf, wenn ich per SSH auf den OpenVPN-Server zugreife (der DNSMASQ läuft auch auf demselben Server) und ich
nslookup google.com 10.8.0.1
, es löst sich richtig
Wenn ich das tue, wird es wie erwartet und gemäß den Angaben in der Datei nslookup blockthis.com 10.8.0.1
aufgelöst .0.0.0.0
/etc/hosts
Das Problem besteht darin, dass OpenVPN die DNS-Auflösung aus irgendeinem Grund nicht an DNSMASQ übergibt, wenn ich vom Client aus eine Verbindung zum OpenVPN herstelle. Die Leitung interface=tun0
ist jedoch in DNSMASQ aktiviert und netstat -plunt
zeigt an, dass Port 53 aktiv und aktiv ist und von DNSMASQ abgehört wird.
Antwort1
Okay, das Problem ist gelöst. Musste die Firewall öffnen.
ufw allow out on tun0
ufw allow in on tun0