Der OpenVPN Server der pfSense® vergibt IP Adressen an die verbundenen Benutzer per Zufall. Wenn nun aber Firewall Regeln auf dem OpenVPN Interface Zugriffe pro Benutzer greifen sollen, dann benötigen wir eine feste Zuweisung von IP und Benutzer.

Also z.B. Benutzer A darf auf alles zugreifen, aber nicht auf die Firewall.

Vorbedingung

  1. Es wurde eine pfSense installiert,
  2. der OpenVPN Server ist konfiguriert und beiden funktionsbereit.

dann brauchen wir:

  1. Benutzername
  2. IP Adresse im Bereich des OpenVPN Transfernetzes

In Kurzform:

Es wird eine feste IP Adresse aus dem Tunnelnetz in den Clientspezifischen Überschreibungen des OpenVPN Servers für einen Benutzer hinterlegt, damit wir mithilfe eines ALIAS, eine schöne Firewwallregel im OpenPVN Interface anlegen können.

 

System / Benutzerverwaltung / Benutzer

Benutzernamen können hier angelegt und eingesehen werden

In diesem Beispiel halte ich mich an den Benutzer „marcel“, der das Recht hat sich per OpenVPN einzuwählen.

 

VPN / OpenVPN / Server

Am OpenVPN Server kurz nachgucken, welchens Transfernetz benutzt wird (192.168.23.0)

VPN / OpenVPN / Clientspezifischen Überschreibungen

Dann kann bei den „Clientspezifischen Überschreibungen“ eine Regel für den Benutzer „marcel“ angelegt werden:

Bei „Common Name“ kommt der Benutzername rein und bei „Erweiterte Einstellungen“ hinterlegen wir die gewünschte IP Adresse in dem Format:

ifconfig-push 192.168.23.200 255.255.255.0;

Hinweis: die PfSense in dem Tunnel wäre in diesem Beispiel die 192.168.23.1. Da immer von .2 an hochgezählt wird, nehmt bitte für feste Zuweisungen etwas sehr viel höheres (ab 100 oder 200) um Konflikte zu vermeiden. Und wenn es mehr als ein paar Benutzer sind, lohnt es sich ein Liste zu pflegen, wer was bekommen hat.

Dann nur noch speichern und die Überschreibung ist ab der nächsten neuen VPN Einwahl aktiv.

 

Firewall / Aliase / Bearbeiten

Damit lässt sich nun prima ein Alias einrichten, damit die Firewall Regeln übersichtlich und selbstsprechend bleiben.

Name wäre hier „OpenVPN_marcel“ und bei IP kommt die schon oben benutze 192.168.23.200 rein. Speichern.

 

Firewall / Regeln / OpenVPN

Die für das Beispiel genutzte Firewall Regel noch anlegen (marcel darf alle außer Firewall)

Aktion: Blockieren
Schnittstelle: OpenVPN
Adressfamilie: IPv4
Protokoll: Alle
Quelle: Alias "OpenVPN_marcel"
Ziel "Diese Firewall"

Das sieht dann so aus:

Die Blockregel muss ÜBER der erlaubt Regel stehen.

 

Test

bei der nächsten Anwahl per OpenVPN, achtet in der Log Datei mal drauf welche IP Adresse zugewiesen wurde:

Die Regeln lassen sich aktivieren / deaktivieren und mit einem einfachen Ping auf die Firewwall (die ja gesperrt wurde) lässt sich das dann gut nachvollziehen.

Oben mit inaktiver Regeln unten mit aktiver Regel. Passt.

 

Viel Spass beim nachbauen und erweitern.