1

公開鍵とパスフレーズを使用してサーバーに接続するにはどうすればよいですか (私は公開鍵を持っており、パスフレーズを知っています。com.sshtools.j2ssh ライブラリを使用していますが、パスフレーズを設定するオプションが表示されません。問題は、私は公開鍵を持っていますが、サーバーはパスフレーズを要求し続けます。

ありがとう。ロン。

4

3 に答える 3

3

SshPrivateKeyFileをインスタンス化すると、そのオブジェクトでtoPrivateKeyを呼び出して、SshPrivateKeyオブジェクトを作成できます。そのtoPrivateKeyメソッドは、パスフレーズである文字列を取ります。パスフレーズがない場合は、空の文字列を渡します(または、nullも機能すると思います)。これがサンプルです。

PublicKeyAuthenticationClient sshClient = new PublicKeyAuthenticationClient();

SshPrivateKeyFile sshPrivKeyFile = SshPrivateKeyFile.parse(new File(keyFile));
SshPrivateKey sshPrivKey = sshPrivKeyFile.toPrivateKey("passphrase");
sshClient.setKey(sshPrivKey);
于 2011-07-04T14:40:27.470 に答える
0

復号化/暗号化の方法については、j2ssh の API を確認してください。通常、これらは認証のために送信するために使用されます。

于 2011-07-04T13:09:37.433 に答える
0

そのサーバーは正しく構成されていますか? key auth に設定されている場合、キーストアのパスワード以外のパスワードは必要ありません。パテなどで接続してみてください。また、いくつかのプロジェクトで使用したGanymed SSHを試すこともお勧めしますが、トンネルや scp などの非常に高度な機能を使用しても問題はありませんでした。

于 2011-07-04T15:27:10.930 に答える