#Windows openssh config for free#
Since I'm using bash.exe, I get WSL2 starting up for free but SSH with this solution is using Windows's SSH keys and Windows auth.
HEADS UP: You need the FULL AND CORRECT PATH in that command above. Note that bash.exe in this context starts up " wsl -d YOURDEFAULTDISTRO" so you'll want to know what your Default is, and if you don't like it, change it with wsl -set-default DISTRO. New-ItemProperty -Path "HKLM:\SOFTWARE\OpenSSH" -Name DefaultShell -Value "C:\WINDOWS\System32\bash.exe" -PropertyType String -Force You can use whatever makes you happy and WSL2's bash makes me happy. In this case, I'll use open source cross platform PowerShell Core. On my server (the Windows machine I'm SSHing into) I will set a registry key to set the default shell. Or automatic: Set-Service -Name sshd -StartupType 'Automatic' Configuring the Default Shell for OpenSSH in Windows 10 Now either start the SSHD service, or set it to start automatically: Start-Service sshd See how I have the Client and not the OpenSSH Server? Add it: Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0 How do you set up SSH'ing into WSL2 on your Windows 10 machineįirst, open an admin PowerShell prompt (Start menu, type PowerShell, hold ctrl+shift, and hit enter) type this: > Get-WindowsCapability -Online | ? Name -like 'OpenSSH*' Now you have no port forwarding, firewalls are only opening for one process, and your WSL2 instance starts up on entry. So why not change the default Windows shell for SSH to WSL2's Bash?īoom.
The issue is that you (Mac and Linux switchers) don't like the default shell - PowerShell. In fact, it's shipped OpenSSH as a "Feature on Demand" for years.
#Windows openssh config how to#
In that post - which you should not do - you're turning off the Windows Firewall for your port, forwarding to an internal subnet, and then letting WSL take over.īUT! Windows 10 already knows how to accept SSH connections. You're forwarding ports into a little VM'ed local subnet, you're dealing with WSL2 IP addresses changing, you'll have to keep your VM running, and you're generally trying to ice skate up hill. AND DO NOT DO IT BECAUSE IT'S TOO COMPLEX.ĭO NOT DO THIS. This is an interesting blog post on How to SSH into WSL2 on Windows 10 from an external machine.