PuTTY、CygwinX、およびX11転送接続が拒否されました


10

KiTTY / PuTTYを使用してX11をCygwinXに転送できなくなりました。

X11転送を許可するように正しく構成されているUbuntu Server 14.10マシンに接続しています。私は午前 Cygwinののxtermや他のLinuxマシンからを使用して、X11転送を開始することができます。

Win7でCygwinX [1.7.34(0.285 / 5/3)]とKiTTY 0.64.0.1(PuTTYフォーク、PuTTYも試しました)を使用しています。

表示変数を確認し、Cygwin xtermでxhostアクセス制御を無効にしてみました。

$ echo $DISPLAY
:1

$ xhost +
access control disabled, clients can connect from any host

私のKiTTY / PuTTYはX11転送を有効にするように構成されており、正しいディスプレイが設定されています。私は:1と:1.0を試しました。

KiTTY X11 Configスクリーンショット

サーバーにSSH接続すると、DISPLAY変数が設定され、xauthが更新されます。.Xauthorityを削除し、再作成して確認しました。

user@server:~$ echo $DISPLAY
localhost:10.0
user@server:~$ xauth list
server/unix:10  MIT-MAGIC-COOKIE-1  3983b2d7f3d5f9f66d9796997771bf82

X11アプリケーションを起動しようとすると、次のエラーが発生します。

user@server:~$ xterm
KiTTY X11 proxy: unable to connect to forwarded X server: Network error: Connection refused
xterm: Xt error: Can't open display: localhost:10.0

XWin.exeは、問題がある場合、ポート34576でリッスンしています。

[XWin.exe]
 TCP    127.0.0.1:34576        0.0.0.0:0              LISTENING

複数のサーバーおよびクライアントマシンでこの問題が発生しているため、ソフトウェアまたは構成の問題が見当たらないと思います。任意の助けいただければ幸いです。


$DISPLAYリモートマシンでは、ではなく、デスクトップのアドレスをポイントする必要がありますlocalhost
lcd047

2
@ lcd047いいえ、絶対に今です。$DISPLAYリモートマシンではをポイントする必要がありlocalhostます。SSHが転送を行います。
Gilles 'SO-悪をやめる'

変数としてCygwin64を排除するために、32ビットのCygwinをインストールしました。変化なし。それでも接続拒否エラーを受け取ります。
SeeJayEmm 2015年

@Gilles:私はメイクにしようとしていた点は、ということでしたので、 $DISPLAYリモートマシン上のOPのデスクトップを指していない、X11転送が実現しませんでした。そうでなけれ$DISPLAYば、リモートマシン自体がXサーバー自体を実行していない場合でも、リモートマシン上には存在しない可能性があります(とにかく最初の質問とは関係ありません)。
lcd047

3
@ lcd047いいえ。事実を確認してください。X11転送が発生した場合、をDISPLAYポイントしlocalhostます。SSHはリモートマシンのTCPポートでリッスンし、パケットを転送します。DISPLAYローカルマシンをポイントしている場合、それはSSH経由ではなく、直接TCP接続で転送されていることを示します。クリアテキストで、場合によってはルートもないIPアドレスに転送されます。
Gilles 'SO-悪をやめる'

回答:


9

わかりました、自分の問題の解決策を見つけました。

デフォルトでは、CygwinXはtcp接続をリッスンしません(Cyg SSHは接続にUnixソケットを使用しています)。TCP接続を有効にするには、「-listen tcp」をコマンドラインパラメータに追加する必要があります。私の場合、「XWin Server」アイコンを次のように変更しました。

C:\cygwin64\bin\run.exe --quote /usr/bin/bash.exe -l -c "cd; /usr/bin/startxwin -- -multiwindow -listen tcp"

これは私にとって非常にうまくいきます、ありがとう!しかしxhost +localhost、Xサーバーを起動するたびにローカルのcygwin端末で(またはより安全な解決策)を実行する必要がないようにするにはどうすればよいですか?
chappjc 2015

1
さて、私はファイルの終わり近く、最後の条件内に追加xhost +localhoststartxwinました:xhost +localhost fi exit $retval
chappjc

パテはどうですか?
ブライアントーマス

@BrianThomas質問を明確にできますか?PuTTYはどうですか?元の投稿のPuTTY構成は有効でした。問題はCygwinXにありました。
SeeJayEmm 2017

まあ、私はタイトルを言及していました、パテは接続していません、答えはCygwinのためであり、パテのためではありませんが、OPにパテ画面が表示されます。とにかく私はそれを理解しました。パテの場合、私の問題の解決策は、Xserver(私の場合はXMing)が1つだけ実行されていること、および起動時にログにエラーがないことを確認すること:10でした。(もちろん、これはあなたの答えとは関係ありません。元のOPですが、ここにも他の人がいるので、この問題はかなり広い可能性があります。これが他の人に役立つことを願っています。)
Brian Thomas

0

私はこの問題を抱えていました。X-Winが実行されていなかったためです。起動時にX-Winを実行する場合は、「ru​​n」、「shell:startup」の順に移動し、x-winショートカットをそのフォルダーにコピーします。


0

私の場合、エラーは「パテx11接続が拒否されました」と同様でした。Windowsマシンからputtyを介してUbuntu 16サーバーにログインしていました(x11転送が有効になっています)。

.Xauthorityファイルの再生成から、xauthリストを使用してマジックCookieを追加するまで、さまざまなことを試しました。しかし、問題は単にXmingサーバーが私のWindowsマシンで実行されていないことでした。Puttyを生成していたホストマシン(Windows)でXmingを起動すると、Putty経由のログインが魅力的に機能しました。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.