Annotation of cci/usr/src/man/man8/rshd.8c, revision 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.