방화벽-사용자 지정 영역에서 ICMP 허용 (centos 7 / redhat 7)


4

소스에서 정의한 영역에서 ICMP 에코 응답을 활성화하고 싶습니다.

mysql 및 echo-reply와 같은 일부 서비스를 허용하려는 영역 모니터링이 있습니다. mysql과 같은 서비스를 허용하는 것은 간단하지만 직접 규칙을 사용하지 않고 에코 응답을 활성화하는 방법을 알 수 없습니다. 가능합니까?

기본 인터페이스는 BLOCK 영역을 사용하므로 패킷이 영역 모니터링에 해당하지 않으면 icmp-host가 금지 된 패킷이 거부됩니다.

감사

답변:


7

같은 문제를 가진 사람들을 돕기 위해 다음 명령을 사용합니다.

firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 0 -p icmp -s X.X.X.X -j ACCEPT

소스가 XXXX 인 경우 ICMP 프로토콜을 허용하는 규칙을 추가합니다.


2

모든 ICMP 프로토콜 을 활성화 하지 않을 수도 있으며 반드시 그렇게 할 필요는 없습니다.

--icmp-type 8ICMP 에코 응답 만 활성화하려면 추가하십시오 .

전체 명령은 다음과 같습니다.

firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 0 -p icmp -m icmp --icmp-type 8 -s X.X.X.X -j ACCEPT

1

MONITORING 구역에서 ICMP 에코 응답을 허용하여이를 수행 할 수 있습니다.

firewall-cmd --zone MONITORING --add-icmp-block echo-reply
firewall-cmd --zone MONITORING --add-icmp-block-inversion

인터페이스 기반 영역 이전의 소스를 기반으로 패킷이 영역과 일치하므로 기본 인터페이스가 ICMP 패킷을 거부하는 영역을 사용하더라도 작동합니다. INPUT iptables 체인을 보면 알 수 있습니다.

# iptables -nL INPUT
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0            ctstate RELATED,ESTABLISHED
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           
INPUT_direct  all  --  0.0.0.0/0            0.0.0.0/0           
INPUT_ZONES_SOURCE  all  --  0.0.0.0/0            0.0.0.0/0           
INPUT_ZONES  all  --  0.0.0.0/0            0.0.0.0/0           
DROP       all  --  0.0.0.0/0            0.0.0.0/0            ctstate INVALID
REJECT     all  --  0.0.0.0/0            0.0.0.0/0            reject-with icmp-host-prohibited

이것은 나를 위해 작동하지 않습니다
— isapir

에코 응답 ICMP 패킷은 항상 에코 요청 ICMP 패킷에 대한 응답입니다. 방금 echo-reply 패킷이 iptables 백엔드에 의해 ESTABLISHED로 간주되어 항상 방화벽에 의해 허용된다는 것을 알았습니다. 귀하의 문제는 에코 응답 패킷 대신 에코 요청 패킷을 허용하려는 것입니다. 맞으면 답변을 업데이트하겠습니다.
— 해롤드
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.