본문 바로가기

OS/Linux

Linux - 서버에 ping 요청 차단하기 / icmp 차단

728x90

Ping 이란?

Ping은 네트워크 장치 간의 연결 상태와 통신 속도를 확인하는 도구입니다. ICMP를 이용하여 특정 호스트에 "에코 요청" 메시지를 보내고, 그 호스트로부터 "에코 응답"을 받습니다. 이 과정을 통해 데이터 패킷이 목적지까지 도달하는 데 걸리는 왕복 시간(RTT, Round-Trip Time)을 측정하며, 네트워크 연결의 존재 여부와 품질을 판단할 수 있습니다.

 

리눅스 서버에서 Ping을 차단하는 방법은 여러 가지가 있습니다.
서버에서 ICMP(Internet Control Message Protocol) 요청을 차단하여 Ping을 막을 수 있습니다.

1. iptables을 사용한 방법 (CentOS/RHEL 6 이하)

  • 모든 외부 ICMP 트래픽 차단
# iptables -A INPUT -p icmp -j DROP

 

2. firewalld를 사용한 방법 (CentOS/RHEL 7 이상)

  • 모든 외부 ICMP 트래픽 차단
# firewall-cmd --permanent --add-rich-rule='rule protocol value="icmp" drop'
# firewall-cmd --reload

 

3. sysctl을 사용한 방법 

  • sysctl을 사용하여 ICMP echo 응답 비활성화 - 임시적용
# sysctl -w net.ipv4.icmp_echo_ignore_all=1

 

  • /etc/sysctl.conf 파일을 이용한 ICMP echo 응답 비활성화 - 영구적용
/etc/sysctl.conf 에 하기 내용 추가
net.ipv4.icmp_echo_ignore_all=1

# sysctl -p  // 변경 사항 즉시 적용
or
# reboot     // 재부팅하면 os가 변경사항 읽어감

 

  • sysctl 파라미터 적용 확인
# sysctl -a | grep net.ipv4.icmp_echo_ignore_all

 

4. /proc/sys 파일 시스템을 사용한 방법 

  • /proc/sys 파일 직접 접근으로 ICMP echo 응답 비활성화 - 임시적용
# echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all

 

728x90
반응형