一、iptables 的定义
iptables 是可以将规则组成一个列表,实现绝对详细的访问控制功能。他们都是工作在用户空间中,定义规则的工具,本身并不算是防火墙。它们定义的规则,可以让在内核空间当中的netfilter来读取,并且实现让防火墙工作。而放入内核的地方必须要是特定的位置,必须是tcp/ip的协议栈经过的地方。而这个tcp/ip协议栈必须经过的地方,可以实现读取规则的地方就叫做 netfilter.(网络过滤器)
二、iptables 的使用
1.实验准备
安装 iptables
关掉 firewalld
打开iptables,并设置开机自启
2.常用命令
iptables -nL 查看iptables 信息
iptables -F:刷新信息
service iptables save 将iptables 信息保存在/etc/sysconfig/iptables
在不指定的情况下查看filter 表 ,每个表中有三条链 INPUT (数据包流入口)、FORWARD (转发管卡)、OUTPUT(数据包出口)
3.链管理命令(这都是立即生效的)
-P :设置默认策略
-F: FLASH,清空规则链的(注意每个链的管理权限)
-N:NEW 支持用户新建一个链
-X: 用于删除用户自定义的链
-E:用来Rename chain主要是用来给用户自定义的链重命名
4.规则管理命令
-A:追加,在当前链的后面新增一个规则
-i 添加
-s 表示来源
-I num : 插入,把当前规则插入为第几条。
-R num:Replays替换/修改第几条规则
-D num:删除,明确指定删除第几条规则
三、filter 表的设置
1.设置允许已经连接的和正在连接的
-i lo 允许回环接口
-dport 22 允许sshd
-dport 80 允许 httpd
-dport 53 允许 dns
iptables -A INPUT -j ACEPT 除上述规则之外的都拒绝
2.保存规则并查看
四、iptables 的地址转换
实验主机配置双网卡,eth0(172.25.254.101),eth1(192.168.0.1 ),实验主机相当于路由器,可以实现内网和外网之间通信的桥梁。
1.源地址转换
查看 策略
设置源地址的转换
测试:用 192.168.0.1 去连接172.25.254.1 ,在 172.25.254.1 这边看到的是 172.25.254.101这台主机在连接自己,当172.25.254.1 回连172.25.254.101 时,会直接连接到 172.25.254.101 但其实是192.168.0.1 连接的172.25.254.1。这个只做到了源地址的转换。
2.目的地转换
在源地转转换的基础上操作。 设制目的地转换,并查看策略
测试:同源地址转换的测试方式,但最后在172.25.254.1 回连 172.25.254.101 的时候会发现直接连接到192.168.0.1 上。则 转换成功。