در مطلب قبلی گفته شد که باتهای روسی و چینی به خصوص در هفتههای گذشته سهم بسیار زیادی در شناسایی و فیلترینگ سریع دامنهها و آیپی سرورهای V2ray داشتهاند. یکی از روشهای ساده برای مسدود کردن اتصال ورودی ipهای چینی و روسی به سرور، استفاده از IPSET هست.
در قدم اول برای نصب IPSET بسته به نوع سیستم عامل خود باید از یکی از دستورهای زیر استفاده کنیم:
برای Debian
apt update && apt install ipset
برای Ubunto
sudo apt update && sudo apt install ipset
برای Centos
sudo yum install ipset
بعد از نصب IPSET روی سیستم عامل، حالا نوبت به کانفیگ کردن سرور برای مسدودسازی آیپی کشورهای مورد نظر میرسد. پس قبل از هر کار اول باید با دستور زیر یک مجموعه یا set از این کشورها ایجاد کنیم:
ipset create countries hash:net,port
در این مرحله اگر از دستور ipset list
استفاده کنیم، نتیجهای مشابه زیر برای ما نمایش داده میشود:
حالا با اسکریپت زیر آدرس آیپی کشورهایی را که میخواهیم مسدود شوند اضافه میکنیم. برای اینکار اول فایلی به نام ban-ip-countries.sh
در مسیر /root/ipset
ایجاد میکنیم و مجوز اجرا را به آن میدهیم. یعنی به ترتیب دستورهای زیر:
mkdir /root/ipset cd /root/ipset touch /root/ipset/ban-ip-countries.sh chmod +x /root/ipset/ban-ip-countries.sh
بعد با ویرایشگر نانو فایل بالا را باز میکنیم:
nano /root/ipset/ban-ip-countries.sh
و کد زیر را به آن اضافه میکنیم و نهایتا خروج (CTRL
+ X
)، ذخیره فایل (Y) و اینتر را میزنیم (برای نام کشورها باید از فرمت ISO استفاده کرد. در اینجا cn و ru به ترتیب معرف چین و روسیه هستند).
COUNTRIES=('cn' 'ru')
ipset flush countries
for i in "${COUNTRIES[@]}"; do
echo "Ban IP of country ${i}"
for IP in $(wget -O - https://www.ipdeny.com/ipblocks/data/countries/${i}.zone)
do
ipset add countries $IP,22
done
done
بعد از اصلاح فایل ban-ip-countries.sh، حالا نوبت به اجرای اسکریپت با دستور زیر میرسد:
bash ban-ip-countries.sh
الان که فهرست آیپیها را برای مسدودسازی در اختیار داریم، فقط میماند اینکه به iptable فایروال متصلشان کنیم. پس فایل /root/iptables.sh
را ایجاد میکنیم:
touch /root/iptables.sh
chmod +x /root/iptables.sh
اینبار هم با ویرایشگر نانو فایل iptables.sh را باز میکنیم:
nano /root/iptables.sh
و سپس کدهای زیر را در آن قرار میدهیم و ذخیره میکنیم:
# On vide les règles iptables précédentes iptables -F iptables -X iptables -I INPUT -m set --match-set countries src -j DROP iptables -I FORWARD -m set --match-set countries src -j DROP
قدم آخر:
اسکریپ بالا را با دستور زیر اجرا میکنیم و تمام.
bash /root/iptables.sh
الان دیگر دسترسی و اتصال ورودی از آیپیهای چینی و روسی به سرور ما مسدود شده.