openssh/openssh-portable
Portable OpenSSH, the non-OpenBSD port of the SSH suite for secure remote login, command execution and file transfer on Unix-like systems.
- Stars
- 4,095
- Forks
- 2,212
- Open issues
- 156
- Last commit
- 24 hours ago
What is it?
OpenSSH is a complete implementation of the SSH protocol version 2. It provides the client ssh and server sshd for secure remote login and command execution, scp and sftp for file transfer, and utilities such as ssh-keygen for key generation and ssh-agent for runtime key storage.
This repository is the portable version of OpenBSD's OpenSSH, maintained for most Unix-like systems including Linux, macOS and Cygwin. It adds OpenBSD APIs that are missing on other platforms, extends sshd sandboxing to more operating systems, and supports OS-native authentication and auditing such as PAM.
Builds use autoconf and make, with optional libraries such as LibreSSL, OpenSSL, AWS-LC or BoringSSL for cryptography, zlib for compression, and libfido2 for FIDO security keys. Options for PAM, libedit, Kerberos/GSSAPI and SELinux are available at configure time.
Key features
- 01Client and server for SSH protocol v2 remote login and command execution
- 02File transfer with scp and sftp
- 03Key management with ssh-keygen and ssh-agent
- 04Runs on Linux, macOS, Cygwin and most other Unix-like systems
- 05Optional PAM, Kerberos/GSSAPI, SELinux and FIDO security key support
Use cases
- Logging into remote Linux or Unix servers securely
- Transferring files between machines with sftp or scp
- Running and hardening an SSH server on systems that lack the OpenBSD base OpenSSH
- Managing SSH keys and loaded keys with ssh-keygen and ssh-agent
Quick start
- 1
Clone the repository from GitHub
git clone https://github.com/openssh/openssh-portable - 2
Enter the directory and generate the configure script
cd openssh-portable && autoreconf - 3
Configure the build
./configure - 4
Compile and run the tests
make && make tests
Things to know
- Targets Unix-like systems such as Linux, macOS and Cygwin, not native Windows.
- Building from git requires autoconf and a working C compiler.
- The metadata gives no clear license identifier, so check the license before reuse.
In collections
Topics
FAQ
- What is openssh-portable?
- Portable OpenSSH, the non-OpenBSD port of the SSH suite for secure remote login, command execution and file transfer on Unix-like systems. OpenSSH is a complete implementation of the SSH protocol version 2. It provides the client ssh and server sshd for secure remote login and command execution, scp and sftp for file transfer, and utilities such as ssh-keygen for key generation and ssh-agent for runtime key storage.
- Is openssh-portable free to use? What license does it have?
- openssh-portable is open source under the Other license. Check the license terms before using it in commercial products.
- Is openssh-portable still maintained?
- Actively maintained. The last commit to openssh-portable was on Nov 6, 2026.
- What can I use openssh-portable for?
- Logging into remote Linux or Unix servers securely Transferring files between machines with sftp or scp Running and hardening an SSH server on systems that lack the OpenBSD base OpenSSH Managing SSH keys and loaded keys with ssh-keygen and ssh-agent
- How do I install openssh-portable?
- Clone the repository from GitHub: git clone https://github.com/openssh/openssh-portable Enter the directory and generate the configure script: cd openssh-portable && autoreconf Configure the build: ./configure Compile and run the tests: make && make tests
- Where can I get openssh-portable?
- The source code and installation instructions are on GitHub: https://github.com/openssh/openssh-portable
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A desktop connection hub that gives you one place to reach SSH hosts, containers, VMs, Kubernetes clusters and cloud servers from your local machine.
A personal remote session manager for Windows that organizes RDP, SSH, VNC, Telnet and SFTP connections in one launcher.
Self-hosted server management software for connecting to machines over SSH, VNC and RDP, with SFTP, Docker and Proxmox management.
An OpenSSH-compatible SSH client that adds login prompts, batch login, trzsz/zmodem file transfer and a UDP mode similar to mosh.
TinySSH is a minimalistic SSHv2 server that supports only modern cryptography and omits legacy and unsafe features.