我正在為 git 設定 ssh 以下這指導。我之前在另一個系統上成功使用過該密鑰,希望它現在也能工作,我對其進行了測試: 並收到以下訊息:
ssh -v -T [email protected]
OpenSSH_6.4、OpenSSL 1.0.1e-fips 2013 年 2 月 11 日 debug1:讀取設定資料/etc/ssh/ssh_config debug1: /etc/ssh/ssh_config 第 51 行:套用 * 的選項 debug1:連接到 github.com [192.30.252.131] 連接埠 22。 debug1:連線已建立。 debug1:身分檔案 /home/user/.ssh/id_rsa 類型 1 debug1:身分檔案 /home/user/.ssh/id_rsa-cert 類型 -1 debug1:身分檔案 /home/user/.ssh/id_dsa 類型 -1 debug1:身分檔案 /home/user/.ssh/id_dsa-cert 類型 -1 debug1:身分識別檔 /home/user/.ssh/id_ecdsa 類型 -1 debug1:身分識別檔 /home/user/.ssh/id_ecdsa-cert 類型 -1 debug1:啟用協定2.0的相容模式 debug1:本機版本字串SSH-2.0-OpenSSH_6.4 debug1:遠端協定版本2.0,遠端軟體版本libssh-0.6.0 debug1:不符:libssh-0.6.0 debug1:SSH2_MSG_KEXINIT 已傳送 debug1:收到 SSH2_MSG_KEXINIT debug1: kex: 伺服器->客戶端 aes128-ctr hmac-sha1 無 debug1: kex: 用戶端->伺服器 aes128-ctr hmac-sha1 無 debug1:發送 SSH2_MSG_KEX_ECDH_INIT debug1:期待 SSH2_MSG_KEX_ECDH_REPLY debug1:伺服器主機金鑰:RSA 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48 debug1:主機「github.com」已知且與 RSA 主機金鑰相符。 debug1:在 /home/user/.ssh/known_hosts:1 中找到金鑰 debug1:ssh_rsa_verify:簽名正確 debug1:SSH2_MSG_NEWKEYS 已傳送 debug1:期待 SSH2_MSG_NEWKEYS debug1:收到 SSH2_MSG_NEWKEYS debug1:伺服器不允許漫遊 debug1:已傳送 SSH2_MSG_SERVICE_REQUEST debug1:收到 SSH2_MSG_SERVICE_ACCEPT debug1:可以繼續的身份驗證:publickey debug1:下一個驗證方法:publickey debug1:提供RSA公鑰:/home/user/.ssh/id_rsa debug1:可以繼續的身份驗證:publickey debug1:嘗試私鑰:/home/user/.ssh/id_dsa debug1:嘗試私鑰:/home/user/.ssh/id_ecdsa debug1:沒有更多的身份驗證方法可供嘗試。 權限被拒絕(公鑰)。
除了顯而易見的事情之外Permission denied (publickey)
,看起來 ssh 無法區分私鑰id_rsa
和公鑰id_rsa.pub
。兩者都在/home/user/.ssh/
.
那麼我是否剛剛將我的私鑰發送到[電子郵件受保護]?
我已經嘗試過的:
#建立新的公鑰 ssh-keygen -y -f ~/.ssh/id_rsa > ~/ssh/id_rsa.pub #id 已新增 ssh-添加-l 第2048章 ==數字== home/user/.ssh/id_rsa (RSA) #檢查權限 ls -l ~/.ssh -rw--------。 1 位使用者 使用者 1675 九月 3 日 09:53 id_rsa -rw-r--r--。 1 位使用者 使用者 381 一月 23 09:21 id_rsa.pub -rw-r--r--。 1 用戶 用戶 1371 一月 23 09:30known_hosts #查看/etc/ssh/ssh_conf 主持人 * GSSAPI驗證 是 ForwardX11可信 是 SendEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES SendEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT SendEnv LC_IDENTIFICATION LC_ALL LANGUAGE SendEnv X修改器 伺服器活動間隔 300 伺服器活動計數最大 2 #我覺得還不錯...
答案1
不,您沒有發送您的私鑰。 SSH 在這裡所做的只是按名稱對公鑰和私鑰進行分組。例如,id_rsa
指的是密鑰對id_rsa
和id_rsa.pub
。
「提供公鑰」意味著它將您的公鑰發送id_rsa.pub
到伺服器。然後,伺服器使用公鑰產生加密的身份驗證令牌。
當它說“嘗試私鑰”時,它將嘗試使用相應的私鑰解密該身份驗證令牌,並將其發送回伺服器進行驗證。