IP Tables چیست ؟ + نظارت و اعمال قوانین امنیتی در شبکه ها
IP Tables چیست ؟ به طور کلی به منظور نظارت و اعمال قوانین امنیتی در شبکه ها از Firewall استفاده میشود. Firewall نوعی فیلتر در لبهی شبکه است که ترافیک ورودی و خروجی را کنترل میکند و بسته های مخرب و غیر قابل اعتماد را شناسایی کرده و به آنها اجازه عبور نمیدهد، اما چطور این کار را میکند ؟ با شرکت خدمات ویپ ماهان ویپ همراه شوید.
نظارت و کنترل دقیق شبکه با IPTables
IPTables را میتوان در کل شبکه اعمال کرد و با استفاده از قوانین ایجاد شده بستههای شبکه ورودی یا خروجی را نظارت، مجاز یا مسدود کرد. شاید در نگاه اول پیچیده به نظر برسد اما پس از درک مفاهیم اولیه و ساختار آن، به سادگی قابل استفاده و پیاده سازی خواهد بود هنگام راه اندازی و تنظیم IP Tables با سه مفهوم Tables, Chains, Rules سروکار خواهید داشت که در ادامه به شرح آنها خواهیم پرداخت. ip tables ممکن است حاوی چندین جدول (Tables) باشد. جداول ممکن است حاوی چندین زنجیره (Chains) باشند و زنجیرها می توانند داخلی یا تعریف شده توسط کاربر باشند و قوانین (Rules) مختلفی را اجرا کنند.
جدول در IP Tables چیست ؟
در IPTable پنج نوع جدول وجود دارد ( Filter, NAT , Mangle, RAW, Security ) که هر کدام قوانین متفاوتی را اجرا میکنند.
1. جدول Table Filter
در هنگام استفاده از IPTables این جدول مرجع و به صورت پیش فرض قرار دارد. هر وقت که در هنگام اعمال قوانین به جدول خاصی اشاره نشود آنها در جدول Filter اعمال می شوند. همانطور که از نام آن پیداست، نقش این جدول فیلتر کردن بسته ها است و در خصوص اینکه آیا بسته ها باید به مقصد برسند یا درخواستشان رد شود تصمیم گیری میکند.
2. جدول ( Network Address Translation)Table NAT
کار این جدول ترجمه آدرس در شبکه است، در واقع نقش این جدول تعیین میکند که آیا باید آدرس مبدا و مقصد بسته در شبکه تغییر کند یا خیر.
3. جدول Mangle Table
یکی از مهمترین کاربرهای این جدول علامت گذاری بسته ها است و به ما این امکان را می دهد تا هدر بسته ها را برای مقاصد مختلف تغییر دهیم. برای مثال، میتوان TTL را برای افزایش یا کوتاه کردن پرشهای شبکه تنظیم کرد یا از ارسال بسته های سرگردان در شبکه با کم کردن TTL جلوگیری کرد. به طور کلی علامت گذاری بسته، مسیر و ارتباط از جمله کارهای اصلی این جدول است.
4. جدول RAW Table
کاربرد اصلی این جدول ردیابی اتصالات است، مکانیزمی برای علامت گذاری و مشاهده بسته ها به عنوان بخشی از یک ارتباط در حال انجام را فراهم می کند.
5. جدول Security Table
با استفاده از این جدول مرجع و اصلی کاربران می توانند نشانه زمینه امنیتی SELinux داخلی را روی بسته های شبکه وارد کنند.
جدول های Security Table و RAW Table به نسبت سه مورد اول کارایی کمتری در کنترل و نظارت شبکه دارند
Chains (زنجیره ها)
در ادامه مقاله IP Tables چیست به زنجیره های آن میپردازیم. زنجیرهها در نقاطی از مسیر شبکه کار می کنند که ما می توانیم قوانین را اعمال کنیم. در IPTables پنج نوع زنجیره وجود دارد (Pre-routing, Input Chain, Forward Chain, Output Chain, Post-routing) که در مورد هر کدام مختصر توضیحی خواهیم داد. در نظر داشته باشیدکه هر نوع زنجیره ای برای هر نوع خاصی از جدول ها وجود دارد.
زنجیره Pre-routing
این زنجیره قبل از تصمیم گیری در مورد مسیریابی در خصوص مقصد نهایی بسته پردازش می شود.
زنجیره Input Chain
این زنجیره در نقطه ورود به شبکه قرار میگیرد و قوانین را اجرا میکند.
زنجیره Forward Chain
این زنجیره در نقطه انتقال بسته از شبکه قرار دارد و مانند گذرگاه بسته از یک شبکه به شبکه دیگر است.
زنجیره Output Chain
زنجیر خروجی زمانی که بسته از طریق سیستم منشا گرفته و خارج می شود، به بسته اعمال می شود.
زنجیره Post-routing
این زنجیره کاملا برعکس زنجیره Pre-routing است و پس از تصمیم گیری در مورد مسیریابی برای بسته های ارسال شده یا خروجی اعمال می شود.
مقاله مرتبط: سوئیچ سیسکو
قوانین در IP Tables چیست ؟
دستورات فردی کاربران هستند که توسط آن ترافیک شبکه را دستکاری می کنند. زنجیره ها بسته ها را بر اساس قوانین تعریف شده بررسی میکنند. اگر یک قانون شرط را برآورده نکرد، به قانون بعدی منتقل می شود و اگر شرط را برآورده کرد، قانون بعدی با مقدار هدف مشخص می شود. هر قانون دارای دو جزء Matching Component و Target Component است
قانون Matching Component
تطبیق شرایط مختلف برای تعریف قوانینی با Protocol IP Address, Port, رابط ها و هدر هستند.
قانون Target Component
این اقدام پس از تطبیق شرایط آغاز میشود.
نصب ip tables
در ادامه مقاله IP Tables چیست ، برای نصب iptables در سیستم خود، مراحل زیر را دنبال کنید:
- 1. با استفاده از نرمافزار مدیریت بستهها در سیستم عامل خود، مانند (Advanced Package Tool) در اوبونتو، میتوانید iptables را نصب کنید. اجرای دستور زیر به شما در خصوص نصب iptables در اوبونتو کمک خواهد کرد:
sudo apt-get install iptables
- 2. پس از نصب موفقیتآمیز، شما میتوانید از iptables برای تنظیم قوانین جدول فیلترینگ استفاده کنید. برای مدیریت iptables به عنوان کاربر root، از دستور زیر استفاده کنید:
sudo iptables
با اجرای این دستور، شما وارد محیط تعاملی iptables خواهید شد.
- 3. حالا میتوانید قوانین مورد نظر خود را تعریف کنید. به عنوان مثال، میتوانید یک قانون برای مسدود کردن ترافیک ورودی به یک پورت خاص یا انتقال ترافیک با iptables تعریف کنید. برای مثال، اگر میخواهید ترافیک ورودی به پورت 80 (پورت HTTP) را مسدود کنید، دستور زیر را وارد کنید:
iptables -A INPUT -p tcp –dport 80 -j DROP
این دستور یک قانون به جدول INPUT اضافه میکند که ترافیک TCP با مقصد پورت 80 را مسدود میکند.
- 4. پس از تعریف قوانین مورد نظر، میتوانید جدول iptables را ذخیره کنید تا در بارگذاری مجدد سیستم حفظ شود. برای این کار، از دستور زیر استفاده کنید:
sudo iptables-save > /etc/iptables/rules.v4
این دستور جدول iptables را در فایل /etc/iptables/rules.v4 ذخیره میکند.
اکنون شما iptables را بر روی سیستم خود نصب کرده و قادر به تعریف و مدیریت قوانین فیلترینگ مورد نظر خود هستید. لازم به ذکر است که iptable یک ابزار قدرتمند است و برای مدیریت آن بهتر است با مستندات مربوطه آشنا شوید و قبل از اعمال تغییرات، به دقت عمل کنید.
دستورات iptables در لینوکس
یک ابزار پیشرفته برای مدیریت ترافیک در لینوکس است. این ابزار برای تنظیمات فایروال، تغییر مسیریابی، نتورک آدرس ترجمه (NAT) و سایر عملیات شبکه مورد استفاده قرار میگیرد. دستورات iptables برای کاربرانی که میخواهند شبکه خود را مدیریت کنند، بسیار مفید و حیاتی هستند. در زیر به برخی از دستورات iptables پرکاربرد در لینوکس اشاره میشود:
· iptables -L
این دستور جدول فعلی iptables را به شما نمایش میدهد.
· iptables -F
این دستور تمامی قوانین iptables را حذف میکند.
· iptables -P INPUT DROP
این دستور به شما اجازه میدهد تا ترافیک ورودی را مسدود کنید.
· iptables -P FORWARD DROP
این دستور به شما اجازه میدهد تا ترافیک مسیریابی شده را مسدود کنید.
5- iptables -P OUTPUT DROP: این دستور به شما اجازه میدهد تا ترافیک خروجی را مسدود کنید.
· iptables -A INPUT -s 192.168.1.0/24 -p tcp –dport 22 -j ACCEPT
این دستور به شما اجازه میدهد تا ترافیک SSH را از یک شبکه خاص به سمت سرور خود مجاز کنید.
· iptables -A OUTPUT -d 192.168.1.0/24 -p tcp –dport 80 -j ACCEPT
این دستور به شما اجازه میدهد تا ترافیک HTTP را از سرور خود به یک شبکه خاص مجاز کنید.
· iptables -A FORWARD -s 192.168.1.0/24 -d 192.168.2.0/24 -j ACCEPT
این دستور به شما اجازه میدهد تا ترافیک از یک شبکه به شبکه دیگر را مجاز کنید.
· iptables -A INPUT -p icmp –icmp-type echo-request -j ACCEPT
این دستور به شما اجازه میدهد تا پیام ICMP را برای تست ارتباط شبکه مجاز کنید.
· iptables-save ا
ین دستور جدول iptables را به یک فایل ذخیره میکند تا در صورت بارگذاری مجدد سیستم از آن استفاده کنید.
در کل، دستورات iptables به شما اجازه میدهند تا امنیت و کنترل شبکه خود را بهبود دهید. این دستورات برای مدیریت ترافیک شبکه، مسدود کردن ترافیک ناخواسته و مجاز کردن ترافیک مورد نیاز بسیار مفید هستند.
در ادمه مقاله iptables چیست در مورد مراحل نصب iptables در ابونتو توضیحاتی را ارائه خواهیم کرد.
نصب iptables در اوبونتو
Iptables یک ابزار پیشرفته است که بر روی اوبونتو نیز قابل نصب است. در زیر مراحل نصب iptables در اوبونتو را توضیح میدهیم:
- باز کردن ترمینال: برای نصب iptables در اوبونتو، ابتدا باید یک ترمینال باز کنید.
- نصب iptables: برای نصب iptables در اوبونتو، میتوانید از دستور زیر استفاده کنید:
sudo apt-get update
sudo apt-get install iptables
این دستورات به شما اجازه میدهند تا لیست بستههای موجود در سیستم خود را به روز رسانی کنید و سپس iptables را نصب کنید.
- بررسی نصب: پس از نصب، برای بررسی نصب درست iptables، میتوانید از دستور زیر استفاده کنید:
sudo iptables -L
این دستور جدول iptables را به شما نمایش میدهد. اگر خروجی این دستور خالی باشد، به این معنی است که هیچ قانون iptablesی نیست.
در کل، نصب iptables در اوبونتو به سادگی با دستوراتی که در بالا ذکر شد انجام میشود. برای بررسی نصب درست iptables، میتوانید از دستور sudo iptables -L استفاده کنید.
نحوه انتقال ترافیک با iptables
Iptables یک ابزار پیشرفته برای مدیریت ترافیک در لینوکس است که قابل استفاده برای انتقال ترافیک به سرورهای دیگر است. در زیر نحوه استفاده از iptables برای انتقال ترافیک به سرورهای دیگر را توضیح میدهیم:
- اضافه کردن قانون: برای انتقال ترافیک به سرور دیگر، باید یک قانون در iptables اضافه کنید. برای مثال، برای انتقال ترافیک HTTP به سرور دیگر، میتوانید از دستور زیر استفاده کنید:
sudo iptables -t nat -A PREROUTING -p tcp –dport 80 -j DNAT –to-destination <server_ip>
این دستور به شما اجازه میدهد تا ترافیک HTTP را به سرور دیگری با IP <server_ip> انتقال دهید.
- فعال سازی IP Forwarding: برای اینکه ترافیک از سرور شما به سرور دیگر بتواند انتقال پیدا کند، باید IP Forwarding را فعال کنید. برای این کار، فایل /etc/sysctl.conf را با دستور sudo nano /etc/sysctl.conf ویرایش کرده و خط زیر را اضافه کنید:
net.ipv4.ip_forward=1
بعد از اضافه کردن این خط، فایل را ذخیره کرده و خروج کنید.
- اعمال تغییرات: برای اعمال تغییرات در iptables بعد از اضافه کردن قانون و فعال کردن IP Forwarding، باید دستور زیر را اجرا کنید:
sudo iptables-save > /etc/iptables.rules
این دستور به شما اجازه میدهد تا تمام قوانین iptables را در یک فایل ذخیره کنید.
- بارگذاری قوانین iptables: برای بارگذاری قوانین iptables در سیستم، باید فایل /etc/rc.local را با دستور sudo nano /etc/rc.local ویرایش کرده و قبل از خط exit 0، دستور زیر را اضافه کنید:
iptables-restore < /etc/iptables.rules
این دستور به شما اجازه میدهد تا قوانین iptables را در هنگام بارگذاری سیستم اجرا کنید.
در کل، انتقال ترافیک با استفاده از iptables نیازمند اضافه کردن قانون، فعال کردن IP Forwarding، اعمال تغییرات و بارگذاری قوانین iptables است. با دنبال کردن این مراحل، میتوانید ترافیک را به سرور دیگری برای پردازش ارسال کنید.
امیدواریم مقاله iptables چیست برای شما مفید واقع شده باشد.
ماهان ویپ
شرکت ماهان ویپ یک شرکت فعال در زمینه فناوری ارتباطات و ارائه خدمات VoIP (صوتی بر روی پروتکل اینترنت) و مرکز تماس ابری است. این شرکت به عنوان یک ارائه دهنده متخصص در زمینه تلفنی اینترنتی، سیستمهای تلفنی VoIP و خدمات مربوطه را به مشتریان خود ارائه میدهد.
ماهان ویپ به منظور فراهم کردن ارتباطات صوتی موثر و اقتصادی برای سازمانها و کسب و کارها، از فناوری VoIP استفاده میکند. این فناوری امکان برقراری تماسهای تلفنی صوتی از طریق اینترنت را فراهم میکند، که عملکردی مشابه با سیستم تلفنی سنتی دارد اما با هزینههای کمتر و امکانات بیشتر. ممنون که ما را تا انتهای مقاله IP Tables چیست همراهی کردید. برای اطلاعات بیشتر پیج اینستاگرام ماهان ویپ را دنبال کنید.
سوالات متداول
IP Tables چیست ؟
iptables یک ابزار قدرتمند برای مدیریت فایروال در سیستمعاملهای لینوکس است. فایروال، نقش محافظتی از سیستم و شبکه را بازی میکند و کنترلی بر روی ترافیک شبکه وارد و خروجی از سیستم اعمال میکند.
دستورات ip tables لینوکس چیست؟
دستورات iptables در لینوکس برای تعریف و مدیریت قوانین فایروال استفاده میشوند. در زیر خلاصهای از برخی از دستورات مهم iptables آورده شده است:
– `iptables -A <CHAIN> -p <PROTOCOL> –dport <PORT> -j <ACTION>`: اضافه کردن یک قانون جدید به یک زنجیره مشخص.
– `ip tables -D <CHAIN> <RULE_NUMBER>`: حذف یک قانون مشخص از زنجیره.
– `iptables -L` یا `iptables –list`: نمایش قوانین فعلی iptables به همراه زنجیرهها و سیاستهای موجود.
– `ip tables -P <CHAIN> <ACTION>`: تغییر سیاست پیشفرض برای یک زنجیره خاص.
– `iptables -F <CHAIN >`: پاک کردن همه قوانین موجود در یک زنجیره.
– `iptables -A <CHAIN> -s <SOURCE_IP> -j <ACTION>`: محدود کردن ترافیک بر اساس آدرس IP منبع.
– `iptables -A <CHAIN> -d <DESTINATION_IP> -j <ACTION>`: محدود کردن ترافیک بر اساس آدرس IP مقصد.
– `iptables -A <CHAIN> -i <INTERFACE> -j <ACTION>`: محدود کردن ترافیک بر اساس رابط شبکه.
– `iptables -A <CHAIN> -m state –state <STATE> -j <ACTION>`: محدود کردن ترافیک بر اساس وضعیت اتصال.
این تنها چند نمونه از دستورات iptables هستند و میتوانید با مطالعه بیشتر، از دستورات دیگر آگاه شوید و قوانین مورد نیاز خود را تعریف کنید.
۴. چگونه میتوانیم iptables را به صورت دائمی در اوبونتو فعال کنیم؟
برای فعال کردن iptables به صورت دائمی در اوبونتو، باید قوانین iptables را در فایل “/etc/iptables/rules.v4” یا “/etc/iptables/rules.v6” ذخیره کنید و سپس از دستور “sudo iptables-restore < /etc/iptables/rules.v4” یا “sudo iptables-restore < /etc/iptables/rules.v6” برای بارگذاری قوانین استفاده کنید.