Linux限制ip访问的解决方案

 更新时间:2025年01月03日 08:36:34   作者:仰望星空653  
为了修复安全扫描中发现的漏洞,我们需要对某些服务设置访问限制,具体来说,就是要确保只有指定的内部IP地址能够访问这些服务,所以本文给大家介绍了Linux限制ip访问的解决方案,需要的朋友可以参考下

背景:

为了修复安全扫描中发现的漏洞,我们需要对某些服务设置访问限制。具体来说,就是要确保只有指定的内部IP地址能够访问这些服务。

解决方案:使用Firewalld防火墙规则

有两种方式可以设置这些规则:

1. 通过修改XML配置文件

首先,通过vim编辑器打开/etc/firewalld/zones/public.xml文件,然后添加以下示例规则:

<!-- 允许来自特定内部IP(如192.168.20.86/32)访问本服务器的MySQL服务(默认端口3306) -->
<rule family="ipv4">
  <source address="192.168.20.86/32"/>
  <port protocol="tcp" port="3306"/>
  <accept/>
</rule>

解释:

  • <rule>:定义了一条规则。
  • 设置规则的family属性为ipv4
  • <source>:定义了允许的IP地址。在这个例子中,192.168.20.86/32表示仅允许此IP访问。
  • <port>:确定了目标端口和协议类型。这里指定了TCP协议下的MySQL默认端口3306
  • <accept/>意味着当规则匹配时,流量将被允许通过。

2. 或者使用命令行直接添加规则

# 添加规则
firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.20.86/32" accept'

# 移除规则
firewall-cmd --permanent --zone=public --remove-rich-rule='rule family="ipv4" source address="192.168.20.86/32" accept'

注意:每次修改规则后都需要运行firewall-cmd --reload来重新加载防火墙配置。

验证方法

在其他服务器上,我们可以通过telnet命令进行验证:

telnet 192.168.20.86 3306

深度了解防火墙逻辑

防火墙工作时会依次检查每条规则。首先匹配源IP,然后是目标端口。若两者都匹配,则执行接受动作,允许流量通过。反之,则继续检查下一条规则,直至找到匹配条目或由默认策略处理。

应用场景与扩展

此方法非常适合用于加强数据库的安全控制,例如限制仅有特定IP能够连接MySQL服务器3306端口。此外,在进行网络分隔时也非常有用,确保只有受信任的设备或服务才能相互通信。

最后,在需要拒绝特定IP访问时,可以使用 <reject/><drop/> 动作:

<rule family="ipv4">
  <source address="192.168.20.86/32"/>
  <port protocol="tcp" port="3306"/>
  <reject/>
</rule>

<reject/> 会向源头发送拒绝通知,而 <drop/> 则悄无声息地丢弃流量,适用于希望不泄露系统信息的场景。

到此这篇关于Linux限制ip访问的解决方案的文章就介绍到这了,更多相关Linux限制ip访问内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • linux挂载新硬盘过程分享

    linux挂载新硬盘过程分享

    最近有个生产机由于缓存问题,硬盘不太够用,所以就加载了一块硬盘,下面把挂载硬盘的过程记录下,供大家参考
    2014-01-01
  • Linux下日志按日分割的shell

    Linux下日志按日分割的shell

    这篇文章主要介绍了Linux下日志按日分割的shell,需要的朋友可以参考下
    2016-03-03
  • linux服务器磁盘满了的三种解决方案

    linux服务器磁盘满了的三种解决方案

    这篇文章主要给大家介绍了linux服务器磁盘满了的三种解决方案,文章通过图文结合的形式给大家介绍的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-04-04
  • Linux上两种网络连接实现方式

    Linux上两种网络连接实现方式

    这篇文章主要介绍了Linux上两种网络连接实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09
  • Centos虚拟机上网配置IP方法

    Centos虚拟机上网配置IP方法

    本篇文章介绍了Centos虚拟机上网的ip配置问题,详细介绍了虚拟机的网络配置问题,感兴趣的小伙伴们可以参考一下。
    2016-10-10
  • PHP程序员玩转Linux系列 nginx初学者引导

    PHP程序员玩转Linux系列 nginx初学者引导

    这篇文章主要为大家详细介绍了PHP程序员玩转Linux系列文章,带大家初步认识一下nginx,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-04-04
  • linux下判断文件和目录是否存在的方法(总结)

    linux下判断文件和目录是否存在的方法(总结)

    下面小编就为大家带来一篇linux下判断文件和目录是否存在的方法(总结)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-01-01
  • windows下安装PEAR php5.3.1下解决出错的方法

    windows下安装PEAR php5.3.1下解决出错的方法

    在配置好了Apache2.2.14和PHP5.3.1后,最近想安装PEAR(PHP Extension and Application Repository),但是在执行批处理文件go-pear.bat的时候出现了错误
    2010-02-02
  • Linux 快速定位web路径方法

    Linux 快速定位web路径方法

    在一个虚拟主机的服务器上,有NN多站,可能我们通过某种途径搞到了一个webshell,可是找不到apache等web服务器的配置文件,找不到其他web的路徑,21f9c57b84sZmrkR这个时候就郁闷了。
    2009-07-07
  • subversion服务端配置步骤详解

    subversion服务端配置步骤详解

    本文主要介绍了subversion服务端配置步骤,安装TortoiseSVN做检出测试,大家参考使用吧
    2014-01-01

最新评论