Forum: PC-Programmierung debian als firewall


von Von K. (klausewitz)


Lesenswert?

Hallo,
ich google jetzt schon einige Zeit nach dem Thema, aber entweder ich bin 
zu doof oder ich habe einfach die falschen Schlüsselwörter...  :(

Jedenfalls möchte ich gerne eine Art "transparenten" firewall mit Linux 
für mein trautes Heim implementieren.
Fritzbox <-> FW <-> mein Subnetz

Im Firewall möchte ich festlegen, welche IP oder MAC meines Subnetzes 
überhaupt nach draußen kommt (d.h. das Subnetz verlassen kann). 
DHCP-Server für das Subnetz könnte die Fritzbox oder die FW machen.
Außerdem möchte ich allgemein bestimmte Ports nach draußen sperren (z.B. 
WhatsApp, FileSharing).
Wo weit von innen nach außen.
Von außen sollte mein Mailserver (SMTP) im Subnetz erreichbar sein. Das 
ist in der Fritzbox problemlos eingetragen und müßte halt auch die 
andere Richung durch den FW.
Also eigentlich bräuchte ich einen Switch mit integriertem Paket-Filter.

Gibt es für so etwas fertige Programme? Am besten unter debian? Oder ein 
Anfänger-taugliches Tutorial?
Insgesamt wäre es schön, wenn das ganze mit ein paar Textdateien 
konfigurierbar wäre, damit ich auch nächstes Jahr noch durchblicke. Eine 
Browser-Konfiguration wäre natürlich auch OK, sofern ich die 
Konfigurations-Dateien über ssh wieder sichern kann. ;)
iptables habe ich mir schon angeschaut, aber noch keinen Durchblick, wie 
ich mein Problem da konfigurieren könnte. :(
Als Plattform wollte ich einen RaspPi einsetzen - nicht weil er jetzt 
dafür so hochoptimiert wäre, sondern weil ich noch einen herumliegen 
habe und debian da drauf auch die Fritzbox via USB erkennt. Spart den 2. 
NIC. Performance ist sekundär, da der DSL-Anschluß an der FritzBox 
sowieso max 3MBit kann (und selbst das nur bei gutem Wetter).

Hoffe, das Problem einigermaßen geschildert zu haben. Bei Rückfragen 
einfach melden!  :)

von blub (Gast)


Lesenswert?

http://www.amazon.de/Linux-Firewalls-Sicherheit-Linux-Server--Netzwerke-Library/dp/3827330041/ref=sr_1_1?ie=UTF8&qid=1404645196&sr=8-1&keywords=iptables

Mir hat es geholfen iptables zu verstehen und es werden auch GUIs dafür 
vorgestellt.
Das ganze gibt es natürlich auch fertig, zB von Netasq. Ist aber nicht 
billig.

von Andreas B. (bitverdreher)


Lesenswert?

IPCop ist Dein Freund.

Gruß
Andreas

von Von K. (klausewitz)


Lesenswert?

Hi,
danke für die schnelle Rückmeldung!

Das Buch sieht gut aus, das werde ich mir die Tage mal anschauen. Was 
mir bei iptables halt graust ist diese seltsame Konfiguration... da 
fehlt mit einfach eine ganz normale intuitive /etc/iptables.conf so wie 
bei z.B. samba.  :(
Dafür ist es Standard-Bordmittel bei Linux und deshalb auch in 2 Jahren 
noch verfügbar.

IPcop hatte ich schon gesehen, der Nachfolger/Fork IPfire wird 
tatsächlich mittlerweile auf dem RaspPi unterstützt. Mal schauen wie 
lange...
Den werde ich aber als erstes ausprobieren. Scheint auf den 1. Blick ja 
so ähnlich zu bedienen zu sein wie das Web-Interface meiner Fritzbox  ;)

Gibt es eigentlich keine Anwendung, die ganz normal unter Debian läuft 
und z.B. iptables "fernsteuert"? Also nicht gleich ein ganzes OS wie 
IPfire?
Ich denke da an Hardware-Unterstützung (Fritzbox via USB, diverse 
USB-NICs, ...)

Nochmal Danke euch beiden!  :)

von Linux-Gott (Gast)


Lesenswert?


von Frank E. (Firma: Q3) (qualidat)


Lesenswert?

Schau' die mal "Sophos UTM 9" an, ist eine sehr professionlle Firewall 
mit sehr vielen Parametern inklusive NAT, DNS, DHCP, vordef. Regeln für 
VOIP und v.a. - für Home-User kostenlos. Wird per Webinterface bedient 
...

von Sven L. (sven_rvbg)


Lesenswert?

Hallo,

von Klausewitz schrieb:
> Was
> mir bei iptables halt graust ist diese seltsame Konfiguration... da
> fehlt mit einfach eine ganz normale intuitive /etc/iptables.conf so wie
> bei z.B. samba.  :(

Naja du wirst dir halt ein Script schreiben und ggf. im Script Komentare 
machen.

Bei IP Tables ist es so, das du (d)ein Firewallscript bei jedem Start 
des Rechners wieder ausführen musst.

Beim ausführen deines Scriptes solltest Du zuerst alle Regeln löschen, 
für den Fall das noch welche vorhanden sind.

Außerdem bei iptables immer daran denken, was einmal blockiert ist, ist 
raus aus dem Rennen.

Und zum Üben sicherstellen, das du eine lokale Konsole an deiner 
"Firewall" hast.

https://wiki.debian.org/iptables

von Von K. (klausewitz)


Lesenswert?

Linux-Gott schrieb:
> http://www.fwbuilder.org/

Hm, auf den ersten Blick: Perfekt! Genau das, was ich suche!  :)
Auf den 2. Blick scheint die Implementierung noch grundlegende Macken zu 
haben (in Version 5.1???)
Firewall erstellt, gespeichert und Programm beendet. Programm wieder 
auf, Firewall geladen - und die Hälfte ist weg.
Dann mal versucht, einen Firewall ohne Vorlage zu erstellen: Egal wie 
oft ich meinen Raspi als FW-Plattform anlege, im Baum taucht er nie auf 
und steht auch nirgendwo zu Auswahl.   :(
Also zumindest die Windoof-Version weckt nicht gerade mein Vertrauen...

Werde doch erst mal IPfire probieren (heute ist mir leider etwas 
dazwischen gekommen)

von waldundwiese (Gast)


Lesenswert?

Einfach schnell sicher und genau dafür gemacht

http://www.endian.com/de/community/efw-30/

von Frank K. (fchk)


Lesenswert?

von Klausewitz schrieb:

> Das Buch sieht gut aus, das werde ich mir die Tage mal anschauen. Was
> mir bei iptables halt graust ist diese seltsame Konfiguration... da
> fehlt mit einfach eine ganz normale intuitive /etc/iptables.conf so wie
> bei z.B. samba.  :(

Dann greife zu OpenBSD. Da gibts das.

OpenBSD ist kein Linux und damit potentiell besser für 
sicherheitskritische Aufgaben geeignet, weil es von Anfang an für diesen 
Zweck entwickelt wurde. Es ist ein echtes Unix (TM), d.h. das Look&Feel 
ist ähnlich wie bei Linux, wo das ganze Unix-Zeugs aus Copyrightgründen 
nur nachprogrammiert wurde), und diese Unix-Variante stammt von den 
gleichen Leuten, die auch zB OpenSSH machen (und OpenBGPd, OpenNTPd etc 
etc) und jetzt das OpenSSL einmal komplett überarbeiten. Und es wird 
außerhalb der USA von nicht-USA-Bürgern entwickelt und darf damit harte, 
nicht NSA-unterwanderte Crypto-Technik verwenden.

Ein Pi ist für OpenBSD ungeeignet, aber es existieren Ports für ARMv7 
(Cortex A8/A9, der Pi hat nur einen alten ARM11 Kern)-Bords wie 
BeagleBone etc. Aus Sicherheitsgründen solltest Du aber wirklich zwei 
Ethernet NICs verwenden.

fchk

von MiWi (Gast)


Lesenswert?

von Klausewitz schrieb:
> Hallo,
> ich google jetzt schon einige Zeit nach dem Thema, aber entweder ich bin
> zu doof oder ich habe einfach die falschen Schlüsselwörter...  :(
>
> Jedenfalls möchte ich gerne eine Art "transparenten" firewall mit Linux
> für mein trautes Heim implementieren.
> Fritzbox <-> FW <-> mein Subnetz
>
> Im Firewall möchte ich festlegen, welche IP oder MAC meines Subnetzes
> überhaupt nach draußen kommt (d.h. das Subnetz verlassen kann).
> DHCP-Server für das Subnetz könnte die Fritzbox oder die FW machen.
> Außerdem möchte ich allgemein bestimmte Ports nach draußen sperren (z.B.
> WhatsApp, FileSharing).
> Wo weit von innen nach außen.
> Von außen sollte mein Mailserver (SMTP) im Subnetz erreichbar sein. Das
> ist in der Fritzbox problemlos eingetragen und müßte halt auch die
> andere Richung durch den FW.
> Also eigentlich bräuchte ich einen Switch mit integriertem Paket-Filter.
>
> Gibt es für so etwas fertige Programme? Am besten unter debian? Oder ein
> Anfänger-taugliches Tutorial?
> Insgesamt wäre es schön, wenn das ganze mit ein paar Textdateien
> konfigurierbar wäre, damit ich auch nächstes Jahr noch durchblicke. Eine
> Browser-Konfiguration wäre natürlich auch OK, sofern ich die
> Konfigurations-Dateien über ssh wieder sichern kann. ;)
> iptables habe ich mir schon angeschaut, aber noch keinen Durchblick, wie
> ich mein Problem da konfigurieren könnte. :(
> Als Plattform wollte ich einen RaspPi einsetzen - nicht weil er jetzt
> dafür so hochoptimiert wäre, sondern weil ich noch einen herumliegen
> habe und debian da drauf auch die Fritzbox via USB erkennt. Spart den 2.
> NIC. Performance ist sekundär, da der DSL-Anschluß an der FritzBox
> sowieso max 3MBit kann (und selbst das nur bei gutem Wetter).
>
> Hoffe, das Problem einigermaßen geschildert zu haben.

Ist eh was normales.

 als Antwort kann ich dir uneingeschränkt www.fli4l.de empfehlen. Ist 
zwar nicht bling bling aber so anpaßbar wie Du es Dir nur wünschen 
kannst....

und - deutschsprachige Usenetgruppe ist vorhanden, sehr hilfreich und 
wissend....

Oder du nimmst irgendeinen dd-wrt, Openwrt tomato-fähiger Router, beim 
Reichelt gibts die wrt54g um ~8€/Stk ohne Netzteil....

Grüße

MiWi

von Progger (Gast)


Lesenswert?

Ein Hinweis noch von meiner Seite: wenn dir das Sperren ausgehender 
Verbindungen für WhatsApp und Filesharing wichtig ist, dann ist es mit 
dem Sperren ausgehender Ports leider oft nicht getan. Viele dieser 
Programme (bekannt wurde das Vorgehen soweit ich weiß durch Skype) sind 
sehr einfallsreich wenn es darum geht, nach draußen zu kommen. Das ist 
für Profis schon oft schwer zu verhindern. Wenn das für dich wichtig 
ist, dann solltest du dich in diese Richtung noch einmal genau 
informieren.

von PopCorn (Gast)


Lesenswert?

Alt, aber immer noch gut für Grundlagen.

http://www.oreilly.de/german/freebooks/linuxfire2ger/toc.html

von Von K. (klausewitz)


Lesenswert?

Hallo,
erst einmal ein herzliches Danke an alle!  :)

Der fwbuilder scheint doch halbwegs zu funktionieren - der 
Komponentenbau aktualisiert nur nicht immer. Aber selbst wenn die 
Software nicht so stolperfrei zum Ziel führt, so hat sie mir doch ein 
wenig geholfen, meine Gedanken und Ziele zu sortieren und zu 
formulieren. :)

Das Buch sieht auf den ersten Blick sehr interessant aus. Die Lektüre 
werde ich mir auf alle Fälle gönnen!
Die 2 NICs wollte ich auf alle Fälle, nicht nur wegen der Sicherheit. 
Und die habe ich beim Raspberry auch tatsächlich: 1x das 
Onboard-Ethernet und 1x die Fritzbox über USB. Die wird von Debian als 
NIC erkannt. Deswegen klebe ich momentan auch so an Debian - meine 
ganzen frühen Linux-Gehversuche sind daran gescheitert, daß immer 
irgendwelche Hardware nicht funktioniert hat. :(
OpenBSD wollte ich mir irgendwann auch einmal antun, allerdings sind mir 
das bei dm Projekt zu viele Neuigkeiten auf einmal. ;)
Mit dem wrt54g sollte man aufpassen!!! Ich meine, den für den Preis auch 
schon bei Pollin gesehen zu haben (Reichelt bin ich momentan nicht 
aktuell). Allerdings sind da verschiedene HW-Versionen im Umlauf, von 
denen nur die 54gL-Versionen Linux-fähig sind. Die anderen haben wohl zu 
wenig Speicher. Und selbst die GLs sind recht knapp bemessen. Von daher 
ist der Pi vielleicht nicht die optimale Wahl, aber sicher ein guter 
Ansatz.

Die Sperrung von WhatsApp und FileSharing ist ein sehr guter Hinweis. Da 
werde ich mich auch noch schlau machen (müssen). Mein erster Schritt 
wird allerdings etwas einfacher: einzelne Geräte zwar an DHCP der 
Fritzbox dranlassen, aber nicht ins Internet. Ich habe einfach zu viele 
Netzwerk-Geräte, die ständig nach Hause telefonieren. Mein Fernseher 
will immer ins Internet, um Programmhinweise nachzuladen (und wer weiß 
was noch). Auf das Intranet möchte ich aber ungern verzichten, weil er 
da so schöne Fernsteuer-Funktionen hat.  ;)
Meine Webcam will dauernd nach draußen, anscheinend um einen 
DynDNS-Dienst in China zu kontaktieren. Die Funktion brauche ich sowas 
von gar nicht...
Wenn das läuft, dann gehe ich weiter ins Detail  ;)

von Von K. (klausewitz)


Lesenswert?

So,
ich bin jetzt ein kleines Stückchen weiter. Allerdings hänge ich immer 
nch am Anfang.  :(
IPfire ist ziemlich mühseelig auf dem RaspPi ModB zum Laufen zu kriegen. 
Das Image bootet nämlich nicht. Irgendwann in den Tiefen eines Forums 
den Tip gefunden: Boot-Dateien von Raspbian kopieren.
Prinzipiell läuft es, allerdings ist die Weboberfläche ziemlich zäh. 
Booten dauert auch ziemlich lange.
Pro: Die FritzBox wird über USB problemlos erkannt.  :)

Momentan bin ich aber wieder zurück zu einem Minimal-Raspbian. Zum einen 
ist es wesentlich übersichtlicher, zum anderen natürlich auch viel mehr 
Lerneffekt ;)
An eth0 hängt mein Intranet, an eth1 hängt die FB über USB. Habe auch 
eine entsprechende statische Route eingetragen
1
fritz.fon.box   *               255.255.255.255 UH    0      0        0 eth1
Vom Raspi kann ich sowohl das Intranet als auch die FB anpingen. FB hat 
192.168.1.1, Raspi 192.168.1.2, Intranet 192.168.x.x
DHCP möchte ich weiterhin von der Fritzbox.

Als 1. Schritt wollte ich einfach den Raspi als Switch mißbrauchen: Er 
soll alles zwischen den 2 NICs hin- und herschaufeln. Filtern kommt 
später.
Dummerweise routet er aber schon keine ARP-Pakete, wodurch die Fritzbox 
natürlich nicht auffindbar ist.  :(
Wo liegt denn mein Denkfehler? Müßte ich eine Bridge zwischen den 2 NICs 
definieren? Wenn ja: wie?

Ist jetzt doch wieder ein längerer Text geworden - hoffentlich liest ihn 
trotzdem jemand...
Bei Fragen einfach fragen!  ;)

von Von K. (klausewitz)


Lesenswert?

Jippy, das wieder einen Schritt weiter!  :-D
Bridge-Utils installiert und funktioniert es "durchsichtig".

Jetzt kämpfe ich ein bißchen mit der Filterung - da sperre ich mich 
konsequenz komplett aus. Aber das kriege ich auch noch klein ;)

von Marek W. (ma_wa)


Lesenswert?

kleiner Tipp unter Debian, schaue dir mal die Shorewall an.

von Von K. (klausewitz)


Lesenswert?

Hallo,
erst ein mal ein herzliches DANKE an alle!  :)

Also ich habe momentan Raspbian mit iptables ans Laufen gebracht. Das 
schöne an der Lösung ist, daß die ganzen Filter nach einem Neustart erst 
einmal wieder weg sind. Hat große Vorteile, wenn man sich gerne 
aussperrt!  ;)
Ich muß zugeben, das ist vielleicht nicht die eleganteste 
Klicki-Bunti-Lösung, aber es hatte für mich einen unheimlichen 
Lerneffekt. (Das ist bei Hobby-Projekten doch auch sehr wichtig, oder?)
Bei der Erstellung der Regeln hat mit FWbuilder doch sehr geholfen, auch 
wenn die Software in sich noch recht holprig ist.

2 Erkenntnisse für alle, die das mal zu Hause selbst ausprobieren 
wollen:
a) Meine Fritzbox meldet sich beim allerersten Anschließen an USB nach 
dem Booten grundsätzlich als CD-ROM an. Danach kommt sie immer als 
AVM-Netzwerkadapter. Oder zumindest bis ich die Box wieder neu starte.
Keine Ahnung, ob das ein Bug ist oder ich da über ein 
Rettungssystem/Bootloader gefallen bin. Jedenfalls ist es lästig, wenn 
man Raspberry und FB gleichzeitig einschaltet. Hier werde ich wohl doch 
bei Gelegenheut einen "richtigen" USB-ETH-Adapter kaufen müssen
b) Die Bridge ist bei mir nur bedingt praxistauglich. Die funktioniert 
nur, wenn beide Netzwerke verfügbar sind. Wenn also ein Adapter noch 
nicht da ist (z.B. Fritzbox zu lange bootet), dann geht das in die Hose. 
Außerdem sind dann vom Raspberry aus die beiden Netzwerkadapter nicht 
mehr sichtbar. Es gibt nur noch br0 als Adapter mit eigener IP. Ob die 
laufenden Server den Umzug mitkriegen und weiterhin unter anderer IP 
ansprechbar sind, scheint Glückssache zu sein. Gerade Samba scheint da 
teilweise Problemchen zu haben.

Summa summarum: Meine Filter laufen momentan so, wie sie sollen. Das 
Routing habe ich noch nicht getestet.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.