適用先 SUSE Linux Enterprise Desktop 12

5 VNCによるリモートアクセス

VNC (Virtual Network Computing)では、グラフィカルなデスクトップを使用してリモートコンピュータを制御できます。これは、リモートシェルアクセスとは対照的です。VNCはプラットフォームに依存しないので、VNCを使用すれば、任意のオペレーティングシステムからリモートマシンにアクセスできます。

SUSE Linux Enterprise Desktopでは、2種類のVNCセッションをサポートしています。1つはクライアントからのVNC接続が続く限り、「存続する」一時的セッションで、もう1つは明示的に終了されるまで「存続する」永続的セッションです。

注記
注記: セッションタイプ

両方のタイプのセッションを1つのコンピュータの異なるポートから同時に提供ができます。ただし、オープンセッションを1つのタイプからもう一方のタイプに変換することはできません。

5.1 一時的VNCセッション

一時的セッションは、リモートクライアントによって開始されます。これにより、サーバにグラフィカルなログイン画面が開きます。この画面でセッションを開始するユーザを選択できます。さらに、ログインマネージャでサポートされている場合はデスクトップ環境も選択できます。そのようなVNCセッションへのクライアント接続を終了すると、そのセッション内で開始したアプリケーションもすべて終了します。一時的なVNCセッションは共用できませんが、1つのホストで同時に複数のセッションを実行することは可能です。

手順 5.1 一時的VNCセッションの有効化
  1. まず、YaST › ネットワークサービス › リモート管理(VNC)の順に選択します。

  2. (リモート管理を許可するにチェックマークを付けます。

  3. 必要な場合は、ファイアウォールでポートを開くにもチェックマークを付けます (たとえば、ネットワークインタフェースを外部ゾーンに属するように設定する場合)。ネットワークインタフェースが複数ある場合は、ファイアウォールの詳細で、特定のインタフェースにだけファイアウォールポートを開くように制限します。

  4. 完了で設定を確認します。

  5. 必要なパッケージの一部をまだ入手できない場合は、足りないパッケージのインストールを承認する必要があります。

注記
注記: 使用可能な設定

SUSE Linux Enterprise Desktopのデフォルト設定では、1024x768ピクセルの解像度と16ビットの色数でセッションが提供されます。セッションで使用できるポートは、正規の VNCビューアの場合はポート5901(VNCディスプレイ1に相当)、Webブラウザの場合はポート5801です。

その他の設定は、異なるポートで使用できます。システム管理者に問い合わせてください。

VNCディスプレイ番号とXディスプレイ番号は、一時的セッションでは互いに独立しています。VNCディスプレイ番号は、サーバがサポートするすべての設定に手動で割り当てられます(上記の例では1)。VNCセッションは、設定の1つを使用して開始されるたびに、自動的に未使用のXディスプレイ番号を取得します。

5.1.1 一時的VNCセッションを開始する

一時的VNCセッションを開始するには、VNCビューアをクライアントコンピュータにインストールしておく必要があります。SUSE Linux製品の標準ビューアは、tigervncパッケージ(デフォルト)またはtightvncパッケージで提供されるvncviewerです。WebブラウザとJavaアプレットを使用してVNCセッションを表示することもできます。

VNCビューアを起動し、サーバのデフォルト設定でセッションを開始するには、次のコマンドを使用します。

vncviewer jupiter.example.com:1

VNCディスプレイ番号の代わりに、2つのコロンを使用してポート番号を指定することもできます。

vncviewer jupiter.example.com::5901

または、Javaを有効にしたWebブラウザで、URLとして「http://jupiter.example.com:5801」を入力することにより、VNCセッションを表示できます。

5.1.2 一時的VNCセッションを設定する

デフォルト設定を変更する必要も意志もない場合は、このセクションをスキップできます。

一時的VNCセッションは、xinetdデーモンを介して開始されます。設定ファイルは、/etc/xinetd.d/vncにあります。このファイルは、デフォルトで、6つの設定ブロックを提供します: VNCビューア用に3ブロック(vnc1からvnc3まで)、Javaアプレット用に3ブロック(vnchttpd1からvnchttpd3まで)。デフォルトでは、vnc1vnchttpd1だけが有効です。

設定を有効にするには、disable = yes行の最初のカラムに#文字を付けて行をコメント化するか、 その行を完全に削除します。設定を無効にするには、その行をコメント解除するか、追加します。

Xvncサーバは、server_argsオプションで設定できます。オプションのリストについては、Xnvc --helpを参照してください。

カスタム設定を追加する際には、それらの設定が、同じホスト上の他の設定、他のサービス、または既存の永続的VNCセッションですでに使用中のポートを使用しないことを確認してください。

設定の変更を有効にするには、次のコマンドを入力します:

sudo rcxinetd reload
重要
重要: ファイアウォールとVNCポート

手順5.1「一時的VNCセッションの有効化」で説明されているように、リモート管理をアクティブにすると、ファイアウォール内でポート5801および5901が開きます。VNCセッションで使用されるネットワークインタフェースがファイアウォールで保護されている場合、VNCセッションの追加ポートをアクティブにする際には各ポートを手動で開く必要があります。手順については、Chapter 15, Masquerading and Firewalls, Security Guideを参照してください。

5.2 永続的VNCセッション

永続的VNCセッションは、サーバ上で開始されます。セッションとこのセッションで開始されたすべてのアプリケーションは、クライアント接続とは関わりなく、セッションが終了するまで実行されます。

永続的セッションは、複数のクライアントから同時にアクセスすることが可能です。この機能では、1つのクライアントがフルアクセスをもち、他のすべてのクライアントが表示専用アクセスを持つため、デモ用途に最適です。また、講師が受講生のデスクトップにアクセスする必要があるトレーニングでも使用できます。ただし、ほとんどの場合、VNCセッションの共用が必要とされることはありません。

ディスプレイマネージャを起動する一時的セッションとは対照的に、永続的セッションでは、操作準備のできたデスクトップを起動し、そのデスクトップがVNCセッションを開始したユーザとしてセッションを実行します。

永続的セッションへのアクセスは、可能な2タイプのパスワードによって保護されます:

  • フルアクセスを付与する通常のパスワード。または、

  • 非対話的(表示オンリー)アクセスを付与するオプションの表示オンリーパスワード。

1つのセッションに、両方の種類のクライアント接続が一度に複数存在できます。

手順 5.2 永続的VNCセッションを開始する
  1. シェルを開き、VNCセッションを所有するユーザとしてログインしていることを確認します。

  2. VNCセッションで使用されるネットワークインタフェースがファイアウォールで保護されている場合は、ファイアウォール内でセッションによって使用されるポートを手動で開く必要があります。複数のセッションを開始する場合は、一連のポートを開くことができます。ファイアウォールの設定方法の詳細については、Chapter 15, Masquerading and Firewalls, Security Guideを参照してください。

    vncserverは、ディスプレイ:1にはポート5901 、ディスプレイ:2にはポート5902という順序でポートを使用します。永続的セッションの場合、VNCディスプレイとXディスプレイは、通常、同じ番号です。

  3. 1024x769ピクセルの解像度と16ビットの色数でセッションを開始するには、次のコマンドを入力します。

    vncserver -geometry 1024x768 -depth 16

    vncserverコマンドは、何も指定されない場合、未使用のディスプレイ番号を選択し、その選択内容を出力します。追加オプションについては、man 1 vncserverを参照してください。

初めてvncviewerを実行すると、セッションへのフルアクセス用パスワードが要求されます。必要な場合は、セッションへの表示オンリーアクセス用パスワードも入力できます。

ここで指定するパスワードは、同じユーザによって開始される今後のセッションにも使用されます。それらのパスワードは、vncpasswdコマンドで変更できます。

重要
重要: セキュリティ上の考慮事項

必ず、かなりの長さ(8文字以上)の強力なパスワードを使用してください。これらのパスワードは共用しないでください。

VNC接続は暗号化されていないので、2つのコンピュータ間のネットワークを傍受できる者たちによってセッション開始時に転送されるパスワードが読み取られる恐れがあります。

VNCセッションを終了するには、通常のローカルXセッションのシャットダウンのように、VNC環境内部で実行中のデスクトップ環境をVCNビューアからシャットダウンします。

セッションを手動で終了したい場合は、VNCサーバでシェルを開き、終了したいVNCセッションを所有するユーザとしてログインしていることを確認します。次のコマンドを実行して、ディスプレイ:1で実行されているセッションを終了します: vncserver -kill :1

5.2.1 永続的VNCセッションに接続する

永続的VNCセッションに接続するには、VCNビューアをインストールする必要があります。SUSE Linux製品の標準ビューアは、tigervncパッケージ(デフォルト)またはtightvncパッケージで提供されるvncviewerです。WebブラウザとJavaアプレットを使用してVNCセッションを表示することもできます。

VNCビューアを起動し、VNCサーバのディスプレイ:1に接続するには、次のコマンドを使用します。

vncviewer jupiter.example.com:1

VNCディスプレイ番号の代わりに、2つのコロンを使用してポート番号を指定することもできます。

vncviewer jupiter.example.com::5901

または、Javaを有効にしたWebブラウザで、URLとして「http://jupiter.example.com:5801」を入力することにより、VNCセッションを表示できます。

5.2.2 永続的VNCセッションを設定する

永続的VNCセッションは、$HOME/.vnc/xstartupを編集することによって設定できます。デフォルトでは、このシェルスクリプトは、起動元と同じGUI/ウィンドウマネージャを起動します。SUSE Linux Enterprise Desktopでは、これは、GNOMEまたはIceWMのいずれかです。好みのウィンドウマネージャでセッションを開始する場合は、変数WINDOWMANAGERを設定します。

WINDOWMANAGER=gnome vncserver -geometry 1024x768
WINDOWMANAGER=icewm vncserver -geometry 1024x768
注記
注記: ユーザごとに1つの設定

永続的VNCセッションは、ユーザごとの単一設定として設定されます。同じユーザが開始する複数のセッションでは、すべて同じ起動ファイルとパスワードファイルが使用されます。

このページを印刷