0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

SSH-Agentってなんだ?(初心者向け)

Last updated at Posted at 2024-10-03

この記事の内容

毎回SSHコマンドを打つのがめんどくさいなと思い、楽になる方法がないかと調べているとあったので紹介します。

ssh-agentssh-add は、SSH(Secure Shell)を使用する際に認証キーを管理・利用するためのツールです。これらを活用することで、SSH接続時に毎回パスフレーズを入力する手間を省くことができます!

ssh-agentssh-add の概要

ssh-agent

  • 役割: ssh-agent はSSH認証エージェントで、SSHキー(秘密鍵)のパスフレーズを一度入力するだけで、その後のSSH接続で再度パスフレーズを入力する必要がなくなります。これにより、複数のSSH接続を行う際の利便性が向上します。
  • 使用方法: ssh-agent を起動すると、エージェントがバックグラウンドで動作し、環境変数(例: SSH_AUTH_SOCK)を設定します。これにより、SSHクライアントがエージェントにアクセスできるようになります。

ssh-add

  • 役割: ssh-add は、SSHエージェントにSSH秘密鍵を追加するためのコマンドです。エージェントが秘密鍵を管理し、SSH接続時に自動的に認証を行います。
  • 主な機能:
    • キーの追加: ssh-add /path/to/private_key で指定した秘密鍵をエージェントに追加します。
    • パスフレーズの入力: 秘密鍵がパスフレーズで保護されている場合、追加時にパスフレーズの入力が求められます。
    • キーの一覧表示: ssh-add -l でエージェントに追加されている鍵の一覧を表示します。
    • キーの削除: ssh-add -d /path/to/private_key で特定の鍵を削除、ssh-add -D で全ての鍵を削除できます。

SSHエージェントの起動とSSH接続の実行方法

エージェントの起動方法

  1. 現在のシェルでエージェントを起動する:

    eval "$(ssh-agent -s)"
    

    このコマンドを実行すると、SSHエージェントがバックグラウンドで起動し、必要な環境変数が現在のシェルに設定されます。

  2. 新しいシェルでエージェントを起動する方法:

    ssh-agent bash
    

    これにより、新しい bash シェルが ssh-agent とともに起動します。このシェル内でのみエージェントが有効になります。

秘密鍵のエージェントへの追加

ssh-add ~/.ssh/id_rsa

ここで、~/.ssh/id_rsa は秘密鍵のパスです。パスフレーズが設定されている場合、この段階で入力を求められます。

SSH接続の実行

エージェントに鍵を追加した後、通常通りSSHコマンドを使用して接続できます。

ssh ユーザー名@リモートホスト

パスフレーズの再入力なしで接続が可能です。SSHクライアントは自動的にエージェントを介して認証を行います。

具体例

# 1. SSHエージェントを現在のシェルで起動
eval "$(ssh-agent -s)"

# 2. 秘密鍵をエージェントに追加
ssh-add ~/.ssh/id_rsa

# 3. SSH接続を実行
ssh user@remote_host

まとめ

  • ssh-agent は、秘密鍵のパスフレーズ入力を一度で済ませるためのエージェントです。
  • ssh-add は、秘密鍵をエージェントに追加・管理するためのコマンドです。
  • SSH接続手順:
    1. ssh-agent を起動する。
    2. ssh-add で秘密鍵をエージェントに追加する。
    3. 通常のSSHコマンドで接続する。

これらの手順を実行することで、SSH接続時の認証がスムーズになり、作業効率が向上します。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?