TigerVNC 1.1.0のCentOS 6.6へのインストールと初期設定
目次
概要
Windows上のVNCクライアント(RealVNC)からVNCサーバ(TigerVNC)にリモート接続してGUI環境を利用するための設定を行います。 接続する際のユーザは uvnc に限定するものとします。
構成
サーバ構成
OSバージョン
CentOS 6.6 x86_64
ソフトウェア・パッケージ一覧
xorg-x11-fonts-misc-7.2-9.1.el6.noarch.rpm ・・・tigervnc-serverの依存パッケージ
tigervnc-server-1.1.0-16.el6.x86_64.rpm
クライアント構成
OSバージョン
Windows 7 Ultimate Service Pack 1 64bit
ソフトウェア・パッケージ一覧
VNC Viewer for Windows 64-bit 5.2.2
環境構築
インストール
VNCサーバに必要なパッケージを2つインストールします。 その他Linuxインストール時のソフトウェア選択によって必要なパッケージが異なってきますので、 依存関係でエラーになった場合は適宜前提パッケージをインストールしてください。 DVDドライブにCentOS 6.6のDVD-ROM1をセットし、以下のコマンドを実行します。
# mount /dev/cdrom /media/cdrom # cd /media/cdrom/Packages/ # rpm -ihv xorg-x11-fonts-misc-7.2-9.1.el6.noarch.rpm 準備中... ########################################### [100%] 1:xorg-x11-fonts-misc ########################################### [100%] # rpm -ihv tigervnc-server-1.1.0-16.el6.x86_64.rpm 準備中... ########################################### [100%] 1:tigervnc-server ########################################### [100%] # cd / # umount /media/cdrom
設定
VNC接続用ユーザの作成
VNC接続用のLinuxユーザ(ユーザ名:uvnc)を作成します。
# groupadd -g 20001 admin # useradd -u 20001 uvnc # passwd uvnc ユーザー uvnc のパスワードを変更。 新しいパスワード: ←パスワードを入力(文字は表示されません) 新しいパスワードを再入力してください: ←パスワードを入力(文字は表示されません) passwd: 全ての認証トークンが正しく更新できました。
TigerVNCの設定
viエディタで設定ファイル(vncservers)を開き、設定を変更します。
# cd /etc/sysconfig/ # vi vncservers
※ファイルの末尾に追加※
VNCSERVERS="1:uvnc"
VNCSERVERARGS[1]="-geometry 1024x768"
VNCパスワードファイルの作成
VNCクライアントから接続する際に認証で使用されるパスワードは Linuxのパスワードではなく、VNC用のパスワードです。 パスワードはLinuxユーザ毎に作成されるので混同しないようにしてください。
# su - uvnc $ vncpasswd Password: ←パスワードを入力(文字は表示されません) Verify: ←パスワードを入力(文字は表示されません) $ exit logout
起動スクリプトの作成
VNCサーバの起動スクリプトを作成します。 一度起動すると自動でデフォルトの起動スクリプトが生成されますので、 それを利用します。
# service vncserver start VNC サーバー を起動中: 1:uvnc xauth: creating new authority file /home/uvnc/.Xauthority xauth: (stdin):1: bad display name "linuxsvr:1" in "add" command New 'linuxsvr:1 (uvnc)' desktop is linuxsvr:1 Creating default startup script /home/uvnc/.vnc/xstartup Starting applications specified in /home/uvnc/.vnc/xstartup Log file is /home/uvnc/.vnc/linuxsvr:1.log [ OK ] # service vncserver stop VNC サーバー を停止中: 1:uvnc [ OK ] # cd /home/uvnc/.vnc/ # vi xstartup
※以下、該当箇所のみ変更※ xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" & twm & ↓変更 #xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" & #twm & gnome-session &
ホスト名の登録
VNCサーバ起動時に「xauth: (stdin):1: bad display name "linuxsvr:1" in "add" command」のような メッセージが表示された場合、ホスト名の名前解決に失敗している可能性があります。 hostsファイル、もしくはDNSサーバで名前解決できるように登録してください。 以下はhostsファイルに登録する際の手順です。
# cd /etc/ # vi hosts
※ファイルの末尾に追加※ 192.168.0.104 linuxsvr ←あくまでサンプルです
自動起動の設定
Linux起動時にVNCサーバも自動で起動するよう設定を変更します。
# chkconfig --list vncserver vncserver 0:off 1:off 2:off 3:off 4:off 5:off 6:off # chkconfig vncserver on # chkconfig --list vncserver vncserver 0:off 1:off 2:on 3:on 4:on 5:on 6:off
VNCサーバの起動
設定が終わったらVNCサーバを起動します。
# service vncserver start VNC サーバー を起動中: 1:uvnc New 'linuxsvr:1 (uvnc)' desktop is linuxsvr:1 Starting applications specified in /home/uvnc/.vnc/xstartup Log file is /home/uvnc/.vnc/linuxsvr:1.log [ OK ]
動作確認
プロセス確認
TigerVNCのプロセスを確認します。 関係ないプロセスも表示されていますが、多数の関連プロセスが起動しています。 (各プロセスの詳細は未確認です)
# ps -ef | grep vnc uvnc 2648 1 0 Dec28 ? 00:00:00 /usr/bin/pulseaudio --start --log-target=syslog uvnc 12596 1 0 04:59 ? 00:00:00 /usr/bin/Xvnc :1 -desktop rah81s1:1 (uvnc) -auth /home/uvnc/.Xauthority -geometry 1024x768 -rfbwait 30000 -rfbauth /home/uvnc/.vnc/passwd -rfbport 5901 -fp catalogue:/etc/X11/fontpath.d -pn uvnc 12603 1 0 04:59 ? 00:00:00 /usr/bin/ck-xinit-session /usr/bin/ssh-agent /etc/X11/xinit/Xclients uvnc 12605 12603 0 04:59 ? 00:00:00 vncconfig -iconic uvnc 12614 1 0 04:59 ? 00:00:00 dbus-launch --sh-syntax --exit-with-session uvnc 12615 1 0 04:59 ? 00:00:00 /bin/dbus-daemon --fork --print-pid 5 --print-address 7 --session uvnc 12634 12603 0 04:59 ? 00:00:00 /usr/bin/gnome-session uvnc 12636 12634 0 04:59 ? 00:00:00 /usr/bin/ssh-agent /etc/X11/xinit/Xclients uvnc 12643 1 0 04:59 ? 00:00:00 /usr/libexec/gconfd-2 uvnc 12649 1 0 04:59 ? 00:00:00 /usr/libexec/gnome-settings-daemon uvnc 12651 1 0 04:59 ? 00:00:00 gnome-keyring-daemon --start uvnc 12658 1 0 04:59 ? 00:00:00 seahorse-daemon uvnc 12661 1 0 04:59 ? 00:00:00 /usr/libexec/gvfsd uvnc 12678 12634 0 04:59 ? 00:00:00 metacity uvnc 12680 12634 0 04:59 ? 00:00:00 nautilus uvnc 12685 12634 0 04:59 ? 00:00:00 gnome-power-manager uvnc 12689 1 0 04:59 ? 00:00:00 /usr/libexec/im-settings-daemon uvnc 12691 12634 0 04:59 ? 00:00:00 bluetooth-applet uvnc 12694 12634 0 04:59 ? 00:00:00 gnome-volume-control-applet uvnc 12698 12634 0 04:59 ? 00:00:00 /usr/libexec/gdu-notification-daemon uvnc 12701 12634 0 04:59 ? 00:00:00 /usr/libexec/polkit-gnome-authentication-agent-1 uvnc 12718 1 0 04:59 ? 00:00:00 /usr/libexec/gvfsd-trash --spawner :1.9 /org/gtk/gvfs/exec_spaw/0 uvnc 12728 1 0 04:59 ? 00:00:00 /usr/libexec/gvfs-gdu-volume-monitor uvnc 12788 1 0 04:59 ? 00:00:00 /usr/libexec/gvfs-afc-volume-monitor uvnc 12799 1 0 04:59 ? 00:00:00 /usr/libexec/gvfs-gphoto2-volume-monitor uvnc 12888 12689 0 04:59 ? 00:00:00 /usr/bin/ibus-daemon -r --xim uvnc 12891 1 0 04:59 ? 00:00:00 /usr/libexec/gconf-im-settings-daemon uvnc 12892 12888 0 04:59 ? 00:00:00 /usr/libexec/ibus-gconf uvnc 12894 12888 0 04:59 ? 00:00:00 python /usr/share/ibus/ui/gtk/main.py uvnc 12896 1 0 04:59 ? 00:00:00 /usr/libexec/ibus-x11 --kill-daemon uvnc 12897 12888 0 04:59 ? 00:00:00 python /usr/share/ibus-anthy/engine/main.py --ibus uvnc 12902 1 0 04:59 ? 00:00:00 /usr/libexec/gvfsd-burn --spawner :1.9 /org/gtk/gvfs/exec_spaw/1 root 12954 3045 0 05:03 pts/0 00:00:00 grep vnc
ポート確認
TigerVNCがリッスンしているポートを確認します。 5901/tcpでリッスンしているのが確認できれば正常に動作しています。
# netstat -tanp | grep vnc tcp 0 0 0.0.0.0:6001 0.0.0.0:* LISTEN 12596/Xvnc tcp 0 0 0.0.0.0:5901 0.0.0.0:* LISTEN 12596/Xvnc tcp 0 0 :::6001 :::* LISTEN 12596/Xvnc
クライアント設定
インストール
RealVNCのサイトからVNC Viewerをダウンロードし、Windows上の任意の場所に配置します。 exeファイルはスタンドアローン形式なので、インストールは不要です。
【URL】
Download VNC Viewer
【ファイル名】
VNC-Viewer-5.2.2-Windows-64bit.exe
利用方法
Windows上で VNC-Viewer-5.2.2-Windows-64bit.exe ファイルを実行すると、初回起動時に以下のようなライセンス同意画面が表示されます。 [I have read and accept these terms and conditions.]をチェックし、[OK]ボタンをクリックします。
[VNC Server]にVNCサーバのIPアドレスとポート番号を入力し、[Connect]ボタンをクリックします。 ポート番号は /etc/sysconfig/vncservers で設定した VNCSERVERARGS[] の[]内の値(今回は1)+5900 となるため、5901です。
通信を暗号化していないため以下のような警告が表示されますが、[Continue]ボタンをクリックします。
認証画面が表示されるので、vncpasswd で設定した uvnc ユーザのパスワードを入力して[OK]ボタンをクリックします。
以下のようにデスクトップが表示されたらVNCでの接続は成功です。