|
|
1.1 root 1: .\" Copyright (c) 1983 The Regents of the University of California.
2: .\" All rights reserved.
3: .\"
4: .\" Redistribution and use in source and binary forms are permitted provided
5: .\" that: (1) source distributions retain this entire copyright notice and
6: .\" comment, and (2) distributions including binaries display the following
7: .\" acknowledgement: ``This product includes software developed by the
8: .\" University of California, Berkeley and its contributors'' in the
9: .\" documentation or other materials provided with the distribution and in
10: .\" all advertising materials mentioning features or use of this software.
11: .\" Neither the name of the University nor the names of its contributors may
12: .\" be used to endorse or promote products derived from this software without
13: .\" specific prior written permission.
14: .\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
15: .\" WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
16: .\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
17: .\"
18: .\" @(#)rexecd.8 6.4 (Berkeley) 6/24/90
19: .\"
20: .TH REXECD 8 "June 24, 1990"
21: .UC 5
22: .SH NAME
23: rexecd \- remote execution server
24: .SH SYNOPSIS
25: .B rexecd
26: .SH DESCRIPTION
27: .I Rexecd
28: is the server for the
29: .IR rexec (3)
30: routine. The server provides remote execution facilities
31: with authentication based on user names and
32: passwords.
33: .PP
34: .I Rexecd
35: listens for service requests at the port indicated in
36: the ``exec'' service specification; see
37: .IR services (5).
38: When a service request is received the following protocol
39: is initiated:
40: .IP 1)
41: The server reads characters from the socket up
42: to a null (`\e0') byte. The resultant string is
43: interpreted as an ASCII number, base 10.
44: .IP 2)
45: If the number received in step 1 is non-zero,
46: it is interpreted as the port number of a secondary
47: stream to be used for the
48: .BR stderr .
49: A second connection is then created to the specified
50: port on the client's machine.
51: .IP 3)
52: A null terminated user name of at most 16 characters
53: is retrieved on the initial socket.
54: .IP 4)
55: A null terminated, unencrypted password of at most
56: 16 characters is retrieved on the initial socket.
57: .IP 5)
58: A null terminated command to be passed to a
59: shell is retrieved on the initial socket. The length of
60: the command is limited by the upper bound on the size of
61: the system's argument list.
62: .IP 6)
63: .I Rexecd
64: then validates the user as is done at login time
65: and, if the authentication was successful, changes
66: to the user's home directory, and establishes the user
67: and group protections of the user.
68: If any of these steps fail the connection is
69: aborted with a diagnostic message returned.
70: .IP 7)
71: A null byte is returned on the initial socket
72: and the command line is passed to the normal login
73: shell of the user. The
74: shell inherits the network connections established
75: by
76: .IR rexecd .
77: .SH DIAGNOSTICS
78: Except for the last one listed below,
79: all diagnostic messages are returned on the initial socket,
80: after which any network connections are closed.
81: An error is indicated by a leading byte with a value of
82: 1 (0 is returned in step 7 above upon successful completion
83: of all the steps prior to the command execution).
84: .PP
85: .B ``username too long''
86: .br
87: The name is
88: longer than 16 characters.
89: .PP
90: .B ``password too long''
91: .br
92: The password is longer than 16 characters.
93: .PP
94: .B ``command too long ''
95: .br
96: The command line passed exceeds the size of the argument
97: list (as configured into the system).
98: .PP
99: .B ``Login incorrect.''
100: .br
101: No password file entry for the user name existed.
102: .PP
103: .B ``Password incorrect.''
104: .br
105: The wrong was password supplied.
106: .PP
107: .B ``No remote directory.''
108: .br
109: The
110: .I chdir
111: command to the home directory failed.
112: .PP
113: .B ``Try again.''
114: .br
115: A
116: .I fork
117: by the server failed.
118: .PP
119: .B ``<shellname>: ...''
120: .br
121: The user's login shell could not be started.
122: This message is returned
123: on the connection associated with the
124: .BR stderr ,
125: and is not preceded by a flag byte.
126: .SH SEE ALSO
127: rexec(3)
128: .SH BUGS
129: Indicating ``Login incorrect'' as opposed to ``Password incorrect''
130: is a security breach which allows people to probe a system for users
131: with null passwords.
132: .PP
133: A facility to allow all data and password exchanges to be encrypted should be
134: present.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.