web-dev-qa-db-ja.com

SSH-通常の接続でX転送をオンにする方法

ssh -X <Host>を実行することで、ホストに接続してウィンドウアプリを使用できることを知っています。

しかし、ssh <Host>などの通常のsshを介してすでに接続している場合はどうなりますか?.

再接続せずにX転送をオンにする方法はありますか?

6
Greg_the_Ant

SSH接続がアップしているときは、アップしています。それを破棄し、必要なオプションを使用してSSH接続を再作成する必要があります(Mark Wagnerの回答に記載されているポート転送を除く)。 OpenSSH 4.0+には、新しいSSHコマンドに ControlMaster option を使用して既存の接続を再利用する機能がありますが、それはまさにあなたが望むものではありません。

2
Wesley

簡単ではありません。 OpenSSH 5.1以降、〜Cエスケープコマンドラインは、動的(-D)ポートフォワードのランタイム作成をサポートします。ローカルXサーバーがTCPソケットをリッスンしている場合は、そのソケットに転送するポートを作成できます。現在、ほとんどのXサーバーはリッスンしていません。ただし、そうだとすると、設定する必要があります。 xauthデータをアップし、DISPLAY環境変数を設定します。

内部的には、OpenSSHはXサーバーのunixドメインソケットに転送し、xauthデータと設定DISPLAYを自動的に処理します。

4
Mark Wagner

接続の確立時に転送が設定されるため、既存の接続の動的な変更はサポートされていません。これを有効/無効にするには、再接続する必要があります。

1
johnshen64