linux系统iptable防火墙的访问权限设定,地址伪装,端口转接
防火墙在做信息包过滤决定时,有一套遵循和组成的规则,这些规则存储在专用的信 息包过滤表中,而这些表集成在 Linux 内核中。在信息包过滤表中,规则被分组放在我们所谓的链(chain)中。而netfilter/iptables IP 信息包过滤系统是一款功能强大的工具,可用于添加、编辑和移除规则。
iptables 组件是一种工具,也称为用户空间(userspace),它使插入、修改和除去信息包过滤表中的规则变得容易。
一 iptables的权限设定:
1. 首先需要停止firewalld并开启iptables:
2. 指令iptables -nL 可以查看当前的iptables规则:
3. 指令iptables -F可以清空原来的指令:
.
4. iptables的权限设定指令参数类似于firewalld对于权限的设定参数。以端口为80的http服务为例,设定用户的的访问权限比如说只许172.25.254.245主机访问,第一条指令时允许245主机的访问,第二条指令是拒绝其他主机的访问。这样就完成了对于用户权限的设定。
5. 设定的权限规则在iptables -nL指令下可以查看到:
6. 规则的插入:-I INPUT 1指明规则的插入位置,即INPUT表的第一条。其他参数依旧按照规则进行设定:
7 规则的修改:-R INPUT 1 指明修改的指令位置,即INPUT表的第一行:
8 规则的删除:iptables -D INPUT 1 删除INPUT表的第一条规则。需要注意的是,删除第一条规则之后,后面的规则会接替规则1的位置,也就是说在删除第一条规则之后紧接着删除第二条规则,不是iptables -D INPUT 2 而是iptables -D INPUT 1 。
9 规则的保存:在规则设定完成之后,使用指令service iptables save可以将设定的规则保存,具体的规则保存文档为/etc/sysconfig/iptables文件。
二 设定第一次连接之后不再询问:
三条指令的含义分别为:
1 允许状态为正在连接和连接过的设备的访问
2 允许新设备的访问
3 允许以回环接口形式的访问
在允许指定状态设备的访问之后,需要设定禁止其他设备的访问:iptables -A INPUT -j REJECT。
设定的规则同样可以在iptables -nL中查看到:
三 端口转接:
类似于firewalld设定端口转接的设置,同样需要在172.25.254.145主机端设定两个网卡的ip:
在172.25.254.245主机端设定网关为172.25.0.145:
在145主机端设定端口转接规则,端口转接是一个外网访问内网的过程,外网访问内网的规则设置在PREROUTING表中:
四 地址伪装:
地址伪装是一个内网访问外网的过程,规则设定在POSTROUTING表中: