私のローカルコンピュータであるホスト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
。