hf9061
Goto Top

OPENVPN IP Adressen im DNS verfügbar machen

Hallo aus dem Süden !

Ich nutze einen OpenVPN Server für ein LTE-Routernetzwerk und würde gerne die "dynamisch" vergebenen IP Adressen aus dem VPN Netz (10.8.x.y) mit den Zertifikatsnamen im DNS nutzen, um eben für "Router01" (=Zertifikatsname) eine Adresse "10.8.1.123" für Ping-Monitoring oder die Weboberfläche zu bekommen.

Derzeit führe ich im OpenVPN die ccd- Liste mit eigentlich von mir statisch vergebenen Adressen um die Router im Uptime-Kuma oder Ähnlichem zu "ping-monitoren". Ich hätts aber gerne dynamisch, da ja immer auch wieder Router abgebaut werden oder Zertifikate revoked gehören.

Gibt es hierbei Scripts oder andere Tools um z.B: einen "unbound" oder "pi-hole" DNS Server damit zu füttern ?

Beste Grüße

HF9061

Content-Key: 1721199672

Url: https://administrator.de/contentid/1721199672

Printed on: May 3, 2024 at 16:05 o'clock

Member: linuxer1
linuxer1 Nov 08, 2023 updated at 15:59:07 (UTC)
Goto Top
Hallo aus dem Süden,

die erste Frage, wer oder was macht denn den DNS ?
Windows / oder Linux DNS ?
edit- wer lesen kann...
soll"nur" intern aufgelöst werden, (RFC1918) oder auch extern ?
hierzu wäre mal ein Anfang:
https://thiagowfx.github.io/2022/01/pihole-add-custom-dns-mappings/

servus linuxer1
Member: HF9061
HF9061 Nov 15, 2023 at 10:12:19 (UTC)
Goto Top
Hi,
das auflösen der (VPN)Namen zu VPN-Adressen soll/muss nur intern erfolgen.
Member: HF9061
HF9061 Nov 21, 2023 at 14:04:57 (UTC)
Goto Top
Es geht halt primär um ein Script dass die openvpn-log Inhalte aufbessert und dem Pihole-FTL oder Unbound periodisch reinfüttert. Das kann ja nicht sein dass dies noch keiner brauchen konnte face-smile
Mitglied: 8030021182
8030021182 Nov 21, 2023 updated at 15:11:38 (UTC)
Goto Top
Du kannst Skripte ausführen wenn sich Clients verbinden oder trennen
# client connected to VPN server
client-connect "script/client_connect.sh"  

# client disconnected from VPN server
client-disconnect "script/client_disconnect.sh"  
OpenVPN stellt hier diverse Umgebungs Variablen bereit mit der sich der Client identifizieren lässt, die kannst du nutzen um deine Zone in unbound zu aktualisieren.

Im einfachsten Fall dann im Connect-Skript
if [[ ! -z "$common_name" ]];then  
    echo -e "$(grep -vF "${common_name}.domain.de" zone.conf)\nlocal-data: \"${common_name}.domain.de A ${ifconfig_remote}\""  
    systemctl reload unbound
fi
Und im disconnect-Skript
if [[ ! -z "$common_name" ]];then  
    sed -ie "/${common_name}\.domain\.de/d" zone.conf  
    systemctl reload unbound
fi
Gruß Katrin
Member: HF9061
HF9061 Dec 05, 2023 at 15:20:20 (UTC)
Goto Top
Hallo Katrin, danke für deine Vorschläge, ich werde das mal ausprobieren und geb dir Bescheid !