Cách quản lý Quy tắc tường lửa của Windows bằng PowerShell
Tường lửa của Bộ bảo vệ Windows được cài đặt sẵn trên tất cả các máy tính Windows. Bạn có thể tạo quy tắc trong Tường lửa Windows cho các mục đích khác nhau, như chặn một ứng dụng cụ thể truy cập internet. Bài viết này hướng dẫn cách quản lý Các lỗi tường lửa của Windows bằng PowerShell.
Cách quản lý Quy tắc tường lửa của Windows bằng PowerShell
Bạn có thể dễ dàng định cấu hình Quy tắc tường lửa của Windows thông qua giao diện người dùng Tường lửa của bộ bảo vệ Windows và bảo mật nâng cao. Bạn có thể khởi chạy nó thông qua Control Panel. Giờ đây, bạn cũng có thể quản lý Quy tắc tường lửa của Windows bằng PowerShell. Trong bài viết này, chúng tôi sẽ chỉ cho bạn cách làm điều đó.
Để quản lý các quy tắc trong Tường lửa Windows thông qua PowerShell, bạn phải sử dụng lệnh ghép ngắn NetFirewallRule là một phần của mô-đun NetSecurity. Bạn có thể xem tất cả các lệnh ghép ngắn NetSecurity bằng cách thực hiện lệnh sau trong Windows PowerShell:
Get-Command -Module NetSecurity
Windows PowerShell có ba loại cấu hình sau:
- Hồ sơ tên miền
- Hồ sơ cá nhân
- Hồ sơ công khai
Theo mặc định, Tường lửa Windows vẫn BẬT cho cả ba cấu hình này. Bạn có thể xem điều này bằng cách mở giao diện người dùng Tường lửa của Bộ bảo vệ Windows với Bảo mật nâng cao thông qua Bảng điều khiển hoặc bằng cách sử dụng lệnh sau trong hộp lệnh Chạy:
wf.mscXin lưu ý rằng bạn phải khởi chạy Windows PowerShell với tư cách quản trị viên, nếu không, các lệnh sẽ không thực thi và bạn sẽ gặp lỗi trong PowerShell.
Nếu bạn muốn xem cài đặt của Cấu hình tường lửa Windows cụ thể, hãy sử dụng lệnh sau:
Get-NetFirewallProfile -Name <name of the profile>Trong lệnh trên, nhập chính xác tên của hồ sơ. Ví dụ: nếu bạn muốn xem cài đặt của cấu hình Miền trong Tường lửa của Bộ bảo vệ Windows, lệnh sẽ là:
Get-NetFirewallProfile -Name DomainBật hoặc tắt Tường lửa Windows bằng cách sử dụng PowerShell
Hãy xem cách bật hoặc tắt Tường lửa Windows bằng cách sử dụng PowerShell. Nếu bạn muốn tắt Tường lửa Windows cho tất cả các cấu hình, hãy sử dụng lệnh sau:
Set-NetFirewallProfile -All -Enabled FalseNếu bạn muốn bật hoặc tắt Tường lửa Windows cho một cấu hình cụ thể, bạn phải thay thế Tất cả trong lệnh trên bằng tên cấu hình đó.
Ví dụ: nếu bạn muốn tắt Tường lửa cửa sổ cho Hồ sơ công khai, lệnh sẽ là:
Set-NetFirewallProfile -Profile Public -Enabled FalseBạn có thể kiểm tra trạng thái của Cấu hình tường lửa Windows bằng cách sử dụng lệnh sau:
Get-NetFirewallProfile | Format-Table Name, EnabledNhư bạn có thể thấy trong ảnh chụp màn hình ở trên, PowerShell đang hiển thị trạng thái Cấu hình công khai tường lửa của Windows là Sai, điều đó có nghĩa là Tường lửa Windows bị vô hiệu hóa đối với cấu hình đó.
Bạn cũng có thể kiểm tra tương tự trong Tường lửa của Bộ bảo vệ Windows với Giao diện người dùng bảo mật nâng cao. Nếu bạn muốn bật cấu hình bị vô hiệu hóa, bạn phải sử dụng True thay cho False. Ví dụ: ở đây chúng tôi đã tắt Hồ sơ công khai trong Tường lửa Windows. Bây giờ, để kích hoạt lại nó, lệnh là:
Set-NetFirewallProfile -Profile Public -Enabled TrueNếu bạn đã tắt tất cả cấu hình Windows Defender và muốn bật lại tất cả chúng, hãy sử dụng lệnh sau:
Set-NetFirewallProfile -All -Enabled TrueTạo và quản lý Quy tắc tường lửa của Windows bằng PowerShell
Bây giờ, chúng ta hãy xem cách tạo và quản lý Quy tắc tường lửa của Windows bằng PowerShell. Nếu bạn sử dụng phần mềm chống vi-rút của bên thứ ba và Tường lửa của bạn được quản lý bởi phần mềm chống vi-rút đó thì các lệnh PowerShell sẽ không hoạt động. Bạn sẽ có thể tạo quy tắc thành công, nhưng những quy tắc này sẽ không hoạt động nếu Tường lửa của bạn đang được phần mềm chống vi-rút của bên thứ ba quản lý.
Nếu bạn muốn tạo Quy tắc tường lửa Windows mới, bạn phải sử dụng lệnh ghép ngắn sau:
New-NetFirewallRuleGiả sử bạn muốn chặn một chương trình truy cập Internet trên hồ sơ WiFi của mình; sử dụng lệnh sau:
New-NetFirewallRule -Program “program path” -Action Block -Profile <profile name> -DisplayName “write display name here” -Description “write description here” -Direction Outbound
Lệnh trên sẽ tạo quy tắc gửi đi cho chương trình được yêu cầu trong Tường lửa của Bộ bảo vệ Windows. Trong lệnh trên, thay thế đường dẫn chương trình bằng đường dẫn chính xác của chương trình và tên hồ sơ bằng hồ sơ Tường lửa Windows chính xác. Tên hiển thị là tên của quy tắc Tường lửa và Mô tả là tùy chọn.
Ví dụ: nếu bạn muốn chặn trình duyệt Chrome đối với hồ sơ Riêng tư, lệnh sẽ là:
New-NetFirewallRule -Program “C:\Program Files\Google\Chrome\Application\chrome.exe” -Action Block -Profile Public -DisplayName “Block Chrome browser” -Description “Chrome browser blocked” -Direction OutboundNếu bạn không muốn thêm mô tả vào quy tắc Tường lửa của mình, bạn có thể xóa phần -Mô tả “Trình duyệt Chrome bị chặn ” khỏi lệnh trên. Lệnh trên sẽ chỉ hoạt động đối với hồ sơ Công khai. Do đó, nếu cấu hình kết nối mạng của bạn không ở chế độ Công khai, lệnh này sẽ không hoạt động. Bạn có thể xem cấu hình kết nối WiFi của mình trong Cài đặt Windows. Các bước sau đây sẽ giúp bạn điều đó:
- Mở Cài đặt Windows 11/10.
- Đi tới Mạng và internet > Wi-Fi.
- Chọn kết nối internet của bạn.
- Mở rộng tab Thuộc tính kết nối mạng của bạn.
Bạn sẽ thấy loại hồ sơ Mạng ở đó.
Nếu bạn muốn chặn một chương trình, hãy nói Google Chrome cho tất cả cấu hình Mạng, nhập tất cả tên cấu hình được phân tách bằng dấu phẩy. Do đó, lệnh sẽ là:
New-NetFirewallRule -Program “C:\Program Files\Google\Chrome\Application\chrome.exe” -Action Block -Profile Domain, Private, Public -DisplayName “Block Chrome browser” -Description “Chrome browser blocked” -Direction OutboundXin lưu ý rằng bạn phải nhập tên hồ sơ theo thứ tự chính xác như được viết trong lệnh trên, tức là Miền, Riêng tư, Công khai. Nếu không, bạn sẽ gặp lỗi.
Tương tự, bạn có thể tạo quy tắc trong Tường lửa của Bộ bảo vệ Windows bằng cách sử dụng PowerShell để chặn một trang web cụ thể. Nhưng để làm được điều này, bạn nên biết địa chỉ IP của trang web cụ thể đó. Bạn có thể lấy địa chỉ IP của một trang web bằng cách sử dụng lệnh sau:
nslookup <website name>Nếu trang web bạn muốn chặn hiển thị nhiều địa chỉ IP, bạn phải ghi tất cả các địa chỉ IP này. Phân tách tất cả các địa chỉ IP bằng dấu phẩy.
Lệnh được sử dụng để tạo quy tắc chặn trang web trong Tường lửa của Bộ bảo vệ Windows là:
New-NetFirewallRule -DisplayName "Block Website" -Description "Website Blocked" -Direction Outbound -LocalPort Any -Protocol Any -Action Block -RemoteAddress IP1, IP2Ví dụ trên cho thấy cách phân tách các địa chỉ IP của một trang web cụ thể bằng dấu phẩy.
Đọc: Cách cho phép VPN thông qua Tường lửa trong Windows.
Bật, tắt và xóa Quy tắc tường lửa bằng Windows PowerShell
Nếu bạn muốn bật, tắt hoặc xóa Quy tắc tường lửa, bạn phải sử dụng các lệnh ghép ngắn sau trong PowerShell:
Enable-NetFirewallRuleDisable-NetFirewallRuleRemove-NetFirewallRuleTrong mỗi lệnh ghép ngắn ở trên, bạn phải nhập đúng tên của Quy tắc tường lửa. Giả sử bạn đã tạo Quy tắc tường lửa với tên Chặn Chrome và bây giờ bạn muốn xóa nó, thì lệnh sẽ là:
Remove-NetFirewallRule -DisplayName 'Block Chrome'Làm cách nào để xem các quy tắc Tường lửa của Windows trong PowerShell?
Nếu bạn muốn xem các quy tắc chặn Gửi đi do bạn tạo trong Tường lửa Windows, bạn phải sử dụng lệnh sau:
Get-NetFirewallRule -Action Block -Enabled True -Direction OutboundLệnh trên sẽ chỉ liệt kê các Quy tắc tường lửa đang hoạt động. Nếu bạn muốn xem Quy tắc tường lửa bị vô hiệu hóa, hãy thay thế True bằng False trong lệnh trên.
Đó là nó. Tôi hi vọng cái này giúp được. Cách loại bỏ các quy tắc Tường lửa Windows trùng lặp
Làm cách nào để đặt quy tắc Tường lửa trong PowerSell?
Bạn có thể đặt Quy tắc tường lửa trong PowerShell bằng cách sử dụng các lệnh ghép ngắn NetFirewallRule khác nhau. Ví dụ: nếu bạn muốn tạo Quy tắc tường lửa mới, bạn phải sử dụng lệnh ghép ngắn New-NetFirewallRule.
Đọc tiếp theo: Cách Khôi phục hoặc Đặt lại cài đặt Tường lửa của Windows về mặc định.










