XRDPの1ユーザマルチセッションの有効化
CentOS 6からCentOS 8に移行する際にCentOS 6ではXRDPのあるユーザのマルチセッションがデフォルトでできていたが、CentOS8ではそれができなくなっていて非常に困った。
Serverに対して、XRDPで接続しようとしたときに、まずnotePC(windows)からユーザA
でログインは問題なくできる。次にDesktop(Windows)からユーザAでログインしようとすると、認証は通っているように見えるが画面がブラックアウトし接続が断たれてしまう。ユーザAでログインしているときに同じようにユーザBでログインすることは問題なくできていた。DesktopからXRDPを接続するためにはnotePCのXRDPのセッションで正常にログアウトしておかなければいけない。これではXRPDでアクセスしたままのノートPCを持ち出しVPNでつないだ時に、XRDPではじかれてしまい非常に困る。かといって毎度ログアウトをするのはめんどくさいし忘れる可能性がある。
というのが、CentOS8での問題点でCentOS6では問題なくできていたのに。
解決法はXRPDを '--nodaemon' オプションをつけないで起動すればいい。
一度XRDPを殺してから、再度オプションを外して起動してやると思うような動作を確認できる。
サーバの再起動後にも同じ動作を求めるのであれば、XRDPデーモンの起動ファイルから '--nodaemon' オプションを外せばよい。
CentOS8 example
$ sudo sed -i "s/ --nodaemon//" /usr/lib/systemd/system/xrdp.service
$ sudo dnf systemctl restart xrdp