اضافه کردن یک فایروال لینوکس
در اینجا یک آزمایشگاه عملی وجود دارد که میتوانید برای اضافه کردن یک فایروال میزبان در لینوکس با استفاده از UFW (آسانتر) یا iptables (جزئی) دنبال کنید. هر بار یک مسیر را طی کنید. اجرای همه دستورات روی یک ماشین مجازی آزمایشی ایمن است.
UFW (Uncomplicated Firewall)
UFW (فایروال ساده) دستورات پیچیده iptables را به نحوی آسان برای استفاده ساده میکند. این ابزار برای ایمنسازی سریع یک سیستم در عین باز نگه داشتن پورتهای ضروری ایدهآل است.
مرحله ۱: نصب و بررسی وضعیت
سینتکس
sudo apt update sudo apt install -y ufw sudo ufw status verbose
خروجی
مرحله ۲: قبل از فعال کردن فایروال، به SSH و ترافیک وب اجازه عبور دهید
سینتکس
sudo ufw allow 22/tcp comment 'SSH' sudo ufw allow 80/tcp comment 'HTTP' sudo ufw allow 443/tcp comment 'HTTPS'
خروجی
مرحله 3: فعال کردن UFW
سینتکس
sudo ufw enable
خروجی
Firewall is active and enabled on system startup
مرحله ۴: مثالهای مفید اضافه کنید
اجازه دادن به یک محدوده پورت (مثلا FTP غیرفعال ۴۰۰۰۰ تا ۵۰۰۰۰)
سینتکس
sudo ufw allow 40000:50000/tcp comment 'Passive-FTP'
خروجی
این دستور به فایروال UFW میگوید که ترافیک TCP را روی پورتهای ۴۰۰۰۰ تا ۵۰۰۰۰ که معمولا برای انتقال دادههای FTP غیرفعال استفاده میشوند، مجاز کند. این دستور یک کامنت توصیفی “Passive-FTP” اضافه میکند تا بتوانید بعدا به راحتی این قانون را شناسایی کنید. این پیام تأیید میکند که این قانون با موفقیت برای ترافیک IPv4 و IPv6 اعمال شده است.
مرحله ۵: فعال کردن ثبت وقایع
سینتکس
sudo ufw logging medium
خروجی
logging Enabled
مرحله ۶: تایید قوانین
سینتکس
sudo ufw status numbered sudo ufw show added
خروجی
مرحله ۷: بازگرداندن/تنظیم مجدد
سینتکس
sudo ufw disable or sudo ufw reset
خروجی
Firewall stopped and disabled on system startup
iptables
iptables یک ابزار خط فرمان در لینوکس است که برای پیکربندی فایروال داخلی هسته استفاده میشود. این ابزار با تعریف قوانینی که نحوه مدیریت ترافیک شبکه – چه مجاز، چه مسدود شده و چه اصلاح شده – را بر اساس معیارهایی مانند آدرس IP، پورت یا پروتکل کنترل میکنند، کار میکند.
مرحله ۱: تنظیم سیاستهای پیشفرض (ممنوعیت ورود و ارسال، مجاز بودن خروج)
سینتکس
sudo iptables -P INPUT DROP sudo iptables -P FORWARD DROP sudo iptables -P OUTPUT ACCEPT
خروجی
مرحله ۲: اجازه دادن به loopback و ترافیک برقرار شده
سینتکس
sudo iptables -A INPUT -i lo -j ACCEPT sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
خروجی
مرحله ۳: قبل از اینکه خودتان را قفل کنید، SSH را مجاز کنید
سینتکس
sudo iptables -A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW -j ACCEPT
خروجی
مرحله ۴: یک قانون ثبت و حذف دنباله اضافه کنید
سینتکس
sudo iptables -N LOGGING sudo iptables -A INPUT -j LOGGING sudo iptables -A LOGGING -m limit --limit 2/min -j LOG --log-prefix "iptables dropped: " --log-level 7 sudo iptables -A LOGGING -j DROP
خروجی
مرحله ۵: بررسی قوانین فعلی
سینتکس
sudo iptables -L -n -v --line-numbers
خروجی
مرحله ۶: آن را در طول راهاندازیهای مجدد پایدار کنید
سینتکس
sudo apt install -y iptables-persistent
خروجی
سینتکس
sudo netfilter-persistent save sudo systemctl enable netfilter-persistent
خروجی
مرحله 7: تست اتصال
سینتکس
curl -I http://127.0.0.1
خروجی
سینتکس
nc -vz 127.0.0.1 22
خروجی
مرحله ۸: بازگشت به عقب (Rollback)
سینتکس
sudo iptables -F sudo iptables -X sudo iptables -P INPUT ACCEPT sudo iptables -P FORWARD ACCEPT sudo iptables -P OUTPUT ACCEPT
خروجی
درباره فرشید نوتاش حقیقت
همیشه نیازمند یک منبع آموزشی فارسی در حوزه نرمافزارهای آزاد/ متنباز و سیستمعامل گنو/لینوکس بودم. از این رو این رسالت رو برای خودم تعریف کردم تا رسانه «محتوای باز» رو بوجود بیارم.
نوشتههای بیشتر از فرشید نوتاش حقیقتاین سایت از اکیسمت برای کاهش جفنگ استفاده میکند. درباره چگونگی پردازش دادههای دیدگاه خود بیشتر بدانید.














دیدگاهتان را بنویسید