Hi there,

 does it work with openssl_client ?

http://blog.yimingliu.com/2009/01/23/testing-a-pop3-server-via-telnet-or-openssl/

Bye,
Norman


2010/12/17 prasadkumar thotakura <[email protected]>:
> Hi,
>
> I have configured James mail server with TLS by uncommenting <useTLS> tags
> in smtpserver & pop3server blocks and configuring the socket manager as
> below
> <sockets>
>      <server-sockets>
>         <factory name="plain"
> class="org.apache.avalon.cornerstone.blocks.sockets.DefaultServerSocketFactory"/>
>           <factory name="ssl"
> class="org.apache.avalon.cornerstone.blocks.sockets.TLSServerSocketFactory">
>            <ssl-factory>
>               <keystore>
>                  <file>conf/thotap.jks</file>
>                  <password>changeit</password>
>                  <key-password>changeit</key-password>
>                  <type>JKS</type>
>                  <protocol>TLS</protocol>
>                  <algorithm>SunX509</algorithm>
>                  <authenticate-client>false</authenticate-client>
>               </keystore>
>            </ssl-factory>
>         </factory>
>      </server-sockets>
>      <client-sockets>
>         <factory name="plain"
> class="org.apache.avalon.cornerstone.blocks.sockets.DefaultSocketFactory"/>
>      </client-sockets>
>   </sockets>
>
> It looks like it has started without any issues. But when I try to create
> mail store using mail store, it is throwing the exception
> "java.net.SocketException: Software caused connection abort: recv failed".
> Here is the protocol trace
>
> DEBUG: setDebug: JavaMail version 1.4.3
> DEBUG: getProvider() returning
> javax.mail.Provider[STORE,pop3s,com.sun.mail.pop3.POP3SSLStore,Sun
> Microsystems, Inc]
> DEBUG POP3: connecting to host "inenthotapl1c", port 995, isSSL true
> keyStore is :
> keyStore type is : jks
> keyStore provider is :
> init keystore
> init keymanager of type SunX509
> trustStore is: C:\Java\jdk1.6.0_18\jre\lib\security\cacerts
> trustStore type is : jks
> trustStore provider is :
> init truststore
>
> adding as trusted cert:
>  Subject: CN=inenthotapl1c
>  Issuer:  CN=inenthotapl1c
>  Algorithm: RSA; Serial number: 0x4d0b797f
>  Valid from Fri Dec 17 20:23:51 IST 2010 until Thu Mar 17 20:23:51 IST 2011
>
>
> adding as trusted cert:
>  Subject: CN=UTN-USERFirst-Hardware, OU=http://www.usertrust.com, O=The
> USERTRUST Network, L=Salt Lake City, ST=UT, C=US
>  Issuer:  CN=UTN-USERFirst-Hardware, OU=http://www.usertrust.com, O=The
> USERTRUST Network, L=Salt Lake City, ST=UT, C=US
>  Algorithm: RSA; Serial number: 0x44be0c8b500024b411d3362afe650afd
>  Valid from Fri Jul 09 23:40:42 IST 1999 until Tue Jul 09 23:49:22 IST 2019
>
> adding as trusted cert:
>  Subject: CN=GlobalSign, O=GlobalSign, OU=GlobalSign Root CA - R3
>  Issuer:  CN=GlobalSign, O=GlobalSign, OU=GlobalSign Root CA - R3
>  Algorithm: RSA; Serial number: 0x4000000000121585308a2
>  Valid from Wed Mar 18 15:30:00 IST 2009 until Sun Mar 18 15:30:00 IST 2029
>
> adding as trusted cert:
>  Subject: CN=VeriSign Class 1 Public Primary Certification Authority - G3,
> OU="(c) 1999 VeriSign, Inc. - For authorized use only", OU=VeriSign Trust
> Network, O="VeriSign, Inc.", C=US
>  Issuer:  CN=VeriSign Class 1 Public Primary Certification Authority - G3,
> OU="(c) 1999 VeriSign, Inc. - For authorized use only", OU=VeriSign Trust
> Network, O="VeriSign, Inc.", C=US
>  Algorithm: RSA; Serial number: 0x8b5b75568454850b00cfaf3848ceb1a4
>  Valid from Fri Oct 01 05:30:00 IST 1999 until Thu Jul 17 05:29:59 IST 2036
>
> adding as trusted cert:
>  Subject: CN=America Online Root Certification Authority 1, O=America
> Online Inc., C=US
>  Issuer:  CN=America Online Root Certification Authority 1, O=America
> Online Inc., C=US
>  Algorithm: RSA; Serial number: 0x1
>  Valid from Tue May 28 11:30:00 IST 2002 until Fri Nov 20 02:13:00 IST 2037
>
> adding as trusted cert:
>  Subject: OU=Security Communication RootCA2, O="SECOM Trust Systems
> CO.,LTD.", C=JP
>  Issuer:  OU=Security Communication RootCA2, O="SECOM Trust Systems
> CO.,LTD.", C=JP
>  Algorithm: RSA; Serial number: 0x0
>  Valid from Fri May 29 10:30:39 IST 2009 until Tue May 29 10:30:39 IST 2029
>
> adding as trusted cert:
>  Subject: CN=Thawte Timestamping CA, OU=Thawte Certification, O=Thawte,
> L=Durbanville, ST=Western Cape, C=ZA
>  Issuer:  CN=Thawte Timestamping CA, OU=Thawte Certification, O=Thawte,
> L=Durbanville, ST=Western Cape, C=ZA
>  Algorithm: RSA; Serial number: 0x0
>  Valid from Wed Jan 01 05:30:00 IST 1997 until Fri Jan 01 05:29:59 IST 2021
>
> adding as trusted cert:
>  Subject: CN=Entrust.net Certification Authority (2048), OU=(c) 1999
> Entrust.net Limited, OU=www.entrust.net/CPS_2048 incorp. by ref. (limits
> liab.), O=Entrust.net
>  Issuer:  CN=Entrust.net Certification Authority (2048), OU=(c) 1999
> Entrust.net Limited, OU=www.entrust.net/CPS_2048 incorp. by ref. (limits
> liab.), O=Entrust.net
>  Algorithm: RSA; Serial number: 0x3863b966
>  Valid from Fri Dec 24 23:20:51 IST 1999 until Tue Dec 24 23:50:51 IST 2019
>
> adding as trusted cert:
>  Subject: CN=GTE CyberTrust Root 5, OU="GTE CyberTrust Solutions, Inc.",
> O=GTE Corporation, C=US
>  Issuer:  CN=GTE CyberTrust Root 5, OU="GTE CyberTrust Solutions, Inc.",
> O=GTE Corporation, C=US
>  Algorithm: RSA; Serial number: 0x1b6
>  Valid from Fri Aug 14 20:20:00 IST 1998 until Thu Aug 15 05:29:00 IST 2013
>
> adding as trusted cert:
>  Subject: CN=UTN-USERFirst-Object, OU=http://www.usertrust.com, O=The
> USERTRUST Network, L=Salt Lake City, ST=UT, C=US
>  Issuer:  CN=UTN-USERFirst-Object, OU=http://www.usertrust.com, O=The
> USERTRUST Network, L=Salt Lake City, ST=UT, C=US
>  Algorithm: RSA; Serial number: 0x44be0c8b500024b411d3362de0b35f1b
>  Valid from Sat Jul 10 00:01:20 IST 1999 until Wed Jul 10 00:10:36 IST 2019
>
> adding as trusted cert:
>  Subject: CN=UTN - DATACorp SGC, OU=http://www.usertrust.com, O=The
> USERTRUST Network, L=Salt Lake City, ST=UT, C=US
>  Issuer:  CN=UTN - DATACorp SGC, OU=http://www.usertrust.com, O=The
> USERTRUST Network, L=Salt Lake City, ST=UT, C=US
>  Algorithm: RSA; Serial number: 0x44be0c8b500021b411d32a6806a9ad69
>  Valid from Fri Jun 25 00:27:21 IST 1999 until Tue Jun 25 00:36:30 IST 2019
>
> adding as trusted cert:
>  Subject: CN=Sonera Class2 CA, O=Sonera, C=FI
>  Issuer:  CN=Sonera Class2 CA, O=Sonera, C=FI
>  Algorithm: RSA; Serial number: 0x1d
>  Valid from Fri Apr 06 12:59:40 IST 2001 until Tue Apr 06 12:59:40 IST 2021
>
> adding as trusted cert:
>  Subject: CN=TC TrustCenter Class 2 CA II, OU=TC TrustCenter Class 2 CA,
> O=TC TrustCenter GmbH, C=DE
>  Issuer:  CN=TC TrustCenter Class 2 CA II, OU=TC TrustCenter Class 2 CA,
> O=TC TrustCenter GmbH, C=DE
>  Algorithm: RSA; Serial number: 0x2e6a000100021fd752212c115c3b
>  Valid from Thu Jan 12 20:08:43 IST 2006 until Thu Jan 01 04:29:59 IST 2026
>
> trigger seeding of SecureRandom
> done seeding SecureRandom
> main, setSoTimeout(30000) called
> %% No cached client session
> *** ClientHello, TLSv1
> RandomCookie:  GMT: 1292535513 bytes = { 80, 149, 82, 71, 48, 28, 7, 48, 62,
> 89, 98, 107, 69, 243, 218, 66, 242, 252, 246, 151, 251, 224, 111, 128, 151,
> 108, 212, 216 }
> Session ID:  {}
> Cipher Suites: [SSL_RSA_WITH_RC4_128_MD5, SSL_RSA_WITH_RC4_128_SHA,
> TLS_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_CBC_SHA,
> TLS_DHE_DSS_WITH_AES_128_CBC_SHA, SSL_RSA_WITH_3DES_EDE_CBC_SHA,
> SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA,
> SSL_RSA_WITH_DES_CBC_SHA, SSL_DHE_RSA_WITH_DES_CBC_SHA,
> SSL_DHE_DSS_WITH_DES_CBC_SHA, SSL_RSA_EXPORT_WITH_RC4_40_MD5,
> SSL_RSA_EXPORT_WITH_DES40_CBC_SHA, SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA,
> SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA]
> Compression Methods:  { 0 }
> ***
> main, WRITE: TLSv1 Handshake, length = 73
> main, READ: TLSv1 Handshake, length = 510
> *** ServerHello, TLSv1
> RandomCookie:  GMT: 1292535513 bytes = { 172, 115, 215, 117, 107, 95, 2,
> 232, 211, 91, 109, 40, 21, 150, 192, 39, 130, 119, 132, 205, 20, 146, 28,
> 221, 171, 237, 250, 42 }
> Session ID:  {77, 11, 135, 217, 148, 28, 74, 88, 12, 70, 50, 90, 153, 42,
> 152, 221, 27, 209, 17, 18, 196, 27, 159, 161, 126, 179, 202, 179, 121, 143,
> 103, 159}
> Cipher Suite: SSL_RSA_WITH_RC4_128_MD5
> Compression Method: 0
> ***
> %% Created:  [Session-1, SSL_RSA_WITH_RC4_128_MD5]
> ** SSL_RSA_WITH_RC4_128_MD5
> *** Certificate chain
> chain [0] = [
> [
>  Version: V1
>  Subject: CN=inenthotapl1c
>  Signature Algorithm: MD5withRSA, OID = 1.2.840.113549.1.1.4
>
>  Key:  Sun RSA public key, 1024 bits
>  modulus:
> 100746153626772380323303648658870070106863391015695246025204815976287595495907058283516121160001124559621739363730729057670951189969880962173035638241125927007904648572639604211500921898265691580498056772247017875596545782618773771012080708411850537554023805618091783458960955941721838725823477579438664531497
>  public exponent: 65537
>  Validity: [From: Fri Dec 17 20:23:51 IST 2010,
>               To: Thu Mar 17 20:23:51 IST 2011]
>  Issuer: CN=inenthotapl1c
>  SerialNumber: [    4d0b797f]
>
> ]
>  Algorithm: [MD5withRSA]
>  Signature:
> 0000: 7F A1 66 C4 A3 15 AB D7   A0 50 A6 FF DB 00 1A 1E  ..f......P......
> 0010: BC B5 49 2C 7C 1A 42 24   27 E0 84 95 6C 39 6D FE  ..I,..B$'...l9m.
> 0020: 87 B5 10 63 BA ED 87 95   B5 D5 0D 69 BE F8 63 E6  ...c.......i..c.
> 0030: 5E 72 78 AA 39 87 5B EC   74 03 7B 3E DA 8C F3 14  ^rx.9.[.t..>....
> 0040: A7 2E 25 72 7A ED 06 DF   A9 D4 CC 54 A0 AC 52 C5  ..%rz......T..R.
> 0050: B9 09 04 1E 64 1A E0 E6   98 31 E8 15 23 88 77 FD  ....d....1..#.w.
> 0060: 27 85 B9 38 94 E0 4B DD   97 FE B8 54 7D C4 71 E3  '..8..K....T..q.
> 0070: 97 F7 04 C3 6E 69 48 CE   9D 03 52 34 C9 E9 40 68  ....nih...r...@h
>
> ]
> ***
> Found trusted certificate:
> [
> [
>  Version: V1
>  Subject: CN=inenthotapl1c
>  Signature Algorithm: MD5withRSA, OID = 1.2.840.113549.1.1.4
>
>  Key:  Sun RSA public key, 1024 bits
>  modulus:
> 100746153626772380323303648658870070106863391015695246025204815976287595495907058283516121160001124559621739363730729057670951189969880962173035638241125927007904648572639604211500921898265691580498056772247017875596545782618773771012080708411850537554023805618091783458960955941721838725823477579438664531497
>  public exponent: 65537
>  Validity: [From: Fri Dec 17 20:23:51 IST 2010,
>               To: Thu Mar 17 20:23:51 IST 2011]
>  Issuer: CN=inenthotapl1c
>  SerialNumber: [    4d0b797f]
>
> ]
>  Algorithm: [MD5withRSA]
>  Signature:
> 0000: 7F A1 66 C4 A3 15 AB D7   A0 50 A6 FF DB 00 1A 1E  ..f......P......
> 0010: BC B5 49 2C 7C 1A 42 24   27 E0 84 95 6C 39 6D FE  ..I,..B$'...l9m.
> 0020: 87 B5 10 63 BA ED 87 95   B5 D5 0D 69 BE F8 63 E6  ...c.......i..c.
> 0030: 5E 72 78 AA 39 87 5B EC   74 03 7B 3E DA 8C F3 14  ^rx.9.[.t..>....
> 0040: A7 2E 25 72 7A ED 06 DF   A9 D4 CC 54 A0 AC 52 C5  ..%rz......T..R.
> 0050: B9 09 04 1E 64 1A E0 E6   98 31 E8 15 23 88 77 FD  ....d....1..#.w.
> 0060: 27 85 B9 38 94 E0 4B DD   97 FE B8 54 7D C4 71 E3  '..8..K....T..q.
> 0070: 97 F7 04 C3 6E 69 48 CE   9D 03 52 34 C9 E9 40 68  ....nih...r...@h
>
> ]
> *** ServerHelloDone
> *** ClientKeyExchange, RSA PreMasterSecret, TLSv1
> main, WRITE: TLSv1 Handshake, length = 134
> SESSION KEYGEN:
> PreMaster Secret:
> 0000: 03 01 2A CF 2C 62 D8 65   FB 77 4E 91 02 6B EA 22  ..*.,b.e.wN..k."
> 0010: 02 CB 4C 71 29 17 52 77   80 4F 53 4A 1B 6C 1C 20  ..Lq).Rw.OSJ.l.
> 0020: 07 52 0E C4 D3 FB 7E 23   C2 34 BC ED 8A 34 9D BB  .R.....#.4...4..
> CONNECTION KEYGEN:
> Client Nonce:
> 0000: 4D 0B 87 D9 50 95 52 47   30 1C 07 30 3E 59 62 6B  M...P.RG0..0>Ybk
> 0010: 45 F3 DA 42 F2 FC F6 97   FB E0 6F 80 97 6C D4 D8  E..B......o..l..
> Server Nonce:
> 0000: 4D 0B 87 D9 AC 73 D7 75   6B 5F 02 E8 D3 5B 6D 28  M....s.uk_...[m(
> 0010: 15 96 C0 27 82 77 84 CD   14 92 1C DD AB ED FA 2A  ...'.w.........*
> Master Secret:
> 0000: 62 BC 9F BB ED C9 58 E2   E3 18 EE 06 E6 0F 97 4F  b.....X........O
> 0010: 59 72 B0 0C 13 EE CD 93   BF 22 A8 C9 BE 94 C5 BB  Yr......."......
> 0020: A9 5B BC 14 6B 9A 92 4F   60 83 2C B4 5D 34 8C 7A  .[..k..O`.,.]4.z
> Client MAC write Secret:
> 0000: E1 B0 A3 D9 56 B9 05 59   DF AC 59 FE D5 E9 2B 4B  ....V..Y..Y...+K
> Server MAC write Secret:
> 0000: 1D E6 10 7E 7E 65 20 F0   9C AF 95 87 A1 FE 9A 43  .....e ........C
> Client write key:
> 0000: 60 3E EB 94 C9 05 22 19   1F B3 A7 97 2C 2F E5 52  `>....".....,/.R
> Server write key:
> 0000: A6 B9 9A C6 E7 10 76 63   AD 51 AD 0C 19 3F F5 4A  ......vc.Q...?.J
> ... no IV used for this cipher
> main, WRITE: TLSv1 Change Cipher Spec, length = 1
> *** Finished
> verify_data:  { 171, 150, 237, 61, 115, 89, 84, 195, 40, 197, 113, 109 }
> ***
> main, WRITE: TLSv1 Handshake, length = 32
> main, handling exception: java.net.SocketException: Software caused
> connection abort: recv failed
> javax.mail.MessagingException: Connect failed;
>  nested exception is:
> java.net.SocketException: Software caused connection abort: recv failed
> at com.sun.mail.pop3.POP3Store.protocolConnect(POP3Store.java:176)
> at javax.mail.Service.connect(Service.java:291)
> at
> com.prasad.mail.utils.EmailReaderUtils.createEmailStore(EmailReaderUtils.java:88)
> at
> com.prasad.mail.utils.EmailReaderUtilsTest.testCreateEmailStore(EmailReaderUtilsTest.java:36)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at org.junit.internal.runners.TestMethod.invoke(TestMethod.java:59)
> at
> org.junit.internal.runners.MethodRoadie.runTestMethod(MethodRoadie.java:98)
> at org.junit.internal.runners.MethodRoadie$2.run(MethodRoadie.java:79)
> at
> org.junit.internal.runners.MethodRoadie.runBeforesThenTestThenAfters(MethodRoadie.java:87)
> at org.junit.internal.runners.MethodRoadie.runTest(MethodRoadie.java:77)
> at org.junit.internal.runners.MethodRoadie.run(MethodRoadie.java:42)
> at
> org.junit.internal.runners.JUnit4ClassRunner.invokeTestMethod(JUnit4ClassRunner.java:88)
> at
> org.junit.internal.runners.JUnit4ClassRunner.runMethods(JUnit4ClassRunner.java:51)
> at
> org.junit.internal.runners.JUnit4ClassRunner$1.run(JUnit4ClassRunner.java:44)
> at
> org.junit.internal.runners.ClassRoadie.runUnprotected(ClassRoadie.java:27)
> at org.junit.internal.runners.ClassRoadie.runProtected(ClassRoadie.java:37)
> at
> org.junit.internal.runners.JUnit4ClassRunner.run(JUnit4ClassRunner.java:42)
> at
> com.intellij.rt.junit4.Junit4TestMethodAdapter.run(Junit4TestMethodAdapter.java:49)
> at junit.textui.TestRunner.doRun(TestRunner.java:116)
> at
> com.intellij.rt.execution.junit.IdeaTestRunner.doRun(IdeaTestRunner.java:65)
> at junit.textui.TestRunner.doRun(TestRunner.java:109)
> at
> com.intellij.rt.execution.junit.IdeaTestRunner.startRunnerWithArgs(IdeaTestRunner.java:24)
> at
> com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:118)
> at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:40)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at com.intellij.rt.execution.application.AppMain.main(AppMain.java:90)
> Caused by: java.net.SocketException: Software caused connection abort: recv
> failed
> at java.net.SocketInputStream.socketRead0(Native Method)
> at java.net.SocketInputStream.read(SocketInputStream.java:129)
> at com.sun.net.ssl.internal.ssl.InputRecord.readFully(InputRecord.java:293)
> at com.sun.net.ssl.internal.ssl.InputRecord.read(InputRecord.java:331)
> at
> com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:789)
> at
> com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1112)
> at
> com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1139)
> at
> com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1123)
> at
> com.sun.mail.util.SocketFetcher.configureSSLSocket(SocketFetcher.java:503)
> at com.sun.mail.util.SocketFetcher.getSocket(SocketFetcher.java:234)
> at com.sun.mail.pop3.Protocol.<init>(Protocol.java:98)
> at com.sun.mail.pop3.POP3Store.getPort(POP3Store.java:227)
> at com.sun.mail.pop3.POP3Store.protocolConnect(POP3Store.java:172)
> ... 31 more
>
> And also I am not able to configure in OutLook also as it is not able to
> connect to the server.
>
> Any pointers to trace out the issue or resolution is greatly appreciated.
>
> Thanks,
> Prasad
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to