Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

就iptables大家比较关心的问题来个补充说明

 关闭 [复制链接]
cqfanli 发表于 2003-7-31 17:00:59 | 显示全部楼层 |阅读模式
6月19日,今天就iptables大家比较关心的问题来个补充说明

1.关于DNAT的补充说明!

对于用ADSL拨号上网的用户,外部网卡往往获取的ip地址是不固定的,所以虚拟主机,或者WWW,mail,ftp发布可能会有些问题,在此针对ADSL的不固定IP情况设置相应的DNAT策略,使能正常发布内网的FTP,MAIL,WWW。

我们这里以发布WWW为例,还是192.168.0.2为内部WWW服务器,只不过现在的服务器是通过ADSL上网

所以我们添加以下策略:
ptables -t nat -A PREROUTING -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.0.2:80
将80请求转发至192.168.0.2:80端口
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -d 192.168.0.2 -p tcp -m tcp --dport 80 -j SNAT --to-source 192.168.0.1
返回a.b.b.d时数据源来自同一子网,就将其源地址更改为192.168.0.1,从eth0发出,并在连接跟踪表中查出a.b.c.d是从ppp0进来的,又由ppp0将此数据发出。(我也看不明白为何要有这句话)
iptables -A INPUT -p tcp --dport 80 -i ppp0 -j ACCEPT
允许80端口访问的语句。
然后重新
/etc/rc.d/init.d/iptables save
/etc/rc.d/init.d/iptables restart

其他如FTP发布也可举一反三:
ptables -t nat -A PREROUTING -p tcp -m tcp --dport 21 -j DNAT --to-destination 192.168.0.2:21
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -d 192.168.0.2 -p tcp -m tcp --dport 21 -j SNAT --to-source 192.168.0.1
iptables -A INPUT -p tcp --dport 21 -i ppp0 -j ACCEPT


上网的时候,用ifconfig看看ppp0的地址,然后用那个地址看看WWW是否正常发布。呵呵,应该是没问题的哦!


2.关于封QQ,联众和边峰游戏的补充说明

相信很多公司的老板会让网管通过防火墙来封锁QQ,联众和边峰游戏,但又不能耽误其他事,我这里有个简单的配置文件服务器也是通过ADSL上网,能简单的实现以上要求:
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -A FORWARD -p icmp -j ACCEPT 开放ping功能
iptables -A FORWARD -p tcp -s 192.168.0.0/24 --dport 80 -j ACCEPT 开放网页浏览功能
iptables -A FORWARD -p tcp -s 192.168.0.0/24 --dport 25 -j ACCEPT 开放smtp发信功能
iptables -A FORWARD -p tcp -s 192.168.0.0/24 --dport 110 -j ACCEPT 开放pop3收信功能
iptables -A FORWARD -p tcp -s 192.168.0.0/24 --dport 21 -j ACCEPT 开放默认FTP功能
iptables -A FORWARD -p tcp --dport 4000 -o ppp0 -j DROP 封锁边峰
iptables -A FORWARD -p tcp --dport 2000 -o ppp0 -j DROP 封锁联众
iptables -A FORWARD -p udp -s 192.168.0.0/24 --dport 8000 -j DROP 封锁QQ(有时udp4000端口也要封锁)
iptables -A FORWARD -p udp -j ACCEPT 允许其他UDP服务,比如DNS等

IPTABLES -A FORWARD -p TCP --dport 1863 -j ACCEPT
IPTABLES -A FORWARD -p TCP --dport 7801:7825 -j ACCEPT
IPTABLES -A FORWARD -p TCP --dport 6891:6900 -j ACCEPT
上面三条是开放了MSN, 不知行不行?
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o ppp0 -j MASQUERADE


3.我不想让人家可以PING到我

这大概是做防火墙用到最多的一种了 你可以在iptables写这句话
iptables -A INPUT -p icmp --icmp-type echo-request -i ppp0 -j DROP
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-6-1 19:29 , Processed in 0.107350 second(s), 16 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表