web-dev-qa-db-ja.com

DBeaver:SSH経由でPostgreSQLデータベースサーバーに接続:トンネルを初期化できません、認証に失敗しました

DBeaverを使用して、SSH経由でPostgreSQLデータベースサーバーに接続しようとしています。

can't initialize tunnel
cannot establish tunnel
com.jcraft.jsch.JSchException: auth fail

enter image description here

SSHサーバーは正常に動作していると思います。 pgAdmin 3とRazorSQLを使用して、同じSSHサーバーを介して同じPostgreSQLデータベースサーバーに接続しました。 IP、ユーザー名、パスワードを確認しましたが、正しいです。すべてのファイアウォールを無効にしました。問題は何でしょうか?

私の設定:

enter image description here

enter image description here

私はWindows 7 SP1 x64 UltimateでDBeaver 3.7.3 x64ポータブルバージョンを使用しています。

エラーログウィンドウはエラーを記録しないので、そこにはそれ以上の情報はありません。

7

KubuntuでDBweaverを試しましたが、同じ問題が発生しました。問題は、SSHサーバーの信頼性が事前に検証されておらず、DBweaverで正しいエラーメッセージをカスケードできないという事実に関係しているようです(例:Host key verification failed.)そして、誤解を招くようにいくつかの認証エラーを非難します。

Kubuntuでこの問題を次のように修正しました。

  1. SSHトンネルを無効にします。

enter image description here

  1. シェルで実行Sudo apt-get install -y autossh

  2. DBeaverの接続にシェルコマンドを追加します。

    autossh -f -N -L 5432:localhost:5432 ssh_server_username@ssh_server_ip
    

enter image description here

  1. その時点で接続しようとすると、同じcom.jcraft.jsch.JSchException: auth fail エラーメッセージ。シェルに移動して、次のコマンドを実行します。

    ssh -f -N -L 5432:localhost:5432 ssh_server_username@ssh_server_ip
    

    それは出力します:

    The authenticity of Host 'ssh_server_hostname (ssh_server_ip)' can't be established.
    ECDSA key fingerprint is 29:13:b5:cb:99:21:b2:18:f1:11:aa:12:54:c2:88:9a.
    Are you sure you want to continue connecting (yes/no)? yes
    Warning: Permanently added 'ssh_server_hostname,ssh_server_ip' (ECDSA) to the list of known hosts.
    Password: 
    

    DBeaverに戻り、接続を試みます。これでうまくいくはずです。しかし、なぜDBeaverのSSHトンネルタブの代わりにautosshを使用する必要があるのか​​まだわかりません。

4