I have been struggling with an SSL problem for more than 1 month.
We have used openssl to generate our own CA, server and client certificates. We have also enable "SSLrequire" on the Apache web server (in htaccess this may be wrong), which means that anyone trying to connect through https on the server needs to present a valid certificate
The step are as follows;
- generate the CA key
- generate the CA CSR
- sign the CA CSR with the CA Key
so we have our own CA which is used to sign our server and client certificates.
next step
- generate server key
- generate server CSR
- sign server CSR with CA Key
So we have our server certificate & server private key which we installed succesfully on the server
Next we
- generate client key
- generate client CSR
- sign client CSR with CA Key
We then distribute the client certificate to our users together with the CA certificate. Both were install in their browsers.
When trying to connect we got the "Peer does not recognize and trust the CA that issued your certificate. " error.
We identified the problem being that the self signed CA certificate was not installed on the server. Normally the server will present a list of trusted CA to the device trying to connect to it and the device will have to send a certificate that has been signed by any of the CAs' the server has presented. But since our self signed CA certificate was not installed on the server, the browser could present a certificate that would be acceptable by the server.
So we went on the install the CA cert on the server - control panel Hsphere.
We took the content of the ca certificate and copied it in the "Certificate Authority File" textarea on the server and the server wouldn't accept it everytime complaining "Failed to update SSL Config Different key and certificate"
The CA certificate has been signed by itself so how can the server say that the certificate and key are different.
We also tried to copy the content of both the CA certificate file and the CA key file into the "Certificate Authority File" textarea, but that also wouldn't work.
As i said we have been struggling with that for more than one month. If anyone can help that would be really appreciated. If we have to pay for the service please let us know.
Thanks in advance.