Windows Server 上でリモート デスクトップ サービス (RDS) を使用してターミナル サーバー ファームをセットアップするのは、特に権限、バージョン、構成ミスに悩まされることなくセットアップしようとすると、少々面倒な作業になることがあります。このガイドは、単に手順を追って説明するだけでなく、プロセスをスムーズにするための実践的なヒントをまとめたものです。Windows Server 2022、2019、または 2016 に RDS を展開する方法、コンポーネントを把握する方法、そしてロールの不一致や権限の設定忘れといった初心者にありがちなミスを回避する方法を学びます。すべてがうまくいけば、ユーザー セッション、RemoteApp、そしてできればある程度のフォールト トレランスを処理できる、正常に機能する RDS ファームが完成します。これを正しく行うことで、ユーザーが黒い画面や中途半端なセッションに悩まされることがなくなります。それでは、この混乱の世界に飛び込んで、その意味を理解していきましょう。
一般的な RDS デプロイメントの問題を解決し、ファームを稼働させる方法
リモート デスクトップ サービス (RDS) コンポーネント アーキテクチャ
何が何なのかを理解することは非常に役立ちます。コアとなる要素は次のとおりです。
- リモートデスクトップセッションホスト(RDSH)は、ユーザーアプリの実際の処理を担うワーカーサーバーです。まさにバックボーンと言えるでしょう。
- リモートデスクトップ接続ブローカー(RDCB)— ユーザーセッション、負荷分散、再接続、そして状況の追跡を管理します。セッションの切断やスタックが発生する場合は、通常、RDCB が原因と考えられます。
- リモートデスクトップゲートウェイ(RDGW)は、インターネットアクセスのための安全なゲートウェイです。RDGWを使用していない、またはリモート接続に問題がある場合は、まずこの役割を確認してください。
- RD Web アクセス(RDWA)は、ユーザーが利用可能なデスクトップやリモートアプリを確認できるウェブポータルです。ユーザーから「何も表示されない」という苦情が出ている場合は、RDWA が原因の可能性があります。
- リモートデスクトップライセンス(RDライセンス) — ライセンス管理はWindows側で必要以上に煩雑に行う必要があるため、RDライセンスが担います。CALが正しく設定され、期限切れになっていないことを確認してください。
小規模なセットアップでは、次のような役割を持つ 3 台のサーバーを混在させるだけで済みます。
mun-rds1.woshub.com— RDSHmun-rds2.woshub.com— RDSHmun-rdsman.woshub.com— RDSH、RDWA、RDCB、RDライセンス
それほど凝ったものではありませんが、役割を正しく設定すればうまく機能します。ただし、権限を正しく設定し忘れたり、サーバーのバージョンが一致しなかったりすると、問題が発生したり、起動しなくなったりすることがあります。
Windows Server 上に新しい RDS 展開を作成する
一部のマシンではGUIウィザードが最後の瞬間に失敗することがありますが、いくつかのコツを押さえれば通常は問題なく動作します。まず、サーバーマネージャーを開き、 「すべてのサーバー」にRDSサーバーを追加します。次に、「役割と機能の追加」をクリックし、「リモートデスクトップサービスのインストール」を選択します。「標準展開」を選択します。「クイックスタート」は1台のサーバーのみのセットアップなので、勇気がない限りは選択しないでください。
役割を選択するときは、次のものを割り当てます。
- RD接続ブローカー— オン
mun-rdsman - RD Webアクセス— オン
mun-rdsman - RDセッションホスト– すべてのRDSHサーバー上
mun-rds1, mun-rds2, mun-rdsman
すべてを1つのマシンにまとめてしまいたくなりますが(手っ取り早いので)、安定性を求めるなら役割を分散させましょう。 「必要に応じて対象サーバーを自動的に再起動する」にチェックを入れてからデプロイしてください。設定によっては、この操作がハングしたり失敗したりする可能性があるため、ログを確認するか、1~2分後に再度実行してください。少し待つと、ファームは技術的には「作成」されますが、まだ喜ぶのはやめましょう。
次に、ライセンスを管理します。いずれかのサーバーにRDライセンスロールをインストールして構成するか、既存のライセンスサーバーを使用します。サーバーマネージャーを開き、リモートデスクトップサービスに移動して、展開の概要を確認します。何か問題(ライセンスサーバーが表示されないなど)がある場合は、CALのトラブルシューティングを行うか、しばらくお待ちください。権限やドメインログによって情報が遅れる場合があります。
RDSコレクションの作成 – ユーザーを整理する方法
コレクションは、異なるユーザーグループにサービスを提供するサーバーのグループのようなものだと考えてください。管理者向けに「Mgmt」コレクション、営業向けに「DeptX」コレクションなどを作成すると良いでしょう。コレクションを作成するには、以下の手順に従います。
- 「コレクション」に移動し、「セッション コレクションの作成」を選択します。
- のように意味のある名前を付けます
rds-Mun-Managers。 - このコレクションをホストする RDSH サーバーを選択します。問題を回避するために、OS バージョンを揃えるようにしてください。
- 許可するユーザーグループを設定します。デフォルトを削除し
Domain Users、 のような特定のグループを追加しますmun-Managers。 - ユーザープロファイルディスク(UPD)を使用している場合は、チェックボックスをオンにして共有フォルダ(例: )を指定します
\\mun-fs01\munrds_upd。このフォルダにグループからのフルコントロール権限が付与されていることを確認してください。ある設定では、権限の設定ミスが原因で問題が発生しました。フルコントロール権限を付与しないと、ユーザーにプロファイルが付与されません。 - 「作成」をクリックします。UVHD-template.vhdx が共有に存在することを確認してください。そうしないと、ユーザーがログインするときにエラーが発生します。
その後、コレクション設定を選択してプロパティを編集することで、セキュリティ、負荷分散の重み、セッションタイムアウトポリシーなどの設定を微調整できます。再接続タイムアウトとNLAセキュリティ設定も設定する必要があります。デフォルトで問題ない場合もありますが、セキュリティ設定の不一致によりRDPセッションが切断される場合もあります。接続が拒否された場合や、ユーザーに証明書の承認を求めるプロンプトが表示された場合は、「セキュリティ」タブを確認してください。
RemoteApps — デスクトップではなく、ユーザーに直接アプリを提供する
RemoteAppsは、ローカルアプリのように見えるものの、RDSサーバー上で動作するショートカットです。デスクトップ全体を表示せずにOfficeやChromeなどのアプリを展開するのに最適です。ユーザーが混乱したり、デスクトップ全体が表示されたりする場合は、アプリを正しく公開し忘れたか、ユーザーがデスクトップに直接接続している可能性があります。これは複数のユーザーにとって理想的ではありません。
「タスク」→ 「RemoteApp プログラムの公開」を選択して、RemoteApp を作成します。Windows は選択したサーバーにインストールされているアプリの一覧を表示します。アプリが一覧にない場合は、場所を指定して手動で追加できます.exe。完了すると、アプリを起動するための. RDP ファイルまたは RDWeb リンクが作成されます。
必要に応じて、アイコンを置き換えたり、起動パラメータを割り当てたりしてください。また、WebポータルでHTTPSを有効にしたり、SSL証明書を設定したりするなど、セキュリティオプションの設定も検討してください。Officeや特殊なアプリを導入する場合は、共有モードにするか、適切なライセンスを取得する必要があります。そうしないと、ユーザーにライセンス確認のプロンプトやエラーが表示される可能性があります。
PowerShell を使用した迅速な展開とトラブルシューティング
ここからが面白いところです。コマンドに慣れているなら、ファーム全体のセットアップをスクリプト化できます。管理者権限でPowerShellを実行し、サーバー名を定義します。
$RDSH1 = "mun-rds1.woshub.com" $RDSH2 = "mun-rds2.woshub.com" $RDSCB = "mun-rdcb.woshub.com" $RDSGW = "mun-rdsgw.woshub.com" Import-Module RemoteDesktop
次のようにロールをインストールします。
Add-WindowsFeature –ComputerName $RDSH1, $RDSH2 -Name RDS-RD-Server -IncludeManagementTools Add-WindowsFeature –ComputerName $RDSCB -Name RDS-Connection-Broker Add-WindowsFeature –ComputerName $RDSGW -Name RDS-Web-Access, RDS-Gateway
次に、すべてのサーバーを再起動します。
Restart-Computer -ComputerName $RDSH1, $RDSH2, $RDSCB, $RDSGW
再起動したら、RDS 展開オブジェクトを作成します。
New-RDSessionDeployment -ConnectionBroker $RDSCB -SessionHost $RDSH1, $RDSH2 –Verbose
Web アクセス サーバーまたはゲートウェイ サーバーの追加は簡単です。
Add-RDServer -Server $RDSGW -Role RDS-WEB-ACCESS -ConnectionBroker $RDSCB Add-RDServer -Server $RDSGW -Role RDS-Gateway -ConnectionBroker $RDSCB -GatewayExternalFqdn "rds.woshub.com"
ライセンスも忘れないでください:
Add-WindowsFeature –ComputerName $RDSCB -Name RDS-Licensing Invoke-Command -ComputerName $RDSCB {Set-RDLicenseConfiguration -Mode PerUser -LicenseServer $RDSCB -ConnectionBroker $RDSCB} Add-ADGroupMember "Terminal Server License Servers" -Members "mun-rdcb"
SSL 証明書が必要な場合は、次のようにインポートできます。
$Path = "C:\ps\RDSCert.pfx" $Password = ConvertTo-SecureString "yourP@ssw0rd" -AsPlainText -Force Set-RDCertificate -Role RDGateway -ImportPath $Path -Password $Password -ConnectionBroker $RDSCB
基本的に、PowerShell を使用すると作業が早く完了します。特に、後で再構築や拡張が必要な場合に有効です。ただし、サーバーの再起動や設定の編集は、注意しないと問題が発生する可能性があるので注意してください。
まとめ
全体的に見て、RDS ファームを稼働させるのはそれほど複雑ではありませんが、役割、権限、設定の項目で迷子になりやすいです。基本に忠実に従いましょう。サーバーのロールを一致させ、適切な権限を付与し、すべての URL と証明書を再確認してください。一度動作が安定すれば、ユーザーはスムーズな操作性を得ることができ、ファームの管理もはるかに容易になります ― 少なくとも Windows が再び何かを変更するまでは。
まとめ
- コアコンポーネントと役割を理解します。
- 使いやすさに応じて GUI または PowerShell を使用します。必要に応じて組み合わせてください。
- UPD の権限とネットワーク共有が正しいことを確認します。
- 奇妙なプロンプトを回避するには、ライセンスと SSL を適切に構成します。
- さまざまなクライアント マシンおよびブラウザーからの接続をテストします。
最終まとめ
これで状況を把握する助けになったなら、素晴らしいですね。RDS は最初から完璧に動作するとは限りませんが、少しの忍耐があれば、管理しやすくなります。そして覚えておいてください。小さな設定ミスが大きな問題を引き起こすこともあるので、ログや権限の確認を怠らないようにしてください。この記事が、誰かのRDS設定の時間を節約したり、イライラを解消したりするのに役立つことを願っています。頑張ってください!