标签:wal nat raw 参考 测试 表名 防火墙 决定 start
iptables防火墙应用层防火墙:
网络层防火墙:基于ip地址,端口号,tcp,udp限制
#####################################
iptables有4表5链
4个表:
filter过滤表[设置允许和拒绝的规则]
nat地址转化表[内外IP转外网IP,外网IP转内外ip]
raw数据表跟踪表[记录每个的连接](数据包跟踪)
mangle修改状态[修改包头] (路由器中修改TTL的值)
重点学习,掌握的是filter和nat表
5个链:
INPUT:入战规则 限制其他主机访问自己的主机
OUTPUT:出战规则 限制自己的主机访问其他主机
FORWARD:转发规则(软路由时应用) 在自己的主机设置数据包转发
PREROUTING:路由前规则(软路由时应用)
POSTROUTING:路由后规则(软路由时应用)
############################################
用自己的主机192.168.4.5测试
命令的语法格式 匹配即停止
iptabless [-t 表名] 选项 [链名] [条件] [-j 目标操作] ##不打 [-t 表名] 默认为filter
iptables -t filter -I INPUT -s 192.168.4.100 -p tcp --dport 22 -j REJECT ##拒绝192.168.4.100主机用tcp协议访问我的端口22(即不能用ssh访问为)
选项:
-A追加规则
-I插入规则 ##插入第一个行
-L查看规则
-D删除规则:REJECT,DROP,ACCEPT
条件:
源 协议 目标
-s -p --dport
###########################################################
iptables -I INPUT -s 192.168.4.100 -p tcp --dport 80 -j REJECT ##拒绝192.168.4.100主机用tcp协议访问我的端口80(即不能用80端口访问我的web网页)
iptables -I INPUT -s 192.168.4.100 -p icmp -j REJECT ##拒绝192.168.4.100主机用icmp协议访问我(即不能ping我)
注意事项/整体规律
-可以不指定表,默认为filter表
-有规则先匹配规则,没有规则匹配默认规则
-选项/链名/目标操作用大写字母,其余都小写
iptables -I INPUT -p tcp --dport 22 -j LOG ##不允许,也不拒绝,用22端口访问我的都放入/var/log/messages ##不会匹配即停止
日志---->远程
日志---->打印
176.121.205.1
###########################################################
iptables -L //显示filter表所有链规则
iptables -nL //数字显示filter表所有链规则
iptables -nl --line-numbers //显示行号
iptables -D INPUT 3 //删除入站第三行
iptables -F //清空filter表所有
iptables -t nat -F //清空nat表
iptables -t mangle -F //清空mangle表
iptables -P INPUT DROP //入站设置默认规则
iptables -I INPUT 2 -s 192.168.4.254 -p tcp --dport 80 -j ACCEPT //插入规则到进站第二行,也可以不指定源IP
iptables -A INPUT -s 192.168.4.254 -p tcp --dport 8080 -j ACCEPT //追加规则到末尾,也可以不指定源IP
###########################################################
在192.168.4.5主机上开启路由功能
临时开启路由转发
cat cat /proc/sys/net/ipv4/ip_forward
echo 1 > /proc/sys/net/ipv4/ip_forward //开启路由转发
echo 0 > /proc/sys/net/ipv4/ip_forward //关闭路由转发
永久开启路由转发
vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
sysctl -a //查看所有内核
4.5 ------------------web1(2.100)
client------->proxy |
2.5 ------------------web2(2.200)
在4.5上做网络型防火墙
iptables -I FORWARD -p icmp -j REJECT
如果有人让路由转发icmp的包,则拒绝
iptables -I FORWARD -p tcp --dport 22 -j REJECT
如果通过路由远程内网里的主机ssh,则拒绝
iptables的条件规则
-s 匹配源ip地址
-d 匹配目标IP地址
--sport 匹配源端口
--dport 匹配目标端口
-i 匹配进站网卡
-o 匹配出站网卡
--icmp-type 匹配icmp类型
iptables -I INPUT -p icmp -j REJECT
其他主机无法ping本机,但本机也无法ping其他主机
iptables -I INPUT ! -s 192.168.4.100 -p tcp --dport 1:1024 -j REJECT
除了192.168.4.100外。使用tcp,访问本机的1到1024都拒绝
这条规则,不决定4.100是否可以访问本机
iptables -F
iptables -I INPUT -p icmp --icmp-type echo-request -j RROP (echo-reply)
其他主机无法ping本机,但本机可以ping其他主机
参考#iptables -p icmp --help帮助信息 可以查看icmp的类型
标签:wal nat raw 参考 测试 表名 防火墙 决定 start
原文地址:http://blog.51cto.com/13587169/2071199