Difference between revisions of "WSL - Windows Subsystem for Linux"

From HoerupWiki
Jump to: navigation, search
 
(16 intermediate revisions by the same user not shown)
Line 1: Line 1:
 +
=kernel=
 +
remember to check the release notes occasionally
 +
https://docs.microsoft.com/en-us/windows/wsl/kernel-release-notes
  
 +
https://www.catalog.update.microsoft.com/Search.aspx?q=wsl
  
 +
= systemd =
 
Brug af systemd under WSL
 
Brug af systemd under WSL
 
* https://github.com/shayne/wsl2-hacks
 
* https://github.com/shayne/wsl2-hacks
 +
OR
 +
* https://github.com/arkane-systems/genie
  
 +
= iptables =
 +
wsl2 kernel will have iptables support - but not nftables so eg debian needs to be configure to use the iptables-legacy variant
 +
https://wiki.debian.org/nftables
  
# network #
+
this will affect both sshuttle and podman/docker
 +
 
 +
= network =
 
you can have services listen on *:<port> inside WSL and access the services from windows
 
you can have services listen on *:<port> inside WSL and access the services from windows
  
  
sshuttle works under WSL (rembember that sshuttle only handles TCP - so forget UDP+ICMP !) but the traffic routing is done in iptables - so windows applications can't use it
+
sshuttle works under WSL (rembember that sshuttle only handles TCP - so forget UDP+ICMP !) but the traffic redirection is done in iptables within wsl - so windows applications can't use it
 
BUT
 
BUT
 +
 
you can eg install squid http proxy inside WSL and configure your browser to use localhost:3128 for proxy, and thereby force your req to go into wsl and from there be able to utilize the sshuttle tunnel
 
you can eg install squid http proxy inside WSL and configure your browser to use localhost:3128 for proxy, and thereby force your req to go into wsl and from there be able to utilize the sshuttle tunnel
 +
 +
if you combine this with a local https://en.wikipedia.org/wiki/Proxy_auto-config file and use file:///c:/path-to-your-pac in your browser  you can specify which hosts to route to squid
 +
 +
 +
 +
= docker =
 +
Docker.io upstream package works - but you need to get [[#iptables|iptables]] and [[#systemd|systemd]] in order
 +
 +
Docker desktop integrates with WSL, but has recently changed license - so it might be time to look into podman or upstream instead ?

Latest revision as of 15:02, 11 November 2021

kernel

remember to check the release notes occasionally https://docs.microsoft.com/en-us/windows/wsl/kernel-release-notes

https://www.catalog.update.microsoft.com/Search.aspx?q=wsl

systemd

Brug af systemd under WSL

OR

iptables

wsl2 kernel will have iptables support - but not nftables so eg debian needs to be configure to use the iptables-legacy variant https://wiki.debian.org/nftables

this will affect both sshuttle and podman/docker

network

you can have services listen on *:<port> inside WSL and access the services from windows


sshuttle works under WSL (rembember that sshuttle only handles TCP - so forget UDP+ICMP !) but the traffic redirection is done in iptables within wsl - so windows applications can't use it BUT

you can eg install squid http proxy inside WSL and configure your browser to use localhost:3128 for proxy, and thereby force your req to go into wsl and from there be able to utilize the sshuttle tunnel

if you combine this with a local https://en.wikipedia.org/wiki/Proxy_auto-config file and use file:///c:/path-to-your-pac in your browser you can specify which hosts to route to squid


docker

Docker.io upstream package works - but you need to get iptables and systemd in order

Docker desktop integrates with WSL, but has recently changed license - so it might be time to look into podman or upstream instead ?