Xrdp
xrdp は Microsoft の Remote Desktop Protocol (RDP) をサポートするデーモンです。Xvnc や X11rdp をバックエンドとして使用します。
インストール
xrdp は AUR からインストールすることができます: xrdpAUR。
xrdpAUR の問題の修正
xrdp-gitAUR を使用する場合、以下の問題は発生しません。git バージョンを選択したときはこのセクションはスキップしてかまいません。
Xvnc (tightvnc) が以下のようなエラーを表示する場合:
Fatal server error: could not open default font 'fixed'
/usr/X11R6/lib/X11/fonts
から /usr/share/fonts
にシンボリックリンクを作成する必要があります。
xrdp はエラーを表示せずに終了します。テストのために Xvnc を手動で起動しようとしたときだけエラーメッセージを確認できます。
Couldn't open RGB_DB '/usr/X11R6/lib/X11/rgb'
というメッセージを修正するには /usr/share/X11/rgb.txt
を /usr/X11R6/lib/X11/rgb.txt
にコピーするかシンボリックリンクを作成してください。ファイルが存在しない場合、標準の X11 カラーが間違って表示されたり (黒の代わりにピンクや青が表示される)、Xterm が壊れます。
起動時に自動実行
AUR の xrdp パッケージには systemd のサービスファイルが含まれています。xrdp.service
を有効化:
# systemctl enable xrdp.service
xrdp-sesman.service
を有効化:
# systemctl enable xrdp-sesman.service
Vino で実行 (root セッションの Gnome VNC-Server)
サーバーを有効化すると vino-preferences から確認できるようになります。Vino はデフォルトでポート 5900 を使って接続するので、xrdp の設定ファイルを編集する必要があります。以下のコードを使って xrdp の設定ファイル (/etc/xrdp/xrdp.ini
) に vino のセッションを追加してください:
# echo " [xrdp8] name=Vino-Session lib=libvnc.so username=ask password=ask ip=127.0.0.1 port=5900 " >> "/etc/xrdp/xrdp.ini"
Vino のセッションに接続するには xrdp サーバーを再起動する必要があります (xfreerdp でテスト済み)。
使用方法
xrdp を起動したら RDP クライアントからローカルホストに接続できます (標準の RDP ポートは 3389)。xrdp は小さなメッセージウィンドウを表示します。
sessman-Xvnc を選択した場合、ホストのアカウントのユーザー名とパスワードを指定することができ、xrdp は新しい Xvnc インスタンスを起動します。/etc/xrdp/startwm.sh
にある SESSION リストからウィンドウマネージャが開きます。
セッションウィンドウを閉じて RDP 接続を終了すると、次回 RDP で接続したときは同じセッションにアクセスすることができます。セッションウィンドウからウィンドウマネージャやデスクトップ環境を終了した場合、セッションが終了され、次回は新しいセッションが開きます。
xrdp は既に同じジオメトリのセッションが開かれていないか確認して、ジオメトリ/解像度が一致しない場合は新しいセッションを起動します。
参照
- TigerVNC - RDP の代替としてバックエンドで使われる VNC