はじめに
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接続が失敗する原因となる。
/etc/xrdp/key.pem
ファイルの権限が不適切で、xrdpユーザーがアクセスできない。- 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
を使用して現在のセッション状況を確認する方法も有用である。
コメント