マニュアル: ssh

投稿日: 更新日:

マニュアル

OpenSSH: Manual Pages

秘密鍵

作成

ssh-keygen -t rsa -b 2048 -f <秘密鍵のパス>
  • -b 2048: 鍵の長さを2048ビットにする1
    • 実際はデフォルト値が2048ビットです。
  • -t rsa: 鍵のタイプをRSAにする。
    • 実際はデフォルトがRSAになっています2
    • より強度を求めるなら、ecdsa, ed25519を指定するのもいいと思いますが、サービス側の対応状況を確認してください。
  • -f <秘密鍵のパス>: 出力する秘密鍵のパスを指定します。
    • 秘密鍵のパスにid_rsaを指定すると、カレントディレクトリにid_rsa, id_rsa.pubが作成されます。

パスフレーズの変更

パスフレーズを削除する場合は、新しいパスフレーズを空にすればよい。

ssh-keygen -p -f <秘密鍵のパス>

ホスト鍵を無視する方法

閉じた環境でVagrantを使うなど、頻繁にホストキーが変わる環境の場合に、 ホスト鍵を無視するには、以下の2つのオプションを使うと良いです。

  • StrictHostKeyChecking: no
    • デフォルトは'ask'で、受け入れるかどうかを尋ねます。
    • noにすると、新規ホストに接続するとき、known_hostsファイルに自動的に書き込みます。
  • UserKnownHostsFile: /dev/null
    • known_hostsファイルの場所を指定します。

フィンガープリントの表示

# sha256(デフォルト)
ssh-keygen -l -f <公開鍵のパス>

# md5
ssh-keygen -l -E md5 -f <公開鍵のパス>

応答がなくなった場合

以下のようにコマンドを打つ。

How can I break out of ssh when it locks? - Ask Ubuntu

環境変数

デフォルトではログインと同じようには環境変数が設定されない。 sshdのマニュアルを参照。


  1. man ssh-keygen-bオプションの説明に、"Generally, 2048 bits is considered sufficient."と書かれています。 [return]
  2. man ssh-keygenに"If invoked without any arguments, ssh-keygen will generate an RSA key for use in SSH protocol 2 connections."と書かれています。 [return]

外部サイト

逆引きマニュアル