web-dev-qa-db-ja.com

Windowsターミナルサーバーで単一のセッションを持つようにユーザーを制限する方法

私は2つのWindows2008 R2ターミナルサーバーを持っており、冗長性/負荷分散を維持するために両方のサーバーへのアクセスをユーザーに許可しています。
ユーザーが両方のサーバーに同時にログオンすることを制限するにはどうすればよいですか?

2
Mani
  1. サーバー用に NLBクラスター をセットアップします。

  2. セットアップ セッションブローカー

  3. サーバーに適用されるGPO)で、GPO「ターミナルサービスユーザーを単一のリモートセッションに制限する」設定を有効にします。

これらの3つのことが一緒に働くことはあなたの目標を達成します。

1
joeqwerty

両方のサーバーがドメイン内にある場合は、リモートデスクトップ接続ブローカーを設定し、リモートデスクトップサーバーファームを作成する必要があります。

ブローカーの仕事は、ユーザーをほとんど無料のサーバーに転送することです。 「弱いリンク」ではありません。接続プロセスは次のようになります。

  • ユーザーはDNS名からIPアドレスを検出します。このDNS名はファーム内のすべてのサーバーに関連付けられているため、これらのDNSレコードを手動で小さなTTL-約5分で作成する必要があります。したがって、次のようなコードが作成されます。

_TERMINAL-FARM 172.16.16.1 TERMINAL-FARM 172.16.16.2 TERMINAL-FARM 172.16.16.3 etc_- RDSサーバーは、ブローカーにこのユーザーを他のサーバーにリダイレクトする必要があるかどうかを尋ねます。ブローカーがダウンしている場合、ブローカーは接続を受け入れるだけで、サーバーがファームメンバーではないように機能します

  • ブローカーは、ユーザーがファームメンベットRDSサーバーで既にセッションを開いているかどうかを検索します。その場合、ユーザーをこのサーバーにリダイレクトするようにRDSに指示します。次に、ブローカーはすべてのRDSサーバーのLoadIndicator *を検索し、ユーザーをリダイレクトするか、接続を受け入れるようにRDSサーバーに指示します。

  • ブローカーがユーザーを他のサーバーに移動するようにRDSサーバーに指示した場合、RDSサーバーはユーザーに別のIPアドレスに接続するように切り替えるように応答します(リダイレクト時には、DNS名ではなくIPアドレスが使用されます)

  • RDPクライアントは、接続するように指示されたサーバーに再接続します。クライアントがRDP暗号化を使用している場合は、パスワードの入力を再度求められます。TLS暗号化の場合は、ユーザーが自動的に認証します。

LoadIndicatorは、ファーム内の各サーバーの数値です。通常は、式LoadIndicator = (ServerWeight * ( LoggedOnUsers + PendingRedirections))によって計算されます。サーバーが_Drain mode_にある場合、LoadIndicatorの値は非常に大きいため(65535だと思います)、接続が_Drain mode_のサーバーにリダイレクトされることはありません。

0
filimonic

あなたが説明したことから、すべてのユーザーがどちらかのサーバーに同時にログオンするのを止めるものは何もないようです。もちろん、それは負荷分散を提供しません。ユーザーにサーバーを選択させるのではなく、各ユーザーが1つのサーバーにのみログオンできるようにすることを検討してください。いずれかのサーバーがダウンする可能性をカバーするために、必要に応じて実行する3つのスクリプトを作成することもできます。

  1. サーバーAにログオンするようにすべてのユーザーアカウントを設定します
  2. サーバーBにログオンするようにすべてのユーザーアカウントを設定します
  3. おそらく誰がどのサーバーに割り当てられているかのリストを使用して、サーバー全体に分散したユーザーアカウントを設定します
0
John Gardeniers