D. Linux仮想マシンのVNC設定
D.3. SLESベース仮想マシンのVNC用の設定
# telinit 3
# telinit 5 注:
Red Hat Linuxでは、ランレベル5でグラフィカルユーザーインターフェイスが起動します。
インストールがランレベル3で起動するように設定されている場合は、ディスプレイマネー ジャが起動されるように(そしてグラフィカルコンソールにアクセスできるように)ランレ ベルを変更する必要があります。詳しくは、D.4. 「ランレベルの確認」を参照してくださ い。
7. YaSTのトップレベルの画面に戻ります。Tabキーを押して[Quit]ボタンに移動し、Enterキーを押しま す。
D.3.3. xinetd設定の変更
リモート管理を有効にした後で、XenCenterを使用するか、サードパーティのVNCクライアントを使用するか に応じて、設定ファイルを変更する必要があります。
1. 任意のエディタで/etc/xinetd.d/vncファイルを開きます。
このファイルには、以下に示すセクションが含まれています。
service vnc1 {
socket_type = stream protocol = tcp wait = no user = nobody
server = /usr/X11R6/bin/Xvnc
server_args = :42 -inetd -once -query localhost -geometry 1024x768 -depth 16 type = UNLISTED
port = 5901 }
2. port行を次のように変更します。
port = 5900
3. ファイルを上書き保存して閉じます。
4. 次のコマンドを実行して、ディスプレイマネージャとxinetdサービスを再起動します。
/etc/init.d/xinetd restart rcxdm restart
SUSE Linuxでは、ランレベル5でグラフィカルユーザーインターフェイスが起動します。リモートデスクトップ が表示されない場合は、仮想マシンがランレベル5で起動するように設定されているかどうかを確認します。詳 しくは、D.4. 「ランレベルの確認」を参照してください。
D.3.4. ファイアウォールの設定
デフォルトのファイアウォール設定では、VNCの通信がブロックされます。仮想マシンとXenCenter間にファ イアウォールを設定している場合は、VNC接続が使用するポートを開放して、このポートでの通信を許可する 必要があります。デフォルトでは、VNCサーバーはTCPポート5900 + nでVNCビューアからの接続を待機し ます。ここで、nはディスプレイ番号です(通常は0)。VNCサーバーのディスプレイ番号が0の場合はTCPポー ト5900で、ディスプレイ番号が1の場合は5901で通信します。使用するファイアウォールのドキュメントを参 照して、これらのポートが開放されていることを確認してください。
ファイアウォール設定をさらにカスタマイズして、IP接続を追跡したり、一方向からのみの接続を許可したりす ることもできます。
SLES 10.xの仮想マシンのファイアウォールでVNCポートを開放するには
1. 仮想マシン上でテキストコンソールを開き、次のコマンドを実行してYaSTユーティリティを起動します。
yast
2. 矢印キーを使って左のメニューから[Security and Users]を選択し、次に、Tabキーを押して右側のメ ニューに移動し、矢印キーを使って[Firewall]を選択します。Enterキーを押します。
3. [Firewall]画面の左のメニューで、矢印キーを使って[Allowed Services]を選択します。
4. Tabキーを押して、右側の[Firewall Configuration:Allowed Services]フィールドに移動します。
矢印キーを使って[Advanced]ボタン(右下付近の[Next]ボタンの上)を選択し、Enterキーを押し ます。
5. [Additional Allowed Ports]画面で、[TCP Ports]フィールドに5900と入力します。Tabキーを押 して[OK]ボタンに移動し、Enterキーを押します。
6. Tabキーを押して[Next]ボタンに移動し、Enterキーを押します。次に、[Summary]画面でTabキー を押して[Accept]ボタンに移動し、Enterキーを押します。最後にYaSTのトップレベルの画面
でTabキーを押して[Quit]ボタンに移動し、Enterキーを押します。
7. 次のコマンドを実行して、ディスプレイマネージャとxinetdサービスを再起動します。
/etc/init.d/xinetd restart rcxdm restart
または、rcSuSEfirewall2 stopを実行して、次回起動時までファイアウォールを無効にしたり、YaSTを使 用してファイアウォールを恒久的に無効にしたりできます。ただし、これにより、ほかのサービスが外部にさら され、仮想マシン全体のセキュリティのレベルが下がることに注意してください。
SLES 11.xの仮想マシンのファイアウォールでVNCポートを開放するには
1. 仮想マシン上でテキストコンソールを開き、次のコマンドを実行してYaSTユーティリティを起動します。
yast
2. 矢印キーを使って左のメニューから[Security and Users]を選択し、次に、Tabキーを押して右側のメ ニューに移動し、矢印キーを使って[Firewall]を選択します。Enterキーを押します。
3. [Firewall]画面の左のメニューで、矢印キーを使って[Custom Rules]を選択してEnterキーを押しま す。
4. Tabキーを押して[Custom Allowed Rules]の[Add]ボタンに移動し、Enterキーを押します。
5. [Source Network]フィールドに0/0と入力します。Tabキーを押して[Destination Port]フィール ドに移動し、5900と入力します。
6. Tabキーを押して[Add]ボタンに移動し、Enterキーを押します。
7. Tabキーを押して[Next]ボタンに移動し、Enterキーを押します。次に、[Summary]画面でTabキー を押して[Finish]ボタンに移動し、Enterキーを押します。最後にYaSTのトップレベルの画面でTabキー を押して[Quit]ボタンに移動し、Enterキーを押します。
8. 次のコマンドを実行して、ディスプレイマネージャとxinetdサービスを再起動します。
/etc/init.d/xinetd restart rcxdm restart
または、rcSuSEfirewall2 stopを実行して、次回起動時までファイアウォールを無効にしたり、YaSTを使 用してファイアウォールを恒久的に無効にしたりできます。ただし、これにより、ほかのサービスが外部にさら され、仮想マシン全体のセキュリティのレベルが下がることに注意してください。
D.3.5. VNC画面の解像度
グラフィカルコンソールを使用して仮想マシンに接続した後で、画面の解像度が適当でない(たとえば、仮想 マシンの画面が大きすぎてグラフィカルコンソールペインに収まらない)場合は、次の手順でVNCサーバー のgeometryパラメータを設定して、解像度を調整します。
1. 任意のテキストエディタを使って/etc/xinetd.d/vncファイルを開き、service_vnc1セクション
(displayID 1に対応する)を探します。
2. server_args行のgeometry引数を、目的のディスプレイ解像度に変更します。たとえば、次のように指 定します。
server_args = :42 -inetd -once -query localhost -geometry 800x600 -depth 16 ここで、geometryパラメータに、有効な画面の幅と高さを指定できます。
3. ファイルを上書き保存して閉じます。
4. 次のコマンドを実行して、VNCサーバーを再起動します。
/etc/init.d/xinetd restart rcxdm restart