VNCをサービスとして動作させる(デスクトップセッション)
CentOSのVNCサービスの起動には三種類があります。
違いの説明は別ページに掲載します。
VNCを動作させる(解説)
VNCをサービスとして起動させる流れは、以下のようになります。
1.sysconfigにvncserver接続のパラメータを記述する
2.vncpasswordを設定する
3.vncserverを起動する
4.デフォルトのウィンドウマネージャがtwmなので修正する
5.vncserverを再起動する
6.ファイアウォールを解放する
7.別の端末からVNCで接続する
1./etc/sysconfig/vncserversを図のように編集する
VNCSERVERS="1:root"
VNCSERVERARGS[1]="-geometry 800x600 -nolisten tcp -nohttpd"
VNCSERVERSの値に、ディスプレイ番号1とrootのデスクトップセッションへ接続するように記述します。
VNCSERVERSARGSにディスプレイ番号1のサーバの設定情報を入力しています。
デフォルトからlocalhostなども削除してあります。
2.vncpasswordを設定する
コマンドから
#vncpasswd
と入力し、rootデスクトップセッションへ接続するためのVNC接続用パスワードを設定します。
~/.vnc/passwdファイルが生成されます。
VNCサービスはパスワードが設定されていないと起動しません。
なお、/etc/sysconfig/vncserversファイルのVNCSERVERARGSに「-SecurityTypes none」が設定されている場合は接続時にパスワードが問われなくなります。
ただしVNCの起動に相変わらずパスワードファイルは必要です。vncpasswdで生成しておく必要があります。
3.vncserverを起動する
コマンドからvncserverを起動し、自動起動に設定します。
#services vncserver start
#chkconfig vncserver on
これにより、~/.vncの下にデスクトップセッション用のVNCの設定情報が書き込まれます。
4.デフォルトのウィンドウマネージャがtwmなので修正する
~/.vnc/xstartupファイルを編集します。
最終二行をコメントアウトし、gnome-sessionを追記します。
もちろんtwmでなにも困らない人は、編集する必要がありませんとも。
5.設定を再読み込みさせるため、vncserver を再起動する
vncserverを再起動します。
#services vncserver restart
6.ファイアウォールを解放する
コマンドがGUIで実施します。GUからの方が簡単でしょう。
[システム]-[管理]-[セキュリティレベルとファイアウォールの設定]を起動します。
[その他のポート]に5901番を追加します。
これでOKです。
なぜ5901かと言えば、手順1で指定したディスプレイ番号にVNCのデフォルトポート5900を加えた数字をポート番号として利用するという暗黙の了解があるからです。
ちなみにコマンドから解放する場合はiptablesファイルを編集します。
#vi /etc/sysconfig/iptables
そして一番下のREJECT行の上に、5900番ポートを許可します。
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 5901 -j ACCEPT
나는 이렇게 바꿔서 설정..
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p 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」行の次に追加されるので、やはり評価されません。
ファイルを直接記述しましょう。
7.別の端末からVNCで5901番ポートへ接続する
VNCパスワードの入力後、rootのデスクトップが表示されます。
なお、この接続の場合はログオフしてはいけません。
デスクトップセッションのGNOMEが終了してしまい、VNCServerを再起動しないと次のVNC接続ができなくなります。
ここではウィンドウを閉じるのが正しい操作です。
출처 : http://hp.vector.co.jp/authors/VA022911/tec/centos/vnc1.htm
'Skills > Unix, Linux' 카테고리의 다른 글
Send mail from linux command line (0) | 2020.08.07 |
---|---|
Linux 에서 DNS 설정 하기 (0) | 2015.11.09 |
리눅스 환경에서 mysql 연동하기 (0) | 2015.09.23 |
How to install tcpreplay on Linux (0) | 2015.03.18 |
.bash_profile과 .bashrc의 차이점 (0) | 2015.03.05 |
댓글