さまざまな認証方法でデュアルSSHトンネルを作成するには?

さまざまな認証方法でデュアルSSHトンネルを作成するには?

私のローカルコンピュータであるホスト1とホスト2があります。

  • ホスト2はホスト1からのみアクセスできます。
  • 自分のローカルコンピュータからホスト1にアクセスできます。
  • Host1 は秘密鍵認証方式を使用しています。
  • ホスト2がパスワードを使用しています
  • ホスト1とホスト2のユーザー名が異なります。
  • 自分のローカルコンピュータで、ホスト2のポート1529で実行されているサービスにアクセスする必要があります。

したがって、次の方法でHost1に接続できます。 ssh -i path_to_key user1@3host1

そして、以下を介してホスト1からホスト2に: sshpass -p 'my-pass' ssh user2@host2

これまで私は成功しなかったので、次のコマンドを試しました。

ssh -i path_to_key -L 1529:host1:1529 user1@host1 sshpass -p 'my-pass' ssh -L 1529:host2:1529 user2@host2

どんなアイデアがありますか?

答え1

そのサービスにアクセスするには、2台目のコンピュータにSSHで接続する必要がありますか?

私が見るより簡単な方法は、最初のホストにトンネルを設定し、そこからホスト2のサービスを照会することです。この場合、次のものが利用可能である必要があります。

ssh -i path_to_key -L 1529:host2:1529 user1@host1

その後、ワークステーションのバックグラウンドでSSHを実行すると、telnet localhost 1529接続がhost2:1529

関連情報