コンフィグレーションガイド Vol.1


9.2.3 SSHv2サーバで公開鍵認証をする設定

パスワード認証より安全に,SSHを使用して認証するには,公開鍵認証を使用します。公開鍵認証はパスワード認証とは異なり,パスワード自体がネットワーク上を流れません。したがって,たとえ暗号が解読されたとしても,パスワードは外部に漏洩しません。

SSHv2で登録できる公開鍵の種類と鍵のビット長を次の表に示します。鍵のコメント部分を含めて900文字まで入力できます。この表に示すビット長はコメント部分がない場合の値で,コメント部分の文字数によって登録できるビット長は短くなります。

表9‒4 登録できる公開鍵の種類(SSHv2)

公開鍵の種類

登録できるビット長

DSA

SECSH形式

1024

OpenSSH形式

RSA

SECSH形式

512〜5120

OpenSSH形式

〈この項の構成〉

(1) ユーザ公開鍵を転送する場合

クライアントで作成したユーザ鍵ペアのうち,ユーザ公開鍵を本装置のSSHサーバへ登録し,公開鍵認証をする設定例を示します。

[設定のポイント]

あらかじめ,クライアントでユーザ公開鍵ファイルを作成し,本装置へ転送しておいてください。ユーザ公開鍵の転送にはftpを使用できますが,よりセキュリティを確保できるscpまたはsftpを使用することをお勧めします。

ここではSECSH形式のSSHv2 DSAのユーザ公開鍵で説明していますが,SSHv2 RSAのユーザ公開鍵やOpenSSH形式のユーザ公開鍵も同様の方法で登録できます。

[コマンドによる設定]

  1. (config)# ip ssh version 2

    SSHサーバでプロトコルバージョン2だけ接続を許可します。

  2. (config)# ip ssh authentication publickey

    ユーザ認証方式として公開鍵認証だけを許可します。

  3. (config)# ip ssh authkey staff client-v2 load-key-file /usr/home/staff/id_dsa_1024_a.pub

    ユーザ(staff)のSSHv2のユーザ公開鍵を,あらかじめ転送したファイル(/usr/home/staff/id_dsa_1024_a.pub)から読み込みます。このとき,この鍵の名前(インデックス名)をclient-v2とします。コンフィグレーションには,ユーザ公開鍵の内容が設定されます。

[注意事項]

各ユーザのホームディレクトリ配下に,「.ssh」という名前のディレクトリを作成しないでください。さらに,「.ssh」ディレクトリ配下にファイルを転送,コピー,および生成しないでください。

「.ssh」ディレクトリは,本装置のSSHサーバ機能が自動的に生成し,使用します。ユーザがファイルを置いた場合,削除されたり上書きされたりします。

(2) ユーザ公開鍵(SECSH形式)を直接入力する場合

公開鍵認証をするために,クライアントで作成したユーザ鍵ペアのうち,ユーザ公開鍵を本装置のSSHサーバへ登録します。

クライアントで,あらかじめSECSH形式のユーザ公開鍵を作成します。ip ssh authkeyコマンドでSECSH形式のユーザ公開鍵の内容を直接入力する場合は,ヘッダ(Comment:コメントなど),開始マーカ,終了マーカ,および改行コードを除いた,鍵の部分だけを入力してください。ユーザ公開鍵(SECSH形式)の入力部分を次の図に示します。

図9‒17 ユーザ公開鍵(SECSH形式)の入力部分

[図データ]

[設定のポイント]

この例では,ユーザ公開鍵ファイルの内容をip ssh authkeyコマンドで直接入力して,ユーザ公開鍵を登録します。

ここではSECSH形式のSSHv2 DSAのユーザ公開鍵で説明していますが,SSHv2 RSAのユーザ公開鍵も同様の方法で登録できます。

[コマンドによる設定]

  1. (config)# ip ssh authkey staff client-v2 "AAAAB3NzaC…S+9zkdi7k="

    SSHv2クライアントであらかじめ作成したユーザ(staff)のユーザ公開鍵(SECSH形式)の内容を,途中で改行しないようにダブルクォート(")で囲んで入力します。このとき,このユーザ公開鍵の名前(インデックス名)をclient-v2とします。

[注意事項]

SECSH形式のユーザ公開鍵には改行コードが含まれているため,すべての改行を取り除いて1行の形式にしてください。また,変換後のユーザ公開鍵の部分に空白を含めないでください。空白のあとは,コメントと見なされます。

(3) ユーザ公開鍵(OpenSSH鍵)を直接入力する場合

公開鍵認証をするために,クライアントで作成したユーザ鍵ペアのうち,ユーザ公開鍵を本装置のSSHサーバへ登録します。

クライアントで,あらかじめOpenSSH形式のユーザ公開鍵を作成します。ip ssh authkeyコマンドでSECSH形式のユーザ公開鍵の内容を直接入力する場合は,先頭の「ssh-rsa」または「ssh-dss」を取り除いた部分を,改行コードを含めないでそのまま1行で入力してください。ユーザ公開鍵(OpenSSH鍵)の入力部分を次の図に示します。

図9‒18 ユーザ公開鍵(OpenSSH鍵)の入力部分

[図データ]

[設定のポイント]

この例では,ユーザ公開鍵ファイルの内容をip ssh authkeyコマンドで直接入力して,ユーザ公開鍵を登録します。

ここではOpenSSHのSSHv2 RSAユーザ公開鍵で説明していますが,SSHv2 DSAユーザ公開鍵も同様の方法で登録できます。

[コマンドによる設定]

  1. (config)# ip ssh authkey staff client-O "AAAAB…n5hE= staff@OpenSSH-Client"

    あらかじめ作成したユーザ(staff)のSSHv2のユーザ公開鍵(OpenSSH形式)を,途中で改行しないようにダブルクォート(")で囲んで入力します。このとき,このユーザ公開鍵の名前(インデックス名)をclient-Oとします。