広告 忘備録

sshの鍵作成やパスフレーズ入力省略・GitHubの設定など

10月 16, 2024

都度ググるコマンドをまとめておく。

ssh鍵作成

公開鍵・秘密鍵作成

パスフレーズは空でも作れる。セキュリティを高めたい場合はきちんと設定しておこう。

$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/(username)/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:

入力が終わると、指定したディレクトリ(またはカレントディレクトリ)に秘密鍵と公開鍵(拡張子が.pub)が作成される。

パスフレーズをWindowsに登録

鍵作成時にパスフレーズを設定した場合、vscodeでssh接続を行うたびにパスフレーズを求められてしまう。
Windowsのssh-addというコマンドであらかじめ秘密鍵とパスフレーズを設定しておこう。

まずはWindowsキーを押して、「サービス」と検索

「OpenSSH Authentication Agent」という項目を見つけたらダブルクリックし、「スタートアップの種類」を「自動」に変更。
適用し、OK。

その後上にある緑の三角をクリックすれば、SSH Agentが起動する。
その後PowerShellを開き、下記コマンドを入力し、パスフレーズを入力すればOK。

ssh-add 鍵のパス(例 C:\Users\hoge\.ssh\id_rsa)
Enter passphrase for hogehoge

パスフレーズをUbuntuに登録

keychainというソフトにあらかじめ秘密鍵とパスフレーズを登録しておくことで、都度パスフレーズの入力を求められなくなる。
WSL再起動でリセットされてしまうのが難点。

$ sudo apt install keychain
$ keychain 秘密鍵パス
$ source $HOME/.keychain/$HOST-sh

Githubにssh接続

Githubにアップロード

GitHubにログイン後、ここから公開鍵(先ほど作成したid_rsa.pubの中身)を登録する。
右上のNew SSH Key をクリックし、Title(任意の名前)とKey(公開鍵の中身)を入れてAdd SSH Key をクリック。

configファイルの作成

GitHubに公開鍵の登録が終わったら、つづいてsshの接続設定ファイルを作成。
これをやっておくと、接続するときのコマンドが楽になる。

$ vi ~/.ssh/config
Host github github.com
  HostName github.com
  IdentityFile ~/.ssh/id_git_rsa #ここに自分の秘密鍵のファイル名
  User git

接続テスト

さっそく接続をテストしてみよう。

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

これで git clone [email protected]:hoge/hoge.git のようにリポジトリを持ってくることができるようになっている。

エラー関連

PuTTY key format too new

HeidiSQL等のソフトで作った秘密鍵がはじかれることがある。これはPuTTY Key Generator で古いフォーマットの鍵に作り替えることで対応できる。

PuTTY Key Generatorをこちらからダウンロードする。
インストーラーじゃなくても、下にあるAlternative binary filesの中からputtygen.exeだけを単体でダウンロードすればOK。

ソフトを立ち上げたら、Load で変換したい秘密鍵を読み込み、上部メニューのKeyからParameters for saving key files... を選択。

ここでPPK file versionを「2」に変更してOK、Save private keyで秘密鍵を保存すれば完了。

SSH Permission denied (publickey)

接続先のサーバーに~/.ssh/authorized_keysファイルが無いと発生する。
このファイルが無い場合は新規作成して、中に公開鍵の中身を入れておこう。

パーミッションの変更も忘れずに。

$ chmod 600 ~/.ssh/authrized_keys
  • この記事を書いた人

たろう

タイ在住のアフィリエイター
最新総フォロワー数:
𝕏:
総収益 5,303円 $296.26

現在アダアフィ挑戦中|英語・タイ語ガチ勢|現地民とお酒を飲むために語学勉強

-忘備録