【Ubuntu】Windows10からリモートデスクトップで接続【XRDP】

  • 投稿 : 2020-04-04
  • 更新 : 2022-10-28
Ubuntu 18.04 LTS (64bits)で動作確認しました

追記:2020/10/30
Ubuntu 20.04 LTS (64bits)で動作確認しました
この記事、そのままでOKでした。

補足:2022/10/28
Ubuntu 22.04 LTS では、標準でリモートデスクトップに対応しています
【Ubuntu 22.04】Windowsから、RDP接続(リモートデスクトップ) を試す

情報源

Ubuntu 18.04: GNOMEデスクトップ環境にXRDPで接続する - Narrow Escape
開発メモ その187 Ubuntu 18.04.3でXRDPを使う – A certain engineer "COMPLEX"

おそらく、上記2つの通りに行えば、簡単に設定できると思う。2つ目のリンクはスクリプトが用意されていて、これ1つ実行するだけでたぶん設定できると思う。

追記:2020/10/30
第621回 Ubuntu 20.04 LTSでxrdpを使用する:Ubuntu Weekly Recipe|gihyo.jp … 技術評論社
Ubuntu 20.04 LTSの事例

XRDPの導入

1.xrdpインストール

$ sudo apt install -y xrdp

2.カーソル表示の設定

$ sudo sed -e 's/^new_cursors=true/new_cursors=false/g' -i /etc/xrdp/xrdp.ini

/etc/xrdp/xrdp.iniの設定ファイルの中身を置換で書き換える

$ sudo systemctl restart xrdp

設定ファイルの再読み込み

3.~/.xsessionrcの作成

$ D=/usr/share/ubuntu:/usr/local/share:/usr/share:/var/lib/snapd/desktop

環境変数の設定

$ cat <<EOF > ~/.xsessionrc
export GNOME_SHELL_SESSION_MODE=ubuntu
export XDG_CURRENT_DESKTOP=ubuntu:GNOME
export XDG_DATA_DIRS=${D}
export XDG_CONFIG_DIRS=/etc/xdg/xdg-ubuntu:/etc/xdg
EOF

上記で、 ~/.xsessionrcファイルが、その下の内容で作成される
${D}の部分が、上記で設定した環境変数で置き換えられたものが作成される

4.Authentication Requiredダイアログの回避

$ cat <<EOF | \
sudo tee /etc/polkit-1/localauthority/50-local.d/xrdp-color-manager.pkla
[Netowrkmanager]
Identity=unix-user:*
Action=org.freedesktop.color-manager.create-device
ResultAny=no
ResultInactive=no
ResultActive=yes
EOF

/etc/polkit-1/localauthority/50-local.d/xrdp-color-manager.pkla ファイルの作成

$ sudo systemctl restart polkit

設定ファイルの再読み込み

5.xorgxrdpの導入

Ubuntu 20.04 LTS (64bits)では必要ありませんでした
Ubuntu 20.04 LTS =>標準でインストール
Ubuntu 18.04 LTS =>最小でインストール

インストール条件が違うからか、バージョンが違うからかは不明。問題が起こったら、やってみるというのが良いかも

$ sudo apt install xorgxrdp

これが、参考にした2つ目のリンク先でスクリプト中に入っていた。通常はxrdpをインストールするとxorgxrdpも依存パッケージで自動で入るようなのだが、入らない入らないケースがあるみたい。ということで、明示的に導入

接続するが、青(緑)の画面のままとかの場合は、これを実行すれば治ると思う。

Windows10からリモートデスクトップで接続

Windowsアクセサリの中にある標準で入ってるアプリです。デスクトップ接続を選択します。

接続先のIPアドレスを入力

こんなのがでるが、どうすることもできないので、「OK」で継続

この画面が出てきたら、Ubuntuのログインアカウント、パスワードを入力してログイン

こんな感じで、Ubuntuのデスクトップがリモートで表示できます。接続毎に、画面の解像度を変更できるので、使いにくい場合はUbuntuの設定で変更してください。

あと、理由は分かりませんが、Ubuntu側でログインしてると接続できなくて、ログオフした状態でないと接続できません。1アカウント1セッション?とかそういう制限があるんでしょうか?

うまく行かない場合は、Ubuntu側でログオフした状態で、Windows10からリモート接続してみてください。

補足:青(緑)の画面のまま表示されない、XRDP接続できない

青(緑)の画面のままUbuntuデスクトップが表示されず、そのまま放置してたら上記のエラーになる場合です。xorgxrdpが入っていないのが原因だそうです。

$ sudo apt install xserver-xorg-core xorgxrdp xrdp
$ sudo apt install xserver-xorg-input-all (※ローカルPCのマウス・キーボード対策)

上記でうまく行かない場合は、

$ sudo apt-get update -y
$ sudo apt-get install -y xorgxrdp

こんな感じで試してみて。

参考:
Ubuntu18.04.2にxrdpをインストールしてもRDP経由のログインでエラーになる事象のメモ | 備忘ノート


追記:2021/01/07

sudo apt-get -y install xserver-xorg-core xorgxrdp xrdp (xrdpだけではダメ)
sudo apt-get -y install xserver-xorg-input-all (これがマウス・キーボード対策)
ubuntu18.04でのxrdpトラブル対応  と リモートデスクトップ設定 - Qiita

>xrdpを設定すると、ローカルPCでマウス・キーボードの入力を受け付けなくなる
>(リモート接続時は問題なし)

というのがあるみたいなので、「xserver-xorg-input-all」もあったほうが良いのかも?!
私の環境では起こらなかったので特に気にしてなかったのですが・・。

リモート接続時は問題ないらしいので、リモートから追加で実行しても良いのかも?!

ログイン後に、真黒なまま

Ubuntu側でログインしてるのなら、ログアウトしてから試してみる

リモートデスクトップにこだわらないのなら

追記:2020/07/05

Ubuntu 18.04 LTS (64bits)で動作確認しました追記:2020/05/14Ubuntu 20.04 LTS (64bits)でも動作確認しました設定で、

某氏の猫空

VNC経由で使っても良いかもと思う。Ubuntu 20.04 LTS (64bits)にしてからは、VNC接続で使ってる。

スポンサーリンク