![如何在沒有使用者名稱和密碼的情況下連接到 shh 進行反向隧道](https://rvso.com/image/1665764/%E5%A6%82%E4%BD%95%E5%9C%A8%E6%B2%92%E6%9C%89%E4%BD%BF%E7%94%A8%E8%80%85%E5%90%8D%E7%A8%B1%E5%92%8C%E5%AF%86%E7%A2%BC%E7%9A%84%E6%83%85%E6%B3%81%E4%B8%8B%E9%80%A3%E6%8E%A5%E5%88%B0%20shh%20%E9%80%B2%E8%A1%8C%E5%8F%8D%E5%90%91%E9%9A%A7%E9%81%93.png)
是否可以僅使用以下命令連接到 ssh 伺服器(以建立隧道):
ssh -R sPort:localhost:cPort myDomain.com
代替:
ssh -R sPort:localhost:cPort [email protected]
(這也需要使用密碼登入)?
編輯:對問題應用建議的編輯。
答案1
預設情況下,當您未在命令中提供使用者名稱時,ssh 將使用目前使用者的使用者名稱。如果您要登入的使用者名稱與myDomain.com
目前本機使用者的使用者名稱不同,您可以在 ssh 設定中新增特定主機的設定(位於~/.ssh/config
):
Host myDomain.com
User yourUserName
要在沒有密碼的情況下登錄,您需要將公鑰複製到遠端主機,以便將其識別為授權密鑰。~/.ssh/id_rsa.pub
如果您在產生金鑰對時未變更預設值,則您的公鑰很可能會位於。若要將公鑰複製到伺服器,請在本機電腦中執行以下命令:
ssh-copy-id -i ~/.ssh/mykey [email protected]
現在您應該能夠建立隧道,而ssh -R sPort:localhost:cPort myDomain.com
無需輸入密碼。
答案2
這是一個非常有缺陷的問題。
這與 ubuntu 無關..而且與反向隧道也無關。
這將適用於命令列 SSH(任何標準實作)。
您設定了無密碼 SSH。然後您可以進行連接,使其建立反向隧道或建立常規隧道,或不建立隧道。
要設定無密碼 SSH,您可以找到它,您可以看到可以使用 ssh-copy-id ,或與手動等效的幾個命令。
然後嘿,你可以執行 ssh user@blah,對於反向隧道,你已經將其選項寫入了範例中的命令中。
你只是想要無密碼 SSH。這是一件很容易在谷歌上搜尋到的事情。
(您仍然需要指定用戶,除非遠端系統上的用戶恰好與本地系統上的用戶名相同,..所以讓seuse放置user@。另一件事是可以製作一個本地ssh 配置文件,將用戶名放入其中,然後您可以跳過使用者名稱選項)。