SSHキーの作成手順

sshを用いたリモートログインの認証にキーファイル+パスフレーズを用いる場合は、下記の手順にてキーファイルの作成を行なう。
作成する鍵には暗号化の方式としてSSH1、SSH2、DSAがあり、更に形式としてOpenSSH用、putty用などが存在する。
最も互換性が高く使用の敷居が低い(=SSHクライアントを選ばない)鍵ファイルはOpenSSH形式のSSH1で生成した鍵である。

SSH1(RSA Ver.1)対応の鍵ファイル作成(TeraTermPro等向け)~

SSHキーはユーザ毎に生成して使用する。
公開鍵はssh-keygenコマンドで生成することができ、ホームディレクトリの.sshディレクトリ配下に保管される。(.sshディレクトリが無い場合は自動生成される)

  • 鍵を生成するユーザにスイッチ
    su - [USER NAME]
  • 鍵の生成
    ssh-keygen -t rsa1
  • 鍵の保管場所とファイル名(デフォルトのまま)
    Enter file in which to save the key (/home/[USER]/.ssh/identity): 
  • パスフレーズを入力(2回)
    Enter passphrase (empty for no passphrase):
    Enter same passphrase again:
  • 鍵が生成される
    Your identification has been saved in /home/[USER]/.ssh/
  • ファイル名とパーミッションの変更
    OpenSSHはデフォルト設定では公開鍵をauthorized_keysというファイル名でのみ受け付ける設定となっている。
    このため、生成した鍵のファイル名を変更する必要がある。
    cd .ssh
    cp identity.pub authorized_keys
    chmod 600 authorized_keys 

秘密鍵(identity)は任意の名称に変更してローカルマシンに移動させる。

鍵ファイルの取り扱いについて

秘密鍵を持ち出す際には、オンラインではなくメディアで持ち出すことが望ましいとされている。
しかし、現実にはメール等で添付して送付する必要に迫られる場合もあり、その場合には最低限以下のセキュリティは考慮すべきである。

  • 鍵ファイルが添付されたメール内にユーザ名・パスフレーズ・接続先サーバの情報を含めない
  • 受信側はサーバ上にメールを残さない

また、これは鍵ファイルの保管場所についても同じことが言える。
鍵ファイルの保管場所には前述の情報を残さないと同時に、ダミーの鍵ファイルを置くなどして撹乱を行うことが望ましい。

ssh-keygenの設定内容

ssh-keygenの使用方法は以下となる。

ssh-keygen [option] 

optionには以下の暗号方式の指定を行なう必要がある。指定方法は以下の通り。

ssh-keygen -t rsa1     RSA protocol 1による暗号化
ssh-keygen -t rsa2     RSA protocol 2による暗号化 
ssh-keygen -t dsa      DSAによる暗号化 

キーファイルは各ユーザのホームディレクトリ配下の.sshに作成される。ファイル名は指定した暗号によって以下となる。

identity.pubRSA protocol 1 公開鍵
identityRSA protocol 1 秘密鍵
id_rsa.pubRSA protocol 2 公開鍵
id_rsaRSA protocol 2 秘密鍵
id_dsa.pubDSA 公開鍵
id_dsaDSA 秘密鍵

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2008-02-19 (火) 11:39:10 (5904d)