sshサーバの接続設定手順(公開鍵証明書の作成・登録・エイリアスでの接続方法など)

2020年8月30日Linux

sshサーバへクライアントから秘密鍵で接続するまでの手順をまとめました。

頻繁に接続する環境であればエイリアス登録すると便利になります。

環境と作業手順

環境

作業手順

Noクライアント/サーバ作業内容
1クライアントキーペアを作成する
2クライアント
サーバ
サーバ側に公開鍵を配置する
3サーバ公開鍵を認可済みのキーとして登録する
4クライアント接続先をエイリアス登録する
5クライアントエイリアスでssh接続する

ssh-keygenでキーペアを作成する

アルゴリズムを rsa 、鍵の長さを 4096 としてキーペアを作成する

$ ssh-keygen -t rsa -b 4096 -C [ユーザ名]@xxxxxxxxxxxxxx
Generating public/private rsa key pair.
Enter file in which to save the key (/home/[ユーザ名]/.ssh/id_rsa): ・・・(1)
Enter passphrase (empty for no passphrase): ・・・(2)
Enter same passphrase again: ・・・(2)
Your identification has been saved in /home/[ユーザ名]/.ssh/[鍵の名前]
Your public key has been saved in /home/[ユーザ名]/.ssh/[鍵の名前].pub
The key fingerprint is:
SHA256:ffB0jEIxxx11hyxxxt4X6Txxxejzzz96Ql+CF8OLjwI [ユーザ名]@xxxxxxxxxxxxxx

(1)鍵の名前はデフォルト値は以下の名前で作成されます。変更したい場合は鍵名を入力します。

  • 秘密鍵:/home/[ユーザ名]/.ssh/id_rsa
  • 公開鍵:/home/[ユーザ名]/.ssh/id_rsa.pub

(2)パスフレーズを設定すると接続時に確認される。

 ローカル環境などでセキュリティー的に問題なければ、入力が面倒になるため入力しなくてもOK

サーバ側に公開鍵を配置する

サーバの /home/[ユーザ名]/.ssh に作成した公開鍵(id_rsa.pubなど)を配置する

配置方法は何でもかまわない。

例.公開鍵(id_rsa.pub)をscpで配置する場合

$ scp /home/[ユーザ名]/.ssh/id_rsa.pub [ユーザ名]@[サーバ]:~/.ssh

公開鍵を認可済みのキーとして登録する

サーバへログインし公開鍵を認可済みのキーとして登録する

/home/[ユーザ名]/.ssh ディレクトリの authorized_keys へ公開鍵の内容を登録することで認可される

$ cat /home/[ユーザ名]/.ssh/id_rsa.pub >> /home/[ユーザ名]/.ssh/authorized_keys

接続先をエイリアス登録する

sshコマンドで秘密鍵やサーバ名を指定して接続するのであれば、この作業は不要です。

よく接続するサーバであれば接続先をエイリアス登録しておくと便利になります。

エイリアスの登録は /home/[username]/.ssh/config ファイルに以下の登録をします。

Host [エイリアス名]
  HostName [サーバ名(IPでもよい)]
  User [ユーザ名]
  Port [ポート名]
  IdentityFile /home/[ユーザ名]/.ssh/[秘密鍵名]

エイリアスでssh接続する

登録したエイリアス名で接続してみましょう

$ ssh [エイリアス名]

 

もちろんエイリアス名を使用しなくても接続できます。

$ ssh -i ~/.ssh/[秘密鍵] [サーバ名]

Linux

Posted by snow