home *** CD-ROM | disk | FTP | other *** search
/ ftp.pasteur.org/FAQ/ / ftp-pasteur-org-FAQ.zip / FAQ / kerberos-faq / user < prev   
Encoding:
Text File  |  1995-09-20  |  34.8 KB  |  746 lines

  1. Path: senator-bedfellow.mit.edu!bloom-beacon.mit.edu!pad-thai.cam.ov.com!suan-la-chow-show.cam.ov.com!not-for-mail
  2. From: bjaspan@cam.ov.com (Barry Jaspan)
  3. Newsgroups: comp.protocols.kerberos,comp.answers,news.answers
  4. Subject: Kerberos Users' Frequently Asked Questions 1.14
  5. Supersedes: <kerberos-faq/user_797797537@cam.ov.com>
  6. Followup-To: poster
  7. Date: 19 Sep 1995 12:16:09 -0400
  8. Organization: OpenVision Technologies
  9. Lines: 726
  10. Approved: news-answers-request@mit.edu
  11. Expires: 17 Oct 1995 16:16:09 GMT
  12. Message-ID: <kerberos-faq/user_811527369@cam.ov.com>
  13. NNTP-Posting-Host: suan-la-chow-show.cam.ov.com
  14. Summary: This document answers Frequently Asked Questions
  15.         about the Kerberos authentication system.  Read
  16.         this before you post a question to
  17.         comp.protocols.kerberos or kerberos@mit.edu.
  18. Xref: senator-bedfellow.mit.edu comp.protocols.kerberos:5469 comp.answers:14373 news.answers:53325
  19.  
  20. Archive-name: kerberos-faq/user
  21. Version: 1.14
  22.  
  23.  
  24.  
  25.                   Kerberos Users' Frequently Asked Questions
  26.  
  27. September 14, 1995
  28. Compiled by: Barry Jaspan, <bjaspan@cam.ov.com>
  29. OpenVision Technologies
  30.  
  31.      Kerberos; also spelled Cerberus. n. The watch dog of Hades, whose
  32.      duty it was to guard the entrance--against whom or what does not
  33.      clearly appear; . . . it is known to have had three heads. . .
  34.  
  35.      -Ambrose Bierce, The Enlarged Devil's Dictionary
  36.  
  37. This document answers Frequently Asked Questions about the Kerberos
  38. authentication system. It is freely distributable. Direct all responses and
  39. questions to bjaspan@cam.ov.com. Most of the information presented here has
  40. been collected from postings to the comp.protocols.kerberos newsgroup
  41. (gatewayed to the mailing list kerberos@mit.edu).
  42.  
  43. DISCLAIMER: OpenVision Technologies makes no representations about the
  44. suitability of this information for any purpose. It is provided "as is" without
  45. express or implied warranty. In particular, this document is not intended as
  46. legal advice for exporting Kerberos, DES, or any other encryption software.
  47.  
  48. Release Notes: The Web version of this document (
  49. http://www.ov.com/misc/krb-faq.html) is now the master version. ASCII versions
  50. will continue to the posted to news.answers and comp.answers and archived on
  51. RTFM.MIT.EDU as before.
  52.  
  53. -------------------------------------------------------------------------------
  54. Questions addressed in this release:
  55.  
  56. 1. Kerberos and its Many Incarnations
  57.  
  58. (1.0) Where can I get more information?
  59. (1.1) What is Kerberos? What is it good for?
  60. (1.2) What different versions and distributions of Kerberos exist?
  61. (1.3) Where can I get Kerberos version 4 or 5?
  62. (1.4) What is the current status of version 4?
  63. (1.5) What is the current status of version 5?
  64. (1.6) Are version 4 and version 5 compatible?
  65. (1.7) How/why is Transarc's Kerberos different from MIT Kerberos V4?
  66.      Can they interoperate?
  67. (1.8) How/why is OSF DCE Security different from MIT Kerberos V5?
  68.      Can they interoperate?
  69. (1.9) How/why is DEC Ultrix Kerberos different from MIT Kerberos V4?
  70.      Can they interoperate?
  71. (1.10) What is Bones? What is it for?
  72.  
  73. 2. Building, Using, Installing, and Administering Kerberos
  74.  
  75. (2.1) Can I use Kerberos for local password validation?
  76. (2.2) What is the export status of Kerberos?
  77. (2.3) How can I delete a principal from the database?
  78. (2.4) What are the officially assigned Kerberos port numbers?
  79. (2.5) Are there Kerberos versions of telnet and ftpd?
  80.      What other Kerberos clients exist?
  81. (2.6) Why does rlogin print "Warning: No Kerberos tickets obtained"?
  82. (2.7) What vendors provide commercial support for Kerberos?
  83. (2.8) Why do I get an error message from ld when make_commands is executed?
  84. (2.9) What is libkrb.a, and why can't ld find it?
  85. (2.10) How do I set up a slave server?
  86.  
  87. 4. Miscellaneous
  88.  
  89. (4.1) List references for Kerberos and network security in general.
  90. (4.2) Where are archives of comp.protocols.kerberos (a.k.a
  91.      kerberos@mit.edu)?
  92.  
  93. -------------------------------------------------------------------------------
  94.  
  95. 1. Kerberos and its Many Incarnations
  96.  
  97. (1.0) Where can I get more information?
  98.  
  99. The Kerberos mailing list is kerberos@mit.edu. There is a bi-directional
  100. gateway between the list and the newsgroup comp.protocols.kerberos. Send
  101. subscription requests to kerberos-request@mit.edu.
  102.  
  103. *** PLEASE DO NOT SEND SUBSCRIPTION REQUESTS TO kerberos@mit.edu. ***
  104.  
  105. There are a number of Kerberos-related WWW sites. In no particular order:
  106.  
  107.    *  < http://www.ov.com/misc/krb-faq.html>. This FAQ, of course.
  108.    *  < http://www.contrib.andrew.cmu.edu/usr/shadow/kerberos.html>. This site
  109.      contains links to a variety of other documents, some about Kerberos, some
  110.      related Kerberos, and some unrelated to Kerberos.
  111.    *  < http://nii.isi.edu/info/kerberos>. This site contains references to
  112.      Kerberos documentation and technical papers, available Kerberos
  113.      distributions, Kerberos-related applications (only NetCheque, currently),
  114.      and Kerberos vendor information from this FAQ.
  115.    *  < http://pscinfo.psc.edu/~studarus/Kerberos>. This site contains
  116.      information on setting up Kerberos V5 to use Sandia kadmin, the
  117.      r-commands, and the sample server.
  118.    *  < http://ubvms.cc.buffalo.edu/~tkslen/kerberos.html>. This site contains
  119.      installation and configuration notes and help as well as pointers to a
  120.      variety of other documents.
  121.  
  122. (1.1) What is Kerberos? What is it good for?
  123.  
  124. Kerberos is a network authentication system for use on physically insecure
  125. networks, based on the key distribution model presented by Needham and
  126. Schroeder.[3] It allows entities communicating over networks to prove their
  127. identity to each other while preventing eavsdropping or replay attacks. It also
  128. provides for data stream integrity (detection of modification) and secrecy
  129. (preventing unauthorized reading) using cryptography systems such as DES.
  130.  
  131. Kerberos works by providing principals (users or services) with tickets that
  132. they can use to identify themselves to other principals and secret
  133. cryptographic keys for secure communication with other principals.[1] A ticket
  134. is a sequence of a few hundred bytes. These ticket can then be embedded in
  135. virtually any other network protocol, thereby allowing the processes
  136. implementing that protocol to be sure about the identity of the principals
  137. involved.
  138.  
  139. Practically speaking, Kerberos is mostly used in application-level protocols
  140. (ISO model level 7), such as TELNET or FTP, to provide user to host security.
  141. It is also used, though less frequently, as the implicit authentication system
  142. of data stream (such as SOCK_STREAM) or RPC mechanisms (ISO model level 6). It
  143. could also be used at a lower level for host to host security, in protocols
  144. like IP, UDP, or TCP (ISO model levels 3 and 4), although such implementations
  145. are currently rare, if they exist at all.
  146.  
  147. It is important to realize that Kerberos is a one-trick pony. It provides for
  148. mutual authentication and secure communication between principals on an open
  149. network by manufacturing secret keys for any requestor and providing a
  150. mechanism for these secret keys to be safely propagated through the network.
  151. Kerberos does not, per se, provide for authorization or accounting, although
  152. applications that wish to can use their secret keys to perform those functions
  153. securely. Kerberos also does not provide password validation for individual
  154. workstations unless care is taken; see question 2.1.
  155.  
  156. It is also important to understand that using Kerberos on time-sharing machines
  157. greatly weakens its protections, since a user's tickets are then only as secure
  158. as the 'root' account (read: not very). Furthermore, dumb terminals and most X
  159. terminals do not understand the Kerberos protocol and as a result their cable
  160. connections remain insecure.
  161.  
  162. (1.2) What different versions and distributions of Kerberos exist?
  163.  
  164. There are several different versions and distributions of Kerberos. Most of
  165. them are based on an MIT distributions in one form or another but the lineage
  166. is not always simple. Some of the distributions are freely available, some are
  167. stand-alone commercial products, and others are part of a larger free or
  168. commercial systems. This list is certain to be incomplete:
  169.  
  170. Versions of Kerberos V4:
  171.  
  172.    *  MIT Kerberos V4. Freely available; see question 1.4.
  173.    *  Bones. Freely available; see questions 1.3 and 1.10.
  174.    *  Transarc AFS. Commercial; see question 1.7.
  175.    *  Digital Unix. Commercial; see question 1.9.
  176.    *  Also see question 2.7.
  177.  
  178. Versions of Kerberos V5:
  179.  
  180.    *  MIT Kerberos V5. Freely available; see question 1.5.
  181.    *  OSF DCE Security. Commercial; see question 1.8.
  182.    *  Also see question 2.7.
  183.  
  184. (1.3) Where can I get Kerberos version 4 or 5?
  185.  
  186. In the United States and Canada (*), Kerberos is available via anonymous FTP
  187. from athena-dist.mit.edu (18.71.0.38). For specific instructions, cd to
  188. pub/kerberos and get the file README.KRB4 (for version 4) or README.KRB5_BETA5
  189. (for version 5). Note that *YOU WILL NOT BE ABLE TO RETRIEVE KERBEROS WITHOUT
  190. READING THIS FILE*.
  191.  
  192. Outside the United States, you can get Bones via anonymous ftp from
  193. ftp.funet.fi (128.214.6.100) in pub/unix/security/kerberos. A DES library is
  194. available from the same place. See question 1.10 for information on Bones.
  195.  
  196. (*) Kerberos and DES can be exported to Canada. See question 2.2.
  197.  
  198. (1.4) What is the current status of version 4?
  199.  
  200. With the release of patch level 10 on December 10, 1992, MIT Kerberos 4 is now
  201. in its final form. MIT does not anticipate ever making a new Kerberos 4
  202. release.
  203.  
  204. Several vendors provide their own versions of Kerberos which may contain
  205. improvements or extensions; see question 2.7.
  206.  
  207. (1.5) What is the current status of version 5?
  208.  
  209. The newest version of MIT Kerberos V5 is beta 5, released 5 May 1995. It
  210. contains substantial (and backwards-incompatible) changes to the krb5 API, a
  211. new admin server, improved portability, and numerous bug fixes and
  212. improvements.
  213.  
  214. See question 1.3 for instructions on acquiring it.
  215.  
  216. (1.6) Are version 4 and version 5 compatible?
  217.  
  218. No. Versions 4 and 5 are based on completely different protocols. The MIT
  219. Kerberos V5 distribution contains some compatibility code, however: (a) the
  220. Kerberos server can optionally service V4 requests; (b) there is a program to
  221. convert a V4 format Kerberos database to a V5 format database; (c) an
  222. administration server that accepts V4 requests and operates on a V5 database is
  223. provided.
  224.  
  225. (1.7) How/why is Transarc's Kerberos different from MIT Kerberos V4?
  226.      Can they interoperate?
  227.  
  228. This is a fairly complex question, and this answer is known to be incomplete.
  229. The issue is regularly discussed on the info-afs-kerberos@transarc.com mailing
  230. list; send mail to the -request list for subscriptions.
  231.  
  232. Years ago, the designers of AFS decided to implement their own security system
  233. based on the Kerberos specification instead of using the (then, not yet
  234. publicly available) MIT Kerberos V4. As a result, Transarc's AFS Kerberos
  235. speaks a different protocol but also understands the MIT Kerberos V4 protocol.
  236. They can, in principal, talk to each other; however, there are a sufficient
  237. number of annoying details and an insufficient number of advantages such that
  238. it may not be practical.
  239.  
  240. The two versions use a different string-to-key function (the algorithm that
  241. turns a password into a DES key); the AFS version uses the realm name as part
  242. of the computation while the MIT version does not. A program that uses a
  243. password to acquire a ticket (e.g. kinit or login) will only work with one
  244. version, unless it is hacked up to try both string-to-key algorithms.
  245.  
  246. The two versions also use a different method of finding Kerberos servers. MIT
  247. Kerberos uses krb.conf and krb.realms to map hostnames to realms and realms to
  248. Kerberos servers. AFS kaservers for a realm, by definition, are located on the
  249. AFS database servers and can therefore be located using
  250. /usr/vice/etc/CellServDB. This means that a program built using the MIT
  251. Kerberos libraries will look in one place for the information while a program
  252. built using the AFS Kerberos libraries will look in another. You can certainly
  253. set up all three files and use both libraries, but be sure that everything is
  254. consistent.
  255.  
  256. The two versions have a different password changing protocol, so you must use
  257. the correct 'kpasswd' program for the server you are talking to. In general,
  258. AFS clients that talk directly to the kaserver use an Rx-based protocol,
  259. instead of UDP as with MIT Kerberos, so those AFS clients cannot talk to an MIT
  260. server.
  261.  
  262. In summary, AFS Kerberos and MIT Kerberos can interoperate once you've acquired
  263. a ticket granting ticket, which you can do with kinit (MIT) or klog (AFS). With
  264. a tgt, Kerberos applications such as rlogin can talk to an MIT or AFS Kerberos
  265. server and achieve correct results. However, it is probably best to pick one
  266. implementation and use it exclusively.
  267.  
  268. (1.8) How/why is OSF DCE Security different from MIT Kerberos V5?
  269.      Can they interoperate?
  270.  
  271. [ This answer is based on information provided by Joe Pato
  272. (pato@apollo.hp.com). ]
  273.  
  274. DCE Security is based on Kerberos V5, and uses the same wire protocol for AS
  275. and TGS requests; that means that standard Kerberos applications like kinit and
  276. telnet should work using a DCE Security Server. The implementation for the DCE
  277. Security Server, secd, was based on an early MIT releases and has evolved
  278. independently of the MIT code base and as a result some minor incompatibilities
  279. exist. DCE 1.2 slated for release in 1996 is planned to be fully conformant
  280. with IETF RFC 1510 at which time any remaining protocol nits will be resolved
  281. (interoperability problems with "vanilla" Kerberos clients will be treated as
  282. bugs in DCE).
  283.  
  284. An MIT Kerberos V5 server cannot replace the DCE Security Server, however.
  285. First, DCE applications communicate with secd via the DCE RPC. Second, the DCE
  286. security model includes a Privilege Server (PS) that fills in the authorization
  287. field of a principal's ticket with DCE-specific data, and the DCE Security
  288. Server has a PS built in. In order for the MIT Kerberos V5 server to support
  289. DCE clients it would need to talk to a stand-alone PS and, although the
  290. necessary information is available, no such PS presently exists.
  291.  
  292. The DCE does not support the Kerberos V5 API. It does, however, provide the
  293. GSS-API with Kerberos V5 mechanism (in addition to a DCE mechanism). Since a
  294. Kerberos V5 GSS-API mechanism is also provided in the current MIT Kerberos V5
  295. distribution, applications developed against the GSS-API with this mechanism
  296. should operate with either an MIT Kerberos server or a DCE secd. For this
  297. reason, the GSS-API should now be considered the API of choice for Kerberos
  298. application development.
  299.  
  300. (1.9) How/why is DEC Ultrix Kerberos different from MIT Kerberos V4?
  301.      Can they interoperate?
  302.  
  303. DEC ULTRIX contains Kerberos for a single reason, namely, to provide
  304. authenticated name service for the ULTRIX enhanced security option. It does not
  305. support user-level authentication in the normal manner.
  306.  
  307. DEC's version is essentially the same as (and derived from) MIT Kerberos V4
  308. with a few changes. The most significant change is that the ability to perform
  309. any kind of end-to-end user data encryption has been eliminated in order to
  310. comply with export restrictions. Minor changes include the placement of ticket
  311. files (/var/dss/kerberos/tkt vs. /tmp) and the principal names used by some
  312. standard Kerberos services (e.g.: kprop vs. rcmd); there are probably other
  313. minor changes as well.
  314.  
  315. These changes make it annoying but not impossible to use DEC ULTRIX Kerberos in
  316. the normal way. However, there is no reason at all to do so, because the MIT
  317. distribution supports ULTRIX directly. [This may not be completely true. I
  318. imagine that using ULTRIX Kerberos for enhanced security and MIT's Kerberos at
  319. the same time would cause problems. Has anyone tried this?]
  320.  
  321. (1.10) What is Bones? What is it for?
  322.  
  323. Bones is a system that provides the Kerberos API without using encryption and
  324. without providing any form of security whatsoever. It is a fake that allows the
  325. use of software that expects Kerberos to be present when it cannot be.
  326.  
  327. Why does it exist? Kerberos is a network security system which relies on
  328. cryptographic methods for its security. Since Kerberos' encryption system, DES,
  329. is not exportable, Kerberos itself cannot be exported or used outside of the
  330. United States in its original form. (See question 2.2 for more information.)
  331.  
  332. As a partial solution to this problem, the Kerberos source code was modified by
  333. the addition of #ifdef NOENCRYPTION around all calls to DES functions.
  334. Compiling this version with the symbol NOENCRYPTION defined results in a system
  335. that looks like Kerberos from an application's point of view but that does not
  336. require DES libraries (and, as a result, does not speak the real Kerberos
  337. protocol and does not provide any security).
  338.  
  339. The final piece in this puzzle is a program called "piranha" which takes the
  340. Kerberos sources and removes all of the calls to the encryption routines,
  341. replacing it with the code which was under #ifdef NOENCRYPTION, producing the
  342. system known as Bones. Bones has the property that there is absolutely no
  343. question about whether or not it is legal to transport its sources across
  344. national boundaries, since it neither has any encryption routines nor any calls
  345. to encryption routines.
  346.  
  347. #ifdef NOENCRYPTION was not documented, and it was only intended to be used in
  348. the above manner. Someone who tries compiling Kerberos with that #define has in
  349. some sense "voided the warranty", and will get something which is both (a) not
  350. secure and (b) not Kerberos.
  351.  
  352. Copies of the Kerberos Bones with DES routines and calls added back in by
  353. foreign programmers are called `eBones', and are available by anonymous FTP
  354. from machines in Sweden, Germany, Israel, Finland, Australia, and France (so
  355. far); check with "archie".
  356. -------------------------------------------------------------------------------
  357.  
  358. 2. Using and Administering Kerberos
  359.  
  360. (2.1) Can I use Kerberos for local password validation?
  361.  
  362. Yes, but only under certain circumstances and only if you are careful.
  363.  
  364. Requests for Kerberos ticket granting tickets (tgts) (e.g. from kinit or login)
  365. are sent in plaintext to the Kerberos server, which then responds with
  366. credentials encrypted in the requesting principal's secret key. The program
  367. then attempts to decrypt the data with the supplied password and considers the
  368. authentication "successful" if the decryption appears to yield meaningful
  369. results (such as the correct principal name).
  370.  
  371. The problem here is that the requesting program cannot know for sure whether
  372. the decryption succeeded or, more importantly, whether the response actually
  373. came from the Kerberos server. An attacker could, for example, walk up to an
  374. unattended machine and "log in" as a non-existent user. Kerberos will
  375. eventually respond with an appropriate error, but the attacker can arrange for
  376. another program to deliver a fake response to login first; he then types the
  377. correct password (which he knows because he created the fake response in the
  378. first place) and succeeds in spoofing login.
  379.  
  380. The solution to this problem is for login to verify the tgt by using it to
  381. acquire a service ticket with a known key and comparing the results. Typically,
  382. this means requesting an rcmd.<hostname> ticket, where <hostname> is the local
  383. hostname, and checking the response against the key stored in the machine's
  384. /etc/srvtab file. If the keys match then the original tgt must have come from
  385. Kerberos (since the key only exists in the srvtab and the Kerberos database),
  386. and login can allow the user to log in.
  387.  
  388. The solution works only so long as the host has a srvtab containing an
  389. rcmd.<hostname> (or any other standard principal) entry. This is fine for
  390. physically secure or single-user workstations, but does not work on public
  391. workstations in which anyone could access the srvtab file.
  392.  
  393. (2.2) What is the export status of Kerberos?
  394.  
  395. [ There is a great deal of activity relating to this question and the answer
  396. below is somewhat out of date. ]
  397.  
  398. The export status of Kerberos is unclear, largely because the export
  399. regulations are unclear in general. There's an overview of cryptography export
  400. cases in http://www.cygnus.com/~gnu/export.html .
  401.  
  402. Several companies, including OpenVision and DEC, have received export licenses
  403. for commercial products that contain Kerberos binaries and/or programming
  404. libraries. Contact the Kerberos vendors listed in question 2.7 for more
  405. information.
  406.  
  407. Export of technology is controlled by both the State Department and by the
  408. Commerce Department. The two agencies' jurisdictions don't actually legally
  409. overlap, but nobody really knows which agency has jurisdiction over which
  410. products. So there is a process by which you, as a potential exporter, can ask
  411. the State Department which agency controls your particular export. It's called
  412. a Commodity Jurisdiction Request or CJR. There is a "CJR Kit" for helping you
  413. to file CJR's available at ftp://ftp.cygnus.com/pub/export/cjr.kit .
  414.  
  415. The State Department has the power to regulate exports of even publicly
  416. available (published) materials, in apparent contradiction to the First
  417. Amendment. The Commerce Department regulations (Commerce Control List)
  418. specifically exempts publicly available materials from export controls (section
  419. 779.3), allowing their export under `General License' GTDA, which requires no
  420. paperwork and is usable by everyone except a few hundred people or companies
  421. who have abused export controls in the past. The State Department regulation
  422. (International Traffic in Arms Regulations, or ITAR) exempts `public domain
  423. information' (22 CFR 120.11) but fails to define `information'. The State
  424. Department takes the position that software is not `information'.
  425.  
  426. Kerberos is an authentication system, and export of authentication software and
  427. hardware is controlled by the Commerce Department. However, the State
  428. Department has never formally said where the line between authentication and
  429. encryption is, so they are also apparently interested in Kerberos.
  430.  
  431. Cygnus Support filed a CJR for the Kerberos Bones software, and got back a
  432. formal notification that it was controlled by the Commerce Dept. We then filed
  433. a CCATS request with the Commerce Department, and eventually found out that it
  434. is exportable to all destinations without paperwork under the GTDA license
  435. (because it is `publicly available' without charge on the Internet). The formal
  436. documents are in ftp://ftp.cygnus.com/pub/export . This just confirms what we
  437. all suspected anyway -- if you take the crypto out of Kerberos (which is how
  438. the Bones were generated), it's exportable. The Bones are available at
  439. ftp://athena-dist.mit.edu/pub/kerberos; look at README.ftp for instructions.
  440.  
  441. As for the exportability of full strength Kerberos in source code, nobody has
  442. apparently applied for this. (Please let us know if you know of a case.)
  443.  
  444. I believe that the best bet for threading the export maze is to define and
  445. defend Kerberos as an authentication product, to get it past the State
  446. Department, and then to show that it is publicly available, to get it past the
  447. Commerce Department. To do this, you actually have to be trying to export a
  448. publicly available version of Kerberos, though.
  449.  
  450. Canada is considered a part of the United States for export control purposes so
  451. Kerberos can be exported to Canada without problems.
  452.  
  453. (2.3) How can I delete a principal from the database?
  454.  
  455. MIT Kerberos V4 does not include a single command to delete a Kerberos
  456. principal. This was an intentional omission based on the assumption that by
  457. making deletion difficult, accidents were less likely to happen. If you want to
  458. delete a principal, do "kdb_util dump", edit the ASCII dump with an editor, and
  459. do a "kdb_util load". Obviously, you can write a shell script to make this more
  460. convenient.
  461.  
  462. The admin tools for AFS Kerberos, MIT Kerberos V5, DCE Kerberos, and virtually
  463. every commercial version of Kerberos have a delete command.
  464.  
  465. (2.4) What are the officially assigned Kerberos port numbers?
  466.  
  467. The file src/prototypes/services.append in the MIT Kerberos distribution
  468. contains the commonly used port assignments. This file is not the whole story,
  469. however.
  470.  
  471. "kerberos" has officially been moved to port 88, although people will have to
  472. listen on port 750 for some time to come, and assume that many servers won't be
  473. converted to listen to port 88 for some time.
  474.  
  475. "kerberos_master" and "krb_prop" have not been reserved, but they are only used
  476. for intra-site transactions so having them reserved probably isn't necessary.
  477. Furthermore, both of their port numbers have already been assigned to other
  478. services, so requesting an official assignment will force them to change.
  479.  
  480. "eklogin", "kpop", and "erlogin" have not been officially reserved, but
  481. probably should be. Their ports are not currently assigned to other services,
  482. so hopefully they will not have to change if an official assignment is
  483. requested.
  484.  
  485. (2.5) Are there Kerberos versions of telnet and ftpd?
  486.  
  487. (a) TELNET. An experimental Telnet Authentication Option has been defined, and
  488. is described in RFC1416. A separate document, RFC1411, describes how that
  489. option is to be used with Kerberos V4, but no RFC exists for its use with
  490. Kerberos V5. These RFC's only define how authentication is to be performed; the
  491. standard for full encryption is still under development.
  492.  
  493. An implementation of Kerberos V4 telnet is available via anonymous ftp from
  494. ftp.uu.net, in /networking/telnet.91.03.25.tar.Z, but it predates both of the
  495. above-mentioned RFCs and is therefore almost certainly not compliant with them.
  496. A Kerberos V5 telnet implementation is contained in MIT Kerberos 5 beta 4 and
  497. subsequent releases.
  498.  
  499. (b) FTP. The IETF Common Authentication Technology (CAT) Working Group has
  500. published the Internet Draft "FTP Security Extensions"
  501. <draft-ietf-cat-ftpsec-NN.txt> which defines Kerberos V4 and GSS-API
  502. authentication systems. Please note that the extensions are still in the Draft
  503. stage and may change at any time, in incompatible ways.
  504.  
  505. A freely available version of FTP using Kerberos V4 used to exist on
  506. thumper.bellcore.com but is no longer there [Anyone know where it went?].
  507. Commercial versions of secure FTP are available; see question 2.7.
  508.  
  509. (2.6) Why does rlogin print "Warning: No Kerberos tickets obtained"?
  510.  
  511. Kerberos rlogin uses a standard Kerberos exchange to prove the identity of the
  512. user to the remote host, after which it uses the /etc/passwd and a .klogin file
  513. to determine whether the user is authorized to log in.
  514.  
  515. Since the user never types a password, klogind on the remote host cannot obtain
  516. a new ticket granting ticket. The user's existing tgt cannot be used on the
  517. remote host, because MIT Kerberos V4 tickets are host-specific. Therefore, even
  518. though the user has logged in to the remote host, there is no ticket granting
  519. ticket for the user available on the remote host. The warning message is merely
  520. a reminder of this fact.
  521.  
  522. The most recent release of MIT Kerberos V4 (patchlevel 10) contains a system
  523. called "rkinit" that allows a user to obtain a ticket granting ticket on a
  524. remote machine. Using this system, it is possible first to obtain a tgt on a
  525. machine and then log into it with Kerberos rlogin, thereby achieving a secure
  526. remote login with tickets. Alternatively, you use Kerberos V5 which has
  527. forwardable tickets. However, forwardable tickets do not seem to work in the
  528. current release of MIT Kerberos V5.
  529.  
  530. (2.7) What vendors provide commercial support for Kerberos?
  531.  
  532. This answer contains contact information for Kerberos vendors. Any vendor can
  533. submit an entry.
  534.  
  535. NOTE: The current author of this list works for OpenVision Technologies, Inc.
  536.  
  537. ----------------------------------------
  538.  
  539. Vendor:         CyberSAFE Corporation
  540.                 formerly Open Computing Security Group (OCSG)
  541. Product:        Challenger
  542. Contact:        Sales Department
  543.                 (206) 883-8721
  544.                 sales@ocsg.com
  545. Base version:   MIT Kerberos 5
  546. Last update:    4/6/95
  547.  
  548. ----------------------------------------
  549.  
  550. Vendor:         Cygnus Support
  551. Product:        Cygnus Network Security (CNS)
  552. Contact:        Dwayne Shirakura or Kathy Powers
  553.                    +1 415 903 1400  voice
  554.                    +1 415 903 0122  fax
  555.                    network-security@cygnus.com
  556. Base version:   MIT Kerberos 4
  557. Last update:    4/20/95
  558.  
  559. References:
  560.            o Product information: <http://www.cygnus.com/data/cns.html>
  561.  
  562. ----------------------------------------
  563.  
  564. Vendor:         Digital Equipment Corporation
  565. Product:        DECathena
  566. Contact:        Steve Omand
  567.                 (508) 952-4350
  568.                 omand@athena.tay.dec.com
  569. Base version:   MIT Kerberos 4
  570. Last update:    4/11/95
  571.  
  572. References:
  573.         ftp://ftp.digital.com/pub/Digital/info/whitepaper/decathena-solution.*
  574.         ftp://ftp.digital.com/pub/Digital/info/whitepaper/secure-distributed-computing.*
  575.         http://www.digital.com/info/whitepaper/decathena-solution.abs.html
  576.         http://www.digital.com/info/whitepaper/secure-distributed-computing.abs.html
  577.  
  578. ----------------------------------------
  579.  
  580. Vendor:         Emulex Network Systems
  581. Product:        a line of communications servers
  582. Contact:        (714) 662-5600 ext 8065
  583.                 sales@emulex.com
  584. Base version:   MIT Kerberos 4
  585. Last update:    11/23/94
  586.  
  587. ----------------------------------------
  588.  
  589. Vendor:         OpenVision Technologies, Inc.
  590. Product:        OpenV*Secure
  591. Contact:        Brian Breton
  592.                 (617) 374-3700 (voice)
  593.                 (617) 374-3715 (fax)
  594.                 brian.breton@ov.com
  595. Base version:   MIT Kerberos 5
  596. Last update:    7/18/95
  597.  
  598. References:
  599.         o Product information: <http://www.ov.com/product/>
  600.         o Technical paper: _GSS-API Security for ONC RPC_
  601.                 <ftp://ftp.cam.ov.com/pub/users/bjaspan/rpc_paper.ps>
  602.  
  603. ----------------------------------------
  604.  
  605. Vendor:         TGV, Inc.
  606.                 101 Cooper Street
  607.                 Santa Cruz, CA  95060
  608. Product:        MultiNet for OpenVMS V3.3 Rev D
  609. Contact:        (408) 457-5200
  610.                 sales@tgv.com, info@tgv.com
  611. Base version:   MIT Kerberos 4
  612. Last update:    1/20/95
  613.  
  614. ----------------------------------------
  615.  
  616. Vendor:         Xyplex, Inc.
  617.                 295 Foster St.
  618.                 Littleton, MA 01460
  619. Product:        terminal servers
  620. Contact:        (508) 952-4700
  621.                 (508) 952-4702 (fax)
  622.                 mkt@xyplex.com
  623. Base version:   MIT Kerberos 4 and 5
  624. Last update:    4/17/95
  625.  
  626. ----------------------------------------
  627.  
  628. (2.8) Why do I get an error message from ld when make_commands is executed?
  629.  
  630. The make_commands program (from the file util/ss/make_commands.c, around line
  631. 101) spawns ld as part of its normal operation. The arguments to ld are
  632. hard-coded into the exec() call and are not correct for all systems. To fix the
  633. problem, examine the call and determine the correct arguments for your
  634. environment; once you know the correct arguments, the change to the source code
  635. will be obvious.
  636.  
  637. (2.9) What is libkrb.a, and why can't ld find it?
  638.  
  639. The MIT Kerberos V5 server (krb5kdc) can operate in a V4 compatibility mode in
  640. which it accepts and responds to standard V4 requests (see question 1.5). In
  641. order to do so, it needs the V4 Kerberos library, libkrb.a. That library is not
  642. part of the V5 beta 4 and earlier distributions. It is assumed that if you want
  643. V4 compatibility you already have V4 built and installed; see question 1.3 for
  644. information on obtaining V4. To get krb5kdc to link properly, run configure
  645. with the argument "--with-krb4=" where is a directory that contains directories
  646. called "include" and "lib" that contain the V4 include files and libraries.
  647.  
  648. Starting with the beta 5 release, the MIT Kerberos V5 distribution contains the
  649. V4 code so it is no longer necessary to obtain and build it separately.
  650.  
  651. (2.10) How do I set up a slave server?
  652.  
  653. This answer is written for Kerberos V5, but the same setup works for V4 with
  654. different program names.
  655.  
  656. A slave database propagation consists of four steps:
  657.  
  658.   1.  Dumping the database to a transportable form. Use the command as
  659.      "kdb5_edit -R 'dump_db /krb5/slave_datatrans'".
  660.   2.  Transmitting the file from the master server with kprop. Use the command
  661.      "kprop " for each slave server you want to propagate to. This requires
  662.      that the master's host principal appear in the master's keytab (e.g.:
  663.      /etc/v5srvtab).
  664.   3.  Receiving the file on each slave server with kpropd. kpropd is intended
  665.      to be run out of inetd with a line such as
  666.  
  667.      krb5_prop stream tcp nowait root /var/sbin/kpropd kpropd -p
  668.      /var/sbin/kdb5_edit
  669.  
  670.      kpropd requires that the slave server's host principal exist in its
  671.      keytab.
  672.   4.  Loading the transported database with kdb5_edit load. If everything goes
  673.      well up to this point, kpropd will automatically invoke kdb5_edit (via the
  674.      path you specified in /etc/inetd.conf) and load the database so that the
  675.      slave KDC can use it.
  676.  
  677. Given this system, all you have to do is make sure that a krb5kdc gets started
  678. on all of your slave servers and that the propagation takes place at whatever
  679. schedule you desire. A common solution is to write a script to perform steps 1
  680. and 2 above that is run from cron(1).
  681.  
  682. -------------------------------------------------------------------------------
  683.  
  684. 4. Miscellaneous
  685.  
  686. (4.1) List references for Kerberos and network security in general.
  687.  
  688. See the bibliography at the end of this document.
  689.  
  690. (4.2) Where are archives of comp.protocols.kerberos (a.k.a
  691.      kerberos@mit.edu)?
  692.  
  693. Archives are available via anonymous FTP from athena-dist.mit.edu in the
  694. directory pub/kerberos/krb-mail. The kerberos@mit.edu archives presently extend
  695. up to the end of 1992. Some archives of the kerberos protocol mailing list are
  696. also available.
  697.  
  698. -------------------------------------------------------------------------------
  699.  
  700. BIBLIOGRAPHY
  701.  
  702. The FTP site for a reference, when known, is listed in square brackets
  703. following the entry. Yes, I know that these are not in Officially Blessed
  704. Bibliography Format. Sue me.
  705.  
  706. [1] Jennifer G. Steiner, Clifford Neuman, Jeffrey I. Schiller. "Kerberos: An
  707. Authentication Service for Open Network Systems", USENIX Mar 1988.
  708. [athena-dist.mit.edu:pub/kerberos/doc/usenix.PS]
  709.  
  710. [2] S. P. Miller, B. C. Neuman, J. I. Schiller, and J. H. Saltzer, "Kerberos
  711. Authentication and Authorization System", 12/21/87.
  712.  
  713. [3] R. M. Needham and M. D. Schroeder, "Using Encryption for Authentication in
  714. Large Networks of Computers," Communications of the ACM, Vol. 21(12), pp.
  715. 993-999 (December, 1978).
  716.  
  717. [4] V. L. Voydock and S. T. Kent, "Security Mechanisms in High-Level Network
  718. Protocols," Computing Surveys, Vol. 15(2), ACM (June 1983).
  719.  
  720. [5] Li Gong, "A Security Risk of Depending on Synchronized Clocks", Operating
  721. Systems Review, Vol 26, #1, pp 49--53.
  722.  
  723. [6] S.M. Bellovin and M. Merritt, "Limitations of the Kerberos Authentication
  724. System," USENIX Jan 1991.
  725. [research.att.com:dist/internet_security/kerblimit.usenix.ps]
  726.  
  727. [7] Refik Molva, Gene Tsudik, Els Van Herreweghen, and Stefano Zatti,
  728. "KryptoKnight Authentication and Key Distribution System."
  729. [jerico.usc.edu:pub/gene/www/paps/mtvz.ps.Z]
  730.  
  731. [8] C. Neuman and J. Kohl, "The Kerberos Network Authentication Service (V5),"
  732. RFC 1510, September 1993.
  733.  
  734. [9] B. Clifford Neuman and Theodore Ts'o, "Kerberos: An Authentication Service
  735. for Computer Networks," IEEE Communications, 32(9), September 1994.
  736. [http://nii.isi.edu/publications/kerberos-neuman-tso.html]
  737.  
  738. -------------------------------------------------------------------------------
  739. Barry Jaspan,
  740. bjaspan@cam.ov.com
  741.  
  742. OpenVision Technologies
  743. -- 
  744. Barry Jaspan, bjaspan@cam.ov.com
  745. OpenVision Technologies
  746.