Portable OpenSSH
Go to file
djm@openbsd.org 643c2ad829 upstream commit
make "--" before the hostname terminate command-line
option processing completely; previous behaviour would not prevent further
options appearing after the hostname (ssh has a supported options after the
hostname for >20 years, so that's too late to change).

ok deraadt@

Upstream-ID: ef5ee50571b98ad94dcdf8282204e877ec88ad89
2017-08-12 16:47:10 +10:00
contrib Update link for my patches. 2017-06-29 15:40:25 +10:00
openbsd-compat fix problems in tunnel forwarding portability code 2017-07-28 13:22:47 +10:00
regress upstream commit 2017-06-24 17:29:55 +10:00
.gitignore add *.0 manpage droppings 2017-06-01 15:16:24 +10:00
.skipped-commit-ids upstream commit 2017-07-21 14:17:33 +10:00
CREDITS Remove now-obsolete CVS $Id tags from text files. 2016-08-17 13:40:58 +10:00
INSTALL typo 2017-07-07 11:21:39 +10:00
LICENCE upstream commit 2017-05-01 10:05:04 +10:00
Makefile.in upstream commit 2017-07-21 14:17:32 +10:00
OVERVIEW
PROTOCOL upstream commit 2017-05-27 15:35:52 +10:00
PROTOCOL.agent upstream commit 2017-05-20 14:30:14 +10:00
PROTOCOL.certkeys upstream commit 2017-05-31 14:30:52 +10:00
PROTOCOL.chacha20poly1305 upstream commit 2016-05-04 00:55:21 +10:00
PROTOCOL.key
PROTOCOL.krl
PROTOCOL.mux
README mention libedit 2017-07-21 14:24:26 +10:00
README.dns
README.platform Remove now-obsolete CVS $Id tags from text files. 2016-08-17 13:40:58 +10:00
README.privsep Remove portability support for mmap 2016-09-29 03:19:23 +10:00
README.tun
TODO Remove portability support for mmap 2016-09-29 03:19:23 +10:00
aclocal.m4 Test multiplying two long long ints. 2016-08-17 13:35:43 +10:00
addrmatch.c upstream commit 2016-09-22 03:14:59 +10:00
atomicio.c upstream commit 2016-08-03 15:38:43 +10:00
atomicio.h
audit-bsm.c Remove obsolete CVS $Id from source files. 2016-08-17 14:08:42 +10:00
audit-linux.c Remove obsolete CVS $Id from source files. 2016-08-17 14:08:42 +10:00
audit.c Remove obsolete CVS $Id from source files. 2016-08-17 14:08:42 +10:00
audit.h Remove obsolete CVS $Id from source files. 2016-08-17 14:08:42 +10:00
auth-bsdauth.c upstream commit 2015-10-25 11:42:04 +11:00
auth-krb5.c upstream commit 2016-05-19 17:48:34 +10:00
auth-options.c upstream commit 2017-06-01 14:55:23 +10:00
auth-options.h upstream commit 2017-06-01 14:55:23 +10:00
auth-pam.c Expose list of completed auth methods to PAM 2017-07-28 15:04:00 +10:00
auth-pam.h Remove do_pam_set_tty which is dead code. 2016-10-15 04:34:46 +11:00
auth-passwd.c upstream commit 2016-07-22 13:36:40 +10:00
auth-rhosts.c upstream commit 2016-08-14 11:19:14 +10:00
auth-shadow.c
auth-sia.c
auth-sia.h
auth-skey.c
auth.c upstream commit 2017-06-24 16:56:11 +10:00
auth.h upstream commit 2017-06-24 16:56:11 +10:00
auth2-chall.c upstream commit 2017-05-31 10:50:33 +10:00
auth2-gss.c upstream commit 2017-06-24 16:56:11 +10:00
auth2-hostbased.c upstream commit 2017-06-24 16:56:11 +10:00
auth2-kbdint.c upstream commit 2017-05-31 10:50:33 +10:00
auth2-none.c upstream commit 2017-05-31 10:50:33 +10:00
auth2-passwd.c upstream commit 2017-05-31 10:50:33 +10:00
auth2-pubkey.c upstream commit 2017-06-24 16:56:11 +10:00
auth2.c upstream commit 2017-06-24 16:56:11 +10:00
authfd.c upstream commit 2017-07-21 14:17:32 +10:00
authfd.h upstream commit 2017-06-28 11:13:19 +10:00
authfile.c upstream commit 2017-07-21 14:17:32 +10:00
authfile.h
bitmap.c upstream commit 2017-06-07 11:31:15 +10:00
bitmap.h
blocks.c
bufaux.c
bufbn.c upstream commit 2017-05-01 10:05:02 +10:00
bufec.c
buffer.c
buffer.h upstream commit 2017-05-01 10:05:02 +10:00
buildpkg.sh.in Update links to https. 2016-10-21 06:55:58 +11:00
canohost.c upstream commit 2016-03-08 06:20:35 +11:00
canohost.h upstream commit 2016-03-08 06:20:35 +11:00
chacha.c
chacha.h upstream commit 2016-08-29 11:20:28 +10:00
channels.c upstream commit 2017-06-01 14:54:46 +10:00
channels.h upstream commit 2017-05-31 10:50:05 +10:00
cipher-aes.c
cipher-aesctr.c
cipher-aesctr.h
cipher-chachapoly.c upstream commit 2016-08-09 09:06:52 +10:00
cipher-chachapoly.h
cipher-ctr.c
cipher.c upstream commit 2017-05-08 09:21:00 +10:00
cipher.h upstream commit 2017-05-08 09:21:00 +10:00
cleanup.c
clientloop.c upstream commit 2017-07-21 14:17:33 +10:00
clientloop.h upstream commit 2016-10-01 02:45:10 +10:00
compat.c upstream commit 2017-07-28 13:08:37 +10:00
compat.h upstream commit 2017-05-01 09:42:37 +10:00
config.guess update config.guess and config.sub to current 2016-08-02 10:48:04 +10:00
config.sub update config.guess and config.sub to current 2016-08-02 10:48:04 +10:00
configure.ac modified: configure.ac 2017-07-11 18:47:56 -07:00
crc32.c
crc32.h
crypto_api.h
defines.h portability for sftp globbed ls sort by mtime 2017-06-10 23:41:25 +10:00
dh.c upstream commit 2016-12-16 13:12:18 +11:00
dh.h upstream commit 2016-05-02 20:39:32 +10:00
digest-libc.c upstream commit 2017-05-10 11:41:21 +10:00
digest-openssl.c upstream commit 2017-05-10 11:41:21 +10:00
digest.h upstream commit 2017-05-10 11:41:21 +10:00
dispatch.c upstream commit 2017-06-01 14:53:33 +10:00
dispatch.h upstream commit 2017-06-01 14:53:33 +10:00
dns.c
dns.h
ed25519.c
entropy.c
entropy.h Remove obsolete CVS $Id from source files. 2016-08-17 14:08:42 +10:00
fatal.c
fe25519.c
fe25519.h
fixalgorithms
fixpaths
fixprogs
ge25519.c
ge25519.h
ge25519_base.data
groupaccess.c
groupaccess.h
gss-genr.c upstream commit 2016-09-12 13:46:29 +10:00
gss-serv-krb5.c
gss-serv.c upstream commit 2017-06-24 16:56:11 +10:00
hash.c
hmac.c
hmac.h
hostfile.c upstream commit 2017-06-01 14:55:22 +10:00
hostfile.h
includes.h portability for sftp globbed ls sort by mtime 2017-06-10 23:41:25 +10:00
install-sh
kex.c upstream commit 2017-06-13 22:15:08 +10:00
kex.h upstream commit 2017-05-31 10:50:05 +10:00
kexc25519.c upstream commit 2016-05-02 20:35:04 +10:00
kexc25519c.c upstream commit 2017-05-31 14:17:41 +10:00
kexc25519s.c fix conversion of kexc25519s.c to struct ssh too 2017-05-31 14:56:07 +10:00
kexdh.c upstream commit 2016-05-02 20:39:32 +10:00
kexdhc.c upstream commit 2017-05-31 10:50:05 +10:00
kexdhs.c upstream commit 2017-05-31 10:50:05 +10:00
kexecdh.c
kexecdhc.c upstream commit 2017-05-31 10:50:05 +10:00
kexecdhs.c upstream commit 2017-05-31 10:50:05 +10:00
kexgex.c
kexgexc.c upstream commit 2017-05-31 10:50:05 +10:00
kexgexs.c upstream commit 2017-05-31 10:50:05 +10:00
key.c upstream commit 2017-05-31 10:49:50 +10:00
key.h upstream commit 2017-05-31 10:49:50 +10:00
krl.c upstream commit 2017-06-01 14:55:22 +10:00
krl.h upstream commit 2016-01-07 20:13:32 +11:00
log.c upstream commit 2017-05-17 11:25:22 +10:00
log.h upstream commit 2017-05-17 11:25:22 +10:00
loginrec.c Add sys/time.h for gettimeofday. 2015-12-15 13:59:12 +11:00
loginrec.h
logintest.c
mac.c upstream commit 2017-05-10 11:41:21 +10:00
mac.h upstream commit 2016-07-08 13:50:03 +10:00
match.c upstream commit 2017-03-10 15:35:40 +11:00
match.h upstream commit 2017-02-04 10:08:15 +11:00
md5crypt.c
md5crypt.h Remove obsolete CVS $Id from source files. 2016-08-17 14:08:42 +10:00
mdoc2man.awk fix mdoc2man.awk formatting for top-level lists 2016-09-28 07:40:33 +10:00
misc.c upstream commit 2017-07-24 14:48:47 +10:00
misc.h upstream commit 2016-11-30 19:44:01 +11:00
mkinstalldirs
moduli Import updated moduli. 2016-08-11 11:42:48 +10:00
moduli.5
moduli.c upstream commit 2016-09-12 13:46:29 +10:00
monitor.c upstream commit 2017-06-24 16:56:11 +10:00
monitor.h upstream commit 2016-09-29 03:11:32 +10:00
monitor_fdpass.c upstream commit 2016-03-04 15:12:17 +11:00
monitor_fdpass.h
monitor_wrap.c upstream commit 2017-05-31 10:47:31 +10:00
monitor_wrap.h upstream commit 2017-06-01 14:54:46 +10:00
msg.c
msg.h
mux.c upstream commit 2017-06-10 16:40:11 +10:00
myproposal.h upstream commit 2017-05-08 09:21:11 +10:00
nchan.c upstream commit 2017-05-01 10:05:06 +10:00
nchan.ms
nchan2.ms
opacket.c upstream commit 2017-05-01 09:37:40 +10:00
opacket.h upstream commit 2017-06-01 14:54:46 +10:00
openssh.xml.in
opensshd.init.in modified: configure.ac opensshd.init.in 2016-08-01 14:31:52 -07:00
packet.c upstream commit 2017-07-24 14:48:47 +10:00
packet.h upstream commit 2017-06-01 14:54:46 +10:00
pathnames.h upstream commit 2017-05-08 09:18:27 +10:00
pkcs11.h
platform-pledge.c Support Illumos/Solaris fine-grained privileges 2016-01-08 14:29:12 +11:00
platform-tracing.c Use ptrace(PT_DENY_ATTACH, ..) on OS X. 2016-11-01 08:12:33 +11:00
platform.c Remove obsolete CVS $Id from source files. 2016-08-17 14:08:42 +10:00
platform.h Remove obsolete CVS $Id from source files. 2016-08-17 14:08:42 +10:00
poly1305.c
poly1305.h
progressmeter.c upstream commit 2016-07-08 13:46:59 +10:00
progressmeter.h
readconf.c upstream commit 2017-05-31 10:51:09 +10:00
readconf.h upstream commit 2017-05-31 10:51:09 +10:00
readpass.c upstream commit 2015-12-11 13:23:14 +11:00
rijndael.c
rijndael.h
sandbox-capsicum.c
sandbox-darwin.c Add missing monitor.h include. 2016-12-16 15:02:24 +11:00
sandbox-null.c
sandbox-pledge.c s/SANDBOX_TAME/SANDBOX_PLEDGE/g 2015-10-14 09:22:15 -07:00
sandbox-rlimit.c upstream commit 2016-09-12 13:46:29 +10:00
sandbox-seccomp-filter.c Fix typo in "socketcall". 2017-04-25 08:32:27 +10:00
sandbox-solaris.c drop two more privileges in the Solaris sandbox 2017-06-09 14:44:43 +10:00
sandbox-systrace.c (re)wrap SYS_sendsyslog in ifdef. 2015-10-29 20:57:34 +11:00
sc25519.c
sc25519.h
scp.1 upstream commit 2017-05-08 09:18:27 +10:00
scp.c upstream commit 2017-06-01 14:55:22 +10:00
servconf.c upstream commit 2017-06-24 16:56:11 +10:00
servconf.h upstream commit 2017-06-24 16:56:11 +10:00
serverloop.c upstream commit 2017-08-12 16:47:10 +10:00
serverloop.h upstream commit 2016-08-14 11:19:14 +10:00
session.c Expose list of completed auth methods to PAM 2017-07-28 15:04:00 +10:00
session.h upstream commit 2016-08-14 11:19:14 +10:00
sftp-client.c upstream commit 2017-08-12 16:47:10 +10:00
sftp-client.h Prevent name collisions with system glob (bz#2463) 2015-10-29 10:48:23 +11:00
sftp-common.c upstream commit 2017-06-10 16:40:11 +10:00
sftp-common.h
sftp-glob.c
sftp-server-main.c upstream commit 2016-02-16 10:44:00 +11:00
sftp-server.8
sftp-server.c upstream commit 2017-04-04 10:26:01 +10:00
sftp.1 upstream commit 2017-05-08 09:18:27 +10:00
sftp.c portability for sftp globbed ls sort by mtime 2017-06-10 23:41:25 +10:00
sftp.h
smult_curve25519_ref.c
ssh-add.1 upstream commit 2017-05-08 09:18:27 +10:00
ssh-add.c upstream commit 2017-07-21 14:17:32 +10:00
ssh-agent.1 upstream commit 2016-11-30 19:44:25 +11:00
ssh-agent.c upstream commit 2017-07-24 14:49:07 +10:00
ssh-dss.c upstream commit 2016-04-21 16:30:11 +10:00
ssh-ecdsa.c upstream commit 2016-04-21 16:30:11 +10:00
ssh-ed25519.c upstream commit 2016-04-21 16:30:11 +10:00
ssh-gss.h upstream commit 2017-06-24 16:56:11 +10:00
ssh-keygen.1 upstream commit 2017-07-21 14:17:33 +10:00
ssh-keygen.c upstream commit 2017-07-21 14:17:32 +10:00
ssh-keyscan.1 upstream commit 2017-05-08 09:18:05 +10:00
ssh-keyscan.c upstream commit 2017-06-30 16:07:55 +10:00
ssh-keysign.8 upstream commit 2016-02-18 09:24:40 +11:00
ssh-keysign.c upstream commit 2016-02-16 10:44:00 +11:00
ssh-pkcs11-client.c upstream commit 2017-05-31 10:47:31 +10:00
ssh-pkcs11-helper.8
ssh-pkcs11-helper.c upstream commit 2017-05-31 10:47:31 +10:00
ssh-pkcs11.c upstream commit 2017-06-01 14:55:22 +10:00
ssh-pkcs11.h
ssh-rsa.c upstream commit 2017-07-21 14:17:32 +10:00
ssh-sandbox.h
ssh.1 upstream commit 2017-06-10 16:40:10 +10:00
ssh.c upstream commit 2017-08-12 16:47:10 +10:00
ssh.h upstream commit 2017-05-08 09:21:22 +10:00
ssh2.h upstream commit 2016-05-19 17:48:34 +10:00
ssh_api.c upstream commit 2017-05-01 09:42:37 +10:00
ssh_api.h
ssh_config upstream commit 2017-05-08 09:21:00 +10:00
ssh_config.5 upstream commit 2017-07-24 14:48:47 +10:00
sshbuf-getput-basic.c upstream commit 2017-06-01 14:55:23 +10:00
sshbuf-getput-crypto.c upstream commit 2016-01-13 10:48:11 +11:00
sshbuf-misc.c upstream commit 2016-05-02 20:35:04 +10:00
sshbuf.c upstream commit 2017-06-07 11:31:15 +10:00
sshbuf.h upstream commit 2016-11-29 16:48:02 +11:00
sshconnect.c upstream commit 2017-07-21 14:17:32 +10:00
sshconnect.h upstream commit 2017-05-31 10:47:31 +10:00
sshconnect2.c upstream commit 2017-08-12 16:47:10 +10:00
sshd.8 upstream commit 2017-06-24 16:49:46 +10:00
sshd.c upstream commit 2017-07-21 14:17:32 +10:00
sshd_config upstream commit 2017-03-15 11:09:18 +11:00
sshd_config.5 upstream commit 2017-07-24 14:48:47 +10:00
ssherr.c upstream commit 2017-05-08 09:21:22 +10:00
ssherr.h upstream commit 2017-05-08 09:21:22 +10:00
sshkey.c upstream commit 2017-08-12 16:47:10 +10:00
sshkey.h upstream commit 2017-07-21 14:17:32 +10:00
sshlogin.c upstream commit 2016-01-07 20:13:31 +11:00
sshlogin.h
sshpty.c upstream commit 2016-11-29 16:51:27 +11:00
sshpty.h upstream commit 2016-11-29 16:51:27 +11:00
sshtty.c
survey.sh.in
ttymodes.c upstream commit 2017-05-01 10:05:04 +10:00
ttymodes.h upstream commit 2017-05-01 10:05:04 +10:00
uidswap.c Support Illumos/Solaris fine-grained privileges 2016-01-08 14:29:12 +11:00
uidswap.h
umac.c upstream commit 2017-06-01 14:54:46 +10:00
umac.h
utf8.c upstream commit 2017-06-01 14:55:22 +10:00
utf8.h Force Turkish locales back to C/POSIX; bz#2643 2016-12-12 13:58:59 +11:00
uuencode.c
uuencode.h
verify.c
version.h upstream commit 2017-03-20 12:20:19 +11:00
xmalloc.c upstream commit 2017-06-01 14:55:22 +10:00
xmalloc.h upstream commit 2017-06-01 14:55:22 +10:00

README

See https://www.openssh.com/releasenotes.html#7.5p1 for the release notes.

Please read https://www.openssh.com/report.html for bug reporting
instructions and note that we do not use Github for bug reporting or
patch/pull-request management.

- A Japanese translation of this document and of the release notes is
- available at http://www.unixuser.org/~haruyama/security/openssh/index.html
- Thanks to HARUYAMA Seigo <haruyama@unixuser.org>

This is the port of OpenBSD's excellent OpenSSH[0] to Linux and other
Unices.

OpenSSH is based on the last free version of Tatu Ylonen's sample
implementation with all patent-encumbered algorithms removed (to
external libraries), all known security bugs fixed, new features
reintroduced and many other clean-ups.  OpenSSH has been created by
Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo de Raadt,
and Dug Song. It has a homepage at https://www.openssh.com/

This port consists of the re-introduction of autoconf support, PAM
support, EGD[1]/PRNGD[2] support and replacements for OpenBSD library
functions that are (regrettably) absent from other unices. This port
has been best tested on AIX, Cygwin, HP-UX, Linux, MacOS/X,
NetBSD, OpenBSD, OpenServer, Solaris, Unicos, and UnixWare.

This version actively tracks changes in the OpenBSD CVS repository.

The PAM support is now more functional than the popular packages of
commercial ssh-1.2.x. It checks "account" and "session" modules for
all logins, not just when using password authentication.

OpenSSH depends on Zlib[3], OpenSSL[4], and optionally PAM[5] and
libedit[6]

There is now several mailing lists for this port of OpenSSH. Please
refer to https://www.openssh.com/list.html for details on how to join.

Please send bug reports and patches to the mailing list
openssh-unix-dev@mindrot.org. The list is open to posting by unsubscribed
users.  Code contribution are welcomed, but please follow the OpenBSD
style guidelines[7].

Please refer to the INSTALL document for information on how to install
OpenSSH on your system.

Damien Miller <djm@mindrot.org>

Miscellania -

This version of OpenSSH is based upon code retrieved from the OpenBSD
CVS repository which in turn was based on the last free sample
implementation released by Tatu Ylonen.

References -

[0] https://www.openssh.com/
[1] http://www.lothar.com/tech/crypto/
[2] http://www.aet.tu-cottbus.de/personen/jaenicke/postfix_tls/prngd.html
[3] http://www.gzip.org/zlib/
[4] http://www.openssl.org/
[5] http://www.openpam.org
    http://www.kernel.org/pub/linux/libs/pam/
    (PAM also is standard on Solaris and HP-UX 11)
[6] http://thrysoee.dk/editline/ (portable version)
[7] http://man.openbsd.org/style.9