Serious Discussion Minimal Firewall

@deminimis I've read your Wiki, but don't see anything about reverting to Windows Firewall only. Do users simply delete rules in MFW and exit program? 🤔
I'll make a note to re-add a nuke setting specifically only for MFW rules.

To delete all rules, this powershell line should work:
Code:
Remove-NetFirewallRule -Group "Minimal Firewall*", "Minimal Firewall - MFW", "Minimal Firewall (Wildcard) - MFW"

Then just make sure Minimal Firewall is unlocked and closed and it won't make any new rules (the only rules it auto-creates are wildcard rules).

If you want to revert every rule to default, just go to the settings tab and click open windows firewall (or just type wf.msc in the terminal). Then on the right side there is a setting that says "Restore Default Policy).

1758311041629.png
 
Last edited:
Please remember to download the latest Version 2.2.1.

There were some issues with the logic reading services and wildcard rules, so if you use earlier versions of v2, you might notice apps giving you popups after you created a rule.

You should delete the current MFW rules, and this should now be fixed for good. I messed up some of the logic when converting from 4.8 to net 8.
 
Version 2.2.3 released Release v2.2.3 · deminimis/minimalfirewall

Bugs​

  • Fixed bug that gave popup notifications for apps you already blocked (typo where I labeled something outgoing in one place and outbound in another).
  • It should now start with Windows, if you have that option checked (might need to recheck it, as it creates the entry when you check the box).
  • Fixed "copy details" in rule tab and live connections tab.

UI​

  • Cleaned up wildcard rule creation in popups.
  • Simplified Rule tab columns.

Features​

  • New new buttons in the Settings tab to delete all Minimal Firewall rules and to revert Windows Firewall to its default state (like when you first installed Windows).

Backend​

  • Simplified how rules are created.

Current users​

Because how rules have been created has been simplified, it is recommended to go to the Settings tab and revert all rules, and create again. You don't have to, but this will ensure the highest compatibility.
 
To delete all rules, this powershell line should work:
Code:
Remove-NetFirewallRule -Group "Minimal Firewall*", "Minimal Firewall - MFW", "Minimal Firewall (Wildcard) - MFW"


If you want to revert every rule to default, just go to the settings tab and click open windows firewall (or just type wf.msc in the terminal). Then on the right side there is a setting that says "Restore Default Policy).

There is now an option in the settings to delete all MFW rules, and another option to revert Windows Firewall to it's default state. I also introduced a memory problem in v2.2.3 when I was fixing the notification logic, so that memory wasn't being released when it rescanned the rules. V2.2.4 fixes that and also gets rid of most cpu usage except for wildcard rules, as it stores normal rules in cache.
 
  • +Reputation
Reactions: oldschool
v.2.2.5

Bugs​

  • The firewall rule creation logic has been overhauled to match the simpler, more effective method used in previous stable versions, for this newer Net 8 version. There was a bug before where if you tried to connect to some VPN, it would log massive numbers of connections trying to connect, and not create a proper rule. This should be fixed now, at least for Wireguard, OpenVPN, and ProtonVPN. More testing is needed, especially with Mullvad, as I believe it creates rules differently than many VPN, lower on the network stack. '
  • Resolved an ArgumentOutOfRangeException that could occur when moving the mouse over lists while they were being updated in the background.

Backend​

  • Pop-up alerts for new blocked connections are now significantly more responsive and should appear instantly, even under heavy network activity.

VPN​

If you previously created rules for VPN that were not working properly, please delete those rules and recreate with this version. Note that some VPN like Proton will use OpenVPN and Wireguard services as well, so they might have 3-5 rules for the app.
 
Minimal Firewall v2.3

v2.3​

I've been working on refactoring the code for a while for the possibility of adding this to the Windows Store. I've made the code layout much more intuitive so that others can more easily contribute in the future. Please create any issues if you notice something not working as it should after the refactor.

Backend​

  • Refactored code to make mainform.cs no longer a superclass.
  • Group tab loads faster.
  • Only one instance of Minimal Firewall can run at a time now (as long as it's not pre-v2.3).
  • Significant memory updates, including better garbage collecting and faster startups, loading the other tabs only on demand.

UI​

  • Updated buttons.
  • Determinate progress bar.
  • When popup notifications are turned on, it will also appear in the dashboard.

Bugs​

  • Fixed groups freezing
  • Should now start with Windows correctly.
  • Fixed dark theme flash when first starting program.
 

Bugs​

  • Fixed service rule creation.
  • Updated persistent settings.

UI​

  • Updated advanced rule creation form to be more user-friendly.

Note​

If you used v2.4 or v2.4.1, please delete the allow or block svchose.exe rule, as that is too aggressive. This new version only creates a service rule and not an additional rule for svchost.
 
Another update: v2.4.4

Bugs​

  • Made sure all settings are stored in the same folder as the .exe.

Backend​

  • Updated UWP rule retrieval. It will only retrieve UWP apps that have interacted with Windows Firewall.
  • Now auto-updates the auto-startup if you move the .exe.
 
Minimal Firewall update: v2.5

Features​

  • New Wildcard rule tab.
  • Can now set more advanced parameters in wildcard rules.
  • Can now delete rules from settings menu when the .exe no longer exists.
  • Can now create rules for all .exe and .dll in a folder and its subfolders.
  • Orphaned rule cleanup in settings removes rules when the .exe no longer exists.
  • Import/Export function.

Bugs​

  • Fixed inconsistent theming on startup.

Backend​

  • The Advanced Rule form now validates formats for IP addresses, ports (including lists and ranges), and ICMP codes, providing immediate feedback on invalid entries.
  • The backend service now double-checks all inputs before creating a firewall rule.
  • Updated live connections tab memory.
  • Reusable grid sorting across tabs.

UI​

  • If rule creation fails due to an invalid parameter, the application will now display a more descriptive error message instead of failing silently or showing a generic COM error.
 
Minimal Firewall update: v2.5.1

Bugs​

  • Fixed audit tab sorting.

Features​

  • Option to store settings in %appdata%.
  • Added to live connection context menu: "File Properties," and "Create Rule for this Process."

UI​

  • Updated icons.