ゲートウェイ経由で VNC を使用するために SSH をトンネリングする

ゲートウェイ経由で VNC を使用するために SSH をトンネリングする

この状況について、何かヒントをいただけませんか。会社にデスクトップ コンピューター (Ubuntu で実行) があります。会社には、デスクトップ コンピューターを SSH 経由で接続するのに役立つ VPN ゲートウェイがあります。今、自宅のデスクトップ コンピューターを VNC でリモート制御したいと考えています。xtightvncserver はすでにインストールされており、デスクトップ コンピューターですでに実行されています。

vnc-client を使用するために、自分のラップトップと会社のゲートウェイの間に SSH トンネルを作成するにはどうすればよいでしょうか。詳しい情報をいただければ幸いです。コンピューターに次のように名前を付けたいと思います。

company-pc - 職場のデスクトップ コンピューター (vnc サーバー)

company-gw - 会社の VPN ゲートウェイ (OpenSSH サーバーを実行)

my-laptop - 自宅のラップトップ コンピューター (vnc クライアント)

答え1

ご質問の意味を理解している限りでは、company-pc または company-gw から my-laptop に接続することはできませんが、my-laptop から company-gw へ、また company-pc から company-gw へは接続できます。その通りですか? おっしゃっているデスクトップ コンピューターが何なのかわかりません。

my-laptop が sshd を実行している場合は、これを試してください。

まだ家にいるときに、私のラップトップから:

ssh -R 8022:localhost:22 myusername@company-gw

ログインすると、company-gw のポート 8022 への (どこからでも) 接続は、my-laptop のポート 22 に転送されます。仕事に行くときはログインしたままにしてください。

職場で、会社のPCから:

ssh -L 5900:localhost:5900 -p 8022 myhomeusername@company-gw

これを行うと、company-gw のポート 8022 が my-laptop のポート 22 に転送されるため、実際には my-laptop に ssh 接続することになります。これで、company-pc のポート 5900 が my-laptop のポート 5900 に転送されることになります (このコマンドの「localhost」は、my-laptop が localhost と呼んでいるものなので)。

次に、ローカルホストに VNC します。これにより、自分の company-pc のポート 5900 に接続され、company-gw 経由で my-laptop に転送されます。

転送されたポートのいずれかが使用中の場合は、空いているポートが見つかるまで別の番号(8022ではなく8023、最初の5900ではなく5901)を試してください。

答え2

サーバーに sshd を有効化/起動するためのアクセス権や管理権限がない場合、または my-laptop にユーザー/パスワードのペアがない場合には、別の回避策があります。

my-laptop でこれを実行します:

ssh -R 8022:localhost:5900 gw-user@company-gw

この方法では、company-gw:8022 からのすべての使用は、my-laptop:5900 にリダイレクトされます。

会社のPCの場合:

ssh -L 5900:localhost:8022 gw-user@company-gw

gw-user はコマンドによって異なる場合があります。重要なのは、両端で 8022 ポートに到達可能であることです。

関連情報