Ich verwende einen Ubuntu-Server. Jetzt versuche ich, die Firewall mit den folgenden Befehlen zu aktivieren:
ufw default deny incoming
ufw default allow outgoing
ufw allow ssh
ufw allow www
ufw allow https
ufw enable
Ich habe auch versucht, die ufw default deny incoming
letzte zu machen, aber immer noch kein Glück, wenn ich die Firewall aktiviere, blockiert sie alles, wenn ich die Standardeinstellung auf Verweigern setze, aber wenn ich sie auf Zulassen setze, funktioniert es gut, da die Regeln ignoriert werden. Was könnte das verursachen?
BEARBEITEN
Dies ist meine Ausgabe von iptables -L -v -n
Ich habe auch versucht, die vorgeschlagene Lösung, aber immer noch kein Glück, es funktioniert nur gut, wenn ich es machedefault allow incoming
Chain INPUT (policy DROP 30 packets, 1764 bytes)
pkts bytes target prot opt in out source destination
Chain FORWARD (policy DROP 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 2 packets, 104 bytes)
pkts bytes target prot opt in out source destination
Chain ufw-after-forward (0 references)
pkts bytes target prot opt in out source destination
Chain ufw-after-input (0 references)
pkts bytes target prot opt in out source destination
0 0 ufw-skip-to-policy-input udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:137
0 0 ufw-skip-to-policy-input udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:138
0 0 ufw-skip-to-policy-input tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:139
0 0 ufw-skip-to-policy-input tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:445
0 0 ufw-skip-to-policy-input udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:67
0 0 ufw-skip-to-policy-input udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:68
0 0 ufw-skip-to-policy-input all -- * * 0.0.0.0/0 0.0.0.0/0 ADDRTYPE match dst-type BROADCAST
Chain ufw-after-logging-forward (0 references)
pkts bytes target prot opt in out source destination
0 0 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 limit: avg 3/min burst 10 LOG flags 0 level 4 prefix "[UFW BLOCK] "
Chain ufw-after-logging-input (0 references)
pkts bytes target prot opt in out source destination
0 0 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 limit: avg 3/min burst 10 LOG flags 0 level 4 prefix "[UFW BLOCK] "
Chain ufw-after-logging-output (0 references)
pkts bytes target prot opt in out source destination
Chain ufw-after-output (0 references)
pkts bytes target prot opt in out source destination
Chain ufw-before-forward (0 references)
pkts bytes target prot opt in out source destination
0 0 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 ctstate RELATED,ESTABLISHED
0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 3
0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 4
0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 11
0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 12
0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 8
0 0 ufw-user-forward all -- * * 0.0.0.0/0 0.0.0.0/0
Chain ufw-before-input (0 references)
pkts bytes target prot opt in out source destination
0 0 ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 ctstate RELATED,ESTABLISHED
0 0 ufw-logging-deny all -- * * 0.0.0.0/0 0.0.0.0/0 ctstate INVALID
0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 ctstate INVALID
0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 3
0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 4
0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 11
0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 12
0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 icmptype 8
0 0 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp spt:67 dpt:68
0 0 ufw-not-local all -- * * 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT udp -- * * 0.0.0.0/0 224.0.0.251 udp dpt:5353
0 0 ACCEPT udp -- * * 0.0.0.0/0 239.255.255.250 udp dpt:1900
0 0 ufw-user-input all -- * * 0.0.0.0/0 0.0.0.0/0
Chain ufw-before-logging-forward (0 references)
pkts bytes target prot opt in out source destination
Chain ufw-before-logging-input (0 references)
pkts bytes target prot opt in out source destination
Chain ufw-before-logging-output (0 references)
pkts bytes target prot opt in out source destination
Chain ufw-before-output (0 references)
pkts bytes target prot opt in out source destination
0 0 ACCEPT all -- * lo 0.0.0.0/0 0.0.0.0/0
0 0 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 ctstate RELATED,ESTABLISHED
0 0 ufw-user-output all -- * * 0.0.0.0/0 0.0.0.0/0
Chain ufw-logging-allow (0 references)
pkts bytes target prot opt in out source destination
0 0 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 limit: avg 3/min burst 10 LOG flags 0 level 4 prefix "[UFW ALLOW] "
Chain ufw-logging-deny (2 references)
pkts bytes target prot opt in out source destination
0 0 RETURN all -- * * 0.0.0.0/0 0.0.0.0/0 ctstate INVALID limit: avg 3/min burst 10
0 0 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 limit: avg 3/min burst 10 LOG flags 0 level 4 prefix "[UFW BLOCK] "
Chain ufw-not-local (1 references)
pkts bytes target prot opt in out source destination
0 0 RETURN all -- * * 0.0.0.0/0 0.0.0.0/0 ADDRTYPE match dst-type LOCAL
0 0 RETURN all -- * * 0.0.0.0/0 0.0.0.0/0 ADDRTYPE match dst-type MULTICAST
0 0 RETURN all -- * * 0.0.0.0/0 0.0.0.0/0 ADDRTYPE match dst-type BROADCAST
0 0 ufw-logging-deny all -- * * 0.0.0.0/0 0.0.0.0/0 limit: avg 3/min burst 10
0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0
Chain ufw-reject-forward (0 references)
pkts bytes target prot opt in out source destination
Chain ufw-reject-input (0 references)
pkts bytes target prot opt in out source destination
Chain ufw-reject-output (0 references)
pkts bytes target prot opt in out source destination
Chain ufw-skip-to-policy-forward (0 references)
pkts bytes target prot opt in out source destination
0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0
Chain ufw-skip-to-policy-input (7 references)
pkts bytes target prot opt in out source destination
0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0
Chain ufw-skip-to-policy-output (0 references)
pkts bytes target prot opt in out source destination
0 0 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0
Chain ufw-track-forward (0 references)
pkts bytes target prot opt in out source destination
Chain ufw-track-input (0 references)
pkts bytes target prot opt in out source destination
Chain ufw-track-output (0 references)
pkts bytes target prot opt in out source destination
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 ctstate NEW
0 0 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 ctstate NEW
Chain ufw-user-forward (1 references)
pkts bytes target prot opt in out source destination
Chain ufw-user-input (1 references)
pkts bytes target prot opt in out source destination
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22
0 0 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:22
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:443
0 0 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:443
Chain ufw-user-limit (0 references)
pkts bytes target prot opt in out source destination
0 0 LOG all -- * * 0.0.0.0/0 0.0.0.0/0 limit: avg 3/min burst 5 LOG flags 0 level 4 prefix "[UFW LIMIT BLOCK] "
0 0 REJECT all -- * * 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable
Chain ufw-user-limit-accept (0 references)
pkts bytes target prot opt in out source destination
0 0 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0
Chain ufw-user-logging-forward (0 references)
pkts bytes target prot opt in out source destination
Chain ufw-user-logging-input (0 references)
pkts bytes target prot opt in out source destination
Chain ufw-user-logging-output (0 references)
pkts bytes target prot opt in out source destination
Chain ufw-user-output (1 references)
pkts bytes target prot opt in out source destination
ufw enable
dann die Ausgabe vonsudo iptables -L -v -n
in Ihre Frage ein. Ich bin neugierig, was die zugrunde liegendennetfilter
/iptables
Sachen tatsächlich mit den UFW-Regeln machen. :)iptables
Daten sehen, wenn Sie mit Ausnahme der ersten beiden Zeilen immer noch dieses Problem haben.Antworten:
Öffnen Sie ein Terminal und geben Sie die folgenden Befehle ein:
Beginnen Sie mit einem Reset, bei dem alle vorhandenen Regeln entfernt werden:
Nächster,
Daraufhin werden die verfügbaren Anwendungsprofile wie OpenSSH und andere aufgelistet. Geben Sie den folgenden Befehl wie in diesem Beispiel ein, um Informationen zu einer App abzurufen:
Hier ist die Ausgabe:
Um den OpenSSH-Zugriff zuzulassen, können Sie die folgende Regel verwenden:
Im Gegensatz zu Debian sind www und https normalerweise nicht als App-Profile enthalten. Wir wissen jedoch, dass diese auf den Ports 80 und 443 ausgeführt werden. Verwenden Sie daher die folgenden Befehle:
Wenn Sie UDP hinzufügen möchten, tun Sie dies ebenfalls.
Deaktivieren und aktivieren Sie ufw, um die Änderungen anzuwenden:
So zeigen Sie Ihre Regeln:
Schließlich ist einer der weniger freundlichen Aspekte von ufw, wie die Ablehnungsregeln normalerweise Regeln zulassen. Beispielsweise können Sie nicht festlegen, dass alle Ports verweigert und anschließend zugelassen werden. Alle Ports werden weiterhin gesperrt. Weitere Informationen finden Sie hier .
Sie können diese Regeln hinzufügen, um alle Ports außer 22, 53, 80 und 443 global zu blockieren. Ich habe Port 53 hinzugefügt, um DNS-Anforderungen zuzulassen. Wenn Sie keine DNS-Abfragen durchführen müssen, ändern Sie einfach die Regeln entsprechend.
Um diese Sperrregeln nur für eingehende Nachrichten festzulegen, verwenden Sie
sudo ufw deny in 1:22/tcp
beispielsweise. Alternativ können Sie für ausgehendsudo ufw deny out 1:22/tcp
usw. festlegen .quelle
ufw default block incoming
nachdem ich diese Regeln festgelegt habe?sudo ufw status verbose
. Wenn ich mich nicht irre, werden Ihre zulässigen Ports nicht zugelassen, wenn Sie diese Regel explizit festlegen. Wenn Sie alle Ports außer diesen blockieren möchten, empfehle ich Ihnen wirklich, diesen Thread zu überprüfen, da dies genau das ist, was sie tun. Es ist sehr gründlich, blockiert alle außer diesen und Sie haben die offenen Ports, die Sie wollen. ubuntuforums.org/showthread.php?t=1893751out
wenn ich sage,deny
ohne zu sagen, dass es für aus ist, funktioniert es immer noch nicht. was könnte die ursache dafür sein?Zu Ihrer Information: Falls andere dieses Problem haben.
In der detaillierten Ausgabe von iptables habe ich festgestellt, dass die ufw-Regeln in den Ketten INPUT, OUTPUT und FORWARD fehlen. Mein System endete so, als ich iptables -F ausführte, um meine benutzerdefinierten FW-Regeln zu entfernen, nachdem ich ufw irgendwann aktiviert hatte. Es scheint, dass ufw die Regeln der obersten Ebene nicht wieder hinzufügt, wenn einige seiner eigenen Ketten bereits in iptables vorhanden sind.
Am Ende habe ich ufw deinstalliert, neu gestartet, 'iptables -F' ausgeführt (um frühere iptables-Regeln zu entfernen, die noch aktiv waren) und dann ufw neu installiert und konfiguriert. Die ufw-Regeln der obersten Ebene sind jetzt zurück. Die Deinstallation / Neuinstallation war möglicherweise nicht erforderlich. Das Entfernen aller ufw-Regeln von iptables durch Deaktivieren von ufw und Neustarten hat möglicherweise den Trick getan.
So sollten die Ketten der obersten Ebene aussehen (unter Debian 9.4).
quelle
iptables -X
, um alle nicht eingebauten Ketten zu löschen und dann neu zu starten, hatufw
auch bei mir funktioniert.Ich habe das gleiche Problem, eine Art geschraubt Config mit
ufw
undfail2ban
fu ** die iptables Kette ed up. Alles wurde blockiert, sobald ich anfing - auch ohne Regeln in derufw
Kette.ufw
Zurücksetzen hat nicht geholfen. Ich habe es komplett neu installiert, das hat geklappt.quelle
Für mich wurde dieses Problem durch Setzen der Regel von gelöst
Das ist das einzige, was funktioniert hat, Port 53 nicht erlaubt, DNS erlaubt, etc.
quelle