如何安全地重新配置托管服务器上的网络?

如何安全地重新配置托管服务器上的网络?

我在数据中心托管的服务器上安装了 Ubuntu Xenial。我只有 SSH 访问权限 - 没有 iLO 卡。服务器有一个以太网连接。

我将其设置为 KVM 虚拟机管理程序。对于网络,我认为我应该使用 Public Bridge 方法(更多信息)。每个访客都会有一个公网IP地址。

我一直在尝试在本地虚拟机上设置网络,一切正常。我需要编辑/etc/network/interfaces然后运行ifdown eth0; ifup br0

我最大的担心是,在托管服务器上运行这个可能会把我锁定。我想我可以联系支持人员让他们帮助我,但我宁愿避免这种情况。有没有办法在有某种安全备份的情况下做到这一点?

答案1

简单的解决方案可能是让您的命令在后台的脚本中运行。将它们关闭,如果失败则重新启动。

您需要扩展此脚本以根据条件移入或移出您编辑的 eth0 脚本。

#!/bin/bash
ifdown eth0; ifup br0
if curl https://google.com
then
echo "Test passed."
else
ifdown br0 ; ifup eth0
fi

显然,首先在本地环境中进行测试。您可能必须让脚本休眠,以便接口真正连接到 IP。

答案2

在这种情况下,我的做法是创建一个at-job ( sudo apt install at) 来恢复我的操作。这样,我就不依赖于系统检测某些故障了。

例如

$ at now +2 min
at> /sbin/ifdown br0; /sbin ifup eth0

CTRL以+结束输入D

回到 shell 中,您可以使用 检查队列atq,可以使用 删除不必要的条目atrm(参见man at)。

相关内容