Annotation of cci/usr/src/man/man8/rshd.8c, revision 1.1.1.1

1.1       root        1: .TH RSHD 8C "4 March 1983"
                      2: .UC 4
                      3: .SH NAME
                      4: rshd \- remote shell server
                      5: .SH SYNOPSIS
                      6: .B /etc/rshd
                      7: .SH DESCRIPTION
                      8: .I Rshd
                      9: is the server for the 
                     10: .IR rcmd (3X)
                     11: routine and, consequently, for the
                     12: .IR rsh (1C)
                     13: program.  The server provides remote execution facilities
                     14: with authentication based on privileged port numbers.
                     15: .PP
                     16: .I Rshd
                     17: listens for service requests at the port indicated in
                     18: the ``cmd'' service specification; see
                     19: .IR services (5).
                     20: When a service request is received the following protocol
                     21: is initiated:
                     22: .IP 1)
                     23: The server checks the client's source port.
                     24: If the port is not in the range 0-1023, the server
                     25: aborts the connection.
                     26: .IP 2)
                     27: The server reads characters from the socket up
                     28: to a null (`\e0') byte.  The resultant string is
                     29: interpreted as an ASCII number, base 10.
                     30: .IP 3)
                     31: If the number received in step 1 is non-zero,
                     32: it is interpreted as the port number of a secondary
                     33: stream to be used for the 
                     34: .BR stderr .
                     35: A second connection is then created to the specified
                     36: port on the client's machine.  The source port of this
                     37: second connection is also in the range 0-1023.
                     38: .IP 4)
                     39: The server checks the client's source address.
                     40: If the address is associated with a host for which no
                     41: corresponding entry exists in the host name data base (see
                     42: .IR hosts (5)),
                     43: the server aborts the connection.
                     44: .IP 5)
                     45: A null terminated user name of at most 16 characters
                     46: is retrieved on the initial socket.  This user name
                     47: is interpreted as a user identity to use on the
                     48: .BR server 's
                     49: machine.
                     50: .IP 6)
                     51: A null terminated user name of at most 16 characters
                     52: is retrieved on the initial socket.  This user name
                     53: is interpreted as the user identity on the
                     54: .BR client 's
                     55: machine.
                     56: .IP 7)
                     57: A null terminated command to be passed to a
                     58: shell is retrieved on the initial socket.  The length of
                     59: the command is limited by the upper bound on the size of
                     60: the system's argument list.  
                     61: .IP 8)
                     62: .I Rshd
                     63: then validates the user according to the following steps.
                     64: The remote user name is looked up in the password file
                     65: and a
                     66: .I chdir
                     67: is performed to the user's home directory.  If either
                     68: the lookup or 
                     69: .I chdir
                     70: fail, the connection is terminated.
                     71: If the user is not the super-user, (user id 0), the file 
                     72: .I /etc/hosts.equiv
                     73: is consulted for a list of hosts considered ``equivalent''.
                     74: If the client's host name is present in this file, the
                     75: authentication is considered successful.  If the lookup
                     76: fails, or the user is the super-user, then the file
                     77: .I .rhosts
                     78: in the home directory of the remote user is checked for
                     79: the machine name and identity of the user on the client's
                     80: machine.  If this lookup fails, the connection is terminated.
                     81: .IP 9)
                     82: A null byte is returned on the connection associated
                     83: with the
                     84: .B stderr 
                     85: and the command line is passed to the normal login
                     86: shell of the user.  The
                     87: shell inherits the network connections established
                     88: by
                     89: .IR rshd .
                     90: .SH DIAGNOSTICS
                     91: All diagnostic messages are returned on the connection
                     92: associated with the
                     93: .BR stderr ,
                     94: after which any network connections are closed.
                     95: An error is indicated by a leading byte with a value of
                     96: 1 (0 is returned in step 9 above upon successful completion
                     97: of all the steps prior to the command execution).
                     98: .PP
                     99: .B ``locuser too long''
                    100: .br
                    101: The name of the user on the client's machine is
                    102: longer than 16 characters.
                    103: .PP
                    104: .B ``remuser too long''
                    105: .br
                    106: The name of the user on the remote machine is
                    107: longer than 16 characters.
                    108: .PP
                    109: .B ``command too long ''
                    110: .br
                    111: The command line passed exceeds the size of the argument
                    112: list (as configured into the system).
                    113: .PP
                    114: .B ``Hostname for your address unknown.''
                    115: .br
                    116: No entry in the host name database existed for
                    117: the client's machine.
                    118: .PP
                    119: .B ``Login incorrect.''
                    120: .br
                    121: No password file entry for the user name existed.
                    122: .PP
                    123: .B ``No remote directory.''
                    124: .br
                    125: The 
                    126: .I chdir
                    127: command to the home directory failed.
                    128: .PP
                    129: .B ``Permission denied.''
                    130: .br
                    131: The authentication procedure described above failed.
                    132: .PP
                    133: .B ``Can't make pipe.''
                    134: .br
                    135: The pipe needed for the 
                    136: .BR stderr ,
                    137: wasn't created.
                    138: .PP
                    139: .B ``Try again.''
                    140: .br
                    141: A
                    142: .I fork
                    143: by the server failed.
                    144: .PP
                    145: .B ``/bin/sh: ...''
                    146: .br
                    147: The user's login shell could not be started.
                    148: .SH SEE ALSO
                    149: rsh(1C),
                    150: rcmd(3X)
                    151: .SH BUGS
                    152: The authentication procedure used here assumes the integrity
                    153: of each client machine and the connecting medium.  This is
                    154: insecure, but is useful in an ``open'' environment.
                    155: .PP
                    156: A facility to allow all data exchanges to be encrypted should be
                    157: present.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.