Okarin note

頭の整理もかねて色々と書いていきます

GithubのSSH接続の設定

パスワード認証がダメになってたらしい。(一年前。。。)
慣れていないせいか面倒だったので残しておきます。

SSHの鍵を作成する(公開鍵・秘密鍵)

ssh-keygen -t rsa

-t オプション
作成する鍵の暗号化形式を「rsa」(デフォルト)、「dsa」「ecdsa」「ed25519」から指定する https://atmarkit.itmedia.co.jp/ait/articles/1908/02/news015.html

↓出力

Generating public/private rsa key pair.
Enter file in which to save the key (/home/okayama/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
...

パスフレーズ等の設定があるようですが、
ただSSH接続したいだけなら特に設定しなくてよさそうだったのでEnterキーで先に進みます。

~/.sshの配下に以下のファイルが追加されているはずです。

pubがついている方が公開鍵です。

Githubに公開鍵を登録する

https://github.com/settings/keys

上記リンクに飛ぶとSSHキーを設定できる。 ここに生成した「SSHの公開鍵」を設定する。

New SSH Keyを押すと以下の画面に遷移する

titleは自由でよい。
自分がわかる名称を付けてあげましょう。

Keyには「id_rsa.pub」の中身を貼り付けよう。

接続テスト

接続前に設定ファイルが必要。

~/.ssh/config

Host github github.com
    HostName github.com
    User git
    IdentityFile ~/.ssh/id_rsa

以下のコマンドでテスト。

ssh -T github
Hi Okarin-K! You've successfully authenticated, but GitHub does not provide shell access.

こんな感じで出たら成功。

git pushで失敗したとき

リモートのアドレス設定がhttpsから始まっているとssh接続でpushできないので失敗する。

git remote set-utl origin git@github.com:[username]/[repositoryName]