http://www.pronix.de -> Tutorials -> OpenVPN Tutorial -> Advanced -> Clientspeziefische Anweisungen

Clientspeziefische Anweisungen

OpenVPN kann einzelnen Clients spezielle Anweisungen, wie Routen, Default-Gateways, IP-Adresse, etc. zuweisen.

Zu diesem Zweck gibt es in der Serverkonfiguration die Anweisung client-config-dir.
Mit dieser Anweisung wird ein Verzeichnis festgelegt, in dem für einzelne Clients spezielle Konfigurationsdateien liegen. Beim Verbindungsaufbau eines Clients prüft der Server, ob in dem Verzeichnis eine Datei, die nach dem CommonName des Clients benannt ist existiert.
Wenn diese Datei existiert, werden dem Client - zusätzlich zu den Einstellungen aus der Serverkonfiguration - die Anweisungen aus dieser Datei übermittelt.
Als Beispiel: Dem Notebook vom Chef wurde ein Zertifikat mit dem CommonName Boss erstellt. Wenn der Chef sich mit seinem Notebook verbindet, sucht der Server nach einer Datei Boss.
Üblicherweise wird für diesen Zweck ein Verzeichnis ccd im OpenVPN-Verzeichnis genutzt und dieses dem Server in der Konfigurationsdatei bekannt gemacht:

client-config-dir ccd

Mögliche Einstellungen für clientspeziefische Anweisungen

Die folgenden Anweisungen für einzelne Clients sind in diesen Dateien möglich:

  • push
    Dem push-Befehl folgt eine Anweisung in Anführungszeichen.
    Als Option können dem Client Routen Gateways, etc. übergeben werden.
  • push-reset
    Der Befehl push-reset weist den Server an, dem speziellen Client keine push-Befehle aus der globalen Serverkonfigurations-Datei zu senden.
  • iroute und route
    Durch den Befehl iroute wird der Client angewiesen eine Route zu einem Subnetz zu setzen. Wenn also z.B. ein Client ein eigenes Netzwerk hinter sich hat, kann der Server den Client anweisen das Netz in das OpenVPN-Netz zu routen.
  • ifconfig-push
    Mit dem Befehl ifconfig-push kann dem Client eine fixe IP-Adresse zugewiesen werden. Dies ist z.B. sinnvoll, wenn auf dem Client ein Serverdienst läuft, den alle Clients erreichen müssen. Beachten Sie, dass diese Adresse in einem /8er Netz liegen muss, um Konflikte auszuschliessen.
  • config
    Mit dem Befehl config wird dem Server bekanntgegeben, dass eine seperate Konfigurationsdatei für den Client existiert. Als Argument wird der Pfad+Dateiname übergeben.

Beispiele

# Der Client wird angewiesen den OpenVPN-Server als Default-Gateway zu nutzen
# und alle Verbindungen über ihn abzuwickeln:
push redirect-gateway

# Der Server wird angewiesen dem Client eine feste IP zuzuweisen,
# die wir anderen Clients über DNS verfügbar machen können:
ifconfig-push 10.9.0.10 10.9.0.9

# Eine Route zu einem Netz hinter dem Client:
#
# Der Client wird angewiesen das Netz zu routen:
push "route 192.168.5.128 255.255.255.248"
iroute 192.168.5.128 255.255.255.248
# Der Server wird angewiesen das Netz einzubinden:
route 192.168.5.128 255.255.255.248

Weiter mit Signale