Linuxのサーバーにリモートデスクトップ環境を構築する手順について解説します。
<目次>
>0.背景・目的・前提条件
>1.VNCサーバのインストール
>2.VNCサーバの設定ファイル編集
>3.VNC 接続用のパスワード設定
>4.GNOME設定のため一度VNCを終了させる
>5.GNOMEの登録設定
>6.iptablesの設定
>7.VNCサーバの起動
>8.クライアントマシンから接続
>9.VNCサーバの停止
>補足
0.背景・目的・前提条件
LinuxといえばCUI(TeraTerm等のコマンドライン)のイメージがあるかも知れませんが、Windowsの様なGUI操作をする事も可能です。今回は”CentOS 6″に”VNCサーバ”をインストールしてリモートデスクトップ接続によるGUI操作を可能にする手順を紹介します。作業の「前提条件」としては下記を満たしている事が必須です。
また、以降の手順は全てrootで実施します。
/* rootでないユーザでログインしている場合は下記のコマンドでスイッチします */ sudo su
1.VNCサーバのインストール
まずはサーバにTeraTerm等でログインできたら、下記コマンドを実行します。途中で「Total download size: XX M Is this ok [y/d/N]:」という問いかけが来るので「y」(“yes”の意)を入力してインストールを進めます。
/* インストールコマンドの実行 */ yum install tigervnc-server yum groupinstall "X Window System" "Desktop" /* 両方コマンドとも下記の問いかけには"y"を入力する。 */ Total download size: XX M Is this ok [y/d/N]:
コンソールに”Complete!”の文字が表示されたら完了です。
/* ステータスの確認 */ /etc/rc.d/init.d/vncserver status
2.VNCサーバの設定ファイル編集
下記viコマンドで「vncservers」というファイルをviエディタで開きます。開けたら「下記文言を追加」に書かれた文言をファイルの末尾に追記します。
/* vncserversファイルの編集 */ vi /etc/sysconfig/vncservers /* 下記文言を追加 */ VNCSERVERS="1:admin" VNCSERVERARGS[1]="-geometry 1024x768 -nolisten tcp"
3.VNC 接続用のパスワード設定
VNCでは利用するユーザ毎にパスワードの設定が必要となります。手順3~5の操作は一般ユーザで実行しますので、exitで一般ユーザ(2の操作で指定したユーザ)に戻ります。戻ったら「vncpasswd」コマンドでパスワードの設定を行います。
exit vncpasswd
4.GNOME設定のため一度VNCを終了させる
次手順にて編集する「xstartup」ファイルは一度vncserverが起動しないと元ファイルが作成されないため、一度vncserverを起動したのちにGNOME設定のため一度VNCを終了させます。
sudo /etc/rc.d/init.d/vncserver start vncserver -geometry 800x600 vncserver -kill :1
5.GNOMEの登録設定
下記のviコマンドでxstartupファイルを開いて編集します。
vi ~/.vnc/xstartup
下記行をコメントアウトします。
# xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" & # twm &
下記文言を追加 (2018年2月12日修正:余分なスペースを削除)
gnome-session &
上記の設定後、ファイルのパーミッション変更(2018年2月12日追記)
chmod 777 ~/.vnc/xstartup
6.iptablesの設定
viエディタの使うのが初めての方はこちらを参照。以降の操作は再びrootで実施します。
sudo su cd /etc/sysconfig/ vi iptables /* 下記の文言を追加する */ /* 今回のディスプレイ番号は[1]なので、5901ポートへの接続を許可する設定を加える */ -A INPUT -m state --state NEW -m tcp -p tcp --dport 5901 -j ACCEPT /* iptablesを再起動する */ /etc/init.d/iptables restart
7.VNCサーバの起動
/etc/rc.d/init.d/vncserver start
8.クライアントマシンから接続
今回は「VNC Viewer」を利用します
下記の5901はポート番号で、5900+ディスプレイ番号(1)=5901を指定します。
9.VNCサーバの停止
利用終了後などは下記コマンドを実行します。
/etc/rc.d/init.d/vncserver stop
補足
「6」のiptablesの手順を実施しないと、vnc viewer起動時に下記エラーが出現します。
ログの中身は下記の様なメッセージが表示されます。
Window manager warning: Fatal IO error 11 (Resource temporarily unavailable) on display ':1'