ວິທີການຂັດຂວາງການຮຽກຮ້ອງຂອງ Ping ICMP ໃນລະບົບ Linux


ຜູ້ເບິ່ງແຍງລະບົບບາງຄົນມັກຈະປິດກັ້ນຂໍ້ຄວາມ ICMP ໃນເຊີບເວີຂອງພວກເຂົາເພື່ອປົກປິດກ່ອງ Linux ໃຫ້ກັບໂລກພາຍນອກໃນເຄືອຂ່າຍທີ່ຫຍາບຄາຍຫລືປ້ອງກັນໄພນໍ້າຖ້ວມ IP ບາງປະເພດແລະການປະຕິເສດການໂຈມຕີບໍລິການ.

ວິທີງ່າຍໆທີ່ສຸດໃນການບລັອກ ຄຳ ສັ່ງ ping ໃນລະບົບ Linux ແມ່ນໂດຍການເພີ່ມກົດ iptables, ດັ່ງທີ່ສະແດງຢູ່ໃນຕົວຢ່າງຂ້າງລຸ່ມນີ້. Iptables ແມ່ນສ່ວນ ໜຶ່ງ ຂອງ Linux kernel netfilter ແລະໂດຍປົກກະຕິແລ້ວ, ມັນຖືກຕິດຕັ້ງໂດຍຄ່າເລີ່ມຕົ້ນໃນສະພາບແວດລ້ອມ Linux ສ່ວນໃຫຍ່.

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

ວິທີການທົ່ວໄປອີກຢ່າງ ໜຶ່ງ ຂອງການສະກັດກັ້ນຂໍ້ຄວາມ ICMP ໃນລະບົບ Linux ຂອງທ່ານແມ່ນການເພີ່ມຕົວແປ kernel ທີ່ຢູ່ດ້ານລຸ່ມເຊິ່ງຈະລຸດລົງທຸກຊຸດຂອງ ping.

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

ເພື່ອເຮັດໃຫ້ກົດລະບຽບຂ້າງເທິງນີ້ມີຖາວອນ, ຕື່ມໃສ່ແຖວຕໍ່ໄປນີ້ໃສ່ແຟ້ມ /etc/sysctl.conf ແລະຕໍ່ມາປະຕິບັດກົດລະບຽບດັ່ງກ່າວດ້ວຍ ຄຳ ສັ່ງ sysctl.

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

ໃນການແຈກແຈງ Linux ທີ່ອີງໃສ່ Debian ທີ່ຂົນສົ່ງດ້ວຍ UFW firewall application, ທ່ານສາມາດບລັອກຂໍ້ຄວາມ ICMP ໂດຍການເພີ່ມກົດລະບຽບຕໍ່ໄປນີ້ໃນເອກະສານ /etc/ufw/before.rules, ດັ່ງທີ່ສະແດງຢູ່ໃນຂໍ້ຄວາມຂ້າງລຸ່ມນີ້.

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

ເລີ່ມຕົ້ນລະບົບໄຟວາວ UFW ເພື່ອ ນຳ ໃຊ້ກົດລະບຽບ, ໂດຍອອກ ຄຳ ສັ່ງຂ້າງລຸ່ມນີ້.

# ufw disable && ufw enable

ໃນການແຈກຢາຍ CentOS ຫຼື Red Hat Enterprise Linux ທີ່ໃຊ້ການໂຕ້ຕອບ Firewalld ເພື່ອຈັດການກົດລະບຽບ iptables, ເພີ່ມກົດລະບຽບຂ້າງລຸ່ມນີ້ເພື່ອລຸດຂໍ້ຄວາມ ping.

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

ເພື່ອທົດສອບວ່າກົດລະບຽບຂອງໄຟວໍໄດ້ຖືກ ນຳ ໃຊ້ຢ່າງປະສົບຜົນ ສຳ ເລັດໃນທຸກໆກໍລະນີທີ່ກ່າວມາຂ້າງເທິງ, ພະຍາຍາມ ping ທີ່ຢູ່ IP ຂອງເຄື່ອງ Linux ຂອງທ່ານຈາກລະບົບຫ່າງໄກສອກຫຼີກ. ໃນກໍລະນີຂໍ້ຄວາມ ICMP ຖືກບລັອກໃສ່ຊ່ອງ Linux ຂອງທ່ານ, ທ່ານຄວນໄດ້ຮັບຂໍ້ຄວາມ“ Request timed out” ຫຼື“ Destination Host ທີ່ບໍ່ສາມາດເຂົ້າເຖິງໄດ້” ໃນເຄື່ອງຫ່າງໄກສອກຫຼີກ.