![在路由器/防火墙上运行 LAN 服务](https://linux22.com/image/681462/%E5%9C%A8%E8%B7%AF%E7%94%B1%E5%99%A8%2F%E9%98%B2%E7%81%AB%E5%A2%99%E4%B8%8A%E8%BF%90%E8%A1%8C%20LAN%20%E6%9C%8D%E5%8A%A1%20.png)
因此,我在一家公司工作,我们有一台 Linux 机器作为路由器/防火墙,与 ISP 通常提供的消费级路由器相比,我喜欢这种设置所获得的所有控制。
了解了这一点后,我决定构建一台迷你电脑,以便在家中拥有同样的设置,就像本指南中描述的那样:http://arstechnica.com/gadgets/2016/04/the-ars-guide-to-building-a-linux-router-from-scratch/
因此,有问题的计算机将充当路由器、DHCP 服务器和防火墙,但我家里已经有另一台 Linux 服务器,它运行可从互联网访问的 Teamspeak 服务以及一些仅适用于我的 LAN 的其他服务(例如 Samba 服务器),并且我读到过某处,出于安全原因,不建议在防火墙机器上运行只能由 LAN 访问的服务。但如果只有一台机器同时运行我的路由器服务和 LAN 服务(例如 Samba 服务器),会方便得多。
问题是:有什么方法可以使此设置正常工作,并使这台将成为路由器/防火墙的新机器以安全的方式运行我的 LAN 服务,从而使这些服务无法从 Web 访问?
答案1
您可以通过使用虚拟化来实现这一点,可以使用裸机虚拟机管理程序(ESXi、Hyper-V、KVM)或容器(Solaris Zones、*BSD Jails、Linux LXC),具体取决于您是否需要为服务器安装不同的操作系统。
关于这个想法是聪明还是糟糕,存在很多争论,所以我不会过多地向你讲解。根据你的虚拟化解决方案,有指南告诉你如何正确设置网络。我只想指出,对于单一设置,如果你必须关闭互联网访问才能在机器上执行任何操作(例如,添加 PCIe 卡),这可能会非常不方便,尤其是当你背后有一个完整的网络时。
如果您对性能方面有特殊要求(例如 VPN 流量需要强大的 CPU,空闲时不应浪费电量),并且有至少两台这样的机器,那么它会更有用。