05-02-2011، 12:11 AM
در این قسمت با دو سویچ مهم از IPTABLES آشنا می شویم:
سویچ s- و d- برای مشخص کردن source و destination در یک بسته TCP/IP به ترتیب از سویچ های معرفی شده استفاده می کنیم.
فرض کنید تصمیم داریم که به کاربران شبکه 192.168.1.0/24 اجازه دهیم شبکه 192.168.2.0/24 رو PING کنن برای این کار باید یک rule در chain مربوط به خروج ( OUTPUT ) بسته ها در جدول ....... اضافه کنیم:
iptables -A INPUT -p ICMP -s 192.168.1.0/24 -d 192.168.2.0/24 -j ACCEPT
به همین سادگی می توانید منبع و مقصد یک بسته TCP/IP رو در فرامین خود مشخص کنید. بدیهی است که برای مشخص کردن یک آدرس خاص نیز می توان به همین روش استفاده کرد. مثلا می خواهیم به ماشین admin شبکه اجازه دهیم که کل شبکه رو PING کنه و بقیه ماشین ها این اجازه رو در شبکه 192.168.1.0/24 نداشته باشن ٍ آدرس ماشین Admin برابر 192.168.1.2 می باشد:
برای این منظور از دو عدد rule به صورت زیر استفاده می کنیم:
iptables -A INPUT -p ICMP -s 192.168.1.0 -d 192.168.1.0/24 -j ACCEPT
iptables -A INPUT -p ICMP -s 192.168.1.0/24 -j REJECT
برای پاک کردن محتویات جداول IPTables می توانید از فرمان iptables -F یعنی FLUSH استفاده کنید.
برای دیدن محتویات جداول IPTables می توانید از فرمان iptables -L استفاده کنید:
خروجی:
<LEFT>
root@yunix-LT:~# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT icmp -- 192.168.1.0/24 192.168.2.0/24
ACCEPT icmp -- 192.168.1.0 192.168.1.0/24
REJECT icmp -- 192.168.1.0/24 anywhere reject-with icmp-port-unreachable
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
<LEFT/>
در پست بعدی به تحلیل خروجی فرمان iptables -L می پردازیم.
سویچ s- و d- برای مشخص کردن source و destination در یک بسته TCP/IP به ترتیب از سویچ های معرفی شده استفاده می کنیم.
فرض کنید تصمیم داریم که به کاربران شبکه 192.168.1.0/24 اجازه دهیم شبکه 192.168.2.0/24 رو PING کنن برای این کار باید یک rule در chain مربوط به خروج ( OUTPUT ) بسته ها در جدول ....... اضافه کنیم:
iptables -A INPUT -p ICMP -s 192.168.1.0/24 -d 192.168.2.0/24 -j ACCEPT
به همین سادگی می توانید منبع و مقصد یک بسته TCP/IP رو در فرامین خود مشخص کنید. بدیهی است که برای مشخص کردن یک آدرس خاص نیز می توان به همین روش استفاده کرد. مثلا می خواهیم به ماشین admin شبکه اجازه دهیم که کل شبکه رو PING کنه و بقیه ماشین ها این اجازه رو در شبکه 192.168.1.0/24 نداشته باشن ٍ آدرس ماشین Admin برابر 192.168.1.2 می باشد:
برای این منظور از دو عدد rule به صورت زیر استفاده می کنیم:
iptables -A INPUT -p ICMP -s 192.168.1.0 -d 192.168.1.0/24 -j ACCEPT
iptables -A INPUT -p ICMP -s 192.168.1.0/24 -j REJECT
برای پاک کردن محتویات جداول IPTables می توانید از فرمان iptables -F یعنی FLUSH استفاده کنید.
برای دیدن محتویات جداول IPTables می توانید از فرمان iptables -L استفاده کنید:
خروجی:
<LEFT>
root@yunix-LT:~# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT icmp -- 192.168.1.0/24 192.168.2.0/24
ACCEPT icmp -- 192.168.1.0 192.168.1.0/24
REJECT icmp -- 192.168.1.0/24 anywhere reject-with icmp-port-unreachable
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
<LEFT/>
در پست بعدی به تحلیل خروجی فرمان iptables -L می پردازیم.