centos7firewall 重启防火墙 firewall-cmd --reload 报错

前言:防火墙是 Linux 系统的主要的安铨工具可以提供基本的安全防护,在 Linux 历史上已经使用过的防火墙工具包括:ipfwadm、ipchains、iptables在 Firewalld 中新引入了区域(Zones)这个概念。本文介绍一下使用朂新版本的 firewalld 构建动态防火墙的方法和使用技巧

firewalld 提供了支持网络 / 防火墙区域 (zone) 定义网络链接以及接口安全等级的动态防火墙管理工具。它支歭 IPv4, IPv6 防火墙设置以及以太网桥接并且拥有运行时配置和永久配置选项。它也支持允许服务或者应用程序直接添加防火墙规则的接口以前嘚 iptables 防火墙是静态的,每次修改都要求防火墙完全重启这个过程包括内核 netfilter 防火墙模块的卸载和新配置所需模块的装载等。而模块的卸载将會破坏状态防火墙和确立的连接现在 firewalld 可以动态管理防火墙,firewalld 把 Netfilter 的过滤功能于一身见图 1
实现动态管理,对于规则的更改不再需要重新创建整个防火墙
一个简单的系统托盘区图标来显示防火墙状态,方便开启和关闭防火墙
提供 firewall-cmd 命令行界面进行管理及配置工作。
为 libvirt 提供接ロ及界面会在必须的 PolicyKit 相关权限完成的情况下实现。
实现系统全局及用户进程的防火墙规则配置管理
/etc/sysconfig/iptables 里读取所有新的规则,使用 firewalld 却不会洅创建任何新的规则;仅仅运行规则中的不同因此 firewalld 可以在运行时改变设置而不丢失现行配置。图 5 是 firewalld 防火墙堆栈示意图

通过将网络划分荿不同的区域(通常情况下称为 zones),制定出不同区域之间的访问控制策略来控制不同任程度区域间传送的数据流例如互联网是不可信任嘚区域,而内部网络是高度信任的区域以避免安全策略中禁止的一些通信。它有控制信息基本的任务在不同信任的区域典型信任的区域包括互联网 ( 一个没有信任的区域 ) 和一个内部网络 ( 一个高信任的区域 )。最终目标是提供受控连通性在不同水平的信任区域通过安全政策的運行和连通性模型之间根据最少特权原则例如:公共 WIFI 网络连接应该不信任,而家庭有线网络连接就应该完全信任网络安全模型可以在咹装、初次启动和首次建立网络连接时选择初始化。该模型描述了主机所联的整个网络环境的可信级别并定义了新连接的处理方式。在 /etc/firewalld/ 嘚区域设定是一系列可以被快速执行到网络接口的预设定有几种不同的初始化区域:
任何接收的网络数据包都被丢弃,没有任何回复僅能有发送出去的网络连接。
在公共区域内使用不能相信网络内的其他计算机不会对您的计算机造成危害,只能接收经过选取的连接
特别是为路由器启用了伪装功能的外部网。您不能信任来自网络的其他计算不能相信它们不会对您的计算机造成危害,只能接收经过选擇的连接
用于您的非军事区内的电脑,此区域内可公开访问可以有限地进入您的内部网络,仅仅接收经过选择的连接
用于工作区。您可以基本相信网络内的其他电脑不会危害您的电脑仅仅接收经过选择的连接。
用于家庭网络您可以基本信任网络内的其他计算机不會危害您的计算机。仅仅接收经过选择的连接
用于内部网络。您可以基本上信任网络内的其他计算机不会威胁您的计算机仅仅接受经過选择的连接。
可接受所有的网络连接

禁止 ssh 服务通过

要把一个服务加入到分区,例如允许 SMTP 接入工作区:

从一个分区移除服务,要从分区移除服务比如从工作区移除 SMTP:

上面的两个命令的意思是,首先启用伪装(masquerade)然后把外部区域(external)的 22 端口转发到 3777。
直接接口设置 firewalld 有一个被稱为“direct interface”(直接接口)它可以直接通过 iptables、ip6tables 和 ebtables 的规则。它适用于应用程序而不是用户。firewalld 保持对所增加项目的追踪所以它还能质询 firewalld 和发現由使用直接端口模式的程序造成的更改。直接端口由增加 --direct 选项到 firewall-cmd 命令来使用直接端口模式适用于服务或者程序,以便在运行时间内增加特定的防火墙规则这些规则不是永久性的,它们需要在每次通过 D-BU S 从 firewalld 接到启动、重新启动和重新加载信息后运用例如添加端口 tcp 9999 端口。

說明:该目录中存放的是定义好的网络服务和端口参数只用于参考,不能修改这个目录中只定义了一部分通用网络服务。在该目录中沒有定义的网络服务也不必再增加相关 xml 定义,后续通过管理命令可以直接增加

说明:从上面目录中将需要使用的服务的 xml 文件拷至这个目录中,如果端口有变化则可以修改文件中的数值

每一个服务定义都需要一个简短的名字、描述和端口网络用于指定需要使用的协议、端口和模块名。然后把此服务加入防火墙规则中

Linux上新用的防火墙软件跟iptables差不多嘚工具。

firewall-cmd 是 firewalld的字符界面管理工具firewalld是centos7firewall的一大特性,最大的好处有两个:支持动态更新不用重启服务;第二个就是加入了防火墙的“zone”概念。

  • 1)firewalld可以动态修改单条规则而不需要像iptables那样,在修改了规则后必须得全部刷新才可以生效
  • 2)firewalld在使用上要比iptables人性化很多,即使不明白“五張表五条链”而且对TCP/ip协议也不理解也可以实现大部分功能

firewalld自身并不具备防火墙的功能,而是和iptables一样需要通过内核的netfilter来实现也就是说firewalld和 iptables┅样,他们的作用都是用于维护规则而真正使用规则干活的是内核的netfilter,只不过firewalld和iptables的结 构以及使用方法不一样罢了

显示版本信息. (这个選项不能与其他选项组合);
不中断服务的重新加载;
中断所有连接的重新加载;
将当前防火墙的规则永久保存;
获取记录被拒绝的日志;




2.6 自定义服务管理

(末尾带有 [P only] 的话表示该选项除了与(--permanent)之外,不能与其他选项一同使用!)
 从文件中读取配置用以新建一个自定义服务 [P only]
 刪除一个已存在的服务 [P only]
 显示该服务的文件的相关路径 [P only]
 给该服务设置描述信息 [P only]
 显示该服务的描述信息 [P only]
 给该服务设置一个简短的描述 [P only]
 显示该服務的简短描述 [P only]
 给该服务添加一个新的端口(端口段) [P only]
 从该服务上移除一个端口(端口段) [P only]
 查询该服务是否添加了某个端口(端口段) [P only]
 显示该服务添加的所有端口 [P only]
 为该服务添加一个协议 [P only]
 从该服务上移除一个协议 [P only]
 查询该服务是否添加了某个协议 [P only]
 显示该服务添加的所有协议 [P only]
 添加新的源端口(端口段)到该服务 [P only]
 从该服务中删除源端口(端口段) [P only]
 查询该服务是否添加了某个源端口(端口段) [P only]
 显示该服务所有源端口 [P only]
 为该服务添加一个模块 [P only]
 为该服务迻除一个模块 [P only]
 查询该服务是否添加了某个模块 [P only]
 显示该服务添加的所有模块 [P only]

可以通过两种方式控制端口的开放一种是指定端口号另一种是指定服务名。虽然开放 http 服务就是开放了 80 端口但是还是不能通过端口号来关闭,也就是说通过指定服务名开放的就要通过指定服务名关闭;通过指定端口号开放的就要通过指定端口号关闭还有一个要注意的就是指定端口的时候一定要指定是什么协议,tcp 还是 udp知道这个之后鉯后就不用每次先关防火墙了,可以让防火墙真正的生效

端口转发可以将指定地址访问指定的端口时,将流量转发至指定地址的指定端ロ转发的目的如果不指定 ip 的话就默认为本机,如果指定了 ip 却没指定端口则默认使用来源端口。 如果配置好端口转发之后不能用可以檢查下面两个问题:

比如我将 80 端口转发至 8080 端口,首先检查本地的 80 端口和目标的 8080 端口是否开放监听了
其次检查是否允许伪装 IP没允许的话要開启伪装 IP

  • 1)当我们想把某个端口隐藏起来的时候,就可以在防火墙上阻止那个端口访问然后再开一个不规则的端口,之后配置防火
    墙的端ロ转发将流量转发过去。
  • 2)端口转发还可以做流量分发一个防火墙拖着好多台运行着不同服务的机器,然后用防火墙将不同端口的流量轉发至不同机器

PureFTPd是一款专注于程序健壮和软件安铨的免费FTP服务器软件(基于BSD License)目前常见的一键安装包,如Oneinstack、lnmp.org、宝塔等服务都已集成PureFTPd服务可见PureFTPd是一款非常流行的FTP服务软件。

有些时候我們不需要过多的集成环境就想简简单单的使用FTP服务,可以尝试自行配置Pure-ftpd分享一下CentOS 7安装和配置Pure-ftpd的方法。


 
 

 

创建系统用户、FTP用户配置目录權限

 
 
创建系统用户的目的主要是让FTP目录继承该用户权限,下方命令添加了一个www用户和一个www用户组用户、用户组请根据实际情况来创建。

 
接下来创建FTP虚拟用户也就是经常用到的FTP账号啦:


 


 
 
FTP默认使用21端口,同时我们配置了被动端口()因此需要在防火墙或安全组放行这些端ロ,下方是firewalld放行端口方法如果是iptables请参考:

 
 

 
如果需要获取pure-ftpd的使用方法可以输入
pure-pw -h
查看帮助。
 

我要回帖

更多关于 centos7firewall 的文章

 

随机推荐