サーバー

SSH認証鍵の管理について

SSH用の鍵 どれ使ってるかわからない時

1.ローカル端末での SSH ログインの確認

SSHエージェントに読み込まれている鍵を確認

ssh-add -l

出力例)

256 SHA256:AbCd… id_ed25519 (ED25519) 
256 SHA256:XyZ9… id_ed25519_vps_production (ED25519)

VPS接続時のデバッグログを見る

ssh -v -i ~/.ssh/鍵ファイル user@VPS_IP
  • -v(verbose)を付けると、
    Offering public key: /home/…/id_ed25519_vps_production
    など、どの鍵ファイルを使おうとしたかがログに出る。
  • -vvv(さらに詳細)にすると完全な handshake 情報。

2.VS Code Remote-SSH でのログイン

  1. VS Code の下部ステータスバーにある緑色の「>< SSH: …」をクリック
  2. Output パネルを開き、右上のドロップダウンで “Remote-SSH” を選択
  3. 接続時のログに、
> Running script with Connection command: ssh -i /path/to/id_ed25519_vps_dev -p 2222 user@VPS_IP

 

のように、実際に組み立てられた SSH コマンドと使われた -i パラメータがわかる。

3.GitHub Actions でのデプロイ SSH

ワークフローファイルをチェック

.github/workflows/deploy.yml の中の

- name: Prepare SSH 
  run: |
    echo "${{ secrets.DEPLOY_KEY }}" > ~/.ssh/deploy_key 
- name: Deploy via SSH 
  run: |
    ssh -i ~/.ssh/deploy_key -p 2222 user@VPS_IP …

と書いてある鍵ファイルパス(~/.ssh/deploy_key)が、Actions が使う鍵。

 GithubのSecrets に登録された鍵を確認

  1. リポジトリ → SettingsSecrets and variablesActions
  2. DEPLOY_KEY の “…” をクリック → Reveal secret valuesここに表示されるのが Actions 側に流し込まれている秘密鍵の中身。

鍵ファイル名を変更したい時

mv でリネーム、必要なら SSH 設定や authorized_keys を更新する。

cd ~/.ssh 

# 例:id_ed25519_vps_develop を id_ed25519_vps_dev に変えたい場合 
mv id_ed25519_vps_develop id_ed25519_vps_dev 
mv id_ed25519_vps_develop.pub id_ed25519_vps_dev.pub 

# もし ~/.ssh/config で指定しているなら、そちらもファイル名を修正 
# 例: IdentityFile ~/.ssh/id_ed25519_vps_dev
ファイル名を変えただけなら、鍵の中身(識別子)や権限(chmod 600)はそのまま流用。

公開鍵の「コメント」を変更したい時

公開鍵の末尾に付いているコメント(user@example.com github-deploy-202504 など)は、ssh-keygen -c で書き換え。

# 秘密鍵のパスフレーズを設定している場合はここで聞かれる
ssh-keygen -c -f ~/.ssh/id_ed25519_vps_dev 

# 途中で「Enter new comment」で新しいコメントを入力 
# 例)vps-dev-202505 など 

-c は「Change comment」の略。秘密鍵ファイルのコメントを更新し、対応する .pub ファイルにも新コメントを反映。

コメントを編集しても鍵のビット列(Fingerprint)は変わらないので、わかりやすいコメントをつけておく。


手動でコメントだけ置き換えたい時(こっちの方が簡単)

ssh-keygen -c が使いづらい場合は、公開鍵ファイルをnanoで編集して末尾のコメント部分(スペースより後ろ)だけ書き換える
※記号部分(AAA…)を変えると鍵が変わるので触らないように注意。

# 例:末尾コメントを修正

nano ~/.ssh/id_ed25519_vps_dev.pub
# ↓
# before: ssh-ed25519 AAAA… old-comment
# after : ssh-ed25519 AAAA… new-comment

変更後の確認

  • ファイル名

    ls -l ~/.ssh | grep id_ed25519_vps_dev

  • キーコメント
    ssh-keygen -lf ~/.ssh/id_ed25519_vps_dev.pub
    # 出力に新コメントが表示される

まとめ

  1. ファイル名は mv でリネーム。必要なら SSH 設定や authorized_keys の参照先も更新。
  2. コメントは ssh-keygen -c -f <秘密鍵ファイル> で安全に書き換え。
  3. どちらも変更後にパーミット(chmod 600)や設定ファイルの調整を忘れずに。
ABOUT ME
いなさく
住んでる家が崩れそうなので、建て替え費用をまかなうために 副業をがんばるサラリーマン
ブログランキング・にほんブログ村へ

COMMENT

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA