Ubuntu 服务器(natty)通过 VirtualBox OSE 在我的 Ubuntu(natty)上运行,如何只有我可以访问我的服务器,而不是我的 LAN 中的每个内部 IP,并且两者都可以访问互联网。现在我通过桥接共享互联网,这很适合访问我的虚拟服务器。但我的 LAN 上的每个人也可以看到。
答案1
另一种可能性是使用 NAT 网络并将端口 80 转发到您的 VM。
这样,您的服务器就能够访问所有内容(互联网和 LAN),您的服务器将无法被 LAN 看到。连接到您真实计算机的端口 80 实际上将连接到您虚拟服务器的端口 80。
您可以从主机(真实计算机)将浏览器指向本地主机来检查您的 Web 服务器。
你的配置看起来应该像这样:
请注意,您不需要填写 IP 字段。
答案2
那么,让我们看看我是否理解您的要求:
- 其他 LAN 计算机一定不能访问您的服务器。
- 您的服务器必须能够访问互联网。
- 您的主机(带有 virtualbox 的 Ubuntu 盒)必须能够访问互联网(当然)。
- 您的主机必须能够访问服务器(即虚拟机)。
- 如果你的服务器可以访问你局域网上的其他主机那就没问题了。
最简单的方法可能是使用桥接选项。然后在您的服务器上设置 UFW(乌不复杂的F愤怒西全部)以丢弃(UFW 的 GUI,称为 GUFW,将其称为 DENY)来自 LAN 的流量。当然,对主机进行例外处理。这应该会阻止从 LAN 到 VM 的流量(ping 除外)。如果您想阻止 ping,您可能需要调整一些 UFW 内置规则。(如果您需要,我可以添加更多有关此内容的内容)。
另一个选项是在主机和虚拟机之间设置共享接口。然后在主机上创建一个具有静态地址的 /etc/network/interfaces。您将在虚拟机上执行相同操作(只是地址不同)。然后,您将登录到 LAN 的路由器,并使用主机作为网关,将路由添加到您用于虚拟机/主机共享接口的地址块。(您可能希望主机使用静态地址连接到路由器,这样您就不必一直更改路由)。您需要/etc/sysctl.conf
以 root 身份进行编辑并将 ip.forward 设置为 =1。然后,您将在主机上设置 UFW 以丢弃从 LAN 发往服务器的数据包。(如果您决定要这样做并询问,我将扩展并添加第二个选项的详细信息)。