有没有办法将虚拟机与 LAN 隔离开来,同时仍让外部用户可以使用?我想实现的是 VPS 类型的东西,但我不知道托管公司是如何做到的。
背景:我目前正在尝试扩展我对 UNIX 安全性的了解,我想,还有什么比提供 SSH 帐户并看看人们能破解什么更好的方法呢?这些用户的主目录还将有一个 public_html 文件夹,他们可以从 Web 访问该文件夹(http://站点/~用户名)。棘手的是将它与我的 LAN 隔离开来。如果我使用仅主机网络,则没有人可以访问它。如果我将其设置为桥接网络,则一切正常,但此框可以:
- 查看我的路由器的管理页面
- 查看网络上的其他机器
- 当然,还要查看相关的 Windows 共享。
有没有办法将它放入它自己的“虚拟 VLAN”中?我的意思是,我可以让它使用我的一个物理网络适配器,并将该线连接到交换机,但我不愿意为了一些临时用途而花钱购买具有 VLAN 功能的交换机。同样的想法也适用于防火墙将其放入 DMZ,除非当然有软件方法可以做到这一点。我当前的 DSL 调制解调器具有 DMZ 功能,可以将一台机器放入 DMZ,但我的 Web 服务器已经占用了该 DMZ(调制解调器的 DMZ 功能是否真的可以对机器进行分段,还是仅仅使其面向公众?)
我将密切监视系统是否存在滥用行为。cURL 和 wget 已被删除,并且我正在使用 trickle 将盒子的带宽限制为 20kb/s。
我可能在这里遗漏了显而易见的答案,请有人启发我。
答案1
<insert_linux_distro_of_choice_here>
您是否需要为此使用虚拟基础设施?听起来,运行中的旧/租赁期满的工作站iptables
可以很好地用作托管这些站点的 Web 服务器;完成后,您可以使用 Windows 或其他任何系统对其进行简单格式化,然后再次将其用作工作站。
至于您当前的设备,您的 DSL 调制解调器/路由器有多少个接口?您可能能够在其上设置单独的 LAN 接口,但如果它只是来自您的 ISP,我猜不行;也许如果您发布品牌/型号,我们就可以肯定地告诉您。
无论网络托管如何,都需要真正的防火墙:pfSense 在双 NIC 工作站上表现出色,并且可以免费为您提供“企业”功能(如 VPN、IDS、Squid 等)。
使用 pfSense,您还可以在任何接口上设置 VLAN,从而为您提供与 LAN 隔离的真正的 DMZ 设置,但仍位于防火墙后面,并具有您需要的任何数据包过滤规则(允许 TCP 80 入站,拒绝所有)。
答案2
路由器的 DMZ 功能可能会使服务器上的所有端口都面向公众。如果有 DNAT 功能,则应考虑使用它。您应该将虚拟服务器隔离在单独的虚拟网络上。如果您使用的是 Linux,则可以使用 IP 表来隔离服务器。这还可以记录所有访问您不希望人们访问的端口和/或主机的尝试。(即 samba、路由器等)。我发现 Shorewall 使在这种情况下配置 iptables 变得非常简单。