I am getting the following error :
ERROR {org.apache.synapse.transport.passthru.SourceHandler} - I/O error: null cert chain {org.apache.synapse.transport.passthru.SourceHandler}
while trying to enable mutual SSL between my (custom)Proxy service and 2 unsecured back-end services.
Here's what I've done so far :
- Enabled
<parameter name="SSLVerifyClient">require</parameter>
- Extracted public certs of 2 back-end servers in [carbon_home]/respository/resources/security/wso2carbon.jks using Java Key Tool :
keytool -export -keystore C:\I_T\WS02\wso2 as-5.2.1\repository\resources\security\client-truststore.jks -file C:\wssecurity \wso2\wso2ASpublic.cert
Imported these certs into ESB trust store :
keytool -import -file C:\wssecurity\wso2\wso2DSSpublic.cert -keystore C:\I_T\WS02\wso2esb-4.8.1\repository\resources\security\client-truststore.jks -storepass wso2carbon -alias wso2carbonDSS
Done the same with the ESB cert into the servers' client-truststores .
I suspect step 2-4 were unnecessary because the trust stores already contained these certs.
Perhaps this is causing the problems?
I solved this if any one wants to know how to achieve :
======================================================================