Windowsファイアウォールは、PCのセキュリティを守る重要な機能ですが、特定のアプリやポートを開放したり、設定を変更したりする必要がある場合があります。
「Windows 11でファイアウォール設定をコマンドで変更したい!」
そんなときに便利なのが netsh advfirewall
コマンドです。
本記事では、netshコマンドを使ったWindows 11のファイアウォール管理方法を詳しく解説します。
1. ファイアウォールの現在の状態を確認する
まず、現在のファイアウォールの設定を確認するには、以下のコマンドを実行します。
netsh advfirewall show allprofiles
🔹 表示される情報の例
Domain Profile Settings:
----------------------------------------------------------------------
State ON
Firewall Policy BlockInbound,AllowOutbound
...
Public Profile Settings:
----------------------------------------------------------------------
State ON
Firewall Policy BlockInbound,AllowOutbound
...
👆 「State: ON」なら有効、「State: OFF」なら無効 になっています。
各プロファイル(ドメイン、プライベート、パブリック)の設定が表示されます。
2. ファイアウォールの有効化・無効化
ファイアウォールを有効にする
netsh advfirewall set allprofiles state on
ファイアウォールを無効にする
netsh advfirewall set allprofiles state off
🔹 特定のプロファイルのみ設定する場合
- ドメインネットワークのみ無効化powershellコピーする編集する
netsh advfirewall set domainprofile state off
- プライベートネットワークのみ無効化powershellコピーする編集する
netsh advfirewall set privateprofile state off
- パブリックネットワークのみ無効化powershellコピーする編集する
netsh advfirewall set publicprofile state off
⚠ 注意:ファイアウォールを無効にすると、外部からの攻撃に対して無防備になるため、必要な場合のみ行いましょう。
3. アプリケーションの通信を許可する(例:Chromeを許可)
特定のアプリの通信を許可するには、次のコマンドを使用します。
netsh advfirewall firewall add rule name="Google Chrome" dir=in action=allow program="C:\Program Files\Google\Chrome\Application\chrome.exe" enable=yes
🔹 パラメータの説明
name="Google Chrome"
→ ルールの名前(任意)dir=in
→ 受信(in) のルール設定(送信ならdir=out
)action=allow
→ 通信を許可(拒否する場合はblock
)program="C:\Program Files\Google\Chrome\Application\chrome.exe"
→ 許可するアプリのパスenable=yes
→ ルールを有効にする
👆 dir=out
を指定すると、送信の通信も管理できます!
4. ポートの開放(例:80番ポートを許可)
特定のポートの通信を許可するには、次のコマンドを実行します。
TCP 80番ポート(HTTP)を開放する
netsh advfirewall firewall add rule name="Allow HTTP" dir=in action=allow protocol=TCP localport=80
UDP 53番ポート(DNS)を開放する
netsh advfirewall firewall add rule name="Allow DNS" dir=in action=allow protocol=UDP localport=53
🔹 パラメータの説明
protocol=TCP
→ TCP通信を許可(UDPならprotocol=UDP
)localport=80
→ 許可するポート番号
📌 「ポートを閉じたい場合」 は、delete rule
を使ってルールを削除できます。
netsh advfirewall firewall delete rule name="Allow HTTP"
5. すべてのファイアウォールルールをリセットする
設定を初期状態に戻したい場合は、次のコマンドを実行します。
netsh advfirewall reset
⚠ この操作をすると、すべてのカスタムルールが削除されるため注意!
6. 既存のファイアウォールルールを確認する
現在設定されているルールを確認するには、次のコマンドを実行します。
netsh advfirewall firewall show rule name=all
🔹 特定のルールを確認する場合(例:Chromeのルール)
netsh advfirewall firewall show rule name="Google Chrome"
7. ファイアウォールのログを有効化する(トラブルシューティング)
ファイアウォールのログを有効にすると、ブロックされた通信を記録できます。
netsh advfirewall set allprofiles logging filename %systemroot%\System32\LogFiles\firewall.log
ログファイルの確認方法:
notepad %systemroot%\System32\LogFiles\firewall.log
まとめ|netshでファイアウォールを自由に管理!
Windows 11の netsh advfirewall
コマンドを使えば、ファイアウォールの細かい設定を簡単に変更できます!
📌 netsh でできることまとめ
✅ ファイアウォールの状態確認 → netsh advfirewall show allprofiles
✅ ファイアウォールの有効化・無効化 → netsh advfirewall set allprofiles state on/off
✅ 特定のアプリの通信を許可 → netsh advfirewall firewall add rule ... program="パス"
✅ 特定のポートを開放 → netsh advfirewall firewall add rule ... localport=番号
✅ ファイアウォール設定のリセット → netsh advfirewall reset
✅ ルールの一覧を表示 → netsh advfirewall firewall show rule name=all
✅ ログを有効化して通信を記録 → netsh advfirewall set allprofiles logging ...
特に、アプリやポートの制御、トラブルシューティングに役立つので、ぜひ活用してみてください! 🚀
免責規定
この記事で提供される情報は、一般的なガイダンスを目的としており、すべての環境やシステムでの動作を保証するものではありません。
OSのバージョンやリリースによっては、記載されている事が実行できない、または異なる結果をもたらす可能性があります。
また、会社所有のパソコン、スマホ、タブレットなどでは、ポリシーや権限によって実行できない場合があります。
この記事の情報を使用することによって生じる問題や結果について、筆者およびサイト管理者は責任を負いません。
すべての操作は自己責任で行ってください。
最後までお読みいただきありがとうございました。
またお会いしましょう!
コメント