Ssh
如何在無法訪問的客戶端電腦上掛載公共無法訪問的伺服器的遠端 sshfs 目錄?
這是@Andrei的問題的延伸
如何通過中間機掛載遠端 SSHFS?隧道?
我處於相同的情況,我想掛載一個遠端目錄,但不同之處在於兩台機器
A
都B
沒有公開暴露在網際網路上。A
是我當地的工作站。所以我既不能從 ssh
A -> B
也不能B -> A
.我經常做的是從租用的虛擬伺服器 (VPS) 建立反向
B -> C
連接C
。通過.@reboot
_cron
user@pcB $ ssh -R 2048:localhost:22 -p<port> user@serverC
然後,從
A -> B
我走中間路線A -> C -> B
。user@pcA $ ssh serverC user@serverC $ ssh -p 2048 user@localhost user@pcB $ # okay, logged in.
我正在尋找一種將目錄掛載
pcB:/home/user
到pcA
.如何使用 ssh 通過另一台 pc 連接到 pc類似,但提供的解決方案在這種情況下不起作用:在我的情況下,連接映射
A -> C <- B
不是A -> C -> B
.
這比我想像的要容易!
所要做的就是將 的埠綁定到
2048
上serverC
的埠pcA
。為簡單起見,我使用相同的埠號2048
:user@pcA $ ssh -L 2048:localhost:2048 user@serverC
需要保持此終端視窗打開。
然後,在
pcB:/home/user
本地安裝目錄pcA
如下所示:sshfs -o port=2048 user@localhost:/home/user/ /mnt/pcB
*很好的副作用:*這意味著您還可以使用高效的 X 伺服器連接,例如
freeNX
或vnc
檢索pcB
. 只需連接到localhost:2048
機器並使用正確的憑據(使用者名/密碼)pcB
!如果您不想為連接保持終端打開,請使用:
ssh -NfL 2048:localhost:2048 user@serverC
請注意,這樣做可能會違反您雇主/組織的安全政策,因此請確保獲得適當的權限。