#
ドキュメント

Document

自分のための備忘録です。

SSH 接続のフロー

キーペア作成

  • ※ ファイル名を変更するにはfオプションでファイル名をフルパス指定します
  • ファイル名を指定しない場合は、秘密鍵が$HOME/.ssh/id_ed25519、公開鍵が$HOME/.ssh/id_ed25519.pubになります
  • RSA形式も同様にファイル名を指定しない場合は秘密鍵が$HOME/.ssh/id_rsa、公開鍵が$HOME/.ssh/id_rsa.pubになります
  • Cオプションはコメント。省略するとユーザー@ホスト-C ""でコメントを省略することができる

ed25519形式

local$ ssh-keygen -t ed25519 -C "your_email@example.com"

RSA形式

local$ ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

ref. https://docs.github.com/en/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent

公開鍵をサーバー(authorized_keys)に設定

  • サーバーはexample.comと仮定する
  • ユーザーはfooと仮定する
# 公開鍵は id_ed25519.pub とする
local$ cat ~/.ssh/id_ed25519.pub | ssh foo@example "cat >> ~/.ssh/authorized_keys"

【重要】~/.ssh/authorized_keysを上書きしないように必ず追記>>にする。

ssh でコマンドを実行する際の注意。

SSHでリモートにコマンド実行する方法とその際にクォーテーションのエスケープを気にしないようにする方法