Windows Server 2019/2016でWindows Defenderアンチウイルスを活用する完全ガイド
Windows Defender アンチウイルスは、Microsoftが無償で提供する組み込み型のウイルス対策ソフトウェアで、Windows Server 2016および2019にはデフォルトでインストールされています(Windows 10 バージョン2004以降では「Microsoft Defender」という名称に変更されました)。本記事では、Windows Server 2019/2016におけるWindows Defenderの特徴と、日常的な運用に役立つ実践的な管理方法について詳しく解説します。
目次
- Windows ServerでWindows DefenderのGUIを有効化する
- Windows Server 2019/2016からWindows Defenderをアンインストールする方法
- PowerShellによるWindows Defenderの管理
- スキャン対象からファイルやフォルダを除外する方法
- PowerShellでリモートコンピューターのDefender状態レポートを取得する
- Windows Defenderの定義ファイルを更新する
- グループポリシーでWindows Defenderを構成する
Windows ServerでWindows DefenderのGUIを有効化する
Windows Server 2016および2019(Coreエディションを含む)には、Windows Defenderアンチウイルスのエンジンが標準で組み込まれています。Windows Defenderがインストールされているかどうかは、以下のPowerShellコマンドで確認できます。
Get-WindowsFeature | Where-Object {$_. name -like "*defender*"} | ft Name,DisplayName,Installstate

ただし、Windows Server 2016ではデフォルト状態ではWindows DefenderのGUIが含まれていません。サーバーマネージャーコンソールから「役割と機能の追加」→「機能」→「Windows Defender の機能」→「Windows Defender の GUI」を選択することで、グラフィカルインターフェースを追加インストールできます。

また、PowerShellからも次のコマンドでGUIを有効化できます。
Install-WindowsFeature -Name Windows-Defender-GUI

DefenderのGUIを削除したい場合は、以下のコマンドを使用します。
Uninstall-WindowsFeature -Name Windows-Defender-GUI
一方、Windows Server 2019ではDefenderのGUIがAPPXアプリケーションとして提供されており、「Windows セキュリティ」アプリ(設定 → 更新とセキュリティ)からアクセスできます。
Windows Defenderの設定は「ウイルスと脅威の防止」メニューから行います。

Defenderの設定メニューが開けず、Windowsセキュリティの起動時に「この windowsdefender を開くには新しいアプリが必要です」というエラーが表示される場合は、マニフェストファイルを使用してAPPXアプリケーションを再登録します。以下のPowerShellコマンドを実行してください。
Add-AppxPackage -Register -DisableDevelopmentMode "C:\Windows\SystemApps\Microsoft.Windows.SecHealthUI_cw5n1h2txyewy\AppXManifest.xml"
UWP(APPX)アプリが完全に削除されてしまった場合は、Microsoft Storeアプリの復元と同様の手順で手動復元が可能です。

Windows Server 2019/2016からWindows Defenderをアンインストールする方法
Windows 10では、サードパーティ製のウイルス対策ソフト(McAfee、Norton、Avast、Kaspersky、Symantecなど)をインストールすると、内蔵のWindows Defenderが自動的に無効化されます。しかし、Windows Serverではこの自動無効化が行われません。そのため、組み込みのウイルス対策エンジンは手動で無効化する必要があります(一般的に、1台のコンピューターやサーバーで複数のウイルス対策ソフトを同時に使用することは推奨されていません)。
Windows Server 2019/2016からWindows Defenderをアンインストールするには、サーバーマネージャーを使用するか、以下のPowerShellコマンドを実行します。
Uninstall-WindowsFeature -Name Windows-Defender
サーバー上に他のウイルス対策ソフトが存在しない場合は、Windows Defenderをアンインストールしないでください。後からDefenderの機能を再インストールする必要が生じた場合は、次のコマンドを使用します。
Add-WindowsFeature Windows-Defender-Features,Windows-Defender-GUI

PowerShellによるWindows Defenderの管理
ここでは、Windows Defenderアンチウイルスを管理するために利用できる代表的なPowerShellコマンドを紹介します。
まず、Windows Defenderサービス(WinDefend)が稼働しているかどうかは、以下のコマンドで確認できます。
Get-Service WinDefend

実行結果を見ると、サービスが開始済み(Status – Running)であることがわかります。Windows 10でDefenderサービスが停止してしまう原因については、別記事「Windows Defender Threat Service has stopped」で詳しく解説しています。
Defenderの現在の状態や設定内容を表示するには、次のコマンドレットを使用します。
Get-MpComputerStatus

このコマンドレットでは、最新のウイルス定義データベースのバージョンと更新日時(AntivirusSignatureLastUpdated、AntispywareSignatureLastUpdated)、有効になっているウイルス対策コンポーネント、最終スキャン時刻(QuickScanStartTime)などの情報が確認できます。
Windows Defenderのリアルタイム保護を無効化するには、以下のコマンドを実行します。
Set-MpPreference -DisableRealtimeMonitoring $true
このコマンド実行後、OSやユーザーが開くすべてのファイルに対するリアルタイムスキャンが行われなくなります。逆に、リアルタイム保護を再度有効化するには次のようにします。
Set-MpPreference -DisableRealtimeMonitoring $false
例えば、外部USBストレージデバイスのスキャンを有効化したい場合を考えてみましょう。まず現在の設定を確認します。
Get-MpPreference | fl disable*
USBドライブのスキャンが無効になっている場合(DisableRemovableDriveScanning = True)は、以下のコマンドでスキャンを有効化できます。
Set-MpPreference -DisableRemovableDriveScanning $false
Windows Defenderモジュールに含まれるPowerShellコマンドレットの一覧は、次のコマンドで表示できます。
Get-Command -Module Defender
スキャン対象からファイルやフォルダを除外する方法
Windows Defenderアンチウイルスの自動スキャンから除外する項目(ファイル名、拡張子、ディレクトリなど)のリストを設定できます。Windows Server 2019/2016版のWindows Defenderの特徴的な機能として、インストールされているサーバーの役割や機能に応じて、除外リストが自動的に生成される点が挙げられます。
例えば、Hyper-Vの役割がインストールされている場合、仮想ディスクや差分ディスク(VHD/VHDX形式:*.vhd、*.vhdx、*.avhd)、スナップショット、Hyper-V関連フォルダーやプロセス(Vmms.exe、Vmwp.exe)などがDefenderの除外リストに自動的に追加されます。
Windows Server上でMicrosoft Defenderの自動除外を無効化したい場合は、次のコマンドを実行します。
Set-MpPreference -DisableAutoExclusions $true
特定のディレクトリを手動でウイルススキャンの除外リストに追加するには、以下のコマンドを使用します。
Set-MpPreference -ExclusionPath "C:\ISO", "C:\VM", "C:\Nano"
特定のプロセスをスキャン対象から除外する場合は、次のコマンドを実行します。
Set-MpPreference -ExclusionProcess "vmms.exe", "Vmwp.exe"
PowerShellでリモートコンピューターのDefender状態レポートを取得する
PowerShellを使用すれば、リモートコンピューター上のMicrosoft Defenderアンチウイルスの状態を取得することも可能です。以下のシンプルなスクリプトは、ADドメイン内のすべてのWindows Serverホストを検索し、WinRM経由(Invoke-Commandコマンドレットを使用)で各サーバーのDefenderの状態を収集します。
$Report = @()
$servers= Get-ADComputer -Filter 'operatingsystem -like "*server*" -and enabled -eq "true"'| Select-Object -ExpandProperty Name
foreach ($server in $servers) {
$defenderinfo= Invoke-Command $server -ScriptBlock {Get-MpComputerStatus | Select-Object -Property Antivirusenabled,RealTimeProtectionEnabled,AntivirusSignatureLastUpdated,QuickScanAge,FullScanAge}
If ($defenderinfo) {
$objReport = [PSCustomObject]@{
User = $defenderinfo.PSComputername
Antivirusenabled = $defenderinfo.Antivirusenabled
RealTimeProtectionEnabled = $defenderinfo.RealTimeProtectionEnabled
AntivirusSignatureLastUpdated = $defenderinfo.AntivirusSignatureLastUpdated
QuickScanAge = $defenderinfo.QuickScanAge
FullScanAge = $defenderinfo.FullScanAge
}
$Report += $objReport
}
}
$Report|ft

ウイルス検出履歴に関する情報を取得したい場合は、以下のPowerShellスクリプトを使用します。
$Report = @()
$servers = Get-ADComputer -Filter 'operatingsystem -like "*server*" -and enabled -eq "true"'| Select-Object -ExpandProperty Name
foreach ($server in $servers) {
$defenderalerts= Invoke-Command $server -ScriptBlock {Get-MpThreatDetection | Select-Object -Property DomainUser,ProcessName,InitialDetectionTime ,CleaningActionID,Resources }
If ($defenderalerts) {
foreach ($defenderalert in $defenderalerts) {
$objReport = [PSCustomObject]@{
Computer = $defenderalert.PSComputername
DomainUser = $defenderalert.DomainUser
ProcessName = $defenderalert.ProcessName
InitialDetectionTime = $defenderalert.InitialDetectionTime
CleaningActionID = $defenderalert.CleaningActionID
Resources = $defenderalert.Resources
}
$Report += $objReport
}
}
}
$Report|ft
このレポートには、感染したファイル名、実行された駆除アクション、ユーザー、および親プロセスの情報が表示されます。

Windows Defenderの定義ファイルを更新する
Windows Defenderアンチウイルスは、Windows Updateサーバーからオンラインで自動更新できます。社内ネットワークにWSUSサーバーが存在する場合は、そこから定義ファイルを受け取ることも可能です。その際は、WSUSサーバー側で更新プログラムの承認が行われていること(WSUSコンソールでは「Definition Updates」という名称で表示されます)、およびGPOによってクライアントが正しいWSUSサーバーに接続するよう設定されていることを確認してください。

破損した更新プログラムを適用した結果、Windows Defenderが正常に動作しなくなるケースがあります。そのような場合は、現在の定義データベースをリセットして再ダウンロードすることをお勧めします。
"%PROGRAMFILES%\Windows Defender\MPCMDRUN.exe" -RemoveDefinitions -All
"%PROGRAMFILES%\Windows Defender\MPCMDRUN.exe" –SignatureUpdate
Windows Serverがインターネットに直接アクセスできない環境にある場合は、ネットワーク共有フォルダーからMicrosoft Defenderを更新できます。
Windows Defenderの更新プログラムを手動でダウンロードし(https://www.microsoft.com/en-us/wdsi/defenderupdates)、共有ネットワークフォルダーに配置します。そして、Defenderの更新ファイルが格納された共有フォルダーのパスを設定します。
Set-MpPreference -SignatureDefinitionUpdateFileSharesSources \\mun-fs01\Defender
その後、以下のコマンドでウイルス定義の更新を実行します。
Update-MpSignature -UpdateSource FileShares
グループポリシーでWindows Defenderを構成する
グループポリシー(GPO)を使用すれば、コンピューターやサーバー上のMicrosoft Defenderの基本設定を一元的に管理できます。設定に使用するGPOセクションは、「コンピューターの構成」→「管理用テンプレート」→「Windows コンポーネント」→「Windows Defender アンチウイルス」です。
このセクションには、Microsoft Defenderを管理するための100以上のさまざまなオプションが用意されています。
例えば、ウイルス対策機能を完全に無効化するには、「Windows Defender アンチウイルスを無効にする」というGPOパラメーターを有効にします。

利用可能なDefenderのグループポリシー設定の詳細については、Microsoft公式ドキュメント(https://docs.microsoft.com/en-us/microsoft-365/security/defender-endpoint/use-group-policy-microsoft-defender-antivirus)を参照してください。
さらに、Azure Security Center(ASC)ポータルのAdvanced Threat Protectionを利用すれば、Windows Defenderの一元的な管理が可能です(有料サブスクリプションが必要で、料金はホスト1台あたり月約15ドルです)。
-
Windows Server 2019でのバックアップと復元の実行方法を徹底解説
個人環境でも企業環境でも、バックアップと復元の戦略を実装することは非常に重要です。さまざまなOSやアプリケーション向けに、オンプレミスのストレージやAWS・Azure・Google Cloudなどのクラウドへ対応する多種多様なバックアップツールが存在します。本記事では、Windows Server 2019に標準搭載されている「Windows Server Backup」を使用して、バックアップ機能のインストール、設定、バックアップと復元の実行方法までを詳しく解説します。なお、ここで紹介する手順は、以前のバージョンのWindows Serverでも同様に適用できます。1. Windows Se
-
Windows Server 2016でWindows Defenderを無効化・アンインストールする方法【完全ガイド】
本記事では、Windows Server 2016に搭載されているWindows Defenderウイルス対策を無効化またはアンインストールする手順を詳しく解説します。 ご存知のとおり、Windows Server 2016にはWindows Defenderアプリケーションによるウイルスおよびマルウェア対策機能が標準で組み込まれています。しかし、サードパーティ製のウイルス対策ソフトを導入したい場合、Windows 10とは異なり、Server 2016ではWindows Defenderが自動的に無効化されません。これはサーバー環境での保護を最大化するための仕様です。 そのため、Server