前提・実現したいこと
sshでgithubからcloneしたい
発生している問題・エラーメッセージ
Ubuntuでgitを利用しています。
以前までは問題なくsshでcloneができていたのですが、
先日githubからリポジトリをcloneしようとしたところ、30分ほど処理が止まったのち、以下のエラーメッセージが表示されるようになりました。
$ git clone git@github.com:(ユーザー名)/(リポジトリ名).git Cloning into '(リポジトリ名)'... Connection to github.com closed by remote host. fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists.
また、以前まで問題なく利用できていたローカルリポジトリからpushを試みたところ、
同様に30分ほど処理が止まり、その後エラーメッセージが表示されました。
$ git push Connection to github.com closed by remote host. fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists.
試したこと
- 鍵の再登録やPCの再起動などを試したが、効果はなかった。
- 別のリポジトリや、新たに作成したリポジトリでcloneを試しても同様にエラーが発生した。
- sshの認証はできた。
$ ssh github.com PTY allocation request failed on channel 0 Hi (ユーザー名)! You've successfully authenticated, but GitHub does not provide shell access. Connection to github.comSclosed.
- https経由であればcloneできる。
$ git clone https://github.com/(ユーザー名)/(リポジトリ名) Cloning into '(リポジトリ名)'... remote: Enumerating objects: 20, done. remote: Total 20 (delta 0), reused 0 (delta 0), pack-reused 20 Unpacking objects: 100% (20/20), done.
自分の調べた範囲では同様の症状が見つからず、ご質問させて頂きました。
エラーの原因についてわかる方がいましたら、ご回答頂けると幸いです。
補足情報
Ubuntu 18.04.4 LTS
git version 2.17.1
3/28追記
- gitの再インストール、Ubuntuおよびgitの別アカウントからのcloneを試したが上手く行かなかった。
- https://stackoverflow.com/questions/26352189/ssh-github-works-but-not-git-push を参考に ~/.ssh/config を以下のように設定したが、変化はなかった。
Host github.com github HostName github.com User git IdentityFile "~/.ssh/id_github_rsa"
- GIT_TRACE=true で接続したところ、
$ GIT_TRACE=true git clone git@github.com:Satumaimo10/fibonacci.git 11:01:25.182599 git.c:344 trace: built-in: git clone git@github.com:Satumaimo10/fibonacci.git Cloning into 'fibonacci'... 11:01:25.184874 run-command.c:646 trace: run_command: unset GIT_DIR; ssh git@github.com 'git-upload-pack '\''Satumaimo10/fibonacci.git'\'''
上記の出力が出てから30分ほど経過したのち、
Connection to github.com closed by remote host. fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists.
同様のエラーが出力された。
以下のように鍵を作り直してみたが、cloneを実行したところ同様のエラーが発生した。
ssh-keygen -f "new_github_rsa" -t rsa -b 4096 -C "(メールアドレス)" eval "$(ssh-agent -s)" ssh-add ~/.ssh/new_github_rsa
Host github.com github HostName github.com User git IdentityFile "~/.ssh/new_github_rsa"
#3/30追記
- ssh git@github.com -v の出力結果を以下に記載しました。
$ ssh git@github.com -v OpenSSH_7.6p1 Ubuntu-4ubuntu0.3, OpenSSL 1.0.2n 7 Dec 2017 debug1: Reading configuration data /home/(ユーザー名)/.ssh/config debug1: /home/(ユーザー名)/.ssh/config line 1: Applying options for github.com debug1: Reading configuration data /etc/ssh/ssh_config debug1: /etc/ssh/ssh_config line 19: Applying options for * debug1: Connecting to github.com [52.69.186.44] port 22. debug1: Connection established. debug1: identity file /home/(ユーザー名)/.ssh/new_github_rsa type 0 debug1: key_load_public: No such file or directory debug1: identity file /home/(ユーザー名)/.ssh/new_github_rsa-cert type -1 debug1: Local version string SSH-2.0-OpenSSH_7.6p1 Ubuntu-4ubuntu0.3 debug1: Remote protocol version 2.0, remote software version babeld-2de4da3d debug1: no match: babeld-2de4da3d debug1: Authenticating to github.com:22 as 'git' debug1: SSH2_MSG_KEXINIT sent debug1: SSH2_MSG_KEXINIT received debug1: kex: algorithm: curve25519-sha256 debug1: kex: host key algorithm: rsa-sha2-512 debug1: kex: server->client cipher: chacha20-poly1305@openssh.com MAC: <implicit> compression: none debug1: kex: client->server cipher: chacha20-poly1305@openssh.com MAC: <implicit> compression: 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 /home/(ユーザー名)/.ssh/known_hosts:4 debug1: rekey after 134217728 blocks debug1: SSH2_MSG_NEWKEYS sent debug1: expecting SSH2_MSG_NEWKEYS debug1: SSH2_MSG_NEWKEYS received debug1: rekey after 134217728 blocks debug1: SSH2_MSG_EXT_INFO received debug1: kex_input_ext_info: server-sig-algs=<ssh-ed25519,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,ssh-rsa,rsa-sha2-512,rsa-sha2-256,ssh-dss> debug1: SSH2_MSG_SERVICE_ACCEPT received debug1: Authentications that can continue: publickey debug1: Next authentication method: publickey debug1: Offering public key: RSA SHA256:q1BYo5TGSROxOczENTk/el1aBZs/phEC1eEVhAurE+0 /home/(ユーザー名)/.ssh/new_github_rsa debug1: Server accepts key: pkalg ssh-rsa blen 535 debug1: Authentication succeeded (publickey). Authenticated to github.com ([52.69.186.44]:22). debug1: channel 0: new [client-session] debug1: Entering interactive session. debug1: pledge: network debug1: Sending environment. debug1: Sending env LANG = ja_JP.UTF-8 PTY allocation request failed on channel 0 debug1: client_input_channel_req: channel 0 rtype exit-status reply 0 Hi Satumaimo10! You've successfully authenticated, but GitHub does not provide shell access. debug1: channel 0: free: client-session, nchannels 1 Connection to github.com closed. Transferred: sent 3752, received 2504 bytes, in 0.4 seconds Bytes per second: sent 10532.7, received 7029.3 debug1: Exit status 1
- 今回の問題と関係あるかは分からないのですが、 -T オプションを付けてssh git@github.comを実行するとcloneしたときと同様に30分ほど止まってからエラーが発生することを確認しました。
$ ssh -T git@github.com Connection to github.com closed by remote host.
また、-T -v オプションを付けて実行すると、
$ ssh -vT git@github.com OpenSSH_7.6p1 Ubuntu-4ubuntu0.3, OpenSSL 1.0.2n 7 Dec 2017 debug1: Reading configuration data /home/(ユーザー名)/.ssh/config debug1: /home/(ユーザー名)/.ssh/config line 1: Applying options for github.com debug1: Reading configuration data /etc/ssh/ssh_config debug1: /etc/ssh/ssh_config line 19: Applying options for * debug1: Connecting to github.com [13.114.40.48] port 22. debug1: Connection established. debug1: identity file /home/(ユーザー名)/.ssh/new_github_rsa type 0 debug1: key_load_public: No such file or directory debug1: identity file /home/(ユーザー名)/.ssh/new_github_rsa-cert type -1 debug1: Local version string SSH-2.0-OpenSSH_7.6p1 Ubuntu-4ubuntu0.3 debug1: Remote protocol version 2.0, remote software version babeld-2de4da3d debug1: no match: babeld-2de4da3d debug1: Authenticating to github.com:22 as 'git' debug1: SSH2_MSG_KEXINIT sent debug1: SSH2_MSG_KEXINIT received debug1: kex: algorithm: curve25519-sha256 debug1: kex: host key algorithm: rsa-sha2-512 debug1: kex: server->client cipher: chacha20-poly1305@openssh.com MAC: <implicit> compression: none debug1: kex: client->server cipher: chacha20-poly1305@openssh.com MAC: <implicit> compression: 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 /home/(ユーザー名)/.ssh/known_hosts:4 debug1: rekey after 134217728 blocks debug1: SSH2_MSG_NEWKEYS sent debug1: expecting SSH2_MSG_NEWKEYS debug1: SSH2_MSG_NEWKEYS received debug1: rekey after 134217728 blocks debug1: SSH2_MSG_EXT_INFO received debug1: kex_input_ext_info: server-sig-algs=<ssh-ed25519,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,ssh-rsa,rsa-sha2-512,rsa-sha2-256,ssh-dss> debug1: SSH2_MSG_SERVICE_ACCEPT received debug1: Authentications that can continue: publickey debug1: Next authentication method: publickey debug1: Offering public key: RSA SHA256:q1BYo5TGSROxOczENTk/el1aBZs/phEC1eEVhAurE+0 /home/(ユーザー名)/.ssh/new_github_rsa debug1: Server accepts key: pkalg ssh-rsa blen 535 debug1: Authentication succeeded (publickey). Authenticated to github.com ([13.114.40.48]:22). debug1: channel 0: new [client-session] debug1: Entering interactive session. debug1: pledge: network debug1: Sending environment. debug1: Sending env LANG = ja_JP.UTF-8
ここで一旦処理が停止したのち、
debug1: client_input_global_request: rtype keepalive@openssh.com want_reply 1 debug1: channel 0: free: client-session, nchannels 1 Connection to github.com closed by remote host. Transferred: sent 3412, received 2308 bytes, in 780.3 seconds Bytes per second: sent 4.4, received 3.0 debug1: Exit status -1
このような結果が出力されました。
4/2追記
- ホームディレクトリ内の .gitconfig と、エラーが発生する以前にsshでcloneしたリポジトリ内の .git/config の内容を以下に記載しました。
~/.gitconfig
[user] name = (ユーザー名) email = (メールアドレス) [color] ui = auto [core] editor = vim
(リポジトリ)/.git/config
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = git@github.com:Satumaimo10/my-first-node-js.git fetch = +refs/heads/*:refs/remotes/origin/* [branch "master"] remote = origin merge = refs/heads/master
- GIT_SSH_COMMAND="ssh -vvv" git clone git@github.com:Satumaimo10/fibonacci.git を実行すると、
ここまでの出力が出てから30分ほど止まったのち、
このように出力されて終了しました。
(文字数制限のため、一部内容を外部サイトに記載しました。)
回答2件
あなたの回答
tips
プレビュー