firewalld
1.火墙介绍
1.netfilter
2.iptables
3.iptables | firewalld
2.火墙管理工具切换
在rhe8中默认使用的是firewalld
firewalld 切换 iptables
# dnf install iptables-services.x86_64 -y 安装
# systemctl stop firewalld.service
# systemctl disable firewalld.service 关闭firewalld并且开机关闭
# systemctl mask firewalld.service 为确保关闭可以冻结
# systemctl enable --now iptables.service 开启iptables并且开机启动
3. iptables的使用
/etc/sysconfig/iptables 策略记录文件(重启服务后会重新读取其内容)
永久保留策略
# service iptables save 永久保存策略
# iptables save > /etc/sysconfig/iptables 清空策略
4.火墙认证策略
默认策略中的5条链
默认的三张表
iptables命令
# iptables -t filter -I INPUT 1 -j REJECT 插入策略
# iptables -D INPUT 1 删除策略
# iptables -t filter -R INPUT 1 -s 192.168.1.33 -p tcp --dport 80 -j ACCEPT 修改策略
# iptables -N westos 新建链
# iptables -E westos text 修改链名称
# iptables -X text 删除链
数据包状态
# iptables -t filter -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 允许连接过的、正在连接的
# iptables -t filter -A INPUT -m state --state NEW -i lo -j ACCEPT 允许本地回环
# iptables -t filter -A INPUT -m state --state NEW -p tcp --dport 80 -j ACCEPT 允许端口80
# iptables -t filter -A INPUT -m state --state NEW -p tcp --dport 53 -j ACCEPT 允许端口53
# iptables -t filter -A INPUT -m state --state NEW -p tcp --dport 443 -j ACCEPT 允许端口443
# iptables -t filter -A INPUT -m state --state NEW ! -s 192.168.1.35 -p tcp --dport 22 -j ACCEPT 除了35以外的ip访问
# iptables -t filter -A INPUT -m state --state NEW -j REJECT 不允许新的访问
# service iptables save 永久保存
nat表中的snat 和 dnat
主机1 :192.168.1.35
主机2:双网卡 192.168.1.32 172.25.254.32
主机3:172.25.254.33
# sysctl -a | grep ip_forward
snat:
# iptables -t nat -A POSTROUTING -o ens224 -j SNAT --to-source 192.168.1.32
测试:在主机1中连接主机3
# ssh -l root 172.25.254.33
dnat
# iptables -t nat -A PREROUTING -i ens224 -j DNAT --to-dest 172.25.254.32
测试:在主机3中连接主机1
# ssh -l root 192.168.1.35