xrdp 0.9.0 – Windows から OS X へリモートデスクトップ接続する方法(接続編)

概要

普段は Windows をクライアント端末として利用することが多いので Linux 端末や Mac にもリモートデスクトップ経由で接続できると便利だ。RHEL/CentOS 向けのリモートデスクトップ接続設定や Debian/Ubuntu/Lubuntu 向けのリモートデスクトップ接続設定はこれまでに対処してきた。しかし、Mac だけは VNC など経由で接続しており、RDP と比較するともっさりしていて遅いためリモートデスクトップに統一したい。

Mac 向けには xrdp のバイナリ提供が無い模様なので自分でコンパイルして利用することにします。環境は、OS X EL Capitan (10.11.4 及び 10.11.5) で確認しました。

事前準備

xrdp のコンパイルに必要となるものは、autoconf, automake, gettext, libtool, pkg-config などのプログラム。これらをあらかじめ Homebrew でインストールしておきます。

Homebrew 自体をインストールしていない場合は下記コマンドでインストールしておきましょう。または上記サイトからソースをダウンロードしてコンパイルしても良いですが。

$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
$ brew install autoconf
$ brew install automake
$ brew install libtool
$ brew install gettext
$ brew install pkg-config

xrdp のコンパイル

xrdp をコンパイルします。wget がインストールされていない場合は、wget も brew install wget しておきます。
GitHub でメンテされている最新版をダウンロードし unzip すると xrdp-devel フォルダ配下にソースが展開されます。

$ mkdir xrdp
$ cd xrdp/
$ wget https://github.com/neutrinolabs/xrdp/archive/devel.zip
$ unzip devel.zip
$ cd xrdp-devel/
$ ./bootstrap
$ ./configure

トラブルシューティング

./configure を実行したところで、”configure: error: please install libssl-dev or openssl-devel” のようなエラーとなる場合がある。

$ ./configure
...
checking for openssl/rc4.h... no
configure: error: please install libssl-dev or openssl-devel

Chrowa3 さんの記事を参考に、OSX の openssl を最新の状態にしてからコンパイルを実行しておくと良い。
brew でインストールした最新の openssl が利用される状態になっているか念のため確認しておく。

$ openssl version
OpenSSL 1.0.2h  3 May 2016

ググって出てきた対処方法も試してみる。
./configure –includedir=/usr/local/Cellar/openssl/1.0.2h_1/ とか export EXTRA_CFLAGS=-I/usr/local/Cellar/openssl/1.0.2h_1/include/ && export EXTRA_CXXFLAGS=-I/usr/local/Cellar/openssl/1.0.2h_1/include/ のような方法でも一部環境では改善されなかったが、Command Line Tools をインストールすることで該当の環境でも改善された。

$ xcode-select --install
$ xcode-select -v
xcode-select version 2343.

“checking for openssl/rc4.h… yes” の文字列を見て喜んだのもつかの間今度は、”configure: error: please install libx11-dev or libX11-devel” が発生する。

$ ./configure
configure: error: please install libx11-dev or libX11-devel

これに対処するためには、Apple の公式ナリッジに記載のとおり、XQuartz のサイトから dmg 形式のパッケージをダウンロードしてインストールする。最新版は v2.7.9 となっている。
XQuartz プロジェクトでは OS X 向けにオープンソースで X Window System のバイナリを提供している。有難く利用させてもらうことにします。

XQuartz

XQuartz をインストール

以上で無事コンパイルが通るようになるでしょう。

$ ./configure
$ make
$ sudo make install

インストールが完了したらバージョンを確認しておきます。

$ xrdp -v

xrdp: A Remote Desktop Protocol server.
Copyright (C) Jay Sorg 2004-2014
See http://www.xrdp.org for more information.
Version 0.9.0

xrdp の起動と接続確認

/usr/local/sbin/xrdp を起動し、tcp/3389 が LISTEN されていることを確認したら Windows 端末上でリモートデスクトップを起動して接続してみましょう。

$ sudo /usr/local/sbin/xrdp
logging configuration:
	LogFile:       /var/log/xrdp.log
	LogLevel:      4
	EnableSyslog:  1
	SyslogLevel:   4
process 885 started ok
$ netstat -an | grep 3389
tcp4       0      0  *.3389                 *.*                    LISTEN     

以下のような画面が表示されれば OK です。ただし、この状態だとまだログオンできないのでもう少し設定が必要になりそうです。
xrdp-0.9.0

スポンサーリンク