【问题标题】:Map ports on edge server to internal SSH services [closed]将边缘服务器上的端口映射到内部 SSH 服务 [关闭]
【发布时间】:2015-10-26 19:12:14
【问题描述】:

我有一个网络。

有一个具有公共 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 实现吗?

【问题讨论】:

    标签: linux network-programming iptables


    【解决方案1】:

    是的。您为 255 个端口中的每一个端口创建一个 nat。我不知道您可以在一行中完成。所以 255 行是这样的:

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

    【讨论】:

    • 看起来不错。只是不能跨接口工作。公共连接来自 eth0,内部连接来自 eth1。我需要改变什么?
    猜你喜欢
    • 1970-01-01
    • 2014-08-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-18
    • 2018-10-14
    • 1970-01-01
    • 2013-12-29
    相关资源
    最近更新 更多