Digital Eliteboard - Das Digitale Technik Forum

Registriere dich noch heute kostenloses um Mitglied zu werden! Sobald du angemeldet bist, kannst du auf unserer Seite aktiv teilnehmen, indem du deine eigenen Themen und Beiträge erstellst und dich über deinen eigenen Posteingang mit anderen Mitgliedern unterhalten kannst! Zudem bekommst du Zutritt zu Bereiche, welche für Gäste verwehrt bleiben

Support Rechner abschotten mit der Firewall ufw

Registriert
21. März 2008
Beiträge
5.400
Reaktionspunkte
2.977
Punkte
373
Ort
Tief im Westen
Mit der unkomplizierten Gratis-Firewall ufw und dem grafischen Front-End gufw schotten Sie Ihr Ubuntu-System schnell und mühelos nach außen ab. Egal ob Konsole oder grafisches Tool: Die Konfiguration der Firewall ist ein Kinderspiel.

Die neueste Version der Ubuntu-eigenen Firewall lässt sich mit wenigen Kommandozeilenbefehlen einrichten. Entwickler haben sie nun um einige notwendige, sinnvolle Befehle und Vorlagen erweitert. Wer die Eingabe an der Konsole scheut, kann auf ein grafisches Front-End zurückgreifen und so ebenfalls mit wenigen Klicks sein System vor Angriffen aus dem Internet absichern.
Grundlagen: Firewall

Der Begriff „Brandmauer“ trifft nicht ganz zu, wenn es um Firewalls geht, zumindest muss die Mauer einige Löcher haben, damit der Datenverkehr mit dem externen, unsicheren Netzwerk funktioniert. In den Grundeinstellungen fast jeder Firewall wird der Zugriff nach außen meist zugelassen, nur der Zugriff von außen wird zunächst komplett verboten.

Nach und nach konfigurieren Sie dann die Firewall so, dass einzelne Dienste auch von außen erreichbar sind. Diese Dienste werden über Portnummern definiert. Der HTTP-Dienst beispielsweise, über den Browser Web-Seiten abrufen, trägt die Nummer 80. Erfolgt bei aktivierter Firewall von Ihrem Rechner aus eine Anfrage an eine Web-Seite auf einem HTTP-Server im Internet, lässt die Firewall die angefragten Daten durch. Unaufgeforderte Anfragen aus dem fremden Netzwerk hingegen bleiben außen vor. Nur wenn Sie explizit Anfragen von außen über bestimmte Ports zulassen, öffnet sich die Firewall.
Zwei wichtige Punkte sollten Sie beachten, wenn Sie Firewalls einsetzen

1. Zwei Firewalls stiften nur Verwirrung. Wenn etwa Ihr Internet-Router bereits über eine aktive Firewall verfügt, dann brauchen Sie auf Ihrem Rechner keine und umgekehrt. Oft bieten aber solche Router-Firewalls weit weniger Konfigurationsmöglichkeiten (mitunter können Sie das Linux-Betriebssystem, das auf Routern in der Regel zum Einsatz kommt, haken und die Möglichkeiten des Routers danach erweitern. Das klappt beispielsweise bei der bekannten AVM Fritz!Box).

2. Oftmals sind Internet-Dienste unter Linux von Haus aus so konfiguriert, dass sie entweder nur dem lokalen Rechner („localhost“) zugänglich sind, etwa das Druck-System Cups, mit dem Sie theoretisch per Internet Printing Protocol IPP auch auf Drucker über das Internet zugreifen können. Oder sie sind standardmäßig deaktiviert oder gar nicht erst installiert, wie etwa der SSH-Server. Eine frische Neuinstallation von Ubuntu benötigt daher eigentlich gar keine Firewall – zumindest argumentieren die Ubuntu-Macher so, in der Linux-Szene ist das allerdings umstritten.
Wichtige Ports

Insgesamt gibt es 65535 Ports, von denen die wichtigsten im Bereich zwischen 1 und 1000 liegen. Web-Seiten im HTTP-Protokoll werden über Port 80 versandt, sichere Web-Seiten über Port 443. Der Mailempfang per POP3 erfolgt über Port 110, das sichere POPS per Port 995, der Versand per SMTP über Port 25. Wer einen IMAP-Server ansprechen will, benötigt den Port 143. Der Datentausch per FTP 3 findet über Port 20 statt, FTP-Befehle erfolgen über Port 21, Emule-Transfers über 4662 und 4672. Über den Port 22 erreichen Sie entfernte Rechner per SSH. ICQ verwendet den Port 5190, der Yahoo- Messenger 5050 und Skype 12452 zusätzlich zum Port 443.

Meist erfolgt der Datenaustausch per TCP-Protokoll, das Pakete in der korrekten Reihenfolge und mit Fehlerkorrektur am Ziel wieder zusammenbaut. Manche Dienste brauchen zusätzlich noch das schnellere, ungeordnete UDP-Protokoll. Eine detaillierte Liste 3 finden Sie unter
Du musst dich Anmelden oder Registrieren um diesen link zusehen!
. Diese Portnummern sind auch in der Textdatei /etc/services definiert.

Wenn Sie wissen möchten, welche Programme mit welchen Ports im Netzwerk kommunizieren, geben Sie als root oder mit vorangestelltem „sudo“ den Befehl lsof –i in einem Terminal-Fenster ein. Der Zusatz „(LISTEN)“ bedeutet, dass ein Dienst auf Anfragen wartet.
Globale Befehle für ufw

ufw dient letztendlich als Front-End für Iptables, mit dem im Linux-Kernel der Netzwerkverkehr geregelt wird. Iptables ist aber sogar für Linux-Profis aufgrund der zahlreichen Konfigurationsmöglichkeiten und unübersichtlichen Syntax oftmals schwierig zu konfigurieren. ufw übersetzt die einfachen Eingaben in die komplexen Iptables- Regeln. Wer die ufw-Regeln im Iptables-Jargon einsehen will, kann diese mit dem Befehl „sudo ufw show raw“ auflisten.



Wer ufw an der Kommandozeile steuern will, kommt mit wenigen Befehlen klar: „sudo ufw enable“ und „sudo ufw disable“ schaltet die Firewall ein und wieder aus.

Mit „sudo ufw status“ erfahren Sie, ob die Firewall läuft oder nicht. Um einen Port zu öffnen, etwa um den Zugang zum Rechner per SSH zu erlauben, geben Sie den Befehl sudo ufw allow 22 ein. Da der Port 22 in der der Textdatei /etc/services bereits mit dem Dienst SSH verknüpft ist, können Sie in diesem Fall auch statt der Portnummer den Namen verwenden, etwa sudo ufw allow ssh „sudo ufw status“ verrät neben dem Status der Firewall auch, welche Regeln Sie bereits definiert haben.



Wollen Sie nun einen Port wieder schließen, tippen Sie folgenden Befehl: sudo ufw deny ssh . Die Regel „ssh“ bleibt aber bestehen, und Sie können sie jederzeit wieder aktivieren. Möchten Sie eine Regel löschen, verwenden Sie den Befehl sudo ufw delete deny ssh Standardmäßig vermerkt Ubuntu Zugriffe auf die Firewall in den Log-Dateien /var/log/syslog und /var/log/messages. Mit „sudo ufw logging on“ und „sudo ufw logging off“ schalten Sie die Protokollierung ein oder
Grafisches Front-End Gufw

Wer lieber mit einem grafischen Front-End arbeiten will, der kann auf Gufw zurückgreifen, das Sie unter
Du musst dich Anmelden oder Registrieren um diesen link zusehen!
herunterladen können. Wir empfehlen die Verwendung der aktuellen Version für Ubuntu ab Version 9.04 von dieser Download-Seite, die Version 0.20.7 in den Repositories ist für Ubuntu 8.04 und 8.10 gedacht und funktioniert unter 9.04 nicht korrekt. Wenn Sie dort in den Einstellungen die Option „Beim Anmelden automatisch starten“ verwenden, führt das unter Umständen beim Anmelden zu einem schwarzen Bildschirm.


In diesem Artikel verwenden wir die Version 9.04.2. Hier sind die Einträge noch nicht eingedeutscht, das Erstellen neuer „Rules“ (Regeln) funktioniert aber in beiden Versionen ähnlich. In der Vorgängerversion erstellen Sie diese direkt im Hauptfenster, in der neuen Version erhalten Sie das Konfigurationsfenster mit einem Klick auf den „+“-Button unten im Hauptfenster.



Starten Sie das Programm über „System, Systemverwaltung, Firewall configuration“. Wenn Sie die Firewall verwenden wollen, setzen Sie ein Häkchen neben „Aktiviert“. Mit „Deny“ im Drop-down-Menü neben „By Default“ blockieren Sie zunächst alle Ports, das Schildsymbol wechselt dann zur Farbe Grün. Mit „Allow“ lassen Sie wieder alle Anfragen aus dem Internet zu. Mit einem Klick auf den „+“-Button unten links erstellen Sie eine neue Regel für Ihre Firewall, die dann auch bei aktivierter Firewall und der „Deny“-Einstellung greift.

Gufw bietet für einige wichtige Ports bereits Vorlagen, die Sie im Register „Vorkonfiguriert“ finden. Um beispielsweise den SSH-Port zu öffnen, wählen Sie dort zunächst links den Eintrag „Allow“. Rechts daneben belassen Sie den Eintrag „Service“ und wählen aus dem Dropdown- Menü rechts daneben den Eintrag „ssh“. Mit einem Klick auf „Hinzufügen“ erstellen Sie die Regel, die dann in der Liste „Rules“ auftaucht. Wollen Sie den Port vorübergehend schließen, wählen Sie statt des Eintrags „Allow“ im entsprechenden Drop-down-Menü „Deny“ und klicken wieder auf „Hinzufügen“. Wollen Sie die Regel löschen, markieren Sie sie in der Liste und klicken unten auf die Schaltfläche mit dem „-“-Zeichen. Gufw erkennt auch einige installierte Internet-Programme und bietet an, die von ihnen benötigten Ports zu konfigurieren. Im Register „Vorkonfiguriert“ wählen Sie dazu im zweiten Drop-down-Menü den Eintrag „Program“ statt „Service“. Hier können Sie beispielsweise die Ports für das Bittorrent-Programm Transmission oder das Filesharing-Programm Amule freigeben.
Benutzerdefinierte Ports öffnen


Sollte ein „Service“ (Dienst) unter Gufw nicht auftauchen, etwa wenn Sie nachträglich den Apache Web-Server auf Ihrem Ubuntu-Rechner installieren, der den Port 80 verwendet, dann können Sie die Port-Freigabe selbst definieren. Klicken Sie dazu in Gufw auf das „+“- Zeichen im Hauptfenster, und wählen Sie das Register „Einfach“. Setzen Sie zunächst die Aktion „Allow“. Prüfen Sie in der oben erwähnten Wikipedia-Liste, ob der Dienst neben dem TCP- auch das UDP-Protokoll benötigt; das HTTP-Protokoll verwendet beispielsweise beide. Wählen Sie den entsprechenden Eintrag im mittleren Drop-down-Menü. Rechts daneben tragen Sie die Port-Nummer ein, hier 80 und klicken auf „Hinzufügen“. Alternativ prüfen Sie an der Kommandozeile mit „sudo ufw app list“, ob Apache auftaucht, und aktivieren den Dienst mit „sudo ufw allow Apache“. Wenn Sie danach Gufw neu starten, taucht der aktivierte Dienst auch dort in der Liste auf.

Tipp: Das mit Apache installierte Template für ufw enthält einen Bug. Die Einträge „Apache Secure“ und „Apache Full“, mit denen Sie auch den HTTPS-Port öffnen, enthalten ungültige Leerzeichen. Öffnen Sie die Textdatei /etc/ufw/ applications.d/apache2.2-common mit root-Rechten, und entfernen Sie die Leerzeichen innnerhalb der Einträge in den eckigen Klammern. Danach funktionieren die Befehle „sudo ufw allow ApacheSecure“ und „sudo ufw allow ApacheFull“. Erweiterte Port-Freigaben Wenn Sie beispielsweise von Ihrem Ubuntu-Rechner per Samba Verzeichnisse im Netzwerk freigeben, dann sollten Sie die Zugriffe so einschränken, dass nur Rechner im internen Netzwerk darauf zugreifen können und niemand aus dem Internet.

Das Paket Samba bringt ebenfalls ein ufw-Template mit. An der Kommandozeile geben Sie den Befehl sudo ufw allow from 192.168.0.0/24 to any app Samba ein. Damit beschränken Sie den Zugriff auf Samba per IP-Range „192.168.0.0/24“ auf Rechner, die im Netzwerk IP-Adressen zwischen 192.168.0.1 und 192.168.0.255 verwenden. Um dasselbe in Gufw zu erreichen, müssen Sie wiederum die Port-Nummern ermitteln. Im Konfigurationsfenster wählen Sie diesmal das Register „Erweitert“, definieren die Aktion „Allow“ und wählen zunächst das Protokoll „tcp“. Neben „Von“ tragen Sie die IP-Range ein, unter „Bis“ die IP-Adresse des Ubuntu-Rechners. Dahinter ergänzen Sie zunächst den ersten TCP-Port, hier 139, und klicken auf „Hinzufügen“. Ändern Sie nun den Port in 445 und klicken nochmals auf „Hinzufügen“. Samba benötigt zusätzlich noch die UDP-Ports 137 und 138.
Ubuntu mit ufw als Router

Wenn Sie Ihren Ubuntu-Rechner auch zum Schutz weiterer PCs (auch mit Windows-Systemen) in Ihrem Netzwerk einsetzen wollen, müssen Sie die Daten aus dem Internet an diese weiterleiten. Das geschieht über das so genannte IP-Masquerading, bei dem ein Paket aus dem Internet, das auch immer die IP-Adresse des Empfängers enthält, vom Ubuntu-Rechner die IP-Adresse des Rechners im internen Netzwerk erfährt, der ursprünglich die Anfrage geschickt hat. Um das IP-Masquerading zu aktivieren, öffnen Sie als root die Textdatei /etc/default/ufw, und ändern Sie in der Zeile „DEFAULT_ FORWARD_POLICY die Zeichenkette „DROP“ in „ACCEPT“. Anschließend entfernen Sie in der Textdatei /etc/ufw/sysctl.conf in den Zeilen „net.ipv4.ip_forward=1“ und „net.ipv6.conf.default.forwarding=1“ das vorangehende #-Zeichen.

Nun müssen Sie ufw mitteilen, für welche IP-Adressen, also welchen Adressbereich die Weiterleitung gelten soll. Dazu öffnen Sie die Konfigurationsdatei /etc/ufw/before. rules und ergänzen folgende Zeilen nach dem ersten Kommentarblock:
*nat
:pOSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 192.168.0.0/24 -o
eth0 -j MASQUERADE
COMMIT



Damit geben Sie die Weiterleitung für Daten, die über die erste Netzwerkkarte eth0 Ihres Ubuntu-Rechners gesendet werden, für alle Rechner mit IP-Adressen zwischen 192.168.0.1 und 192.168.0.255 frei.

Mit sudo ufw disable && sudo ufw enable starten Sie die Firewall neu. Auf den anderen Rechnern im Ihrem Netzwerk tragen Sie nun neben einer eindeutigen festen IP-Adresse und der Subnetzmaske 255.255.255.0 die interne IP-Adresse des Ubuntu-Rechners als Gateway ein. Außerdem müssen Sie gegebenenfalls noch die DNS-Adresse(n) Ihres Providers eintragen.

Quelle:pC-Welt
 
Zurück
Oben