1、iptables表、链、规则之间的联系:
iptables表、链、规则含义与关系.png2、iptables里面filter表和nat表都包含的链是什么:
表和链的关系(图表示例).png3、filter表作用以及包含的链:
filter表的作用.png4、nat表作用以及包括的链:
nat表的作用.png nat表的3个链的含义与作用.png5、iptables基础环境搭建:
5.1 安装iptables服务:
[root@m01 ~]#yum install iptables iptables-services
[root@m01 ~]# rpm -qa iptables-services
iptables-services-1.4.21-28.el7.x86_64
[root@m01 ~]# rpm -ql iptables-services
/etc/sysconfig/ip6tables
/etc/sysconfig/iptables #iptables 配置文件
/usr/lib/systemd/system/ip6tables.service
/usr/lib/systemd/system/iptables.service #iptables服务管理配置
5.2 优化开启、开机自启动iptables服务:
[root@m01 ~]#systemctl start iptables.service
[root@m01 ~]#systemctl enable iptables.service
5.3 检查防火墙内核模块是否加载成功:
[root@m01 ~]# lsmod |egrep 'nat|ipt|filter'
ipt_REJECT 12541 2
nf_reject_ipv4 13373 1 ipt_REJECT
iptable_filter 12810 1
xt_nat 12681 1
iptable_nat 12875 1
nf_nat_ipv4 14115 1 iptable_nat
nf_nat 26787 2 nf_nat_ipv4,xt_nat
nf_conntrack 133095 4
nf_nat,nf_nat_ipv4,xt_conntrack,nf_conntrack_ipv4
ip_tables 27126 2 iptable_filter,iptable_nat
libcrc32c 12644 3 xfs,nf_nat,nf_conntrack
5.4 手动加载内核模块:
modprobe ip_tables
modprobe iptable_filter
modprobe iptable_nat
modprobe ip_conntrack
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp
modprobe ipt_state
6、iptables命令参数:
iptables命令参数1.png iptables命令参数2.png7、iptables项目实战:
配置防火墙规则注意事项:
- 去机房重启系统或者登陆服务器删除刚才的禁止规则。
- 让机房人员重启服务器或者让机房人员拿用户密码登录进去
- 通过服务器的远程管理卡管理(推荐)
- 先写一个定时任务,每5分钟就停止防火墙
- 测试环境测试好,写成脚本,批量执行
7.1 配置规则-禁止访问22端口:
[root@m01 ~]# iptables -t filter -A INPUT -p tcp --dport 22 -j DROP
[root@m01 ~]#
Connection closed by foreign host.
Disconnected from remote host(m01) at 18:06:19.
Type `help' to learn how to use Xshell prompt.
[c:\~]$
实验发现xshell已经自动断开连接,因为22端口被封(到虚拟机上iptables -F清楚防火墙配置,然后就可以远程连接)
7.2 只让10.0.0.0/24网段进行访问:
1、只要是10.0.0.0/24 局域网的用户 访问m01 都ACCEPT
2、此例子主要限制:网段或ip地址
3、"!"表示取反
[root@m01 ~]# iptables -I INPUT -p tcp ! -s 10.0.0.0/24 -j DROP
[root@m01 ~]# iptables -nL
Chain INPUT (policy ACCEPT)
target prot opt source destination
DROP tcp -- !10.0.0.0/24 0.0.0.0/0
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
7.3 准许或禁止端口(多个端口:表示范围 1-1024范围)用法:
实例:除1到1024口外,别的都拒绝
[root@m01 ~]# iptables -I INPUT -p tcp ! --dport 1:1024 -j DROP
[root@m01 ~]# iptables -nL
Chain INPUT (policy ACCEPT)
target prot opt source destination
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp
dpts:!1:1024
DROP tcp -- !10.0.0.0/24 0.0.0.0/0
Chain FORWARD (policy ACCEPT)
7.4 准许或禁止端口(多个端口 不连续 80,433,52113,22)用法:
实例:除80,433,52113,22外,别的都拒绝:
[root@m01 ~]# iptables -I INPUT -p tcp -m multiport ! --dport 80,443,22 -
j DROP
[root@m01 ~]# iptables -nL
Chain INPUT (policy ACCEPT)
target prot opt source destination
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 multiport
dports !80,443,22
DROP tcp -- !10.0.0.0/24 0.0.0.0/0
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
网友评论