ایمن‌سازی سرورهای لینوکس Ubuntu/Debian/Alma/CentOS با Iptables و فایروال UFW

18/04/2024 |
Loading...

مقدمه: در این آموزش، نحوه ایمن‌سازی سرور Ubuntu با استفاده از Iptables و فایروال ساده‌شده UFW را به‌صورت گام‌به‌گام بررسی می‌کنیم. Iptables یک ابزار قدرتمند برای مدیریت ترافیک شبکه است و UFW رابط کاربری ساده‌ای برای مدیریت قوانین فایروال در توزیع‌های مبتنی بر دبیان مانند Ubuntu ارائه می‌دهد.

بخش اول: راه‌اندازی Iptables

گام 1: باز کردن ترمینال
وارد ترمینال سرور Ubuntu خود از طریق SSH یا ابزار دلخواه شوید.

گام 2: بررسی قوانین فعلی Iptables
برای مشاهده قوانین فعلی فایروال، دستور زیر را اجرا کنید:

sudo iptables -L

این دستور تمامی قوانین فعال در فایروال Iptables را نمایش می‌دهد.

گام 3: پیکربندی قوانین پایه Iptables
ابتدا سیاست‌های پیش‌فرض را تعیین و قوانین ابتدایی را تنظیم کنید.

sudo iptables -P INPUT DROP
sudo iptables -A INPUT -i lo -j ACCEPT
sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT

این دستورات تمامی ترافیک ورودی را مسدود کرده و تنها دسترسی به پورت‌های SSH، HTTP و HTTPS و همچنین ارتباطات داخلی و مجاز را مجاز می‌سازد.

گام 4: مسدود کردن پورت‌های خاص
برای امنیت بیشتر و مقابله با حملات Brute-force و اسپم، پورت‌های ایمیل را مسدود کنید:

sudo iptables -A INPUT -p tcp --dport 25 -j DROP
sudo iptables -A INPUT -p tcp --dport 587 -j DROP
sudo iptables -A INPUT -p tcp --dport 465 -j DROP
sudo iptables -A OUTPUT -p tcp --dport 25 -j DROP
sudo iptables -A OUTPUT -p tcp --dport 587 -j DROP
sudo iptables -A OUTPUT -p tcp --dport 465 -j DROP

گام 5: نصب ابزار iptables-persistent
برای حفظ قوانین پس از ریستارت سرور، ابزار زیر را نصب کنید:

sudo apt-get install iptables-persistent

گام 6: ذخیره تنظیمات Iptables
برای ذخیره پیکربندی فعلی، دستور زیر را اجرا کنید:

sudo iptables-save > /etc/iptables.rules

بخش دوم: پیکربندی فایروال UFW

گام 1: فعال‌سازی UFW
برای مدیریت آسان‌تر قوانین فایروال، UFW را فعال کنید:

sudo ufw enable

گام 2: تنظیم قوانین UFW
قوانین امنیتی موردنیاز را در UFW تنظیم کنید:

sudo ufw deny 25/tcp
sudo ufw deny 465/tcp
sudo ufw deny 587/tcp
sudo ufw allow ssh
sudo ufw allow {add ports}/tcp
sudo ufw deny {add ports}/udp

این قوانین پورت‌های حساس را مسدود کرده و در عین حال اجازه دسترسی به پورت‌های ضروری مثل SSH را فراهم می‌کنند. در قسمت {add ports} باید پورت‌هایی که می‌خواهید مجاز باشند را وارد کنید، مثلاً:
sudo ufw allow 10,15,20,40/tcp

گام 3: مسدودسازی ترافیک خروجی به Subnetهای خاص
برای جلوگیری از ارتباط با شبکه‌های خصوصی مشکوک، دستور زیر را اجرا کنید:

sudo ufw deny out from any to 10.0.0.0/8
sudo ufw deny out from any to 172.16.0.0/12
sudo ufw deny out from any to 100.64.0.0/10

بخش سوم: فعال‌سازی و نظارت

فعال‌سازی Iptables و UFW هنگام بوت
برای اطمینان از اجرای خودکار قوانین پس از ریستارت، دستور زیر را برای Iptables اجرا کنید:

sudo systemctl enable iptables.service

UFW نیز به‌طور پیش‌فرض پس از نصب فعال می‌شود.

گام نهایی: نظارت و به‌روزرسانی
برای بررسی وضعیت فایروال و اعمال تغییرات جدید، دستورات زیر را به‌کار ببرید:

sudo systemctl status iptables.service
sudo ufw status verbose

با اجرای این مراحل، امنیت سرور لینوکس خود را در برابر دسترسی‌های غیرمجاز و تهدیدات شبکه‌ای به‌خوبی تقویت کرده‌اید. فراموش نکنید که قوانین را به‌طور منظم بازبینی و به‌روزرسانی کنید.

دریافت پیشنهادات و تخفیف‌های ویژه!

از جدیدترین تخفیف‌ها، آفرها و پیشنهادات ویژه باخبر شوید.

Update cookies preferences