xrdpはWindowsからLinuxやBSDにリモートデスクトップ接続できるようにするサーバアプリです。CygwinをX Clientにするより、日本語入力まわりの設定がいらなかったり、きれいなGUI画面で操作ができるのがうれしい感じです。
インストール
CentOS7
CentOS7を「GNOME Desktop」指定でインストールすることが前提です。minimal-installから同じことをしてみましたが、xrdp経由でGnomeにアクセスできませんでした。何かが足りないらしい。
CentOS7のxrdpはEPEL(エンタープライズ Linux 用の拡張パッケージ)に登録されているため、xrdpをyumコマンドでインストールするためにはEPELリポジトリをインストールする必要があります。
$ sudo yum install -y epel-release
$ sudo yum update
で、
$ sudo yum install -y xrdp
xrdpはバックエンドにVNCを使用しているのでVNCサーバをインストールする必要がありますが、CentOS7を「GNOME Desktop」指定でインストールするとtigervnc-serverというパッケージが入っているっぽいので、追加インストールは不要です。
自動起動設定
$ sudo systemctl enable xrdp.service
$ sudo systemctl start xrdp.service
トラブルシューティング
xrdpが起動しない
SELinuxの設定回りの影響らしいです。
$ sudo chcon -t bin_t /usr/sbin/xrdp
$ sudo chcon -t bin_t /usr/sbin/xrdp-sesman
を実行した後起動すると解消するはずです。
ファイアウォールの設定
$ sudo firewall-cmd --permanent --zone=public --add-port=3389/tcp
$ sudo firewall-cmd --reload
CentOS7のデフォルト設定では、RDPで使用する3389番ポートをブロックしているので、ブロックを解除する必要があります。とりあえず、
$ sudo iptables -F
でも用は足りると思います。。。
現在のファイアウォールの設定は、
$ sudo firewall-cmd --list-all-zones
または、
$ sudo iptables -L
で確認できます。
ログインしてもエラーが表示されるだけでログイン画面に戻ってしまう。
画面の色深さ設定の問題らしいです。
/etc/xrdp/xrdp.iniでmax_bppを24に変更すると直るはず。
max_bpp=32
↓
max_bpp=24
GUIを日本語表示にしたい
/etc/xrdp/startwm.shで「export LANG=$LANG」の下あたりに「export LANG=ja_JP.UTF-8」を追加すると、次のxrdp起動からGUIが日本語表示になります。デフォルトは英語みたいです。
#. /etc/environment
#export PATH=$PATH
#export LANG=$LANG
export LANG=ja_JP.UTF-8
画面解像度を変えたい
通常の画面解像度変更と同じように
アプリケーション ⇒ システムツール ⇒ 設定 ⇒ ディスプレイ
から変更できます。
謎なところ
-
xrdp起動後の初回ログイン時に、「カラーマネージメントされたデバイスを作成するには認証が必要です。」が表示されます。
「違い」がわからない私には、パスワードを入力しても、キャンセルしても、見同じ動きをしているように見えてしまう。。。 -
minimal-installからtigervnc-serverの設定までやってみましたが、リモートデスクトップからはGnomeが見えませんでした。この辺は後々、DebianやBSDいじるときに調べてみようと思います。