web-dev-qa-db-ja.com

CygWinを使用したgithubへのSSHが機能しない

Githubでsshキーの生成方法について この記事 をフォローしましたが、パスフレーズを要求し続けますが、設定していません!パスフレーズを設定しても、パスフレーズは無視され、再度要求されます。設定した正しいキーを使用しているとのことですが、最終的には許可が拒否されます。

キー設定の詳細:

ssh-keygen -t rsa -b 4096 -C "[email protected]"

次に、デフォルトの場所を選択します~/.ssh/id_rsaそして実行clip < ~/.ssh/id_rsa.pub

次に、SSH設定のgithubアカウントに貼り付けます。また、ssh設定に次の行を追加します(~/.ssh/config):

Host github.com
    IdentityFile ~/.ssh/id_rsa.pub

ここまでは順調ですね。今すぐテストしましょう!

'ssh [email protected] -Tv' give the following output:

$ ssh -vT [email protected]
OpenSSH_7.1p2, OpenSSL 1.0.2f  28 Jan 2016
debug1: Reading configuration data ~/.ssh/config
debug1: ~/.ssh/config line 1: Applying options for github.com
debug1: Connecting to github.com [192.30.252.128] port 22.
debug1: Connection established.
debug1: identity file ~/.ssh/id_rsa.pub type 1
debug1: key_load_public: No such file or directory
debug1: identity file ~/.ssh/id_rsa.pub-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_7.1
debug1: Remote protocol version 2.0, remote software version libssh-0.7.0
debug1: no match: libssh-0.7.0
debug1: Authenticating to github.com:22 as 'git'
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client [email protected] <implicit> none
debug1: kex: client->server [email protected] <implicit> none
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug1: Server Host key: ssh-rsa SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8
debug1: Host 'github.com' is known and matches the RSA Host key.
debug1: Found key in ~/.ssh/known_hosts:1
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Offering RSA public key: ~/.ssh/id_rsa.pub
debug1: Server accepts key: pkalg ssh-rsa blen 279
Enter passphrase for key '~/.ssh/id_rsa.pub':

ただし、パスフレーズは設定されていません。 [Enter]をクリックすると、次のようになります。

debug1: No more authentication methods to try.
Permission denied (publickey).

さて、もう一度やり直しましょう。パスフレーズをもう一度要求します:(:

$ git Push -u Origin master -v
Pushing to [email protected]:myUserName/myRepo.git
Enter passphrase for key '~/.ssh/id_rsa.pub':
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

完全を期すために、パスフレーズを設定しても何も解決されません。

$ ssh-keygen -f id_rsa -p
Enter new passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved with the new passphrase.

それが機能しない理由はありますか? :(

2
eddyP23

設定が間違っています。オプションIdentityFilepub拡張子なし)には、公開鍵ではなく秘密鍵を提供する必要があります。

Host github.com
    IdentityFile ~/.ssh/id_rsa
2
Jakuje