summaryrefslogtreecommitdiff
path: root/sshd.8
diff options
context:
space:
mode:
authorColin Watson <cjwatson@debian.org>2008-07-22 19:45:18 +0000
committerColin Watson <cjwatson@debian.org>2008-07-22 19:45:18 +0000
commit137d76ba65883aa8143af1fcad83b57e7badef0c (patch)
treef426e804bb5248ceafedfab7bb78ae6e6752942c /sshd.8
parentdac7d049dad31f5f84d421d4eb628a7e13f977d7 (diff)
parentef94e5613d37bcbf880f21ee6094e4b1c7683a4c (diff)
* New upstream release (closes: #474301). Important changes not previously
backported to 4.7p1: - 4.9/4.9p1 (http://www.openssh.com/txt/release-4.9): + Added chroot(2) support for sshd(8), controlled by a new option "ChrootDirectory" (closes: #139047, LP: #24777). + Linked sftp-server(8) into sshd(8). The internal sftp server is used when the command "internal-sftp" is specified in a Subsystem or ForceCommand declaration. When used with ChrootDirectory, the internal sftp server requires no special configuration of files inside the chroot environment. + Added a protocol extension method "posix-rename@openssh.com" for sftp-server(8) to perform POSIX atomic rename() operations; sftp(1) prefers this if available (closes: #308561). + Removed the fixed limit of 100 file handles in sftp-server(8). + ssh(8) will now skip generation of SSH protocol 1 ephemeral server keys when in inetd mode and protocol 2 connections are negotiated. This speeds up protocol 2 connections to inetd-mode servers that also allow Protocol 1. + Accept the PermitRootLogin directive in a sshd_config(5) Match block. Allows for, e.g. permitting root only from the local network. + Reworked sftp(1) argument splitting and escaping to be more internally consistent (i.e. between sftp commands) and more consistent with sh(1). Please note that this will change the interpretation of some quoted strings, especially those with embedded backslash escape sequences. + Support "Banner=none" in sshd_config(5) to disable sending of a pre-login banner (e.g. in a Match block). + ssh(1) ProxyCommands are now executed with $SHELL rather than /bin/sh. + ssh(1)'s ConnectTimeout option is now applied to both the TCP connection and the SSH banner exchange (previously it just covered the TCP connection). This allows callers of ssh(1) to better detect and deal with stuck servers that accept a TCP connection but don't progress the protocol, and also makes ConnectTimeout useful for connections via a ProxyCommand. + scp(1) incorrectly reported "stalled" on slow copies (closes: #140828). + scp(1) date underflow for timestamps before epoch. + ssh(1) used the obsolete SIG DNS RRtype for host keys in DNS, instead of the current standard RRSIG. + Correctly drain ACKs when a sftp(1) upload write fails midway, avoids a fatal() exit from what should be a recoverable condition. + Fixed ssh-keygen(1) selective host key hashing (i.e. "ssh-keygen -HF hostname") to not include any IP address in the data to be hashed. + Make ssh(1) skip listening on the IPv6 wildcard address when a binding address of 0.0.0.0 is used against an old SSH server that does not support the RFC4254 syntax for wildcard bind addresses. + Enable IPV6_V6ONLY socket option on sshd(8) listen socket, as is already done for X11/TCP forwarding sockets (closes: #439661). + Fix FD leak that could hang a ssh(1) connection multiplexing master. + Make ssh(1) -q option documentation consistent with reality. + Fixed sshd(8) PAM support not calling pam_session_close(), or failing to call it with root privileges (closes: #372680). + Fix activation of OpenSSL engine support when requested in configure (LP: #119295). - 5.1/5.1p1 (http://www.openssh.com/txt/release-5.1): + Introduce experimental SSH Fingerprint ASCII Visualisation to ssh(1) and ssh-keygen(1). Visual fingerprint display is controlled by a new ssh_config(5) option "VisualHostKey". The intent is to render SSH host keys in a visual form that is amenable to easy recall and rejection of changed host keys. + sshd_config(5) now supports CIDR address/masklen matching in "Match address" blocks, with a fallback to classic wildcard matching. + sshd(8) now supports CIDR matching in ~/.ssh/authorized_keys from="..." restrictions, also with a fallback to classic wildcard matching. + Added an extended test mode (-T) to sshd(8) to request that it write its effective configuration to stdout and exit. Extended test mode also supports the specification of connection parameters (username, source address and hostname) to test the application of sshd_config(5) Match rules. + ssh(1) now prints the number of bytes transferred and the overall connection throughput for SSH protocol 2 sessions when in verbose mode (previously these statistics were displayed for protocol 1 connections only). + sftp-server(8) now supports extension methods statvfs@openssh.com and fstatvfs@openssh.com that implement statvfs(2)-like operations. + sftp(1) now has a "df" command to the sftp client that uses the statvfs@openssh.com to produce a df(1)-like display of filesystem space and inode utilisation (requires statvfs@openssh.com support on the server). + Added a MaxSessions option to sshd_config(5) to allow control of the number of multiplexed sessions supported over a single TCP connection. This allows increasing the number of allowed sessions above the previous default of 10, disabling connection multiplexing (MaxSessions=1) or disallowing login/shell/subsystem sessions entirely (MaxSessions=0). + Added a no-more-sessions@openssh.com global request extension that is sent from ssh(1) to sshd(8) when the client knows that it will never request another session (i.e. when session multiplexing is disabled). This allows a server to disallow further session requests and terminate the session in cases where the client has been hijacked. + ssh-keygen(1) now supports the use of the -l option in combination with -F to search for a host in ~/.ssh/known_hosts and display its fingerprint. + ssh-keyscan(1) now defaults to "rsa" (protocol 2) keys, instead of "rsa1". + Added an AllowAgentForwarding option to sshd_config(8) to control whether authentication agent forwarding is permitted. Note that this is a loose control, as a client may install their own unofficial forwarder. + ssh(1) and sshd(8): avoid unnecessary malloc/copy/free when receiving network data, resulting in a ~10% speedup. + ssh(1) and sshd(8) will now try additional addresses when connecting to a port forward destination whose DNS name resolves to more than one address. The previous behaviour was to try the only first address and give up if that failed. + ssh(1) and sshd(8) now support signalling that channels are half-closed for writing, through a channel protocol extension notification "eow@openssh.com". This allows propagation of closed file descriptors, so that commands such as "ssh -2 localhost od /bin/ls | true" do not send unnecessary data over the wire. + sshd(8): increased the default size of ssh protocol 1 ephemeral keys from 768 to 1024 bits. + When ssh(1) has been requested to fork after authentication ("ssh -f") with ExitOnForwardFailure enabled, delay the fork until after replies for any -R forwards have been seen. Allows for robust detection of -R forward failure when using -f. + "Match group" blocks in sshd_config(5) now support negation of groups. E.g. "Match group staff,!guests". + sftp(1) and sftp-server(8) now allow chmod-like operations to set set[ug]id/sticky bits. + The MaxAuthTries option is now permitted in sshd_config(5) match blocks. + Multiplexed ssh(1) sessions now support a subset of the ~ escapes that are available to a primary connection. + ssh(1) connection multiplexing will now fall back to creating a new connection in most error cases (closes: #352830). + Make ssh(1) deal more gracefully with channel requests that fail. Previously it would optimistically assume that requests would always succeed, which could cause hangs if they did not (e.g. when the server runs out of file descriptors). + ssh(1) now reports multiplexing errors via the multiplex slave's stderr where possible (subject to LogLevel in the mux master). + Prevent sshd(8) from erroneously applying public key restrictions leaned from ~/.ssh/authorized_keys to other authentication methods when public key authentication subsequently fails (LP: #161047). + Fixed an UMAC alignment problem that manifested on Itanium platforms.
Diffstat (limited to 'sshd.8')
-rw-r--r--sshd.873
1 files changed, 56 insertions, 17 deletions
diff --git a/sshd.8 b/sshd.8
index b53456f1a..ae7957648 100644
--- a/sshd.8
+++ b/sshd.8
@@ -34,8 +34,8 @@
34.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 34.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
35.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 35.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
36.\" 36.\"
37.\" $OpenBSD: sshd.8,v 1.237 2007/06/07 19:37:34 pvalchev Exp $ 37.\" $OpenBSD: sshd.8,v 1.246 2008/07/02 02:24:18 djm Exp $
38.Dd $Mdocdate: August 16 2007 $ 38.Dd $Mdocdate: July 2 2008 $
39.Dt SSHD 8 39.Dt SSHD 8
40.Os 40.Os
41.Sh NAME 41.Sh NAME
@@ -44,8 +44,9 @@
44.Sh SYNOPSIS 44.Sh SYNOPSIS
45.Nm sshd 45.Nm sshd
46.Bk -words 46.Bk -words
47.Op Fl 46Ddeiqt 47.Op Fl 46DdeiqTt
48.Op Fl b Ar bits 48.Op Fl b Ar bits
49.Op Fl C Ar connection_spec
49.Op Fl f Ar config_file 50.Op Fl f Ar config_file
50.Op Fl g Ar login_grace_time 51.Op Fl g Ar login_grace_time
51.Op Fl h Ar host_key_file 52.Op Fl h Ar host_key_file
@@ -99,7 +100,25 @@ Forces
99to use IPv6 addresses only. 100to use IPv6 addresses only.
100.It Fl b Ar bits 101.It Fl b Ar bits
101Specifies the number of bits in the ephemeral protocol version 1 102Specifies the number of bits in the ephemeral protocol version 1
102server key (default 768). 103server key (default 1024).
104.It Fl C Ar connection_spec
105Specify the connection parameters to use for the
106.Fl T
107extended test mode.
108If provided, any
109.Cm Match
110directives in the configuration file
111that would apply to the specified user, host, and address will be set before
112the configuration is written to standard output.
113The connection parameters are supplied as keyword=value pairs.
114The keywords are
115.Dq user ,
116.Dq host ,
117and
118.Dq addr .
119All are required and may be supplied in any order, either with multiple
120.Fl C
121options or as a comma-separated list.
103.It Fl D 122.It Fl D
104When this option is specified, 123When this option is specified,
105.Nm 124.Nm
@@ -194,6 +213,15 @@ authentication, and termination of each connection is logged.
194If a second 213If a second
195.Fl q 214.Fl q
196is given then nothing is sent to the system log. 215is given then nothing is sent to the system log.
216.It Fl T
217Extended test mode.
218Check the validity of the configuration file, output the effective configuration
219to stdout and then exit.
220Optionally,
221.Cm Match
222rules may be applied by specifying the connection parameters using one or more
223.Fl C
224options.
197.It Fl t 225.It Fl t
198Test mode. 226Test mode.
199Only check the validity of the configuration file and sanity of the keys. 227Only check the validity of the configuration file and sanity of the keys.
@@ -506,23 +534,27 @@ This option is automatically disabled if
506.Cm UseLogin 534.Cm UseLogin
507is enabled. 535is enabled.
508.It Cm from="pattern-list" 536.It Cm from="pattern-list"
509Specifies that in addition to public key authentication, the canonical name 537Specifies that in addition to public key authentication, either the canonical
510of the remote host must be present in the comma-separated list of 538name of the remote host or its IP address must be present in the
511patterns. 539comma-separated list of patterns.
512The purpose
513of this option is to optionally increase security: public key authentication
514by itself does not trust the network or name servers or anything (but
515the key); however, if somebody somehow steals the key, the key
516permits an intruder to log in from anywhere in the world.
517This additional option makes using a stolen key more difficult (name
518servers and/or routers would have to be compromised in addition to
519just the key).
520.Pp
521See 540See
522.Sx PATTERNS 541.Sx PATTERNS
523in 542in
524.Xr ssh_config 5 543.Xr ssh_config 5
525for more information on patterns. 544for more information on patterns.
545.Pp
546In addition to the wildcard matching that may be applied to hostnames or
547addresses, a
548.Cm from
549stanza may match IP addressess using CIDR address/masklen notation.
550.Pp
551The purpose of this option is to optionally increase security: public key
552authentication by itself does not trust the network or name servers or
553anything (but the key); however, if somebody somehow steals the key, the key
554permits an intruder to log in from anywhere in the world.
555This additional option makes using a stolen key more difficult (name
556servers and/or routers would have to be compromised in addition to
557just the key).
526.It Cm no-agent-forwarding 558.It Cm no-agent-forwarding
527Forbids authentication agent forwarding when this key is used for 559Forbids authentication agent forwarding when this key is used for
528authentication. 560authentication.
@@ -535,7 +567,7 @@ option.
535.It Cm no-pty 567.It Cm no-pty
536Prevents tty allocation (a request to allocate a pty will fail). 568Prevents tty allocation (a request to allocate a pty will fail).
537.It Cm no-user-rc 569.It Cm no-user-rc
538Disables execution of 570Disables execution of
539.Pa ~/.ssh/rc . 571.Pa ~/.ssh/rc .
540.It Cm no-X11-forwarding 572.It Cm no-X11-forwarding
541Forbids X11 forwarding when this key is used for authentication. 573Forbids X11 forwarding when this key is used for authentication.
@@ -688,6 +720,13 @@ This file is used in exactly the same way as
688but allows host-based authentication without permitting login with 720but allows host-based authentication without permitting login with
689rlogin/rsh. 721rlogin/rsh.
690.Pp 722.Pp
723.It ~/.ssh/
724This directory is the default location for all user-specific configuration
725and authentication information.
726There is no general requirement to keep the entire contents of this directory
727secret, but the recommended permissions are read/write/execute for the user,
728and not accessible by others.
729.Pp
691.It ~/.ssh/authorized_keys 730.It ~/.ssh/authorized_keys
692Lists the public keys (RSA/DSA) that can be used for logging in as this user. 731Lists the public keys (RSA/DSA) that can be used for logging in as this user.
693The format of this file is described above. 732The format of this file is described above.