This document explains how to enable JAMES 1.2.1 to use Transport Layer Security (TLS) (ie SSL).
Obtain JSSE source from java.sun.com. Follow their installation directions. We assume that you install JSSE as a standard extension, with a static provider definition. (See notes with JSSE distribution)
Note that the US export restrictions still apply to JSSE (at version 1.0.2), so while both the international and domestic versions offer the same level of crypto, the international version does not take alternative providers.
Using JAMES with TLS. You need to do three things over and above the normal operation of James:
Start James
(Positive Test) Use an SSL client to open a socket to the appropriate port.
I used openssl from www.openssl.org to test this.
E.g. openssl s_client -connect localhost:4555. You should see the normal
remote manager or POP3 server greeting and have normal operation.
- If, using openssl s_client, you get a connection refused/ error no
111, just try again. This probably means you got to the port before it
was ready.
(Negative Test) telnet to port 4555 (ie without SSL). This should hang the telnet client. It should also lock port 4555 until the connection times out, I think.