GNU/Linux >> Linux の 問題 >  >> Linux

追加のサーバーを介して SSH X11 転送を有効にする方法は?

解決策 1:

これにはいくつかの方法がありますが、私が好むのは ssh ポートを転送する方法です:

まず、マシン B に接続し、[localPort] を B 経由で C:22 に転送します

A$ ssh -L [localPort]:C:22 B

次に、[localPort] を使用して、この新しく作成されたトンネルを介して A から C に接続し、X11 を転送します

A$ ssh -X -p [localPort] localhost

これで、C で X11 プログラムを実行し、A で表示できます

C$ xclock

[localPort] は、A でまだリッスンしていない任意のポートにすることができます。簡単にするために、私はよく 2222 を使用します。

解決策 2:

これは、ポート転送を使用して簡単に実現できます:

A$ ssh -NL 2022:C:22 B &
A$ ssh -X -p 2022 localhost
C$ xclock

ポート localhost:2022 は BSSH 経由で C:22 に転送され、localhost:2022 経由で C に転送されます。通常どおり X を使用します

解決策 3:

試してみましたか

A$ ssh -Y B
B$ ssh -Y C
C$ xlclock

-Y フラグ「信頼できる X11 転送を有効にします。」

解決策 4:

中間のマシンに X がなく、X11 の転送を許可するように構成されていることが問題であると仮定すると、xauth をインストールするだけです。

yum ベースのシステム (fedora、redhat、centos):

B$ sudo yum install xauth

apt ベースのシステム (debian、ubuntu):

B$ sudo apt-get install xauth

解決策 5:

新しいバージョンの opensshd では、X11UseLocalhost を無効にする必要があります これが機能するために。

ホスト C の /etc/ssh/sshd_config でこれを行う必要があります これを機能させるには、sshd を再起動します:

X11Forwarding yes
X11UseLocalhost no

Linux
  1. Ubuntu22.04LTSでSSHサービスを有効にする方法

  2. LinuxでのIP転送とは何ですか? IP転送を有効にする方法は?

  3. CentOS/RHEL 5、6、7 で X11 転送を有効にする方法

  1. LinuxでIP転送を有効にする方法

  2. 別のサーバーに到達するためにhost(jumpserver)を介してsshする方法

  3. 別のサーバーを使用してサーバーにSSH接続する方法は??

  1. Ubuntu 22.04JammyLinuxでSSHサーバーを有効にする方法

  2. Linux – Sshを介したX11転送?

  3. リカバリモードでSshサーバーを有効にする方法は?