Firewall2 - SmallOffice-Design-Diskussion
Nachdem ich nun verschiedene Ideen gehört habe, wie man für einen "Small Office"-Bereich eine Firewall aufbaut und sehr unterschiedliches gehört habe, möchte ich das gerne hier diskutieren. Nach der Lektüre von http://www.netzmafia.de/skripten/sicherheit/sicher4.html und http://www.interhack.net/pubs/fwfaq/firewalls-faq.html#SECTION00040000000000... bin ich mir auch noch nicht klar, was hier sinnvoll ist. Es geht nicht darum eine "paranoide" Firewall aufzustellen, sondern eine mit gegebenen Mitteln akzeptable Firewall. Vorhanden sind: 2 Clients 1 Hauptserver (Fileserver, leafnode, squid,samba) 1 Firewall-Rechner (Router, Firewall) Netzwerkkarten nach Bedarf ISDN-Zugang Zugriff aus dem Internet auf den Hauptserver soll per ssh möglich sein. Alle anderen externen Dienste werden nicht benötigt. Auf dem Hauptserver soll squid, leafnode und samba laufen. Pop3 und smtp wird vom Provider zur Verfügung gestellt. Wie sollen nun die Rechner miteinander verbunden werden bzw. wieviele Netzwerkkarten sollen in welchen Rechner? Albert
Am Montag, 7. Oktober 2002 20:20 schrieb Al Bogner:
Nachdem ich nun verschiedene Ideen gehört habe, wie man für einen "Small Office"-Bereich eine Firewall aufbaut und sehr unterschiedliches gehört habe, möchte ich das gerne hier diskutieren.
Och, es kommt letztendlich in aller Linie mal darauf an, was Du unter einer firewall verstehst. Bei mir hier, steht der Begriff firewall, vor allem für eine entsprechende Politik, sprich, was erlaubt ist und was nicht. Zur Unterstützung gibt es dann mehrere Module, darunter auch einen, auf iptables basierenden Paketfilter, den Du wahrscheinlich als "firewall" suchst, oder?
Vorhanden sind: 2 Clients 1 Hauptserver (Fileserver, leafnode, squid,samba) 1 Firewall-Rechner (Router, Firewall) Netzwerkkarten nach Bedarf ISDN-Zugang
Klingt doch schon mal gar nicht so abschreckend.
Zugriff aus dem Internet auf den Hauptserver soll per ssh möglich sein. Alle anderen externen Dienste werden nicht benötigt. Auf dem Hauptserver soll squid, leafnode und samba laufen. Pop3 und smtp wird vom Provider zur Verfügung gestellt.
Alles per iptables-Regelwerk durchaus lösbar - und das ohne größere Aufwendungen.
Wie sollen nun die Rechner miteinander verbunden werden bzw. wieviele Netzwerkkarten sollen in welchen Rechner?
Tja, wie sieht denn sonst Deine Netzwerktopologie aus? Also wenn Du etw folgende Konfiguration hast, dann kann ich Dir relativ schnell helfen, auch mit einem passenden Muster-Script. Konfiguration in meinem SOHO: | | | <----- Verbindung zum Internet | über DSL-Modem (!) zu | t-longline (flatrate) | +-----+-----+ | eth0 | | | +-----+ | eth1 +--------------+ Hub | | | +-+-+-+ | "Server" | | | +-----------+ | | | | +-----------+ | | | | | | | | | | | eth0 +----------------+ | | | | | "clientA" | | +-----------+ | | +-----------+ | | | | | | | | eth0 +------------------+ | | | "clientB" | +-----------+ Der "Server" bietet folgende Dienste: - SAMBA-Fileserver - Scannserver (sane) - Druckerserver (cups) - Router mit firewall mit DSL-Anschluss - voll funktionierende Workstation, d.h. ° Mailclient ° http, ftp ° open-office ° DTP (Sannen, gPhoto, Drucken ...) Die Regelkette also mit Source-NAT (Masquerading), sieht wie folgt aus: + / \ / \ / \ +---------+ / \ | | +---------+ incoming / \ | FORWARD | | POST- | outgoing ---------->+ routing? +--->+ REGEL- +--+--+ REGEL +----------> \ / | | ^ | S-NAT | \ / +---------+ | +---------+ \ / | \ / | \ / | + | | | | | V | +-------+-------+ +--------+-------+ | | | | | INPUT - REGEL | | OUTPUT - REGEL | | | | | +-------+-------+ +--------+-------+ | ^ | | V | LOKAL LOKAL Zusammengefasst nun also im Detail: Da auf dem "Server" auch noch nebenbei gearbeitet werden können muss, müssen die bekannten Regeln beibehalten werden: INPUT-Regel : Es kommt ein Paket von ppp0 und das Paket wird an den "lokalen Rechner" weitergegeben. FORWARD-REGEL: Es kommt ein Paket und wird an die FORWARD-REGEL weitergereicht, da das Routing im Firewall-script eingeschaltet wurde. ( echo "1" > /proc/sys/net/ipv4/ip_forward ) OUTPUT-REGEL : Der Rechner verschickt selbst Pakete, die konform mit dieser Regel sein muss. POST-REGEL : Im Firewall-Script wird "Masquerading" mittels ( $IPTABLES -t nat -A POSTROUTING -o $EXT -j MASQUERADE ) eingeschaltet; somit werden Pakete, die den Router via ppp0 verlassen maskiert, Die rückwärtige Richtung wird über das Kernel-Modul ip-conntrack automatisch Adressmäßig wieder umgeschrieben, so daß das Paket zum "verursachenden" Host zurückgeschickt wird. Zusätzliche muss für den SAMBA- und Printserver-Betrieb sichergestellt werden, daß die betreffenden Ports vom lokalen Netzwerk in Richtung Router/Server offen sind, aber von Richtung Internet aus, diese Port nicht erreichbar sind. Falls noch weitere Infpormationen gewünscht werden, einfach melden! :-) Pfiade, BC -- Michael Nausch Anzinger Str. 20 85586 Poing +49-8121-971940 (voice) +49-8121-971941 (fax) http://omni128.de michael@nausch.org
On Montag, 7. Oktober 2002 21:36 Michael Nausch wrote:
Paketfilter, den Du wahrscheinlich als "firewall" suchst, oder?
ja, so wie die Suse FW 2. Von außen, ist wie gesagt, nur ssh zum Hautpserver erlaubt, alles andere ist verboten.
Vorhanden sind: 2 Clients 1 Hauptserver (Fileserver, leafnode, squid,samba) 1 Firewall-Rechner (Router, Firewall) Netzwerkkarten nach Bedarf ISDN-Zugang
Klingt doch schon mal gar nicht so abschreckend.
Denke ich auch, aber eben habe ich am Telefon ein anderes Problem diskutiert, das wieder mal eine politische Entscheidung verlangt, wie sicher das System sein muß: Sollte ich von den Clients auf den Hauptserver via Firewall (2 NICs) zugreifen wollen, so wird das 100MBit-Netzwerk durch die Analyse der Pakete sehr ausgebremst. Zu überlegen gilt also, ob es ok wäre, wenn die Clients ungeschützt wären, sobald der Hauptserver gecrackt ist. Da ich aber vorhabe übers Netzwerk Videobearbeitung zu machen, möchte ich zwischen Client und Hauptserver keine Geschwindigkeit verlieren.
Wie sollen nun die Rechner miteinander verbunden werden bzw. wieviele Netzwerkkarten sollen in welchen Rechner?
Tja, wie sieht denn sonst Deine Netzwerktopologie aus?
Das ist noch nicht fix. Vorhanden ist ein 8-fach-Switch, einige Netzwerkkarten mit 100 und 10 Mbit, sowie gekreuzte Kabel. Hauptserver, Firewall-Rechner und 1 Client stehen nebeneinander und darüber befindet sich der Switch. Vorhanden sind diverse 100MBit-Karten mit Realtek-Chip, 1 100Mbit-Karte von Dlink (Via-Chip) und 10Mbit-SMC-Karten. Es ist aber kein Problem weitere NICs dazu zu kaufen. Im selben Rechner möchte ich unbedingt NICs mit unterschiedlichen Chips verwenden, damit sich die NICs den Treiber nicht teilen müssen.
Also wenn Du etw folgende Konfiguration hast, dann kann ich Dir relativ schnell helfen, auch mit einem passenden Muster-Script.
Wäre nett, wenn Du mir das zusendest.
Konfiguration in meinem SOHO:
Muß ich erst mal studieren :-) Daher habe ich auch einiges nicht mehr zitiert, da ich das erst für meine Situation umsetzen muß, obwohl darin natürlich ganz wichige Punkte enthalten sind.
Der "Server" bietet folgende Dienste: - SAMBA-Fileserver - Scannserver (sane)
Wozu kann man das brauchen? Zum Vorlagen einlegen muß man ja trozdem aufstehen. Scanner habe ich zwar auch, aber das geht hier nun an 1 Client.
- Druckerserver (cups)
habe ich auch und vergessen zu erwähnen.
Da auf dem "Server" auch noch nebenbei gearbeitet werden können muss, müssen die bekannten Regeln beibehalten werden:
Auf meinem Hauptserver wird nicht gearbeitet. Konfiguriert wird der Hauptserver über ssh.
Falls noch weitere Infpormationen gewünscht werden, einfach melden! :-)
Gerne, jetzt möchte ich erst die Diskussion noch etwas verfolgen. Albert
Griasdebua! Am Montag, 7. Oktober 2002 22:05 schrieb Al Bogner:
ja, so wie die Suse FW 2. Von außen, ist wie gesagt, nur ssh zum Hautpserver erlaubt, alles andere ist verboten.
SuSE FW2 kenne ich (leider) nicht, da kann ich Dir leider nix dazu sagen. Ich verlass' mich da eher auf meine geistigen eigenen Ergüsse; da weiß ich was ich hab ...
Denke ich auch, aber eben habe ich am Telefon ein anderes Problem diskutiert, das wieder mal eine politische Entscheidung verlangt, wie sicher das System sein muß:
Tja, das kann ich Dir nicht abnehmen. Das musst Du selber entscheiden. Zur Erklärung und Abwägung u.a. einer firewall-Umgebung verwende ich immer gerne einen plakativen Vergleich, den jeder versteht - ein Puff. :-) Stell Dir vor Du wärest der Betreiber dieses Dienstleistungsbetriebes. Da musst Du Dich mehreren Fragen stellen. Welchen Risiken (Ansteckungsgefahren) willst/kannst Du Deinen Mädchen zumuten? Wie leicht soll jemand Zutritt beim Türsteher (Brandmauer) haben. Müssen sich die Mädchen extra schützen? Darf im Haus jeder mit jedem? ... und so weiter und so fort. Die Kriterien lassen sich beliebig ausdehnen und natürlich wird des demnach bestimmte Regeln in Deinem Freudenhaus geben - was natürlich unweigerlich das Verkehrsaufkommen im Haus selbst (intranet) und vom und in's Haus (internet) kommen. Alles klar? ;-)
Das ist noch nicht fix. Vorhanden ist ein 8-fach-Switch, einige Netzwerkkarten mit 100 und 10 Mbit, sowie gekreuzte Kabel.
Hmmm je nach Anwendungsfall kannst Du da wohl alles zusammenstecken, was Du hast. Der Hauptaugenmerk wird wohl Deinen Angaben nach in der Geschwindigkeit im intranet und der Sicherheit von und zum internet liegen.
Wäre nett, wenn Du mir das zusendest.
Kommt als pers. e-MAil durch, muß nicht unbedingt hier über die Liste laufen (Dateigröße: 18987 - 454 Zeilen im Script) würde die Nachricht nur ungemein aufblähen.
Muß ich erst mal studieren :-)
JA, studiert hab' ich auch mal, die SZ! ;-)
- Scannserver (sane)
Wozu kann man das brauchen? Zum Vorlagen einlegen muß man ja trozdem aufstehen. Scanner habe ich zwar auch, aber das geht hier nun an 1 Client.
Ganz einfach. Ich hab' einen USB-Scanner, der hängt am sog. Server, an dem ich gerade meine e-Mails bearbeite. Um nun nicht ewig den Scanner umstecken zu müssen, wenn die Kinder, Frau oder ich das Teil benutzen wollen, können alle so einfach auf das Teil zugreifen. Der Gang von der Terasse in's Büro/Arbeitszimmer nimmt mir dann natürlich keiner ab, das ist aber die bis dato nicht oft aufgetretene Regel.
Gerne, jetzt möchte ich erst die Diskussion noch etwas verfolgen.
Im Moment ist's wohl noch sehr übersichtlich ... Pfiade, BC -- Michael Nausch Anzinger Str. 20 85586 Poing +49-8121-971940 (voice) +49-8121-971941 (fax) http://omni128.de michael@nausch.org
Hy, Am 02/10/07@21:36 schrieb Michael Nausch:
Am Montag, 7. Oktober 2002 20:20 schrieb Al Bogner:
Vorhanden sind: 2 Clients 1 Hauptserver (Fileserver, leafnode, squid,samba) 1 Firewall-Rechner (Router, Firewall) Netzwerkkarten nach Bedarf ISDN-Zugang
Also wenn Du etw folgende Konfiguration hast, dann kann ich Dir relativ schnell helfen, auch mit einem passenden Muster-Script.
Konfiguration in meinem SOHO:
| | | <----- Verbindung zum Internet | über DSL-Modem (!) zu | t-longline (flatrate) | +-----+-----+ | eth0 | | | +-----+ | eth1 +--------------+ Hub | | | +-+-+-+ | "Server" | | | +-----------+ | | | | +-----------+ | | | | | | | | | | | eth0 +----------------+ | | | | | "clientA" | | +-----------+ | | +-----------+ | | | | | | | | eth0 +------------------+ | | | "clientB" | +-----------+
Den Rechner, der über ist nehm ich ;). -- bye maik
Hy, Am 02/10/08@17:21 schrieb Al Bogner:
On Dienstag, 8. Oktober 2002 00:19 Maik Holtkamp wrote:
Den Rechner, der über ist nehm ich ;).
Kriegst Du aber nicht :-) Weitere Kommentare?
Ok, Netzwerkkarten spielten bei Dir ja keine Rolle. Daher würde ich mal empfehlen: Internet | +----------+ | FW | | eth0(DSL)| | eth1-----|-------DMZ | eth2(LAN)| +----------+ | LAN Den LAN Server würde ich auch ins LAN stellen. In der DMZ könntest Du dann Services anbieten oder Mailserver einsetzten. Leider habe ich jetzt einen Rechner mehr verbraten als Du hast. Anfangs könnte man aber wahrschenlich auch die externen Services auf dem FW Rechner direkt laufen lassen und sie nur an das Interface eth1 binden. So hast Du eine klare Trennung zwischen Services die auch ein externer zerstören kann und dennen, die die lieben Kollegen zerschossen haben müssen ;). Da Du aber IIRC ausser ssh nix nach extern wolltest und das Gesamtnetz recht übersichtlich war ich wäre das vielleicht mit Kannonen auf Spatzen geschossen. Ich Michaels Vorschlag folgen und die gesparte Kohle in O'Reillys Building Internet Firewalls investieren (nein nicht alles ein Exemplar reicht;)). Wir wollen doch hoffen, dass Euer Netzwerk wächst und dann kann es bestimmt nicht schaden. -- bye maik
Griasdebua! Am Dienstag, 8. Oktober 2002 19:40 schrieb Maik Holtkamp:
Ich Michaels Vorschlag folgen und die gesparte Kohle in O'Reillys Building Internet Firewalls investieren (nein nicht alles ein Exemplar reicht;)).
Bzw.: "Das Firewall Buch" von SuSEPress: http://www.suse.de/de/private/products/books/experts/3_934678_40_8/index.htm... Dieses hab' ich mal Monatelang "unterm Kopfkissen" ... IMHO etwas kompliziert aber das erhöht IMHO den Lernerfolg! Pfiade, BC -- Michael Nausch Anzinger Str. 20 85586 Poing +49-8121-971940 (voice) +49-8121-971941 (fax) http://omni128.de michael@nausch.org
On Dienstag, 8. Oktober 2002 19:40 Maik Holtkamp wrote:
ich mal empfehlen:
Internet
+----------+
| FW | | eth0(DSL)| | eth1-----|-------DMZ | eth2(LAN)|
+----------+
LAN
Leider habe ich jetzt einen Rechner mehr verbraten als Du hast. Anfangs könnte man aber wahrschenlich auch die externen Services auf dem FW Rechner direkt laufen lassen und sie nur an das Interface eth1 binden.
Auf dem FW-Rechner stehen nur 800MB HD zur Verfügung. Squid und leafnode passen da also nicht darauf.
So hast Du eine klare Trennung zwischen Services die auch ein externer zerstören kann und dennen, die die lieben Kollegen zerschossen haben müssen ;).
Die Kollegen lassen wir mal als Bedrohung weg.
Da Du aber IIRC ausser ssh nix nach extern wolltest und das Gesamtnetz recht übersichtlich war ich wäre das vielleicht mit Kannonen auf Spatzen geschossen.
WIe bereits erwähnt, geht es mir nicht um die höchstmögliche Sicherheit, sondern um eine der Situation angepasste. Das ist natürlich relaitv formuliert. Die Möglichkeit eines gezielten persönlichen Angriffes halte ich für extrem unwahrscheinlich. Realistisch ist aber ein Angriff durch "Script-Kiddies" und sonstigen Leuten, die nichts besseres zu tun haben und zufällig meine gerade verwendete (dynamische) IP-Adresse interessant fürs Hacking finden. Die Verbindung Clients-Server soll direkt, also nicht, über die Firewall erfolgen um keine Transfergeschwindigkeitsverringerung durch die Paketfilterung entstehen zu lassen. (Ich brauche wegen Videobearbeitung hohe Transferraten zwischen Client und Server)
Ich Michaels Vorschlag folgen und die gesparte Kohle in O'Reillys Building Internet Firewalls investieren (nein nicht alles ein Exemplar reicht;))
Ich habe mich im Internet etwas schlau gemacht und man findet dort relativ wenig Beispiele zum Design, sondern sehr viel zu iptables, etc., das mir *augenblicklich* nicht viel weiterhilft. Fürs erste sollen mal die Dienste auf den Rechnern richtig verteilt werden und dann geht es Schritt für Schritt weiter. Augenblick denke ich, dass folgende Lösung *allen* meinen Bedürfnissen am nöchsten kommt. FW-Rechner: ippp0->Internet eth0->Hauptserver Hauptserver eth0->Switch->Clients eth1->FW-Rechner Clients eth0->Switch->Hauptserver Damit erreiche ich eine direkte Verbindung Clients - Hauptserver ungebremst durch Paketfilter. Nachteil ist eine reduzierte Sicherheit. Ist das eine *total* verkehrte Lösung? Albert
Hy, Am 02/10/08@23:06 schrieb Al Bogner:
On Dienstag, 8. Oktober 2002 19:40 Maik Holtkamp wrote:
ich mal empfehlen:
Internet
+----------+
| FW | | eth0(DSL)| | eth1-----|-------DMZ | eth2(LAN)|
+----------+
LAN
Leider habe ich jetzt einen Rechner mehr verbraten als Du hast. Anfangs könnte man aber wahrschenlich auch die externen Services auf dem FW Rechner direkt laufen lassen und sie nur an das Interface eth1 binden.
Auf dem FW-Rechner stehen nur 800MB HD zur Verfügung. Squid und leafnode passen da also nicht darauf.
Ja[1], kanns mir schon vorstellen. Ein ernstgemeinter Tipp, steck da noch ein paar Mark in ein vernünftiges Beckup System. Für 800 MB sollte ein CDRW reichen und schau Dir mal mondo an (nein ich habe es auch noch nicht zu laufen überredet).
Da Du aber IIRC ausser ssh nix nach extern wolltest und das Gesamtnetz recht übersichtlich war ich wäre das vielleicht mit Kannonen auf Spatzen geschossen.
WIe bereits erwähnt, geht es mir nicht um die höchstmögliche Sicherheit, sondern um eine der Situation angepasste.
Ja und da reicht, bei der Config und _IMHHO_ der Vorschlag von Michael.
Das ist natürlich relaitv formuliert. Die Möglichkeit eines gezielten persönlichen Angriffes halte ich für extrem unwahrscheinlich.
ACK.
Realistisch ist aber ein Angriff durch "Script-Kiddies" und sonstigen Leuten, die nichts besseres zu tun haben und zufällig meine gerade verwendete (dynamische) IP-Adresse interessant fürs Hacking finden.
Ja. Aber was viel realistischer ist, ist IMHO das die Bude abfackelt, oder eingebrochen wird. Wir hatten das mal, alle Rechner weg :(. Die Jungs hatten aber das Streamer Band noch dagelassen. Dennoch mussten wir ca. 5-6 baugleiche Streamer ausprobieren, bis wir ein Gerät fanden, dass die gleiche Spurabweichung hatte wie unser geklauter :(. Quiteszenz: Vergiss vor lauter "Interneteinbruch" den normalen nicht;).
Die Verbindung Clients-Server soll direkt, also nicht, über die Firewall erfolgen um keine Transfergeschwindigkeitsverringerung durch die Paketfilterung entstehen zu lassen. (Ich brauche wegen Videobearbeitung hohe Transferraten zwischen Client und Server)
Die Paketfilterei nimmt nicht viel. Wenn Du einen "Hirschen" hast wirst Du es nicht merken. Das man hier und da ließt, das iptables performanter sein könnte liegt entweder an Monster Netzen (ISP) oder daran, das Linux FW/router meist auf Asbach Hardware realisiert werden (IMHO).
Ich Michaels Vorschlag folgen und die gesparte Kohle in O'Reillys Building Internet Firewalls investieren (nein nicht alles ein Exemplar reicht;))
Ich habe mich im Internet etwas schlau gemacht und man findet dort relativ wenig Beispiele zum Design, sondern sehr viel zu iptables, etc., das mir *augenblicklich* nicht viel weiterhilft. Fürs erste sollen mal die Dienste auf den Rechnern richtig verteilt werden und dann geht es Schritt für Schritt weiter.
Ja, deshalb hatte ich Dir ja Building Internet Firewalls empfohlen. Da geht es gar nicht um iptables sondern auf ... gut 900 Seiten nur ums Design. Bestimmt bei Dir (wie bei mir) völlig oversized, aber warum nicht?
Augenblick denke ich, dass folgende Lösung *allen* meinen Bedürfnissen am nöchsten kommt.
FW-Rechner: ippp0->Internet eth0->Hauptserver
Hauptserver eth0->Switch->Clients eth1->FW-Rechner
Clients eth0->Switch->Hauptserver
Damit erreiche ich eine direkte Verbindung Clients - Hauptserver ungebremst durch Paketfilter. Nachteil ist eine reduzierte Sicherheit.
Ist das eine *total* verkehrte Lösung?
Bei IIRC 2 Clients und als einzigen Dienst nach aussen ssh, IMHO nicht. [1] Ich bin ja auch eigentlich nur mit der Geschichte gekommen, weil Du mir den gesparten Rechner nicht schenken wolltest ;). -- bye maik
participants (3)
-
Al Bogner
-
Maik Holtkamp
-
Michael Nausch