このセクションではLinuxで構築した自宅サーバーをVNCを使って、リモート接続するための方法を初心者/ビギナー向けに解説します。
お便利サーバー.com+相互リンクサイト内をキーワードで検索
VNCサーバーの構築

VNCについて

サーバー機の環境について

VNCクライアントの準備

VNCサーバーの基本設定

VNCサーバーのお便利設定

VNCサーバーの一括起動

SSH転送による暗号化接続


デスクトップ環境もリモート操作したい!

この コンテンツ では、自宅 サーバー の運用スタイルについて、

「 サーバー機 は邪魔にならない安全な場所に設置し、パソコンから SSH クライアント で接続して操作する。」

という方法を推奨しています 自宅サーバーの設置環境について 。

LinuxOS をサーバーとして用いる場合、稼動させるサーバー アプリケーション のほとんどは、 テキスト ベースの CUI 操作で設定・制御できるため、このような方法を推奨しているわけです。

しかしタイピングが苦手な方や、CUI上の コマンド 操作にどうしても馴染めない方は、普段使っている WindowsOS や MacintoshOS のような GUI 操作環境でサーバーをコントロールしたいと思われることでしょう。

意外に知られていませんが、GUIオペレーションが基本の WindowsServer2003 、 WindowsServer2008 、 WindowsXP Professional 、および WindowsVista 、 Windows7 のビジネス版には、 リモートデスクトップサーバー と呼ばれる機能が実装されていて、ネットワーク接続している任意のWindowsパソコンから接続してGUI環境でのリモート操作が可能になっています。

WindowsXP HomeからWindowsServer2003をリモートデスクトップで操作中
WindowsXP HomeからWindowsServer2003をリモートデスクトップで操作中

さて、LinuxOSにも X-Window という立派なGUI操作環境が標準で準備されているわけですが、これをWindowsOSのリモートデスクトップと同じように遠隔操作できる環境があれば、リビングや書斎に居ながらにして自分のパソコンからLinuxのサーバー機をGUIで操作できることになります。

そのためのアプリケーションはいくつか存在しますが、ここでは WBEL や CentOS に標準搭載されているリモートデスクトップ接続用サーバーアプリケーション vnc-server を使った操作環境の構築について解説します。

WindowsXP HomeからWBEL3のサーバーをVNCで操作中
WindowsXP HomeからWBEL3のサーバーをVNCで操作中

GUI環境をリモートで使用すれば、CUI環境では利用できないグラフィックの Webブラウザ の他、GUIベーステキストエディタや管理ツールなどもサーバー管理に利用できるようになるので、「CUI操作はちょっと苦手...。」という方にはお勧めかもしれませんね。

このページの先頭へ↑

VNCは理屈抜きで「不思議で便利で楽しいシステム」です

VNC はオープン ソース の ソフトウェア オープンソースについて ですから、そのソースコードを利用した多くの アプリケーション があります。

このようにOSにこだわらない開発環境のことを クロスプラットフォーム と呼ぶことがあります。

また、もともとVNCは UNIX での使用を前提に設計されたものではなく、様々な OS 上で利用できるように設計されていますので、 LinuxOS などのUNIX系 OS だけではなく WindowsOS や MacintoshOS などでも利用できる派生アプリケーションがあります。

VNCは接続される環境を提供する VNC サーバー と、VNCサーバーに対して接続を行う VNC クライアント の二つのアプリケーションで実現するわけですが、オリジナルのVNCのソースコードから作成されたものであれば、それぞれの開発元は異なっていてもきちんと利用できます。

それに加えて、アプリケーションの利用は異なるOS上でもかまわないという優れた柔軟性もあります。

つまりLinuxOSで構築したサーバー上でVNCサーバーを稼動させておけば、適当なVNCクライアントアプリケーションをインストールしたWindowsOSやMcintoshOSから自由に操作できるというわけです。

このあたりはWindowsOSでしか利用できないリモートデスクトップ環境とは一線を画するわけですが、VNCにはクロスプラットフォームゆえの欠点もあります。

ひとつ目は操作の快適性です。

SSH クライアントからリモートで接続して CUI 操作を行うようなケースでは、サーバーとクライアントを行き交うデータの大部分は 文字コード ですから、ネットワーク上を流れるデータはほんのわずかに過ぎません。従って、通信速度のきわめて遅い アナログ通信 でも十分に実用になります。

しかしVNCでは更に画面の「絵」の情報もあわせて送らなければなりませんから、自宅外からVNCを利用したい場合は最低でも ADSL 接続でなければ使い物にならないでしょう。

お使いのLAN環境が 10BaseT の場合はそれなりに影響を受けます。もちろんVNCが使えないというわけではありませんが...。

もちろん FTTH 、や LAN で利用する場合には通信速度としては十分です。

VNCの使用中は、実際に操作していなくてもグラフィック素描のためのデータが常にサーバーからクライアントに流れていますが、絶対的な パケット の量は決して多くはないので数十 Mbps 以上の通信速度が確保できる場合はあまり気にする必要はありません。

もうひとつはLinuxOSの多くが潜在的に抱えている問題である GUI 操作環境での安定性が、そのままVNCにも影響するという点です。

例えばVNCでサーバーに接続中にGUIに起因するエラーが起こってサーバー全体がフリーズしてしまったら、外出先からでは手の打ちようがない事態に陥るかもしれません。

X-Windowシステム の安定性は以前よりかなり向上しましたが、それでもCUI操作環境での「フリーズなどまったく考えなくてよい」という状況に比べれば遠く及ぶものではありません。

SSHではなくVNCでのサーバー管理を検討する場合は、まずはこのあたりの欠点を頭においておく必要があります。

とはいえ、自分のパソコンの画面にLinuxOSのX-Window画面が初めて表示されたときは、なんともいえない感動があります。

継続して使うかどうかは別として、VNCは一度は触れてみたいシステムの一つかもしれませんね。

ところで余談ですが、このページの冒頭でWindowsOSに実装されているリモートデスクトップ環境について少し触れましたが、WindowsOSの中で最も普及している WindowsXP や WindowsVista 、 Windows7 の「ホームエディション」には、残念ながらリモートデスクトップのサーバー機能が実装されていません。

もちろんお金を払ってProfessionalバージョンにアップグレードすればその恩恵はうけられるようになりますが、VNCを利用すれば同じようなリモート操作環境を無料で実装させることができるわけです。

もちろん純正のリモートデスクトップ環境に比べれば信頼性や快適さではとても敵いませんが、「最低限の操作ができればそれでいい。」という割り切りさえできれば悪くない選択だと思います。

この コンテンツ では具体的な方法は割愛しますが、例えば自宅のWindowsXP HomeのパソコンにVNCサーバーを インストール し、自宅の ルーター に適切な ポートフォワーディング を設定しておけば、VNCクライアントがインストール済のパソコンさえあれば、出先からでも自宅のパソコンを操作することが可能、というわけです。

ちなみに MacOSX には "Apple Remote Desktop" のいう機能が実装されていますが、これはMacintoshOS用にカスタマイズされたVNCです。

このページの先頭へ↑

OSの種類によるVNCの違いについて

WBEL や CentOS には、 VNC サーバー 環境を提供する アプリケーション として、 デフォルト で vnc-server が インストール されます。

ただし、 WBEL3 及び CentOS3 、 WBEL4とCentOS4、そしてCentOS5では、 デフォルト で インストール されているvnc-serverのバージョンが異なります。

これらは基本的な動作や仕組みに違いはありませんが、起動 スクリプト の記述に少しだけ違いがあります。

とはいえ、設定や稼動に必要なファイルや操作手順は基本的には同じなので、このセクションではこれらにインストールされているvnc-serverを同じものとして解説します。

操作が共通するところに関しては説明に支障がない限りはOSの種類やのバージョンを明示しませんが、その違いで扱いが異なる部分はその都度注釈を入れていますので参照してください。

このサイトは既に更新を終了していますが、今のところ店じまいの予定はありません。 リンクフリー ですので、趣味や勉強のためでしたら、引用、転用、コピー、朗読、その他OKです。このサイトへのリンクについては こちら をご覧ください。
Powered by Apache
”Linux”は、Linus Torvalds 氏の各国における登録商標です。”Red Hat”及びRed Hatのロゴおよび Red Hat をベースとしたすべての商標とロゴは、各国におけるRed Hat, Inc. 社の商標または登録商標です。その他のプログラム名、システム名、製品名などは各メーカー、ベンダの各国における登録商標又は商標です。
www.centos.org - The Community ENTerprise Operating System