Page:
Project Status
Pages
About Win32 OpenSSH and Design Details
Area Owners
Build OpenSSL
Building OpenSSH for Windows (using LibreSSL crypto)
Building Win32 OpenSSH on Linux
Certificate Authentication
DefaultShell
Deploy Win32 OpenSSH
Difference between openssh 5.9p1 and nomachine implementation
Dos2Unix Text file format converters
Eclipse CDT and GDB setup to debug SSH tools
FIDO U2F usage
Home
How to retrieve links to latest packages
Install Win32 OpenSSH Using MSI
Install Win32 OpenSSH
Intro Links for Penetration Testing
Logging Facilities
Migrate sshd_config from older versions
OpenSSH 32 bit Build and Installation Instructions
OpenSSH 64 bit Build and Installation Instructions
OpenSSH build sequence
OpenSSH utility scripts to fix file permissions
Project Scope
Project Status
Run OpenSSH Pester Tests
Run commands for various shells
Running Tests
SSH remote sessions on Windows
Security protection of various files in Win32 OpenSSH
Setting up a Git server on Windows using Git for Windows and Win32_OpenSSH
Setup public key based authentication for windows
TTY PTY support in Windows OpenSSH
Troubleshooting Steps
Various Considerations
Win32 OpenSSH RoadMap
[Deprecated] Building using VS 2015
[Deprecated] Win32 OpenSSH Automated Install and Upgrade using Chocolatey
sftp.exe examples
ssh agent
ssh.exe examples
ssh
ssh_config
sshd
sshd_config
25
Project Status
bagajjal edited this page 2018-01-12 11:52:23 -08:00
Table of Contents
As of Nov 1st 2016, active development on Win32 fork is being done in https://github.com/PowerShell/openssh-portable.
This repo (https://github.com/PowerShell/Win32-OpenSSH) is being maintained to keep track of releases and issues. Win32-OpenSSH will be deprecated once changes in PowerShell/openssh-portable are integrated back into openssh/openssh-portable.
Win32-OpenSSH is shipped as FOD (Feature On Demand) in Windows 10 fall creator update. For more information, please visit our official blog.
Refer to project scope here
Work in progress
- Following up on minor issues identified via penetration testing.
- Conversation with upstream community - seeking their feedback and evaluating integration plans. PR posted here. Contentious areas of logic identified and refactoring work to converge Unix and Windows code is in progress.
High level tasks completed
- POSIX compliant IO wrapper on Win32 Overlapped IO: this enables Unix based OpenSSH code to work for and on Windows.
- Visual Studio 2015 solution to build OpenSSH for Windows.
- Secure architecture for Windows: OpenSSH server side architecture is altered for Windows adhering to its security principles. This is done with minimal impact to overall source layout.
- Secure ssh-agent: A different version of agent is authored for Windows to fit Windows security model and enable a Single Sign-On experience.
- VT100/ANSI TTY and PTY: Rewritten client side ANSI parser to accurately interpret and render VT100 stream on Windows console. Server side VT100 PTY that will support rich Windows console applications. Due to missing dependencies on Nano, this feature is only supported on full SKUs.
- Unicode support in Windows: Windows APIs are typically UTF-16 based while on Unix, its UTF-8. All ssh binaries on Windows can now take in Unicode arguments, support Unicode (UTF-8) based configuration, key and log files, accurately encode file names going over SCP and SFTP.
- POSIX File API support in Windows: SFTP and SCP code is cleaned up to effectively use original OpenSSH code on Windows.
- Syncing Win32 fork with the latest changes from OpenSSH main repo. Windows fork is being maintained up-to-date with upstream repo.
- Code cleanup and refactoring - Common OpenSSH code is cleaned up and ready to take upstream. Changes in this branch are ready for community feedback.
- Automated build and validation system - automated Windows builds, unittest and E2E test runs is now enabled.
- Evaluated Microsoft CNG support in OpenSSH. Since this requires significant crypto interface refactoring, its decided to switch to LibreSSL (in place of OpenSSL).
- Improved overall test coverage on Windows. Pester based E2E coverage is still pretty minimal compared to bash scripts based coverage on Unix. Plan is to progressively add more coverage going forward. Any contributions here are very welcome.
- Initial Penetration Testing OpenSSH done.
Manuals
Installation
- MSI Install Instructions
- Script Install Instructions
- Alternative installation using the universal installer
- Retrieving download links for the latest packages
Usage
- SSH Usage Examples
- SFTP Usage Examples
- Using Certificate Authentication
- Fix SSH file permissions
- Info on SSH remote sessions on Windows
- TTY PTY support
- Troubleshooting