アイクラフト新人研修2016の技術研修では、「xrdpによるLinux仮想環境 (VDI) システムの構築」を課題に設定しました。この研修の成果物であるブログ記事を計5つ、シリーズでご紹介します。なお、ソフトウェアのバージョンなどの情報は、研修を実施した2016年3月時点のものです。(大久保)

(本ブログ記事の著者: 西 光紀)

1. はじめに

xrdpをX11RDP-o-Maticを使用しインストールするための手順です。

xrdpとは

Linux上で動作するRDP (リモートデスクトッププロトコル) の事です。 WindowsのリモートデスクトップのLinux版と考えてもらえれば結構です。 今回の例だとUbuntu MATE 14.04に対してwindowsリモートデスクトップクライアントを使用しGUIでUbuntu MATE 14.04を操作する事が出来ます。

X11RDP-o-Maticとは

Debian系で動作するxrdpのビルド&インストールツールです。 そんなもの使わなくても apt コマンド等でインストールすれば楽なのではと思われるかもしれませんが、apt 標準リポジトリで入るバージョンは0.6なのに対して最新版は0.9です。 0.6では

  • 日本語キーボード配列に対応していないため自分で対応させる必要がある
  • リモートデスクトップが切断された時今まで使っていたデスクトップに接続出来ない
  • TLS接続に対応していない

等の事があり0.9を使用した方が良いのですが、自分でビルドするには必要なライブラリを全て自分でインストールする必要があり、 削除の際も関連ファイル等を自分で削除しないといけないので大変面倒です。

しかし、X11RDP-o-Maticを使用するとgitさえあれば必要なライブラリは実行途中に全て自動インストールされ、 削除の際もコマンド一つで行えるので大変便利です。

X11RDPとは

xrdpのバックエンドサーバーです。 通常xrdpはVNCをバックエンドとして動いているので音声転送は出来ませんが、 X11RDPはXを転送しているので音声転送にも対応しています。

2. 構築環境について

今回は以下の環境で構築を行います。

項目内容
OSUbuntu MATE 14.04
xrdp0.9
X11RDP-o-Matic3.10
IPアドレス192.168.255.55
ユーザ名test
パスワードtest

Ubuntu MATE 14.04インストール直後の環境を使用しています。 また、今回はUbuntu MATE 14.04を使用しましたが、Debian系のOSならX11RDP-o-Maticは動くようです。

3. 作業内容

描画はUbuntu MATEを使用します。 基本的には

こちらの手順を参考に作業を行います。

まずはgitのインストールを行います。 既にgitが入っているのであればこの手順は飛ばしてください。

### gitのインストール
$ sudo apt-get install git

xrdpのインストール

### ホームディレクトリに移動
$ cd ~

### パッケージを最新の状態に
$ sudo apt-get update
$ sudo apt-get upgrade

### X11RDP-o-Maticをクローン
#参考にした日本xrdpユーザー会のページではv3.03を使用するように書かれていたが
#現在の最新版はmasterなのでmasterブランチを使用
$ git clone https://github.com/scarygliders/X11RDP-o-Matic.git

### インストールを行う
#justdoitオプションはあらかじめ用意されているコンフィグ値を使用してxrdpの構築とX11rdpの構築を行う
$ cd X11RDP-o-Matic
$ sudo ./X11rdp-o-matic.sh --justdoit

X11RDP-o-Matic実行時の詳しいオプションはこちらを参照。

特にエラーが出てなければ完了です。 下記コマンドでxrdpとx11rdpがインストールされている事を確認出来ます。

$ dpkg -l xrdp x11rdp

要望=(U)不明/(I)インストール/(R)削除/(P)完全削除/(H)保持
| 状態=(N)無/(I)インストール済/(C)設定/(U)展開/(F)設定失敗/(H)半インストール/(W)トリガ待ち/(T)トリガ保留
|/ エラー?=(空欄)無/(R)要再インストール (状態,エラーの大文字=異常)
||/ 名前 バージョン アーキテクチ 説明
+++-==============-============-============-=================================
ii x11rdp 0.9.0-1 amd64 X11rdp backend for the xrdp remot
ii xrdp 0.9.0-1 amd64 RDP server for Linux

描画設定

次に描画設定を行います。 描画にUbuntu MATEを使用する際の設定です。

### ホームディレクトリに移動
$ cd ~

### Ubuntu MATEは標準リポジトリに無いのでppaリポジトリを追加する
$ sudo apt-add-repository -y ppa:ubuntu-mate-dev/ppa
$ sudo apt-add-repository -y ppa:ubuntu-mate-dev/trusty-mate
$ sudo apt-get update -y  

### Ubuntu MATEをインストールする
$ sudo apt-get install -y mate-desktop-environment-extras ubuntu-mate-core ubuntu-mate-desktop

### 描画をUbuntu MATEで行う設定を記述する
$ echo "mate-session" > ~/.xsession

### ユーザー作成時に描画をUbuntu MATEで行う設定ファイルをホームディレクトリに作成する
$ sudo cp .xsession /etc/skel/

以上で作業は終了です。 手元のリモートデスクトップツールを使用し接続出来ればOKです。

X11RDPがインストールされない

原因不明ですがパッケージが生成されているのにX11RDPがインストールされない事があるようです。 その場合下記コマンドでx11rdpXXXXXXXX.debが生成されている事を確認して下さい。

$ cd packages/x11rdp
$ ls

x11rdp_0.9.0+master01_am64.deb

生成されたパッケージをインストールします。

$ sudo dpkg -i x11rdp_0.9.0+master01_am64.deb

4. 参考