公开一个私人的networking服务器框到互联网

如何将我的一个具有networking服务器的专用networking盒公开到互联网?

tap1 ,A盒有两个接口: eth0tap1eth0用来连接ISP,我的IP是77.37.194.101 。 方框B连接到tap1 ,在该子网框A中具有IP 10.1.1.1和方框B 10.1.1.16 。 如何使框B从77.37.194.101互联网可到达?

两台机器都有Ubuntu。

一种select是通过框A上的netfilter进行DNAT :

 iptables -t nat -A PREROUTING -p tcp -d 77.37.194.101 --dport 80 -j DNAT --to-destination 10.1.1.16. 

这只显示端口80。

Tap接口是虚拟的,通常用于虚拟化。 如果是这种情况,您应该为DMZ创build另一个Tap界面。 将DMZ tap接口分配给虚拟服务器。 在DMZ接口上不应该有分配给主机的IP,并且不应该有分配给DMZ中任何机器的内部networking。 然后使用NAT路由。 这样,如果服务器被黑客攻击,那么没有内部networking连接主机和其他机器或虚拟机。 (虚拟化黑客的风险仍然很小,但比外部访问内部networking要安全得多。)

虚拟机或物理机上的安全预防措施和路由应该是相同的。 快速阅读任何标准的防火墙Howto的。 (monowall,ipcop等)

如果您只是在内部networking上进行NAT路由,那么您的networking服务器中的任何妥协都将使您可以完全访问整个内部networking和主机,以及虚拟内部networking上的所有虚拟机。

shell访问和文件传输应该通过SSH到虚拟,永远不会在内部共享文件访问(SMB,NFS等)。