-
Notifications
You must be signed in to change notification settings - Fork 822
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Access running WSL services from LAN devices without having to create Firewall rules with networkingMode=mirrored
#10769
Comments
Hi I'm an AI powered bot that finds similar issues based off the issue title. Please view the issues below to see if they solve your problem, and if the issue describes your problem please consider closing this one and thumbs upping the other issue to help us prioritize it. Thank you! Open similar issues:
Closed similar issues:
You can give me feedback by thumbs upping or thumbs downing this comment. |
networkingMode=mirrored
#10714 The issue is closely related, but I'm sure the issuer was confused about whether creating a firewall rule is necessary or not. So I created this issue as a feature request rather than a bug. |
Turns out that this article describes how you can disable WSL VM's Hyper-V Firewall in two steps: Warning Disabling Firewall can have unintended consequences. Any malicious app running within wsl gets unrestricted access to internet.
$ Get-NetFirewallHyperVVMCreator
VMCreatorId : {40E0AC32-46A5-438A-A0B2-2B479E8F2E90}
FriendlyName : WSL
$ Set-NetFirewallHyperVVMSetting -Name '{40E0AC32-46A5-438A-A0B2-2B479E8F2E90}' -Enabled False At this point, you should be able to access wsl services from other devices on LAN (or from the internet who knows 🙃). |
A safer alternative is to Only allow connection to wsl in a Trusted (Private) network: New-NetFirewallHyperVRule `
-DisplayName 'Allow All Inbound Traffic to WSL in Private Network' `
-Name 'WSL Rule' `
-Profiles Private `
-Direction Inbound `
-Action Allow `
-VMCreatorId '{40E0AC32-46A5-438A-A0B2-2B479E8F2E90}' `
-Enabled True This would block connection to wsl in a public (or untrusted) network, which is good. In case you want to delete the rule, run: Remove-NetFirewallHyperVRule -Name 'WSL Rule' |
I experienced the same issue (saw the demo video, tried a bunch of things but couldn't get it to work). This firewall rule accomplished just what I was looking for. Thank you @tusharsnx ! I agree that this needs to be incorporated by default or at least mentioned in the documentation. |
Is your feature request related to a problem? Please describe.
This video demo of the new
networkingMode = mirrored
(at around 8:19 minutes) seems to suggest that services running inside WSL can be accessed from other devices on the same LAN without needing any extra setup. But in my experience LAN devices cannot access WSL services until you explicitly allow that port in the firewall rule.I tried toggling the new
experimental.firewall
/wsl2.firewall
, but it doesn't seem to make any difference.Describe the solution you'd like
I think one of these solution should work:
experimental.firewall = false
to do this)Additional Details:
The text was updated successfully, but these errors were encountered: