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