搜索

1、firewalld的基本使用

启动: systemctl start firewalld
查看状态: systemctl status firewalld
停止: systemctl disable firewalld
禁用: systemctl stop firewalld
2.systemctl是CentOS7的服务管理工具中主要的工具,它融合之前service和chkconfig的功能于一体。
启动一个服务:systemctl start firewalld.service
关闭一个服务:systemctl stop firewalld.service
重启一个服务:systemctl restart firewalld.service
显示一个服务的状态:systemctl status firewalld.service
在开机时启用一个服务:systemctl enable firewalld.service
在开机时禁用一个服务:systemctl disable firewalld.service
查看服务是否开机启动:systemctl is-enabled firewalld.service
查看已启动的服务列表:systemctl list-unit-files|grep enabled
查看启动失败的服务列表:systemctl --failed

3.配置firewalld-cmd

查看版本: firewall-cmd --version
查看帮助: firewall-cmd --help
显示状态: firewall-cmd --state
查看所有打开的端口: firewall-cmd --zone=public --list-ports
更新防火墙规则: firewall-cmd --reload
查看区域信息: firewall-cmd --get-active-zones
查看指定接口所属区域: firewall-cmd --get-zone-of-interface=eth0
拒绝所有包:firewall-cmd --panic-on
取消拒绝状态: firewall-cmd --panic-off
查看是否拒绝: firewall-cmd --query-panic
那怎么开启一个端口呢
添加

firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,没有此参数重启后失效)

重新载入

firewall-cmd --reload

查看

firewall-cmd --zone= public --query-port=80/tcp

删除

firewall-cmd --zone= public --remove-port=80/tcp --permanent

获取 firewalld 状态

firewall-cmd --state

在不改变状态的条件下重新加载防火墙:

firewall-cmd --reload

获取支持的区域列表

firewall-cmd --get-zones

这条命令输出用空格分隔的列表。
获取所有支持的服务

firewall-cmd --get-services

这条命令输出用空格分隔的列表。
获取所有支持的ICMP类型

firewall-cmd --get-icmptypes

这条命令输出用空格分隔的列表。
列出全部启用的区域的特性

firewall-cmd --list-all-zones

输出格式是:
n interfaces: ..n services: ..n ports: ..n forward-ports: ..n icmp-blocks: ....
输出区域 全部启用的特性。如果生略区域,将显示默认区域的信息。

firewall-cmd [--zone=] --list-all

获取默认区域的网络设置

firewall-cmd --get-default-zone

设置默认区域

firewall-cmd --set-default-zone=

流入默认区域中配置的接口的新访问请求将被置入新的默认区域。当前活动的连接将不受影响。
获取活动的区域

firewall-cmd --get-active-zones

这条命令将用以下格式输出每个区域所含接口:
: ..: ..
根据接口获取区域

firewall-cmd --get-zone-of-interface=

这条命令将输出接口所属的区域名称。
将接口增加到区域

firewall-cmd [--zone=] --add-interface=

如果接口不属于区域,接口将被增加到区域。如果区域被省略了,将使用默认区域。接口在重新加载后将重新应用。
修改接口所属区域

firewall-cmd [--zone=] --change-interface=

这个选项与 –add-interface 选项相似,但是当接口已经存在于另一个区域的时候,该接口将被添加到新的区域。
从区域中删除一个接口

firewall-cmd [--zone=] --remove-interface=

查询区域中是否包含某接口

firewall-cmd [--zone=] --query-interface=

返回接口是否存在于该区域。没有输出。
列举区域中启用的服务

firewall-cmd [ --zone= ] --list-services

启用应急模式阻断所有网络连接,以防出现紧急状况

firewall-cmd --panic-on

禁用应急模式

firewall-cmd --panic-off

代码如下 复制代码
应急模式在 0.3.0 版本中发生了变化
在 0.3.0 之前的 FirewallD版本中, panic 选项是 –enable-panic 与 –disable-panic.
查询应急模式

firewall-cmd --query-panic

此命令返回应急模式的状态,没有输出。可以使用以下方式获得状态输出:

firewall-cmd --query-panic && echo \"On\" || echo \"Off\"

处理运行时区域

运行时模式下对区域进行的修改不是永久有效的。重新加载或者重启后修改将失效。

启用区域中的一种服务

firewall-cmd [--zone=] --add-service= [--timeout=]

此举启用区域中的一种服务。如果未指定区域,将使用默认区域。如果设定了超时时间,服务将只启用特定秒数。如果服务已经活跃,将不会有任何警告信息。
例: 使区域中的ipp-client服务生效60秒:

firewall-cmd --zone=home --add-service=ipp-client --timeout=60

例: 启用默认区域中的http服务:

firewall-cmd --add-service=http

禁用区域中的某种服务

firewall-cmd [--zone=] --remove-service=

此举禁用区域中的某种服务。如果未指定区域,将使用默认区域。
例: 禁止home区域中的http服务:

firewall-cmd --zone=home --remove-service=http

区域种的服务将被禁用。如果服务没有启用,将不会有任何警告信息。
查询区域中是否启用了特定服务

firewall-cmd [--zone=] --query-service=

如果服务启用,将返回1,否则返回0。没有输出信息。
启用区域端口和协议组合

firewall-cmd [--zone=] --add-port=[-]/ [--timeout=]

此举将启用端口和协议的组合。端口可以是一个单独的端口 或者是一个端口范围 - 。协议可以是 tcp 或 udp。
禁用端口和协议组合
firewall-cmd [--zone=] --remove-port=[-]/ 查询区域中是否启用了端口和协议组合
firewall-cmd [--zone=] --query-port=[-]/ 如果启用,此命令将有返回值。没有输出信息。
启用区域中的IP伪装功能

firewall-cmd [--zone=] --add-masquerade

此举启用区域的伪装功能。私有网络的地址将被隐藏并映射到一个公有IP。这是地址转换的一种形式,常用于路由。由于内核的限制,伪装功能仅可用于IPv4。
禁用区域中的IP伪装

firewall-cmd [--zone=] --remove-masquerade

查询区域的伪装状态

firewall-cmd [--zone=] --query-masquerade

如果启用,此命令将有返回值。没有输出信息。
启用区域的ICMP阻塞功能

firewall-cmd [--zone=] --add-icmp-block=

此举将启用选中的Internet控制报文协议(ICMP)报文进行阻塞。ICMP报文可以是请求信息或者创建的应答报文,以及错误应答。
禁止区域的ICMP阻塞功能

firewall-cmd [--zone=] --remove-icmp-block=

查询区域的ICMP阻塞功能

firewall-cmd [--zone=] --query-icmp-block=

如果启用,此命令将有返回值。没有输出信息。
例: 阻塞区域的响应应答报文:

firewall-cmd --zone=public --add-icmp-block=echo-reply

在区域中启用端口转发或映射

firewall-cmd [--zone=] --add-forward-port=port=[-]:proto= { :toport=[-] | :toaddr=

| :toport=[-]:toaddr=
}

端口可以映射到另一台主机的同一端口,也可以是同一主机或另一主机的不同端口。端口号可以是一个单独的端口 或者是端口范围 - 。协议可以为 tcp 或udp 。目标端口可以是端口号 或者是端口范围 - 。目标地址可以是 IPv4 地址。受内核限制,端口转发功能仅可用于IPv4。
禁止区域的端口转发或者端口映射

firewall-cmd [--zone=] --remove-forward-port=port=[-]:proto= { :toport=[-] | :toaddr=
| :toport=[-]:toaddr=
}

查询区域的端口转发或者端口映射

firewall-cmd [--zone=] --query-forward-port=port=[-]:proto= { :toport=[-] | :toaddr=
| :toport=[-]:toaddr=
}

如果启用,此命令将有返回值。没有输出信息。
例: 将区域home的ssh转发到127.0.0.2

firewall-cmd --zone=home --add-forward-port=port=22:proto=tcp:toaddr=127.0.0.2

处理永久区域
永久选项不直接影响运行时的状态。这些选项仅在重载或者重启服务时可用。为了使用运行时和永久设置,需要分别设置两者。 选项 –permanent 需要是永久设置的第一个参数。

获取永久选项所支持的服务

firewall-cmd --permanent --get-services

获取永久选项所支持的ICMP类型列表

firewall-cmd --permanent --get-icmptypes

获取支持的永久区域

firewall-cmd --permanent --get-zones

启用区域中的服务

firewall-cmd --permanent [--zone=] --add-service=

此举将永久启用区域中的服务。如果未指定区域,将使用默认区域。
禁用区域中的一种服务

firewall-cmd --permanent [--zone=] --remove-service=

查询区域中的服务是否启用

firewall-cmd --permanent [--zone=] --query-service=

如果服务启用,此命令将有返回值。此命令没有输出信息。
例: 永久启用 home 区域中的 ipp-client 服务

firewall-cmd --permanent --zone=home --add-service=ipp-client

永久启用区域中的一个端口-协议组合
firewall-cmd --permanent [--zone=] --add-port=[-]/ 永久禁用区域中的一个端口-协议组合
firewall-cmd --permanent [--zone=] --remove-port=[-]/ 查询区域中的端口-协议组合是否永久启用
firewall-cmd --permanent [--zone=] --query-port=[-]/ 如果服务启用,此命令将有返回值。此命令没有输出信息。
例: 永久启用 home 区域中的 https (tcp 443) 端口

firewall-cmd --permanent --zone=home --add-port=443/tcp

永久启用区域中的伪装

firewall-cmd --permanent [--zone=] --add-masquerade

此举启用区域的伪装功能。私有网络的地址将被隐藏并映射到一个公有IP。这是地址转换的一种形式,常用于路由。由于内核的限制,伪装功能仅可用于IPv4。
永久禁用区域中的伪装

firewall-cmd --permanent [--zone=] --remove-masquerade

查询区域中的伪装的永久状态

firewall-cmd --permanent [--zone=] --query-masquerade

如果服务启用,此命令将有返回值。此命令没有输出信息。
永久启用区域中的ICMP阻塞

firewall-cmd --permanent [--zone=] --add-icmp-block=

此举将启用选中的 Internet 控制报文协议 (ICMP) 报文进行阻塞。 ICMP 报文可以是请求信息或者创建的应答报文或错误应答报文。
永久禁用区域中的ICMP阻塞

firewall-cmd --permanent [--zone=] --remove-icmp-block=

查询区域中的ICMP永久状态

firewall-cmd --permanent [--zone=] --query-icmp-block=

如果服务启用,此命令将有返回值。此命令没有输出信息。
例: 阻塞公共区域中的响应应答报文:

firewall-cmd --permanent --zone=public --add-icmp-block=echo-reply

在区域中永久启用端口转发或映射

firewall-cmd --permanent [--zone=] --add-forward-port=port=[-]:proto= { :toport=[-] | :toaddr=

| :toport=[-]:toaddr=
}

端口可以映射到另一台主机的同一端口,也可以是同一主机或另一主机的不同端口。端口号可以是一个单独的端口 或者是端口范围 - 。协议可以为 tcp 或udp 。目标端口可以是端口号 或者是端口范围 - 。目标地址可以是 IPv4 地址。受内核限制,端口转发功能仅可用于IPv4。
永久禁止区域的端口转发或者端口映射

firewall-cmd --permanent [--zone=] --remove-forward-port=port=[-]:proto= { :toport=[-] | :toaddr=
| :toport=[-]:toaddr=
}

查询区域的端口转发或者端口映射状态

firewall-cmd --permanent [--zone=] --query-forward-port=port=[-]:proto= { :toport=[-] | :toaddr=
| :toport=[-]:toaddr=
}

如果服务启用,此命令将有返回值。此命令没有输出信息。
例: 将 home 区域的 ssh 服务转发到 105.15.1.15

firewall-cmd --permanent --zone=home --add-forward-port=port=22:proto=tcp:toaddr=105.15.1.15

版权属于:admin
作品采用:本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。
0
查看目录

目录

来自 《linux7防火墙基本使用及详解》
评论

  1. 评论头像
    2021-03-18 回复

    555

  2. 评论头像
    2021-03-18 回复

    该评论仅登录用户及评论双方可见

  3. 评论头像
    2021-03-18 回复

    该评论仅登录用户及评论双方可见

  4. 评论头像
    2021-03-18 回复

    该评论仅登录用户及评论双方可见

  5. 评论头像
    2021-03-18 回复

    555

  6. 评论头像
    2021-03-18 回复

    该评论仅登录用户及评论双方可见

  7. 评论头像
    2021-03-18 回复

    555

  8. 评论头像
    2021-03-18 回复

    555

博主很懒,啥都没有