0
javaを使用して2段階認証ログインを持つLinuxサーバーに接続しようとしています。私はこのスクリプトを実行すると、私は認証キーを入力していないと明らかに私は、「認証に失敗しました」エラーが出るJSCHライブラリを使用した2段階検証
session = jsch.getSession(username, ip);
Properties config = new java.util.Properties();
config.put("StrictHostKeyChecking", "no");
session.setConfig(config);
session.setPassword(password);
session.connect();
System.out.println("Connected to " + ip);
:私はJSCHライブラリを使用しています、これは私がこれまで持っているコードです。だから私はどのように確認キーを使用してログインするのですか?これが不可能な場合、誰かがこの機能を持つライブラリを提案する可能性があります。
これは、パテを使用してサーバーにログインしています。したがって、ユーザ名、時間ベースの生成コード、パスワードを入力します。
あなたがいますコマンドラインsshユーティリティを使用してこのホストにログインできますか?このサーバにログインするにはsshを実行し、sshにデバッグ情報を出力させるには '-vvv'オプションを含めてください。次に、質問を編集して、実行したsshコマンドとそれが生成した出力を含めます。これは、人々がこの余分な検証がどのように行われているかを知るのに役立ちます。 – Kenster
余分な検証は時間ベースであるため、実際には不可能です。そのため、秘密の文字列がjavaメソッドに渡され、検証の2番目の部分のキーが返されます。 –
私の提案のポイントは、この検証ステップがsshプロトコルを通してどのように行われるかを理解することでした。 – Kenster