• Home
Name Date Size #Lines LOC

..--

contrib/03-May-2024-4,6283,263

openbsd-compat/03-May-2024-20,06713,085

regress/03-May-2024-17,23613,866

Android.mkD03-May-20247.7 KiB350269

CREDITSD03-May-20245.4 KiB10398

ChangeLogD03-May-2024279.7 KiB9,3956,080

INSTALLD03-May-20249.2 KiB271186

LICENCED03-May-202415.7 KiB341296

Makefile.inD03-May-202425.2 KiB652560

OVERVIEWD03-May-20246.5 KiB169124

OWNERSD03-May-2024140 43

PROTOCOLD03-May-202416.4 KiB458341

PROTOCOL.agentD03-May-202418.3 KiB583426

PROTOCOL.certkeysD03-May-202411.1 KiB288231

PROTOCOL.chacha20poly1305D03-May-20244.5 KiB10884

PROTOCOL.keyD03-May-20241.5 KiB6951

PROTOCOL.krlD03-May-20245 KiB170116

PROTOCOL.muxD03-May-20246.1 KiB229165

READMED03-May-20242.6 KiB6548

README.dnsD03-May-20241.6 KiB4830

README.platformD03-May-20244 KiB9774

README.privsepD03-May-20242.3 KiB5541

README.tunD03-May-20244.8 KiB13398

README.versionD03-May-2024150 54

TODOD03-May-20242.5 KiB8161

aclocal.m4D03-May-20245.4 KiB180171

addrmatch.cD03-May-202410.9 KiB500354

atomicio.cD03-May-20244.4 KiB171122

atomicio.hD03-May-20242.1 KiB5213

audit-bsm.cD03-May-202411.8 KiB456323

audit-linux.cD03-May-20243.5 KiB12778

audit.cD03-May-20245.7 KiB185105

audit.hD03-May-20242.3 KiB5627

auth-bsdauth.cD03-May-20243.6 KiB14699

auth-krb5.cD03-May-20246.9 KiB273200

auth-options.cD03-May-202416.7 KiB658570

auth-options.hD03-May-20241.3 KiB4120

auth-pam.cD03-May-202431.6 KiB1,262977

auth-pam.hD03-May-20241.9 KiB4619

auth-passwd.cD03-May-20246.4 KiB226149

auth-rhosts.cD03-May-20248.9 KiB325211

auth-shadow.cD03-May-20244.2 KiB14387

auth-sia.cD03-May-20243.1 KiB11570

auth-sia.hD03-May-20241.4 KiB324

auth-skey.cD03-May-20242.8 KiB10966

auth.cD03-May-202423.9 KiB927693

auth.hD03-May-20246.9 KiB218141

auth2-chall.cD03-May-20249.2 KiB382304

auth2-gss.cD03-May-20248 KiB300200

auth2-hostbased.cD03-May-20247.3 KiB252197

auth2-kbdint.cD03-May-20242.1 KiB7033

auth2-none.cD03-May-20242.3 KiB8043

auth2-passwd.cD03-May-20242.5 KiB8548

auth2-pubkey.cD03-May-202430.1 KiB1,157913

auth2.cD03-May-202416.2 KiB626480

authfd.cD03-May-202417.9 KiB722568

authfd.hD03-May-20243.1 KiB9355

authfile.cD03-May-202414.3 KiB596455

authfile.hD03-May-20242.3 KiB5320

bitmap.cD03-May-20244.4 KiB213170

bitmap.hD03-May-20241.8 KiB5715

blocks.cD03-May-20246.5 KiB249215

bufaux.cD03-May-20245.1 KiB260192

bufbn.cD03-May-20242.5 KiB11073

bufec.cD03-May-20241.9 KiB7543

buffer.cD03-May-20242.6 KiB11979

buffer.hD03-May-20243.5 KiB10059

buildpkg.sh.inD03-May-202417.6 KiB678526

canohost.cD03-May-20244.7 KiB205143

canohost.hD03-May-2024842 279

chacha.cD03-May-20245.3 KiB220188

chacha.hD03-May-20241,000 3722

channels.cD03-May-2024124.9 KiB4,6733,729

channels.hD03-May-202411.9 KiB324214

cipher-3des1.cD03-May-20244.3 KiB159109

cipher-aes.cD03-May-20244.5 KiB162119

cipher-aesctr.cD03-May-20242.1 KiB8450

cipher-aesctr.hD03-May-20241.3 KiB3613

cipher-bf1.cD03-May-20242.8 KiB10764

cipher-chachapoly.cD03-May-20243.7 KiB12071

cipher-chachapoly.hD03-May-20241.6 KiB4219

cipher-ctr.cD03-May-20243.6 KiB147103

cipher.cD03-May-202418.3 KiB728597

cipher.hD03-May-20244.3 KiB10354

cleanup.cD03-May-20241 KiB3310

clientloop.cD03-May-202476.4 KiB2,7802,002

clientloop.hD03-May-20243.5 KiB8129

compat.cD03-May-20248.7 KiB304264

compat.hD03-May-20242.9 KiB7847

config.guessD03-May-202442.7 KiB1,4571,264

config.hD03-May-202443.6 KiB1,607294

config.h.inD03-May-202445.5 KiB1,7711,194

config.subD03-May-202435.5 KiB1,8241,686

configureD03-May-2024518.1 KiB20,44716,568

configure.acD03-May-2024139.2 KiB5,1524,832

crc32.cD03-May-20244.9 KiB10677

crc32.hD03-May-20241.4 KiB314

crypto_api.hD03-May-20241.3 KiB4526

deattack.cD03-May-20244.1 KiB166106

deattack.hD03-May-20241 KiB3913

defines.hD03-May-202421.7 KiB878653

dh.cD03-May-202414.8 KiB473374

dh.hD03-May-20242.6 KiB8133

digest-libc.cD03-May-20245.9 KiB265214

digest-openssl.cD03-May-20245 KiB206158

digest.hD03-May-20242.5 KiB7233

dispatch.cD03-May-20243.7 KiB143102

dispatch.hD03-May-20242.3 KiB5925

dns.cD03-May-20249.2 KiB364263

dns.hD03-May-20242 KiB5824

ed25519.cD03-May-20243.1 KiB145105

entropy.cD03-May-20246.1 KiB245171

entropy.hD03-May-20241.5 KiB367

fatal.cD03-May-20241.6 KiB4613

fe25519.cD03-May-20248.1 KiB338278

fe25519.hD03-May-20242.3 KiB7142

fixalgorithmsD03-May-2024422 2713

fixpathsD03-May-2024499 2312

fixprogsD03-May-20241.6 KiB7353

ge25519.cD03-May-202411 KiB322249

ge25519.hD03-May-20241.4 KiB4425

ge25519_base.dataD03-May-2024164.6 KiB859856

groupaccess.cD03-May-20243.4 KiB13477

groupaccess.hD03-May-20241.5 KiB367

gss-genr.cD03-May-20247.3 KiB283192

gss-serv-krb5.cD03-May-20245.6 KiB213144

gss-serv.cD03-May-202410.1 KiB397250

hash.cD03-May-20241.8 KiB7755

hmac.cD03-May-20245.1 KiB198150

hmac.hD03-May-20241.6 KiB3915

hostfile.cD03-May-202422.3 KiB857656

hostfile.hD03-May-20243.8 KiB10961

includes.hD03-May-20243.8 KiB177133

install-shD03-May-20245.5 KiB252153

kex.cD03-May-202425.9 KiB1,041875

kex.hD03-May-20247.3 KiB242187

kexc25519.cD03-May-20244.6 KiB13492

kexc25519c.cD03-May-20245.1 KiB171121

kexc25519s.cD03-May-20245 KiB160115

kexdh.cD03-May-20243.2 KiB9561

kexdhc.cD03-May-20246 KiB221174

kexdhs.cD03-May-20246.1 KiB225171

kexecdh.cD03-May-20243.5 KiB10166

kexecdhc.cD03-May-20246.3 KiB229175

kexecdhs.cD03-May-20246 KiB209156

kexgex.cD03-May-20243.6 KiB10369

kexgexc.cD03-May-20247.6 KiB273219

kexgexs.cD03-May-20247.2 KiB255196

key.cD03-May-20248.4 KiB427355

key.hD03-May-20244 KiB10566

krl.cD03-May-202433.9 KiB1,2991,069

krl.hD03-May-20242.5 KiB6535

log.cD03-May-202410.6 KiB472363

log.hD03-May-20242.6 KiB8157

loginrec.cD03-May-202442 KiB1,7301,105

loginrec.hD03-May-20244.6 KiB13251

logintest.cD03-May-20248.6 KiB309214

mac.cD03-May-20247.5 KiB273219

mac.hD03-May-20242 KiB5424

match.cD03-May-20248.4 KiB327181

match.hD03-May-20241.1 KiB2912

md-sha256.cD03-May-20242.2 KiB8754

md5crypt.cD03-May-20244 KiB168102

md5crypt.hD03-May-2024744 238

mdoc2man.awkD03-May-20248.4 KiB373341

misc.cD03-May-202426.7 KiB1,2771,006

misc.hD03-May-20244.8 KiB151105

mkinstalldirsD03-May-2024691 4123

moduliD03-May-2024540.2 KiB432431

moduli.0D03-May-20243.4 KiB7555

moduli.5D03-May-20243.6 KiB128127

moduli.cD03-May-202420.5 KiB809493

monitor.cD03-May-202443.9 KiB1,8001,408

monitor.hD03-May-20243.9 KiB9556

monitor_fdpass.cD03-May-20244.7 KiB188146

monitor_fdpass.hD03-May-20241.5 KiB355

monitor_wrap.cD03-May-202421.9 KiB946704

monitor_wrap.hD03-May-20243.6 KiB9955

msg.cD03-May-20242.8 KiB9560

msg.hD03-May-20241.5 KiB336

mux.cD03-May-202459.5 KiB2,2681,863

myproposal.hD03-May-20245.3 KiB197147

nchan.cD03-May-202412.8 KiB532435

nchan.msD03-May-20243.9 KiB10074

nchan2.msD03-May-20243.4 KiB8964

opacket.cD03-May-20245.8 KiB338269

opacket.hD03-May-20246.4 KiB162152

openssh.xml.inD03-May-20242.8 KiB9161

opensshd.init.inD03-May-20242 KiB9368

packet.cD03-May-202482.3 KiB3,0572,367

packet.hD03-May-20247.3 KiB217154

pathnames.hD03-May-20245.7 KiB17369

pkcs11.hD03-May-202441.4 KiB1,3581,119

platform-pledge.cD03-May-20241.9 KiB7227

platform-tracing.cD03-May-20241.7 KiB5229

platform.cD03-May-20245 KiB216140

platform.hD03-May-20241.4 KiB3817

poly1305.cD03-May-20244.5 KiB161121

poly1305.hD03-May-2024645 2311

progressmeter.cD03-May-20247.5 KiB307220

progressmeter.hD03-May-20241.4 KiB282

readconf.cD03-May-202477.6 KiB2,6902,215

readconf.hD03-May-20247.7 KiB217155

readpass.cD03-May-20245 KiB194139

rijndael.cD03-May-202451.6 KiB1,1301,009

rijndael.hD03-May-20242.1 KiB5721

rsa.cD03-May-20245 KiB189107

rsa.hD03-May-2024864 278

sandbox-capsicum.cD03-May-20243.3 KiB12378

sandbox-darwin.cD03-May-20242.5 KiB10058

sandbox-null.cD03-May-20241.6 KiB7336

sandbox-pledge.cD03-May-20241.8 KiB7847

sandbox-rlimit.cD03-May-20242.4 KiB9759

sandbox-seccomp-filter.cD03-May-20249.5 KiB358274

sandbox-solaris.cD03-May-20242.7 KiB10971

sandbox-systrace.cD03-May-20246.2 KiB219163

sc25519.cD03-May-20247.2 KiB309255

sc25519.hD03-May-20242.8 KiB8146

scp.0D03-May-20246.1 KiB169139

scp.1D03-May-20245.1 KiB246245

scp.cD03-May-202431.8 KiB1,3721,130

servconf.cD03-May-202470.6 KiB2,3662,031

servconf.hD03-May-20249.5 KiB249174

serverloop.cD03-May-202424.3 KiB868646

serverloop.hD03-May-2024976 274

session.cD03-May-202461.9 KiB2,5931,901

session.hD03-May-20242.6 KiB8649

sftp-client.cD03-May-202449.2 KiB1,9071,553

sftp-client.hD03-May-20244.3 KiB14353

sftp-common.cD03-May-20246.8 KiB260206

sftp-common.hD03-May-20242 KiB5319

sftp-glob.cD03-May-20243.4 KiB15195

sftp-server-main.cD03-May-20241.5 KiB5428

sftp-server.0D03-May-20244.2 KiB9774

sftp-server.8D03-May-20245 KiB171170

sftp-server.cD03-May-202442.3 KiB1,7091,452

sftp.0D03-May-202415.3 KiB387301

sftp.1D03-May-202414.5 KiB629628

sftp.cD03-May-202457.4 KiB2,4812,042

sftp.hD03-May-20243.3 KiB10255

smult_curve25519_ref.cD03-May-20246.7 KiB266227

ssh-add.0D03-May-20245.3 KiB13099

ssh-add.1D03-May-20246.6 KiB213212

ssh-add.cD03-May-202415.7 KiB623511

ssh-agent.0D03-May-20245.6 KiB12194

ssh-agent.1D03-May-20247.1 KiB232231

ssh-agent.cD03-May-202436.5 KiB1,4671,235

ssh-dss.cD03-May-20245.8 KiB221169

ssh-ecdsa.cD03-May-20245.2 KiB190140

ssh-ed25519.cD03-May-20244.2 KiB168134

ssh-gss.hD03-May-20244.6 KiB13588

ssh-keygen.0D03-May-202427.3 KiB571455

ssh-keygen.1D03-May-202426.1 KiB871870

ssh-keygen.cD03-May-202472.8 KiB2,7702,377

ssh-keyscan.0D03-May-20244.6 KiB11280

ssh-keyscan.1D03-May-20244.3 KiB181180

ssh-keyscan.cD03-May-202419.2 KiB857730

ssh-keysign.0D03-May-20241.8 KiB5340

ssh-keysign.8D03-May-20242.9 KiB9493

ssh-keysign.cD03-May-20248.4 KiB309226

ssh-pkcs11-client.cD03-May-20245.2 KiB243194

ssh-pkcs11-helper.0D03-May-2024642 2617

ssh-pkcs11-helper.8D03-May-20241.3 KiB4443

ssh-pkcs11-helper.cD03-May-20248 KiB376294

ssh-pkcs11.cD03-May-202418.8 KiB707590

ssh-pkcs11.hD03-May-20241.1 KiB257

ssh-rsa.cD03-May-20249.3 KiB357288

ssh-sandbox.hD03-May-20241.1 KiB256

ssh.0D03-May-202447.7 KiB972796

ssh.1D03-May-202443.9 KiB1,7111,710

ssh.cD03-May-202462.9 KiB2,1971,681

ssh.hD03-May-20242.9 KiB10621

ssh1.hD03-May-20244.1 KiB9258

ssh2.hD03-May-20245.7 KiB17578

ssh_api.cD03-May-202413.8 KiB542431

ssh_api.hD03-May-20244.3 KiB13831

ssh_configD03-May-20241.6 KiB5146

ssh_config.0D03-May-202456.8 KiB1,093915

ssh_config.5D03-May-202450.3 KiB1,8031,802

sshbuf-getput-basic.cD03-May-20249.2 KiB465382

sshbuf-getput-crypto.cD03-May-20245.6 KiB225179

sshbuf-misc.cD03-May-20243.5 KiB162129

sshbuf.cD03-May-20249.3 KiB415328

sshbuf.hD03-May-202411.8 KiB357166

sshconnect.cD03-May-202442.3 KiB1,5461,193

sshconnect.hD03-May-20242.7 KiB7837

sshconnect1.cD03-May-202422.3 KiB775511

sshconnect2.cD03-May-202451.9 KiB1,9741,583

sshd.0D03-May-202431.5 KiB627514

sshd.8D03-May-202429.3 KiB948947

sshd.cD03-May-202459.7 KiB2,2981,651

sshd_configD03-May-20243.1 KiB11995

sshd_config.0D03-May-202451.6 KiB1,021853

sshd_config.5D03-May-202446.1 KiB1,6861,685

sshd_config.androidD03-May-20243.3 KiB12198

ssherr.cD03-May-20244.8 KiB142123

ssherr.hD03-May-20243.2 KiB8560

sshkey.cD03-May-202497.9 KiB3,9743,419

sshkey.hD03-May-20248.1 KiB231174

sshlogin.cD03-May-20245.1 KiB16590

sshlogin.hD03-May-2024935 248

sshpty.cD03-May-20246.3 KiB265194

sshpty.hD03-May-20241 KiB2910

sshtty.cD03-May-20242.9 KiB9752

start-sshD03-May-2024998 3825

survey.sh.inD03-May-20241.7 KiB7049

ttymodes.cD03-May-202410.4 KiB490352

ttymodes.hD03-May-20245.3 KiB179104

uidswap.cD03-May-20249.3 KiB310202

uidswap.hD03-May-2024716 194

umac.cD03-May-202445.5 KiB1,277763

umac.hD03-May-20244.6 KiB13042

umac128.cD03-May-2024522 146

utf8.cD03-May-20247.8 KiB335224

utf8.hD03-May-20241.2 KiB268

uuencode.cD03-May-20242.9 KiB9649

uuencode.hD03-May-20241.5 KiB303

verify.cD03-May-2024668 5040

version.hD03-May-2024170 73

xmalloc.cD03-May-20242.1 KiB10775

xmalloc.hD03-May-20241 KiB278

README

1See https://www.openssh.com/releasenotes.html#7.5p1 for the release notes.
2
3Please read https://www.openssh.com/report.html for bug reporting
4instructions and note that we do not use Github for bug reporting or
5patch/pull-request management.
6
7- A Japanese translation of this document and of the release notes is
8- available at http://www.unixuser.org/~haruyama/security/openssh/index.html
9- Thanks to HARUYAMA Seigo <haruyama@unixuser.org>
10
11This is the port of OpenBSD's excellent OpenSSH[0] to Linux and other
12Unices.
13
14OpenSSH is based on the last free version of Tatu Ylonen's sample
15implementation with all patent-encumbered algorithms removed (to
16external libraries), all known security bugs fixed, new features
17reintroduced and many other clean-ups.  OpenSSH has been created by
18Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo de Raadt,
19and Dug Song. It has a homepage at https://www.openssh.com/
20
21This port consists of the re-introduction of autoconf support, PAM
22support, EGD[1]/PRNGD[2] support and replacements for OpenBSD library
23functions that are (regrettably) absent from other unices. This port
24has been best tested on AIX, Cygwin, HP-UX, Linux, MacOS/X,
25NetBSD, OpenBSD, OpenServer, Solaris, Unicos, and UnixWare.
26
27This version actively tracks changes in the OpenBSD CVS repository.
28
29The PAM support is now more functional than the popular packages of
30commercial ssh-1.2.x. It checks "account" and "session" modules for
31all logins, not just when using password authentication.
32
33OpenSSH depends on Zlib[3], OpenSSL[4] and optionally PAM[5].
34
35There is now several mailing lists for this port of OpenSSH. Please
36refer to https://www.openssh.com/list.html for details on how to join.
37
38Please send bug reports and patches to the mailing list
39openssh-unix-dev@mindrot.org. The list is open to posting by unsubscribed
40users.  Code contribution are welcomed, but please follow the OpenBSD
41style guidelines[6].
42
43Please refer to the INSTALL document for information on how to install
44OpenSSH on your system.
45
46Damien Miller <djm@mindrot.org>
47
48Miscellania -
49
50This version of OpenSSH is based upon code retrieved from the OpenBSD
51CVS repository which in turn was based on the last free sample
52implementation released by Tatu Ylonen.
53
54References -
55
56[0] https://www.openssh.com/
57[1] http://www.lothar.com/tech/crypto/
58[2] http://www.aet.tu-cottbus.de/personen/jaenicke/postfix_tls/prngd.html
59[3] http://www.gzip.org/zlib/
60[4] http://www.openssl.org/
61[5] http://www.openpam.org
62    http://www.kernel.org/pub/linux/libs/pam/
63    (PAM also is standard on Solaris and HP-UX 11)
64[6] http://man.openbsd.org/style.9
65

README.dns

1How to verify host keys using OpenSSH and DNS
2---------------------------------------------
3
4OpenSSH contains support for verifying host keys using DNS as described in
5draft-ietf-secsh-dns-05.txt. The document contains very brief instructions
6on how to use this feature. Configuring DNS is out of the scope of this
7document.
8
9
10(1) Server: Generate and publish the DNS RR
11
12To create a DNS resource record (RR) containing a fingerprint of the
13public host key, use the following command:
14
15	ssh-keygen -r hostname -f keyfile -g
16
17where "hostname" is your fully qualified hostname and "keyfile" is the
18file containing the public host key file. If you have multiple keys,
19you should generate one RR for each key.
20
21In the example above, ssh-keygen will print the fingerprint in a
22generic DNS RR format parsable by most modern name server
23implementations. If your nameserver has support for the SSHFP RR
24you can omit the -g flag and ssh-keygen will print a standard SSHFP RR.
25
26To publish the fingerprint using the DNS you must add the generated RR
27to your DNS zone file and sign your zone.
28
29
30(2) Client: Enable ssh to verify host keys using DNS
31
32To enable the ssh client to verify host keys using DNS, you have to
33add the following option to the ssh configuration file
34($HOME/.ssh/config or /etc/ssh/ssh_config):
35
36    VerifyHostKeyDNS yes
37
38Upon connection the client will try to look up the fingerprint RR
39using DNS. If the fingerprint received from the DNS server matches
40the remote host key, the user will be notified.
41
42
43	Jakob Schlyter
44	Wesley Griffin
45
46
47$OpenBSD: README.dns,v 1.2 2003/10/14 19:43:23 jakob Exp $
48

README.platform

1This file contains notes about OpenSSH on specific platforms.
2
3AIX
4---
5As of OpenSSH 3.8p1, sshd will now honour an accounts password expiry
6settings, where previously it did not.  Because of this, it's possible for
7sites that have used OpenSSH's sshd exclusively to have accounts which
8have passwords expired longer than the inactive time (ie the "Weeks between
9password EXPIRATION and LOCKOUT" setting in SMIT or the maxexpired
10chuser attribute).
11
12Accounts in this state must have their passwords reset manually by the
13administrator.  As a precaution, it is recommended that the administrative
14passwords be reset before upgrading from OpenSSH <3.8.
15
16As of OpenSSH 4.0, configure will attempt to detect if your version
17and maintenance level of AIX has a working getaddrinfo, and will use it
18if found.  This will enable IPv6 support.  If for some reason configure
19gets it wrong, or if you want to build binaries to work on earlier MLs
20than the build host then you can add "-DBROKEN_GETADDRINFO" to CFLAGS
21to force the previous IPv4-only behaviour.
22
23IPv6 known to work: 5.1ML7 5.2ML2 5.2ML5
24IPv6 known broken: 4.3.3ML11 5.1ML4
25
26If you wish to use dynamic libraries that aren't in the normal system
27locations (eg IBM's OpenSSL and zlib packages) then you will need to
28define the environment variable blibpath before running configure, eg
29
30blibpath=/lib:/usr/lib:/opt/freeware/lib ./configure \
31  --with-ssl-dir=/opt/freeware --with-zlib=/opt/freeware
32
33If sshd is built with the WITH_AIXAUTHENTICATE option (which is enabled
34by default) then sshd checks that users are permitted via the
35loginrestrictions() function, in particular that the user has the
36"rlogin" attribute set.  This check is not done for the root account,
37instead the PermitRootLogin setting in sshd_config is used.
38
39If you are using the IBM compiler you probably want to use CC=xlc rather
40than the default of cc.
41
42
43Cygwin
44------
45To build on Cygwin, OpenSSH requires the following packages:
46gcc, gcc-mingw-core, mingw-runtime, binutils, make, openssl,
47openssl-devel, zlib, minres, minires-devel.
48
49
50Darwin and MacOS X
51------------------
52Darwin does not provide a tun(4) driver required for OpenSSH-based
53virtual private networks. The BSD manpage still exists, but the driver
54has been removed in recent releases of Darwin and MacOS X.
55
56Nevertheless, tunnel support is known to work with Darwin 8 and
57MacOS X 10.4 in Point-to-Point (Layer 3) and Ethernet (Layer 2) mode
58using a third party driver. More information is available at:
59	http://www-user.rhrk.uni-kl.de/~nissler/tuntap/
60
61
62Linux
63-----
64
65Some Linux distributions (including Red Hat/Fedora/CentOS) include
66headers and library links in the -devel RPMs rather than the main
67binary RPMs. If you get an error about headers, or complaining about a
68missing prerequisite then you may need to install the equivalent
69development packages.  On Redhat based distros these may be openssl-devel,
70zlib-devel and pam-devel, on Debian based distros these may be
71libssl-dev, libz-dev and libpam-dev.
72
73
74Solaris
75-------
76If you enable BSM auditing on Solaris, you need to update audit_event(4)
77for praudit(1m) to give sensible output.  The following line needs to be
78added to /etc/security/audit_event:
79
80	32800:AUE_openssh:OpenSSH login:lo
81
82The BSM audit event range available for third party TCB applications is
8332768 - 65535.  Event number 32800 has been choosen for AUE_openssh.
84There is no official registry of 3rd party event numbers, so if this
85number is already in use on your system, you may change it at build time
86by configure'ing --with-cflags=-DAUE_openssh=32801 then rebuilding.
87
88
89Platforms using PAM
90-------------------
91As of OpenSSH 4.3p1, sshd will no longer check /etc/nologin itself when
92PAM is enabled.  To maintain existing behaviour, pam_nologin should be
93added to sshd's session stack which will prevent users from starting shell
94sessions.  Alternatively, pam_nologin can be added to either the auth or
95account stacks which will prevent authentication entirely, but will still
96return the output from pam_nologin to the client.
97

README.privsep

1Privilege separation, or privsep, is method in OpenSSH by which
2operations that require root privilege are performed by a separate
3privileged monitor process.  Its purpose is to prevent privilege
4escalation by containing corruption to an unprivileged process.
5More information is available at:
6	http://www.citi.umich.edu/u/provos/ssh/privsep.html
7
8Privilege separation is now enabled by default; see the
9UsePrivilegeSeparation option in sshd_config(5).
10
11When privsep is enabled, during the pre-authentication phase sshd will
12chroot(2) to "/var/empty" and change its privileges to the "sshd" user
13and its primary group.  sshd is a pseudo-account that should not be
14used by other daemons, and must be locked and should contain a
15"nologin" or invalid shell.
16
17You should do something like the following to prepare the privsep
18preauth environment:
19
20	# mkdir /var/empty
21	# chown root:sys /var/empty
22	# chmod 755 /var/empty
23	# groupadd sshd
24	# useradd -g sshd -c 'sshd privsep' -d /var/empty -s /bin/false sshd
25
26/var/empty should not contain any files.
27
28configure supports the following options to change the default
29privsep user and chroot directory:
30
31  --with-privsep-path=xxx Path for privilege separation chroot
32  --with-privsep-user=user Specify non-privileged user for privilege separation
33
34PAM-enabled OpenSSH is known to function with privsep on AIX, FreeBSD,
35HP-UX (including Trusted Mode), Linux, NetBSD and Solaris.
36
37On Cygwin, Tru64 Unix, OpenServer, and Unicos only the pre-authentication
38part of privsep is supported.  Post-authentication privsep is disabled
39automatically (so you won't see the additional process mentioned below).
40
41Note that for a normal interactive login with a shell, enabling privsep
42will require 1 additional process per login session.
43
44Given the following process listing (from HP-UX):
45
46     UID   PID  PPID  C    STIME TTY       TIME COMMAND
47    root  1005     1  0 10:45:17 ?         0:08 /opt/openssh/sbin/sshd -u0
48    root  6917  1005  0 15:19:16 ?         0:00 sshd: stevesk [priv]
49 stevesk  6919  6917  0 15:19:17 ?         0:03 sshd: stevesk@2
50 stevesk  6921  6919  0 15:19:17 pts/2     0:00 -bash
51
52process 1005 is the sshd process listening for new connections.
53process 6917 is the privileged monitor process, 6919 is the user owned
54sshd process and 6921 is the shell process.
55

README.tun

1How to use OpenSSH-based virtual private networks
2-------------------------------------------------
3
4OpenSSH contains support for VPN tunneling using the tun(4) network
5tunnel pseudo-device which is available on most platforms, either for
6layer 2 or 3 traffic.
7
8The following brief instructions on how to use this feature use
9a network configuration specific to the OpenBSD operating system.
10
11(1) Server: Enable support for SSH tunneling
12
13To enable the ssh server to accept tunnel requests from the client, you
14have to add the following option to the ssh server configuration file
15(/etc/ssh/sshd_config):
16
17	PermitTunnel yes
18
19Restart the server or send the hangup signal (SIGHUP) to let the server
20reread it's configuration.
21
22(2) Server: Restrict client access and assign the tunnel
23
24The OpenSSH server simply uses the file /root/.ssh/authorized_keys to
25restrict the client to connect to a specified tunnel and to
26automatically start the related interface configuration command. These
27settings are optional but recommended:
28
29	tunnel="1",command="sh /etc/netstart tun1" ssh-rsa ... reyk@openbsd.org
30
31(3) Client: Configure the local network tunnel interface
32
33Use the hostname.if(5) interface-specific configuration file to set up
34the network tunnel configuration with OpenBSD. For example, use the
35following configuration in /etc/hostname.tun0 to set up the layer 3
36tunnel on the client:
37
38	inet 192.168.5.1 255.255.255.252 192.168.5.2
39
40OpenBSD also supports layer 2 tunneling over the tun device by adding
41the link0 flag:
42
43	inet 192.168.1.78 255.255.255.0 192.168.1.255 link0
44
45Layer 2 tunnels can be used in combination with an Ethernet bridge(4)
46interface, like the following example for /etc/bridgename.bridge0:
47
48	add tun0
49	add sis0
50	up
51
52(4) Client: Configure the OpenSSH client
53
54To establish tunnel forwarding for connections to a specified
55remote host by default, use the following ssh client configuration for
56the privileged user (in /root/.ssh/config):
57
58	Host sshgateway
59		Tunnel yes
60		TunnelDevice 0:any
61		PermitLocalCommand yes
62	        LocalCommand sh /etc/netstart tun0
63
64A more complicated configuration is possible to establish a tunnel to
65a remote host which is not directly accessible by the client.
66The following example describes a client configuration to connect to
67the remote host over two ssh hops in between. It uses the OpenSSH
68ProxyCommand in combination with the nc(1) program to forward the final
69ssh tunnel destination over multiple ssh sessions.
70
71	Host access.somewhere.net
72	        User puffy
73	Host dmzgw
74	        User puffy
75	        ProxyCommand ssh access.somewhere.net nc dmzgw 22
76	Host sshgateway
77	        Tunnel Ethernet
78	        TunnelDevice 0:any
79	        PermitLocalCommand yes
80	        LocalCommand sh /etc/netstart tun0
81	        ProxyCommand ssh dmzgw nc sshgateway 22
82
83The following network plan illustrates the previous configuration in
84combination with layer 2 tunneling and Ethernet bridging.
85
86+--------+       (          )      +----------------------+
87| Client |------(  Internet  )-----| access.somewhere.net |
88+--------+       (          )      +----------------------+
89    : 192.168.1.78                             |
90    :.............................         +-------+
91     Forwarded ssh connection    :         | dmzgw |
92     Layer 2 tunnel              :         +-------+
93                                 :             |
94                                 :             |
95                                 :      +------------+
96                                 :......| sshgateway |
97                                      | +------------+
98--- real connection                 Bridge ->  |          +----------+
99... "virtual connection"                     [ X ]--------| somehost |
100[X] switch                                                +----------+
101                                                          192.168.1.25
102
103(5) Client: Connect to the server and establish the tunnel
104
105Finally connect to the OpenSSH server to establish the tunnel by using
106the following command:
107
108	ssh sshgateway
109
110It is also possible to tell the client to fork into the background after
111the connection has been successfully established:
112
113	ssh -f sshgateway true
114
115Without the ssh configuration done in step (4), it is also possible
116to use the following command lines:
117
118	ssh -fw 0:1 sshgateway true
119	ifconfig tun0 192.168.5.1 192.168.5.2 netmask 255.255.255.252
120
121Using OpenSSH tunnel forwarding is a simple way to establish secure
122and ad hoc virtual private networks. Possible fields of application
123could be wireless networks or administrative VPN tunnels.
124
125Nevertheless, ssh tunneling requires some packet header overhead and
126runs on top of TCP. It is still suggested to use the IP Security
127Protocol (IPSec) for robust and permanent VPN connections and to
128interconnect corporate networks.
129
130	Reyk Floeter
131
132$OpenBSD: README.tun,v 1.4 2006/03/28 00:12:31 deraadt Exp $
133

README.version

1URL: ftp://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-7.1p2.tar.gz
2Version: 7.5p1
3BugComponent: 180238
4Owners: ghartman, cloud-android-devs
5