firewalld配置只允许指定IP地址访问

之前记录过这篇笔记:使用firewall-cmd限制ssh只能从指定IP段访问,现在对安全的要求更严格了,对内网环境的特定服务器,现在只允许指定IP或IP段进行访问,其他一律屏蔽,配置步骤如下:

# 先确认并开启firewalld服务
$ sudo systemctl status firewalld
$ sudo systemctl enable firewalld
$ sudo systemctl start firewalld
# 直接编辑xml配置文件,比用firewall-cmd命令更方便其实(CentOS7里面默认就一个public.xml配置文件)
# Ubuntu系统中的默认public.xml配置文件位于/usr/lib/firewalld/zones
$ sudo vim /etc/firewalld/zones/public.xml

配置文件修改内容,移除所有<service>标签内容,然后添加允许访问的IP或IP段:

<?xml version="1.0" encoding="utf-8"?>
<zone>
  <short>Public</short>
  <description>For use in public areas. You do not trust the other computers on networks to not harm your computer. Only selected incoming connections are accepted.</description>
  <!-- 允许单个IP地址访问本服务器所有端口 -->
  <rule family="ipv4">
    <source address="10.1.1.13/32"/>
    <accept/>
  </rule>
  <!-- 允许IP段访问本服务器所有端口 -->
  <rule family="ipv4">
    <source address="10.1.2.0/24"/>
    <accept/>
  </rule>
  <!-- 允许IP段访问本服务器指定端口 -->
  <rule family="ipv4">
    <source address="10.1.3.0/24"/>
    <port protocol="tcp" port="22"/>
    <accept/>
  </rule>
  <!-- 允许IP段访问本服务器指定端口范围 -->
  <rule family="ipv4">
    <source address="10.1.4.0/24"/>
    <port protocol="tcp" port="1000-1200"/>
    <accept/>
  </rule>
  <!-- 禁止指定IP访问本服务器 -->
  <rule family="ipv4">
    <source address="10.1.1.1"/>
    <reject/>
  </rule>

</zone>

改完配置文件后重载一下防火墙服务

$ sudo firewall-cmd --reload
    原文作者:DexterLien
    原文地址: https://blog.csdn.net/lpwmm/article/details/108062623
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞