rdpを介してコンピューターへのリモートアクセスを構成します。 RDPの保護と最適化

システム管理者なら誰でもこのプロトコルを知っています。このプロトコルは、現代のコンピュータネットワークで広く使用されています。 それを使用して、実行中のリモートマシンに接続できます オペレーティング・システム マイクロソフトのライン。 デスクトップ、ファイルシステムなどにアクセスできます。 これにより、リモートPCの画面の背後に物理的に存在することなく、設定や予防策の大部分を実行することが可能になります。

そのため、RDPプロトコルは技術スペシャリストの武器庫の主要コンポーネントの1つです。 職場を離れることなく、ネットワーク上で利用可能なすべてのコンピューターを管理し、問題のトラブルシューティングを行うことができます。

登場の歴史

RDPの略語であるリモートデスクトッププロトコルは、1998年に登場しました。 当時、この独自のアプリケーションレベルのプロトコルはWindows NT 4.0ターミナルサーバーオペレーティングシステムの一部であり、クライアントサーバーアプリケーションのリモート操作のアイデアを実装することを可能にしました。 ご存知のように、すべての職場に強力なコンピューターを提供できるとは限りません。遠い昔でも、生産性には多くの要望がありました。

この問題の解決策は次の構造です。強力なサーバー(またはサーバーのクラスター)がコンピューティング操作の大部分を実行し、低電力のクライアントコンピューター/アプリケーションがRDPプロトコルを使用してそれに接続し、タスクを実行します。 したがって、リソースが限られていても、エンドユーザーノードで複雑なアプリケーションやプログラムを操作できるようになりました。結局のところ、サーバーに主な負荷がかかり、クライアントPCはモニターでの操作の主な結果のみを受け取りました。

RDPプロトコルの説明

  • デフォルトでは、TCPポート3389が接続に使用されます
  • 上記のように、接続すると、リモートマシン上のファイルを操作することができます。
  • セキュリティを確保するために、暗号化は56ビットと128ビットのキーで実装されています
  • セキュリティ機能についても、TLSプロトコルの機能が使用されます
  • 共有クリップボード-リモートマシンからデータをコピーして、ローカルPCに貼り付けることができます。
  • ローカルリソースをリモートPCに接続する機能を実装しました。
  • RDPは、ローカルコンピューターポート(シリアルおよびパラレル)へのアクセスを提供します

動作原理

RDPは、TCPプロトコルスタックの機能に基づいています。 まず、トランスポートレベルでクライアントとサーバーの間に接続が確立されます。 次に、RDPセッションが開始されます。この段階で、暗号化、接続されたデバイス、グラフィック設定などの主要なパラメータが合意されます。

すべてが構成されると、RDPセッションは完全に開始できるようになります。 クライアントPCは、キーボードまたはマウスからコマンドを送信した結果として発生するグラフィックイメージ(操作の結果)をサーバーから受信します。

認証

RDPセキュリティが構成されている場合、認証は次のように行われます。

  1. 接続を初期化すると、RSAキーのペアが生成されます
  2. 次に、特別な公開鍵証明書が作成されます
  3. オペレーティングシステムは、キーを使用してRSA証明書署名プロセスを実行します
  4. 次に、クライアントはサーバーに接続し、サーバーから証明書を受け取り、チェックに合格すると、リモートコントロールセッションが初期化されます。

開始方法

Windows XP、Vista、Sevenなどのオペレーティングシステムでは、リモートデスクトップ接続クライアントソフトウェアがデフォルトで有効になっています。 起動するには、キーボードショートカットを押す必要があります Win + R、ダイヤル mstsc を押して 入る.

RDPは、管理目的と日常業務の両方のリモートアクセスに便利で効率的かつ実用的なツールです。


その実装はほとんどどこにでもあり(さまざまなプラットフォームとOS)、それらの多くがあることを考えると、その機能をよく理解する必要があります。

少なくともこれは、いくつかの理由で必要になります。

  • 多くの場合、単純な理由でRDPの代わりに別のソリューション(VNC、Citrix ICA)が使用されます。「組み込みのRDPは最小限であり、何もできない」と想定されています。
  • 現在流行しているクラウド技術(オフィスを「シンクライアント」に移行し、単にターミナルサーバーを編成する)に関連する多くのソリューションでは、「RDPは組み込みであるため悪い」という意見があります。
  • 「RDPはVPNなしでは外部に公開できない、ブレイクアウト」という事実についての標準的な神話があります(神話には正当性がありますが、長い間時代遅れになっています)。
  • そうですね、神話の話を始めてから、「RDPからCitrixに切り替えた後、トラフィックが数回落ちた」という意見があります。 結局のところ、citrixは高価であるため、少なくとも157%低温です。

これらの神話はすべてナンセンスであり、NT 4.0の時代に関連していた時代遅れの「良いアドバイス」と、存在する理由のない完全なフィクションが混在しています。 ITは精密科学であるため、それを理解する必要があります。 すべての新機能を考慮に入れた、新しいバージョンの適切に調整されたRDPプロトコルは、リモートアクセスを整理するためのかなり優れた信頼性の高いツールです。

したがって、以下を扱います。

  • RDPバージョンの簡単な説明
  • RDPセッションの保護モードの構成
  • RDPの暗号化の構成
  • 特定のアダプターとポートへのバインド
    • 標準ポートを目的のポートに変更します
    • 複数のネットワークアダプターに対して個別のRDP設定を行う
  • NLAの有効化
    • NLAとWindowsXP
    • XPでCredSSPを有効にする方法
  • RDPに適切な証明書を選択する
  • 空のパスワードを持つアカウントへのRDP接続をブロックする
  • RDP速度の最適化
  • RDP圧縮の最適化
    • 一般的なRDP圧縮の構成
    • RDPオーディオ圧縮の構成
  • RDPデータストリームの比率を最適化する
  • RDPに安全なRPC通信を要求するを有効にする

始めましょう。

RDPプロトコルバージョン

このプロトコルには、NT4.0以降かなり長い歴史があります。 単純な理由で履歴の詳細は脇に置いておきます。現時点では、Windows Vista SP1 /にあるRDP7.0バージョンについてのみ説明するのが理にかなっています。 Windows Server 2008であり、SP3と更新されたRDPクライアント(KB 969084へのリンクにあります)をインストールすることにより、WindowsXPに無料で追加できます。 少なくともWindowsXPがあり、最新のService Packがあり、インストールでき、NT 4.0SP5に対するWindows2000SP2のRDPの利点について話し合う時間を無駄にしないことを前提としています。

RDPセッション保護モードの構成

基本的に、これはタスクの最も簡単な部分です。 結論は次のとおりです。 異なるバージョンのRDPは、セッションを保護するために2つの主要なメカニズムを使用します。組み込みのRDPと、セッションをTLSで「ラップ」することです。 ビルトインは十分に安全ではなく、「RDPはVPNの外部にのみ存在できる」という推奨事項があります。 したがって、常にTLSサポートを有効にしてください。 これはあなたが始めるべき最小です。 唯一の制限は、サーバーのバージョンがWindows Server 2003SP1およびクライアントのRDP5.2以降よりも低くないことですが、2011年末のこれはかなり解決できると思います。

RDP overTLSを有効にする方法

いつものように、いくつかのオプションがあります。 1つは、グループポリシーを介して有効にすることです。 これを行うには、ターゲットグループポリシーオブジェクトに移動し(または、自宅のワークステーションでローカルにgpedit.mscを実行します)、[コンピューターの構成]-\u003e [管理用テンプレート]-\u003e [Windowsコンポーネント]-\u003e [リモートデスクトップセッションホスト]を選択します。 」-\u003e「セキュリティ」を選択すると、SSL(TLS 1.0)のみを選択して、[リモート接続に特定のセキュリティレイヤーの使用を要求する]パラメーターが有効になります。 よりソフトなネゴシエートを選択することもできますが、お勧めしません。 現時点では、許容可能なセキュリティレベルを下回っています。 十分に高いセキュリティでプライベートクラウドを作成した人として、ロンドン近郊のデータセンターに特に価値のあるデータを持ち込み、デフォルトのRDPでそこに行くことはゼロであり、トラブルの探求であると言えます。

簡単で簡単です-リモートデスクトップセッションホスト構成スナップイン(mmcにあるか、[管理ツール]-\u003e [リモートデスクトップ接続]メニューで準備ができています)を開き、リストから[接続]を選択します 希望の接続 (通常は1つで、RDP-Tcpと呼ばれます)、[プロパティ]、[全般]タブの順に開き、そこで目的のセキュリティレイヤーを選択します。

TLSが機能するには、(少なくともサーバー側からの)デジタル証明書が必要です。 通常、それはすでにそこにあります(自動的に生成されます)。そこにあることを確認してください。後でそれを改善する方法について説明します。 今のところ、必要なだけです。そうしないと、接続できません。

RDPの暗号化の構成

4つの暗号化オプションを構成に使用できます。 それぞれについて考えてみましょう。

RDP低暗号化モード

最も「いいえ」のモード。 RDP5.xのひどい時代とバージョンの遺産。 56ビットDESまたは40ビットRC2暗号化をネゴシエートできますが、現時点では深刻ではありません。 不要で危険です。 たとえば、有効にすると、TLSは有効になりません。 TLSは、このオプションが提供する弱い暗号のネゴシエーションをすでに拒否します。

RDPクライアント互換の暗号化モード

2番目の「いいえ」モード。 RDP5.xのひどい時代とバージョンの遺産。 最大128ビットのRC4を試しますが、すぐにDES / RC2に同意します。 不要で危険です。 また、TLS互換ではありません。

RDP高暗号化モード

最小許容モード。 少なくとも128ビットのRC4が必要です。 HEP付きのWindows2000Server以降のすべてのサーバーで動作します。

RDPFIPS140-1暗号化モード

まさに必要なもの。 最新の対称アルゴリズムをサポートし、RC2、RC4、単一DESを明示的にサポートしません。また、メッセージ認証コード(MAC)の整合性計算にMD5ではなくSHA-1の使用を強制します。 常にこのオプションを有効にしてください。3DES、AES、またはSHA-1ができないサーバーを見つけることはほとんど不可能です。

この設定はどこで行われますか? リモートデスクトップセッションホスト構成スナップイン(mmcにあるか、[管理ツール]-\u003e [リモートデスクトップ接続]メニューで既製)を開き、[接続]リストから目的の接続を選択します(通常は1つで、RDP-Tcpと呼ばれます)。 、を開き、[プロパティ]、[全般]タブの順に開き、必要な暗号化レベルを選択します。

RDPを特定のアダプターとポートにバインドする

サーバーが安全かつ予測どおりに機能するためには(たとえば、新しく追加されたネットワークアダプターからの接続の受け入れを開始しない)、RDPサーバーサービスが接続を受け入れる必要があるインターフェイスを明示的に指定する必要があります。 さらに、サーバーが接続をリッスンするポートを切り替えると便利なことがよくあります。 もちろん、ゲートウェイを介してRDPを使用してサーバーを公開することでこれを行うことができますが、それがなくても行うことができます。 このような一見基本的なアクションは、実際には、別の「強力なツール」で有名なポートをチェックする愚かなscriptkiddisの割合を大幅に減らします。

RDPサービスを特定のネットワークアダプターにバインドする方法、またはアダプターごとに異なる設定で複数のRDPを実行する方法

リモートデスクトップセッションホスト構成スナップイン(mmcにあるか、[管理ツール]-\u003e [リモートデスクトップ接続]メニューで既製)を開き、[接続]リストから目的の接続を選択します(通常は1つで、RDP-Tcpと呼ばれます)。 、[プロパティ]を開き、[ネットワークインターフェイス]タブを開きます... その中で、接続を待機する特定のインターフェースを1つ選択し、さらに並列セッションの数を制限することができます。

多くのインターフェイスがあり、たとえば、使用可能な5つのうち2つを介して接続できるようにする必要がある場合は、デフォルトのRDP-Tcpを1つのアダプターにバインドしてから、[アクション]メニューに移動して[新規作成]を選択する必要があります。そこに接続します。 接続は、すべてのインターフェイスまたは1つのインターフェイスのいずれかでリッスンできます。また、N個のインターフェイスでリッスンする必要がある場合は、N個の接続を作成する必要があります。

したがって、「RDPが1つのポートの1つのインターフェイスでリッスンし、別のポートで別のインターフェイスでリッスンするようにする」というタスクがある場合は、同じ方法で解決できます。デフォルトのRDP-Tcpをすべてのアダプターから解き、特定のものの後、-新しいRDP-接続を作成し、目的のネットワークインターフェイスにもバインドします。

RDPサービスをデフォルト以外のポートにバインドする方法

デフォルトのポートは3389TCPです。 ちなみに、パケットフィルターで有効にすることを忘れないでください。 さて、何か他のものが必要な場合は、レジストリキーに移動する必要があります

HKEY_LOCAL_MACHINE \\ System \\ CurrentControlSet \\ Control \\ Terminal Server \\ WinStations \\ RDP-Tcp

その中のPortNumber値を修正します。 ポート占有率の観点から競合を追跡することはあなたの良心にあることを覚えておいてください。彼自身、あなたが指定したポートが混雑していることを発見すると、どこにも「ジャンプ」できなくなります。

NLAをオンにする-ネットワークレベル認証

NLA機能はNT6.0で登場し、その後、XP用のSP3をインストールすることにより、以前のOSバージョンで部分的に使用する機能が追加されました。
この関数の本質は非常に単純です。 経由で接続した場合の6.0までのRDPバージョン RDPクライアント 認証の前に、ログインウィンドウを表示する必要があります-つまり、 最初のショー、それから彼はシステムに入ろうとします。 これにより、単純な脆弱性が発生します。サーバーは、「新しいセッションの開始を試してみましょう」という一連のリクエストで過負荷になる可能性があり、セッションを作成してユーザーのログインを待つことで、すべてのリクエストに応答するように強制されます。 実際、これはDoS機能です。 これにどのように対処できますか? スキームを考え出す必要があるのは当然です。その目的は、クライアントにできるだけ早く資格情報を要求することです。 最適-ドメイン内のKerberosのようなもの。 これが行われました。 NLAには2つの目的があります。

  • クライアントは、ターミナルセッションを開始する前に認証されます。
  • ローカルクライアントSSPのデータをサーバーに転送することが可能になります。 シングルサインオンが機能し始めます。

これは、新しいセキュリティプロバイダーであるCredSSPを通じて実装されます。 技術仕様を読むことができます。簡単に言うと、この機能は常に有効にする必要があります。 もちろん、その仕事のためにそれが必要であることを考えると:

  • クライアントOS(接続元のOS)はWindows XPSP3以降でした。
  • サーバーOS(接続先のOS)はWindows Server2008以降でした。

注:Windows Server 2003カーネルはXPよりも新しいですが(5.2と5.1)、NLAサポートを追加するWindows XPの更新プログラムがありますが、Windows Server2003には追加されていません。 つまり、最もアクセスしやすいバージョン(すべてのパッチが適用されたWindows Server 2003 R2 SP2)から接続した場合でも、NLAを必要とするサーバーに接続できず、NLAをサポートするサーバーになることはできません。 悲しいかな。

RDPサーバー側からNLAを有効にする方法

グループポリシーを使用して、すべてのサーバーでNLAを有効にすることをお勧めします。 これを行うには、ターゲットグループポリシーオブジェクトに移動し、[コンピューターの構成]-\u003e [管理用テンプレート]-\u003e [Windowsコンポーネント]-\u003e [リモートデスクトップセッションホスト]-\u003e [セキュリティ]を選択し、[ユーザー認証を要求する]を有効にします。ネットワーク層認証を使用してリモート接続をパラメーター化します。

ローカルで有効にすることもできます。 これを行うには、[プロパティ]サブメニュー(標準の[コンピューター]サブメニュー)を呼び出し、[リモート]タブを選択します。このタブから選択できます。 3つのオプション -このホストへのRDP経由の接続を拒否し、任意のRDP経由の接続を許可し、NLAでのみ許可します。 常にNLAオプションを有効にします。これにより、主にサーバーが保護されます。

NLAとWindowsXP

Windows XPをお持ちの場合は、この機能を使用することもできます。 「NLAの場合、少なくともホイストが必要です。マイクロソフトはアップグレードのためにそれを行いました」という一般的な声明は誤りです。 Service Pack 3は、CredSSPの実装を追加して、ローカルSSPが保持するクライアント資格情報をサーバーに委任します。 つまり、簡単に言うと、WindowsXPからNT6.0以降のシステムに接続できるように特別に作成されたものです。 この機能でWindowsXP SP3自体に接続することはできません。NLAサポートは部分的になります(したがって、Windows XPからNLAを使用してクライアントを接続することをサポートするRDPサーバーは、標準的な方法を使用して作成できません。WindowsXPはNLA互換クライアントのみになります。 )。

注:NLAはNT 6.0から存在しており、RDP6.0と呼ばれるテクノロジーのスタックの一部です。 XP用の3番目のサービスパックは、RDP 6.0だけでなく、RDP 7.0をインストールする機能も備えています。これは非常に優れています(たとえば、RDP 7.0では、6.0とは異なり、EasyPrint、双方向オーディオなど、RDPクライアントを変えるものがいくつかあります。 Windows XPでは、すべてがかなり実用的なシステムにラップされています)。 ちなみに、これは悪いMicrosoftについてであり、Windows XPから悪い、悪いホイストにアップグレードすることをすべての人にひどく強制しました。2001製品の無料サービスパックでも、そのホイストで提供されたものよりも新しいR\u200b\u200bDPサブシステムを縫いました。 2006年にリリースされました。

Service Pack 3は暗号化プロバイダーの新しいdllを追加しますが、それは含まれていないため、この機能を明示的に有効にする必要があります。

XPでCredSSPを有効にする方法

繰り返しになりますが、この操作はWindowsXPにServicePack 3をインストールした後に厳密に実行され、会話のコンテキストでは、NLAを使用してRDP6.1経由で他のサーバーに接続できるようにする必要があります。

ステップ1-セキュリティパッケージのリストを展開します。
これを行うには、レジストリキーを開きます

HKEY_LOCAL_MACHINE \\ SYSTEM \\ CurrentControlSet \\ Control \\ Lsa

その中のセキュリティパッケージの値を見つけます。 右クリックして「変更」を選択します(バイナリデータの変更ではなく、変更のみ)。 「各行にパッケージ名」のようなリストがあります。 そこにtspkgを追加する必要があります。 残りは残しておく必要があります。 追加の場所は重要ではありません。

2番目のステップは、ライブラリを接続することです。
キーは異なります:

HKEY_LOCAL_MACHINE \\ SYSTEM \\ CurrentControlSet \\ Control \\ SecurityProviders

その中で、SecurityProviders値(前の場合と同様に、これはサブキーではなく値であることに注意してください)を見つけ、類推によって変更し、credssp.dllのみを追加する必要があります。 リストの残りの部分も、触れる必要はありません。

これで、レジストリエディタを閉じることができます。 これらの操作の後、システムを再起動する必要があります。 暗号プロバイダーは、外出先では絶対に手に入らないものであり、これは悪いことよりも良いことです。

RDPに適切な証明書を選択する

RDPにデフォルト以外の証明書を使用する機会がある場合は、それを使用することをお勧めします。 これは、セッション自体のセキュリティには影響しませんが、接続のセキュリティと使いやすさに影響します。 最適に使用される証明書には、次の点が含まれている必要があります。

  • サーバーに接続しているクライアントが入力した名前と文字ごとに一致する名前(サブジェクトまたはSAN内)。
  • 動作中のCRLを指す通常のCDP拡張(できれば少なくとも2つ-OCSPと静的)。
  • 必要なキーサイズは2048ビットです。 さらに多くのことが可能ですが、XP / 2003CAPI2の制限に注意してください。
  • XP / 2003側の接続が必要な場合は、署名/ハッシュアルゴリズムを試さないでください。 つまり、SHA-1を選択するだけで十分です。

RDPサーバーの特別な証明書の問題についてもう少し詳しく説明します。

RDPサーバー用の特別な証明書テンプレート

RDPの証明書が、通常のテンプレート(Webサーバーなど)に基づいておらず、[アプリケーションポリシー]フィールド(証明書では、より一般的にはエンチャントキーの使用法-EKUと呼ばれます)で作成されている場合、標準のクライアント認証とサーバー認証の値ですが、独自のテンプレートを追加します。このテンプレートには、アプリケーションの標準的なメソッド値では追加されない、単一の特別なテンプレートがあります-リモートデスクトップ認証。 このアプリケーションポリシー値は手動で作成する必要があり、そのOIDは1.3.6.1.4.1.311.54.1.2になります。その後、新しい証明書テンプレートを作成できます。これに基づいて、次の証明書を発行できます。 RDPサーバーを対象としています。

この操作を完全に自動化するには、新しいテンプレートに予測可能な名前(たとえば、「RDPServerCert」)を付けて、グループポリシーオブジェクトに移動し、[コンピューターの構成]-\u003e [ポリシー]-\u003e [管理用テンプレート]-\u003e [Windowsコンポーネント]-\u003e [リモートデスクトップサービス]を開きます。 -\u003eリモートデスクトップセッションホスト-\u003eセキュリティ。 サーバー認証証明書テンプレートパラメーターを選択して有効にし、値フィールドに名前を入力します-RDPServerCertを作成しました。 これで、RDPが有効になっている場合、このポリシーに該当するすべてのドメインホストは認証局に送信され、証明書がない場合は指定されたテンプレートに基づいて証明書を要求し、RDP接続を保護するために自動的にデフォルトになります。 シンプル、便利、効果的。

空のパスワードでRDPアカウントを介した接続をブロックする

ささいなことですが、それを忘れる必要はありません。
パスワードのないアカウントのRDPへの接続をブロックするには、グループポリシーオブジェクトの設定に移動します。[コンピューターの構成]-\u003e [Windowsの設定]-\u003e [セキュリティの設定]-\u003e [ローカルポリシー]-\u003e [セキュリティオプション]を選択し、[アカウント:ローカルアカウントの使用を制限する]を設定します。コンソールログオンのみのパスワード」を有効にします。 これが事実であることを確認するのを怠らないでください。

RDP接続用のACLの構成

デフォルトでは、RDPサーバーに接続するには、明示的なユーザーアクセスまたはゲストアクセスのアクセス許可が必要です。
ローカルのAdministratorsグループとRemoteDesktopUsersグループにはこの権限があります。 リモートデスクトップユーザーグループを使用してRDPサーバーへのアクセスを制御し、個々のユーザーではなく、必要なドメイングループをサーバーに追加することをお勧めします。 最後の手段としてのみ、RDP-Tcpの[プロパティ]設定の[セキュリティ]タブの内容を変更します。何よりも、指定したノードへのRDPアクセスを明示的に拒否する「RDPブロックホスト名」グループを追加します。

RDP速度の最適化

RDP速度の最適化はかなり広範囲にわたるトピックなので、いくつかの部分に分けます。 これには、圧縮前およびネットワーク層の最適化前にプロトコルの負荷を軽減する方法が含まれます。

クロマ(ビット深度)

RDP 7.0以降では、32、16、および8ビットのオプションを使用できます。 仕事について話している場合は、16ビットで十分です。 これにより、チャネルの負荷が大幅に軽減され、さらに2倍以上になることもあります。これは驚くべきことですが、本当です。 もちろん8ビットも可能ですが、痛々しいほど怖く見えます。 16ビットは完全に許容されます。

注:8ビット接続はWindows Server 2008R2では使用できなくなりました。

サーバーで[最大色深度の制限]パラメーターを有効にするか、RDPクライアント設定で同じことを行います。

ClearTypeを無効にする

ClearTypeを無効にすると、RDPプロトコルは画像ではなく、文字を描画するためのコマンドを送信します。 有効にすると、サーバー側から画像をレンダリングし、圧縮してクライアントに送信します。 これは数倍効果が低いことが保証されているため、ClearTypeを無効にすると、作業プロセスが大幅に高速化され、応答時間が短縮されます。 あなた自身がどれだけ驚かれることでしょう。

これは、クライアント設定レベルとサーバー側の両方で実行できます([コンピューターの構成]-\u003e [ポリシー]-\u003e [管理用テンプレート]-\u003e [Windowsコンポーネント]-\u003e [リモートデスクトップサービス]-\u003e [リモートセッション環境]セクションの[フォントの平滑化を許可しない]パラメーターリモートデスクトップセッションホスト)。

壁紙を削除する

[コンピューターの構成]-\u003e [ポリシー]-\u003e [管理用テンプレート]-\u003e [Windowsコンポーネント]-\u003e [リモートデスクトップサービス]-\u003e [リモートデスクトップセッションホスト]の[リモートセッション環境]セクションで[RD壁紙]パラメーターを強制的に削除すると、ターミナルセッション画面が再描画される状況が大幅に改善されます。 デスクトップに猫がいないユーザーは正常に生き残り、チェックされます。

画像キャッシュをオンにして構成します

クライアントが十分に持っている場合 ランダム・アクセス・メモリ、ビットマップキャッシュを有効にして構成することは理にかなっています。 これにより、帯域幅の最大20〜50%が獲得されます。 インストールするには、キーを入力する必要があります

HKEY_CURRENT_USER \\ SOFTWARE \\ Microsoft \\ターミナルサーバークライアント\\

そこにBitmapPersistCacheSizeパラメーターとBitmapCacheSizeパラメーターを作成します。どちらもDWORD32タイプです。
BitmapPersistCacheSizeパラメーターは、ディスクキャッシュのサイズをキロバイト単位で指定します。 デフォルトは10です。このパラメーターを少なくとも1000に増やすことは理にかなっています。
BitmapCacheSizeパラメーターは、R\u200b\u200bAM内のキャッシュのサイズをキロバイト単位で指定します。 デフォルト値は1500です。このパラメーターを少なくとも5000に増やすことは理にかなっています。これはクライアントセッションあたりわずか5メガバイトであり、最新のRAMスケールではこれは重要ではなく、10%のパフォーマンス向上につながるとしても、精算。 ちなみに、同じパラメータは.rdpファイルで修正できます。 RDP接続を保存してからメモ帳でファイルを開くと、パラメーターの中に、bitmapcachesize:i:5000のようなものを追加できます。5000は5MBのキャッシュです。

デスクトップ構成を無効にする

デスクトップコンポジションは、Aeroや彼の友人のようなあらゆる種類の「素敵なもの」をもたらし、帯域幅を著しく消費します。 これは不必要であり、仕事に有害です。 [コンピューターの構成]-\u003e [ポリシー]-\u003e [管理用テンプレート]-\u003e [Windowsコンポーネント]-\u003e [リモートデスクトップサービス]-\u003e [リモートデスクトップセッションホスト]の[リモートセッション環境]セクションにある[RDPセッションのデスクトップ構成を許可する]パラメーターを[無効]に設定する必要があります。

デスクトップウィンドウマネージャー設定の最適化

[コンピューターの構成]-\u003e [ポリシー]-\u003e [管理用テンプレート]-\u003e [Windowsコンポーネント]-\u003e [デスクトップウィンドウマネージャー]の[リモートセッション環境]セクションにあるパラメーターは、スムーズにスライドするメニューなどの「素敵な」表示を制御します。 それらの3つがあります-ウィンドウアニメーションを許可しない、デスクトップコンポジションを許可しない、Flip3D呼び出しを許可しない。 それらすべてを有効モードに切り替える必要があります。 実際、これらすべての機能を無効にします。

未使用のデバイスのリダイレクトを無効にする

特定のクラスのデバイス(COMポートやLPTポートなど)やオーディオを接続する予定がない場合は、サーバー側からデバイスをリダイレクトする機能を無効にすることをお勧めします。 そのため、デフォルトのRDPクライアント設定を持つクライアントは、未使用の機能をネゴシエートする接続時間を無駄にしません。 これは、他のサーバー設定と同じ場所、RDP-Tcpのプロパティ、[クライアント設定]タブ(色深度で設定を行ったのと同じ場所)、[リダイレクト]セクションで行われます。

ビジュアルRDPデータを最適化するための一般的なロジックの設定

[コンピューターの構成]-\u003e [ポリシー]-\u003e [管理用テンプレート]-\u003e [Windowsコンポーネント]-\u003e [リモートデスクトップサービス]-\u003e [リモートデスクトップセッションホスト]-\u003e [リモートセッション環境]の[リモートセッション環境]にある[RDPセッションのビジュアルエクスペリエンスの最適化]というオプションは、その方法を制御します。 RDPは、ビジュアルデータをマルチメディアまたはテキストとして認識します。 これは、大まかに言えば、より適切に動作する方法の圧縮アルゴリズムへの「ヒント」です。 したがって、仕事では、このパラメーターをテキストに設定する必要があります。美しいフラッシュバナー、HTML5、ビデオクリップをたくさん見たい場合は、リッチマルチメディアオプションの方が適しています。

RDP圧縮の最適化

RDPでの圧縮は長い道のりを歩んできました。 RDP 5.2の時点で、内部名が「バージョン1」の圧縮サブシステム(「コンプレッサー」)がありました。これは、クライアントプロセッサの負荷に関しては最も単純で簡単なオプションですが、ネットワークトラフィックの負荷に関しては最悪です。 RDP 6.0は「バージョン2」を作成しました。これはわずかに改善されましたが、圧縮効率の点では改善されました。 Windows Server2008以降のサーバーに接続した場合にのみ機能する「バージョン3」に関心があります。 それは他の誰よりもよく圧縮され、最新のコンピューターの能力を考慮に入れると、プロセッサー時間のコストは重要ではありません。

V3をオンにしたときのゲインは、テストで判断すると60%に達する可能性があり、一般に、テストがなくても、目には目立ちます。

RDPで最適な圧縮を有効にする方法

これはクライアント設定です。 目的のグループポリシーオブジェクトで[コンピューターの構成]-\u003e [ポリシー]-\u003e [管理用テンプレート]-\u003e [Windowsコンポーネント]-\u003e [リモートデスクトップサービス]-\u003e [リモートデスクトップセッションホスト]-\u003e [リモートセッション環境]を開き、[RDPデータの圧縮アルゴリズムの設定]パラメーターを選択して有効にし、使用するネットワーク帯域幅を少なくするには、[最適化]を選択します。

注:多くの人は、リストに「圧縮を無効にする」オプションがあるのはなぜか疑問に思います。 これは、RDPセッションがCiscoWAASなどのWAN接続を最適化する外部デバイスによって圧縮される場合に必要です。 もちろん、他の場合には、圧縮を無効にすることは意味がありません。

オーディオストリーム圧縮の設定

RDP 7.0は、着信オーディオストリーム(つまり、サーバーからクライアントに送信されるオーディオ)の圧縮品質を調整する優れた機能を提供します。 これは非常に便利です。たとえば、ターミナルサーバーで作業している場合、「メッセージがICQに到着しました」のように聞こえるすべてのサービスに加えて、他のサービスは特に計画されていません。 仕事で必要ない場合は、圧縮されていないCD品質のオーディオをサーバーから転送しても意味がありません。 したがって、オーディオストリームの圧縮レベルを調整する必要があります。
このパラメーターは、[オーディオ再生品質の制限]と呼ばれ、[コンピューターの構成]-\u003e [ポリシー]-\u003e [管理用テンプレート]-\u003e [Windowsコンポーネント]-\u003e [リモートデスクトップサービス]-\u003e [リモートデスクトップセッションホスト]の[デバイスとリソースのリダイレクト]セクションにあります。 3つのオプションがあります:

  • 高-サウンドは非圧縮になります。 まったく。 つまり、RDPプロトコルの一般的な圧縮に該当しますが、特定のオーディオ圧縮(品質が低下する)は実行されません。
  • 中-データ転送の遅延が増加しないように、圧縮はチャネルに適応します。
  • ダイナミック-圧縮は、遅延が150msを超えないように、チャネルに動的に適応します。

適切なものを選択してください。 ご覧のとおり、事務作業にはダイナミックを選択することをお勧めします。

RDPでのデータストリームの比率の最適化

RDPセッショントラフィックはモノリシックではありません。 それどころか、リダイレクトされたデバイスのデータストリーム(たとえば、ローカルホストからターミナルサーバーへのファイルのコピー)、オーディオストリーム、レンダリングプリミティブコマンドストリーム(RDPはレンダリングプリミティブのコマンドを送信しようとします)に非常に明確に分けられます。 、および最後の手段としてビットマップを転送します)、およびデバイスは入力(マウスとキーボード)をストリーミングします。

これらのフローの相互関係とその(関係)計算のロジック(一種のローカルQoS)が影響を受ける可能性があります。 これを行うには、サーバー側からレジストリキーに移動します

HKEY_LOCAL_MACHINE \\ SYSTEM \\ CurrentControlSet \\ Services \\ TermDD

最初に4つのキーを作成します(キーがない場合)。

  • FlowControlDisable
  • FlowControlDisplayBandwidth
  • FlowControlChannelBandwidth
  • FlowControlChargePostCompression

すべてのタイプ-DWORD32。キーの機能は次のとおりです。
FlowControlDisableキーは、優先順位付けを使用するかどうかを決定します。 1を指定すると、ゼロが有効になっている場合、優先順位付けは無効になります。 それをオン。
FlowControlDisplayBandwidthキーとFlowControlChannelBandwidthキーは、2つのデータストリーム間の関係を決定します。

  • ユーザーインタラクションフロー(画像+入力デバイス)
  • その他のデータ(ブロックデバイス、クリップボード、その他すべて)

これらのキー自体の値は重要ではありません。 それらがどのように関係するかが重要です。 つまり、FlowControlDisplayBandwidthを1に、FlowControlChannelBandwidthを4にすると、比率は1:4になり、帯域幅の20%がユーザーインタラクションフローに割り当てられ、残りは80%に割り当てられます。 15と60を実行すると、比率が同じであるため、結果は同じになります。
FlowControlChargePostCompressionキーは、この比率がいつ計算されるか(圧縮の前または後)を決定します。 ゼロは圧縮前、1は圧縮後です。

「リモートサーバーは遠くにあり、誰もがRDP経由でオフィスに接続し、1Cが機能する」という形式を使用して、比率を1:1に設定し、圧縮後に読み取ることをお勧めします。 経験から、これは「ターミナルサーバーからローカルプリンターに大きなドキュメントを印刷する」状況で本当に役立ちます。 しかし、これは教義ではありません-それを試してみてください、メインツール-それがどのように数えられ、機能するかについての知識-あなたはすでに持っています。

RDPに安全なRPC通信を要求するを有効にする

この設定は、グループポリシーの[セキュリティ]セクションにあり、システム全体に適用されるSecure RPCの設定と同様に機能しますが、構成が簡単なだけです。 このパラメーターを有効にすると、すべてのクライアントRPC要求に対して暗号化が必須になります(システム設定に応じて、暗号化の「下限」は異なります-RC4 / DES、またはFIPS-140が有効な場合は-3DES / AES)認証リモートプロシージャコールには少なくともNTLMv2を使用します。 このオプションは常に有効にしてください。 非ドメイン環境では機能しないという神話があります。 これは事実ではなく、RPCセキュリティを強化しても誰も傷つくことはありません。

これはサーバー設定です。 目的のグループポリシーオブジェクトで[コンピューターの構成]-\u003e [ポリシー]-\u003e [管理用テンプレート]-\u003e [Windowsコンポーネント]-\u003e [リモートデスクトップサービス]-\u003e [リモートデスクトップセッションホスト]-\u003e [セキュリティ]を開き、[セキュリティで保護されたRPC通信を要求する]パラメーターを選択して有効にします。

リモートデスクトッププロトコル RDP (リモートデスクトッププロトコル)は、Windowsオペレーティングシステムを実行しているコンピューターのデスクトップへのネットワーク経由のリモートアクセスを提供します。 シンクライアントをMicrosoftターミナルサービスを実行しているWindowsターミナルサーバーに接続するときに使用されます。 Microsoftによって開発されました。

公式サポート RDP Windows Server 2008、Windows Server 2003、Windows Home Server、Windows XP Professional、Windows XP Media Center、Tablet PC Editions、Windows Vista Ultimate、Enterprise、およびBusinessエディションに含まれています。 すべて windowsバージョン XPおよびVistaにはクライアントが含まれます リモートアプリ デスクトップ接続(RDC)。

RDPプロトコルの主な機能

  • 128または56ビットのキー長でRC-4暗号化をサポート
  • TLS(Transport Layer Security)プロトコルをサポートします
  • スマートカードを使用したユーザー認証(サーバー上でMicrosoftターミナルサービスを介して)
  • ターミナルサーバーアプリケーションのローカルコンピューターオーディオサポート
  • ファイルシステムリダイレクト-リモートターミナルサーバー上のローカルコンピューターのファイルを操作できます
  • プリンターリダイレクト-リモートターミナルサーバーで実行されているアプリケーションからローカルコンピューター上のプリンターに印刷できます
  • ポートリダイレクト-リモートターミナルサーバーで実行されているアプリケーションのローカルコンピューターのシリアルポートとパラレルポートへのアクセスを開きます
  • ローカルコンピューターとリモートターミナルサーバーの両方でクリップボードを共有する
  • ディスプレイの色深度:24、16、15、または8ビット

RDPプロトコルパケット自体が暗号化された形式でネットワークを介して送信されるという事実にもかかわらず、サーバー側もクライアント側も送受信の相互認証を実行しないため、端末セッション自体が中間者攻撃にさらされる可能性があります。データパケット。 したがって、完全に安全なソリューションを構築するには、Windows Server 2003 Service Pack1で導入されたRDPSSL保護を使用する必要があります。

RDPの第6バージョンの新機能

  • リモートアプリケーション。 ターミナルセッションウィンドウを開かずに、専用のターミナルセッションでサーバー上でアプリケーションを直接起動します。 ローカルコンピューターのファイルの関連付けのサポート-サーバー上でアプリケーションを実行して、ファイル名の拡張子に従ってローカルコンピューター上でドキュメントを開く機能。
  • シームレスウィンドウ。 ターミナルサーバーでのアプリケーションの起動によるローカルコンピューターウィンドウのエミュレーション。 ユーザーアカウントの詳細を使用したサーバーでの自動認証。 アプリケーションの終了時に、対応するターミナルセッションを自動的に終了します。
  • ターミナルサーバーゲートウェイ。 httpsプロトコルを使用したIISゲートウェイサーバーを介したRDP接続をサポートします。 企業のローカルネットワークのISSの背後にあるターミナルサーバーへの安全な接続を提供します。
  • Windows AeroGlass。 ClearTypeフォントスムージングを含むWindowsAeroGlassのサポート。
  • Windows PresentationFoundation。 .NET Framework3.0がインストールされているすべてのクライアントでサポートされます。
  • Windows Management Instrumentationを使用したスクリプトサポートを含む、完全にカスタマイズ可能なターミナルサービス。
  • RDPクライアントの帯域幅管理が改善されました。
  • 複数のモニターのサポート。 ターミナルセッション画面を複数のモニターに分割します。 WindowsVistaシステムでのみ動作します。
  • ディスプレイの色深度:32、24、16、15、または8ビット