Nginx

是否可以使用 nginx 流來過濾 SSH 連接?

  • October 30, 2019

我正在嘗試設置一個 nginx 出口代理,以便與特定主機組 (*.example.com) 的所有 SSH 連接都通過代理。我有一個本地 DNS 伺服器,我將這些主機解析為代理 IP 地址。我查看了 nginx 流文件,但看起來這更適用於負載平衡,這是不同的。我要做的只是將 SSH 連接傳遞給與原始主機名匹配的上游主機。舉個例子:

ssh bob@somerandomhost.example.com —> 出口代理接收請求並驗證它是否被列入白名單 —> 將連接傳遞到公共上游主機。

這不能用 nginx 完成。與 http 協議不同,ssh 協議不會在內部傳輸“客戶端指定的主機名”。伺服器只知道客戶端想要的裸 IP 地址。

您的業務案例可能最好使用teleport解決。

引用自:https://serverfault.com/questions/989998