大家好,又见面了,我是你们的朋友全栈君。
注:来自同事的笔记。
如果防火墙开启,我们pingLinux服务器的IP会ping不通,所以我们要对防火墙进行设置(一般情况下只需执行1里边的命令就可以了):
1、firewalld的基本使用
启动防火墙: systemctl start firewalld
查看防火墙状态: systemctl status firewalld
停止防火墙: systemctl disable firewalld
禁用防火墙: systemctl stop firewalld
屏蔽:systemctl mask firewalld 屏蔽防火墙服务(让它不能启动) ln -s ‘/dev/null”/etc/systemd/system/firewalld.service’ 取消屏蔽:systemctl unmask firewalld 显示服务(如 firewalld.service) rm ‘/etc/systemd/system/firewalld.service’
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
修改端口启用
在每次修改 端口和服务后 /etc/firewalld/zones/public.xml 文件就会被修改 所以也可以在文件中之间修改 然后重新加载
#systemctl start firewalld.service //开启服务
#systemctl enable firewalld.service //开机制动启动
#systemctl stop firewalld.service //关闭服务
#systemctl disable firewalld.service //禁止开机启动
获取 firewalld 状态
firewall-cmd –state
此举返回 firewalld 的状态,没有任何输出。可以使用以下方式获得状态输出:
firewall-cmd –state && echo “Running” || echo “Not running”
在 Fedora 19 中, 状态输出比此前直观:
# rpm -qf $( which firewall-cmd ) firewalld-0.3.3-2.fc19.noarch# firewall-cmd –state not running
在不改变状态的条件下重新加载防火墙:
firewall-cmd –reload
如果你使用–complete-reload,状态信息将会丢失。这个选项应当仅用于处理防火墙问题时,例如,状态信息和防火墙规则都正常,但是不能建立任何连接的情况。
获取支持的区域列表
firewall-cmd –get-zones
这条命令输出用空格分隔的列表。
获取所有支持的服务
firewall-cmd –get-services
这条命令输出用空格分隔的列表。
获取所有支持的ICMP类型
firewall-cmd –get-icmptypes
这条命令输出用空格分隔的列表。
列出全部启用的区域的特性
firewall-cmd –list-all-zones
输出格式是:
<zone> interfaces: <interface1> .. services: <service1> .. ports: <port1> .. forward-ports: <forward port1> .. icmp-blocks: <icmp type1> ….
输出区域 <zone> 全部启用的特性。如果生略区域,将显示默认区域的信息。
firewall-cmd [–zone=<zone>] –list-all
获取默认区域的网络设置
firewall-cmd –get-default-zone
设置默认区域
firewall-cmd –set-default-zone=<zone>
流入默认区域中配置的接口的新访问请求将被置入新的默认区域。当前活动的连接将不受影响。
获取活动的区域
firewall-cmd –get-active-zones
这条命令将用以下格式输出每个区域所含接口:
<zone1>: <interface1> <interface2> ..<zone2>: <interface3> ..
根据接口获取区域
firewall-cmd –get-zone-of-interface=<interface>
这条命令将输出接口所属的区域名称。
将接口增加到区域
firewall-cmd [–zone=<zone>] –add-interface=<interface>
如果接口不属于区域,接口将被增加到区域。如果区域被省略了,将使用默认区域。接口在重新加载后将重新应用。
修改接口所属区域
firewall-cmd [–zone=<zone>] –change-interface=<interface>
这个选项与 –add-interface 选项相似,但是当接口已经存在于另一个区域的时候,该接口将被添加到新的区域。
从区域中删除一个接口
firewall-cmd [–zone=<zone>] –remove-interface=<interface>
查询区域中是否包含某接口
firewall-cmd [–zone=<zone>] –query-interface=<interface>
返回接口是否存在于该区域。没有输出。
列举区域中启用的服务
firewall-cmd [ –zone=<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”
service iptables status可以查看到iptables服务的当前状态。
但是即使服务运行了,防火墙也不一定起作用,你还得看防火墙规则的设置 iptables -L
在此说一下关于启动和关闭防火墙的命令:
1) 重启后生效
开启: chkconfig iptables on
关闭: chkconfig iptables off
2) 即时生效,重启后失效
开启: service iptables start
关闭: service iptables stop
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/190709.html原文链接:https://javaforall.cn