1 回答

TA貢獻1848條經(jīng)驗 獲得超6個贊
ssh 隧道是一種可行的保護服務的措施,盡管有時很棘手。
棘手的部分是隧道可能會崩潰,而發(fā)生這種情況時您無能為力,因為隧道是在應用程序外部創(chuàng)建的。
然而,對于 MongoDB 來說,它還帶來了一些相當討厭的副作用:您需要對設置和 DNS 進行大量修改才能設置和運行副本,更不用說分片了。
如果您啟用身份驗證(這并不難)和 TLS 以及適當?shù)陌踩胧?strong>然后將您的 MongoDB 服務器綁定到 0.0.0.0 或您用于連接到機器的 IP 地址,那就更好了。
旁注:確保您安裝了諸如fail2ban或denyhosts之類的強力攔截器,配置為保護MongoDB并測試是否這樣做。
如果上述總和看起來太復雜,您應該非常徹底地考慮是否不應該使用托管 MongoDB 服務,例如MongoDB Inc 的 Atlas或mLab。
不過,您可以按照以下方法進行操作:
$?ssh?user@linuxhost?-N?-f?-L?27017:127.0.0.1:27017 Password:
輸入密碼。該進程將進入后臺,您可以通過以下方式檢查它是否仍在運行
$?ps?ax?|?grep?ssh
這將打開到遠程主機的 ssh 隧道,打開端口 27017(運行命令的計算機上的第一個端口),并通過 ssh 連接將其隧道連接到端口 27017 上的 127.0.0.1(遠程主機的本地主機地址) 。
現(xiàn)在,您只需設置&mgo.DialInfo{Addrs:[]string{"127.0.0.1:27017"}}
- 1 回答
- 0 關(guān)注
- 187 瀏覽
添加回答
舉報