2013-04-19 97 views
3

我試圖通過計算機B上的計算機B與計算機B上的密鑰進行隧道傳輸,從計算機A向計算機C進行ssh。我已經分享了計算機A到計算機B和從計算機B到計算機-Cssh ProxyCommand不能像普通命令一樣工作

這部作品computerA連接到computerC沒有密碼或干預鍵:

ssh -t computerB ssh computerC 

如果我把這個相同的命令在我的computerA ssh_config中它只是掛起

Host = computerC 
    ProxyCommand = ssh -t computerB ssh computerC 

我得到以下錯誤: 僞終端不會被分配,因爲標準輸入不是終端。

回答

2

試試這個:

Host computerC 
    ProxyCommand ssh computerB nc %h %p 

您可能需要改變nc(netcat的),如果它有一個不同的名稱或者是沒有在computerB的默認路徑。


說明:

ssh -t computerB ssh computerC讓您登錄到computerB通過SSH,然後從computerB通過ssh登錄你要computerC。對於每一跳---從A到B,然後B到C --- ssh建立到加密數據流過的端口22的TCP連接。

ProxyCommand禁用打開TCP連接,而是指定打開連接的自定義命令。連接的另一端應該在ssh客戶端可以與之通信的另一端有一個ssh守護進程---一個shell根本沒有用處。

相關問題