|
|
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.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.