持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第3天,点击查看活动详情
配置方法
- firewalld的配置方法主要有三种:firewall-config、firewall-cmd和直接编辑xml文件,其中 firewall-config是图形化工具,firewall-cmd是命令行工具,而对于linux来说大家应该更习惯使用命令行方式
安装
- firewalld 查看状态:
systemctl status firewalld或者firewall-cmd --state - iptables 查看状态
service iptables status
启动
- 启动 :
systemctl start firewalld - 开机启动:
systemctl enable firewalld - 关闭:
systemctl stop firewalld - 禁止开机启动;
systemctl disable firewalld
- 安装
sudo apt-get install firewalld firewall-config
测试
-
我们首先在服务器上安装一个数据库端口是3306 。 此时我们先 关闭firewald
-
此时我们通过navicat连接或者直接telnet 3306
-
那么我们再来打开firewall d
- 防火墙就拦截了3306端口,如果放行我们可以这么做
firewall-cmd --permanent --add-port=3306/tcp&& firewall-cmd reload
Firewalld 使用两个独立的配置,即临时设置和永久设置:
- 临时设置: 临时设置不会在系统重启时保持不变。这意味着临时设置不会自动保存到永久设置中。
- 永久设置: 永久设置会存储在配置文件中,将在每次重新启动时加载并成为新的临时设置。
3.1、相同点: firewalld 与 iptables 都是 linux 中防火墙的管理程序,但其实其角色主要为对于防火墙策略的管理,真正的防火墙执行者是位于内核中的netfilter
3.2、不同点: iptables 仅能通过命令行进行配置;而 firewalld 提供了图形接口,类似windows防火墙的操作方式
iptables 每一个单独更改意味着清除所有旧的规则,并从 /etc/sysconfig/iptables 中读取所有新的规则;而 firewalld 在有规则变动后,可以仅仅运行规则中的不同之处,即在 firewalld 运行时间内,改变设置时可以不丢失现行链接
iptables 的配置文件在 /etc/sysconfig/iptables 中;而 firewalld 的配置文件在 /usr/lib/firewalld/ 和 /etc/firewalld/ 中的各种 XML 文件中
iptables 没有守护进程,并不能算是真正意义上的服务;而 firewalld 有守护进程
iptables 通过控制端口来控制服务,而 firewalld 则是通过控制协议来控制端口
3.3、区别 1,firewalld可以动态修改单条规则,动态管理规则集,允许更新规则而不破坏现有会话和连接。而iptables,在修改了规则后必须得全部刷新才可以生效;
2,firewalld使用区域和服务而不是链式规则;
3,firewalld默认是拒绝的,需要设置以后才能放行。而iptables默认是允许的,需要拒绝的才去限制;
4,firewalld自身并不具备防火墙的功能,而是和iptables一样需要通过内核的netfilter来实现。也就是说,firewalld和iptables一样,它们的作用都用于维护规则,而真正使用规则干活的是内核的netfilter。只不过firewalld和iptables的结果以及使用方法不一样!
firewalld是iptables的一个封装,可以让你更容易地管理iptables规则。它并不是iptables的替代品,虽然iptables命令仍可用于firewalld,但建议firewalld时仅使用firewalld命令。