Як увімкнути ufw брандмауер, щоб дозволити відповідь icmp?


21

У мене є серія серверів Ubuntu 10.04 і на кожному з них увімкнено брандмауер ufw. Я дозволив порт 22 (для SSH) і 80 (якщо це веб-сервер). Моє запитання полягає в тому, що я намагаюся ввімкнути ехо-відповідь icmp (відповідь ping).

ICMP функціонує інакше, ніж інші протоколи - я знаю, що це рівень нижче IP в технічному сенсі. Ви можете просто вводити sudo ufw allow 22, але ви не можете набирати текстsudo ufw allow icmp

Відповіді:


17

ufw не дозволяє вказувати правила icmp через команду інтерфейсу командного рядка. Це дозволяє вам налаштувати набір правил за допомогою його правил, які є iptables-відновлення файлів стилю.

ufw дозволяє певний icmp-трафік за замовчуванням, включаючи icmp echo reply, і це вже налаштовано за замовчуванням у /etc/ufw/before.rules:

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

Якщо ваш хост не відповідає на ping, перегляньте цей файл, щоб переконатися, що вищезазначений рядок присутній, а якщо це не працює, подивіться на хост pinging та будь-які між ними брандмауери.


3
не працює для мене: сервер 11.04. як я можу вирішити цю проблему?
піловер

Чи потрібно її скидання чи щось подібне?
Амір Карімі

1
@AmirKarimi sudo ufw reload(і дозволити запити дзвону , я повинен був додати -A ufw-before-output -p icmp --icmp-type echo-request -j ACCEPTв /etc/ufw/before.rules)
baptx

2

Для Ubuntu 18.04 у файлі /etc/ufw/before.rules слід мати такі правила :

# 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

Вони були у моєму файлі за замовчуванням.

Звичайно, будьте впевнені, що це справді проблема. Моя проблема полягала в тому, що мій комп'ютер блокував пінг-сайти виходити в мережу, де існував сервер, на якому я намагався пінг. Я в кінцевому підсумку використовував веб-сайт, який вже був в Інтернеті, щоб зробити пінг для мене (наприклад, https://ping.eu/ping/ ).



0

Додайте у файл /etc/ufw/before.rules наступне:

# 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

Після редагування файлу запустіть команду:

sudo ufw reload
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.