I'm trying to access a third-party service via PHP curl on a Centos 6 system which comes with curl and libcurl compiled against NSS instead of OpenSSL.
This is causing problems for me, every time I try to access the service I get this error NSS: client certificate not found (nickname not specified)
.
My understanding is that I need to install the certificates in the NSS database.
I'm looking for step by step instructions on how to do this (keep in mind, I need this to work with PHP curl functions called from Nginx server)
Thanks
Try prefixing the certificate filename with "./", or using the full path. From the curl manpage:
(emphasis mine)
Alternatively, some instructions for importing into the NSS certificate database are here, although I have not used them: http://rcritten.fedorapeople.org/nss_compat_ossl.html
I got the same error message with curl when I entered the wrong password when trying to access a FTPS server which used simple password authentication. It had nothing to do with certificates.
I had the same issue on Centos 7. After debugging it was related to the the timeout.
So if you see this issue and use
curl_setopt($curl, CURLOPT_TIMEOUT_MS, 300);
Then check how long it takes. If it is around your timeout period. That is the problem and not related to any certificate.I was expecting some timeout error from Curl in case of timeout but that doesn't seem to happen.