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

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


<zone>
  <short>Publicshort>
  <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>
  
  <rule family="ipv4">
    <source address="10.1.1.13/32"/>
    <accept/>
  rule>
  
  <rule family="ipv4">
    <source address="10.1.2.0/24"/>
    <accept/>
  rule>
  
  <rule family="ipv4">
    <source address="10.1.3.0/24"/>
    <port protocol="tcp" port="22"/>
    <accept/>
  rule>
  
  <rule family="ipv4">
    <source address="10.1.4.0/24"/>
    <port protocol="tcp" port="1000-1200"/>
    <accept/>
  rule>
zone>

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

$ sudo firewall-cmd --reload

你可能感兴趣的:(运维,Linux)