|
||
|
VNCをユーザプロセスとして動作させる(デスクトップセッション)CentOSのVNCサービスの起動には三種類があります。 違いの説明は別ページに掲載します。 VNCを動作させる(解説) VNCをユーザプロセスとして動作させる流れは、以下のようになります。 1.vncserverを起動する 2.ファイアウォールを解放する 3.VNCでアクセスする 4.xstartupを編集する 5.vncserverを再起動する 1.vncserverを起動するコマンドから「vncserver」を実行します。#vncserver するとVNCの設定ファイルの生成とともに、VNCパスワードを求められます。 このパスワードがデスクトップセッションへの接続パスワードになりまるので、重要です。6文字以上必要です。 後からパスワードを変更する場合はvncpasswdコマンドを使用します。 何度もvncserverコマンドを実行すると、そのたびにvncserverプロセスが増えていって、ディスプレイ番号と待ち受けポートが使用されていきますので注意してください。 手順5のvncserverの終了方法を参照してください。 2.ファイアウォールを解放するコマンドかGUIで実施します。GUIのほうが簡単です。GUIで実施する場合は、[システム]-[管理]-[セキュリティレベルとファイアウォールの設定]を起動します。 その他のポートに「5901」を追加します。 なぜ5901かと言うと、手順1の画像にあるように「localdomain:1」というディスプレイ番号+VNCのデフォルトポート5900が加わって区別されるからです。 ちなみにコマンドから解放する場合はiptablesファイルを編集します。 #vi /etc/sysconfig/iptables そして一番下のREJECT行の上に、5900番ポートを許可します。 -A RH-Firewall-1-INPUT -p tcp -m tcp --dport 5901 -j ACCEPT 画像では5900になってますが、5901を記述します。 保存した後、iptablesを再起動します。 #service iptables restart ※iptableコマンドで5900番を許可すれば良さそうなものですが、実はうまく行きません。 iptable -Lを実行すればわかりますが、よくあるように #iptables -A INPUT -p tcp --dport 5901 -j ACCEPT と入力しても、実際に記述されるのはINPUTテーブルの「RH-Firewall-1-INPUT」の次に追加されます。 つまり評価されません。 ならばと #iptables -A RH-Firewall-1-INPUT -p tcp --dport 5901 -j ACCEPT と記述しても、今度は「REJECT」行の次に追加されるので、やはり評価されません。 ファイルを直接記述しましょう。 3.VNCでアクセスするVNCクライアントから「ホスト名:5901」、もしくは「ホスト名:1」と指定して接続します。手順1で指定したVNCパスワードを入力し、接続するとびっくります。 古臭いウィンドウシステム、twmが起動します。 現代人には耐えられません。 4.xstartupを編集するtwmをやめ、現代的なGNOMEを使用すべきです。カレントディレクトリ以下にある「~/.vnc/xstartup」ファイルを編集します。 twmが起動している行とxtermの行をコメントアウトし、代わりにGnomeが起動するよう「gnome-session」を追加します。 5.vncserverを再起動する現在起動しているvncserverを停止します。その時、ディスプレイ番号「:1」を指定します。再度vncserverを起動させます。 #vncserver -kill :1 #vncserver もしいくつvncが起動しているか分からない場合はコマンド「ps -ax | grep vnc」で検索して調べます。 再度VNCクライアントからアクセスすると、GNOMEが表示されます。 なお、ログオフしないようにしましょう。クライアントからはVNCウィンドウを閉じるだけです。 ログオフしてしまうとデスクトップセッションが終了してしまい、再度vncserverをkillして実行する必要があります。 この手順は一時的にVNCを稼働させる方法です。 システムを再起動したり、毎回ログオン時にvncserverコマンドを実行するのが面倒なら、カレントの「.bashrc」ファイルにvncserverコマンドを追記しておきましょう。 さらに恒常的にかつ安定的にVNCでアクセスするというのなら、サービスとして登録しましょう。 ログインセッションを使用して、ログインユーザを使い分けたり、OSのユーザ認証を使用するのならxinetdで設定しましょう。 VNCを動作させる(解説)を参照してください。 |
|