In diesem Artikel zeige ich Ihnen, wie Sie die UFW-Firewall unter Ubuntu 18.04 einrichten. In Ubuntu ist die Standard-Firewall UFW, kurz für Uncomplicated FireWall . Es gibt es seit der Veröffentlichung von Ubuntu 18.04 und wurde entwickelt, um die Konfiguration von iptables zu vereinfachen, die ziemlich komplex war.
Bei der Verwendung eines beliebigen Betriebssystems ist eine Firewall eine der wichtigsten Funktionen, die Sie in Bezug auf die Sicherheit Ihres Systems berücksichtigen müssen. Eine Firewall ist ein Schild oder eine Barriere, die zwischen Ihrem PC und dem Internet besteht und nicht autorisierten Datenverkehr wie den Fernzugriff auf Ihr System blockiert und zum Schutz vor bösartigem Code beiträgt, der ständig das Internet durchquert. Eine Firewall kann entweder Hardware oder Software sein. Eine Hardware-Firewall ist ein eigenständiges Firewall-System, das im Netzwerk platziert wird, um eine Schutzschicht hinzuzufügen, indem es den Datenverkehr zum und vom Netzwerk steuert und den Zugriff auf unerwünschte Websites durch Benutzer blockiert. Eine Software-Firewall ist in Betriebssysteme wie Linux und Windows integriert und trägt dazu bei, Ihr System vor externen Angriffen zu schützen.
Lesen Sie auch :
- So aktivieren, verweigern, erlauben und löschen Sie Regeln auf der Ubuntu UFW-Firewall
Installation von UFW
Ubuntu 18.04 wird standardmäßig mit installiertem ufw geliefert. Bei früheren Systemen müssten Sie jedoch den folgenden Befehl ausführen
apt-get install ufw
Um zu prüfen, ob ufw ausgeführt wird, führen Sie run
aussystemctl status ufw
Wenn es läuft, sollten Sie die folgende Ausgabe erhalten
● ufw.service - Uncomplicated firewall
Loaded: loaded (/lib/systemd/system/ufw.service; enabled; vendor preset: enab
Active: active (exited) since Tue 2018-04-10 22:03:30 UTC; 4min 1s ago
Process: 376 ExecStart=/lib/ufw/ufw-init start quiet (code=exited, status=0/SU
Main PID: 376 (code=exited, status=0/SUCCESS)
Tasks: 0
Memory: 0B
CPU: 0
CGroup: /system.slice/ufw.service
Apr 10 22:03:30 ip-172-31-41-251 systemd[1]: Started Uncomplicated firewall.
Warning: Journal has been rotated since unit was started. Log output is incomple
Um zu überprüfen, ob es aktiv oder inaktiv ist, führen Sie es aus
ufw status
Wenn es inaktiv ist, erhalten Sie die folgende Ausgabe
Status: inactive
So aktivieren Sie UFW mit dem Standardsatz von Regeln, führen Sie
ausufw enable
Um die Firewall zu deaktivieren, führen Sie
ausufw disable
Standard-UFW-Regeln einrichten
Um Standardregeln einzurichten, die alle ausgehenden Protokolle zulassen, melden Sie sich als root an und führen Sie
ausufw default allow outgoing
Ausgabe
Default outgoing policy changed to 'allow'
(be sure to update your rules accordingly)
Um alle eingehenden Verbindungen abzulehnen, führen Sie
ausufw default deny incoming
Ausgabe
Default outgoing policy changed to 'deny'
(be sure to update your rules accordingly)
Die obigen Befehle lassen alle ausgehenden Verbindungen zu und verweigern oder blockieren alle eingehenden Verbindungen.
An dieser Stelle möchten Sie vielleicht die Firewall aktivieren, aber bevor Sie dies tun, lassen Sie zuerst ssh zu. Dies verhindert die Trennung zum Server, da wir zuvor die Ablehnung aller eingehenden Verbindungen festgelegt haben.
Um ssh zuzulassen, führen Sie aus
ufw allow 22/tcp
Ausgehend
Skipping adding existing rule
Skipping adding existing rule (v6)
Der ssh-Zugriff kann auch nach Dienstnamen erlaubt werden,
ufw allow ssh
Wenn Sie die Regelausführung entfernen möchten
ufw delete allow 22/ssh
Um einen Dienst nach Namen abzulehnen, führen Sie
ausufw deny service-name
Zum Beispiel
ufw deny ssh
Um alle Dienste zu sehen, die im System erlaubt oder verweigert werden können, besuchen Sie /etc/services
Datei.
cat /etc/services | less
Beispielausgabe
ftp-data 20/tcp
ftp 21/tcp
fsp 21/udp fspd
ssh 22/tcp # SSH Remote Login Protocol
ssh 22/udp
telnet 23/tcp
smtp 25/tcp mail
time 37/tcp timserver
time 37/udp timserver
rlp 39/udp resource # resource location
nameserver 42/tcp name # IEN 116
whois 43/tcp nicname
tacacs 49/tcp # Login Host Protocol (TACACS)
tacacs 49/udp
re-mail-ck 50/tcp # Remote Mail Checking Protocol
re-mail-ck 50/udp
domain 53/tcp # Domain Name Server
domain 53/udp
Ufw-Firewall wird gestartet
Um die Firewall zu aktivieren, melden Sie sich als root an und führen Sie den folgenden Befehl aus:
ufw enable
Sie werden möglicherweise mit der folgenden Warnung aufgefordert
Command may disrupt existing ssh connections. Proceed with operation (y|n)? y
Wenn Sie Ja auswählen, erhalten Sie die folgende Ausgabe
Firewall is active and enabled on system startup
Die Firewall ist jetzt aktiv und wird bei jedem Start gestartet. Wir können uns die Firewall-Regeln noch einmal ansehen:
ufw status
Die Ausgabe zeigt nun den Status der Firewall plus die erlaubten Dienste/Ports
Ausgabe
ufw status active
Status: active
To Action From
-- ------ ----
22/tcp ALLOW Anywhere
22 ALLOW Anywhere
22/tcp (v6) ALLOW Anywhere (v6)
22 (v6) ALLOW Anywhere (v6)
Verbindungen in ufw zulassen
Sie können problemlos eingehende Verbindungen über Port/Bereich, Anwendungsname, IP-Adresse/Subnetz in ufw zulassen.
Sehen Sie sich die Beispiele unten an.
a) Zulassen von Anwendungen nach Name oder Portnummer/-bereich
ufw allow service-name
ODER
ufw allow port/tcp
Zum Beispiel
ufw allow ssh or ufw allow 22/tcp
ufw allow ftp or ufw allow 21/tcp
sudo ufw erlauben 1500:2000/tcp
b) Erlaubt IP-Adresse/Subnetze
Die folgenden Befehle ermöglichen Verbindungen von bestimmten IPs oder Subnetzen und wir können auch bestimmte Portnummern verwenden.
Um Verbindungen von einer bestimmten IP-Adresse zuzulassen
ufw allow from 10.200.20.45
Um eine IP anzugeben, die sich mit einem bestimmten Port verbinden darf, führen Sie
ausufw allow from 10.200.20.45 to any port 22
Das Obige erlaubt der IP-Adresse 10.200.20.45 nur die Verbindung über ssh
Um zuzulassen, dass sich ein bestimmtes Subnetz von IPs mit dem System verbindet, verwenden Sie die CIDR-Notation zur Angabe einer Netzmaske
ufw allow from 192.168.1.0/24
Das Obige ermöglicht IPs von 192.168.1 bis 192.168.1.254, sich mit dem System zu verbinden
Sie können auch den Zielport des Subnetzes angeben
ufw allow from 192.168.1.0/24 to any port 22
Dies impliziert, dass IPs von 192.168.1 bis 192.168.1.254 über Port 22, der ssh ist, eine Verbindung zum System herstellen können.
c) Zulassen nach Schnittstellenname
Wenn wir Verbindungen über den Schnittstellennamen zulassen müssen, ist dies möglich
ufw allow in on eth0 to any port 80
Wie man Verbindungen in ufw ablehnt
Standardmäßig ist ufw so konfiguriert, dass alle eingehenden Verbindungen abgelehnt werden.
a) IP-Adresse / Subnetz
Wenn wir den Zugriff auf eine bestimmte IP-Adresse blockieren möchten, können wir dies mit dem folgenden Befehl tun:
ufw deny from 192.168.1.15
Dadurch werden alle eingehenden Verbindungen vom Host mit der IP-Adresse 192.168.1.15 blockiert
Als Nächstes blockieren wir das gesamte Subnetz:
ufw deny from 150.165.125.0/24
Dadurch werden alle Verbindungen aus diesem Subnetz blockiert.
b) Ports und Anwendung verweigern
Um einen Port oder einen Dienst zu verweigern
ufw deny 80/tcp
ODER
ufw deny http
sudo ufw deny 1500:2000/tcp *Dies verweigert Portbereiche*
Regeln löschen und verfolgen
Wenn Sie viele Regeln hinzufügen, können Sie sie besser verfolgen, indem Sie ihre Nummern anzeigen. Sie können Nummern mit dem folgenden Befehl erhalten:
ufw status numbered
Ausgabe
ufw status numbered
Status: active
To Action From
-- ------ ----
[ 1] 22/tcp ALLOW IN Anywhere
[ 2] 22 ALLOW IN Anywhere
[ 3] 80/tcp ALLOW IN Anywhere
[ 4] 53/tcp ALLOW IN Anywhere
[ 5] 22/tcp (v6) ALLOW IN Anywhere (v6)
[ 6] 22 (v6) ALLOW IN Anywhere (v6)
[ 7] 80/tcp (v6) ALLOW IN Anywhere (v6)
[ 8] 53/tcp (v6) ALLOW IN Anywhere (v6)
Nehmen wir an, wir wollen Regel Nummer 2 löschen. Das machen wir mit folgendem Befehl:
ufw delete 2
Hinweis:
Nach dem Löschen der zweiten Regel in der Firewall ist Regel 3 nun die neue Regel 2. Wenn Sie also die aktuelle Regel 3 löschen möchten, löschen Sie mit Nummer 2.
ufw delete allow http
Regeln zurücksetzen
Wenn Sie mit den aktuellen Regeln unzufrieden sind und ganz von vorne anfangen möchten, können Sie dies tun, indem Sie rennen
ufw reset
Loggen und neu laden
Um die Protokollierung zu aktivieren, verwenden Sie den folgenden Befehl:
ufw logging on
Wenn Sie die Protokollierung aus irgendeinem Grund deaktivieren möchten (nicht empfohlen), können Sie diesen Befehl verwenden:
sudo ufw abmelden
Protokolle befinden sich standardmäßig in /var/log/ufw.log
Um sie in Echtzeit zu sehen, verwenden Sie tail -f wie folgt:
tail -f /var/log/ufw.log /pre>
You will see all actions of firewall in that file. If you need to reload firewall for some reason, because you changed some config files manually, use following command.
ufw reload
Wenn Sie Regeln sehen möchten, die kürzlich hinzugefügt wurden
ufw show added
UFW-Konfigurationsdateien
Für die meisten Szenarien können Sie Terminalbefehle verwenden, aber in einigen Fällen möchten Sie die Konfigurationsdateien direkt bearbeiten. Die ufw hat mehrere Konfigurationsdateien, nämlich:
/etc/ufw/before.rules
/etc/ufw/before6.rules
Diese beiden Dateien enthalten Regeln, die vor allen Regeln ausgewertet werden, die Sie mit ufw-Befehlen hinzugefügt haben. Wenn Sie also möchten, dass eine Regel zuerst angewendet wird, möchten Sie, dass sie dort ist. Die erste Datei ist für IPv4 und die zweite für v6
/etc/ufw/after.rules
/etc/ufw/after6.rules
Diese werden nach ufw-Befehlsregeln ausgewertet. Sie sind gut zu verwenden, wenn Sie eine Regel außer Kraft setzen und anwenden möchten, egal was passiert. Wieder zwei Dateien für zwei Versionen des IP-Protokolls, die derzeit verwendet werden.
/etc/default/ufw
Hier haben wir Kernelmodule, die ufw verwendet, sowie andere allgemeine Einstellungen. Sie können jede dieser Konfigurationsdateien nur als Root bearbeiten, und Sie können jeden beliebigen Texteditor verwenden.
Vermeiden Sie es, doppelte Regeln hinzuzufügen
Als nächstes beobachten wir den Mechanismus gegen doppelte Regeln. Wir werden zuerst Port 101 öffnen
sudo ufw allow 100
Beachten Sie, dass der Befehl ohne Protokoll wie oben sowohl den UDP- als auch den TCP-Port öffnet. Lassen Sie uns also denselben Befehl noch einmal ausführen, um zu sehen, was passiert
ufw allow 100
Ausgabe
Skipping adding existing rule
Skipping adding existing rule (v6)
Es erlaubt uns nicht, eine doppelte Regel hinzuzufügen. Das ist gut, aber es besteht immer noch die Möglichkeit, dass wir mit dieser Befehlsfolge eine doppelte Regel hinzufügen können:
ufw allow 101/udp
ufw allow 101/tcp
Nachdem wir sowohl TCP als auch UDP auf Port 101 zugelassen haben, können wir weiterhin offenen Port 101 für alle Protokolle hinzufügen, und dies ist eine doppelte Regel, da Port 101 zweimal geöffnet wird, einmal für jedes Protokoll und einmal für alle.
ufw allow 101
Dies lässt Raum für Fehler und ist im Allgemeinen keine gute Praxis. Wir müssen alle drei Befehle mit dem Befehl ufw delete rückgängig machen, wenn wir zum Standard für Port 101 zurückkehren möchten.
Um einige Ports zu schließen, führen Sie die gleichen Befehle aus, geben Sie stattdessen deny ein, geben Sie deny ein.
In diesem Artikel haben wir die Verwendung von UFW behandelt, einer unkomplizierten Firewall, die zum Zulassen oder Einschränken des Datenverkehrs verwendet wird. Es ist eine sehr leistungsfähige Firewall zur Regulierung des Datenverkehrs zu Ihrem System. Probieren Sie die Befehle gerne auf Ihrem System aus.