コロナ禍が起因となり新しい生活スタイルが叫ばれて久しい。
新しい生活スタイルといえば在宅勤務やリモートワークであろう。
リモートワークといってもすぐに予算が下りるわけでもなく、安価に環境を用意するとしたら、マイクロソフト社のリモートデスクトップサービスを用いることが多いと思う。ただ運用をしてみたら、利用者側がきちんとログオフしてくれず、バッテンボタンをクリックしてしまい、切断状態になって、サーバー内にログイン状態で起動し続けてしまい、サーバーのメモリを無駄に使用し続けたり、他の人がサインインできなくなる場合があります。
なぜなら、Windowsのデフォルトの設定では、リモート デスクトップ サービスによりユーザーはログオフしてセッションを終了することなく、リモート デスクトップ サービス セッションから切断できてしまうからだ。セッションが切断状態のときは、ユーザーがアクティブに接続しなくなっても実行中のプログラムはアクティブな状態のままになる。デフォルト設定では、これらの切断されたセッションは時間が制限されることなくサーバーで管理されてしまう。
この状態を回避するには以下の方法を検討する必要がある。
・切断されたセッションの制限時間を設定する
・アクティブでアイドル状態になっているリモート デスクトップ サービス セッションの制限時間を設定する
・リモートデスクトップ接続を「切断」した後、⼀定時間経過後に自動的にサインアウトさせる
具体的な設定方法は、グループポリシーを利用したり、レジストリで設定したりすることができる。
ただし、設定をする前に注意する内容としては、みんなが以下に同意できることが必要である。
リモートデスクトップ接続が切断されると強制的にサインアウトされるため、編集中のファイルなどは警告を表示することなく内容が消えてしまいます。
リモートデスクトップ接続の切断前に必ず編集中のファイルを保存する必要がある。
だいたい、編集中のファイルを保存していないヒトがでてきてトラブルになるケースが多い。
・グループポリシーで設定する場合
「コンピューターの構成」-「管理用テンプレート」-「Windows コンポーネント」-「リモート デスクトップ サービス」-「リモートデスクトップ セッション ホスト」-「セッションの時間制限」
の
「切断されたセッションの制限時間を設定する」
を
有効にして
1分から5日
を選択する。
・レジストリで設定する場合
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services
の
MaxDisconnectionTime
の
DWORD値(REG_DWORD)
を
1ミリ秒単位で設定(1ミリ秒以上で、自由に時間を設定可能です)