{"id":4000,"date":"2023-09-13T21:42:44","date_gmt":"2023-09-13T19:42:44","guid":{"rendered":"https:\/\/linux-bibel.at\/?p=4000"},"modified":"2023-09-13T21:42:47","modified_gmt":"2023-09-13T19:42:47","slug":"ufw-die-einfache-firewall-unter-linux","status":"publish","type":"post","link":"https:\/\/linux-bibel.at\/index.php\/2023\/09\/13\/ufw-die-einfache-firewall-unter-linux\/","title":{"rendered":"UFW &#8211; Die einfache Firewall unter Linux"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Ganz ehrlich &#8211; Aussagen wie &#8222;<strong>Eine Firewall hinter einem Router zu betreiben ist unn\u00f6tig (da der Router meist selbst eine beinhaltet)<\/strong>&#8220; sind aus meiner Sicht so unn\u00f6tig wie &#8222;<em>im Sommer ist es w\u00e4rmer als im Winter<\/em>&#8222;.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Die meisten g\u00fcnstigen Router erhalten schon nach kurzer Zeit keine Updates mehr und sind eine einzige Sicherheitsl\u00fccke.<\/li>\n\n\n\n<li>Viele Linux-Distributionen beinhalten in der Standard-Installation zwar keine Dienste die offene Server-Ports in das Netzwerk bereitstellen, dies \u00e4ndert jedoch nicht den Umstand das sich Nutzer entsprechende Software installieren, ohne sich \u00fcber die Sicherheit Gedanken zu machen.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">UFW &#8211; <strong>U<\/strong>ncomplicated <strong>F<\/strong>ire<strong>w<\/strong>all<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Die Firewall unter Linux arbeitet ein wenig komplizierter als die Firewall unter Windows. Sie setzt ein wenig Einarbeitung und so einiges Wissen rund um die Syntax der Befehle voraus. Hier hat sich der Distributor von Ubuntu so seine Gedanken gemacht um die Firewall unter Linux &#8211; den Netfilter &#8211; einfacher zu konfigurieren. Entstanden ist die Software UFW. Mit dieser Software ist die Linux-Firewall selbst f\u00fcr Einsteiger recht einfach zu konfigurieren &#8211; es ist nur noch recht wenig Wissen rund um den Netfilter notwendig.<br><br>Gleich einmal zu Beginn &#8211; ohne ein wenig Einarbeitung gelingt auch die Nutzung von UFW nicht. UFW wird als Administrator am Terminal genutzt. Einfacher gelingt es mit der grafischen Oberfl\u00e4che <strong>GUFW<\/strong> &#8211; ein entsprechender Beitrag ist im Entstehen.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">UFW installieren<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Direkt unter Ubuntu und wohl auch auf den meisten direkt auf Ubuntu basierenden Systemen ist dieses Werkzeug f\u00fcr die Konfiguration der Firewall automatisch vorinstalliert, unter anderen auf Debian basierenden Linux-Distributionen, sowie auf anderen Linux-Distributionen installieren Sie diese Software ganz einfach \u00fcber die Paket-Verwaltung durch das Paket &#8222;<strong>ufw<\/strong>&#8222;.<br><br><strong>Wichtig!:<\/strong> Es sollte auf einem System, welcher Linux-Distribution auch immer nur ein Werkzeug zur Konfiguration der Firewall genutzt werden, andere deinstalliert oder deaktiviert werden.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">UFW nutzen<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Wie schon beschrieben &#8211; die Software wird am Terminal vom Administrator genutzt, der normale Nutzer hat kein Recht an der Firewall unter Linux zu arbeiten.<br><br>Gleich einmal zu Beginn &#8211; nur weil man UFW installiert ist die Firewall nicht gleich aktiv &#8211; wie schon beschrieben handelt es sich nur um ein Werkzeug zur Konfiguration des Netfilters. Ob die Firewall aktiv ist oder nicht zeigt der Befehl:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ufw status<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Die Ausgabe &#8222;<strong>Status: inactive<\/strong>&#8220; zeigt, dass die Firewall nicht aktiv ist. Mit dem Befehl:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ufw enable<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">l\u00e4sst sich die Firewall aktivieren, mit:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ufw disable<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">wieder deaktivieren. Das Einfache an der Arbeit mit UFW statt den Iptables (<em>der Standard-Software zur Konfiguration der Firewall<\/em>) ist die Syntax &#8211; diese lautet:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ufw Aktion Service<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>ufw<\/strong> ist nat\u00fcrlich der eigentliche Befehl, die <strong>Aktion<\/strong> legt fest was mit dem Service zu geschehen hat. Folgende Aktionen sind m\u00f6glich:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>allow<\/strong> &#8211; Das Service wird erlaubt<\/li>\n\n\n\n<li><strong>deny<\/strong> &#8211; Das Service wird nicht erlaubt<\/li>\n\n\n\n<li><strong>reject<\/strong> &#8211; Das Service wird nicht erlaubt und die Anfrage erh\u00e4lt eine negative Antwort<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Mit dem <strong>Service<\/strong> legt man wieder den Dienst fest der erlaubt oder nicht erlaubt werden soll, also etwa &#8222;<strong>http<\/strong>&#8220; oder &#8222;<strong>https<\/strong>&#8220; f\u00fcr einen Webserver, &#8222;<strong>ssh<\/strong>&#8220; f\u00fcr einen SSH-Server. Es ist mit der Nutzung von UFW nicht n\u00f6tig einen Port anzugeben &#8211; ist aber nat\u00fcrlich m\u00f6glich. Alle m\u00f6glichen Ports und Dienste finden Sie in der Datei &#8222;<strong>\/etc\/services<\/strong>&#8222;:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/ufw.jpg\" rel=\"lightbox-0\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/ufw-1024x576.jpg\" alt=\"\" class=\"wp-image-4003\" title=\"ufw.jpg (309.43 KiB) 1980 mal betrachtet\" srcset=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/ufw-1024x576.jpg 1024w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/ufw-300x169.jpg 300w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/ufw-150x84.jpg 150w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/ufw-768x432.jpg 768w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/ufw-1536x864.jpg 1536w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/ufw.jpg 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">Nun m\u00f6chte ich im Beispiel die Dienste SSH und HTTPS erlauben, alles andere verbieten &#8211; meine Vorgangsweise w\u00e4re diese:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ufw allow ssh\nufw allow https\nufw default deny<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Mit der letzten Regel zeigen Sie der Firewall das alle anderen nicht angegebenen Dienste \/ Services nicht erlaubt sind.<br><br>Da nicht alle Ports der Firewall auch einem Dienst zugeordnet werden, manche Anwendungen jedoch gewisse offene Ports ben\u00f6tigen kann man nat\u00fcrlich auch die Ports und das Protokoll angeben. So etwa den Port <strong>443<\/strong> mit dem Protokoll <strong>TCP<\/strong> (<em>HTTPS<\/em>):<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ufw allow 443\/tcp<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Manche Anwendungen ben\u00f6tigen mehrere offene Ports &#8211; so etwa Kdeconnect die Ports von <strong>1714<\/strong> bis <strong>1764<\/strong> auf <strong>TCP<\/strong> und <strong>UDP<\/strong>. Es w\u00e4re nun sehr umst\u00e4ndlich jeden Port auf jedem Protokoll anzugeben. Um Ports von einem Port bis zu einem Port freizugeben, trennen Sie den niedrigsten Port vom h\u00f6chsten ganz einfach durch einen Doppelpunkt:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ufw allow 1714:1764\/tcp\nufw allow 1714:1764\/udp<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Noch einfacher funktioniert die Erstellung von Regeln mit vorhandenen vordefinierten. F\u00fcr manche Anwendungen besitzt UFW bereits passende Regeln, welche es gibt zeigt der Befehl:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ufw app list<\/code><\/pre>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/ufw1.jpg\" rel=\"lightbox-1\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/ufw1-1024x576.jpg\" alt=\"\" class=\"wp-image-4004\" title=\"ufw1.jpg (440.4 KiB) 1980 mal betrachtet\" srcset=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/ufw1-1024x576.jpg 1024w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/ufw1-300x169.jpg 300w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/ufw1-150x84.jpg 150w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/ufw1-768x432.jpg 768w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/ufw1-1536x864.jpg 1536w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/ufw1.jpg 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">Zu diesen Regeln lassen sich \u00fcbrigens auch Informationen aufrufen, so etwa f\u00fcr Ktorrent:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/ufw2.jpg\" rel=\"lightbox-2\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/ufw2-1024x576.jpg\" alt=\"\" class=\"wp-image-4005\" title=\"ufw2.jpg (436.73 KiB) 1980 mal betrachtet\" srcset=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/ufw2-1024x576.jpg 1024w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/ufw2-300x169.jpg 300w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/ufw2-150x84.jpg 150w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/ufw2-768x432.jpg 768w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/ufw2-1536x864.jpg 1536w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/09\/ufw2.jpg 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">Um solche vordefinierten Regeln zu nutzen, geben Sie diese einfach an, etwa f\u00fcr KTorrent:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Enth\u00e4lt die Bezeichnung der Regel Leerzeichen gilt es diese unter Anf\u00fchrungszeichen zu setzen, also etwa:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ufw allow \"Mail submission\"<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Interessierte k\u00f6nnen sich anzeigen, was sich an der Firewall so alles tut, hierzu aktiviert man das Loggen mit:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ufw logging on<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Anschlie\u00dfend geben Sie mit:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ufw logging Stufe<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">die Details an die UFW loggen soll:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>low<\/strong> &#8211; Standard<\/li>\n\n\n\n<li><strong>medium<\/strong> &#8211; Mehr Informationen<\/li>\n\n\n\n<li><strong>high<\/strong> &#8211; Viele Informationen<\/li>\n\n\n\n<li><strong>full<\/strong> &#8211; Alle Informationen<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Mit &#8222;<strong>full<\/strong>&#8220; werden wirklich alle Aktionen der Firewall aufgezeichnet, dies ist eher in Hochsicherheitsumgebungen erforderlich &#8211; keinesfalls in privaten Netzwerken. Mitverfolgen lassen sich solche Meldungen etwa ebenfalls als Administrator auf dem Terminal mit dem Befehl:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>tail -f \/var\/log\/syslog<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Mittels:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ufw disable<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">l\u00e4sst sich die Firewall wieder deaktivieren. Nehmen Sie \u00c4nderungen an der Firewall vor, laden Sie die Konfiguration mit:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ufw reload<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">neu.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Erstver\u00f6ffentlichung: So 25. Jul 2021, 06:20<\/strong><\/p>\n<div class=\"pld-like-dislike-wrap pld-custom\">\r\n    <div class=\"pld-like-wrap  pld-common-wrap\">\r\n    <a href=\"javascript:void(0)\" class=\"pld-like-trigger pld-like-dislike-trigger  \" title=\"Gef\u00e4llt mir\" data-post-id=\"4000\" data-trigger-type=\"like\" data-restriction=\"cookie\" data-already-liked=\"0\">\r\n                            <img src=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/12\/Daumen-Hoch.png\" alt=\"Gef\u00e4llt mir\" \/>\r\n            <\/a>\r\n    <span class=\"pld-like-count-wrap pld-count-wrap\">1    <\/span>\r\n<\/div><div class=\"pld-dislike-wrap  pld-common-wrap\">\r\n    <a href=\"javascript:void(0)\" class=\"pld-dislike-trigger pld-like-dislike-trigger  \" title=\"Gef\u00e4llt mir nicht\" data-post-id=\"4000\" data-trigger-type=\"dislike\" data-restriction=\"cookie\" data-already-liked=\"0\">\r\n                            <img src=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2023\/12\/Daumen-Runter.png\" alt=\"Gef\u00e4llt mir nicht\" \/>\r\n            <\/a>\r\n    <span class=\"pld-dislike-count-wrap pld-count-wrap\"><\/span>\r\n<\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>Ganz ehrlich &#8211; Aussagen wie &#8222;Eine Firewall hinter einem Router zu betreiben ist unn\u00f6tig (da der Router meist selbst eine beinhaltet)&#8220; sind aus meiner Sicht so unn\u00f6tig wie &#8222;im Sommer ist es w\u00e4rmer als im Winter&#8222;. UFW &#8211; Uncomplicated Firewall Die Firewall unter Linux arbeitet ein wenig komplizierter als die Firewall unter Windows. Sie setzt [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":4006,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[402,47,72],"tags":[],"class_list":["post-4000","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-firewall","category-internet","category-sicherheit"],"_links":{"self":[{"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/posts\/4000","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/comments?post=4000"}],"version-history":[{"count":3,"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/posts\/4000\/revisions"}],"predecessor-version":[{"id":4007,"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/posts\/4000\/revisions\/4007"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/media\/4006"}],"wp:attachment":[{"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/media?parent=4000"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/categories?post=4000"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/tags?post=4000"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}