OpenVPN Benutzer Zugriff auf unterschiedliche Netzwerkbereiche einschränken

Started by ollipe, December 11, 2020, 11:43:13 AM

Previous topic - Next topic
Hallo Forum,

Zuerst die Daten ;)
Wir verwenden auf einem dedizierten Server die nicht mehr ganz aktuelle OPNsense Version
OPNsense 19.7.10_1-amd64
FreeBSD 11.2-RELEASE-p16-HBSD
OpenSSL 1.0.2u 20 Dec 2019

Der Server ist per Modem mit dem Internet direkt verbunden.
Mit Hilfe mehrerer Netzwerkkarten sind mehrere Netzwerkbereiche eingerichtet.
   
WAN / Internet
            :
            : DialUp-/PPPoE-/Cable-/whatever-Provider
            :
      .-----+-----.
      |  Gateway  |  (Modem)
      '-----+-----'
            |
        WAN | IP or Protocol
            |
      .-----+------.   private DMZ   .------------.
      |  OPNsense  +-----------------+ DMZ.     |
      '-----+------'   10.10.12.0/24   '------------'
            |
        LAN | 10.10.10.0/24
            |
      .-----+------.
      | LAN-Switch |
      '-----+------'
            |
    ...-----+------... (Clients/Servers)


Jetzt die Aufgabe
Es ist OpenVPN für die externen Benutzer eingerichtet. Es gibt einmal interne Mitarbeiter, welche auch auf das interne Netzwerk zugreifen können, und einmal "Fremdarbeiter", welche nur auf die DMZ Zugriff erhalten sollen.

Bisherige Lösung
- Die DMZ ist per VLAN vom restlichen Netzwerk getrennt.
- Es gibt zwei OpenVPN Server Dienste, welche jeweils mit eigenen Port Nummern versehen sind (Port 2000 für internes Netzwerk, Port 3000 für DMZ)
- Die Server haben jeweils in den Einstellungen das jeweilige Netzwerk zugewiesen bekommen.
- Die Benutzer sind lokal in der OPNsense angelegt, erhalten ein Zertifikat und melden sich dann per Zertifikat + Benutzername/-Kennwort an.
- Die entsprechenden Regeln in der Firewall sind aktiviert.
Soweit funktioniert alles wie erwartet.

Hier nun die Frage/Aufgabe
Ich habe nun festgestellt, dass wenn der externe "Fremdarbeiter" in seiner *.ovpn Konfigdatei den Port von 3000 auf 2000 ändert, dieser automatisch im internen Netzwerk landet.
Ich finde keine Konfigurationsmöglichkeiten, die eingerichteten Benutzer nur in bestimmte Netzwerke zu lassen.

Meine bisherigen Ideen waren:
Benutzerverwaltung: Der Benutzer darf sich nur bei OpenVPN Service 2 (Gate für externe Benutzer) anmelden.
Openvpn Server: Benutzerverwaltung für den jeweiligen Service (s.o.)
Firewall Rules: Ich kann bestimmten Benutzern den Zugriff auf bestimmte Netzwerkbereiche verbieten.

Ich finde aber nirgends entsprechende Konfigmöglichkeiten.  :(

Wo ist hier der Fehler in meinem Lösungsansatz (der sehr Benutzerorientiert ist)?

Vielen Dank für eventuelle Denkanstöße oder gar Lösungsansätze.

Du kannst doch beim OpenVPN Server einstellen aus welcher Gruppe Benutzer kommen müssen. Jedenfalls ist das in meinem 20.7.x Instanzen so.
So hast Du dann Benutzergruppe intern und extern und kannst das einzelnen OpenVPN Servern zuweisen.

Die Option nennt sich beim OpenVPN Roadwarrior Modus "Enforce local group".
,,The S in IoT stands for Security!" :)

Hervorragend. Manchmal sieht man den Wald vor lauter Bäumen nicht.
Besten Dank!