سه شنبه ۰۴ آذر ۱۳۹۳ ساعت ۱۱:۲۴ ق.ظ
(آخرین تغییر در ارسال: سه شنبه ۰۴ آذر ۱۳۹۳ ساعت ۱۱:۲۵ ق.ظ توسط سامان.)
نکته۱:
بعد از استفاده از دستورات iptables بدین صورت آنها را save می کنیم:
# iptables-save
# service iptables save
بستن PING:
# iptables -A OUTPUT -p icmp - j REJECT
# iptables -A INPUT -p icmp - j REJECT
و برای حذف این دستور چنین عمل می کنیم:
# iptables -D OUTPUT -p icmp -j REJECT
فعال کردن IP Forwarding:
# echo "1" > /proc/sys/net/ipv4/ip_forward
برای Drop کردن درخواست IP خاص یا پورت خاص چنین عمل می کنیم:
.بستن پورت 23برای همه ip ها:
# iptables -t nat -A POSTROUTING -o eth1 -p tcp -m tcp --dport 23 -j DROP
..بستن پورت های 22 و 23 برای همه ip ها:
# iptables -t nat -A POSTROUTING -o eth1 -p tcp -m tcp --dport 22:23 -j DROP
...بستن پورت 22و 23 برای یک ip خاص:
# iptables -t nat -A POSTROUTING -s 192.168.0.88 -o eth1 -p tcp -m tcp --dport 22:23 -j DROP
....برای drop کردن تمامی Packet های یک IP خاص:
# iptables -A INPUT -s 217.61.158.248 -j DROP
..... برای Drop کردن SSH packetهای یک Ip خاص:
# iptables -A INPUT -s 217.61.158.248 -p tcp --dport 22 -j DROP
فعال کردن LOG در قوانین فایروال
برای اینکه مدیریت کامل تری به شبکه خود داشته باشیم و بتوانیم منابعی که در حال اسکن کردن سیستم ما هستند بیابیم و یا در هر حال گزارشی از عملکرد صحیح فایر وال داشته باشیم می توانیم به طرق ذیل Log فایل ها را برای موارد دلخواهمان فعال کنیم:
.فعال کردن Log برای دیدن بسته های ICMP:
# iptables -A OUTPUT -p icmp -j LOG --log-prefix "PING:> "
# iptables -A INPUT -p icmp -j LOG --log-prefix "PING:> "
برای دیدن این log ها به این مسیر بروید:
/var/log/messages
و خط هایی را که با
PING:>
شروع شده اند بررسی نمایید.( البته راه ساده تر آن استفاده از دستور فیلتر کننده grep و مختص کردن به log های فایروال می باشد)
. فعال کردن Log برای دیدن Ftp:
# iptables -A OUTPUT -p tcp -s 0/0 --dport 21 -j LOG --log-prefix "FTP:> "
# iptables -A INPUT -p tcp -s 0/0 --dport 21 -j LOG --log-prefix "FTP:> "
که در لاگ فایل ها دنبال عبارت انتخابی
FTP:>
می گردیم.
. فعال کردن Log برای یک ip خاص:
# iptables -t nat POSTROUTING -s 192.168.0.88 -o eth1 -j LOG --log-prefix " "
که در لاگ فایل ها دنبال عبارت انتخابی
می گردیم.
redirect کردن پورت های مختلف
در این بخش redirect کردن پورت های مختلف را با هم بررسی می کنیم:
1-Transparent کردنSquid
# iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 3128
2-برای redirect کردن گروهی از پورتها:
# iptables -t nat -A PREROUTING -p tcp -d 203.145.184.246 --dport 20:23 -j DNAT --to 192.168.0.88:20-23
# iptables -A FORWARD -p tcp -d 192.168.0.88 --dport 20:23 -j ACCEPT
# iptables -t nat -A PREROUTING -p udp -d 203.145.184.246 --dport 20:23 -j DNAT --to 192.168.0.88:20-23
# iptables -A FORWARD -p udp -d 192.168.0.88 --dport 20:23 -j ACCEPT
3- برای redirect کردن تمامی درخواست های SMTP از اینترفیسeth0 به یک کامپیوتر دیگه داخل شبکه( LAN):
# iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 25 -j DNAT --to 192.168.0.88:25
# iptables -A FORWARD -p tcp -d 192.168.0.88 --dport 25 -j ACCEPT
Share کردن اینترنت
در این بخش با استفاده از سیاست MASQUERADE اینترنت را در شبکه به اشتراک می گزاریم:
A) با استفاده از دو کارت شبکه که یکی به اینترنت و دیگری به شبکه داخلی متصل است:
# iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
(توضیح اینکه در اینجا eth1 اینترفیسی است که به اینترنت متصل است.)
B) با استفاده از مودم ( به صورت Dialup) و یک کارت شبکه:
# iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
( توضیح اینکه لازم است که IP forwarding نیز فعال شده باشد
برای دیدن قوانینی که اعمال کرده ایم :
# iptables -L
# iptables -nL
وبرای حذف کردن تمامی قوانین Iptables چنین عمل می کنیم:شذث
# iptables -F
# iptables -X
# iptables -Z
بعد از استفاده از دستورات iptables بدین صورت آنها را save می کنیم:
# iptables-save
# service iptables save
بستن PING:
# iptables -A OUTPUT -p icmp - j REJECT
# iptables -A INPUT -p icmp - j REJECT
و برای حذف این دستور چنین عمل می کنیم:
# iptables -D OUTPUT -p icmp -j REJECT
فعال کردن IP Forwarding:
# echo "1" > /proc/sys/net/ipv4/ip_forward
برای Drop کردن درخواست IP خاص یا پورت خاص چنین عمل می کنیم:
.بستن پورت 23برای همه ip ها:
# iptables -t nat -A POSTROUTING -o eth1 -p tcp -m tcp --dport 23 -j DROP
..بستن پورت های 22 و 23 برای همه ip ها:
# iptables -t nat -A POSTROUTING -o eth1 -p tcp -m tcp --dport 22:23 -j DROP
...بستن پورت 22و 23 برای یک ip خاص:
# iptables -t nat -A POSTROUTING -s 192.168.0.88 -o eth1 -p tcp -m tcp --dport 22:23 -j DROP
....برای drop کردن تمامی Packet های یک IP خاص:
# iptables -A INPUT -s 217.61.158.248 -j DROP
..... برای Drop کردن SSH packetهای یک Ip خاص:
# iptables -A INPUT -s 217.61.158.248 -p tcp --dport 22 -j DROP
فعال کردن LOG در قوانین فایروال
برای اینکه مدیریت کامل تری به شبکه خود داشته باشیم و بتوانیم منابعی که در حال اسکن کردن سیستم ما هستند بیابیم و یا در هر حال گزارشی از عملکرد صحیح فایر وال داشته باشیم می توانیم به طرق ذیل Log فایل ها را برای موارد دلخواهمان فعال کنیم:
.فعال کردن Log برای دیدن بسته های ICMP:
# iptables -A OUTPUT -p icmp -j LOG --log-prefix "PING:> "
# iptables -A INPUT -p icmp -j LOG --log-prefix "PING:> "
برای دیدن این log ها به این مسیر بروید:
/var/log/messages
و خط هایی را که با
PING:>
شروع شده اند بررسی نمایید.( البته راه ساده تر آن استفاده از دستور فیلتر کننده grep و مختص کردن به log های فایروال می باشد)
. فعال کردن Log برای دیدن Ftp:
# iptables -A OUTPUT -p tcp -s 0/0 --dport 21 -j LOG --log-prefix "FTP:> "
# iptables -A INPUT -p tcp -s 0/0 --dport 21 -j LOG --log-prefix "FTP:> "
که در لاگ فایل ها دنبال عبارت انتخابی
FTP:>
می گردیم.
. فعال کردن Log برای یک ip خاص:
# iptables -t nat POSTROUTING -s 192.168.0.88 -o eth1 -j LOG --log-prefix " "
که در لاگ فایل ها دنبال عبارت انتخابی
می گردیم.
redirect کردن پورت های مختلف
در این بخش redirect کردن پورت های مختلف را با هم بررسی می کنیم:
1-Transparent کردنSquid
# iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 3128
2-برای redirect کردن گروهی از پورتها:
# iptables -t nat -A PREROUTING -p tcp -d 203.145.184.246 --dport 20:23 -j DNAT --to 192.168.0.88:20-23
# iptables -A FORWARD -p tcp -d 192.168.0.88 --dport 20:23 -j ACCEPT
# iptables -t nat -A PREROUTING -p udp -d 203.145.184.246 --dport 20:23 -j DNAT --to 192.168.0.88:20-23
# iptables -A FORWARD -p udp -d 192.168.0.88 --dport 20:23 -j ACCEPT
3- برای redirect کردن تمامی درخواست های SMTP از اینترفیسeth0 به یک کامپیوتر دیگه داخل شبکه( LAN):
# iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 25 -j DNAT --to 192.168.0.88:25
# iptables -A FORWARD -p tcp -d 192.168.0.88 --dport 25 -j ACCEPT
Share کردن اینترنت
در این بخش با استفاده از سیاست MASQUERADE اینترنت را در شبکه به اشتراک می گزاریم:
A) با استفاده از دو کارت شبکه که یکی به اینترنت و دیگری به شبکه داخلی متصل است:
# iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
(توضیح اینکه در اینجا eth1 اینترفیسی است که به اینترنت متصل است.)
B) با استفاده از مودم ( به صورت Dialup) و یک کارت شبکه:
# iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
( توضیح اینکه لازم است که IP forwarding نیز فعال شده باشد
برای دیدن قوانینی که اعمال کرده ایم :
# iptables -L
# iptables -nL
وبرای حذف کردن تمامی قوانین Iptables چنین عمل می کنیم:شذث
# iptables -F
# iptables -X
# iptables -Z