Initial import from FreeBSD RELENG_4:
[dragonfly.git] / libexec / rlogind / rlogind.8
1 .\" Copyright (c) 1983, 1989, 1991, 1993
2 .\"     The Regents of the University of California.  All rights reserved.
3 .\"
4 .\" Redistribution and use in source and binary forms, with or without
5 .\" modification, are permitted provided that the following conditions
6 .\" are met:
7 .\" 1. Redistributions of source code must retain the above copyright
8 .\"    notice, this list of conditions and the following disclaimer.
9 .\" 2. Redistributions in binary form must reproduce the above copyright
10 .\"    notice, this list of conditions and the following disclaimer in the
11 .\"    documentation and/or other materials provided with the distribution.
12 .\" 3. All advertising materials mentioning features or use of this software
13 .\"    must display the following acknowledgement:
14 .\"     This product includes software developed by the University of
15 .\"     California, Berkeley and its contributors.
16 .\" 4. Neither the name of the University nor the names of its contributors
17 .\"    may be used to endorse or promote products derived from this software
18 .\"    without specific prior written permission.
19 .\"
20 .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
21 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
24 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
26 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30 .\" SUCH DAMAGE.
31 .\"
32 .\"     @(#)rlogind.8   8.1 (Berkeley) 6/4/93
33 .\" $FreeBSD: src/libexec/rlogind/rlogind.8,v 1.13.2.4 2001/08/16 10:44:17 ru Exp $
34 .\"
35 .Dd June 4, 1993
36 .Dt RLOGIND 8
37 .Os
38 .Sh NAME
39 .Nm rlogind
40 .Nd remote login server
41 .Sh SYNOPSIS
42 .Nm
43 .Op Fl Daln
44 .Sh DESCRIPTION
45 .Nm Rlogind
46 is the server for the
47 .Xr rlogin 1
48 program.  The server provides a remote login facility
49 with authentication based on privileged port numbers from trusted hosts.
50 .Pp
51 Options supported by
52 .Nm :
53 .Bl -tag -width indent
54 .It Fl D
55 Set TCP_NODELAY socket option. This improves responsiveness at the expense of
56 some additional network traffic.
57 .It Fl a
58 Ask hostname for verification.
59 .It Fl l
60 Prevent any authentication based on the user's
61 .Dq Pa .rhosts
62 file, unless the user is logging in as the superuser.
63 .It Fl n
64 Disable keep-alive messages.
65 .El
66 .Pp
67 The following options are valid only if Kerberos is in use:
68 .Bl -tag -width indent
69 .It Fl k
70 Enable Kerberos authentication.
71 .It Fl v
72 Enable vacuous mode.
73 .It Fl x
74 Enable
75 .Tn DES
76 encryption for all data passed via the rlogin
77 session.  This may impact response time
78 and
79 .Tn CPU
80 utilization, but provides increased security.
81 .El
82 .Pp
83 .Nm Rlogind
84 listens for service requests at the port indicated in
85 the
86 .Dq login
87 service specification; see
88 .Xr services 5 .
89 When a service request is received the following protocol
90 is initiated:
91 .Bl -enum
92 .It
93 The server checks the client's source port.
94 If the port is not in the range 512-1023, the server
95 aborts the connection.
96 .It
97 The server checks the client's source address
98 and requests the corresponding host name (see
99 .Xr gethostbyaddr 3 ,
100 .Xr hosts 5
101 and
102 .Xr named 8 ) .
103 If the hostname cannot be determined,
104 the dot-notation representation of the host address is used.
105 If the hostname is in the same domain as the server (according to
106 the last two components of the domain name),
107 or if the
108 .Fl a
109 option is given,
110 the addresses for the hostname are requested,
111 verifying that the name and address correspond.
112 Normal authentication is bypassed if the address verification fails.
113 .El
114 .Pp
115 Once the source port and address have been checked,
116 .Nm
117 proceeds with the authentication process described in
118 .Xr rshd 8 .
119 It then allocates a pseudo terminal (see
120 .Xr pty 4 ) ,
121 and manipulates file descriptors so that the slave
122 half of the pseudo terminal becomes the
123 .Em stdin ,
124 .Em stdout ,
125 and
126 .Em stderr
127 for a login process.
128 The login process is an instance of the
129 .Xr login 1
130 program, invoked with the
131 .Fl f
132 option if authentication has succeeded.
133 If automatic authentication fails, the user is
134 prompted to log in as if on a standard terminal line.
135 .Pp
136 The parent of the login process manipulates the master side of
137 the pseudo terminal, operating as an intermediary
138 between the login process and the client instance of the
139 .Xr rlogin 1
140 program.  In normal operation, the packet protocol described
141 in
142 .Xr pty 4
143 is invoked to provide
144 .Ql ^S/^Q
145 type facilities and propagate
146 interrupt signals to the remote programs.  The login process
147 propagates the client terminal's baud rate and terminal type,
148 as found in the environment variable,
149 .Ql Ev TERM ;
150 see
151 .Xr environ 7 .
152 The screen or window size of the terminal is requested from the client,
153 and window size changes from the client are propagated to the pseudo terminal.
154 .Pp
155 Transport-level keepalive messages are enabled unless the
156 .Fl n
157 option is present.
158 The use of keepalive messages allows sessions to be timed out
159 if the client crashes or becomes unreachable.
160 .Sh DIAGNOSTICS
161 All initial diagnostic messages are indicated
162 by a leading byte with a value of 1,
163 after which any network connections are closed.
164 If there are no errors before
165 .Xr login 1
166 is invoked, a null byte is returned as in indication of success.
167 .Bl -tag -width Ds
168 .It Sy Try again.
169 A
170 .Xr fork 2
171 by the server failed.
172 .El
173 .Sh SEE ALSO
174 .Xr login 1 ,
175 .Xr ruserok 3 ,
176 .Xr hosts 5 ,
177 .Xr hosts.equiv 5 ,
178 .Xr login.conf 5 ,
179 .Xr nologin 5 ,
180 .Xr services 5 ,
181 .Xr rshd 8
182 .Sh FILES
183 .Bl -tag -width /etc/hostsxxxxxxxx -compact
184 .It Pa /etc/hosts
185 .It Pa /etc/hosts.equiv
186 .It Ev $HOME Ns Pa /.rhosts
187 .It Pa /var/run/nologin
188 .El
189 .Sh BUGS
190 The authentication procedure used here assumes the integrity
191 of each client machine and the connecting medium.  This is
192 insecure, but is useful in an
193 .Dq open
194 environment.
195 .Pp
196 A facility to allow all data exchanges to be encrypted should be
197 present.
198 .Pp
199 A more extensible protocol should be used.
200 .Sh HISTORY
201 The
202 .Nm
203 command appeared in
204 .Bx 4.2 .
205 .Pp
206 IPv6 support was added by WIDE/KAME project.