使い方
参考:
SSH 公開鍵認証方式で接続 | server-memo.net
公開鍵/秘密鍵のペアを作成する
ssh-keygen
コマンドを使って RSA 鍵のペアを作成する。
$ ssh-keygen -t rsa -b 4096 -C "user@example.com" -f ~/.ssh/github_rsa
接続先に ~/.ssh/github_rsa.pub
の内容を登録する。
ssh-keygen
コマンドを使って Ed25519 鍵のペアを生成する。
$ ssh-keygen -t ed25519 -C "user@example.com" -f ~/.ssh/github_ed25519
接続先に ~/.ssh/github_ed25519.pub
の内容を登録する。
参考:
2017年版 SSH 公開鍵認証で使用する秘密鍵ペアの作り方 – Qiita
お前らの SSH Keys の作り方は間違っている – Qiita
設定ファイルの書き方 (.ssh/config)
参考:
.ssh/config ファイルで SSH 接続を管理する – Qiita
SSH 接続先の情報を .ssh/config に記載する – Qiita
.ssh/config の書き方 | ぷろぐらまはっくす MkⅡ
config を書くことで SSH を便利で簡単にしよう! | one more step
~/.ssh/config による SSH 接続の管理 | mako のノート
SSH を config ファイルで管理して快適にする | WhiteNote
~/.ssh/config を使って SSH 接続を楽にする | ラクスエンジニアブログ
known_hosts
参考:
SSH 接続エラー回避方法 .ssh/known_hosts から特定のホストを削除する/削除しないで対処する3つの方法 – Qiita
SSH の known_hosts をスマートに更新する – Qiita
known_hosts からエントリを消す | 理系学生日記
.ssh/known_hosts からキーを削除する備忘録 | hyt adversaria
ssh-keygen -R で not found エラーが出る時の確認事項 | Code School
公開鍵に付けるコメントについて
GitHub で用いる公開鍵には GitHub に登録しているメールアドレスをコメントとして用いる習慣が一般的である。
参考:
SSH の鍵を作るときにちょっとだけ気にしたいこと | Developers.IO
How can I get the comment of the current authorized_keys / SSH key? – Super User
パスフレーズ
参考:
SSH 秘密鍵のパスフレーズは (付けるなら) 11文字以上にしましょうねという話 | 本当は怖いHPC
パスフレーズに使える文字 | 東北大学サイバーサイエンスセンター
フィンガープリント
参考:
SSH におけるフィンガープリントとは/ホスト認証とあわせて解説 | RURUK BLOG
アドレスファミリ
SSH コマンド
ssh
コマンドのオプションで指定する場合は、-4
または -6
を指定する。
オプション
-4
: IPv4 で接続する-6
: IPv6 で接続する
設定ファイル
.ssh/config
ファイルで AddressFamily
を指定する。
設定値
any
: どちらでも接続する (デフォルト)inet
: IPv4 のみinet6
: IPv6 のみ
参考:
.ssh/config で IPv4 と IPv6 を指定する方法 – Qiita
認証に失敗する
現象:
認証に失敗してエラーが発生する。
Host key verification failed.
原因:
known_hosts
に保存されているホスト鍵が対象ホストの鍵と一致しない。
対処法:
- 必要に応じて、
known_hosts
に保存されているホスト鍵を削除する。
参考:
SSH ホスト鍵が変わってるよ!と怒られたときの対処 – Qiita
パーミッションエラー
現象:
次のようなメッセージが表示されて、接続が拒否される。
Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
原因:
- 公開鍵認証に失敗している。
対処法:
- 接続先ホストに適切な公開鍵を登録し、接続元の適切な場所に秘密鍵を配置する。
参考:
SSH で Permission denied (publickey,gssapi-keyex,gssapi-with-mic) の原因と解決方法 | 浦下.com