TightVNCサーバーをRHEL / CentOSおよびFedoraにインストールして、リモートデスクトップにアクセスします


Virtual Networking Computing(VNC)は、インターネットに接続されている他のコンピューターを制御できるようにする一種のリモート共有システムです。キーボードとマウスのクリックは、あるコンピューターから別のコンピューターに簡単に送信できます。管理者と技術スタッフが、物理的に同じ場所にいなくてもサーバーとデスクトップを管理するのに役立ちます。

VNCは、1990年代後半に作成されたオープンソースアプリケーションです。独立しており、WindowsおよびUnix/Linuxと互換性があります。通常のWindowsベースのユーザーがヘーゼルなしでLinuxベースのシステムと対話できることを意味します。

VNCを使用するには、TCP/IP接続と、VNCサーバーコンポーネントを実行しているコンピューターに接続するためのVNCビューアークライアントが必要です。サーバーは、リモートコンピューターの複製表示をビューアーに送信します。

この記事では、RHEL、CentOS、およびFedoraシステムでのGNOMEデスクトップリモートアクセスを使用して、TightVNCを使用して古いVNCプログラムの大幅に拡張されたバージョンを使用してVNCサーバーをインストールする方法を示します。

ステップ1:GNOMEデスクトップをインストールする

最小バージョンのオペレーティングシステムをインストールした場合。これは、GUIではなくコマンドラインインターフェイスのみを提供します。次に、GNOMEデスクトップでGUI(グラフィカルユーザーインターフェイス)をインストールする必要があります。 GNOMEデスクトップは、リモートVNCデスクトップで非常にうまく機能する軽量デスクトップ環境を提供します。

[[email protected] ~]# yum groupinstall "X Window System" "Desktop"

ステップ2:TightVNCサーバーをインストールする

TightVNCは、リモートデスクトップへの接続を可能にするリモートデスクトップ制御ソフトウェアです。インストールするには、以下に示すように次のyumコマンドを使用します。

[[email protected] ~]# yum -y install tigervnc-server xorg-x11-fonts-Type1

ステップ3:通常のVNCユーザーを作成する

リモートデスクトップへの接続に使用される通常のユーザーを作成します。たとえば、私はユーザーとして「tecmint」を使用しましたが、独自のユーザー名を選択できます。

[[email protected] ~]# useradd tecmint
[[email protected] ~]# passwd tecmint
Changing password for user tecmint. 
New password: 
Retype new password: 
passwd: all authentication tokens updated successfully.

ステップ4:ユーザーのVNCパスワードを設定する

新しく作成したユーザーの新しいパスワードを作成します。ユーザー(su – tecmint)にログインし、「vncpasswd」を実行してユーザーのVNCパスワードを設定します。

注:このパスワードはVNCリモートデスクトップにアクセスするためのものであり、手順3で作成したパスワードはSSHにアクセスするためのものです。

[[email protected] ~]# su - tecmint
[[email protected] ~]$ vncpasswd
Password:
Verify:

上記のコマンドは、パスワードを2回入力するように要求し、passwdファイルを含むユーザーのホームディレクトリの下に「.vnc」ディレクトリを作成します。次のコマンドを使用して、パスワードファイルが作成されていることを確認できます。

# ls -l /home/tecmint/.vnc
-rw------- 1 tecmint tecmint 8 Jul 14 21:33 passwd

ここで、ユーザーログインを終了し、rootユーザーログインに戻ります。

[[email protected] ~]$ exit
exit

ステップ5:VNCXstartupスクリプトを作成する

rootユーザーとしてxstartupスクリプトを作成します。これは、VNCサーバーを起動することで作成できます。

[[email protected] ~]# /etc/init.d/vncserver start

Starting VNC server: 1:tecmint 
New 'tecmint.com:1 (tecmint)' desktop is tecmint.com:1

Starting applications specified in /home/tecmint/.vnc/xstartup
Log file is /home/tecmint/.vnc/tecmint.com:1.log
						 [  OK  ]

次に、xstartupスクリプトが(tecmint)ユーザーのホームディレクトリの下に作成されているかどうかを確認し、「ls-l」コマンドを実行します。

[[email protected] ~]# ls -l /home/tecmint/.vnc/
-rw-------. 1 tecmint tecmint    8 Jul 15 12:27 passwd
-rwxr-xr-x. 1 tecmint tecmint  654 Oct 11  2012 xstartup

作成したら、xstartupファイルにデスクトップ解像度を設定します。このためには、VNCサービスの実行を停止する必要があります。

[[email protected] ~]# /etc/init.d/vncserver stop

Shutting down VNC server: 1:tecmint              [  OK  ]

ステップ6:Xstarupの解像度を設定する

選択したエディターのファイル「/ etc/sysconfig/vncservers」ファイルを開きます。ここでは「nano」エディタを使用しています。以下のコマンドを使用して、「tecmint」の新しいVNCセッションを作成します。 「-geomerty」が使用されている場合、デスクトップの解像度を定義します。

[[email protected] ~]# nano /etc/sysconfig/vncservers

そして、ファイルの最後に次の行を追加します。保存して閉じます。

## Single User ##
VNCSERVERS="1:tecmint"
VNCSERVERARGS[1]="-geometry 1280x1024"

複数のユーザーを扱っている場合は、最初に上記の手順4で説明したようにすべてのユーザーのvncpasswdを作成してから、それらのユーザーをVNCSERVERS行に追加し、次に示すようにVNCSERVERARGS [x]エントリを追加します。ここで、「x」はID番号です。

## Multiple Users ##
VNCSERVERS="2:ravi 3:navin 4:avishek"
VNCSERVERARGS[2]="-geometry 1280x1024"
VNCSERVERARGS[3]="-geometry 1280x1024"
VNCSERVERARGS[4]="-geometry 1280x1024"

ステップ7:TightVNCサーバーを起動する

すべての変更を行った後、次のコマンドを実行してVNCサーバーを再起動します。 「tecmint」ユーザーへのVNCセッションを開始する前に、ポート番号とIDについて簡単に紹介します。デフォルトでは、VNCはポート5900およびID:0(rootユーザー用)で実行されます。このシナリオでは、tecmint、ravi、navin、avishekを作成しました。したがって、これらのユーザーはポートとIDを次のように使用します。

User's		Port's		ID's
5900		root		:0
5901		tecmint		:1
5902		ravi		:2
5903		navin		:3
5904		avishek		:4

したがって、ここでユーザー「tecmint」はポート5901とIDを:1として取得します。別のユーザーsay(user5)を作成した場合、そのユーザーは、作成したユーザーごとにポート5905とid:5などを取得します。

[[email protected] ~]# /etc/init.d/vncserver start

Starting VNC server: 1:tecmint 
New 'tecmint.com:1 (tecmint)' desktop is tecmint.com:1

Starting applications specified in /home/tecmint/.vnc/xstartup
Log file is /home/tecmint/.vnc/tecmint.com:1.log

2:ravi 
New 'tecmint.com:2 (ravi)' desktop is tecmint.com:2

Starting applications specified in /home/ravi/.vnc/xstartup
Log file is /home/ravi/.vnc/tecmint.com:2.log

3:navin 
New 'tecmint.com:3 (navin)' desktop is tecmint.com:3

Starting applications specified in /home/navin/.vnc/xstartup
Log file is /home/navin/.vnc/tecmint.com:3.log

4:avishek 
New 'tecmint.com:4 (avishek)' desktop is tecmint.com:4

Starting applications specified in /home/avishek/.vnc/xstartup
Log file is /home/avishek/.vnc/tecmint.com:4.log

                                                           [  OK  ]

ステップ8:ファイアウォールでVNCポートを開く

iptablesのポートを開きます。たとえば、5901のユーザー(tecmint)用です。

[[email protected] ~]# iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 5901 -j ACCEPT

複数のユーザーの場合、ravi、navin、avishek。ポート5902、5903、5904をそれぞれ開きます。

[[email protected] ~]# iptables -I INPUT 5 -m state --state NEW -m tcp -p tcp -m multiport --dports 5902:5904 -j ACCEPT

Iptablesサービスを再起動します。

[[email protected] ~]# service iptables save
[[email protected] ~]# service iptables restart

ステップ9:VNCクライアントをダウンロードする

次に、WindowsまたはLinuxマシンに移動し、VNC Viewerクライアントをダウンロードし、システムにインストールしてデスクトップにアクセスします。

  1. Download VNC Viewer

手順10:クライアントを使用してリモートデスクトップに接続する

VNCビューアークライアントをインストールした後、それを開くと、以下の画面のようになります。ユーザーtecmintのVNCID(つまり、1)とともにVNCサーバーのIPアドレスを入力します。

「vncpasswd」コマンドで作成したパスワードを入力してください。

これで、リモートデスクトップに接続しました。

参照リンク

TightVNCホームページ