このページの本文へ

Windows Info 第414回

Windows Subsytem for Linux(WSL)が昨年9月のアップデートでファイアウォール対応になった

2024年01月14日 10時00分更新

文● 塩田紳二 編集● ASCII

  • この記事をはてなブックマークに追加
  • 本文印刷

 Windows Subsytem for Linuxの2023年9月アップデートでは、WSLのファイアウォール対応がなされた。これは、Windows 11 Ver.22H2以上で利用可能で、デフォルトで有効になっている。このため、WSLのネットワークに関しては、ファイアウォールを気にする必要がある。

 このファイアウォールには、Win32側のファイアウォール(セキュリティが強化されたWindows Defenderファイアウォール、以下Defenderファイアウォール)も関係するが、WSL専用に「Hyper-Vファイアウォール」と呼ばれる、「ややこしい名前」の専用ファイアウォールが新設されている。このため、WSLのファイアウォールはこの両方を扱わねばならない。

Hyper-Vファイアウォールとは?

 Windows 11 Ver.22H2に装備された「Hyper-Vファイアウォール」は、Hyper-Vを利用したコンテナ用のファイアウォールで、Hyper-Vの仮想マシンとは無関係である。現状で対象となるコンテナーはWSLのみ。WSLに似たものにWindows Subsystem for Androidがあるのだが、こちらは今のところ対象外のようである。

 WSLに対するファイアウォールの設定は、ユーザーフォルダにある.wslconfigファイルで行う。「[wsl2]」セクションの「firewall=」にtrueまたはfalseを設定する。何も設定しないと、デフォルト値であるtrueが設定されているとみなされ、ファイアウォールが有効になる。

 Hyper-Vファイアウォールは、Defenderファイアウォールの簡易版である。DefenderファイアウォールやPowerShellからの操作に関しては、本連載の以前の記事を参照してほしい(「WindowsのファイアウォールをPowerShellから制御する」)。

 なお、Hyper-Vファイアウォールに関しては現時点ではGUIがなく、すべてPowerShellのコマンドで設定しなければならない(https://learn.microsoft.com/ja-jp/windows/security/operating-system-security/network-security/windows-firewall/hyper-v-firewall)。企業向けには有償の「Microsoft Intune」を使う方法もあるようだが……。

 ルールの基本的な考えは同じだが、Defenderファイアウォールのようにアドレス指定やポート指定にフィルターを使わず、直接Local/Remoteのアドレス、ポートを指定する。このため、PowerShellからのルール記述は、Defenderファイアウォールよりも少し簡単になっている。

 以下の表は、Hyper-Vファイアウォールに関連するコマンドの一覧である。

Hyper-Vファイアウォール

 PowerShell内であれば、

Get-Command -Noun NetFirewallhyperv* | sort Noun,verb

で、Hyper-Vファイアウォール関連のコマンドを列挙することができる。

 コマンドは対象で分類できる。大きく「ルール」「VM設定」「プロファイル」「クリエーター」「ポート」に分けられる。このうち「ルール」は、Hyper-Vファイアウォールのルール、「VM設定」は、Hyper-VファイアウォールにおけるVMごとの基本設定のためのものだ。どちらもGet-系コマンドで内容を取得できる。

 この中にあるコマンドのいくつかは、パラメーターとして対象となるVM CreatorのGUIDを要求する。それを表示するのが「Get-NetFirewallHyperVVMCreator」コマンドで、実行するとWSLに対応するクリエーターのGUIDを出力する。

 「ポート」は、IPネットワークのポートとは無関係で、VM側のソフトウェアの機能名と思われる。いまのところ特に利用する必要はなさそうだ。

 「プロファイル」は、Win32側のプロファイルと同じく、ドメイン、プライベート、パブリックに対応する。「プロファイル」も現時点では、ルールの対象として指定する程度で、作成などをする必要はなさそうだ。

 プロファイルオブジェクトには、現在のネットワークプロファイルに応じて適用されるデフォルト値がある。実際には、VM設定にも同様のデフォルト値がある。これらのデフォルト値には、未定状態(他の設定などで値が決まることを示す)である「NotConfigured」があり、これが設定されているプロパティは、他のコマンドで扱うオブジェクトで値が決まる。

 たとえば、Hyper-Vファイアウォールルールの受信ルールの既定値を設定する「DefaultInboundAction」は、Hyper-VプロファイルにもVM設定にもある。どちらかが確定した値(NotConfigured以外のAllowまたはBlock)に設定されると、Hyper-Vファイアウォールの受信ルールは、対応するルールがなければ、設定値で許可(Allow)または拒否(Block)が決まる。

 Hyper-Vファイアウォールを制御する場合、VM設定でデフォルト値を決め、あとはルールを追加して使う。基本的にプロファイルを追加/削除する必要はなく、VM基本設定も最初から存在するので変更(Set-コマンド)のみ使う。

 コマンドは多数あるが、表中の太字のコマンドで、ルールの作成、編集や管理、VM基本設定の変更のみを行えばよい。

 ルールの作成は、New-NetFirewallHyperVRule(https://learn.microsoft.com/en-us/powershell/module/netsecurity/new-netfirewallhypervrule?view=windowsserver2022-ps)で、変更はSet-NetFirewallHyperVRule(https://learn.microsoft.com/en-us/powershell/module/netsecurity/set-netfirewallhypervrule?view=windowsserver2022-ps)でする。

 以下の表は、ルールを作成するNew-NetFirewallHyperVRuleの主な引数を示している。基本的には、「方向」「動作」やローカル/リモートのアドレスとポートを指定してルールを作る。作成したルールは、Enabledプロパティで有効、無効を指定できる。作成後は、Disable-NetFirewallHyperVRuleやEnable-NetFirewallHyperVRuleで、指定した条件を満たすルールを有効化/無効化ができる。

Hyper-Vファイアウォール

 PowerShellによるファイアウォールの設定に慣れているなら、Hyper-Vファイアウォールの設定は単純化されているので難しくはない。ただし、GUIがないのでそうでない人には難しいだろう。ただ、WSLのサービスなどをLANやインターネット側などに公開しなければ、Hyper-Vファイアウォールは、以前と同じ状態で無効化しておいても構わないと思われる。

 Disable-NetFirewallHyperVRuleを引数なしで実行すると、すべてのルールが無効になる。この状態でSet-NetFirewallHyperVVMSettingを使い、Inbound、Outboundの許可・ブロックを設定できる。これにより、すべて許可、すべてブロックを指定することもできる。

 いつの間にか導入されていたHyper-Vファイアウォールは、簡単に言えば、WSL専用のファイアウォール設定だ。ファイアウォールは、Linux側でも設定が可能だが、仮想マシンの外側になるWin32側でするほうが効率的だろう。

カテゴリートップへ

この連載の記事
1
【整備済み品】中古 ノートパソコン NEC VersaPro VKT16/15.6型・第8世代Core i5-8250U(最大動作3.4GHz)/快適メモリ8GB/ 高速SSD 256GB/Win11 Pro/MS Office 2019付属/テンキー付, Webカメラ, USB3.0, HDMI, VGA, 有線LAN, WIFI内蔵, Bluetooth/ACアダプター付属/180日間保証
【整備済み品】中古 ノートパソコン NEC VersaPro VKT16/15.6型・第8世代Core i5-8250U(最大動作3.4GHz)/快適メモリ8GB/ 高速SSD 256GB/Win11 Pro/MS Office 2019付属/テンキー付, Webカメラ, USB3.0, HDMI, VGA, 有線LAN, WIFI内蔵, Bluetooth/ACアダプター付属/180日間保証
¥26,880
2
【整備済み品】富士通 ノートパソコン LIFEBOOK U9310 13.3型FHD(1920x1080) 超軽薄 ノートPC/第10世代 Core i5-10310U@1.7GHz/ 8GB メモリ/高速ストレージ SSD/Webカメラ/WIFI/Type-C/HDMI/win11&MS Office 2019 搭載 ビジネス 在宅勤務向け パソコン (メモリ:8GB/SSD:256GB)
【整備済み品】富士通 ノートパソコン LIFEBOOK U9310 13.3型FHD(1920x1080) 超軽薄 ノートPC/第10世代 Core i5-10310U@1.7GHz/ 8GB メモリ/高速ストレージ SSD/Webカメラ/WIFI/Type-C/HDMI/win11&MS Office 2019 搭載 ビジネス 在宅勤務向け パソコン (メモリ:8GB/SSD:256GB)
¥36,979
3
Lenovo Chromebook クロームブック IdeaPad Flex 3i Gen8 12.2インチ インテル® プロセッサー N100搭載 メモリ4GB eMMC 64GB バッテリー駆動12.0時間 重量1.25kg アビスブルー 82XH001KJP
Lenovo Chromebook クロームブック IdeaPad Flex 3i Gen8 12.2インチ インテル® プロセッサー N100搭載 メモリ4GB eMMC 64GB バッテリー駆動12.0時間 重量1.25kg アビスブルー 82XH001KJP
¥39,800
4
【整備済み品】富士 通 2in1ノートパソコン V727【本体のみ】/第7世代Core M3/12.3型タッチパネル1920×1080/メモリ 8GB/SSD 128GB/Win 11/MS Office 2019/USB 3.1/Type-C/無線WIFI/オーディオ内蔵/WEBカメラ/初期設定済
【整備済み品】富士 通 2in1ノートパソコン V727【本体のみ】/第7世代Core M3/12.3型タッチパネル1920×1080/メモリ 8GB/SSD 128GB/Win 11/MS Office 2019/USB 3.1/Type-C/無線WIFI/オーディオ内蔵/WEBカメラ/初期設定済
¥9,600
5
HP ノートパソコン 15-fd 15.6インチ インテル Core Ultra 5 125H メモリ16GB SSD512GB Windows 11 Microsoft Office 2024搭載 WPS Office搭載 カメラシャッター 指紋認証 薄型 Copilotキー搭載 ナチュラルシルバー (BJ0M7PA-AAAF)
HP ノートパソコン 15-fd 15.6インチ インテル Core Ultra 5 125H メモリ16GB SSD512GB Windows 11 Microsoft Office 2024搭載 WPS Office搭載 カメラシャッター 指紋認証 薄型 Copilotキー搭載 ナチュラルシルバー (BJ0M7PA-AAAF)
¥134,323

Amazonのアソシエイトとして、ASCII.jpは適格販売により収入を得ています。

ASCII倶楽部

注目ニュース

  • 角川アスキー総合研究所

プレミアム実機レビュー

ピックアップ
1
KIOXIA(キオクシア) 旧東芝メモリ microSD 128GB UHS-I Class10 (最大読出速度100MB/s) Nintendo Switch動作確認済 国内サポート正規品 メーカー保証5年 KLMEA128G
KIOXIA(キオクシア) 旧東芝メモリ microSD 128GB UHS-I Class10 (最大読出速度100MB/s) Nintendo Switch動作確認済 国内サポート正規品 メーカー保証5年 KLMEA128G
¥1,880
2
Anker PowerLine III Flow USB-C & USB-C ケーブル Anker絡まないケーブル 240W 結束バンド付き USB PD対応 シリコン素材採用 iPhone 17 / 16 / 15 / Galaxy iPad Pro MacBook Pro/Air 各種対応 (1.8m ミッドナイトブラック)
Anker PowerLine III Flow USB-C & USB-C ケーブル Anker絡まないケーブル 240W 結束バンド付き USB PD対応 シリコン素材採用 iPhone 17 / 16 / 15 / Galaxy iPad Pro MacBook Pro/Air 各種対応 (1.8m ミッドナイトブラック)
¥1,890
3
【Amazon.co.jp限定】バッファロー microSD 32GB 100MB/s UHS-1 U1 microSDHC【 Nintendo Switch 対応 】V10 A1 IPX7 Full HD RMSD-032U11HA/N
【Amazon.co.jp限定】バッファロー microSD 32GB 100MB/s UHS-1 U1 microSDHC【 Nintendo Switch 対応 】V10 A1 IPX7 Full HD RMSD-032U11HA/N
¥980
4
Anker USB Type C ケーブル PowerLine USB-C & USB-A 3.0 ケーブル iPhone 17 / 16 / 15 /Xperia/Galaxy/LG/iPad Pro/MacBook その他 Android 等 USB-C機器対応 テレワーク リモート 在宅勤務 0.9m ホワイト
Anker USB Type C ケーブル PowerLine USB-C & USB-A 3.0 ケーブル iPhone 17 / 16 / 15 /Xperia/Galaxy/LG/iPad Pro/MacBook その他 Android 等 USB-C機器対応 テレワーク リモート 在宅勤務 0.9m ホワイト
¥740
5
Anker iPhone充電ケーブル PowerLine II ライトニングケーブル MFi認証 超高耐久 iPhone 14 / 14 Pro Max / 14 Plus / 13 / 13 Pro / 12 / 11 / X/XS/XR / 8 Plus 各種対応 (0.9m ホワイト)
Anker iPhone充電ケーブル PowerLine II ライトニングケーブル MFi認証 超高耐久 iPhone 14 / 14 Pro Max / 14 Plus / 13 / 13 Pro / 12 / 11 / X/XS/XR / 8 Plus 各種対応 (0.9m ホワイト)
¥990
6
【Amazon.co.jp限定】 ロジクール 静音 ワイヤレス トラックボール マウス M575SPd Bluetooth Logibolt 無線 windows mac iPad OS Chrome トラックボールマウス ブラック M575 M575SP 国内正規品 ※Amazon.co.jp限定 壁紙ダウンロード付き
【Amazon.co.jp限定】 ロジクール 静音 ワイヤレス トラックボール マウス M575SPd Bluetooth Logibolt 無線 windows mac iPad OS Chrome トラックボールマウス ブラック M575 M575SP 国内正規品 ※Amazon.co.jp限定 壁紙ダウンロード付き
¥5,280
7
KIOXIA(キオクシア)【日本製】USBフラッシュメモリ 32GB USB2.0 国内サポート正規品 KLU202A032GL
KIOXIA(キオクシア)【日本製】USBフラッシュメモリ 32GB USB2.0 国内サポート正規品 KLU202A032GL
¥980
8
バッファロー SDカード 128GB 100MB/s UHS-1 スピードクラス1 VideoSpeedClass10 IPX7 Full HD データ復旧サービス対応 RSDC-128U11HA/N
バッファロー SDカード 128GB 100MB/s UHS-1 スピードクラス1 VideoSpeedClass10 IPX7 Full HD データ復旧サービス対応 RSDC-128U11HA/N
¥1,980
9
キヤノン Canon 純正 インクカートリッジ BCI-381(BK/C/M/Y)+380 5色マルチパック BCI-381+380/5MP 長さ:5.3cm 幅:13.9cm 高さ:10.75cm
キヤノン Canon 純正 インクカートリッジ BCI-381(BK/C/M/Y)+380 5色マルチパック BCI-381+380/5MP 長さ:5.3cm 幅:13.9cm 高さ:10.75cm
¥5,545
10
【Amazon.co.jp限定】 ロジクール ワイヤレスマウス 無線 マウス M185CG 小型 電池寿命最大12ケ月 M185 グレー 国内正規品
【Amazon.co.jp限定】 ロジクール ワイヤレスマウス 無線 マウス M185CG 小型 電池寿命最大12ケ月 M185 グレー 国内正規品
¥999

Amazonのアソシエイトとして、ASCII.jpは適格販売により収入を得ています。

デジタル用語辞典

ASCII.jpメール デジタルMac/iPodマガジン