2015-10-26 82 views
0

我有一个网络。将边缘服务器上的端口映射到内部SSH服务

有一个公共IP地址的边缘服务器。

存在多个内部服务192.168.0.{1..255},端口22上运行的SSH可以通过专用网络从边缘服务器访问。

我有客户端从网络外部连接到边缘服务器端口范围30001-30255。我需要这些连接到内部SSH服务,像这样映射:

  • ssh -p 30001 myedgeserver.com - >192.6.0.1:22
  • ssh -p 30002 myedgeserver.com - >192.6.0.2:22
  • ...
  • ssh -p 30255 myedgeserver.com - >192.6.0.255:22

灿这可以通过iptables来实现?

回答

2

是的。你为255个端口中的每一个创建一个nat。我不知道你可以在一行中做到这一点。所以255行是这样的:

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 30001 -j DNAT \ 
    --to 192.6.0.1:22 
+0

看起来不错。只是不能跨接口工作。公共连接来自eth0,内部是eth1。我需要改变什么? –