Wie kann ich die ufw-Firewall aktivieren, um die ICMP-Antwort zuzulassen?


21

Ich habe eine Reihe von Ubuntu 10.04-Servern und jeder hat eine UFW-Firewall aktiviert. Ich habe Port 22 (für SSH) und 80 (wenn es ein Webserver ist) zugelassen. Meine Frage ist, dass ich versuche, ICMP-Echo-Antwort (Ping-Antwort) zu aktivieren.

ICMP funktioniert anders als andere Protokolle - ich weiß, dass es in technischer Hinsicht unterhalb der IP-Ebene liegt. Sie können nur tippen sudo ufw allow 22, aber nicht tippensudo ufw allow icmp

Antworten:


17

ufw erlaubt keine Angabe von icmp-Regeln über den Befehl der Befehlszeilenschnittstelle. Es ermöglicht Ihnen, Ihren Regelsatz über seine Regeldateien anzupassen, die iptables-restore-Stildateien sind.

ufw lässt standardmäßig bestimmten ICMP-Verkehr zu, einschließlich der ICMP-Echo-Antwort. Dies ist in den /etc/ufw/before.rulesfolgenden Fällen bereits standardmäßig konfiguriert :

-A ufw-before-input -p icmp --icmp-type echo-request -j ACCEPT

Wenn Ihr Host nicht auf Ping antwortet, überprüfen Sie in dieser Datei, ob die obige Zeile vorhanden ist. Wenn dies nicht funktioniert, überprüfen Sie den Ping-Host und alle Firewalls dazwischen.


3
funktioniert nicht bei mir: 11.04 server.how kann ich dieses Problem beheben?
Pylover

Benötigt es einen Reset oder so?
Amir Karimi

1
@AmirKarimi sudo ufw reload(und Ping - Anfragen zu ermöglichen , musste ich hinzufügen -A ufw-before-output -p icmp --icmp-type echo-request -j ACCEPTin /etc/ufw/before.rules)
baptx

2

Für Ubuntu 18.04 sollten Sie die folgenden Regeln in Ihrer Datei /etc/ufw/before.rules haben :

# ok icmp codes for INPUT
-A ufw-before-input -p icmp --icmp-type destination-unreachable -j ACCEPT
-A ufw-before-input -p icmp --icmp-type source-quench           -j ACCEPT
-A ufw-before-input -p icmp --icmp-type time-exceeded           -j ACCEPT
-A ufw-before-input -p icmp --icmp-type parameter-problem       -j ACCEPT
-A ufw-before-input -p icmp --icmp-type echo-request            -j ACCEPT

# ok icmp code for FORWARD
-A ufw-before-forward -p icmp --icmp-type destination-unreachable -j ACCEPT
-A ufw-before-forward -p icmp --icmp-type source-quench           -j ACCEPT
-A ufw-before-forward -p icmp --icmp-type time-exceeded           -j ACCEPT
-A ufw-before-forward -p icmp --icmp-type parameter-problem       -j ACCEPT
-A ufw-before-forward -p icmp --icmp-type echo-request            -j ACCEPT

Diese befanden sich in meiner Standarddatei.

Stellen Sie sicher, dass dies wirklich das Problem ist. Mein Problem war, dass mein Computer Pings daran hinderte, in das Netzwerk zu gelangen, in dem sich der Server befand, den ich anpingen wollte. Am Ende habe ich eine Website verwendet, die bereits im Internet verfügbar war, um den Ping für mich durchzuführen (z . B. https://ping.eu/ping/ ).



0

Fügen Sie der Datei /etc/ufw/before.rules Folgendes hinzu:

# allow outbound icmp
-A ufw-before-output -p icmp -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
-A ufw-before-output -p icmp -m state --state ESTABLISHED,RELATED -j ACCEPT

Führen Sie nach dem Bearbeiten der Datei den folgenden Befehl aus:

sudo ufw reload
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.