防火墙哪些配置,实战演示

169 阅读3分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 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

image.png

  • 安装 sudo apt-get install firewalld firewall-config

测试

image.png

  • 我们首先在服务器上安装一个数据库端口是3306 。 此时我们先 关闭firewald

  • 此时我们通过navicat连接或者直接telnet 3306

  • 那么我们再来打开firewall d

image.png

  • 防火墙就拦截了3306端口,如果放行我们可以这么做

firewall-cmd --permanent --add-port=3306/tcp&& firewall-cmd reload

image.png

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命令。