[602] in Kerberos

home help back first fref pref prev next nref lref last post

rkinit and rkinitd

daemon@TELECOM.MIT.EDU (qjb@ATHENA.MIT.EDU)
Sun Jan 22 19:05:44 1989

From: qjb@ATHENA.MIT.EDU
To: qjb@ATHENA.MIT.EDU
Cc: kerberos@ATHENA.MIT.EDU
In-Reply-To: <qjb@ATHENA.MIT.EDU>'s message of Sun, 22 Jan 89 18:16:02 EST <8901222316.AA14061@SOUP.MIT.EDU>


I've already gotten requests for the manual pages.  Here they are.
I'm interested in any comments or complaints that anyone may have.

                                --Jay

-------------------

NAME
     rkinit - establish kerberos tickets safely on a remote host

SYNOPSIS
     rkinit host [-u username] [-l localname] [-notimeout]

DESCRIPTION
     rkinit is a program that allows a user with valid kerberos
     tickets to establish tickets on a remote registered host,
     i.e., one that has an rcmd key.  In the current implementa-
     tion, the ticket file on the remote host will be the
     default: /tmp/tkt<uid> on a unix host where <uid> is the
     user id of the person who owns the ticket file.  You can
     think of rkinit as a substitute for rlogin followed by
     kinit.  If you can rlogin to a host with your tickets as a
     certain user and create tickets as that user, you can
     achieve this with rkinit.

     If no commandline arguments are given, rkinit will prompt
     for a password and replicate the invoker's tickets on the
     specified remote host.  These tickets will be owned on the
     remote host by the user who invoked rkinit and will be for
     the local realm of the remote host.  rkinit can be used to
     create any tickets on a remote host and have those tickets
     be owned by any user to whom they entitle a login.  Thus,
     the invoker can create tickets for a user if he is in that
     user's .klogin file. rkinit always tells the invoker whose
     password should be entered.  The kerberos realm of the tick-
     ets to be obtained is printed if either a realm is specified
     in the username field explained below or if the realm of the
     remote host is different from the local realm.  rkinit will
     also tell you who is to own the tickets if the user who will
     own the tickets is different from the name in the tickets.

     If username is specified, in the format name[.inst][@realm]
     is specified, the tickets create on the remote host will be
     the tickets indicated by the username field.  The password
     you should supply is the password for these tickets.  If
     localname is specified, the ticket file on the remote host
     will be owned by the user localname.  You should still sup-
     ply the password for your current tickets or the password
     required to obtain username tickets if specified.  Kerberos
     realm should be used if the host on which you are creating
     tickets is in a kerberos realm recognized by the client host
     but the host's kerberos realm is not specified in
     krb.realms.  If the realm of the remote host is specified,
     however, this parameter is not necessary.  -notimeout
     prevents the client from timing out which it would otherwise
     do in thirty seconds.

     If you do not specify an explicit realm in the username
     field of rkinit, you will be prompted for tickets in the

     local realm of the remote host.  Thus, if you use rkinit to
     establish tickets on a remote host in a different kerberos
     realm and you do not specify a realm name explicitly in the
     username field, rather than "copying" your tickets exactly,
     rkinit will try to establish tickets whose principal and
     instance match but whose realm is the local realm of the
     remote host.

     The same access checks that are used by rlogin are used by
     rkinit.  In order for you to create username tickets owned
     by localname on a remote host, you must be able to login to
     the remote host as localname using username tickets.

EXAMPLES
     % rkinit soup
     Kerberos initialization on host priam for qjb
     Password:
     %

     % rkinit charon -u qjb.root
     Kerberos initialization on host priam for qjb.root
     Password:
     %

     % rkinit soup -l local
     Kerberos initialization: qjb's tickets for local on host
     soup
     Password:
     %

     % rkinit dodo
     Kerberos initialization on host dodo for
     qjb@SMS_TEST.MIT.EDU
     Password:
     %

NOTE
     Since rkinit creates the ticket file in a fixed place for a
     given user, it is possible for one user to create tickets
     that will overwrite other tickets owned by the same user.
     This will ordinarily not be a problem since the usual case
     is that you can only create tickets for yourself.  The prin-
     cipal exception, however, is root.  If you create tickets
     for yourself to be owned by root on the remote host, it is a
     good idea to rename the ticket file from /tmp/tkt0 and set
     the environment variable KRBTKFILE appropriately.

BUGS
     Only one rkinit can be run to a given server at a time.

FUTURE EXPANSION
     It might be good for the user running rkinit to be able to
     specify the name of the ticket file and for rkinitd to be
     smarter about where to put tickets owned by root.

SEE ALSO
     rkinitd(8)

AUTHOR
     Emanuel Jay Berkenbilt (MIT-Project Athena)

-------------------

NAME
     rkinitd - server for rkinit, a remote ticket establishment
     utility

SYNOPSIS
     rkinit [-notimeout]

DESCRIPTION
     rkinitd is the server for rkinit. See rkinit(1) for informa-
     tion about rkinit. rkinitd can be started either from the
     commandline or by inetd.  In either case it must be run as
     root or be installed setuid root as it does a setuid(2) call
     before establishing tickets, attempts to bind to a
     privileged port, and needs to be able to read /etc/srvtab.

     rkinitd normally times out in 30 seconds.  Invoking rkinitd
     with the -notimeout flag will override this behavior.

     If you wish to run rkinitd from inetd, you should install
     the following line in inetd.conf:

     atest6    dgram     udp  wait unswitched     root
     /site/local/rtbin/rkinitd     rkinitd

     rkinitd must be running on a machine with a srvtab contain-
     ing an rcmd.<host> key.

BUGS
     Only one rkinit can be run to a given server at a time.
     This is because rkinitd does not make any effort to keep
     track of where requests are coming from or what the nature
     of the requests are.

FUTURE EXPANSION
     It might be good for the user running rkinit to be able to
     specify the name of the ticket file and for rkinitd to be
     smarter about where to put tickets owned by root.

SEE ALSO
     rkinit(1) inetd(8)

AUTHOR
     Emanuel Jay Berkenbilt (MIT-Project Athena)


home help back first fref pref prev next nref lref last post