Save a tutti.
Ho un sito web (php+mysql+apache) al quale si deve poter accedere solo tramite la presenza di una smartcard
Ho installato apacheSSL, creato un certificato ed effettivamente il sito va sotto https senza problemi (almeno adesso, xchè la configurazione nn è stata affatto facile)
Adesso ho la necessità che venga richiesto il PIN della smartcard al momento dell'accesso alla pagina.
Nel file httpd.conf ho infatti le righe:
<VirtualHost *:443>
ServerName localhost
ServerAdmin root@localhost
DocumentRoot "C:\program files\easyphp1-8\www"
SSLOptions +FakeBasicAuth
SSLCertificateFile conf/ssl/localhost.cer
SSLCertificateKeyFile conf/ssl/localhost.key
#SSLCACertificateFile conf/ssl/ct_root.pem
#SSLCACertificatePath conf/ssl
#SSLCertificateFile conf/ssl/GTECyberTrustGlobalRoot2018.cer
#SSLCertificateKeyFile conf/ssl/ca_new_2018.key
SSLEngine On
SSLVerifyClient require
SSLVerifyDepth 3
</VirtualHost>
La mascherina di richiesta del PIN esce (2 volte x la precisione), ma poi pagina bianca ed errore su Apache :
+-------------------------------------------------------------------------+
[Fri Jun 23 10:33:26 2006] [debug] ssl_engine_kernel.c(1207): Certificate Verification: depth: 0, subject: /C=IT/O=NON PRESENTE/CN=UTENTE DEMO/TEST 403/TESTST11R11G403I/062035/GN=TEST 403/SN=UTENTE DEMO, issuer: /C=IT/O=Postecom s.p.a./OU=CA e Sicurezza/CN=Postecom CA1
[Fri Jun 23 10:33:26 2006] [error] Certificate Verification: Error (20): unable to get local issuer certificate
[Fri Jun 23 10:33:26 2006] [debug] ssl_engine_kernel.c(1787): OpenSSL: Write: SSLv3 read client certificate B
[Fri Jun 23 10:33:26 2006] [debug] ssl_engine_kernel.c(1806): OpenSSL: Exit: error in SSLv3 read client certificate B
[Fri Jun 23 10:33:26 2006] [debug] ssl_engine_kernel.c(1806): OpenSSL: Exit: error in SSLv3 read client certificate B
[Fri Jun 23 10:33:26 2006] [info] SSL library error 1 in handshake (server localhost:443, client 127.0.0.1)
[Fri Jun 23 10:33:26 2006] [info] SSL Library Error: 336105650 error:140890B2:SSL routines:SSL3_GET_CLIENT_CERTIFICATE:no certificate returned
[Fri Jun 23 10:33:26 2006] [info] Connection to child 249 closed with abortive shutdown(server localhost:443, client 127.0.0.1)
Abilitando la riga
SSLCACertificateFile conf/ssl/ct_root.pem
La mascherina di richiesta del PIN della smart card nn esce più e l’errore diventa:
[Fri Jun 23 11:26:17 2006] [debug] ssl_engine_kernel.c(1787): OpenSSL: Write: SSLv3 read client certificate B
[Fri Jun 23 11:26:17 2006] [debug] ssl_engine_kernel.c(1806): OpenSSL: Exit: error in SSLv3 read client certificate B
[Fri Jun 23 11:26:17 2006] [debug] ssl_engine_kernel.c(1806): OpenSSL: Exit: error in SSLv3 read client certificate B
[Fri Jun 23 11:26:17 2006] [info] SSL library error 1 in handshake (server localhost:443, client 127.0.0.1)
[Fri Jun 23 11:26:17 2006] [info] SSL Library Error: 336105671 error:140890C7:SSL routines:SSL3_GET_CLIENT_CERTIFICATEeer did not return a certificate No CAs known to server for verification?
[Fri Jun 23 11:26:17 2006] [info] Connection to child 249 closed with abortive shutdown(server localhost:443, client 127.0.0.1)
Abilitando invece anche la riga
SSLCACertificatePath conf/ssl/
La mascherina di richiesta del PIN della smart card continua ad uscire e l’errore è come nel 1° caso (unable to get local issuer certificate)
Qualcuno mi può dare lumi?
Mi sembra di avere la soluzione ad un passo, ma mi serve la dritta decisiva.
Ciao e grazie