积累经验
2014年(55)
分类: LINUX
2014-02-12 15:36:16
Iptables
1. filter 过滤
2. nat 地址转换
3. mangle 标注
规则:
1. 从上到下逐条匹配
2. 越精确,越优先
格式:按照1234顺序
iptbales
1. –t 表名 -A INPUT|-D OUPUT|-I INPUT 2
A添加,D删除,I插入到第2条
2. -s源地址|-d 目标地址|-p类型
3. --sport源端口|--dport目标端口
4. -j ACCEPT|REJECT|DROP
iptables -A INPUT –s 192.168.2.1/32 –j DROP
添加一个规则把源地址2.1拒绝
iptables –L –n –line-number
显示行号
iptables –F OUTPUT
清除fiter表OUTPUT链
iptables –NNET1
添加分层链,提高性能
iptbales –XNET1
删除链,前提需删除NET1下面的规则
iptbles –FNET1
清空NET1,然后再删除
iptables –XNET1
iptables –L –n
iptables –A INPUT –s 192.168.1.0/24 –jNET1
iptables -ANET1 -s 192.168.1.254/32 -j ACCEPT
iptables -ANET1 -s 192.168.1.1/32 -j DROP
iptables –ANET1 –s
iptables –P INPUT DROP
INPUT全部拒绝
Iptables –A INPUT –s 192.168.2.1/32 –p tcp --dport 80 –j DROP
2.1不能访问我的80端口
iptables -A OUTPUT -d 192.168.2.254/32 -p tcp --dport 80 -j DROP
我不能访问2.254的80端口
4种链接状态
NEW 新数据包
ESTANLTISHED 正在传送的数据包(允许) -正在链接的不影响
RELATED 派生的链接(允许)
INVALID 错误的链接(拒绝)
iptables -A INPUT -p tcp --dport 25 -m state --state NEW -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -m state --state NEW -j ACCEPT
iptables -D INPUT -m state --state NEW -j ACCEPT
iptables -A INPUT -m state --state NEW -j DROP
iptables -L -n
netstat -ntalp | grep :25
netstat -ntalp | grep :22
私有IP不能路由,公有IP可以路由
源地址转换,在路由之后(先路由后改地址)
目标地址转换,在路由之前(先改地址后路由)
源地址转换
iptables –t nat –A POSTROUTING –s 192.168.2.0/24 -0 eth1 –j SNAT --to-source 1.1.1.1
或iptables –t nat –A POSTROUTING –s 192.168.2.0/24 -0 eth1 MASQUERADE
目标地址转换
iptables -t nat -A PREROUTING -d 2.2.2.2 -i eth1 -p tcp --dport 80 -j DNAT --to-destination 192.168.2.1:80
1052 iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -j SNAT --to-source 1.1.1.1
1053 iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -o eth1 -j SNAT --to-source 1.1.1.1
1054 iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -o eth1 -j SNAT MASQUERADE
1055 iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -o eth1 -j MASQUERADE
1056 iptables -t nat -A PREROUTING -d 2.2.2.2 -i eth1 -p tcp --dport 80 -j DNAT --to-destination 192.168.2.1:80