To support installation, the setup.exe utility uses 2 directories on the target system. Combined, the DLL with the tools form a very *nix-alike environment on Windows.įor installation, Cygwin provides the setup.exe utility that tracks the versions of all installed components on the target system and provides the mechanism for installing or updating everything from the mirror sites of Cygwin. On top of that a whole bunch of the most common *nix tools are supplied. It provides a dynamic link library that emulates most of a *nix environment on Windows. If the current user is a member of the local administrators group, all session commands are executed elevated even if UAC is enabled.Cygwin is probably the oddest technology in this solution stack. The PowerShell console has been started in your SSH session, and familiar features work in it: tab autocompletion, PSReadLine color highlighting, command history, etc. Restart your SSH connection and make sure that PowerShell is now used as a default SSH shell (this is shown by PS C:\Users\admin>). New-ItemProperty -Path "HKLM:\SOFTWARE\OpenSSH" -Name DefaultShell -Value "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -PropertyType String –Force In order to change the default cmd.exe shell to PowerShell for OpenSSH, make changes to the registry using the following PowerShell command: I prefer working in the PowerShell console.
You can run different commands, scripts or apps in the command prompt.
If the SSH connection is successful, the cmd.exe shell will start with a prompt string.
Now you can try to connect to your Windows 10 through the SSH client (I am using PuTTY, but you can use a built-in Windows SSH client instead).Īt the first connection, a standard request to add the host to the list of known SSH hosts will appear.Ĭlick Yes, and logon to your Windows 10 under Windows user. You can change your OpenSSH server settings in the config file: %programdata%\ssh\ sshd_config.Īfter making any changes to sshd_config file, you need to restart the sshd service: OpenSSH Server Configuration File (sshd_config)