System Administration Commands in.rlogind(1M)
NAME
in.rlogind, rlogind - remote login server
SYNOPSIS
/usr/sbin/in.rlogind [-k5eExXciPp] [-s tos] [-S keytab]
[-M realm]
DESCRIPTION
in.rlogind is the server for the rlogin(1) program. The
server provides a remote login facility with authentication
based on Kerberos V5 or privileged port numbers.
in.rlogind is invoked by inetd(1M) when a remote login con-
nection is established. When Kerberos V5 authentication is
required (see option -k below), the authentication sequence
is as follows:
o Check Kerberos V5 authentication.
o Check authorization according to the rules in
krb5authrules(5).
o Prompt for a password if any checks fail and
/etc/pam.conf is configured to do so.
In order for Kerberos authentication to work, a host/
Kerberos principal must exist for each Fully Qualified
Domain Name associated with the in.rlogind server. Each of
these host/ principals must have a keytab entry in the
/etc/krb5/krb5.keytab file on the in.rlogind server. An
example principal might be:
host/bigmachine.eng.example.com
See kadmin(1M) or gkadmin(1M) for instructions on adding a
principal to a krb5.keytab file. See for a discussion of
Kerberos authentication.
If Kerberos V5 authentication is not enabled, then the
authentication procedure follows the standard rlogin proto-
col:
o The server checks the client's source port. If the
port is not in the range 512-1023, the server
aborts the connection.
SunOS 5.11 Last change: 10 Nov 2005 1
System Administration Commands in.rlogind(1M)
o The server checks the client's source address. If
an entry for the client exists in both /etc/hosts
and /etc/hosts.equiv, a user logging in from the
client is not prompted for a password. If the
address is associated with a host for which no
corresponding entry exists in /etc/hosts, the user
is prompted for a password, regardless of whether
or not an entry for the client is present in
/etc/hosts.equiv. See hosts(4) and hosts.equiv(4).
Once the source port and address have been checked,
in.rlogind allocates a pseudo-terminal and manipulates file
descriptors so that the slave half of the pseudo-terminal
becomes the stdin, stdout, and stderr for a login process.
The login process is an instance of the login(1) program,
invoked with the -r.
The login process then proceeds with the pam(3PAM) authenti-
cation process. See SECURITY below. If automatic authenti-
cation fails, it reprompts the user to login.
The parent of the login process manipulates the master side
of the pseudo-terminal, operating as an intermediary between
the login process and the client instance of the rlogin pro-
gram. In normal operation, a packet protocol is invoked to
provide Ctrl-S and Ctrl-Q type facilities and propagate
interrupt signals to the remote programs. The login process
propagates the client terminal's baud rate and terminal
type, as found in the environment variable, TERM.
OPTIONS
The following options are supported:
-5 Same as -k, for backwards compatibility.
-c Requires Kerberos V5 clients to present a cryp-
tographic checksum of initial connection infor-
mation like the name of the user that the
client is trying to access in the initial
authenticator. This checksum provides additionl
security by preventing an attacker from chang-
ing the initial connection information. This
option is mutually exclusive with the -i
option.
-e Creates an encrypted session.
SunOS 5.11 Last change: 10 Nov 2005 2
System Administration Commands in.rlogind(1M)
-E Same as -e, for backwards compatibility.
-i Ignores authenticator checksums if provided.
This option ignores authenticator checksums
presented by current Kerberos clients to pro-
tect initial connection information. Option -i
is the opposite of option -c.
-k Allows Kerberos V5 authentication with the
.k5login access control file to be trusted. If
this authentication system is used by the
client and the authorization check is passed,
then the user is allowed to log in.
-M realm Uses the indicated Kerberos V5 realm. By
default, the daemon will determine its realm
from the settings in the krb5.conf(4) file.
-p Prompts for authentication only if other
authentication checks fail.
-P Prompts for a password in addition to other
authentication methods.
-s tos Sets the IP TOS option.
-S keytab Sets the KRB5 keytab file to use.
The/etc/krb5/krb5.keytab file is used by
default.
-x Same as -e, for backwards compatibility.
-X Same as -e, for backwards compatibility.
USAGE
rlogind and in.rlogind are IPv6-enabled. See ip6(7P). IPv6
is not currently supported with Kerberos V5 authentication.
Typically, Kerberized rlogin service runs on port 543 (klo-
gin) and Kerberized, encrypted rlogin service runs on port
2105 (eklogin). The corresponding FMRI entries are:
SunOS 5.11 Last change: 10 Nov 2005 3
System Administration Commands in.rlogind(1M)
svc:/network/login:klogin (rlogin with kerberos)
svc:/network/login:eklogin (rlogin with kerberos and encryption)
SECURITY
in.rlogind uses pam(3PAM) for authentication, account
management, and session management. The PAM configuration
policy, listed through /etc/pam.conf, specifies the modules
to be used for in.rlogind. Here is a partial pam.conf file
with entries for the rlogin command using the "rhosts" and
UNIX authentication modules, and the UNIX account, session
management, and password management modules.
rlogin auth sufficient pamrhostsauth.so.1
rlogin auth requisite pamauthtokget.so.1
rlogin auth required pamdhkeys.so.1
rlogin auth required pamunixauth.so.1
rlogin account required pamunixroles.so.1
rlogin account required pamunixprojects.so.1
rlogin account required pamunixaccount.so.1
rlogin session required pamunixsession.so.1
With this configuration, the server checks the client's
source address. If an entry for the client exists in both
/etc/hosts and /etc/hosts.equiv, a user logging in from the
client is not prompted for a password. If the address is
associated with a host for which no corresponding entry
exists in /etc/hosts, the user is prompted for a password,
regardless of whether or not an entry for the client is
present in /etc/hosts.equiv. See hosts(4) and
hosts.equiv(4).
When running a Kerberized rlogin service (with or without
the encryption option), the pam service name that should be
used is "krlogin".
If there are no entries for the rlogin service, then the
entries for the "other" service will be used. If multiple
authentication modules are listed, then the user may be
prompted for multiple passwords. Removing the
pamrhostsauth.so.1 entry will disable the /etc/hosts.equiv
and ~/.rhosts authentication protocol and the user would
always be forced to type the password. The sufficient flag
SunOS 5.11 Last change: 10 Nov 2005 4
System Administration Commands in.rlogind(1M)
indicates that authentication through the
pamrhostsauth.so.1 module is sufficient to authenticate
the user. Only if this authentication fails is the next
authentication module used.
ATRIBUTES
See attributes(5) for descriptions of the following attri-
butes:
ATRIBUTE TYPE ATRIBUTE VALUE
Availability SUNWrcmds
SEE ALSO
login(1), svcs(1), rlogin(1), gkadmin(1M), in.rshd(1M),
inetadm(1M), inetd(1M), kadmin(1M), svcadm(1M), pam(3PAM),
hosts(4), hosts.equiv(4), krb5.conf(4), pam.conf(4), attri-
butes(5), environ(5), krb5authrules(5),
pamauthtokcheck(5), pamauthtokget(5),
pamauthtokstore(5), pamdhkeys(5), pampasswdauth(5),
pamunixaccount(5), pamunixauth(5), pamunixsession(5),
smf(5)
DIAGNOSTICS
All diagnostic messages are returned on the connection asso-
ciated with the stderr, after which any network connections
are closed. An error is indicated by a leading byte with a
value of 1.
Hostname for your address unknown.
No entry in the host name database existed for the
client's machine.
Try again.
A fork by the server failed.
/usr/bin/sh: ...
The user's login shell could not be started.
SunOS 5.11 Last change: 10 Nov 2005 5
System Administration Commands in.rlogind(1M)
NOTES
The authentication procedure used here assumes the integrity
of each client machine and the connecting medium. This is
insecure, but it is useful in an ``open'' environment.
A facility to allow all data exchanges to be encrypted
should be present.
The pamunix(5) module is no longer supported. Similar func-
tionality is provided by pamauthtokcheck(5),
pamauthtokget(5), pamauthtokstore(5), pamdhkeys(5),
pampasswdauth(5), pamunixaccount(5), pamunixauth(5),
and pamunixsession(5).
The in.rlogind service is managed by the service management
facility, smf(5), under the service identifier:
svc:/network/login:rlogin (rlogin)
svc:/network/login:klogin (rlogin with kerberos)
svc:/network/login:eklogin (rlogin with kerberos and encryption)
Administrative actions on this service, such as enabling,
disabling, or requesting restart, can be performed using
svcadm(1M). Responsibility for initiating and restarting
this service is delegated to inetd(1M). Use inetadm(1M) to
make configuration changes and to view configuration infor-
mation for this service. The service's status can be queried
using the svcs(1) command.
SunOS 5.11 Last change: 10 Nov 2005 6
|