作成開始 : 平成27年07月28日(火) 最終更新 : 平成28年05月06日(金)

xrdp (リモートデスクトップ接続)のインストール・設定


xrdp は Windows のリモートデスクトップ接続を利用して Linux を遠隔操作するソフトです。

デスクトップの共有として vino をインストールしましたが、こちらは TV に接続して動画やネットラジオを自分のデスクから使います。
ただ、リモートメンテとか色んな操作をするには少しモッサリとした動作です。
そこで、軽めに操作できる xrdp を使ってみました。


1.xrdp のインストール

デスクトップの「linuxBean 設定ウイザード」を起動します。

 ↑
「リモートセット」を選択しOKをクリックします。

  ↑
OKをクリックします。

 ↑
ユーザのパスワードを入力します。

  ↑
パッケージの取得とインストールが始まります。

  ↑
成功しました。Enterキーを押します。

  ↑
インストール結果を表示します。確認したら閉じます。
デスクトップの「ファイヤーウォール設定ツール」を開きます。

 ↑
ユーザのパスワードを入力します。認証するをクリックします。

  ↑
ポート:3389 が動いています。ルールに追加します。

  ↑
こんな感じで選択し追加をクリックして閉じるをクリックします。

  ↑
ポート:3389 がルールに追加されました。この画面は閉じます。次はとりあえずこの状態で Windowsからリモートデスクトップ接続をしてみます。

  ↑
Windows7 のリモートデスクトップ接続でつないでみます。

  ↑
接続をクリックします。

  ↑
はいをクリックします。

  ↑
sesman-Xvnc のままでユーザとパスワードを入力しOKをクリックします。

  ↑
おやーぁ、なにやら 127.0.0.1 が ポート:5910 にコネクトできない・・・とか言って接続できないぞ!
調べると、vnc4server が要るとのことです。

2.vnc4server のインストール

デスクトップ左のバーから「Synaptic Package Manager」を起動します。

  ↑
ユーザのパスワードを入力し認証するをクリックします。

  ↑
検索をクリックします。

  ↑
vnc と入力は検索をクリックします。

  ↑
vnc4server をマークし右クリックでインストール指定をします。

  ↑
マークをクリックします。

  ↑
適用をクリックします。

  ↑
適用をクリックします。

  ↑
インストールと適用が始まります。

  ↑
インストールされました。「Synaptic Package Manager」は閉じます。
では、あらためて接続してみましょう。

  ↑
今度は接続できました。結構軽いです。
ただ、この時点では、キーボードが日本語キーボードでなく、英語キーボードになっています。
それと、メニュー -> ログアウトができません。マウスカーソルも「×」だし・・・・次で調整してみます。

3.設定と調整

(1)日本語キーボードにしてみる。
キーボードを日本語キーボードにしてみます。
xrdp 0.5.0 のバグらしいのですが、0.6.0 でも直っていませんでした。
以下からダウンロードしてデスクトップあたりに保存します。
xrdp 0.5.0で日本語キーマップを使えるようにする方法

  ↑
ダウンロードした「xrdpkeymap_jp.tar.gz 」を右クリックして「指定先にファイルを展開」で展開します。

  ↑
展開をクリックします。デスクトップに「xrdpkeymap_jp」フォルダが作成されます。
中には以下のファイルができます。

km-0411.ini
km-e0010411.ini
km-e0200411.ini
km-e0210411.ini
「Xfc Terminal」を起動し /etc/xrdp へ保存します。

  ↓
sudo su -l して cd /etc/xrdp して cp /home/takaq/デスクトップ/xrdpkeymap_jp/*.ini . とします。
念のため chown xrdp *.ini と chgrp xrdp *.ini します。
メニュー -> 実行 -> service xrdp stop として一旦 xrdp を停止します。
そして、メニュー -> 実行 -> service xrdp start として xrdp を起動します。
これで、日本語キーボード対応になります。
・・・これでどうかなと思って接続してみたのですが、キーの動作は変わりません。あれぇー

それどころか、後日Windows PC からリモートデスクトップ接続して ユーザとパスワード入力しても画面が X-Windowの背景だけ表示されて、何もできなくなってしまいました。
平成28年05月06日(金) 追記

LinuxBean 14.04.4-160415 をインストールし直したら上記の設定がすべて有効になりました。
日本語入力もてきますし、ログアウトもできます。
ただ、OS起動直後では xrdp のプロセスは生きていますが、リモートデスクトップ接続はエラーでできません。
Terminalから sudo -l して service xrdp restart すると WindowsPCからリモートデスクトップ接続ができます。

使ってみて分かったことですが、リモートデスクトップ接続で「×」で閉じた後、再度リモートデスクトップ接続をすると前のセッションには接続できず、新たなセッションに接続されてしまいます。
ここは、ログアウトしなかった場合、前のセッションに接続するのに一工夫いりそうです。後で調べてみることにします。
(2)その後の調整
「sesman-Xvnc」では、どうしても接続はできるけど画面はやっぱり、X-Windowの背景だけ表示されて、何もできなくなってしまいました。
「Xfce Terminal」で .xsession-errors を tail -f .xsession-errors しながら xrdp接続をしたら 「gnome-session : コマンドがありません」になっています。
なので、画面表示ができないようです。

  ↑
「gnome-session」をマーク -> インストール指定 -> 適用 で依存関係で他のもインストールしました。
「リモートデスクトップ接続」後の画面では、「sesman-Xvnc」では画面が落ちてしまいます。
「console」で接続したら無事にデスクトップを表示するようになりました。
でも、これだと vino と一緒かも!
最初の xrdp インストールから何かあったのでしょうか?
んーーー、これではいかんなぁーー
・・・と思い色々と検索して試してみたら次の方法でできました。( Azure VM の Ubuntu 14 にリモートデスクトップ接続 | プログラミング生放送 )

「Synaptic Package Manager」で「lxde」をインストール
ログインンしたユーザの .xsession に 「lxsession -s LXDE -e LXDE」と記述「sudo service xrdp restart」して接続してみました。
「リモートデスクトップ接続」後の画面で、「sesman-Xvnc」を選択しユーザとパスワードを入力すると・・・・

  ↑  
やっと接続できました。
キーボードも日本語キーボードとして使えます♪ ただ、ログアウトやシャットダウンはできません。
ただ、Opera の表示画面が真っ赤なのはどうとてかな?
    ↑
平成27年08月08日(土) 追記
接続するリモートデスクトップ・クライアント側の色深度を「Hight Color 16bit」にしたら正常な色になりました。

 なお、「console 」で接続した場合の動作は、vino と同様に実機上にログインした状態で表示・操作となります。
平成27年08月09日(日) 追記
「Xfce Terminal」で「sudo -l」して「/usr/share/applications/lxde-logout.desktop」の以下を変更します。

Exec=lxde-logout
   ↓
Exec=gksudo lxde-logout

これで、選択画面の前にグラフィカルなsudoのパスワード入力ができます。
ただ、表示したパネルで「シャットダウン」「再起動」はできるのですが「ログオフ」ではパネルが消えるだけでログアウトはできません。

あと、~/.config/lxpanel/LXDE/config の該当する行も /usr/share/applications/lxde-logout.desktop と同様に変更します。
これで、デスクトップからログアウトをクリックすると「パスワード」入力を聞いてくるようになります。

  ↓
←ユーザのパスワードを入力し「OK」をクリックします。
  ↓
←ここで選択します。

戻る

サイトトップへ