README.MSCHAP81 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. PPP Support for Microsoft's CHAP-81
  2. ===================================
  3. Frank Cusack frank@google.com
  4. Some text verbatim from README.MSCHAP80,
  5. by Eric Rosenquist, rosenqui@strataware.com
  6. INTRODUCTION
  7. First, please read README.MSCHAP80; almost everything there applies here.
  8. MS-CHAP was basically devised by Microsoft because rather than store
  9. plaintext passwords, they (Microsoft) store the md4 hash of passwords.
  10. It provides no advantage over standard CHAP, since the hash is used
  11. as plaintext-equivalent. (Well, the Change-Password packet is arguably
  12. an advantage.) It does introduce a significant weakness if the LM hash
  13. is used. Additionally, the format of the failure packet potentially
  14. gives information to an attacker. The weakness of the LM hash is partly
  15. addressed in RFC 2433, which deprecates its use.
  16. MS-CHAPv2 adds 2 benefits to MS-CHAP. (1) The LM hash is no longer
  17. used. (2) Mutual authentication is required. Note that the mutual
  18. authentication in MS-CHAPv2 is different than the case where both PPP
  19. peers require authentication from the other; the former proves that
  20. the server has access to the client's password, the latter proves that
  21. the server has access to a secret which the client also has -- which
  22. may or may not be the same as the client's password (but should not be
  23. the same, per RFC 1994). Whether this provides any actual benefit is
  24. outside the scope of this document. The details of MS-CHAPv2 can be
  25. found in the document:
  26. <http://www.ietf.org/rfc/rfc2759.txt>
  27. BUILDING THE PPPD
  28. In addition to the requirements for MS-CHAP, MS-CHAPv2 uses the SHA-1
  29. hash algorithm. A public domain implementation is provided with pppd.
  30. TROUBLESHOOTING
  31. Assuming that everything else has been configured correctly for PPP and
  32. CHAP, the MS-CHAPv2-specific problems you're likely to encounter are mostly
  33. related to your Windows NT account and its settings. A Microsoft server
  34. returns error codes in its CHAP response. The following are extracted from
  35. RFC 2759:
  36. 646 ERROR_RESTRICTED_LOGON_HOURS
  37. 647 ERROR_ACCT_DISABLED
  38. 648 ERROR_PASSWD_EXPIRED
  39. 649 ERROR_NO_DIALIN_PERMISSION
  40. 691 ERROR_AUTHENTICATION_FAILURE
  41. 709 ERROR_CHANGING_PASSWORD
  42. You'll see these in your pppd log as a line similar to:
  43. Remote message: E=649 No dialin permission
  44. Previously, pppd would log this as:
  45. Remote message: E=649 R=0
  46. Now, the text message is logged (both for MS-CHAP and MS-CHAPv2).