質問

ネットワークが次のようなものであると仮定します。

a(192.68.0.1)-------------------- B(192.68.0.2)----------------------------------------------------------------------------------------------- C(192.68.0.3)

Aは私のSSHサーバーで、CはターゲットSSHサーバーであり、AからBからBまでテルネットできます(アカウントはルートではありません)。

Bは、他の人からSSHログインを許可しないサーバーですが、BはSSHを介してCにログインできます。

SSHを介してAからBからCを接続することは可能ですか?

役に立ちましたか?

解決

Bでプログラムを実行できれば、次のようなものを使用できます SimpleProxy TCP接続をCに転送するには

次に、b(22ではない)のポート(22ではない)にsshをsshします。これにより、SSHセッションがa <-> cであるため、すべてが暗号化されます。

他のヒント

bにok telnet bで実際に自分自身にsshすることができますが、次のコマンドは動作しないかもしれませんが、最初に試してみることができます

ssh -L0.0.0.0:2200:192.68.0.3:22 127.0.0.1 ... sshdがbで実行されていない場合、sshからcに

ssh -L0.0.0.0:2200:192.68.0.3:22 192.68.0.3

a

netstat -an | grep 2200 -B(192.68.0.2)でこれを行う

NetStatに127.0.0.1が0.0.0.0ではなく2200で聴いている場合、このトリックは機能しません...しかし、それがそうであれば...ポート2200のSSHに接続でき、Cにヒットするでしょう

ssh 192.68.0.2:2200

私はあなたにbでローカルホストにsshを持っています。なぜなら、私はシェルを生み出さないというコマンドを覚えていないので、それを調べるのが面倒だからです...しかし、上記の解決策が機能しない場合、あなたはrootなしでsshでポートをリダイレクトすることができません、 bの構成ファイルを変更する必要があります

追加する必要がありますGatewayPorts yes /etc/ssshd/conf/sshd_configのsshd configファイルへ

http://docstore.ua/orelly/networking_2nded/ssh/ch09_02.htm - これは、SSHによるポート転送についてすべて語っています

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top