Linux: FirewallD和Iptables防火墙 使用

本文涉及的产品
云防火墙,500元 1000GB
简介: Linux: FirewallD和Iptables防火墙 使用

防火墙是一种软件,充当用户系统和外部网络之间的屏障,允许某些数据包通过,同时丢弃其他数据包。防火墙通常在网络层上运行,即在 Ipv4 和 Ipv6 的 IP 数据包上运行。

数据包是否会通过或被阻止,取决于防火墙中针对此类数据包的规则。这些规则可以是内置的或用户定义的。进入网络的每个数据包都必须通过此防护罩,该防护罩将根据其中为此类数据包定义的规则对其进行验证。

每个规则都有一个目标操作,当数据包无法满足该规则时将应用该目标操作。在 Linux 系统上,防火墙即服务由许多软件提供,最常见的是:firewalld 和 iptables。

在 Linux 中使用了许多不同类型的防火墙,但最标准的防火墙是 Iptables 和 Firewalld,这将在本文中讨论。

什么是FirewallD

FirewallD 是 Linux 系统的动态防火墙管理器。该服务用于配置网络连接,从而决定允许哪些外部网络或内部数据包通过网络以及阻止哪些数据包。

它允许两种类型的配置:永久配置和运行时配置。运行时配置将在服务重新启动时丢失,而永久配置将在系统启动过程中保留,以便每次服务激活时都会遵循它们。

与这些配置相对应,firewallD 有两个目录,默认/后备目录(/usr/lib/firewall),丢失的系统会更新,系统配置(/etc/firewall)保持永久,并覆盖默认目录(如果给定)。这是 RHEL/CentOS 7 和 Fedora 18 中的默认服务。

什么是 iptables

Iptables 是另一个决定允许、丢弃或返回 IP 数据包的服务。 Iptables 服务管理 Ipv4 数据包,而 Ip6tables 管理 Ipv6 数据包。该服务管理一个表列表,其中每个表都出于不同的目的而维护,例如:“filter”表用于防火墙规则,“nat”表在新连接时参考,“mangle”表用于数据包更改等。

每个表还具有可以内置或用户定义的链,其中链表示一组适用于数据包的规则,从而决定该数据包的目标操作应该是什么,即必须允许、阻止或返回。该服务是 RHEL/CentOS 6/5 和 Fedora、ArchLinux、Ubuntu 等系统上的默认服务。

在本文中,我们将解释如何在 Linux 中启动、停止或重新启动 Iptables 和 FirewallD 服务。

如何启用/禁用 FirewallD 服务

如果您使用的是 CentOS/RHEL 7 或 Fedora 18+ 版本,则应按照以下说明来管理 FirewallD 服务。

启动FirewallD服务

# systemctl start firewalld

停止 FirewallD 服务

# systemctl stop firewalld

检查FirewallD的状态

# systemctl status firewalld

检查FirewallD的状态

# firewall-cmd --state

作为替代方案,您可以禁用firewalld服务,以便它不会将规则应用于数据包并再次启用所需的规则。

禁用 FirewallD 服务

# systemctl disable firewalld

启用FirewallD服务

# systemctl enable firewalld

屏蔽FirewallD服务

# systemctl mask firewalld

此外,您还可以屏蔽防火墙服务,该服务会创建firewall.service到/dev/null的符号链接,从而禁用该服务。

取消屏蔽 FirewallD 服务

# systemctl unmask firewalld

这与屏蔽服务相反。这将删除在屏蔽期间创建的服务的符号链接,从而重新启用该服务。

如何启用/禁用 IPtables 服务

在 RHEL/CentOS 6/5/4 和 Fedora 12-18 上,iptables 防火墙作为先前版本和更高版本提供,可以通过以下方式安装 iptables 服务:

# yum install iptables-services

然后,可以通过以下命令启动、停止或重新启动该服务:

启动 iptables 服务

# systemctl start iptables
OR
# service iptables start

停止 iptables 服务

# systemctl stop iptables
OR
# service iptables stop

禁用 iptables 服务

# systemctl disable iptables
Or
# service iptables save
# service iptables stop

启用 iptables 服务

# systemctl enable iptables
Or
# service iptables start

检查 iptables 服务的状态

# systemctl status iptables
OR
# service iptables status

然而,在 Ubuntu 和其他一些 Linux 发行版上,ufw 是用于管理 iptables 防火墙服务的命令。 Ufw 为用户提供了一个简单的界面来处理 iptables 防火墙服务。

启用 Ufw Iptables 防火墙

$ sudo ufw enable

禁用 Ufw Iptables 防火墙

$ sudo ufw disable

检查UFW iptables防火墙的状态

# sudo ufw status

但是,如果您想列出 iptables 中包含所有规则的链,以下命令可以帮助您实现相同的目的:

# iptables -L -n -v

总结

这些技术可以帮助您在基于 Linux 的系统中启动、停止、禁用和启用数据包管理服务。不同的Linux发行版可以有不同的默认服务,例如:Ubuntu可以将iptables作为默认和预安装的服务,而CentOS可以将firewalld作为默认配置的服务来管理IP数据包的传入和传出。

相关文章
|
3月前
|
安全 Linux 应用服务中间件
在Linux中,包过滤防火墙与代理应用防火墙有什么区别?有哪些相应的产品?
在Linux中,包过滤防火墙与代理应用防火墙有什么区别?有哪些相应的产品?
|
2月前
|
机器学习/深度学习 安全 网络协议
Linux防火墙iptables命令管理入门
本文介绍了关于Linux防火墙iptables命令管理入门的教程,涵盖了iptables的基本概念、语法格式、常用参数、基础查询操作以及链和规则管理等内容。
223 73
|
3天前
|
存储 运维 Linux
Linux防火墙firewall的使用
CentOS 7 中的 firewalld 是基于 Netfilter 的防火墙服务,支持动态配置,无需重启服务即可生效。它通过区域管理网络流量,每个区域可以设置不同的防火墙规则。默认区域为 public,可以通过命令行工具 firewall-cmd 进行管理和配置。firewalld 提供了丰富的预定义服务和区域,方便用户根据需求进行灵活配置。
8 0
|
1月前
|
运维 网络协议 安全
Linux安全运维--一篇文章全部搞懂iptables
Linux安全运维--一篇文章全部搞懂iptables
41 1
|
3月前
|
Linux 网络安全
linux关闭方防火墙的命令
linux关闭方防火墙的命令
77 2
|
3月前
|
域名解析 网络协议 Linux
在Linux中,iptables有哪相关的命令?
在Linux中,iptables有哪相关的命令?
|
3月前
|
Linux 网络安全
在Linux中,如何设置防火墙规则?
在Linux中,如何设置防火墙规则?
|
3月前
|
网络协议 Linux
在Linux中,如何使用iptables 写⼀条规则?把来源IP为192.168.1.101访问本机80端口的包直接拒绝.
在Linux中,如何使用iptables 写⼀条规则?把来源IP为192.168.1.101访问本机80端口的包直接拒绝.
|
网络协议 Linux 网络安全
Linux系列——关于防火墙iptables的常用命令
Linux系列——关于防火墙iptables的常用命令
|
网络协议 Linux 网络安全
百度搜索:蓝易云【Linux 防火墙配置(iptables和firewalld)详细教程。】
以上只是一些常见的iptables和firewalld命令示例,你可以根据自己的需求进行修改和扩展。请注意,在配置防火墙时务必小心,确保不会阻塞你所需要的合法流量,并确保保存和加载配置以使其永久生效。另外,建议在配置防火墙之前备份现有的防火墙规则以防止意外情况发生。
599 2