treedown’s Report

システム管理者に巻き起こる様々な事象を読者の貴方へ報告するブログです。会社でも家庭でも"システム"に携わるすべての方の共感を目指しています。

※https化しました。その影響でしばらくリンク切れなどがあるかもしれませんが徐々に修正していきます。 リンク切れなどのお気づきの点がございましたらコメントなどでご指摘いただけますと助かります。

繋がらないxrdpをとりあえず繋げる

Linux Mint Debian Edition(MATE)を使う用事が出来たのですが、いままで簡単だったxrdpがちょっとうまくいかなかったので、とりあえずつながるようにした記録をご報告します。

最低限の操作とインストールでxrdpを使って別のWindowsからリモートデスクトップ接続ができるようになるまでの作業メモ。

いままではapt-get install xrdp一発で即使えるようになっていたのですが、ちょっと違ったよう。

エラーの内容

xrdpを導入したLinux Mint(LMDE2)にリモートデスクトップすると表示されるエラー

f:id:treedown:20180220103114p:plain

メッセージは
-------------------------------------------------------
connecting to sesman ip 127.0.0.1 port 3350
sesman connect ok
sending login info to session manager, please wait...
xrdp_mm_process_login_response: login successful for displa…
started connecting
connecting to 127.0.0.1 5910
error - problem connecting
-------------------------------------------------------

と表示されます。「error - problem connecting」のあたりがどうも怪しいなぁ。

xrdp自体のインストールは単純に「apt-get install xrdp」で導入が完了している状態です。

f:id:treedown:20180220103210p:plain
Debian 6/7/8インストールの時はこんな感じでできていたのですが、なんか違うのかも、と思い、ちょっと調べてみることに。

追加でvnc4serverが必要

まずインストール時のメッセージをよく見ると、同時にインストールされると思っていたパッケージがインストールされていないように見える…。
おや?
とりあえず入れておくか、と「apt-get install vnc4server」と実行し手動導入

f:id:treedown:20180220103247p:plain無事インストールが完了。
インストール後、他のWindows10からリモートデスクトップ接続で接続してみると、ログインまでは無事完了、「error - problem connecting」のあたりもエラーが表示されることなく、無事アクセスできました。
エラーは解消したのですが…

f:id:treedown:20180220103307p:plain

肝心のデスクトップは表示されない、という状況。
なんか設定が足りないのか?

設定ファイルが必要

このLinux MintはLMDEのMATE(lmde-2-201701-mate-64bit)をインストールしています。どうやら方々で調べた様子では、「mate-session」という指定を設定ファイル二つ用意する必要があるらしい。
対象のファイルは「/etc/xrdp」配下の「.Xauthority」と「startwm.sh」ファイル。

この二つのファイル(.Xauthorityは作成)に対してmate-sessionの指定を追記しましょう。

-------------------------------------------------------
$ cd /etc/xrdp
/etc/xrdp $ touch ~/.Xauthority
/etc/xrdp $ vi ~/.Xauthority
/etc/xrdp $ chmod 600 ~/.Xauthority
/etc/xrdp $ sudo chown xrdp ~/.Xauthority
/etc/xrdp $ sudo chgrp xrdp ~/.Xauthority
-------------------------------------------------------
/etc/xrdp $ sudo cat ~/.Xauthority
lxmnt010MIT-MAGIC-COOKIE-1Z=?
?????77?[?localhost.localdomain0MIT-MAGIC-COOKIE-1Z=?
?????77?[?
mate-session
-------------------------------------------------------
前半が変な表示なのですが、構うことなく末尾に「mate-session」を追記してファイルを保存です。
続いて「startwm.sh」
-------------------------------------------------------
/etc/xrdp $ sudo vi startwm.sh
/etc/xrdp $ sudo cat startwm.sh
#!/bin/sh

if [ -r /etc/default/locale ]; then
. /etc/default/locale
export LANG LANGUAGE
fi

#. /etc/X11/Xsession
mate-session
-------------------------------------------------------
まず、「. /etc/X11/Xsession」とある行を「#」つけてコメントアウト、末尾に「mate-session」を追記します。
これだけ。
xrdpをリスタート。
-------------------------------------------------------
/etc/xrdp $ sudo service xrdp restart
[ ok ] Stopping RDP Session manager : sesman xrdp.
[ ok ] Starting Remote Desktop Protocol server : xrdp sesman.
/etc/xrdp $
-------------------------------------------------------

お、うまくつながりました。

f:id:treedown:20180220103532p:plain