Linux Mint 22でのXRDP TLSエラー解消方法

プログラミング

はじめに

Linux Mint 22でxrdpを利用し、Windows 11 Proからリモート接続を行う際、TLSエラーが原因で接続が失敗する場合がある。

本記事では、そのエラーの背景を解説し、具体的な解決手順を提供する。これにより、セキュアで効率的なリモート接続環境を構築できる。


問題: TLSエラー

エラーログに次のようなメッセージが表示されることがある。

[ERROR] Cannot read private key file /etc/xrdp/key.pem: Permission denied
[WARN ] Cannot accept TLS connections because certificate or key file cannot be read

問題の発生要因

このエラーは主に以下の理由で発生する。xrdpがTLSを使用してセキュリティを確保する際、キーや証明書ファイルへのアクセス権限が適切でないとエラーが発生する。
また、ユーザーが必要なグループに所属していない場合、サービスが必要なリソースにアクセスできず、TLS接続が失敗する原因となる。

  1. /etc/xrdp/key.pemファイルの権限が不適切で、xrdpユーザーがアクセスできない。
  2. xrdpユーザーが適切なグループ(通常はssl-cert)に含まれていない。

解決方法

1. xrdpユーザーをssl-certグループに追加

以下のコマンドでxrdpユーザーをssl-certグループに追加する。この操作により、key.pemファイルなどの重要なリソースにアクセス可能となり、TLS接続が失敗する原因を解消できる。

sudo adduser xrdp ssl-cert

その後、xrdpサービスを再起動する。

sudo systemctl restart xrdp

2. key.pemファイルの権限を修正

/etc/xrdp/key.pemファイルの権限を適切に設定する。

sudo chown root:xrdp /etc/xrdp/key.pem
sudo chmod 640 /etc/xrdp/key.pem

これにより、xrdpユーザーがキーを読み取れるようになり、TLS接続が正常に確立されるようになる。
これが解消されない場合、リモート接続の試行が失敗し、セッションが開始できない問題が続く。特に、セキュリティ上のエラーが原因で接続が拒否される状況を回避するための重要なステップである。


まとめ

xrdpの設定を適切に調整することで、Windows 11 ProからLinux Mint 22へのリモート接続中に発生するTLSエラーを解消できる。

ファイアウォールやTLS設定を確認し、セッション管理を適切に行うことで、安定したリモート接続環境を構築できる。 たとえば、/etc/xrdp/sesman.ini内でKillDisconnectedオプションを有効化して不要なセッションを終了したり、DisconnectedTimeLimitを調整して切断後のセッション保持時間を管理するとよい。 また、ツールとしてxrdp-sesrunを使用して現在のセッション状況を確認する方法も有用である。

コメント