マニュアル
秘密鍵
作成
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のマニュアルを参照。