X

【備忘】Windows Server Essentials エクスペリエンスをまだまだ使い続けるためのTips

我が家で稼働中のWindows Server 2016 Essentialsが重くなったりWindows Defenderがなぜか動作しない状態になっていたことから、お盆休みの友としてWindows Server Essntialsを再インストールして環境を再構築しています。

インストール後のサーバーダッシュボードを介したRemoteweb Accessの構成や、クライアントコンピューターへのクライアントコネクターのインストールが失敗したため調べていたところ、主に利用するTLSの設定を中心に修正が必要なことがありましたので、備忘のため残しておきます。

1. Active Directoryの継続

旧環境からActive Directoryのアカウントを継続利用するために、ADはそのまま継続させます。

我が家ではセカンダリーのドメインコントローラーを導入していましたから、FSMOの役割をすべていったんセカンダリーに移し、サーバーはきれいに再インストールすることにしました。

再インストール後にまずActive Directoryの役割を追加の上、Active DirectoryのFSMOをEssentialsサーバーに戻したうえで、Essentialsエクスペリエンスのロールを構成しました。

新たにWindows Server Essentialsを導入する場合は、このADの移行のための手順は不要です。

2. サーバー上のTLS設定の修正

サーバー上で.NETFrameworkが利用するTLSのバージョンを修正しなければ、RemoteWeb Accessの構成に失敗します。

調べていたところ、以下のリンク先の情報が見つかったことから、PowerShellを利用してレジストリキーを修正しました。

Ask a question > Anywhere access wizard stop working
Hi My Anywhere Access certificate are about to expire in one week. I renew it automatic with Certify the Web, but it onl...
# PowerShell
New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v2.0.50727" -Name "SystemDefaultTlsVersions" -Value 1 -PropertyType DWORD -Force
New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v2.0.50727" -Name "SchUseStrongCrypto" -Value 1 -PropertyType DWORD -Force
New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v4.0.30319" -Name "SystemDefaultTlsVersions" -Value 1 -PropertyType DWORD -Force
New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v4.0.30319" -Name "SchUseStrongCrypto" -Value 1 -PropertyType DWORD -Force

New-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\.NETFramework\v2.0.50727" -Name "SystemDefaultTlsVersions" -Value 1 -PropertyType DWORD -Force
New-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\.NETFramework\v2.0.50727" -Name "SchUseStrongCrypto" -Value 1 -PropertyType DWORD -Force
New-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\.NETFramework\v4.0.30319" -Name "SystemDefaultTlsVersions" -Value 1 -PropertyType DWORD -Force
New-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\.NETFramework\v4.0.30319" -Name "SchUseStrongCrypto" -Value 1 -PropertyType DWORD -Force

Restart-Computer -Force

3. Microsoftの提供する無料DDNSはもう利用できない

RemoteWeb Accessを構成する際、ドメイン名を構成する画面が最初に来ます。が、MicrosoftがGodadyと提携して提供する「remotewebaccess.com」のDDNSと無料SSL証明書のサービスは終了しています。

そのため、自前で用意するドメインを利用する必要があります。
が、このドメインを利用するにも制約があり、ウィザード上で指定できるTLD(トップレベルドメイン)には、.comなど一部のドメインしか利用できず、私が取得しているドメインは指定できませんでした。

GUIで構成する

どうしたものかと考えあぐねて調べていたところ、以下のサイトで.comのドメインの勝手証明書をIISで作り、その証明書を使ってウィザードを完走させる手法が紹介されていました。

2016 Essentials Remote VPN Alternative
Most know this error message below quite well as it happens from time to time when Windows Live either isn’t working to ...

Alternative Solution: Setup external DNS address & Create own RWA certificate

Below are steps to followto implement this solution. Pre-reqs: Router is forwarding Port 80 and 443 to the Server; Make sure NPS Policy Server is installed; Create a “remotevpn.domain.com” DNS entry for the domain zone you have for your client.

Create Certifcate on Server:

  1. Use Internet Information Serices (IIS) console to create a domain certificate; Export Certificate to pfx with password to c:\temp folder. This cert will be used for the https://remotevpn.domain.com Remote website.
  2. Open IIS console, click on the server on left side (root)… on right side, click on Server Certificates.
    • Click on Create Domain Certificate request.
      • Common Name – this is the remotevpn.domain.com name for the primary cert name
      • Organization – the company name
      • Org Unit – can leave blank
      • City – enter city
      • State – enter your state
      • Click Next
    • Next page will ask to specify the Online Certificate Authority… – click Select to specify the Root CA server (Windows Server CA role).
    • For Friendly Name type something like: Anywhere Access VPN; click Finish
    • Next click on the new certifcate in the list of certs.. right click to export
      • Export to – click the button to create path c:\temp\remotevpn.pfx
      • Enter password you can remember.

Setup Anywhere Access using new Certificate

  1. Open the Anywere Access window – from Dashboard console, Settings, Anywhere access.
  2. Click on the option to Setup own domain.
  3. Select I want to use a domain I already own.
  4. Type in domain name: remotevpn.domain.com; Click Next
  5. Select – Set up my domain manually; Click Next
  6. Type in the url – https://remotevpn.domain.com. If your domain name is different, click on the change button.
  7. Click on I want to use an existing SSL certficate; click next
  8. Check box at bottom: I have manually configured my domain name; click next
  9. Import the trusted Certificate
    • Browse to file: c:\temp\remotevpn.pfx
    • Type in password you used; Click next
  10. This should now run through wizard to install Remote Web Access & VPN Connections.
  11. This should complete the process.

この手順に従い、一度仮で勝手ドメインを利用しウィザードを終え、その後自身が取得しているドメインの証明書をIISやRDゲートウェイ、ルーティングとリモートアクセスの機能に設定することとしました。

ウィザード完了後、Certify the Webを用いてLet’s Encryptから自身の保有するドメインの証明書を取得、設定します。

PowerShellで構成する

一度上の方法で設定したものの、時間がたつとダッシュボードの正常性に「リモートデスクトップサービスが正しく構成されていません」といったエラーが出ます。

そのため、Certify the Webから証明書取得後.pfkファイルに書き出し、それをCertify the Webのスクリプト機能からPowerShellのSet-WssDomainNameConfigurationコマンドレットを実行してインポートさせることにしました。

このコマンドレットでドメイン名と合わせて証明書をインポートしてあげればOKでした。
コマンドレット経由の場合TLDのチェックも行われないため、GUIでは設定できないTLDでも設定ができました。

4. サーバーとクライアントコンピューターのTLS設定の修正

インストール直後の状態だとクライアントコンピューターでも、コネクターのインストールが完了しないため、サーバーとクライアントの両方で.NETFrameworkが利用するTLSに関するレジストリーを修正します。

Can’t Connect to Essentials 2016 from New Windows 10 Machine | MCB Systems
I purchased a new Windows 10 21H2 computer for a client and upgraded it from Pro to Enterprise. After connecting it to t...

以下のコードを.regファイルに保存し、実行します。

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v2.0.50727]
"SystemDefaultTlsVersions"=dword:00000001
"SchUseStrongCrypto"=dword:00000001

[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v4.0.30319]
"SystemDefaultTlsVersions"=dword:00000001
"SchUseStrongCrypto"=dword:00000001

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v2.0.50727]
"SystemDefaultTlsVersions"=dword:00000001
"SchUseStrongCrypto"=dword:00000001

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319]
"SystemDefaultTlsVersions"=dword:00000001
"SchUseStrongCrypto"=dword:00000001

これらの修正を施すことで、正常に動作するようになりました。
RWAの機能はNextCloudをフロントにするように構成しましたが、記憶域スペース上の共有フォルダーやSSTP-VPN、クライアントコンピューターのバックアップなどの機能は現役です。
まだまだEssentialsサーバーには活躍してもらおうと思います。

ださっち: