openssh 7.4 以降を使用するとなぜか invalid format エラーで認証できない件
パスフレーズを使った SSH の認証を行っていると、時々、invalid format エラーが出て接続できないという謎現象があったので調べてみた。
問題の個所は sshconnect2.c
switch ((r = sshkey_load_private_type(KEY_UNSPEC, id->filename, passphrase, &private, &comment, &perm_ok))) |
openssh 7.2p2 で試してみたところ、 i=0 の時、r は 必ずSSH_ERR_KEY_WRONG_PASSPHRASEになった。
ところが、 openssh 7.4p1以降で実行すると -4 になるケースと SSH_ERR_KEY_WRONG_PASSPHRASE になるケースがあって、動作が変わっているようだ・ω・
if (private != NULL /* || quit*/ )
break;
|
これで動くと言えば動くんだけど気持ち悪いのだ・ω・
Comments