勉強日記

チラ裏

【解決済】MySQL WorkbenchでSSHポートフォワードできなくて困った話

環境

Workbench上でSSHポートフォワードすると接続できない

接続可否 o o x
SSHポートフォワード ssh on GitBash Workbench Workbench
認証方式 公開鍵 パスワード 公開鍵

Could not connect the SSH Tunnel

Access denied for 'none'. Authentication that can continue: publickey.gssapi-keyex,gssapi-with-mic,password

  • (A) bashssh -L 13306:127.0.0.1:3306 <リモート>しておいて
    Workbench上で127.0.0.1:13306TCP接続するのは問題なくできる
  • (B) Workbench上で<リモート>127.0.0.1:3306にポートフォワードする場合
    • パスワード認証なら問題なくできる
    • (A)で使えていた公開鍵での鍵認証だとうまくいかない

原因

  • OpenSSH7.8からssh-keygenで生成される鍵のデフォルト形式が変わったそう
    • 資料
    • OpenSSLのPEM形式からOpenSSH形式に
    • 秘密鍵のヘッダに暗号化方式が書かったり色々違う
  • GitBashのsshのバージョン
$ ssh -V
OpenSSH_7.9p1, OpenSSL 1.1.1a  20 Nov 2018

まさに。

対処

  • PEM形式で鍵を作り直した
ssh-keygen -m PEM