Annotation of 43BSDReno/libexec/rlogind/rlogind.8, revision 1.1.1.1

1.1       root        1: .\" Copyright (c) 1983, 1989 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: .\"    @(#)rlogind.8   6.11 (Berkeley) 6/24/90
                     19: .\"
                     20: .TH RLOGIND 8 "June 24, 1990"
                     21: .UC 5
                     22: .SH NAME
                     23: rlogind \- remote login server
                     24: .SH SYNOPSIS
                     25: .B rlogind
                     26: [
                     27: .B \-aln
                     28: ]
                     29: .SH DESCRIPTION
                     30: .I Rlogind
                     31: is the server for the 
                     32: .IR rlogin (1)
                     33: program.  The server provides a remote login facility
                     34: with authentication based on privileged port numbers from trusted hosts.
                     35: .PP
                     36: .I Rlogind
                     37: listens for service requests at the port indicated in
                     38: the ``login'' service specification; see
                     39: .IR services (5).
                     40: When a service request is received the following protocol
                     41: is initiated:
                     42: .IP 1)
                     43: The server checks the client's source port.
                     44: If the port is not in the range 512-1023, the server
                     45: aborts the connection.
                     46: .IP 2)
                     47: The server checks the client's source address
                     48: and requests the corresponding host name (see
                     49: IR gethostbyaddr (3),
                     50: .IR hosts (5)
                     51: and
                     52: .IR named (8)).
                     53: If the hostname cannot be determined,
                     54: the dot-notation representation of the host address is used.
                     55: If the hostname is in the same domain as the server (according to
                     56: the last two components of the domain name),
                     57: or if the
                     58: .B \-a
                     59: option is given,
                     60: the addresses for the hostname are requested,
                     61: verifying that the name and address correspond.
                     62: Normal authentication is bypassed if the address verification fails.
                     63: .PP
                     64: Once the source port and address have been checked, 
                     65: .I rlogind
                     66: proceeds with the authentication process described in
                     67: .IR rshd (8).
                     68: It then allocates a pseudo terminal (see 
                     69: .IR pty (4)),
                     70: and manipulates file descriptors so that the slave
                     71: half of the pseudo terminal becomes the 
                     72: .B stdin ,
                     73: .B stdout ,
                     74: and
                     75: .B stderr 
                     76: for a login process.
                     77: The login process is an instance of the
                     78: .IR login (1)
                     79: program, invoked with the
                     80: .B \-f
                     81: option if authentication has succeeded.
                     82: If automatic authentication fails, the user is
                     83: prompted to log in as if on a standard terminal line.  The
                     84: .B \-l
                     85: option prevents any authentication based on the user's
                     86: ``.rhosts'' file, unless the user is logging in as the superuser.
                     87: .PP
                     88: The parent of the login process manipulates the master side of
                     89: the pseudo terminal, operating as an intermediary
                     90: between the login process and the client instance of the
                     91: .I rlogin
                     92: program.  In normal operation, the packet protocol described
                     93: in
                     94: .IR pty (4)
                     95: is invoked to provide ^S/^Q type facilities and propagate
                     96: interrupt signals to the remote programs.  The login process
                     97: propagates the client terminal's baud rate and terminal type,
                     98: as found in the environment variable, ``TERM''; see
                     99: .IR environ (7).
                    100: The screen or window size of the terminal is requested from the client,
                    101: and window size changes from the client are propagated to the pseudo terminal.
                    102: .PP
                    103: Transport-level keepalive messages are enabled unless the
                    104: .B \-n
                    105: option is present.
                    106: The use of keepalive messages allows sessions to be timed out
                    107: if the client crashes or becomes unreachable.
                    108: .SH DIAGNOSTICS
                    109: All initial diagnostic messages are indicated
                    110: by a leading byte with a value of 1,
                    111: after which any network connections are closed.
                    112: If there are no errors before
                    113: .I login
                    114: is invoked, a null byte is returned as in indication of success.
                    115: .PP
                    116: .B ``Try again.''
                    117: .br
                    118: A
                    119: .I fork
                    120: by the server failed.
                    121: .SH "SEE ALSO"
                    122: login(1), ruserok(3), rshd(8)
                    123: .SH BUGS
                    124: The authentication procedure used here assumes the integrity
                    125: of each client machine and the connecting medium.  This is
                    126: insecure, but is useful in an ``open'' environment.
                    127: .PP
                    128: A facility to allow all data exchanges to be encrypted should be
                    129: present.
                    130: .PP
                    131: A more extensible protocol should be used.

unix.superglobalmegacorp.com

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