در این راهنما قصد داریم یاد بگیریم چگونه پاسخ سرور لینوکسی به دستور ping را غیرفعال کنیم تا از شناسایی و اسکنهای ناخواسته جلوگیری شود و امنیت سرور افزایش یابد.
مرحله اول: ورود از طریق SSH
بعد از ورود به سرور از طریق SSH، دستورات زیر را اجرا نمایید تا پاسخ به پینگ را غیرفعال کنید.
مرحله دوم: غیرفعالکردن موقت Ping با sysctl
اگر فقط میخواهید بهصورت موقت پاسخ پینگ سرور غیرفعال شود (تا زمانی که سرور ریستارت نشده است)، میتوانید از دستور زیر استفاده کنید:
sudo sysctl -w net.ipv4.icmp_echo_ignore_all=1
این دستور باعث میشود سیستمعامل لینوکس درخواستهای ICMP را نادیده بگیرد و هیچ پاسخی به دستور ping ارسال نکند. برای اطمینان از اینکه تنظیمات اعمال شدهاند، میتوانید وضعیت فعلی پارامتر را با دستور زیر بررسی کنید:
sudo sysctl net.ipv4.icmp_echo_ignore_all
اگر مقدار نمایشدادهشده برابر با 1 باشد، یعنی پاسخ به پینگ غیرفعال است. در صورت تمایل به بازگرداندن حالت عادی و فعالکردن پاسخ پینگ، مقدار را مجدداً به 0 تغییر دهید:
sudo sysctl -w net.ipv4.icmp_echo_ignore_all=0
مرحله سوم: غیرفعالکردن دائمی Ping در فایل sysctl.conf
روش قبلی موقتی است و پس از ریبوت شدن سیستم، تنظیمات به حالت قبل بازمیگردند. برای دائمیکردن این تغییر، باید مقدار مورد نظر را در فایل تنظیمات شبکه سیستم ثبت کنید.
فایل پیکربندی را با ویرایشگر nano باز کنید:
sudo nano /etc/sysctl.conf
در انتهای فایل بازشده، خط زیر را اضافه کنید:
net.ipv4.icmp_echo_ignore_all = 1
سپس با فشردن کلیدهای Ctrl + O فایل را ذخیره و با Ctrl + X خارج شوید.
در نهایت برای اعمال تغییرات بدون نیاز به ریستارت، دستور زیر را اجرا کنید:
sudo sysctl -p
با این روش، سرور شما حتی پس از راهاندازی مجدد نیز پاسخ به پینگ را نخواهد داد.
مرحله چهارم: غیرفعالکردن Ping با iptables
در صورتیکه بخواهید کنترل دقیقتری روی بستههای پینگ داشته باشید، میتوانید از ابزار iptables استفاده کنید. این روش برای تمام توزیعهای محبوب لینوکس از جمله Ubuntu، Debian، CentOS، AlmaLinux و Rocky Linux کاربرد دارد.
برای مسدود کردن درخواستهای پینگ ورودی، دستور زیر را وارد کنید:
sudo iptables -I INPUT -p icmp --icmp-type echo-request -j DROP
این قانون باعث میشود هر بسته ICMP از نوع echo-request (همان ping) نادیده گرفته شود و سرور هیچ پاسخی ارسال نکند.
برای اطمینان از اعمال شدن قانون، از دستور زیر استفاده کنید:
sudo iptables -L INPUT -v -n | grep icmp
در صورتیکه بخواهید این تغییر را لغو کنید و دوباره پاسخ پینگ فعال شود، کافیست قانون ایجادشده را حذف کنید:
sudo iptables -D INPUT -p icmp --icmp-type echo-request -j DROP
مرحله پنجم: تست و اطمینان از غیرفعال شدن Ping
برای اطمینان از اینکه پینگ واقعاً غیرفعال شده است، از یک سیستم دیگر دستور زیر را اجرا کنید:
ping IP-address
بهجای IP-address، آدرس IP سرور خود را وارد کنید. اگر پاسخی دریافت نکردید یا پیامی مانند Destination Host Unreachable یا Request timed out ظاهر شد، یعنی سرور شما دیگر به پینگ پاسخ نمیدهد و تنظیمات درست انجام شدهاند.
در پایان، با غیرفعالکردن Ping، امنیت سرور شما در برابر شناسایی توسط ابزارهای ساده افزایش پیدا میکند. با این حال، پیشنهاد میشود برای سرورهایی که نیاز به مانیتورینگ دارند، فقط در سطح فایروال یا شبکه محدودیت ایجاد شود تا ابزارهای نظارتی داخلی بتوانند وضعیت سرور را بررسی کنند.




