如何在 Linux 中禁用 NIC 发送器或接收器

如何在 Linux 中禁用 NIC 发送器或接收器

是否可以禁用 NIC 中的 tx 或 rx?我正在设置网络监控机器,我想确保这台机器不会在网络上引入任何数据包。

一种方法是使用某种 netfilter 功能来阻止来自该接口的所有数据包。但这会给服务器增加额外的工作量,因为它需要过滤可能离开该接口的所有数据包。

答案1

最简单的方法是使用未连接 TX 引脚的定制电缆。电缆制作起来很简单,只需遵循正确的颜色模式即可。您还必须确保将 TX 禁用的连接器放入计算机而不是交换机中,但如果您弄错了,这很容易修复。:)

答案2

我正在设置一台网络监控机器,我想确保这台机器不会在网络上引入任何数据包。

那部分没有什么意义。

那么你打算如何使用系统本身?即使是网络监控系统也需要访问发送流量。电子邮件通知、短信通知、出站 ping 测试等。如果它只接收数据,它就无法有效运行。

答案3

如果运行 Linux,您可以使用 iptable 来阻止所有流量:

iptables -F iptables -P 输入丢弃 iptables -P 输出丢弃 iptables -P 转发丢弃

答案4

[这个问题有点老了,但我认为没有任何回应能够给出完整的答案。]

假设

  1. 场景正如 John 所描述的那样:一个网络嗅探系统,具有:

    • 一个用于远程管理的 NIC(因此必须接收和发送)
    • 第二块网卡将从网络交换机接收镜像数据包(但一定不发送)
  2. 管理接口是eth0,嗅探接口是eth1。

方法

  1. 我同意,最好的解决方案是使用经过修改的电缆(如果您的交换机支持的话)。除了网络交换机上的 ACL(见下文)之外,此电缆还是一道防线,可防止配置错误无意中通过嗅探接口泄露信息。
  2. 下面的 iptables 命令无法保护您免受通过受监控接口进行的攻击,即使使用经过修改的电缆也是如此。肯定你的嗅探系统:
    • 没有任何服务(如 ssh)监听嗅探接口
    • 在内核中禁用 IP 转发(通过 /proc/sys/net/ipv4/ip_forward 或 /etc/sysctl.conf 优先)
    • 使用独特的密码
    • 不受任何其他系统信任
    • 及时更新安全补丁
    • 在管理接口的网络交换机端口上具有入站(即从嗅探系统到交换机)ACL,以控制嗅探系统可以发出的内容
    • 在网络交换机端口上具有用于嗅探接口的入站 ACL,以丢弃所有数据包。

命令

对于Linux下的iptables:

iptables --insert OUTPUT 1 --out-interface eth1 --jump DROP
iptables --flush FORWARD
iptables --append FORWARD --jump DROP
iptables --policy FORWARD DROP

第一行在开始输出规则表,并且不应影响其他流量。

YMMV 因为我还没有测试过 ;-)。

--klodefactor

相关内容