Cara Memblokir Permintaan Ping ICMP ke Sistem Linux


Beberapa administrator sistem sering memblokir pesan ICMP ke server mereka untuk menyembunyikan kotak Linux dari dunia luar pada jaringan yang kasar atau untuk mencegah semacam banjir IP dan serangan penolakan layanan.

Metode paling sederhana untuk memblokir perintah ping pada sistem Linux adalah dengan menambahkan aturan iptables, seperti yang ditunjukkan pada contoh di bawah. Iptables adalah bagian dari netfilter kernel Linux dan, biasanya, diinstal secara default di sebagian besar lingkungan Linux.

iptables -A INPUT --proto icmp -j DROP
iptables -L -n -v  [List Iptables Rules]

Metode umum lainnya untuk memblokir pesan ICMP di sistem Linux Anda adalah dengan menambahkan variabel kernel di bawah ini yang akan menghapus semua paket ping.

echo “1” > /proc/sys/net/ipv4/icmp_echo_ignore_all

Untuk menjadikan aturan di atas permanen, tambahkan baris berikut ke file /etc/sysctl.conf dan, selanjutnya, terapkan aturan tersebut dengan perintah sysctl.

echo “net.ipv4.icmp_echo_ignore_all = 1” >> /etc/sysctl.conf 
sysctl -p

Pada distribusi Linux berbasis Debian yang dilengkapi dengan firewall aplikasi UFW, Anda dapat memblokir pesan ICMP dengan menambahkan aturan berikut ke file /etc/ufw/before.rules, seperti yang diilustrasikan dalam kutipan di bawah ini.

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

Mulai ulang firewall UFW untuk menerapkan aturan tersebut, dengan mengeluarkan perintah di bawah ini.

ufw disable && ufw enable

Pada distribusi CentOS atau Red Hat Enterprise Linux yang menggunakan antarmuka Firewalld untuk mengelola aturan iptables, tambahkan aturan di bawah ini ke menjatuhkan pesan ping.

firewall-cmd --zone=public --remove-icmp-block={echo-request,echo-reply,timestamp-reply,timestamp-request} --permanent	
firewall-cmd --reload

Untuk menguji apakah aturan firewall telah berhasil diterapkan dalam semua kasus yang dibahas di atas, cobalah melakukan ping ke alamat IP mesin Linux Anda dari sistem jarak jauh. Jika pesan ICMP diblokir di kotak Linux Anda, Anda akan mendapatkan pesan “Waktu permintaan habis” atau “Host Tujuan tidak dapat dijangkau” di mesin jarak jauh.