さて、XmingとPuTTY、およびCygwin/XとCygwinsshを使用してみましたが、機能しません。
Xアプリケーションをローカルで実行できたので、クライアント側のXの問題ではありません。
を使用してサーバーに接続しました
ssh -X user@server
そしてこれで終わった:
local-user@client: ~$ ssh -X user@server
user@server's password:
Last login: Sun Jul 19 15:26:46 2009 from 192.168.100.147
[user@server ~]$ xclock &
[1] 27770
[user@server ~]$ Error: Can't open display: localhost:10.0
[1]+ Exit 1 xclock
[user@server ~]$
[user@server ~]$
これが私のsshd_configの関連スニペットです
#AllowTcpForwarding yes
#GatewayPorts no
#X11Forwarding no
X11Forwarding yes
X11DisplayOffset 10
X11UseLocalhost yes
クライアント側でssh_configが見つからないようです。/etc/sshは存在しません。
PuTTY設定を変更しましたか。サーバー名またはIPアドレスを入力したら、SSH-> X11設定を変更します。[X11転送を有効にする]チェックボックスをオンにして、[X表示場所]にlocalhost:0と入力します。 「セッション」に戻って変更を保存することを忘れないでください。
または...単に NoMachine's ソフトウェアを使用します。このソフトウェアは常にSSH経由で圧縮されたXを使用します。 RPMのみがインストールされます。
Sshを再実行しますが、-vフラグも使用します。リモート側のsshdが、X認証用にmitマジックCookieを設定するためのxauthを見つけられない可能性があります。
ローカルXサーバーが正常に動作し、ローカルネットワークソケットでリッスンしている場合(ポート6000でリッスンしている必要があります。確認してください)、手動で接続を転送できます。
ここでは、サーバー上でXサーバーが実行されていないと想定しています。
ローカルホストポート6000をサーバーから(SSHがサーバーのポート6000でリッスンするように)ローカルポート6000に転送します。接続後、次の手順を実行します。
export DISPLAY =:0 xclock
ローカルXサーバーに表示されているサーバーからxclock
を取得する必要があります。
おそらく、-Y
ではなく-X
を使用することをお勧めします。基本的に、これは信頼を適切に設定します(詳細は以下のsshのmanページから)。
-XX11転送を有効にします。これは、構成ファイルでホストごとに指定することもできます。
X11転送は注意して有効にする必要があります。リモートホスト(ユーザーのX認証データベース用)のファイル権限をバイパスする機能を持つユーザーは、転送された接続を介してローカルX11ディスプレイにアクセスできます。攻撃者は、キーストロークの監視などのアクティビティを実行できる可能性があります。
このため、X11転送には、デフォルトでX11SECURITY拡張制限が適用されます。詳細については、ssh_config(5)のssh-YオプションとForwardX11Trustedディレクティブを参照してください。
-Y信頼できるX11転送を有効にします。信頼できるX11転送は、X11SECURITY拡張制御の対象ではありません。
Xvncの使用方法を確認することをお勧めします。 Fedoraでは、いつでも簡単に接続および切断できる複数のXデスクトップを起動することを選択できます。 1つの欠点は、Xデスクトップが実行されていることです常に。絶対的なパフォーマンスが問題になる場合は、もう一度考えてみてください(ただし、しばらくアイドル状態の場合、カーネルはそれをディスクにスワップアウトします)。ただし、優れた利点は、タスクを(gnomeアプリまたはターミナルで)開始し、実行中に切断できることです。いつでも任意のvncビューアに接続して(セキュリティを強化するためにポートフォワーディングを使用)、進行状況を監視できます。
私はWindowsXサーバーに精通していません。ただし、次の2つのポイントは、すべてのXサーバーに共通です。
XサーバーがTCP接続をリッスンしないように構成されている状況に遭遇しました。この場合、sshはX接続を転送できません。確認してください。
そのポート6000は、Xサーバーを実行しているマシンで開いています。 (Linuxでは、これは次の方法で実行できます。
Sudo netstat -antp | grep 6000
Cygwinでも動作するかどうかわかりませんか?)
安全だと言わない限り、Xサーバーが接続を拒否している可能性があります。 (Linux/Unix X11サーバーでは、これは次の方法で実行できます。
xhost + hostname
ここで、「hostname」は、Xサーバーへのアクセスを許可するホスト名です。)
Sshに-vを(おそらく複数回)使用するという以前の言及は、何が問題になっているのかを見つけるためにダイヤモンドの価値があります。
Fedora11の修正
Sudo vim /etc/gdm/custom.conf
ファイルには次の行が必要です(他の行がある可能性があるため、そのままにしておきます)
[xdmcp]
[セキュリティ] DisallowTCP = false
次にXを再起動します。それは機能します...ファイアウォールをtweekする必要があるかもしれませんが