Làm cách nào để bật tường lửa ufw để cho phép phản hồi icmp?


21

Tôi có một loạt các máy chủ Ubuntu 10.04 và mỗi máy chủ đều bật tường lửa ufw. Tôi đã cho phép cổng 22 (cho SSH) và 80 (nếu đó là máy chủ web). Câu hỏi của tôi là tôi đang cố gắng kích hoạt phản hồi tiếng vang icmp (ping reply).

ICMP hoạt động khác với các giao thức khác - Tôi biết nó ở dưới mức IP theo nghĩa kỹ thuật. Bạn chỉ có thể gõ sudo ufw allow 22, nhưng bạn không thể gõsudo ufw allow icmp

Câu trả lời:


17

ufw không cho phép chỉ định quy tắc icmp thông qua lệnh giao diện dòng lệnh. Nó cho phép bạn điều chỉnh bộ quy tắc của mình thông qua các tệp quy tắc của nó, đó là các tệp kiểu iptables-restore.

ufw cho phép lưu lượng truy cập icmp nhất định theo mặc định bao gồm trả lời echo icmp và điều này đã được cấu hình theo mặc định trong /etc/ufw/before.rules:

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

Nếu máy chủ của bạn không phản hồi ping, hãy xem trong tệp này để đảm bảo dòng trên có mặt và nếu nó không hoạt động, hãy nhìn vào máy chủ ping và bất kỳ tường lửa nào giữa chúng.


3
không hoạt động với tôi: máy chủ 11.04. Làm thế nào tôi có thể khắc phục sự cố này?
pylover

Có cần bất kỳ thiết lập lại hoặc một cái gì đó như thế?
Amir Karimi

1
@AmirKarimi sudo ufw reload(và để cho phép các yêu cầu ping tôi phải thêm -A ufw-before-output -p icmp --icmp-type echo-request -j ACCEPTvào /etc/ufw/before.rules)
baptx

2

Đối với Ubuntu 18.04, bạn nên có các quy tắc sau trong tệp / etc/ufw/b Before.rules của mình :

# 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

Đây là trong tập tin mặc định của tôi.

Tất nhiên, hãy chắc chắn rằng đây thực sự là vấn đề. Vấn đề của tôi là máy tính của tôi đã chặn ping ra khỏi mạng nơi máy chủ mà tôi đang cố gắng ping tồn tại. Cuối cùng tôi đã sử dụng một trang web đã có sẵn trên internet để thực hiện ping cho tôi (ví dụ: https://ping.eu/ping/ ).



0

Thêm phần sau vào tệp /etc/ufw/b 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

Sau khi chỉnh sửa tệp, chạy lệnh:

sudo ufw reload
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.