ITよろづや

ITの参考になる情報を備忘録代わりに残していきます

WindowsFirewallのルールをPowerShellでインポート、エクスポートするスクリプト

通常、管理が煩雑になるのでサーバー側ではパーソナルファイアウォールは無効にするケースが多いと思いますが、環境によってはサーバー側でファイアウォール有効にすることもあると思います。


そこでWindows Server 2016で使える、WindowsFirewallのルールをPowerShellでインポート、エクスポートするスクリプトTechNetに公開されていたので、紹介します。


こちら

https://gallery.technet.microsoft.com/scriptcenter/Powershell-to-export-and-23287694 

 

概要※機械翻訳

ファイアウォールルールをエクスポートおよびインポートする方法は1つしかありません。ファイアウォールコンソールのBLOB(wfwファイル)として、またはスクリプトを使用する方法です。セットからのルールの削除や編集を自動化したいのであれば、サードパーティ製のツールを使用したり、危険な場所でレジストリを操作したりすることなくそれを行う(簡単な)方法はありません。

 

3つのスクリプトExportFirewallRules.ps1、ImportFirewallRules.ps1、およびRemoveFirewallRules.ps1は、CSVまたはJSONファイル形式で完全なファイアウォールルールセットをエクスポート、インポート、および削除します。同じ表示名を持つ既存のルールをインポートすると、上書きされます。

Powershell V4以上が必要です。


実際に使ってみましたが、上記3つのスクリプトを使えば、インポート、エクスポートなどができます。ちなみに、インポートは上書きではなく追加になり、Removeもcsvと合致したものを削除する形になりますので、使い方に注意が必要です。

 

またPowerShellを使わなくてもGUIでもエクスポート、インポートができますので、状況に応じて使い分ければいいと思います。