Hyper-V Server 2012 R2環境でのCentOS 6.5へのxrdpの導入(X11RDP-RH-Matic編)

Hyper-V Server 2012 R2はWindows Server 2012 R2付属のHyper-Vサーバ機能に特化した無償の仮想化ソフトウェアです。
(Hyper-V Server 2012 R2の導入・活用手順については「無償のHyper-V Server 2012 R2利用」をご参照下さい)

2013年11月にCentOS 6.5がリリースされました。
その直後の2013年12月19日にHyper-VのLIS(Linux Integration Services) ver 3.5がリリースされましたが、
CentOS 6.5はLIS ver 3.5正式公開に先立ってLIS ver 3.5相当のものがビルトインされてリリースされました。
またCentOS 6.5ではEPEL版のxrdp 0.5.0(RDPサーバ)が利用できていました。
しかしCentOS 6.5上で開発されているX11RDP-RH-Maticを使用すればCentOS 6.5でxrdpパッケージを簡単に作成することができます。
そこで今回はHyper-V Server 2012 R2環境での32ビット版CentOS 6.5でのX11RDP-RH-Matic 1.0.4(2014年8月21日リリース)の使用によるxrdp 0.9.0パッケージの生成とその利用例について紹介致します。
またX11RDP-RH-Matic 1.0.4で試験的に生成できるxrdp xorg(RDP接続専用Xサーバ)についても触れてみたいと思います。

尚、http://xrdp.vmeta.jp/X11RDP-RH-Matic(X11RDP-RH-Matic - 日本xrdpユーザ会」の2014年9月9日時点の公開情報はこちらのpdfで確認できます。

今回使用したPCのハードウェア/ソフトウェア構成は以下の通りです。


  1. 仮想マシンの定義
    (1)仮想マシンの名前:ここでは「HVSCentOS65」としました。
    (2)仮想マシンの世代:第1世代
    (3)起動メモリ:4096MB
    (4)新規の仮想ハードディスク:HVSCentOS65.vhdx(容量可変の127GB仮想ディスク)
    (5)仮想マシンのネットワークアダプタ:デフォルトのネットワークアダプタ(レガシーネットワークアダプタではありません)
    ※ネットワークの構成での接続:仮想スイッチ1(外部接続用スイッチ)
    (6)インストールオプションの[後でオペレーティングシステムをインストールする]:on
    (7)仮想マシン(HVSCentOS65)の設定;
    ・DVDドライブのイメージファイル:CentOS-6.5-i386-bin-DVD1.iso


  2. 仮想マシンへのCentOS 7のインストール
    インストール手順の説明はここでは割愛させて戴きますが以下の設定をしています。
    ・ホスト名:HVSCentOS65
    ・root以外のユーザ:amber


  3. xrdpビルド・活用の下準備
    rootユーザでログインしてxrdpビルド・活用の下準備として以下の操作を行います。


  4. xrdpパッケージのビルド

  5. xrdpパッケージのとインストールと設定


  6. リモートデスクトップ接続クライアントからHVSCentOS65への接続
    Windows 8.1のリモートデスクトップ接続クライアントからHVSCentOS65へのRDP接続を行ってみます。


  7. localhostへのRDP接続
    HVSCentOS65のroot用デスクトップ上でamberユーザのデスクトップを表示する方法の一つとしてXnestがあります(XDMCP接続でログインして使用)。
    Xnestを使用するには「yum install Xnest」でXnestをインストールし、更に/etc/gdm/custom.conf中の[xdmcp]セクションに「Enable=True」を追記して再起動します。
    ・Xnestの起動コマンド例:「Xnest :1 -query localhost -geometry 800x600&」
    XnestのXDMCP接続でのログイン画面
    Xnestでのデスクトップ画面例

    しかしHVSCentOS65のroot用デスクトップ上でamberユーザのデスクトップをXnest(XDMCP接続)ではなくRDP接続で表示・操作することもできます(localhostへのRDP接続方式)。
    具体的にはHVSCentOS65へrootでログインして以下のコマンドを実行します(freerdpのインストール含む)。
    # yum install freerdp ※freerdpパッケージはxfreerdpコマンドを含みます。
    # xfreerdp --no-tls -a 32 localhost ※「-a 32」は省略可能
    「FreeRDP: localhost」画面の「Login to HVSCentOS65」で以下を指定します。
    ・Session:sesman-Xvnc
    ・username:amber
    ・password:amberのパスワード
    ここで<OK>ボタンを押すと「Connection Log」には「connected ok」と表示されて日本語版Xfce4デスクトップが表示されます。



    ・実寸画像はこちらです。

    尚、RDP接続の切断はlocalhostへのRDP接続であってもXfce4デスクトップからログアウトするとRDP接続の切断とログアウトが同時に行われます。


  8. xrdp xorg(RDP接続専用Xサーバ)について
    X11RDP-RH-Maticで作成されるxrdpを利用してRDP接続する際に利用できる(仮想)XサーバとしてはXvnc, X11rdpの他に「xrdp xorg」があります。
    「xrdp xorg」はXvncやX11rdpと違って「xrdp xorg」というXサーバを起動するための特別な実行ファイルはありません。
    xorg-x11-drv-rdp-0.9.0.git5b6b745+master-1.el6.i686.rpmに含まれる/etc/X11/xrdp/xorg.confを使用するコマンド(X :10 -config /etc/X11/xrdp/xorg.conf)で動作する際のXサーバが「xrdp xorg」であると解釈すればよいかと思います。
    現時点での「xrdp xorg」は実験レベルのものでありその作成手順は公開されていますがその利用方法についてのドキュメントは公開されていないようです。