2

私はAとBと言う2台のマシンを持っています

BI では、仮想マシンが実行されています (その VB としましょう)。残念ながら、VB には変更できない静的ローカル IP アドレス (192.168.79.1) があります。

次の方法でsshに成功しました

A -> B B -> VB

VB (ポート 22) に転送するために B (ポート 7777) で ssh ポート転送をセットアップしようとしましたが、どういうわけかそれは起こりません。

-L または -R を使用する必要がありますか?

私は多くの方法を試しました..

ssh -R 7777:192.168.79.1:22 root@192.168.79.1

ssh -L 7777:192.168.79.1:22 root@192.168.79.1

ssh -L 7777:192.168.79.1:22 -l ルート ローカルホスト

構文を正しく理解していないのか、何かばかげたことを見逃しているのでしょうか?

A->VB に接続したい ( B の xyz ポート経由) 。これを設定する方法を教えてください。

ところで、すべてのマシンにはユーザー名とパスワードが必要です..私はまだキーを追加していません (したがって、これも考慮してください)。

ありがとう!!

4

1 に答える 1

3

トンネルをセットアップするために間違ったホストをアドレス指定します。あなたがやろうとしているのは、実際にはポート転送ではなく、通常はファイアウォール レベルで行われます。代わりに、システム B のポート xyz の下で VB の ssh サーバーを公開するトンネルをセットアップしようとします。このためには、VB ではなく、そのシステム B に ssh する必要があります。だから、このようなもの:

ssh -L7777:192.168.79.1:22 some_user@<B>

したがって、ユーザー「some_user」はホスト B に ssh し、そこで他に何もしません ( <B>Bs の IP アドレスまたは名前に置き換える必要があります)。ただし、接続に使用できる「ssh トンネル」を追加で作成します。

ssh root@<B>:7777

試してみると、リクエストがホスト VB のポート 22 に透過的にトンネリングされるため、実際に VB にログインしていることがわかります。したがって、B はトンネル リレーとして機能します。

しかし、これは毎日の使用には少し面倒です。代わりに iptables を使用して、ファイアウォール レベルで解決策を見つけることを考えてください。これにより、使用する前に ssh トンネルを作成する必要がなくなります。あるいは、より便利な方法で ssh トンネルをセットアップするための Plasmids などのユーティリティもあります。

于 2012-12-13T13:07:08.030 に答える