如何在 Ubuntu 20.04 中永久禁用特定网络接口

如何在 Ubuntu 20.04 中永久禁用特定网络接口

我希望永久禁用 Ubuntu 20.04 中的一个特定网络接口,但找不到方法。

我尝试了以下两种方法,加上服务器重启,但没有帮助:

  1. 在 /etc/network/interfaces 中添加了“iface eth0 inet manual”
  2. 在 /etc/netplan/ 的 yaml 文件中,将“可选:true”添加到“网络:> 以太网:> %interface-id%”

我读到有第三种禁用网络驱动程序的方法,但我不想深入研究。

有任何想法吗?

答案1

是的,我最终做到了这一点,另外还有另一件事。

奇怪的是,Ubuntu 没有可靠且简单地禁用接口的方法。

我将在这里发布我最终所做的事情,就像我在另一个论坛上发布的那样:

好的,我找到了一种间接解决这个问题的解决方法,但我认为它相当不错。

该解决方案由两个主要步骤组成,两个步骤并行使用:

  1. 将接口连接到虚拟 VLAN - 在服务器 VPS 的管理门户上 - 我创建了一个虚拟 VLAN,并将相关接口连接到它,而不是连接到公共 IP。此接口是连接到此 VLAN 的唯一东西,因此即使接口处于“UP”状态,它也无法与任何东西通信,当然不能与互联网通信

  2. 每次服务器启动时自动关闭接口:

A. 我创建了一个关闭接口的脚本。由于我使用的是 Ubuntu,因此它是:ip link set down(将占位符替换为接口的实际 ID 名称,例如 eth1,因此 ip link set eth1 down)(您可以查看接口列表、它们的 IP 地址以及它们是处于 UP 还是 DOWN - 使用命令:ip addr)

假设该文件的路径是 /scripts/shutdown-interface-eth1.sh

B. 我将文件设置为可执行文件,使用以下命令:chmod +x /scripts/shutdown-interface-eth1.sh

C. 我使用以下命令进入 Linux 调度程序 crontab 的编辑模式:crontab -e

D.我在作业列表末尾添加了以下行@reboot /scripts/shutdown-interface-eth1.sh然后我保存了这个更改

就这些了,朋友们!:)

相关内容