Openvpn Zugriff im Netzwerk mit IPtables beschränken

Gemeinsam ins Internet mit Firewall und Proxy.
Antworten
ddtobi
Beiträge: 19
Registriert: 17.02.2012 07:16:20
Lizenz eigener Beiträge: GNU General Public License

Re: Openvpn Zugriff im Netzwerk mit IPtables beschränken

Beitrag von ddtobi » 28.10.2016 12:46:11

eigentlich will ich ja auch nur das interface tun0 limitieren, alles andere was vom internen netz auf den Server zugreifen möchte, das wollte ich ja gar nicht mit iptables begrenzen.
Kann man das irgendwie so einstellen, das die Iptableregeln nur das Interface tun0 betreffen?
Und das alles was über eth0 rein und raus geht, das soll nicht geblockt werden.

Benutzeravatar
MSfree
Beiträge: 10686
Registriert: 25.09.2007 19:59:30

Re: Openvpn Zugriff im Netzwerk mit IPtables beschränken

Beitrag von MSfree » 28.10.2016 13:47:22

ddtobi hat geschrieben:Ich habe ja noch eine Firewall die das gesamte Netzt nach ausen schützt, da ist natürlich nur www zum Webserver und vpn zugelassen.
Das könnte man alles mit einem Regelsatz erschlagen.
Aber ich möchte natürlich im INTERNEN Netzt diverse Dienste auf dem Server erreichen, deshalb habe ich das da in die IPtables mit rein genommen.
Dafür sind aber nicht die OUTPUT-Regeln da sondern die INPUT-Regeln und/oder die FORWARD-Regeln.
Welche Forward regeln fehlen deiner Meinung nach noch?
Wenn die Clients, die sich per VPN mit dem Server verbinden, dann weiter ins Internet wollen, also z.B. http://www.google.com via VPN durch deinen Server aufrufen wollen, muß man eine entsprechende Regel dafür definieren.
Kann man das irgendwie so einstellen, das die Iptableregeln nur das Interface tun0 betreffen?
Und das alles was über eth0 rein und raus geht, das soll nicht geblockt werden.
Man kann, besonders sinnvoll wäre das aber nicht. Eine Firewall sollte nach dem Whitelisting-Prinzip funktionieren, also alles verbieten ausser das, was wiklich nötig ist. Und nicht nach dem Blacklisting-Prinzip, bei dem alles erlaubt ist ausser das, was man explizit verbietet. Blacklisting bedeutet immer, daß wenn es links nicht geht, macht man einen Umweg rechts um den Häuserblock und kommt dann trotzdem dahin, wo man eigentlich nicht hin dürfte.

Ganz konkret wäre es unsinig, SSH via tun0 (also OpenVPN) zwar nur für eine IP-Adresse zuzulassen, wenn man mit SSH ohne VPN via eth0 auf die Kiste käme.

Es wäre (für mich) leichter, wenn du aufzählen würdest, welche Dienste über welche Schnittstelle erreichbar sein sollen, dann kann man dazu auch ein deutlich lesbareres Regelskript verfassen.

ddtobi
Beiträge: 19
Registriert: 17.02.2012 07:16:20
Lizenz eigener Beiträge: GNU General Public License

Re: Openvpn Zugriff im Netzwerk mit IPtables beschränken

Beitrag von ddtobi » 28.10.2016 19:07:17

Danke für deine Denkanstöse.

Prinzipiell hast du ja recht mit dem Whitelistingprinzip aber das mache ich ja schon an meiner Äusseren Firewall. Die Firewall auf dem Server brauche ich ja nur, damit die VPN Nutzer nicht in mein Internes Netzwerk kommen aber denn noch ins Internet können. Und weiterhin nur ein festgelegter Rechner IM VPN Netz SSH auf ALLE VPN Clients machen kann.

Der Server an sich, auf dem der OpenVpn Server läuft, bietet im Internen Netzwerk (eth0: 192.168.111.0/24) folgende Dienste an:
- Webserver (80,8080,443)
- SSH (22)
- Icinga2 (5665)
- Samba
- Logserver

hilft das weiter?

Gruß Tobi

TomL

Re: Openvpn Zugriff im Netzwerk mit IPtables beschränken

Beitrag von TomL » 28.10.2016 22:20:13

Moin

Weil ich mich auch gerade erstmalig mit den Iptables beschäftige habe ich mir mal Dein Monsterscript angesehen und mich gefragt, welcher Nicht-Fachmann kann da noch den Überblick behalten? Müsste das nicht viel einfacher gehen..... mit wenigen kurzen Regeln...

- Regel 1 erlaubt den Clients aus dem VPN-Netz/24 den FORWARD auf den LAN-Router(-IP) für den Internetzugang
- Regel 2 erlaubt den Clients aus dem -s VPN/24 den FORWARD auf den -d Server(-IP)
- Regel 3 erlaubt der MAC aus Berlin den FORWARD auf alle Clients des -d VPN-Netzes/24
- Regel 4 erlaubt der MAC aus Berlin den Zugriff auf alle Clients des -d LAN/24
- Regel 5 DROP't -s VPN/24 -d LAN/24
- Regel 6 DROP't -s VPN/24 -d VPN/24

Dazu noch MASQUERADE für NAT und eigentlich müsste das dann doch wie gewollt funktionieren :roll: Im Moment, bei dem was ich bisher (glaub ich) verstanden habe, braucht es doch für diesen speziellen Zweck gar keine INPUT- oder OUTPUT-Regeln, da es sich hier doch immer um geroutete Pakete handelt, also alles, was mit der FORWARD-Chain gehandelt wird.

Benutzeravatar
MSfree
Beiträge: 10686
Registriert: 25.09.2007 19:59:30

Re: Openvpn Zugriff im Netzwerk mit IPtables beschränken

Beitrag von MSfree » 30.10.2016 13:15:59

Ich habe mir dein Problem noch einmal von einer anderen Seite überlegt.

Wenn ich das richtig verstehe, willst du ja eigentlich nur, daß deine Benutzer keine interaktive Loginshell bekommen. Das kann man sehr einfach erreichen, in dem du deinen Nutzern keine Loginshell wie bash gibts sondern sie in der /etc/passwd aud /bin/false setzt. Für Dienste wie FTP oder .htaccess können sich deine Benutzer dann immer noch autentifizieren, bekommen aber kein Login mehr. Ein SSH-Login wird dann automatisch auch unmöglich. Ein paar Benutzer, du und deine Admins, darfst du natütlich nich aussperren, die brauchen weiterhin eine Loginshell (/bin/bash).

Eine weitere Sicherheitsmaßname kann eine Beschränkung des SSH-Dienstes sein. Du könntest z.B. das Paßwort-Login verbieten und nur Login über Schlüssel zulassen. Der entsprechende Eintrag in der /etc/ssh/ssd_config lautet:

Code: Alles auswählen

PasswordAuthentication no
Auch Root-Login läßt sich sperren:

Code: Alles auswählen

PermitRootLogin no
Der SSH-Dienst läßt sich auch auf bestimmte Benutzer beschränken:

Code: Alles auswählen

AllowUser user1 user2
oder auch noch restrictiver, nur User von einer bestimmten IP-Adresse:

Code: Alles auswählen

AllowUsers = User@192.168.123.45
Natürlich könnte man mit iptables auch einiges ausrichten. Da du aber eine "äußere" Firewall hast, über die ich kein Urteil abgeben kann, müßten oben genannte Maßnahmen reichen, deinen VPN-Server ausreichend abzusichern.

Antworten