Webデザイナーの森です。
GitLabへの.ssh接続で沼にハマったので、解決した方法を解説します。
Git初心者です。
そもそもssh接続とは
簡単に言うと安全に通信を行う通信手段です。
自分のパソコンと接続したいサーバーにの両方に鍵を作り接続します。
詳しくは下記の記事を見てください。
![](https://www.kagoya.jp/howto/wp-content/uploads/Fotolia_247857218_XS.jpg)
SSHとは?仕組みとSSHサーバーの設定をわかりやすく解説します! - カゴヤのサーバー研究室
GitLabにssh接続してみる
まずは下記の記事を参考に行いました。
![](https://qiita-user-contents.imgix.net/https%3A%2F%2Fcdn.qiita.com%2Fassets%2Fpublic%2Farticle-ogp-background-412672c5f0600ab9a64263b751f1bc81.png?ixlib=rb-4.0.0&w=1200&mark64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk3MiZoPTM3OCZ0eHQ9R2l0TGFiJUUzJTgxJUFCU1NIJUUzJTgxJUE3JUU2JThFJUE1JUU3JUI2JTlBJUUzJTgxJTk5JUUzJTgyJThCJUUzJTgxJUJFJUUzJTgxJUE3JUUzJTgxJUFFJUU2JTg5JThCJUU5JUEwJTg2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmcz05ZjE4MDBmNjZhMzAwYzg0NWRhYzUxMjQyODQ4NDU0ZA&mark-x=142&mark-y=57&blend64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZoPTc2Jnc9NzcwJnR4dD0lNDBreWFtYXdha2kmdHh0LWNvbG9yPSUyMzIxMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT0zNiZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZzPWQwY2E5ODBhM2RjYjhkZTllOTkyMTEyZDVkYzRkNzMy&blend-x=142&blend-y=486&blend-mode=normal&s=1b83d6d426c35369202445d30796f54e)
エラーが出たのはここです。
git clone git@gitlab:/test.git
を叩くと下記のように出ました。
Host key verification failed.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
SSHホスト鍵が変わっているとのこと。
一回決めてから変更していないのですが、キーを消去してもう一度手順を
やり直すも、同じ箇所で詰まりました。
権限が正しくない、、?
そこで
ssh -T git@gitlab.com
を叩くと下記のように出ました。
git@gitlab.com: Permission denied (publickey).
どうやら権限が正しくないようです。
gitlabの権限設定をした覚えはないのですが、、。
解決:パーミッションを変更
そこでぐぐりつつ進めるとパーミッションを変更できるという内容を確認しました。
ここで一度既に設定していたキーを消去し、再度キーを作り直します。
ssh-keygen -o -t rsa -b 4096 -C “your@adress"
Enter file in which to save the key (/Users/hta/.ssh/id_rsa):
その後、下記コマンドを実行します。
chmod 600 id_rsa.pub
これにより公開鍵が自分以外閲覧や編集ができなくなります。
これにより無事gitlabへSSH接続することが可能になりました。