Misty Mistery 2024-03-07 19:46 采纳率: 33.3%
浏览 33

linux系统如何限制访问某一个IP地址,两台电脑都在同一个局域网内

linux系统如何限制访问某一个IP地址,两台电脑都在同一个局域网内,想让两台电脑不能互相ping通,怎么用指令去进行限制。

  • 写回答

6条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-03-07 19:46
    关注

    引自免费微信小程序:皆我百晓生

    在Linux系统中,要限制从一台主机到另一台主机的网络访问,可以通过配置iptables防火墙规则实现。这里以禁止两台IP地址分别为192.168.1.100和192.168.1.101的主机互相ping通为例,你需要以root权限运行以下命令:

    # 首先确保iptables服务已启动并启用开机自启(对于大多数现代Linux发行版如Ubuntu、CentOS等)
    sudo systemctl start iptables && sudo systemctl enable iptables
    
    # 添加规则阻止本机向192.168.1.101发送ICMP请求(即ping请求)
    sudo iptables -A OUTPUT -p icmp --icmp-type echo-request -d 192.168.1.101 -j DROP
    
    # 添加规则阻止转发来自192.168.1.100的ICMP请求
    sudo iptables -A INPUT -p icmp --icmp-type echo-request -s 192.168.1.100 -j DROP
    
    # 如果你的机器需要同时作为其他流量的网关,还需要阻止通过本机转发这两台主机之间的ping请求
    sudo iptables -A FORWARD -p icmp --icmp-type echo-request -s 192.168.1.100 -d 192.168.1.101 -j DROP
    sudo iptables -A FORWARD -p icmp --icmp-type echo-request -s 192.168.1.101 -d 192.168.1.100 -j DROP
    
    # 保存iptables规则以防止重启后失效(不同的Linux发行版可能有不同的命令)
    # 对于使用iptables.service的系统(如RHEL/CentOS 7+ 或 Ubuntu 15.04+)
    sudo iptables-save > /etc/sysconfig/iptables
    
    # 对于使用firewalld的系统(如Fedora或CentOS 7+默认)
    # 关闭firewalld并临时切换到iptables(或者直接在firewalld中管理规则,但此处不详述)
    sudo systemctl stop firewalld
    sudo iptables-save > /etc/sysconfig/iptables
    

    以上操作会在当前运行的iptables实例中添加规则来阻止两台电脑之间ping通。如果你希望长期生效,请务必正确保存iptables规则。

    请注意,这些规则仅针对ping操作,若要完全阻止两台主机间的所有网络通信,需根据实际需求对TCP和UDP等协议进行相应限制。另外,不同Linux发行版的防火墙管理方式可能存在差异,建议根据实际情况查阅相关文档进行设置。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 3月7日

悬赏问题

  • ¥15 各位帮我看看为什么我写的代码按钮按了没有反应,deveco studio,
  • ¥20 云南省制造业对经济增长的影响目录应该怎么罗列,就是现状那部分
  • ¥15 绘制饼图及环形图(饼图和环形图示)
  • ¥15 求一套完整的纵横四海程序。
  • ¥20 AD7606采集到电压乱飘,怎么解决呢
  • ¥60 有没有人查监控方面厉害的呢
  • ¥15 绑住完成C语言的任务
  • ¥20 vue项目打包Android apk,实现小说文本朗读功能
  • ¥50 IPv6网络,br-lan拿不到地址无法全局路由
  • ¥15 微信小程序分页查询如何设置下一页