X11転送(初期ユーザーとして)

X11転送(初期ユーザーとして)

MobaXTermで次のコマンドを実行します。

WindowsノートブックでMobaXTerm端末を使用する:

> xhost +ulv78.abc.com
ulv78.abc.com being added to access control list

> ssh -l someuser ulv78.abc.com # RHEL 7.x
SECURITY NOTICE:
Unauthorized use is prohibited. Use of this private computer system is your consent to being recorded and monitored. We reserve the right to seek all remedies for unauthorized use. Evidence of suspected illegal use may be given to law enforcement.
X11 forwarding request failed on channel 0
Last login: Thu Sep 20 12:06:57 2018 from win_host_name
$ bash
$ echo DISPLAY=win_host_name:0.0; export DISPLAY >> .bashrc
$ sudo su - # as root sudoer
$ echo DISPLAY=win_host_name:0.0; export DISPLAY >> .bashrc
$ cd /install_path
$ ./setup
Error: Can't open display: win_host_name:0.0

上記のセッションにX11 forwarding request failed on channel 0エラーがあります

編集する:

&に項目を設定しますDISPLAY。 MobaXterm端末から接続すると、次のような結果が出力されます。.profile.bashrc

> ssh -l someuser ulv78.abc.com
SECURITY NOTICE:
Unauthorized use is prohibited. Use of this private computer system is your consent to being recorded and monitored. We reserve the right to seek all remedies for unauthorized use. Evidence of suspected illegal use may be given to law enforcement.
X11 forwarding request failed on channel 0
Last login: Thu Sep 20 12:36:54 2018 from win_host_name
$ echo $DISPLAY
win_host_name:0.0
$ xterm
xterm: Xt error: Can't open display: win_host_name:0.0
$

1)X11転送エラーを解決するには?

2) SSH クライアントの最後のログインメッセージに無効なドメイン名が表示されます。

答え1

X11転送(初期ユーザーとして)

MobaXTermはデフォルトで有効なX11転送をサポートしています。 LinuxサーバーでX11転送(ulv78)が有効になっている場合、これはDISPLAY明らかなローカルアドレスに設定され、sshクライアントはこれらの要求をX11サーバー(Windowsシステムで実行)に戻します。バラよりリモートでグラフィカルアプリケーションを実行するためにSSHを介してXを渡す方法は?動作方法の詳細。

正しく設定したら、次のことを行う必要があります。いいえDISPLAY環境変数を直接変更します。.bashrcログインファイル(など)に行を追加して設定した場合は、その変数を再度削除する必要があります。次の結果が表示されます。

ssh -l user ulv78.domain.com

(今すぐuserリモートコンピュータで実行中)

user@ulv78$ echo $DISPLAY
localhost:10
user@ulv78$ xterm

xtermここではテストアプリケーションとして使用されました。リモートのLinuxコンピュータで実行されていても、Windowsコンピュータに表示される必要があります。そのプロンプトは、user@ulv78MobaXTermの初期プロンプトではなく現在位置にあることを示します。

おめでとうございます。これが最初のステップです。 X11転送は正常です。今すぐ詳細セクションに移動します。

他のユーザーでX11サーバーにアクセスする

root別のユーザー(たとえば)に切り替えて同じXサーバー上でグラフィカルアプリケーションを実行しようとすると、su -環境変数がすべて消えたことがわかります。それはあなたです。するこれはDISPLAY手動で変更し、次のようにX資格情報をコピーする必要があります。xauth(1)コマンド(指令ベースhttps://blog.mobatek.net/post/how-to-keep-X11-display-after-su-or-sudo/):

ssh -l user ulv78.domain.com

(今すぐuserリモートコンピュータで実行中)

user@ulv78$ echo $DISPLAY
localhost:10
user@ulv78$  xauth list | tail -n 1
ulv78/unix:10  MIT-MAGIC-COOKIE-1  4fa72fbe2b05ebe3f047a1b0430ecf6a
user@ulv78$ sudo su -

(今はrootとして実行中)

root@ulv78$ export DISPLAY=localhost:10    # <- copied from above
root@ulv78$ xauth add ulv78/unix:10  MIT-MAGIC-COOKIE-1  4fa72fbe2b05ebe3f047a1b0430ecf6a # <- copied from above
root@ulv78$ cd /install_path
root@ulv78$ ./setup

これで以前と同様に、./setupアプリケーションがWindowsコンピュータに表示されますxterm

関連情報