何番煎じかわからないが、 ssh-keygen
最近他の種類も生成すること多くなってきたので。
まあ、 Advent Calendar ネタということで。
よーし埋めるぞ。
RSA 1024bit 以下
絶対に使ってはいけません。
古い puttygen.exe
とかだと 1024 ビット以下の鍵が生成されることがあるので注意が必要です。
無難に RSA 2048bit
よく使われますが、最近は計算機性能も向上したためか、このビット長の暗号は推奨されないようです。
とはいえNISTによると、2031年以降、RSA 2,048bitをはじめ強度の低いアルゴリズムはほとんどが使用禁止扱いになる。
ECDSAがスタンダードになるのは時間の問題。
ssh-keygen -t rsa -b 2048
常識 RSA 4096bit
ssh-keygen -t rsa -b 4096
新まあまあ意識高い ECDSA 256bit
楕円曲線暗号だよ〜。
ssh-keygen -t ecdsa -b 256
まあまあ意識高い ECDSA 384bit
YubiKey 4 で使えるのがこのビット長。
最近 YubiKey すこし真面目に使い始めたのでこれ以上のものを使っていこうなって自分に言い聞かせています。
ECDSA ログインもできないゴミサーバーが未だに存在するのは事実なので、 RSA 4096 ビットキーとかは踏み台サーバーに置いたりしてハイブリッドな使い方を使い方をすることが多い。プライベートではもっぱら ECDSA 以上以外使わない。
ssh-keygen -t ecdsa -b 384
意識高い ECDSA 521bit
外でも指摘されているが 512bit の typo ではない。
ssh-keygen -t ecdsa -b 521 -C "wnoguchi-mbp"
圧倒的に意識高い Ed25519
ビット長は 256bit 固定長とのこと。
ssh-keygen -t ed25519 -P "" -f serial-server.pem
example
ssh-keygen -t ed25519 -P "" -f serial-server.pem
ssh-keygen tips
man
みりゃわかることですが
コメントつける
-C "my machine"
公開鍵の後ろにこれがくっつくが、認証に特に影響はないが、Ops サイドとしては誰の鍵か識別するの大変だからこれつけといてくれという気持ち。
というか自分でもわからなくなるから気をつけな?
鍵ペアのファイル名を指定する
-f awesome-key
この例なら awesome-key
, awesome-key.pub
ができる。
パスフレーズを指定
-P "blahblahblah"
-P ""
にするとパスフレーズなしになる。
鍵生成落ち穂拾い
パスフレーズ削除したい
$ ssh-keygen -p -f ~/.ssh/id_ecdsa
Enter old passphrase: <- 現在のパスフレーズを入力
Enter new passphrase (empty for no passphrase): <- 空エンター
Enter same passphrase again: <- 空エンター
Your identification has been saved with the new passphrase.
公開鍵無くした
ssh-keygen -yf id_ecdsa
で生成できるよ。
秘密鍵無くした
生成し直してください。
というか公開鍵から秘密鍵が生成できたら逆に問題。