На этой странице вы найдете инструкции по добавлению проверки подлинности сертификата клиента в любое веб-приложение:
https://www.scriptjunkie.us/2013/11/adding-easy-ssl-client-authentication-to-any-webapp/
, как для того, чтобы сертификаты клиента работали с curl - вам, вероятно, потребуетсяпреобразовать сертификат из формата pkcs12 в простой закрытый ключ и сертификат, используя openssl, я сделал это:
openssl pkcs12 -CApath /etc/ssl/certs -in startcom.p12 -out start.pem -info -nodes
, где startcom.p12 был экспортирован из Firefox (у меня нет Mac, поэтому могу 't test с Safari).
и тогда я могу:
openssl s_client -connect auth.startssl.com:443 -CApath /etc/ssl/certs/ -cert /tmp/start.pem -key /tmp/start.key -prexit -debug -msg -state -servername auth.startssl.com -tlsextdebug
, который подключается, и:
wget --verbose --debug --ca-directory=/etc/ssl/certs/ --certificate=/tmp/start.pem --private-key=/tmp/start.key https://auth.startssl.com/
также работает.