今天,在使用fedora时,需要修改防火墙规则,一时间忘记了命令是什么,这里进行记录一下。 目前 fedora 28/ centos 7 使用 firewalld 作为防火墙软件;下面我就怎么简单管理防火墙规则进行记录,网上的例子很多,这里我列举我经常使用的命令,来进行备忘:

基本使用(使用这些命令需要管理员权限):

启动: systemctl start firewalld
关闭: systemctl stop firewalld
查看状态: systemctl status firewalld
开机禁用 : systemctl disable firewalld
重启一个服务:systemctl restart firewalld.service
开机启用 : systemctl enable firewalld
查看服务是否开机启动:systemctl is-enabled firewalld.service
查看已启动的服务列表:systemctl list-unit-files|grep enabled
查看启动失败的服务列表:systemctl --failed

firewall-cmd 管理防火墙:

查看版本: firewall-cmd --version
查看帮助: firewall-cmd --help
显示状态: firewall-cmd --state
更新防火墙规则: firewall-cmd --reload (在每次修改玩规则的时候,一定要使用命令来进行重新加载防火墙规则)
查看区域信息: firewall-cmd --get-active-zones
拒绝所有包:firewall-cmd --panic-on
取消拒绝状态: firewall-cmd --panic-off
查看是否拒绝: firewall-cmd --query-panic
开启和关闭一个端口:
添加
firewall-cmd --zone=public --add-port=/tcp --permanent (--permanent永久生效,没有此参数重启后失效, --zone 此参数也可以不带,这样就是查看所有域, 注意:在修改过规则后,一定要进行重新加载规则)
重新载入
firewall-cmd --reload
查看
firewall-cmd --zone= public --query-port=/tcp
删除
firewall-cmd --zone= public --remove-port=/tcp --permanent

打开特定服务:

查看可以打开的服务
# firewall-cmd --get-services
查看服务, 特定域
# firewall-cmd --zone=public --list-services
查看服务
# firewall-cmd --list-services
添加服务
# firewall-cmd --zone=public --add-service=http (可以不限制public域)注意:所有的规则在修改过后,一定要使用 reload 命令进行重新加载 firewall-cmd --reload
删除服务
# firewall-cmd --zone=public --remove-service=http

添加特定端口对应的服务:

自定义的服务,一般添加到 firewalld 的 /etc 中的配置文件夹之中:/etc/firewalld/services

当然也可以添加到 /usr/lib/firewalld/services 之中:

我们首先查看原有的服务,可见系统已经事先为我们配置好了很多知名的服务,如http, smtp, ftp 等:

root@yaowenxu /u/l/f/services# ls
amanda-client.xml elasticsearch.xml kadmin.xml nfs.xml redis.xml syslog.xml
amanda-k5-client.xml freeipa-ldaps.xml kerberos.xml nmea-.xml RH-Satellite-.xml telnet.xml
bacula-client.xml freeipa-ldap.xml kibana.xml nrpe.xml rpc-bind.xml tftp-client.xml
bacula.xml freeipa-replication.xml klogin.xml ntp.xml rsh.xml tftp.xml
bgp.xml freeipa-trust.xml kpasswd.xml openvpn.xml rsyncd.xml tinc.xml
bitcoin-rpc.xml ftp.xml kprop.xml ovirt-imageio.xml samba-client.xml tor-socks.xml
bitcoin-testnet-rpc.xml ganglia-client.xml kshell.xml ovirt-storageconsole.xml samba.xml transmission-client.xml
bitcoin-testnet.xml ganglia-master.xml ldaps.xml ovirt-vmconsole.xml sane.xml upnp-client.xml
bitcoin.xml git.xml ldap.xml pmcd.xml sips.xml vdsm.xml
ceph-mon.xml gre.xml libvirt-tls.xml pmproxy.xml sip.xml vnc-server.xml
ceph.xml high-availability.xml libvirt.xml pmwebapis.xml smtp-submission.xml wbem-https.xml
cfengine.xml https.xml managesieve.xml pmwebapi.xml smtps.xml xmpp-bosh.xml
cockpit.xml http.xml mdns.xml pop3s.xml smtp.xml xmpp-client.xml
condor-collector.xml imaps.xml minidlna.xml pop3.xml snmptrap.xml xmpp-local.xml
ctdb.xml imap.xml mongodb.xml postgresql.xml snmp.xml xmpp-server.xml
dhcpv6-client.xml ipp-client.xml mosh.xml privoxy.xml spideroak-lansync.xml zabbix-agent.xml
dhcpv6.xml ipp.xml mountd.xml proxy-dhcp.xml squid.xml zabbix-server.xml
dhcp.xml ipsec.xml mssql.xml ptp.xml ssh.xml
dns.xml ircs.xml ms-wbt.xml pulseaudio.xml syncthing-gui.xml
docker-registry.xml irc.xml murmur.xml puppetmaster.xml syncthing.xml
docker-swarm.xml iscsi-target.xml mysql.xml quassel.xml synergy.xml
dropbox-lansync.xml jenkins.xml nfs3.xml radius.xml syslog-tls.xml

我们查看 http.xml 文件的内容:

root@yaowenxu /u/l/f/services# cat http.xml
<?xml version="1.0" encoding="utf-8"?>
<service>
<short>WWW (HTTP)</short>
<description>HTTP is the protocol used to serve Web pages. If you plan to make your Web server publicly available, enable this option. This option is not required for viewing pages locally or developing Web pages.</description>
<port protocol="tcp" port=""/>
</service>

我们对新增服务进行举例:

就要新建一个服务,在/usr/lib/firewalld/services,随便拷贝一个xml文件到一个新名字,比如myservice.xml,把里面的short改为想要名字(这个名字只是为了人来阅读,没有实际影响。重要的是修改 protocol和port。修改完保存。重启firewalld服务。否则可能提示找不到刚才新建的service。

然后把新建的service添加到firewalld:

firewall-cmd --permanent --add-service=myservice

firewall-cmd --reload 后生效。


保持更新,转载请注明出处。如果对您有帮助,请点击右下角的推荐进行支持。

fedora 28 , firewalld 防火墙控制,firewall-cmd 管理防火墙规则的更多相关文章

  1. Centos7 使用firewall管理防火墙

    一.Centos7使用firewall的管理防火墙 1.firewalld基本使用 启动:systemctl start firewalld 关闭:systemctl stop firewalld 状 ...

  2. firewalld管理防火墙常用命令

    1.查看防火墙的状态 [root@localhost HMK]# firewall-cmd --state 查看防火墙的运行状态 not running [root@localhost HMK]# s ...

  3. [图文] Fedora 28 使用 Virt-Manager 创建 KVM 虚拟机以及 配置 KVM 虚拟机

    实验说明: 往后的许多实验都将以Linux平台下的 KVM虚拟机为主,所以不可少的就是 Virt-Manager 虚拟机管理器. 本章将对如何安装和使用Virt-Manager管理器进行讲解,并且会对 ...

  4. CentOS7 防火墙(firewall)的操作命令

    CentOS7 防火墙(firewall)的操作命令 安装:yum install firewalld 1.firewalld的基本使用 启动: systemctl start firewalld 查 ...

  5. 龙芯 Fedora 28 设置 VNC

    系统为龙芯版Fedora28 (床28) Fedora防火墙默认阻止了VNC所需的端口的访问,导致VNC客户端一直无法连接. 安装VNC Server sudo dnf install tigervn ...

  6. C#操作防火墙控制电脑某些软件联网

    问题: 目前公司软件刚由单机软件更改为联网软件,许多客户反映希望能够有一个功能来控制电脑上某些必用软件,如qq,公司软件联网,而其他不必要的如网页,游戏等软件不允许联网,于是向公司反映希望可以有一个功 ...

  7. fedora 28 安装 wine 运行 uTorrent 解决linux 端,pt 资源下载问题

    fedora 28 仓库中,资源比较多.使用 wine 运行windows 程序,可以一定程度上解决软件跨平台问题. 搜索: Last metadata expiration check: :: ag ...

  8. Fedora 28 打印机配置 ( HP pro 1136M ,基于Windows 打印服务器使用 smb 协议)

    Fedora 28 本身是没有打印服务的.我们需要安装下列软件: System-Config-Printer Common Unix Printing System - CUPS hplip.x86_ ...

  9. gnome extensions 推荐 (fedora 28 常用gnome 插件备份)

    当我们进行重新安装系统(fedora 28)的时候,需要初始安装一些 gnome 插件,来进行完善我们的使用. 首先我们应该进行安装 gnome-tweak 工具来进行定制化系统. tweak 可以进 ...

随机推荐

  1. springboot + mybatis

    这两天启动了一个新项目因为项目组成员一直都使用的是mybatis,虽然个人比较喜欢jpa这种极简的模式,但是为了项目保持统一性技术选型还是定了 mybatis.到网上找了一下关于spring boot ...

  2. CountDownLatch 和 CyclicBarrier 的基本使用

    CountDownLatch 和 CyclicBarrier 是并发编程中常用的辅助类,两者使用上有点类似,但又有不同. 一.CountDownLatch CountDownLatch 可是实现类似计 ...

  3. mysql 开发进阶篇系列 25 数据库RPM安装目录介绍

    一.概述 mysql可以在多个平台上运行,在windows平台上安装有noinstall包和图形化包二种方式.在linux/unix平台上有RPM包安装,二进制包(Binary Package)安装, ...

  4. Jenkins之使用Pyinstaller构建Python应用程序

    目录 1. 极简概述 2. Jenkins配置 2.1 安装JDK 2.2 安装Jenkins 3. 安装Docker 4. 使用PyInstaller构建Python应用程序 4.1 Fork 一个 ...

  5. 关系型数据库 VS NOSQL

    转载:https://mp.weixin.qq.com/s/FkoOMY8_vnqSPPTHc2PL1w 行式数据库(关系型数据库) 行式数据库有如下几个缺点: 大数据场景下 I/O 较高,因为数据是 ...

  6. 记一次升级Tomcat

    总述     JDK都要出12了,而我们项目使用的jdk却仍然还停留在JDK1.6.为了追寻技术的发展的脚步,我这边准备将项目升级到JDK1.8.而作为一个web项目,我们的容器使用的是Tomcat. ...

  7. windows BLE编程 net winform 连接蓝牙4.0

    winform 程序调用Windows.Devices.Bluetoot API 实现windows下BLE蓝牙设备自动连接,收发数据功能.不需要使用win10的UWP开发. 先贴图,回头来完善代码 ...

  8. WebForm 【上传图片】【图片验证码】

     上传图片(带水印)  1.获取要上传的图片 2.加水印 3.保存下来 using System.Drawing;   --绘画类命名空间 图片最后要用绝对路径保存       Server.MapP ...

  9. es6中的Promise学习

    关于Promise Promise实例一旦被创建就会被执行 Promise过程分为两个分支:pending=>resolved和pending=>rejected Promise状态改变后 ...

  10. Python 练习: 简单的用户登录判断

    _user = "klvchen" _passwd = " counter = 0 while counter < 3: username = raw_input( ...