熟悉iptables框架:
1)iptables的4个表(区分大小写):
iptables默认有4个表,nat表(地址转换表)、filter表(数据过滤表)、raw表(状态跟踪表)、mangle表(包标记表)。
2)iptables的5个链(区分大小写):
INPUT链(入站规则)
OUTPUT链(出站规则)
FORWARD链(转发规则)
PREROUTING链(路由前规则)
POSTROUTING链(路由后规则)
iptabels语法格式:
iptables [-t 表名] 选项 [链名] [条件] [-j 目标操作]
//注意事项与规律:
//可以不指定表,默认为filter表
//可以不指定链,默认为对应表的所有链
//如果没有找到匹配条件,则执行防火墙默认规则
//选项/链名/目标操作用大写字母,其余都小写
########################################################################
//目标操作:
// ACCEPT:允许通过/放行
// DROP:直接丢弃,不给出任何回应
// REJECT:拒绝通过,必要时会给出提示
// LOG:记录日志,然后传给下一条规则
table001.png
iptables防火墙规则的条件:
table002.png
如果需要开启Linux路由转发功能:
echo 0 > /proc/sys/net/ipv4/ip_forward //关闭路由转发
echo 1 > /proc/sys/net/ipv4/ip_forward //开启路由转发
上面两条命令仅当前有效,计算机重启后无效
echo 'net.ipv4.ip_forward=1' >> /etc/sysctl.conf
修改/etc/sysctl.conf配置文件,可以实现永久有效规则
网友评论