home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / answers / kerberos-faq / user next >
Text File  |  1993-11-07  |  32KB  |  683 lines

  1. Path: senator-bedfellow.mit.edu!bloom-beacon.mit.edu!pad-thai.aktis.com!suan-la-chow-show.aktis.com!not-for-mail
  2. From: bjaspan@security.ov.com (Barry Jaspan)
  3. Newsgroups: comp.protocols.kerberos,news.answers
  4. Subject: Kerberos Users' Frequently Asked Questions 1.7
  5. Supersedes: <kerberos-faq/user_746287123@GZA.COM>
  6. Followup-To: poster
  7. Date: 7 Nov 1993 13:04:18 -0500
  8. Organization: OpenVision Technologies
  9. Lines: 664
  10. Approved: news-answers-request@mit.edu
  11. Expires: 5 Dec 1993 18:04:17 GMT
  12. Message-ID: <kerberos-faq/user_752695457@GZA.COM>
  13. NNTP-Posting-Host: suan-la-chow-show.aktis.com
  14. Summary: This document answers Frequently Asked Questions about the
  15.     Kerberos authentication system.  Read this before you post a
  16.     question to comp.protocols.kerberos or kerberos@athena.mit.edu.
  17. Xref: senator-bedfellow.mit.edu comp.protocols.kerberos:2416 news.answers:14370
  18.  
  19. Archive-name: kerberos-faq/user
  20. Version: 1.7
  21.  
  22. Kerberos Users' Frequently Asked Questions
  23. November 7, 1993
  24. Compiled by: Barry Jaspan, <bjaspan@security.ov.com>
  25.              OpenVision Technologies
  26.  
  27.      Kerberos; also spelled Cerberus.  n.  The watch dog of
  28.      Hades, whose duty it was to guard the entrance--against
  29.      whom or what does not clearly appear; . . . it is known
  30.      to have had three heads. . .
  31.  
  32.         -Ambrose Bierce, The Enlarged Devil's Dictionary
  33.  
  34. This document answers Frequently Asked Questions about the Kerberos
  35. authentication system.  It is freely distributable.  Direct all
  36. responses and questions to bjaspan@security.ov.com.  Most of the
  37. information presented here has been collected from postings to the
  38. comp.protocols.kerberos newsgroup (gatewayed to the mailing list
  39. kerberos@athena.mit.edu).
  40.  
  41. DISCLAIMER: OpenVision Technologies makes no representations about the
  42. suitability of this information for any purpose.  It is provided "as
  43. is" without express or implied warranty.  In particular, this document
  44. is not intended as legal advice for exporting Kerberos, DES, or any
  45. other encryption software.
  46.  
  47. Release Notes: A new question and answer, 3.3, has been added, and
  48. minor improvements have been made to the Kerberos Ports List.  Note
  49. that the Kerberos Ports List is not currently being maintained, and so
  50. it is certain to be out of date.
  51.  
  52. Questions addressed in this release:
  53.  
  54. 1.  Kerberos and its Many Incarnations
  55. ----------------------------------------------------------------------
  56.  
  57. (1.1)    What is Kerberos?  What is it good for?
  58. (1.2)    Where can I get Kerberos version 4 or 5?
  59. (1.3)    What is the current status of version 4?
  60. (1.4)    What is the current status of version 5?
  61. (1.5)    Are version 4 and version 5 compatible?
  62. (1.6)    How/why is Transarc's Kerberos different from MIT Kerberos V4?
  63.     Can they interoperate?
  64. (1.7)    How/why is OSF DCE Security different from MIT Kerberos V5?
  65.     Can they interoperate?
  66. (1.8)    How/why is DEC Ultrix Kerberos different from MIT Kerberos V4?
  67.     Can they interoperate?
  68. (1.9)    What is Bones?  What is it for?
  69.  
  70. 2.  Using and Administering Kerberos
  71. ----------------------------------------------------------------------
  72.  
  73. (2.1)    Can I use Kerberos for local password validation?
  74. (2.2)    What is the export status of Kerberos?
  75. (2.3)    How can I delete a principal from the database?
  76. (2.4)    What are the officially assigned Kerberos port numbers?
  77. (2.5)    Are there Kerberos versions of telnet and ftpd?
  78.     What other Kerberos clients exist?
  79. (2.6)    Why does rlogin print "Warning: No Kerberos tickets obtained"?
  80. (2.7)    What operating systems has Kerberos been ported to?
  81.     What vendors provide commercial support for Kerberos?
  82.  
  83. 3.  Building and Installing Kerberos
  84. ----------------------------------------------------------------------
  85.  
  86. (3.1)    Why do I get an error message from ld when make_commands is
  87.     executed?
  88. (3.2)    Why doesn't KRB5_defs.h exist when I build version 5?
  89. (3.3)    What is libkrb.a, and why can't ld find it?
  90.  
  91. 4.  Miscellaneous
  92. ----------------------------------------------------------------------
  93.  
  94. (4.1)    List references for Kerberos and network security in general.
  95. (4.2)    Where are archives of comp.protocols.kerberos (a.k.a 
  96.     kerberos@athena.mit.edu)?
  97.  
  98. ======================================================================
  99.  
  100. 1.  Kerberos and its Many Incarnations
  101. ----------------------------------------------------------------------
  102.  
  103. (1.1)    What is Kerberos?  What is it good for?
  104.  
  105. Kerberos is a network authentication system for use on physically
  106. insecure networks, based on the key distribution model presented by
  107. Needham and Schroeder.[3] It allows entities communicating over
  108. networks to prove their identity to each other while preventing
  109. eavsdropping or replay attacks.  It also provides for data stream
  110. integrity (detection of modification) and secrecy (preventing
  111. unauthorized reading) using cryptography systems such as DES.
  112.  
  113. Kerberos works by providing principals (users or services) with
  114. /tickets/ that they can use to identify themselves to other principals
  115. and secret cryptographic keys for secure communication with other
  116. principals.[1] A ticket is a sequence of a few hundred bytes.  These
  117. ticket can then be embedded in virtually any other network protocol,
  118. thereby allowing the processes implementing that protocol to be sure
  119. about the identity of the principals involved.
  120.  
  121. Practically speaking, Kerberos is mostly used in application-level
  122. protocols (ISO model level 7), such as TELNET or FTP, to provide user
  123. to host security.  It is also used, though less frequently, as the
  124. implicit authentication system of data stream (such as SOCK_STREAM) or
  125. RPC mechanisms (ISO model level 6).  It could also be used at a lower
  126. level for host to host security, in protocols like IP, UDP, or TCP
  127. (ISO model levels 3 and 4), although such implementations are
  128. currently rare, if they exist at all.
  129.  
  130. It is important to realize that Kerberos is a one-trick pony.  It
  131. provides for mutual authentication and secure communication between
  132. principals on an open network by manufacturing secret keys for any
  133. requestor and providing a mechanism for these secret keys to be safely
  134. propagated through the network.  Kerberos does not, per se, provide
  135. for authorization or accounting, although applications that wish to
  136. can use their secret keys to perform those functions securely.
  137. Kerberos also does not provide password validation for individual
  138. workstations unless care is taken; see question 2.1.
  139.  
  140. It is also important to understand the using Kerberos on time-sharing
  141. machines greatly weakens its protections, since a user's tickets
  142. are then only as secure as the 'root' account (read: not very).
  143. Furthermore, dumb terminals and most X terminals do not understand the
  144. Kerberos protocol and as a result their cable connections remain
  145. insecure.
  146.  
  147. (1.2)    Where can I get Kerberos version 4 or 5?
  148.  
  149. In the United States and Canada (*), Kerberos is available via
  150. anonymous FTP from athena-dist.mit.edu (18.71.0.38).  For specific
  151. instructions, cd to pub/kerberos and get the file README.KRB4 (for
  152. version 4) or README.KRB5_BETA2 (for version 5).  Note that *YOU WILL
  153. NOT BE ABLE TO RETRIEVE KERBEROS WITHOUT READING THIS FILE*.
  154.  
  155. Outside the United States, you can get Bones via anonymous ftp from
  156. ftp.funet.fi (128.214.6.100) in pub/unix/security/kerberos.  A DES
  157. library is available from the same place.  See question 1.9 for
  158. information on Bones.
  159.  
  160. (*) Kerberos and DES can be exported to Canada.  See question 2.2.
  161.  
  162. (1.3)    What is the current status of version 4?
  163.  
  164. With the release of patch level 10 on December 10, 1992, MIT Kerberos
  165. 4 is now in its final form.  MIT does not anticipate ever making a new
  166. Kerberos 4 release.
  167.  
  168. Several vendors provide their own versions of Kerberos which may
  169. contain improvements or extensions; see question 2.7.
  170.  
  171. (1.4)    What is the current status of version 5?
  172.  
  173. A new beta release of MIT Kerberos V5 is available as of September 30,
  174. 1992; see question 1.2.  This release brings MIT's implementation into
  175. full compliance with the current protocol.  It is not backwards
  176. compatible with the previous beta release; according to MIT, this is
  177. the last release that will contain non-backwards compatible changes.
  178.  
  179. (1.5)    Are version 4 and version 5 compatible?
  180.  
  181. No.  Versions 4 and 5 are based on completely different protocols.
  182. The MIT Kerberos V5 distribution contains some compatibility code,
  183. however: (a) there is a library which converts Kerberos V4 library
  184. calls into Kerberos V5 requests, so you can run many V4 programs in a
  185. V5 environment by relinking; (b) the Kerberos server can optionally
  186. service V4 requests; (c) there is a program to convert a V4 format
  187. Kerberos database to a V5 format database.  The names used by the V5
  188. library have a prefix "krb5_" so they do not conflict with the V4
  189. library.
  190.  
  191. (1.6)    How/why is Transarc's Kerberos different from MIT Kerberos V4?
  192.     Can they interoperate?
  193.  
  194. This is a fairly complex question, and this answer is known to be
  195. incomplete.  The issue is regularly discussed on the
  196. info-afs-kerberos@transarc.com mailing list; send mail to the -request
  197. list for subscriptions.
  198.  
  199. Years ago, the designers of AFS decided to implement their own
  200. security system based on the Kerberos specification instead of using
  201. the (then, not yet publicly available) MIT Kerberos V4.  As a result,
  202. Transarc's AFS Kerberos speaks a different protocol but also
  203. understands the MIT Kerberos V4 protocol.  They can, in principal,
  204. talk to each other; however, there are a sufficient number of annoying
  205. details and an insufficient number of advantages such that it may not
  206. be practical.
  207.  
  208. The two versions use a different string-to-key function (the algorithm
  209. that turns a password into a DES key); the AFS version uses the realm
  210. name as part of the computation while the MIT version does not.  A
  211. program that uses a password to acquire a ticket (e.g.  kinit or
  212. login) will only work with one version, unless it is hacked up to try
  213. both string-to-key algorithms.
  214.  
  215. The two versions also use a different method of finding Kerberos
  216. servers.  MIT Kerberos uses krb.conf and krb.realms to map hostnames
  217. to realms and realms to Kerberos servers.  AFS kaservers for a realm,
  218. by definition, are located on the AFS database servers and can
  219. therefore be located using /usr/vice/etc/CellServDB.  This means that
  220. a program built using the MIT Kerberos libraries will look in one
  221. place for the information while a program built using the AFS Kerberos
  222. libraries will look in another.  You can certainly set up all three
  223. files and use both libraries, but be sure that everything is
  224. consistent.
  225.  
  226. The two versions have a different password changing protocol, so you
  227. must use the correct 'kpasswd' program for the server you are talking
  228. to.  In general, AFS clients that talk directly to the kaserver use an
  229. Rx-based protocol, instead of UDP as with MIT Kerberos, so those AFS
  230. clients cannot talk to an MIT server.
  231.  
  232. In summary, AFS Kerberos and MIT Kerberos can interoperate once you've
  233. acquired a ticket granting ticket, which you can do with kinit (MIT)
  234. or klog (AFS).  With a tgt, Kerberos applications such as rlogin can
  235. talk to an MIT or AFS Kerberos server and achieve correct results.
  236. However, it is probably best to pick one implementation and use it
  237. exclusively
  238.  
  239. (1.7)    How/why is OSF DCE Security different from MIT Kerberos V5?
  240.     Can they interoperate?
  241.  
  242. DCE Security is based on Kerberos V5, and uses the same wire protocol.
  243. However, applications from two systems use the protocol in different
  244. ways, so the actual interoperability is limited.  Furthermore, DCE
  245. Security started from an early alpha release of V5 and the two
  246. versions have developed independently; there are therefore some minor
  247. incompatibilities that MIT and the OSF have agreed to resolve.  [Time
  248. frame?]
  249.  
  250. The DCE Security Server, secd, listens on UDP port 88 for standard
  251. Kerberos requests and responds appropriately.  Therefore, clients of
  252. MIT Kerberos can operate in a DCE environment without modification,
  253. assuming the DCE Security database contains the appropriate principals
  254. with the correct keys.
  255.  
  256. An MIT Kerberos V5 server cannot replace the DCE Security Server,
  257. however.  First, DCE applications communication with secd via the DCE
  258. RPC.  Second, the DCE layers additional functionality on top of the
  259. standard application request/response protocol exchange and uses
  260. ticket semantics that are nonsensical in a strict Kerberos
  261. environment.  The MIT Kerberos server does not understand either of
  262. these changes, and therefore cannot support them.
  263.  
  264. As an additional complication, the DCE does not officially export the
  265. Kerberos V5 API; it only exports a DCE Security-specific API.
  266. Individual vendors are capable of providing the Kerberos V5 API if
  267. they wish, but unless they all do (which seems unlikely) Kerberos V5
  268. API applications will not be compile-time portable to DCE
  269. environments; only binaries will continue to work.
  270.  
  271. [Does secd provide all features of the MIT Kerberos server?  Is it
  272. guaranteed to do so?]
  273.  
  274. (1.8)    How/why is DEC Ultrix Kerberos different from MIT Kerberos V4?
  275.     Can they interoperate?
  276.  
  277. DEC ULTRIX contains Kerberos for a single reason, namely, to provide
  278. authenticated name service for the ULTRIX enhanced security option.
  279. It does not support user-level authentication in the normal manner.
  280.  
  281. DEC's version is essentially the same as (and derived from) MIT
  282. Kerberos V4 with a few changes.  The most significant change is that
  283. the ability to perform any kind of end-to-end user data encryption has
  284. been eliminated in order to comply with export restrictions.  Minor
  285. changes include the placement of ticket files (/var/dss/kerberos/tkt
  286. vs. /tmp) and the principal names used by some standard Kerberos
  287. services (e.g.: kprop vs. rcmd); there are probably other minor
  288. changes as well.
  289.  
  290. These changes make it annoying but not impossible to use DEC ULTRIX
  291. Kerberos in the normal way.  However, there is no reason at all to do
  292. so, because the MIT distribution supports ULTRIX directly.  [This may
  293. not be completely true.  I imagine that using ULTRIX Kerberos for
  294. enhanced security and MIT's Kerberos at the same time would cause
  295. problems.  Has anyone tried this?]
  296.  
  297. (1.9)    What is Bones?  What is it for?
  298.  
  299. Bones is a system that provides the Kerberos API without using
  300. encryption and without providing any form of security whatsoever.  It
  301. is a fake that allows the use of software that expects Kerberos to be
  302. present when it cannot be.
  303.  
  304. Why does it exist?  Kerberos is a network security system which relies
  305. on cryptographic methods for its security.  Since Kerberos' encryption
  306. system, DES, is not exportable, Kerberos itself cannot be exported or
  307. used outside of the United States in its original form.  (See question
  308. 2.2 for more information.)
  309.  
  310. As a partial solution to this problem, the Kerberos source code was
  311. modified by the addition of #ifdef NOENCRYPTION around all calls to
  312. DES functions.  Compiling this version with the symbol NOENCRYPTION
  313. defined results in a system that looks like Kerberos from an
  314. application's point of view but that does not require DES libraries
  315. (and, as a result, does not speak the real Kerberos protocol and does
  316. not provide any security).
  317.  
  318. The final piece in this puzzle is a program called "piranha" which
  319. takes the Kerberos sources and removes all of the calls to the
  320. encryption routines, replacing it with the code which was under #ifdef
  321. NOENCRYPTION, producing the system known as Bones.  Bones has the
  322. property that there is absolutely no question about whether or not it
  323. is legal to transport its sources across national boundaries, since it
  324. neither has any encryption routines nor any calls to encryption
  325. routines.
  326.  
  327. #ifdef NOENCRYPTION was not documented, and it was only intended to be
  328. used in the above manner.  Someone who tries compiling Kerberos with
  329. that #define has in some sense "voided the warranty", and will get
  330. something which is both (a) not secure and (b) not Kerberos.
  331.  
  332. 2.  Using and Administering Kerberos
  333. ----------------------------------------------------------------------
  334.  
  335. (2.1)    Can I use Kerberos for local password validation?
  336.  
  337. Yes, but only under certain circumstances and only if you are
  338. careful.
  339.  
  340. Requests for Kerberos ticket granting tickets (tgts) (e.g. from kinit
  341. or login) are sent in plaintext to the Kerberos server, which then
  342. responds with credentials encrypted in the requesting principal's
  343. secret key.  The program then attempts to decrypt the data with the
  344. supplied password and considers the authentication "successful" if the
  345. decryption appears to yield meaningful results (such as the correct
  346. principal name).
  347.  
  348. The problem here is that the requesting program cannot know for sure
  349. whether the decryption succeeded or, more importantly, whether the
  350. response actually came from the Kerberos server.  An attacker could,
  351. for example, walk up to an unattended machine and "log in" as a
  352. non-existent user.  Kerberos will eventually respond with an
  353. appropriate error, but the attacker can arrange for another program to
  354. deliver a fake response to login first; he then types the correct
  355. password (which he knows because he created the fake response in the
  356. first place) and succeeds in spoofing login.
  357.  
  358. The solution to this problem is for login to verify the tgt by using
  359. it to acquire a service ticket with a known key and comparing the
  360. results.  Typically, this means requesting an rcmd.<hostname> ticket,
  361. where <hostname> is the local hostname, and checking the response
  362. against the key stored in the machine's /etc/srvtab file.  If the keys
  363. match then the original tgt must have come from Kerberos (since the
  364. key only exists in the srvtab and the Kerberos database), and login
  365. can allow the user to log in.
  366.  
  367. The solution works only so long as the host has a srvtab containing an
  368. rcmd.<hostname> (or any other standard principal) entry.  This is fine
  369. for physically secure or single-user workstations, but does not work
  370. on public workstations in which anyone could access the srvtab file.
  371.  
  372. (2.2)    What is the export status of Kerberos?
  373.  
  374. In general, the COCOM treaty, signed by twenty or so countries
  375. including the United States, says that all cryptographic material will
  376. be treated as munitions.  This means that these countries treat
  377. exporting DES the same way they would treat exporting weapons, fighter
  378. planes, and other nasty stuff.  You cannot export such materials to
  379. any other country (except Canada**) without an export license.
  380.  
  381. However, it *is* possible to get an export license for Kerberos (DEC
  382. apparently has one for ULTRIX) provided it is hacked up in the correct
  383. way.  The correct way appears to include making it impossible to
  384. perform encryption on arbitrary user data; authentication is okay, but
  385. secrecy is not.  Since the Kerberos API provides this functionality,
  386. it must be carefully removed before an export license will be granted.
  387.  
  388. Of course, I am not a lawyer; this information is merely a collection
  389. of what others (who are also not lawyers) have said and should not be
  390. interpreted as legal advice.  If anyone out there has firm legal
  391. advice, feel free to contribute it.
  392.  
  393. **Canada has been granted a general exemption to DES export
  394. restrictions; the exemption is detailed in Title #22, Code of Federal
  395. Regulations, "International Traffic in Arms Rgulations," Section 126.5.
  396. You can export DES to Canada providing that it is not re-exported to
  397. another country and that the above regulation is referenced.  This
  398. information has been confirmed with Mr. Alan Sushinsky, Munitions
  399. Control, The State Department, (703) 875-6621.
  400.  
  401. (2.3)    How can I delete a principal from the database?
  402.  
  403. MIT Kerberos V4 does not include a single command to delete a Kerberos
  404. principal.  This was an intentional omission based on the assumption
  405. that by making deletion difficult, accidents were less likely to
  406. happen.  If you want to delete a principal, do "kdb_util dump", edit
  407. the ASCII dump with an editor, and do a "kdb_util load".  Obviously,
  408. you can write a shell script to make this more convenient.
  409.  
  410. The admin tools for AFS Kerberos, MIT Kerberos V5, and the DCE
  411. Kerberos have a simple delete request.
  412.  
  413. (2.4)    What are the officially assigned Kerberos port numbers?
  414.  
  415. The file src/prototypes/services.append in the MIT Kerberos
  416. distribution contains the commonly used port assignments.  This file
  417. is not the whole story, however.
  418.  
  419. "kerberos" has officially been moved to port 88, although people will
  420. have to listen on port 750 for some time to come, and assume
  421. that many servers won't be converted to listen to port 88 for some
  422. time.
  423.  
  424. "kerberos_master" and "krb_prop" have not been reserved, but they are
  425. only used for intra-site transactions so having them reserved probably
  426. isn't necessary.  Furthermore, both of their port numbers have already
  427. been assigned to other services, so requesting an official assignment
  428. will force them to change.
  429.  
  430. "eklogin", "kpop", and "erlogin" have not been officially reserved,
  431. but probably should be.  Their ports are not currently assigned to
  432. other services, so hopefully they will not have to change if an
  433. official assignment is requested.
  434.  
  435. (2.5)    Are there Kerberos versions of telnet and ftpd?
  436.  
  437. (a) TELNET.  An experimental Telnet Authentication Option has been
  438. defined, and is described in RFC1416.  A separate document, RFC1411,
  439. describes how that option is to be used with Kerberos V4, but no RFC
  440. exists for its use with Kerberos V5.  These RFC's only define how
  441. /authentication/ is to be performed; the standard for full encryption
  442. is still under development.
  443.  
  444. An implementation of Kerberos V4 telnet is available via anonymous ftp
  445. from ftp.uu.net, in /networking/telnet.91.03.25.tar.Z, but it predates
  446. both of the above-mentioned RFCs and is therefore almost certainly not
  447. compliant with them.  A Kerberos V5 telnet implementation, based on
  448. the 4.4BSD telnet/telnetd, also exists but has been temporarily
  449. removed from the MIT V5 beta 2 release (probably because it also does
  450. not comply with the proposed standards).
  451.  
  452. (b) FTP.  The IETF Common Authentication Technology Working Group is
  453. currently defining security extensions for the FTP protocol.  An
  454. Internet Draft describing their work, and the source code for a
  455. modified ftp/ftpd with the extensions, are now available via anonymous
  456. FTP:
  457.  
  458.     thumper.bellcore.com:pub/lunt/ftp.tar.Z
  459.     net-dist.mit.edu:tytso/ftp-wg/ftp.tar.Z
  460.  
  461. Please note that the extensions are still in the Draft stage and may
  462. change at any time, in incompatible ways.
  463.  
  464. (2.6)    Why does rlogin print "Warning: No Kerberos tickets obtained"?
  465.  
  466. Kerberos rlogin uses a standard Kerberos exchange to prove the
  467. identity of the user to the remote host, after which it uses the
  468. /etc/passwd and a .klogin file to determine whether the user is
  469. authorized to log in.
  470.  
  471. Since the user never types a password, klogind on the remote host
  472. cannot obtain a new ticket granting ticket.  The user's existing tgt
  473. cannot be used on the remote host, because MIT Kerberos V4 tickets are
  474. host-specific.  Therefore, even though the user has logged in to the
  475. remote host, there is no ticket granting ticket for the user available
  476. on the remote host.  The warning message is merely a reminder of this
  477. fact.
  478.  
  479. The most recent release of MIT Kerberos V4 (patchlevel 10) contains a
  480. system called "rkinit" that allows a user to obtain a ticket granting
  481. ticket on a remote machine.  Using this system, it is possible first
  482. to obtain a tgt on a machine and then log into it with Kerberos
  483. rlogin, thereby achieving a secure remote login with tickets.
  484. Alternatively, you use Kerberos V5, which has forwardable tickets.
  485.  
  486. (2.7)    What operating systems has Kerberos been ported to?
  487.     What vendors provide commercial support for Kerberos?
  488.  
  489. Note: This list is extremely out of date and is not currently being
  490. maintained.
  491.  
  492. The following is a list on Kerberos Ports that I know of as of 23 
  493. October 1992. If you have additional information please send it to me. 
  494. This listing is of announced ports, not ports that I have tested. In 
  495. addition, it does not mention any problems that I may be aware of or 
  496. heard rumors of in certain ports. Most vendors are trying to make their 
  497. Kerberos ports more complete and remove problems all the time, so this 
  498. chart will need updating soon.
  499.  
  500. Kerberos Ports Key (inside matrix)
  501. 4     K4 port done
  502. 5     Kerberos v5 port done 
  503. D     DCE version of Kerberos done
  504. d     DCE version of Kerberos being ported or planned
  505. p     porting version 4 at this time
  506. P     porting Kerberos v5
  507. h    planned port of v4
  508. H    planned port of v5
  509. t    Kerberos v4 being tested
  510. T    Kerberos v5 being tested
  511. A    Athena (of which Kerberos 4 is a part)
  512. -    no product known
  513.  
  514. Porting Companies (y-axis)
  515. c     Cygnus Support      Steve Wilson 415/433-3811 swilson@cygnus.com
  516.                 network-security@cygnus.com
  517. d       DEC (DECathena?)        John O'Hara 508/486-7402 
  518.                     johara@athena.lkg.dec.com
  519. e    Essex                Vince Stasio 508/532-5511
  520. f     FTP Software            Kristine Kilduff 617/246-0900 kpk@ftp.com
  521. g    Geer Zolot Associates    Barry Jaspan 617/374-3700 
  522.                 info-kerberos@gza.com
  523. i    IBM
  524. m    MIT release
  525. o    Open Computing Security Group    Dan Webb 206/883-8721 dwebb@ocsg.com
  526.                 or Bob Gassen 206/883-8721 bobg@ocsg.com
  527. p    Project Pilgrim        Art Gaylord 413/545-2420 art@cs.umass.edu
  528. r    Cisco Routers & Bridges
  529. t    TGV                    S. Vance 800/tgv-3440 vance@tgv.com
  530. .    Telebit 408/734-4333
  531. w    Wollongong         Denise Earhart 415/962-7211
  532. x    Xyplex (terminal server) Rich Fitzgerald 714/725-9489
  533. z    Product for one OEM/self
  534.  
  535. Notes: Cray Kerberos supplied as part of UNICOS 7.0, DCE version later
  536.         DECs Ultrix Kerberos does not authenticate users, only servers
  537.         DECAthena does authenticate users
  538.  
  539. Rumored ports by:
  540.     Emulex    714/662-5600
  541.       Gradient Technologies
  542.     HP
  543.       Transarc for AFS (Andrew File System) & makes DEC developers kits
  544.  
  545.  
  546. Kerberos Ports        23 Oct 1992
  547.  
  548. who        c  d  e  f  g  i  m  o   p  r  t  w  z  other
  549. Amdahl        -  -  -  -  -  -  -  -   -  -  -  -  4  -
  550. AIX 3.2    4      -  A  -  -  H  d  4  tT  -  -  -  -  P  -
  551. Cisco        -  -  -  -  -  -  -  -   -  -  -  -  p  -
  552. Convex        -  -  -  -  -  -  -  -   -  -  -  -  -  4  
  553.                             LMSC partial port of K4
  554. Cray        -  -  -  -  -  -  -  -   -  -  -  -  4d 4
  555.                             LLNL partial port of K4
  556. HP        4  A  -  -  H  -  -  hT  -  -  -  -  -  d
  557. Intel Sv.4    -  -  -  -  H  -  4  H   -  -  -  -  -  d
  558. Irix 4.x    4  -  -  -  -  -  -  -   -  -  -  -  -  p
  559. Mac 6.x        p  -  -  -  -  -  4  4H  -  -  -  -  -  -
  560. Mac 7.x        p  -  -  -  -  -  4  4H  -  -  -  -  -  -
  561. MsDos        -  -  4  4  -  -  4  4H  -  -  -  -  -  -
  562. MVS        -  -  -  -  -  4  -  pP  -  -  -  -  4d -
  563. NCR        -  -  -  -  -  -  -  pH  -  -  -  -  -  -
  564. NCSATelnetPC    -  -  -  -  -  -  -  t   -  -  -  -  -  -
  565. NCSATelnetMac    -  -  -  -  -  -  -  t   -  -  -  -  -  -
  566. NeXT        4  -  -  -  5  -  4  4H  -  -  -  -  -  -
  567. who        c  d  e  f  g  i  m  o   p  r  t  w  z  other
  568. Novell        -  -  -  -  -  -  -  H   -  -  -  -  d  -
  569. OS/2        -  -  4  -  H  4d -  -   -  -  -  -  4  -
  570. Pyramid        -  -  -  -  H  -  -  H   -  -  -  -  p  -
  571. SCO        4  -  -  -  -  -  -  -   -  -  -  -  -  -
  572. SecDynamics    -  -  -  -  -  -  -  tH  -  -  -  -  -  -
  573. Sequent        -  -  -  -  -  -  -  4H  -  -  -  -  -  -
  574. Solaris 2.x    4  -  -  -  H  -  -  4T  -  -  -  -  d  4 Cray has a K4 port
  575. SunOS 4.0.1    4  A  -  -  5  -  4  4T  -  -  -  -  -  -  
  576. SunOS 4.1    4  A  -  -  5  -  4  4T  -  -  -  -  -  -
  577. Telebit        -  -  -  -  -  -  -  -   -  -  -  -  4  -  
  578. Ultrix 4.1    4  A4 -  -  H  -  4  -   -  -  -  -  4  -  
  579. VM        -  -  -  -  -  4  -  -   -  -  -  -  4  -
  580. VMS        -  -  -  -  -  -  -  -   4d -  4  4  -  -
  581. Win3.1        -  -  -  -  -  -  -  tH  -  -  -  -  -  p
  582. Xyplex        -  -  -  -  -  -  -  -   -  -  -  -  4  -
  583. who        c  d  e  f  g  i  m  o   p  r  t  w  z  other
  584.  
  585. Please send updates to Greg Edwards, edwardsg@iscnvx.is.lmsc.lockheed.com
  586.  
  587. 3.  Building and Installing Kerberos
  588. ----------------------------------------------------------------------
  589.  
  590. (3.1)    Why do I get an error message from ld when make_commands is
  591.     executed? 
  592.  
  593. The make_commands program (from the file util/ss/make_commands.c,
  594. around line 101) spawns ld as part of its normal operation.  The
  595. arguments to ld are hard-coded into the exec() call and are not
  596. correct for all systems.  To fix the problem, examine the call and
  597. determine the correct arguments for your environment; once you know
  598. the correct arguments, the change to the source code will be obvious.
  599.  
  600. (3.2)    Why doesn't KRB5_defs.h exist when I build version 5?
  601.  
  602. KRB5_defs.h, and other files like KRB5_tables.c, KRB5-types.h, and
  603. KRB5_pre_defs.h are created by the ISODE ASN.1 compiler, pepsy, from
  604. KRB5.py.  You therefore need to have ISODE built and you have to
  605. configure your site.def file so that the Makefiles know how to run the
  606. pepsy compiler.
  607.  
  608. Note that there's a bug in Sun's imake/cpp setup, so the Makefile that
  609. is generated in lib/asn.1 is broken.  KRB5-types.h is generated by the
  610. ISODE program pepsy; look in the makefile just before pepsy is called.
  611. It's fairly obvious where a tab character is missing.
  612.  
  613. (3.3)    What is libkrb.a, and why can't ld find it?
  614.  
  615. The MIT Kerberos V5 server (krb5kdc) can operate in a V4 compatibility
  616. mode in which it accepts and responds to standard V4 requests (see
  617. question 1.5).  In order to do so, it needs the V4 Kerberos library,
  618. libkrb.a.  That library is not part of the V5 distribution.  It is
  619. assumed that if you want V4 compatibility you already have V4 built
  620. and installed; see question 1.2 for information on obtaining V4.
  621.  
  622. To get krb5kdc to link properly, set the KRB4LIB variable in site.def
  623. to the path of your V4 library.  If you do not need V4 backwards
  624. compability, comment out the definition of Krb4KDCCompat in site.def.
  625. (Be sure to run "make clean" after changing anything in site.def to
  626. make sure everything is rebuilt correctly according to the new
  627. parameters.)
  628.  
  629. 4.  Miscellaneous
  630. ----------------------------------------------------------------------
  631.  
  632. (4.1)    List references for Kerberos and network security in general.
  633.  
  634. See the bibliography at the end of this document.
  635.  
  636. (4.2)    Where are archives of comp.protocols.kerberos (a.k.a 
  637.     kerberos@athena.mit.edu)?
  638.  
  639. Archives are available via anonymous FTP from athena-dist.mit.edu in
  640. the directory pub/kerberos/krb-mail.  The kerberos@athena.mit.edu
  641. archives prensently extend up to the end of 1992.  Some archives of
  642. the kerberos protocol mailing list are also available.
  643.  
  644. ----------------------------------------------------------------------
  645.  
  646. BIBLIOGRAPHY
  647.  
  648. The FTP site for a reference, when known, is listed in square brackets
  649. following the entry.  Yes, I know that these are not in Officially
  650. Blessed Bibliography Format.  Sue me.
  651.  
  652. [1] Jennifer G. Steiner, Clifford Neuman, Jeffrey I. Schiller.
  653. "Kerberos: An Authentication Service for Open Network Systems", USENIX
  654. Mar 1988.  [athena-dist.mit.edu:pub/kerberos/doc/usenix.PS]
  655.  
  656. [2] S. P. Miller, B. C. Neuman, J. I. Schiller, and J. H. Saltzer,
  657. "Kerberos Authentication and Authorization System", 12/21/87.
  658.  
  659. [3] R. M. Needham and M. D.  Schroeder, "Using Encryption for
  660. Authentication in Large Networks of Computers," Communications of the
  661. ACM, Vol.  21(12), pp. 993-999 (December, 1978).
  662.      
  663. [4] V. L. Voydock and S. T. Kent, "Security Mechanisms in High-Level
  664. Network Protocols," Computing Surveys, Vol.  15(2), ACM (June 1983).
  665.  
  666. [5] Li Gong, "A Security Risk of Depending on Synchronized Clocks",
  667. Operating Systems Review, Vol 26, #1, pp 49--53.
  668.  
  669. [6] S.M. Bellovin and M. Merritt, "Limitations of the Kerberos
  670. Authentication System," USENIX Jan 1991.
  671. [research.att.com:dist/internet_security/kerblimit.usenix.ps]
  672.  
  673. [7] Refik Molva, Gene Tsudik, Els Van Herreweghen, and Stefano Zatti,
  674. "KryptoKnight Authentication and Key Distribution System."
  675. [jerico.usc.edu:pub/gene/kryptoknight.ps.Z]
  676.  
  677. [8] C. Neumann and J. Kohl, "The Kerberos(tm) Network Authentication
  678. Service (V5)," April 1992.  Currently released as an Internet Draft.
  679.  
  680. -- 
  681. Barry Jaspan, bjaspan@security.ov.com
  682. OpenVision Technologies
  683.