224600dca2ed3480d6574abdc2755e1061b47d2e
[mmh] / docs / README.SASL
1 #
2 # README.SASL - Readme about SASL support in nmh
3 #
4 # $Id$
5 #
6
7 SASL is short for the Simple Authentication and Security Layer.  Is is
8 a framework for adding authentication and encryption to network protocols.
9 It is described in IETF RFC 2222.
10
11 This release of nmh supports SASL for POP and SMTP.  The SASL support
12 is implemented using the Cyrus-SASL library.  This library can be found
13 at ftp://ftp.andrew.cmu.edu/pub/cyrus-mail.  Obviously, SASL support only
14 works if you use --enable-pop and the SMTP mail transport.
15
16 This release of NMH only supports "Version 2" of the Cyrus SASL library.
17 It should work with any newer Cyrus SASL release, but it was tested with
18 Cyrus SASL 2.1.22.  In particular, the CRAM-MD5 and GSSAPI (Kerberos 5)
19 mechanisms were tested.  Older versions of Cyrus-SASL had a bug which
20 could manifest when negotiating encrypting depending on the encryption
21 type you used, so a newer version of Cyrus-SASL is recommended.
22
23 Currently, security layers ("encryption" in SASL-speak) are supported
24 for both POP and SMTP.  This means that if your POP or SMTP server
25 _and_ the selected SASL mechanism supports it, client-server
26 communications will be encrypted.  In theory this should work with
27 any SASL mechanism that supports security layers; it has only been
28 tested with the GSSAPI mechanism.
29
30 If you are curious as to whether or not your communications are actually
31 encrypted or not, you can use the -snoop flag to the POP or SMTP utilities.
32 Communication that is encrypted is preceeded by an (encrypted) or
33 (decrypted), depending on the direction of communication.
34
35 If you would like to use the GSSAPI SASL mechanism (Kerberos V), you
36 should read very carefully the documentation that comes with
37 Cyrus-SASL, specifically the GSSAPI documentation.  Getting the GSSAPI
38 plugin to work correctly with SASL can be "interesting" to say the least.