فایروال iptables در لینوکس
اگر با سیستم عامل لینوکس آشنایی داشته باشید، می دانید که از لحاظ امنیتی بهترین سیستم عامل است و قابلیت های متعددی برای حفظ امنیت خود دارد. یکی از این قابلیت های مهم و کاربردی به خصوص در مبحث هاست و شبکه، فایروال iptables در لینوکس می باشد. در ادامه با این قابلیت و نحوه راه اندازی و دستورات مهم آن آشنا خواهیم شد.
فایروال iptables چیست؟
سیستم عامل لینوکس در کرنل خود از یک فایروال قدرتمند به نام Netfilter استفاده می کند. سیستم عامل برای مدیریت این فایروال از یک نرم افزار جهت اعمال rule ها در Netfilter استفاده می کند که iptables نام دارد. استفاده از iptables از آن جا حائز اهمیت است که در صورت استفاده صحیح از آن قادر خواهید بود بسیاری از مخاطرات امنیتی علیه سرور خود را را برطرف نمایید. نقطه مقابل این موضوع نیز صدق می کند و گاها کوچک ترین اشتباه در کانفیگ فایروال موجب قطع سرویس ها، قطع دسترسی کاربران یا حتی مدیر سرور و در نتیجه نارضایتی کاربران و مشتریان خواهد شد.
بیشتر بخوانید: امنیت در سرویس هاست دانلود
دستوران مهم فایروال iptables
با استفاده از سرویس های میزبان آنلاین نگران قطع دسترسی از سرور خود نخواهید بود و در صورت اشتباه در کانفیگ و عدم دسترسی ریموت می توانید از پنل تحت وب خود دسترسی کنسول VNC بگیرید و مشکلات را رفع کنید. در ادامه به بررسی مهم ترین دستورات این فایروال می پردازیم…
اجرا، توقف، اجرای دوباره
شما به سادگی با اجرای دستورات زیر، می توانید سرویس فایروال iptables را در لینوکس راه اندازی کنید و یا اجرای آنرا متوقف کنید.
1 2 3 4 5 6 | //Start service iptables start //Stop service iptables stop //Restart service iptables restart |
مشاهده rule های فعال در iptables
1 | iptables -L -v -n |
در دستور بالا سوئیچ L رول ها را لیست می کند، سوئیچ های v و n جزئیات و شماره پورت مربوط به هر رول را نمایش میدهد. خروجی دستور بالا مشابه زیر خواهد بود.
1 2 3 4 5 6 7 8 9 10 11 12 13 | Chain INPUT (policy DROP 0 packets, 0 bytes) pkts bytes target prot opt in out source destination ۰ ۰ ACCEPT tcp -- !lo * 10.10.19.24 0.0.0.0/0 tcp dpt:53 ۰ ۰ ACCEPT udp -- !lo * 10.10.19.25 0.0.0.0/0 udp dpt:53 ۰ ۰ ACCEPT tcp -- !lo * 10.10.19.28 0.0.0.0/0 tcp spt:53 ۳۵ ۷۲۶۸ ACCEPT udp -- !lo * 100.54.61.72 0.0.0.0/0 udp spt:53 ۷۲۴۴ ۵۸۸K LOCALINPUT all -- !lo * 0.0.0.0/0 0.0.0.0/0 ۲۸۰ ۳۰۲۱۳ ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0 ۵۲۴۹ ۵۱۵K INVALID tcp -- !lo * 0.0.0.0/0 0.0.0.0/0 ۴۸۴۴ ۴۹۶K ACCEPT all -- !lo * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED ۰ ۰ ACCEPT tcp -- !lo * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:20 ۲ ۹۲ ACCEPT tcp -- !lo * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:21 ۳ ۱۶۰ ACCEPT tcp -- !lo * 0.0.0.0/0 0.0.0.0/0 state NEW |
بلاک کردن ترافیک ورودی از یک آی پی در فایروال iptables
اگر قصد داشته باشید ترافیک های ورودی از یک IP مشخص را بلاک کنید، به سادگی می توانید با اجرای دستور زیر به هدف خود برسید.
1 | iptables -A INPUT -s 10.32.24.24 -j DROP |
جهت بلاک کردن ترافیک ورودی از یک رنج آی پی از دستور زیر استفاده کنید:
1 | iptables -A INPUT -s 10.32.0.0/24 -j DROP |
بلاک کردن ترافیک خروجی از یک آی پی در فایروال iptables
1 | iptables -A OUTPUT -d 10.32.24.24 -j DROP |
جهت بلاک کردن ترافیک خروجی از یک رنج آی پی از دستور زیر استفاده کنید:
1 | iptables -A OUTPUT -d 10.32.0.0/24 -j DROP |
بلاک کردن ترافیک ورودی از یک پورت در فایروال iptables
1 | iptables -A INPUT -p tcp --dport 244 -j DROP |
جهت بلاک کردن ترافیک ورودی از یک پورت برای یک آی پی خاص در iptables از دستور زیر استفاده کنید:
1 | iptables -A INPUT -p tcp -s 10.32.24.24 --dport 244 -j DROP |
بلاک کردن ترافیک خروجی از یک پورت در فایروال iptables
1 | iptables -A OUTPUT -p tcp --dport 244 -j DROP |
جهت بلاک کردن ترافیک خروجی از یک پورت برای یک آی پی خاص در iptables از دستور زیر استفاده کنید:
1 | iptables -A OUTPUT -p tcp -s 10.32.24.24 --dport 244 -j DROP |
حذف یک rule در فایروال iptables
برای حذف یک rule فعال ابتدا با افزودن سوئیچ –line-numbers به انتهایی دستوری که برای نشان دادن رول های فعال گفته شد، شماره سطر rule را پیدا می کنیم.
1 | iptables -n -L -v --line-numbers |
سپس با دستور زیر رول مربوطه را حذف میکنیم، توجه کنید که در دستور زیر ۲۱ شماره سطر می باشد:
1 | iptables -D INPUT 21 |
حذف rule های مربوط به یک آی پی در فایروال iptables
1 | iptables -D INPUT -s 10.32.24.24 -j DROP |
حذف تمامی rule های iptabels
1 2 3 | iptables -F iptables -t nat -F iptables -t mangle -F |
ذخیره تغییرات در فایروال
بعد از اعمال تغییرات در رول ها باید آن ها را در فایروال ذخیره کنید تا در صورت restart فایروال از بین نروند، در صورتی که تغییری ایجاد کردید حتما دستور زیر را اجرا کنید:
1 | service iptables save |
در صورت تمایل برای اطلاعات بیشتر با استفاده از دستور زیر راهنمای فایروال را مطالعه کنید:
1 | man iptables |
مدیریت سرورهای خود را به متخصصین میزبان آنلاین بسپارید و سرعت، امنیت و پایداری را تجربه کنید…