]> andersk Git - openssh.git/blame - sshd.8
- Better tests for OpenSSL w/ RSAref
[openssh.git] / sshd.8
CommitLineData
bf740959 1.\" -*- nroff -*-
2.\"
3.\" sshd.8.in
4.\"
5.\" Author: Tatu Ylonen <ylo@cs.hut.fi>
6.\"
7.\" Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
8.\" All rights reserved
9.\"
10.\" Created: Sat Apr 22 21:55:14 1995 ylo
11.\"
12.\" $Id$
13.\"
14.Dd September 25, 1999
15.Dt SSHD 8
16.Os
17.Sh NAME
18.Nm sshd
19.Nd secure shell daemon
20.Sh SYNOPSIS
21.Nm sshd
48e671d5 22.Op Fl diqQ46
bf740959 23.Op Fl b Ar bits
24.Op Fl f Ar config_file
25.Op Fl g Ar login_grace_time
26.Op Fl h Ar host_key_file
27.Op Fl k Ar key_gen_time
28.Op Fl p Ar port
5260325f 29.Op Fl V Ar client_protocol_id
bf740959 30.Sh DESCRIPTION
31.Nm
32(Secure Shell Daemon) is the daemon program for
33.Xr ssh 1 .
34Together these programs replace rlogin and rsh programs, and
35provide secure encrypted communications between two untrusted hosts
36over an insecure network. The programs are intended to be as easy to
37install and use as possible.
38.Pp
39.Nm
40is the daemon that listens for connections from clients. It is
41normally started at boot from
42.Pa /etc/rc .
43It forks a new
44daemon for each incoming connection. The forked daemons handle
45key exchange, encryption, authentication, command execution,
46and data exchange.
47.Pp
48.Nm
49works as follows. Each host has a host-specific RSA key
50(normally 1024 bits) used to identify the host. Additionally, when
51the daemon starts, it generates a server RSA key (normally 768 bits).
52This key is normally regenerated every hour if it has been used, and
53is never stored on disk.
54.Pp
55Whenever a client connects the daemon, the daemon sends its host
56and server public keys to the client. The client compares the
57host key against its own database to verify that it has not changed.
58The client then generates a 256 bit random number. It encrypts this
59random number using both the host key and the server key, and sends
60the encrypted number to the server. Both sides then start to use this
61random number as a session key which is used to encrypt all further
62communications in the session. The rest of the session is encrypted
63using a conventional cipher, currently Blowfish and 3DES, with 3DES
64being is used by default. The client selects the encryption algorithm
65to use from those offered by the server.
66.Pp
67Next, the server and the client enter an authentication dialog. The
68client tries to authenticate itself using
69.Pa .rhosts
70authentication,
71.Pa .rhosts
72authentication combined with RSA host
73authentication, RSA challenge-response authentication, or password
74based authentication.
75.Pp
76Rhosts authentication is normally disabled
77because it is fundamentally insecure, but can be enabled in the server
78configuration file if desired. System security is not improved unless
79.Xr rshd 8 ,
80.Xr rlogind 8 ,
81.Xr rexecd 8 ,
82and
83.Xr rexd 8
84are disabled (thus completely disabling
85.Xr rlogin 1
86and
87.Xr rsh 1
88into that machine).
89.Pp
90If the client successfully authenticates itself, a dialog for
91preparing the session is entered. At this time the client may request
92things like allocating a pseudo-tty, forwarding X11 connections,
93forwarding TCP/IP connections, or forwarding the authentication agent
94connection over the secure channel.
95.Pp
96Finally, the client either requests a shell or execution of a command.
97The sides then enter session mode. In this mode, either side may send
98data at any time, and such data is forwarded to/from the shell or
99command on the server side, and the user terminal in the client side.
100.Pp
101When the user program terminates and all forwarded X11 and other
102connections have been closed, the server sends command exit status to
103the client, and both sides exit.
104.Pp
105.Nm
106can be configured using command-line options or a configuration
107file. Command-line options override values specified in the
108configuration file.
109.Pp
9d6b7add 110.Nm
111rereads its configuration file when it receives a hangup signal,
112.Dv SIGHUP .
113.Pp
bf740959 114The options are as follows:
115.Bl -tag -width Ds
116.It Fl b Ar bits
117Specifies the number of bits in the server key (default 768).
118.Pp
119.It Fl d
120Debug mode. The server sends verbose debug output to the system
121log, and does not put itself in the background. The server also will
122not fork and will only process one connection. This option is only
123intended for debugging for the server.
124.It Fl f Ar configuration_file
125Specifies the name of the configuration file. The default is
5f4fdfae 126.Pa /etc/sshd_config .
bf740959 127.Nm
128refuses to start if there is no configuration file.
129.It Fl g Ar login_grace_time
130Gives the grace time for clients to authenticate themselves (default
131300 seconds). If the client fails to authenticate the user within
132this many seconds, the server disconnects and exits. A value of zero
133indicates no limit.
134.It Fl h Ar host_key_file
135Specifies the file from which the host key is read (default
5f4fdfae 136.Pa /etc/ssh_host_key ) .
bf740959 137This option must be given if
138.Nm
139is not run as root (as the normal
140host file is normally not readable by anyone but root).
141.It Fl i
142Specifies that
143.Nm
144is being run from inetd.
145.Nm
146is normally not run
147from inetd because it needs to generate the server key before it can
148respond to the client, and this may take tens of seconds. Clients
149would have to wait too long if the key was regenerated every time.
610cd5c6 150However, with small key sizes (e.g., 512) using
bf740959 151.Nm
152from inetd may
153be feasible.
154.It Fl k Ar key_gen_time
155Specifies how often the server key is regenerated (default 3600
156seconds, or one hour). The motivation for regenerating the key fairly
157often is that the key is not stored anywhere, and after about an hour,
158it becomes impossible to recover the key for decrypting intercepted
159communications even if the machine is cracked into or physically
160seized. A value of zero indicates that the key will never be regenerated.
161.It Fl p Ar port
162Specifies the port on which the server listens for connections
163(default 22).
164.It Fl q
165Quiet mode. Nothing is sent to the system log. Normally the beginning,
166authentication, and termination of each connection is logged.
167.It Fl Q
168Do not print an error message if RSA support is missing.
5260325f 169.It Fl V Ar client_protocol_id
170SSH2 compatibility mode.
171When this options is specified
172.Nm
173assumes the client has sent the given version string
174and skips the
175Protocol Version Identification Exchange.
48e671d5 176.It Fl 4
177Forces
178.Nm
179to use IPv4 addresses only.
180.It Fl 6
181Forces
182.Nm
183to use IPv6 addresses only.
bf740959 184.El
185.Sh CONFIGURATION FILE
186.Nm
187reads configuration data from
5f4fdfae 188.Pa /etc/sshd_config
bf740959 189(or the file specified with
190.Fl f
191on the command line). The file
192contains keyword-value pairs, one per line. Lines starting with
193.Ql #
194and empty lines are interpreted as comments.
195.Pp
196The following keywords are possible.
197.Bl -tag -width Ds
198.It Cm AFSTokenPassing
199Specifies whether an AFS token may be forwarded to the server. Default is
200.Dq yes .
201.It Cm AllowGroups
202This keyword can be followed by a number of group names, separated
203by spaces. If specified, login is allowed only for users whose primary
204group matches one of the patterns.
205.Ql \&*
206and
207.Ql ?
208can be used as
209wildcards in the patterns. Only group names are valid, a numerical group
210id isn't recognized. By default login is allowed regardless of
211the primary group.
212.Pp
213.It Cm AllowUsers
214This keyword can be followed by a number of user names, separated
215by spaces. If specified, login is allowed only for users names that
216match one of the patterns.
217.Ql \&*
218and
219.Ql ?
220can be used as
221wildcards in the patterns. Only user names are valid, a numerical user
222id isn't recognized. By default login is allowed regardless of
223the user name.
224.Pp
225.It Cm CheckMail
226Specifies whether
227.Nm
228should check for new mail for interactive logins.
229The default is
230.Dq no .
231.It Cm DenyGroups
232This keyword can be followed by a number of group names, separated
233by spaces. Users whose primary group matches one of the patterns
234aren't allowed to log in.
235.Ql \&*
236and
237.Ql ?
238can be used as
239wildcards in the patterns. Only group names are valid, a numerical group
240id isn't recognized. By default login is allowed regardless of
241the primary group.
242.Pp
243.It Cm DenyUsers
244This keyword can be followed by a number of user names, separated
7b2ea3a1 245by spaces. Login is disallowed for user names that match
bf740959 246one of the patterns.
247.Ql \&*
248and
249.Ql ?
250can be used as
251wildcards in the patterns. Only user names are valid, a numerical user
252id isn't recognized. By default login is allowed regardless of
253the user name.
bf740959 254.It Cm HostKey
255Specifies the file containing the private host key (default
5f4fdfae 256.Pa /etc/ssh_host_key ) .
bf740959 257Note that
258.Nm
259does not start if this file is group/world-accessible.
260.It Cm IgnoreRhosts
c8d54615 261Specifies that
262.Pa .rhosts
263and
264.Pa .shosts
265files will not be used in authentication.
bf740959 266.Pa /etc/hosts.equiv
267and
5f4fdfae 268.Pa /etc/shosts.equiv
bf740959 269are still used. The default is
c8d54615 270.Dq yes .
b4748e2f 271.It Cm IgnoreUserKnownHosts
272Specifies whether
273.Nm
274should ignore the user's
275.Pa $HOME/.ssh/known_hosts
276during
277.Cm RhostsRSAAuthentication .
278The default is
279.Dq no .
bf740959 280.It Cm KeepAlive
281Specifies whether the system should send keepalive messages to the
282other side. If they are sent, death of the connection or crash of one
283of the machines will be properly noticed. However, this means that
284connections will die if the route is down temporarily, and some people
285find it annoying. On the other hand, if keepalives are not send,
286sessions may hang indefinitely on the server, leaving
287.Dq ghost
288users and consuming server resources.
289.Pp
290The default is
291.Dq yes
292(to send keepalives), and the server will notice
293if the network goes down or the client host reboots. This avoids
294infinitely hanging sessions.
295.Pp
296To disable keepalives, the value should be set to
297.Dq no
298in both the server and the client configuration files.
299.It Cm KerberosAuthentication
300Specifies whether Kerberos authentication is allowed. This can
301be in the form of a Kerberos ticket, or if
302.Cm PasswordAuthentication
303is yes, the password provided by the user will be validated through
304the Kerberos KDC. Default is
305.Dq yes .
306.It Cm KerberosOrLocalPasswd
307If set then if password authentication through Kerberos fails then
308the password will be validated via any additional local mechanism
309such as
310.Pa /etc/passwd
311or SecurID. Default is
312.Dq yes .
313.It Cm KerberosTgtPassing
314Specifies whether a Kerberos TGT may be forwarded to the server.
315Default is
316.Dq no ,
317as this only works when the Kerberos KDC is actually an AFS kaserver.
318.It Cm KerberosTicketCleanup
319Specifies whether to automatically destroy the user's ticket cache
320file on logout. Default is
321.Dq yes .
322.It Cm KeyRegenerationInterval
323The server key is automatically regenerated after this many seconds
324(if it has been used). The purpose of regeneration is to prevent
325decrypting captured sessions by later breaking into the machine and
326stealing the keys. The key is never stored anywhere. If the value is
3270, the key is never regenerated. The default is 3600
328(seconds).
329.It Cm ListenAddress
330Specifies what local address
331.Nm
332should listen on.
333The default is to listen to all local addresses.
48e671d5 334Multiple options of this type are permitted.
335Additionally, the
336.Cm Ports
337options must precede this option.
bf740959 338.It Cm LoginGraceTime
339The server disconnects after this time if the user has not
340successfully logged in. If the value is 0, there is no time limit.
341The default is 600 (seconds).
6a17f9c2 342.It Cm LogLevel
343Gives the verbosity level that is used when logging messages from
344.Nm sshd .
345The possible values are:
5260325f 346QUIET, FATAL, ERROR, INFO, VERBOSE and DEBUG.
6a17f9c2 347The default is INFO.
348Logging with level DEBUG violates the privacy of users
349and is not recommended.
bf740959 350.It Cm PasswordAuthentication
351Specifies whether password authentication is allowed.
352The default is
353.Dq yes .
354.It Cm PermitEmptyPasswords
355When password authentication is allowed, it specifies whether the
356server allows login to accounts with empty password strings. The default
357is
c8d54615 358.Dq no .
bf740959 359.It Cm PermitRootLogin
360Specifies whether the root can log in using
361.Xr ssh 1 .
362The argument must be
363.Dq yes ,
364.Dq without-password
365or
366.Dq no .
367The default is
368.Dq yes .
369If this options is set to
370.Dq without-password
371only password authentication is disabled for root.
372.Pp
373Root login with RSA authentication when the
374.Ar command
375option has been
376specified will be allowed regardless of the value of this setting
377(which may be useful for taking remote backups even if root login is
378normally not allowed).
379.It Cm Port
380Specifies the port number that
381.Nm
382listens on. The default is 22.
48e671d5 383Multiple options of this type are permitted.
bf740959 384.It Cm PrintMotd
385Specifies whether
386.Nm
387should print
388.Pa /etc/motd
389when a user logs in interactively. (On some systems it is also
390printed by the shell,
391.Pa /etc/profile ,
392or equivalent.) The default is
393.Dq yes .
bf740959 394.It Cm RandomSeed
395Obsolete. Random number generation uses other techniques.
396.It Cm RhostsAuthentication
397Specifies whether authentication using rhosts or /etc/hosts.equiv
398files is sufficient. Normally, this method should not be permitted
399because it is insecure.
400.Cm RhostsRSAAuthentication
401should be used
402instead, because it performs RSA-based host authentication in addition
403to normal rhosts or /etc/hosts.equiv authentication.
404The default is
405.Dq no .
406.It Cm RhostsRSAAuthentication
407Specifies whether rhosts or /etc/hosts.equiv authentication together
408with successful RSA host authentication is allowed. The default is
c8d54615 409.Dq no .
bf740959 410.It Cm RSAAuthentication
411Specifies whether pure RSA authentication is allowed. The default is
412.Dq yes .
413.It Cm ServerKeyBits
414Defines the number of bits in the server key. The minimum value is
415512, and the default is 768.
416.It Cm SkeyAuthentication
417Specifies whether
418.Xr skey 1
419authentication is allowed. The default is
420.Dq yes .
421Note that s/key authentication is enabled only if
422.Cm PasswordAuthentication
423is allowed, too.
424.It Cm StrictModes
425Specifies whether
426.Nm
427should check file modes and ownership of the
428user's files and home directory before accepting login. This
429is normally desirable because novices sometimes accidentally leave their
430directory or files world-writable. The default is
431.Dq yes .
432.It Cm SyslogFacility
433Gives the facility code that is used when logging messages from
434.Nm sshd .
435The possible values are: DAEMON, USER, AUTH, LOCAL0, LOCAL1, LOCAL2,
436LOCAL3, LOCAL4, LOCAL5, LOCAL6, LOCAL7. The default is AUTH.
437.It Cm UseLogin
438Specifies whether
439.Xr login 1
440is used. The default is
441.Dq no .
bf740959 442.It Cm X11DisplayOffset
443Specifies the first display number available for
444.Nm sshd Ns 's
445X11 forwarding. This prevents
446.Nm
447from interfering with real X11 servers.
c8d54615 448The default is 10.
7b2ea3a1 449.It Cm X11Forwarding
450Specifies whether X11 forwarding is permitted. The default is
c8d54615 451.Dq no .
7b2ea3a1 452Note that disabling X11 forwarding does not improve security in any
453way, as users can always install their own forwarders.
bf740959 454.El
455.Sh LOGIN PROCESS
456When a user successfully logs in,
457.Nm
458does the following:
459.Bl -enum -offset indent
460.It
461If the login is on a tty, and no command has been specified,
462prints last login time and
463.Pa /etc/motd
464(unless prevented in the configuration file or by
465.Pa $HOME/.hushlogin ;
466see the
467.Sx FILES
468section).
469.It
470If the login is on a tty, records login time.
471.It
472Checks
473.Pa /etc/nologin ;
474if it exists, prints contents and quits
475(unless root).
476.It
477Changes to run with normal user privileges.
478.It
479Sets up basic environment.
480.It
481Reads
482.Pa $HOME/.ssh/environment
483if it exists.
484.It
485Changes to user's home directory.
486.It
487If
488.Pa $HOME/.ssh/rc
489exists, runs it; else if
5f4fdfae 490.Pa /etc/sshrc
bf740959 491exists, runs
492it; otherwise runs xauth. The
493.Dq rc
494files are given the X11
495authentication protocol and cookie in standard input.
496.It
497Runs user's shell or command.
498.El
499.Sh AUTHORIZED_KEYS FILE FORMAT
500The
501.Pa $HOME/.ssh/authorized_keys
502file lists the RSA keys that are
503permitted for RSA authentication. Each line of the file contains one
504key (empty lines and lines starting with a
505.Ql #
506are ignored as
507comments). Each line consists of the following fields, separated by
508spaces: options, bits, exponent, modulus, comment. The options field
509is optional; its presence is determined by whether the line starts
510with a number or not (the option field never starts with a number).
511The bits, exponent, modulus and comment fields give the RSA key; the
512comment field is not used for anything (but may be convenient for the
513user to identify the key).
514.Pp
515Note that lines in this file are usually several hundred bytes long
516(because of the size of the RSA key modulus). You don't want to type
517them in; instead, copy the
518.Pa identity.pub
519file and edit it.
520.Pp
521The options (if present) consists of comma-separated option
522specifications. No spaces are permitted, except within double quotes.
523The following option specifications are supported:
524.Bl -tag -width Ds
525.It Cm from="pattern-list"
526Specifies that in addition to RSA authentication, the canonical name
527of the remote host must be present in the comma-separated list of
528patterns ('*' and '?' serve as wildcards). The list may also contain
529patterns negated by prefixing them with '!'; if the canonical host
530name matches a negated pattern, the key is not accepted. The purpose
531of this option is to optionally increase security: RSA authentication
532by itself does not trust the network or name servers or anything (but
533the key); however, if somebody somehow steals the key, the key
534permits an intruder to log in from anywhere in the world. This
535additional option makes using a stolen key more difficult (name
536servers and/or routers would have to be compromised in addition to
537just the key).
538.It Cm command="command"
539Specifies that the command is executed whenever this key is used for
540authentication. The command supplied by the user (if any) is ignored.
541The command is run on a pty if the connection requests a pty;
542otherwise it is run without a tty. A quote may be included in the
543command by quoting it with a backslash. This option might be useful
544to restrict certain RSA keys to perform just a specific operation. An
545example might be a key that permits remote backups but nothing
546else. Notice that the client may specify TCP/IP and/or X11
547forwardings unless they are explicitly prohibited.
548.It Cm environment="NAME=value"
549Specifies that the string is to be added to the environment when
550logging in using this key. Environment variables set this way
551override other default environment values. Multiple options of this
552type are permitted.
553.It Cm no-port-forwarding
554Forbids TCP/IP forwarding when this key is used for authentication.
555Any port forward requests by the client will return an error. This
556might be used, e.g., in connection with the
557.Cm command
558option.
559.It Cm no-X11-forwarding
560Forbids X11 forwarding when this key is used for authentication.
561Any X11 forward requests by the client will return an error.
562.It Cm no-agent-forwarding
563Forbids authentication agent forwarding when this key is used for
564authentication.
565.It Cm no-pty
566Prevents tty allocation (a request to allocate a pty will fail).
567.El
568.Ss Examples
5691024 33 12121.\|.\|.\|312314325 ylo@foo.bar
570.Pp
571from="*.niksula.hut.fi,!pc.niksula.hut.fi" 1024 35 23.\|.\|.\|2334 ylo@niksula
572.Pp
573command="dump /home",no-pty,no-port-forwarding 1024 33 23.\|.\|.\|2323 backup.hut.fi
574.Sh SSH_KNOWN_HOSTS FILE FORMAT
575The
5f4fdfae 576.Pa /etc/ssh_known_hosts
bf740959 577and
578.Pa $HOME/.ssh/known_hosts
579files contain host public keys for all known hosts. The global file should
580be prepared by the admistrator (optional), and the per-user file is
581maintained automatically: whenever the user connects an unknown host
582its key is added to the per-user file.
583.Pp
584Each line in these files contains the following fields: hostnames,
585bits, exponent, modulus, comment. The fields are separated by spaces.
586.Pp
587Hostnames is a comma-separated list of patterns ('*' and '?' act as
588wildcards); each pattern in turn is matched against the canonical host
589name (when authenticating a client) or against the user-supplied
590name (when authenticating a server). A pattern may also be preceded
591by
592.Ql !
593to indicate negation: if the host name matches a negated
594pattern, it is not accepted (by that line) even if it matched another
595pattern on the line.
596.Pp
597Bits, exponent, and modulus are taken directly from the host key; they
598can be obtained, e.g., from
5f4fdfae 599.Pa /etc/ssh_host_key.pub .
bf740959 600The optional comment field continues to the end of the line, and is not used.
601.Pp
602Lines starting with
603.Ql #
604and empty lines are ignored as comments.
605.Pp
606When performing host authentication, authentication is accepted if any
607matching line has the proper key. It is thus permissible (but not
608recommended) to have several lines or different host keys for the same
609names. This will inevitably happen when short forms of host names
610from different domains are put in the file. It is possible
611that the files contain conflicting information; authentication is
612accepted if valid information can be found from either file.
613.Pp
614Note that the lines in these files are typically hundreds of characters
615long, and you definitely don't want to type in the host keys by hand.
616Rather, generate them by a script
617or by taking
5f4fdfae 618.Pa /etc/ssh_host_key.pub
bf740959 619and adding the host names at the front.
620.Ss Examples
621closenet,closenet.hut.fi,.\|.\|.\|,130.233.208.41 1024 37 159.\|.\|.93 closenet.hut.fi
622.Sh FILES
623.Bl -tag -width Ds
5f4fdfae 624.It Pa /etc/sshd_config
bf740959 625Contains configuration data for
626.Nm sshd .
627This file should be writable by root only, but it is recommended
628(though not necessary) that it be world-readable.
5f4fdfae 629.It Pa /etc/ssh_host_key
bf740959 630Contains the private part of the host key.
631This file should only be owned by root, readable only by root, and not
632accessible to others.
633Note that
634.Nm
635does not start if this file is group/world-accessible.
5f4fdfae 636.It Pa /etc/ssh_host_key.pub
bf740959 637Contains the public part of the host key.
638This file should be world-readable but writable only by
639root. Its contents should match the private part. This file is not
640really used for anything; it is only provided for the convenience of
641the user so its contents can be copied to known hosts files.
642These two files are created using
643.Xr ssh-keygen 1 .
5f4fdfae 644.It Pa /var/run/sshd.pid
bf740959 645Contains the process ID of the
646.Nm
647listening for connections (if there are several daemons running
648concurrently for different ports, this contains the pid of the one
649started last). The contents of this file are not sensitive; it can be
650world-readable.
651.It Pa $HOME/.ssh/authorized_keys
652Lists the RSA keys that can be used to log into the user's account.
653This file must be readable by root (which may on some machines imply
654it being world-readable if the user's home directory resides on an NFS
655volume). It is recommended that it not be accessible by others. The
656format of this file is described above.
5f4fdfae 657.It Pa "/etc/ssh_known_hosts" and "$HOME/.ssh/known_hosts"
6a17f9c2 658These files are consulted when using rhosts with RSA host
bf740959 659authentication to check the public key of the host. The key must be
5bbb5681 660listed in one of these files to be accepted.
661The client uses the same files
bf740959 662to verify that the remote host is the one we intended to
663connect. These files should be writable only by root/the owner.
5f4fdfae 664.Pa /etc/ssh_known_hosts
bf740959 665should be world-readable, and
666.Pa $HOME/.ssh/known_hosts
667can but need not be world-readable.
668.It Pa /etc/nologin
669If this file exists,
670.Nm
671refuses to let anyone except root log in. The contents of the file
672are displayed to anyone trying to log in, and non-root connections are
673refused. The file should be world-readable.
674.It Pa /etc/hosts.allow, /etc/hosts.deny
675If compiled with
676.Sy LIBWRAP
677support, tcp-wrappers access controls may be defined here as described in
678.Xr hosts_access 5 .
679.It Pa $HOME/.rhosts
680This file contains host-username pairs, separated by a space, one per
681line. The given user on the corresponding host is permitted to log in
682without password. The same file is used by rlogind and rshd.
683The file must
684be writable only by the user; it is recommended that it not be
685accessible by others.
686.Pp
687If is also possible to use netgroups in the file. Either host or user
688name may be of the form +@groupname to specify all hosts or all users
689in the group.
690.It Pa $HOME/.shosts
691For ssh,
692this file is exactly the same as for
693.Pa .rhosts .
694However, this file is
695not used by rlogin and rshd, so using this permits access using SSH only.
696.Pa /etc/hosts.equiv
697This file is used during
698.Pa .rhosts
699authentication. In the
700simplest form, this file contains host names, one per line. Users on
701those hosts are permitted to log in without a password, provided they
702have the same user name on both machines. The host name may also be
703followed by a user name; such users are permitted to log in as
704.Em any
705user on this machine (except root). Additionally, the syntax
706.Dq +@group
707can be used to specify netgroups. Negated entries start with
708.Ql \&- .
709.Pp
710If the client host/user is successfully matched in this file, login is
711automatically permitted provided the client and server user names are the
712same. Additionally, successful RSA host authentication is normally
713required. This file must be writable only by root; it is recommended
714that it be world-readable.
715.Pp
716.Sy "Warning: It is almost never a good idea to use user names in"
717.Pa hosts.equiv .
718Beware that it really means that the named user(s) can log in as
719.Em anybody ,
720which includes bin, daemon, adm, and other accounts that own critical
721binaries and directories. Using a user name practically grants the
722user root access. The only valid use for user names that I can think
723of is in negative entries.
724.Pp
725Note that this warning also applies to rsh/rlogin.
5f4fdfae 726.It Pa /etc/shosts.equiv
bf740959 727This is processed exactly as
728.Pa /etc/hosts.equiv .
729However, this file may be useful in environments that want to run both
730rsh/rlogin and ssh.
731.It Pa $HOME/.ssh/environment
732This file is read into the environment at login (if it exists). It
733can only contain empty lines, comment lines (that start with
734.Ql # ) ,
735and assignment lines of the form name=value. The file should be writable
736only by the user; it need not be readable by anyone else.
737.It Pa $HOME/.ssh/rc
738If this file exists, it is run with /bin/sh after reading the
739environment files but before starting the user's shell or command. If
740X11 spoofing is in use, this will receive the "proto cookie" pair in
741standard input (and
742.Ev DISPLAY
743in environment). This must call
744.Xr xauth 1
745in that case.
746.Pp
747The primary purpose of this file is to run any initialization routines
748which may be needed before the user's home directory becomes
749accessible; AFS is a particular example of such an environment.
750.Pp
751This file will probably contain some initialization code followed by
752something similar to: "if read proto cookie; then echo add $DISPLAY
753$proto $cookie | xauth -q -; fi".
754.Pp
755If this file does not exist,
5f4fdfae 756.Pa /etc/sshrc
bf740959 757is run, and if that
758does not exist either, xauth is used to store the cookie.
759.Pp
760This file should be writable only by the user, and need not be
761readable by anyone else.
5f4fdfae 762.It Pa /etc/sshrc
bf740959 763Like
764.Pa $HOME/.ssh/rc .
765This can be used to specify
766machine-specific login-time initializations globally. This file
767should be writable only by root, and should be world-readable.
768.Sh AUTHOR
bf740959 769OpenSSH
c8d54615 770is a derivative of the original (free) ssh 1.2.12 release by Tatu Ylonen,
771but with bugs removed and newer features re-added. Rapidly after the
7721.2.12 release, newer versions of the original ssh bore successively
773more restrictive licenses, and thus demand for a free version was born.
774This version of OpenSSH
bf740959 775.Bl -bullet
776.It
399d9d44 777has all components of a restrictive nature (i.e., patents, see
bf740959 778.Xr ssl 8 )
779directly removed from the source code; any licensed or patented components
780are chosen from
781external libraries.
782.It
c8d54615 783has been updated to support ssh protocol 1.5, making it compatible with
784all other ssh protocol 1 clients and servers.
bf740959 785.It
786contains added support for
787.Xr kerberos 8
788authentication and ticket passing.
789.It
790supports one-time password authentication with
791.Xr skey 1 .
792.El
793.Pp
794The libraries described in
795.Xr ssl 8
796are required for proper operation.
797.Sh SEE ALSO
798.Xr rlogin 1 ,
799.Xr rsh 1 ,
800.Xr scp 1 ,
801.Xr ssh 1 ,
802.Xr ssh-add 1 ,
803.Xr ssh-agent 1 ,
804.Xr ssh-keygen 1 ,
805.Xr ssl 8
This page took 0.346897 seconds and 5 git commands to generate.