比如说,如果你是一个 web 开发者并且希望你的计算机对本地网络开放(这样你的同事就可以看到你正在搭建的网站了),可以添加 http 和 https 服务。如果你是一名游戏玩家,并且在为你的游戏公会运行开源的 murmur 语音聊天服务器,那么你可以添加 murmur 服务。还有其它很多可用的服务,你可以使用下面这个命令查看:
$ sudo firewall-cmd --get-services amanda-client amanda-k5-client bacula bacula-client bgp bitcoin bitcoin-rpc ceph cfengine condor-collector ctdb dhcp dhcpv6 dhcpv6-client dns elasticsearch freeipa-ldap freeipa-ldaps ftp [...]
如果你找到了一个自己需要的服务,可以将它添加到当前的防火墙配置中,比如说:
$ sudo firewall-cmd --add-service murmur
这个命令 在你的默认区域里 添加了指定服务所需要的所有端口和协议,不过在重启计算机或者防火墙之后就会失效。如果想让你的修改永久有效,可以使用 --permanent 标志:
$ sudo firewall-cmd --add-service murmur --permanent
你也可以将这个命令用于一个非默认区域:
$ sudo firewall-cmd --add-service murmur --permanent --zone home
端口
有时候你希望允许的流量并不在 firewalld 定义的服务之中。也许你想在一个非标准的端口上运行一个常规服务,或者就是想随意开放一个端口。
举例来说,也许你正在运行开源的 虚拟桌游 软件 MapTool。由于 MapTool 服务器应该使用哪个端口这件事情并没有一个行业标准,所以你可以自行决定使用哪个端口,然后在防火墙上“开一个洞”,让它允许该端口上的流量。
实现方式和添加服务差不多:
$ sudo firewall-cmd --add-port 51234/tcp
这个命令 在你的默认区域 里将 51234 端口向 TCP 传入连接开放,不过在重启计算机或者防火墙之后就会失效。如果想让你的修改永久有效,可以使用 --permanent 标志:
$ sudo firewall-cmd --add-port 51234/tcp --permanent
你也可以将这个命令用于一个非默认区域:
$ sudo firewall-cmd --add-port 51234/tcp --permanent --zone home
在路由器的防火墙上设置允许流量和在本机上设置的方式是不同的。你的路由器可能会为它的内嵌防火墙提供一个不同的配置界面(原理上是相同的),不过这就超出本文范围了。
移除端口和服务
如果你不再需要某项服务或者某个端口了,并且设置的时候没有使用 --permanent 标志的话,那么可以通过重启防火墙来清除修改。
如果你已经将修改设置为永久生效了,可以使用 --remove-port 或者 --remove-service 标志来清除:
$ sudo firewall-cmd --remove-port 51234/tcp --permanent
你可以通过在命令中指定一个区域以将端口或者服务从一个非默认区域中移除。
$ sudo firewall-cmd --remove-service murmur --permanent --zone home
自定义区域
你可以随意使用 firewalld 默认提供的这些区域,不过也完全可以创建自己的区域。比如如果希望有一个针对游戏的特别区域,你可以创建一个,然后只有在玩儿游戏的时候切换到该区域。
如果想要创建一个新的空白区域,你可以创建一个名为 game 的新区域,然后重新加载防火墙规则,这样你的新区域就启用了:
$ sudo firewall-cmd --new-zone game --permanent success $ sudo firewall-cmd --reload
一旦创建好并且处于启用状态,你就可以通过添加玩游戏时所需要的服务和端口来实现个性化定制了。
勤勉
从今天起开始思考你的防火墙策略吧。不用着急,可以试着慢慢搭建一些合理的默认规则。你也许需要花上一段时间才能习惯于思考防火墙的配置问题,以及弄清楚你使用了哪些网络服务,不过无论是处在什么样的环境里,只要稍加探索你就可以让自己的 Linux 工作站变得更为强大。 【编辑推荐】 - 7招教会你如何释放Linux操作系统空间
- Linux虚拟地址空间和物理地址空间怎么映射的?
- 借助Valve的新编译器,Linux游戏在AMD GPU中获得了性能提升
- Linux 运维:使用 ss 命令代替 netstat
- 使xclip在Linux命令行中复制粘贴
【责任编辑:庞桂玉 TEL:(010)68476606】
点赞 0 (编辑:源码门户网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|