iptables介绍

4表5链:真实应用的时候只需要使用2表5链条

链是一组规则的集合。表里面包含过的链。

表:filter(默认表;过滤,处理端口和ip,实现白名单)net(进行源/目标地址转换,实现共享上网,端口和地址映射等

链:INPUT:对进入本地的包进行访问控制(丢弃或者通过),比如外部想访问本地应用和服务时

OUTPUT: 对从本地出去的流量进行访问控制,比如自己想访问外部的应用和服务时

PREROUTING:在进入INPUT链前的访问控制,比如对目的ip地址进行修改

POSTROUTING:在OUTPUT链后面的访问控制,比如对源ip地址就行修改

FORWORD: 路过的包走的。

综上:做访问控制时,一般处理INPUT和OUTPUT链。且和filter表深度绑定

做地址转换时候,一般处理PREROUTING,POSTROUTING链,和net表深度绑定

全局管理命令:

iptables -F    #清空默认防火墙规则

iptables -nL   #查看默认表(filter)的规则

iptables-save > /etc/sysconfig/iptables   #保存防火墙规则,重启后会自动加载改配置文件规则

iptables-restore < /etc/sysconfig/iptables  #不想保存刚编辑的规则,从原规则的配置文件导入规则表来实现恢复。

iptables -t net -nL --line-number   #查看net表的规则并显示规则编号

iptables -D INPUT 1  #删除默认表filter中INPUT链的第一条规则

 生产环境白名单的配置

iptables -t filter -A INPUT -p tcp --dport 22 -j ACCEPT   #默认表filter可以省略,-A表示新规则放在现有规则的后面,既然是对端口进行开放,不妨加上-p限制下协议。

iptables -A INPUT -i lo -j ACCEPT   #这里就是略去了默认表filter

iptavles -A OUTPUT -o lo -j ACCEPT   #从filter表中对本地流量的进和出进行开放

iptables -A INPUT -m multiport -p tcp --dport 80,443 -j ACCEPT  #开放的服务,-m是使用模块,后面的--dport可以用逗号写多个端口

iptables -A INPUT -s 10.0.0.0/24 -j ACCEPT   #开放的白名单网段

iptables -A INPUT -m state --state RELATED,ESTABLISHD -j ACCEPT   #开放连接状态

iptables -A OUTPUT -m state --state RELATED,ESTABLISHD -j ACCEPT

iptables -P INPUT DROP    #修改默认规则,变成默认drop

iptables-save     #保存规则


#####以后在白名单中添加可放开的网段,就不能使用-A了,要换成-I,插入到原有规则的前面。因为规则是从上向下匹配的

iptables -t filter -I INPUT -s 192.168.100.0/24 -j ACCEPT

共享上网配置:想出去,在POSTROUTING上修改源地址

#内网的用户访问公网的服务。只要把内网用户的源地址改成公网出口的ip

#开启服务器的内核转发功能
echo 1 > /proc/sys/net/ipv4/ip_forward  #临时

vim /etc/sysctl.conf
net.ipv4.ip_forward = 1   #永久生效
sysctl -p

#客户端的网关要指向防火墙,根据实际情况配置

#iptables转发
#公网ip固定的时候
iptables -t nat -A POSTROUTING -s 172.16.1.0/24 -j SNAT --to-source 10.0.0.61 #SNAT标识修改的是源IP的地址

#公网ip不固定的转发
iptables -t nat -A POSTROUTING -s 172.16.1.0/24 -j MASQUERADE

端口转发和映射:想进来,REROUTING链上,修改目标地址

iptables -t nat -A PREROUTING -d 10.0.0.61 -p tcp --port 8080 -j DNAT --to_destination 172.16.1.7:22

  • 8
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值