Xvnc and SSH X Forwarding

Fedora 10 のホストOSでは、CUIではやり辛いハードウェアの追加などで、virt-manager をよく使っている。ただ、ディスプレイが1つしかないため、ホストOSでGUIを使う必要がある度に、画像ケーブルをクライアントPCとホストOSで差し替える必要があったのだが、これは非常に面倒である。このため、まずVNCを使用しようとしてみた。

VNCとしては、Fedora付属の vnc-server パッケージを使った。確認したところ、VNCの使い方には

  • inetdを使用
  • パスワードファイルによる認証を使用(ユーザーは固定)

があることがわかった。パスワードファイルはテキストファイルであり、FreeIPAのようにパスワードポリシーをかけることができないため、inetdの使用を考えたのだが、xinetdを使っていたためなのか上手く動作しなかった。

仕方がないので、テキストファイルのパスワードで妥協しようかと思ったのだが、クライアントPCにもLinuxを使っていたため、SSH XForwarding を試してみた。

(clientPC)$ ssh -X fedora-intel1.jp.example.org

を最初に実行した状態で

(hostOS)# virt-manager

を実行すると、クライアント側のPCにvirt-managerが表示される。SSH経由であるためSSOも適用され、パスワードポリシーにも問題はないといいことづくめなのだが、クライアントPCでもXが稼働している必要があるため、Windows PC を使用している場合には、coLinuxCygwin/X等を使う必要がある。もちろんクライアントPC自体がubuntuなら問題は無い ww

今までも system-config-authenticationや、system-config-cluster などGUIを使いたい場面はあったのだが、これからはSSHで対応できそうな感じだ。まあ、例によって若干古くさい感じがするのがアレだが www


追記:
なおXvncについてもGSSAPI (というかSASL)への対応が行われており、Fedora 11で取り込まれる予定らしい。ただし、GSSAPIではVNC Client側の対応も必要なのですぐに使えるかどうかは今のところわからない。 また、使用ユーザーを/etc/sysconfig/vncserver で固定する必要はあるかもしれない。