Copyright 1990 by the Massachusetts Institute of Technology. Export of this software from the United States of America may require a specific license from the United States Government. It is the responsibility of any person or organization contemplating export to obtain such a license before exporting. WITHIN THAT CONSTRAINT, permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation, and that the name of M.I.T. not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. Furthermore if you modify this software you must label your software as modified software and not distribute it in such a fashion that it might be confused with the original M.I.T. software. M.I.T. makes no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty. NAME sserver - sample Kerberos version 5 server SYNOPSIS sserver [-p port ] [-S keytab ] [server_port] DESCRIPTION sserver and sclient are a simple demonstration client/server application. When sclient connects to sserver, it performs a Kerberos authentication, and then sserver returns to sclient the Kerberos principal which was used for the Kerberos authentication. It makes a good test that Kerberos has been successfully installed on a machine. The service name used by sserver and sclient is sample. Hence, sserver will require that there be a keytab entry for the service "sample/hostname.domain.name@REALM.NAME". This keytab is generated using the kadmin program. The keytab file is usually installed as "krb$root:[krb5kdc]krb5.keytab". The -S option allows for a different keytab than the default. sserver is normally invoked out of inetd using a line in /etc/inetd.conf that looks like this: sample stream tcp nowait root /usr/local/sbin/sserver sserver Since sample is normally not a port defined in /etc/services, you will usually have to add a line to /etc/services which looks like this: sample 13135/tcp When using sclient, you will first have to have an entry in the Kerberos database, by using kadmin, and then you have to get Kerberos tickets, by using kinit. Also, if you are running the sclient program on a different host than the sserver it will be connecting to, be sure that both hosts have an entry in /etc/services for the sample tcp port, and that the same port number is in both files. When you run sclient you should see something like this: sendauth succeeded, reply is: reply len 32, contents: You are nlgilman@JIMI.MIT.EDU COMMON ERROR MESSAGES (For UNIX systems) NOTE: The VMS version of this sample does not run out of a tcpip service entry. It is simply run as a server and client with the port numbers sepcified by each. 1) kinit returns the error: kinit: Client not found in Kerberos database while getting initial credentials This means that you didn't create an entry for your username in the Kerberos database. 2) sclient returns the error: unknown service sample/tcp; check /etc/services This means that you don't have an entry in /etc/services for the sample tcp port. 3) sclient returns the error: connect: Connection refused This probably means you didn't edit /etc/inetd.conf correctly, or you didn't restart inetd after editing inetd.conf. 4) sclient returns the error: sclient: Server not found in Kerberos database while using sendauth This means that the "sample/hostname@LOCAL.REALM" service was not defined in the Kerberos database; it should be created using kadmin, and a keytab file needs to be generated to make the key for that service principal available for ssclient. 5) sclient returns the error: sendauth rejected, error reply is: " No such file or directory" This probably means sserver couldn't find the keytab file. It was probably not installed in the proper directory.