.ssh/configファイルで複数サーバーのSSH接続を管理

スポンサーリンク

ここでは「~/.ssh/config」ファイルで複数サーバーのSSH接続を管理する方法を紹介します。

複数のVPSサーバーを管理している場合、めんどくさいのがSSH接続の管理です。大抵の場合はローカル環境で作成したひとつの秘密鍵を使って、複数のサーバーを管理するので、そこまで煩わしいといった印象はないのですが、VPSによってはサーバー会社が発行した秘密鍵を利用する必要があります。

こうなってくると「Aサーバー」の秘密鍵は「A鍵」 で、「Bサーバー」の秘密鍵は「B鍵」、「Cサーバー」の秘密鍵は「A鍵」……とこんがらがってしまします。

また、「~/.ssh/id_rsa(RSAの場合)」以外の秘密鍵を使ってSSH接続をする際には毎回! sshコマンドのオプション -i を利用する必要があります。例えば、以下のようにコマンドを入力する必要があります。

$ ssh -i ~/himitsu-kagi.key karuma@example.com

ということで、ここでは「~/.ssh/config」ファイルを使って簡単に複数サーバーのSSH接続を管理する方法を紹介します。

.ssh/configファイルで複数サーバーのSSH接続を管理

早速、「~/.ssh/config」ファイルを作成・編集しましょう。

$ vi ~/.ssh/config

例えば、以下のように編集します。行頭に#(シャープ)を記述するとその行はコメント文になります。

# Aサーバー
Host sakura
  HostName aaa.bbb.ccc.ddd
  Port 22
  User root
# Bサーバー
Host gmo
  HostName example.com
  Port 10022
  User karuma
  IdentityFile ~/gmo-vps.key
# Cサーバー
Host onamae
  HostName example.jp
  Port 20022
  User taro
Hostホスト。SSH接続するサーバーのホストのエイリアスを入力します。
HostNameホスト名。SSH接続するサーバーのIPアドレス・ドメインを入力します。
Postポート番号。SSH接続に使用するポート番号を入力します。
Userユーザー名。SSH接続するユーザー名を入力します。
IdentityFile秘密鍵。秘密鍵ファイルへのパスを入力します。

AサーバーにSSH接続する場合は以下のようにコマンドを入力します。

$ ssh sakura

BサーバーにSSH接続する場合は以下のようにコマンドを入力します。

$ ssh gmo

CサーバーにSSH接続する場合は以下のようにコマンドを入力します。

$ ssh onamae

これで複数サーバーのSSH接続を管理が簡単になりますね。

関連記事(一部広告含む)