Sign inSign up

opensshfull/openssh

By opensshfull

•Updated about 6 years ago

Image
1

695

opensshfull/openssh repository overview

⁠Portable OpenSSH

Fuzzing Status

OpenSSH is a complete implementation of the SSH protocol (version 2) for secure remote login, command execution and file transfer. It includes a client ssh and server sshd, file transfer utilities scp and sftp as well as tools for key generation (ssh-keygen), run-time key storage (ssh-agent) and a number of supporting programs.

This is a port of OpenBSD's OpenSSH⁠ to most Unix-like operating systems, including Linux, OS X and Cygwin. Portable OpenSSH polyfills OpenBSD APIs that are not available elsewhere, adds sshd sandboxing for more operating systems and includes support for OS-native authentication and auditing (e.g. using PAM).

⁠Documentation

The official documentation for OpenSSH are the man pages for each tool:

⁠Stable Releases

Stable release tarballs are available from a number of download mirrors⁠. We recommend the use of a stable release for most users. Please read the release notes⁠ for details of recent changes and potential incompatibilities.

⁠Building Portable OpenSSH

⁠Dependencies

Portable OpenSSH is built using autoconf and make. It requires a working C compiler, standard library and headers, and zlib⁠. libcrypto from either LibreSSL⁠ or OpenSSL⁠ may also be used, but OpenSSH may be built without it supporting a subset of crypto algorithms.

FIDO security token support need libfido2⁠ and its dependencies. Also, certain platforms and build-time options may require additional dependencies, see README.platform for details.

⁠Building a release

Releases include a pre-built copy of the configure script and may be built using:

tar zxvf openssh-X.YpZ.tar.gz
cd openssh
./configure # [options]
make && make tests

See the Build-time Customisation⁠ section below for configure options. If you plan on installing OpenSSH to your system, then you will usually want to specify destination paths.

⁠Building from git

If building from git, you'll need autoconf⁠ installed to build the configure script. The following commands will check out and build portable OpenSSH from git:

git clone https://github.com/openssh/openssh-portable # or https://anongit.mindrot.org/openssh.git
cd openssh-portable
autoreconf
./configure
make && make tests
⁠Build-time Customisation

There are many build-time customisation options available. All Autoconf destination path flags (e.g. --prefix) are supported (and are usually required if you want to install OpenSSH).

For a full list of available flags, run configure --help but a few of the more frequently-used ones are described below. Some of these flags will require additional libraries and/or headers be installed.

FlagMeaning
--with-pamEnable PAM⁠ support. OpenPAM⁠, Linux PAM⁠ and Solaris PAM are supported.
--with-libeditEnable libedit⁠ support for sftp.
--with-kerberos5Enable Kerberos/GSSAPI support. Both Heimdal⁠ and MIT⁠ Kerberos implementations are supported.
--with-selinuxEnable SELinux⁠ support.
--with-security-key-builtinInclude built-in support for U2F/FIDO2 security keys. This requires libfido2⁠ be installed.

⁠Development

Portable OpenSSH development is discussed on the openssh-unix-dev mailing list⁠ (archive mirror⁠). Bugs and feature requests are tracked on our Bugzilla⁠.

⁠Reporting bugs

Non-security bugs may be reported to the developers via Bugzilla⁠ or via the mailing list above. Security bugs should be reported to [email protected]⁠.

Tag summary

Content type

Image

Digest

Size

49.8 MB

Last updated

about 6 years ago

docker pull opensshfull/openssh