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-ID: 1721199672

Url: https://administrator.de/forum/openvpn-ip-adressen-im-dns-verfuegbar-machen-1721199672.html

Ausgedruckt am: 22.12.2024 um 07:12 Uhr

linuxer1
linuxer1 08.11.2023 aktualisiert um 16:59:07 Uhr
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
HF9061
HF9061 15.11.2023 um 11:12:19 Uhr
Goto Top
Hi,
das auflösen der (VPN)Namen zu VPN-Adressen soll/muss nur intern erfolgen.
HF9061
HF9061 21.11.2023 um 15:04:57 Uhr
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
8030021182
8030021182 21.11.2023 aktualisiert um 16:11:38 Uhr
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
HF9061
HF9061 05.12.2023 um 16:20:20 Uhr
Goto Top
Hallo Katrin, danke für deine Vorschläge, ich werde das mal ausprobieren und geb dir Bescheid !