zoukankan      html  css  js  c++  java
  • firewalld学习--service

    service是firewalld中另外一个非常重要的概念。还是拿门卫的例子来解释。

    在iptables的时代我们给门卫下达规则时需要告诉他“所有到22号楼的人全部予以放行”、“所有到80号楼的人全部予以放行”等等,

    不过到了firewalld的时代就不需要这样了,

    而是可以直接下达像“到销售部的全部予以放行”这样的命令,然后门卫再一查发现销售部在80号楼,那么所有到80号楼的人门卫就都会放行了。

    这里的楼牌号和端口号相对应,部门名和服务名相对应,

    这样就可以理解service的作用了。

    从端口号改为服务名主要有两个好处:首先是使用服务名配置的语义清晰,不容易出错;其次在对某个服务的端口号进行修改的时候只需要修改相应的service文件就可以了,而不需要再修改防火墙方案——zone。这其实跟DNS将ip地址和域名关联了起来是一样的道理。下面学生再来给大家介绍一下service的配置文件。

    service配置文件的命名规则是<服务名>.xml,比如ssh的配置文件是ssh.xml,http的配置文件是http.xml等,他们默认保存在“/usr/lib/firewalld/services/”目录下,

    常见的服务其中都可以找到,

    如果我们想修改某个服务的配置,那么可以复制一份到“/etc/firewalld/services/”目录下然后进行修改就可以了,要想恢复默认配置直接将我们自己的配置文件删除就可以了。

    例:ssh.xml文件

    <?xml version="1.0" encoding="utf-8"?>
    <service>
      <short>SSH</short>
      <description>Secure Shell (SSH) is a protocol for logging into and executing commands on remote machines. 
            It provides secure encrypted communications.
            If you plan on accessing your machine remotely via SSH over a firewalled interface, enable this option.
            You need the openssh-server package installed for this option to be useful.
     </description> <port protocol="tcp" port="22"/> </service>

    可以看到这里配置了tcp的22号端口,所以将ssh服务配置到所使用的zone(默认public)中后tcp的22号端口就开放了。

    如果想将ssh的端口修改为222,那么只需要将ssh.xml复制一份到“/firewalld/services”中,然后将端口号修改为222就可以了。

    当然直接修改“/usr/lib/firewalld/services/”中的配置文件也可以实现,但是强烈建议不要那么做。

    明白原理之后使用起来就可以非常灵活了,

    比如我们将“/etc/firewalld/services/ssh.xml”文件复制一份到“/etc/firewalld/services/”中,然后将名字改为abc.xml,

    并且将abc这个服务配置到所使用的zone中,这时22端口就会开放。

    也就是说在zone中所配置的服务其实跟实际的服务并不存在直接联系,而是和相应配置文件中配置的内容有关系。

    firewalld的配置方法主要有三种:firewall-config、firewall-cmd和直接编辑xml文件,其中firewall-config是图形化工具,firewall-cmd是命令行工具,

  • 相关阅读:
    amazonS3文件管理工具类
    Building for production... ERROR TypeError: Cannot read property ‘createHash‘ of undefined
    nginx: [emerg] bind() to 0.0.0.0:80 failed (13: Permission denied)错误解决办法
    Git命令使用总结
    html5-语义化标签(一)
    php的初步了解
    css3 实现圆角边框的border-radius属性和实现阴影效果的box-shadow属性
    css3 transform方法常用属性
    css3 transition属性实现3d动画效果
    css3 3d展示中rotate()介绍与简单实现
  • 原文地址:https://www.cnblogs.com/a-s-m/p/11302438.html
Copyright © 2011-2022 走看看