Last modified by Tobias Wintrich on 2022/10/28 12:30

From version 1.1
edited by Tobias Wintrich
on 2022/10/28 09:44
Change comment: Neuen Anhang RangeeOS-Firewall.png hochladen
To version 14.1
edited by Tobias Wintrich
on 2022/10/28 10:18
Change comment: There is no comment for this version

Summary

Details

Page properties
Title
... ... @@ -1,0 +1,1 @@
1 +RangeeOS - Firewall mit ipables Skript
Parent
... ... @@ -1,0 +1,1 @@
1 +HowTos.WebHome
Content
... ... @@ -1,0 +1,95 @@
1 +Das RangeeOS stellt keine grafische Benutzeroberfläche zur Erstellung und Verwaltung von Firewall Regeln bereit. Auf Wunsch können aber beliebige Regeln über das Linux Kommandozeilen Tool //**iptables **//erstellt und über das Skripte Modul auch auf verschiedene Geräte übertragen werden.
2 +
3 +{{toc/}}
4 +
5 += Voraussetzung =
6 +
7 +Auf dem RangeeOS Client muss das Softwaremodul **scripts **in zur Firmware passender Version installiert sein.
8 +
9 +{{info}}
10 +Sollte Ihnen unter **Softwareaktualisierung **das Modul nicht angeboten werden, wenden Sie sich bitte an unseren [[Support>>mailto:support@rangee.com]]
11 +{{/info}}
12 +
13 += Firewallregeln =
14 +
15 +Hier finden Sie verschiedene Regeln um nur definierten, eingehenden Datenverkehr zum RangeeOS auf Netzwerkebene zu erlauben . Das Blockieren ausgehender Verbindungen auf Clientseite wird nicht empfohlen.
16 +
17 +{{info}}
18 +Weitere Informationen zur Verwendung von iptables finden Sie hier:* [[https:~~/~~/linux.die.net/man/8/iptables>>url:https://linux.die.net/man/8/iptables]]
19 +
20 +* [[https:~~/~~/wiki.ubuntuusers.de/iptables/>>url:https://wiki.ubuntuusers.de/iptables/]]
21 +{{/info}}
22 +
23 +== Standard verwerfen ==
24 +
25 +**Entfernt alle bestehenden Regeln:**
26 +
27 +{{{iptables --flush}}}
28 +
29 +**Block sämtliche eingehenden Pakete die nicht explizit erlaubt sind:**
30 +
31 +{{{iptables --policy INPUT DROP}}}
32 +
33 +**Erlaubt das Aufrechterhalten von Aufgebauten Verbindungen (RDP, ICA, VMwareView...):**
34 +
35 +{{{iptables --append INPUT --match state --state RELATED,ESTABLISHED --jump ACCEPT}}}
36 +
37 +== Port / Protokoll / Netzwerk erlauben ==
38 +
39 +**Erlaubt Kontakt zur Kommbox per Browser / TCMS auf Port 443 TCP von dem 24er Subnetz 192.168.255.0/24:**
40 +
41 +{{{iptables --append INPUT --protocol tcp --destination-port 443 --source 192.168.255.0/24 --jump ACCEPT}}}
42 +
43 +**Erlaubt SSH zum Client auf Port 22 TCP von einzelner IP 192.168.255.56/32:**
44 +
45 +{{{iptables --append INPUT --protocol tcp --destination-port 22 --source 192.168.255.56/32 --jump ACCEPT}}}
46 +
47 +**Erlaubt VNC zum Client auf Port 5900 TCP vom 16er Subnetz 192.168.0.0/16:**
48 +
49 +{{{iptables --append INPUT --protocol tcp --destination-port 5900 --source 192.168.0.0/16 --jump ACCEPT}}}
50 +
51 +**Für WebVNC aus Kommbox oder TCMS zusätzlich Port 80 TCP vom 16er Subnetz 192.168.0.0/16:**
52 +
53 +{{{iptables --append INPUT --protocol tcp --destination-port 80 --source 192.168.0.0/16 --jump ACCEPT}}}
54 +
55 +**Erlaubt ICMP (Ping) von überall**
56 +
57 +{{{iptables --append INPUT --protocol icmp --jump ACCEPT}}}
58 +
59 += Skript anlegen =
60 +
61 +{{warning}}
62 +Bevor Sie die Regeln per Skript automatisiert ausführen, wird empfohlen Sie händisch per SSH oder Root Shell zu testen. Informationen zum Zugang zum Linux Terminal finden Sie hier:
63 +
64 +* [[Root-Terminal Passwort>>doc:Handbuecher.Handbuch11.Kapitel 3 - Administration des Clients.3\.C Benutzereinstellungen.3\.C\.A\. Root-Terminal-Passwort]]
65 +* [[Remote Access via SSH>>doc:Handbuecher.Handbuch11.Kapitel 4 - Erweiterte Administration.4\.C\. Remote Access via SSH.WebHome]]
66 +* [[Hotkeys (lokales Terminal öffnen)>>doc:Handbuecher.Handbuch11.Kapitel 2 - Getting Started.2\.B\. Hotkeys.WebHome]]
67 +{{/warning}}
68 +
69 +Navigieren Sie in der Kommbox zu {{status title="Verbindungen & Anwendungen"/}} -> {{status title="Script Konfiguration"/}} und legen Sie eine {{status title="Neue Verbindung"/}} an.
70 +
71 +Vergeben Sie die von Ihnen benötigen Regeln (eine je Zeile) in das Feld **Skript **ein. Ein Skript mit allen Regeln aus den Beispielen diese Seite sieht so aus:
72 +
73 +{{{#Zeilen welche mit '#' beginnen werden nicht ausgewertet und können als Kommentare verwendet werden
74 +iptables --flush
75 +iptables --policy INPUT DROP
76 +iptables --append INPUT --match state --state RELATED,ESTABLISHED --jump ACCEPT
77 +iptables --append INPUT --protocol tcp --destination-port 443 --source 192.168.255.0/24 --jump ACCEPT
78 +
79 +# Erlaube SSH Admin PC
80 +iptables --append INPUT --protocol tcp --destination-port 22 --source 192.168.255.56/32 --jump ACCEPT
81 +
82 +# Erlaube VNC
83 +iptables --append INPUT --protocol tcp --destination-port 5900 --source 192.168.0.0/16 --jump ACCEPT
84 +iptables --append INPUT --protocol tcp --destination-port 80 --source 192.168.0.0/16 --jump ACCEPT
85 +
86 +# Erlaube PING
87 +iptables --append INPUT --protocol icmp --jump ACCEPT}}}
88 +
89 +Zusätzlich zum Skript sollten (* = müssen) folgende Optionen in der Verbindung definiert werden:
90 +
91 +|(% style="width:160px" %)Verbindungsname *|(% style="width:1346px" %)Frei wählbarer Anzeigename der Verbindung
92 +|(% style="width:160px" %)Als root ausführen *|(% style="width:1346px" %)an - Führt das Skript mit den benötigten rechten aus
93 +|(% style="width:160px" %)Automatischer Start|(% style="width:1346px" %)an - Sorgt dafür, dass die Firewall beim Start des geräts aktiviert wird
94 +|(% style="width:160px" %)Desktop-Verknüpfung erstellen
95 +~)~)~)