文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>iptables权限控制

iptables权限控制

时间:2006-12-15  来源:loesprite

以下是一个脚本,用来做基本的权限控制。包括的内容有:禁止被访问的IP,特权用户的设置,开启平常要用的端口,封锁某个人的MAC,NAT转发等。

注:此脚本是以MAC地址为管理基础的,如果客户端更改了MAC地址,那么所做的设置就无效了。

#!/bin/sh
/etc/init.d/iptables restart
echo 1 > /proc/sys/net/ipv4/ip_forward
/sbin/iptables -F

############################## Net Admin ################################
#网管员的MAC地址,没有任何限制
/sbin/iptables -t nat -A PREROUTING -m mac --mac-source $MAC -j ACCEPT
/sbin/iptables -A INPUT -m mac --mac-source  $MAC  -j ACCEPT
/sbin/iptables -A FORWARD -m mac --mac-source $MAC  -j ACCEPT

############################## Deny URL #################################
#要禁止访问的地址,下面两个分别是veryCD和互联星空的IP
/sbin/iptables -t nat -A PREROUTING --dst 218.30.64.121 -j DROP
/sbin/iptables -t nat -A PREROUTING --dst 58.218.179.162 -j DROP

##############################  Manager #################################
#老板,特权用户
/sbin/iptables -t nat -A PREROUTING -m mac --mac-source $MAC  -i eth0 -p tcp -m tcp --dport 80 -j ACCEPT
/sbin/iptables -A INPUT -m mac --mac-source $MAC  -j ACCEPT
/sbin/iptables -A FORWARD -m mac --mac-source $MAC -j ACCEPT

############################ open port ################################
#允许访问的端口

#没有Squid做代理的话,下面一句需要启用。
#/sbin/iptables -t nat -A PREROUTING -i eth1 -p tcp -m tcp --dport 80 -j ACCEPT
/sbin/iptables -A INPUT -i eth1 -p tcp -m tcp --dport 22 -j ACCEPT
/sbin/iptables -A INPUT -i eth1 -p tcp -m tcp --dport 443 -j ACCEPT
/sbin/iptables -A INPUT -i eth1 -p tcp -m tcp --dport 1863 -j ACCEPT
/sbin/iptables -A INPUT -i eth1 -p tcp -m tcp --dport 8008 -j ACCEPT
/sbin/iptables -A INPUT -i eth1 -p tcp -m tcp --dport 3128 -j ACCEPT
/sbin/iptables -A INPUT -i eth1 -p tcp -m tcp --dport 3000 -j ACCEPT
/sbin/iptables -t nat -A PREROUTING -i eth1 -p tcp -m tcp --dport 3128 -j ACCEPT

##############################attack######################################
#内网中攻击或中毒的机器,先封掉他,不能上网,他会来找你的。
#/sbin/iptables -A INPUT -m mac --mac-source $MAC -j DROP
#/sbin/iptables -A FORWARD -m mac --mac-source $MAC -j DROP

################################ NAT #####################################
#做个转发
/sbin/iptables -t nat -A PREROUTING -p tcp -m tcp --dport 8989 -j DNAT --to-destination 10.10.0.X:80
/sbin/iptables -t nat -A POSTROUTING -s 10.10.0.0/22 -d 10.10.0.X -p tcp -m tcp --dport 8989 -j SNAT --to-source 10.10.0.1

############################### Internet ################################
#把其他包DROP掉
/sbin/iptables -A INPUT -s 10.10.0.0/22 -j DROP

#将内网的http请求转给squid
/sbin/iptables -t nat -A PREROUTING -s 10.10.0.0/22 -i eth1 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128

#完成转发
/sbin/iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
/sbin/iptables -t nat -A POSTROUTING -s 10.10.0.0/22 -o ppp0 -j MASQUERADE
相关阅读 更多 +
排行榜 更多 +
像素太空杀

像素太空杀

飞行射击 下载
忍者手势

忍者手势

飞行射击 下载
勇士X地下城大冒险

勇士X地下城大冒险

角色扮演 下载