Cancellazione della cache dei certificati Java (certificati di ricarica forza)

Una domanda semplice qui.

Un'applicazione mi ha dato questa exception quando cerca di accedere a un sito web con un certificato scaduto: java.security.cert.CertificateExpiredException

Così, ho rinnovato il certificato dalla macchina del sito web e l'ho riavviato. Quando cerco di accedervi da Firefox o Chrome caricherò il nuovo certificato (la data di scadenza è impostata da qualche parte vicino al 2040).

Il problema è che le applicazioni Java non sembra rinnovare questo certificato, sembra essere bloccato in una sorta di cache interna. Ho già provato ad aggiungerlo alla keystore e impostare le opzioni nelle properties; dell'applicazione come -Dcom.sun.net.ssl.checkRevocation=false . Non import quello che faccio, mi getta sempre una java.security.cert.CertificateExpiredException

Qualche idea?

  • Il server Nginx + SSL non risponde
  • emissione di smtps postfix
  • Tutti i traffico HTTPS che si reindirizzano a un sito IIS
  • Disabilita tutti ma RC4 in apache
  • Password SSL su apache2 riavviare
  • RabbitMQ con un certificato LetsEncrypt
  • LDP SSL Port 636 Works - ldaps: // non lo fa
  • STARTTLS è più sicuro di TLS / SSL?
  • One Solution collect form web for “Cancellazione della cache dei certificati Java (certificati di ricarica forza)”

    La posizione predefinita del keystore di Java è un file .keystore nella tua home directory (properties; di sistema user.home), a less che non sia specificato altrimenti è where apparirà un'applicazione Java.

    Prova a eseguire:

     $ keytool -list -keystore ~/.keystore -storepass changeit -v 

    per vedere se il certificato scaduto è in là.

    Se si desidera specificare una keystore di identity framework; diversa da utilizzare, è ansible farlo utilizzando le seguenti properties; di sistema:

     javax.net.ssl.Keystore=/path/to/identity.jks javax.net.ssl.keyStorePassword=mykeystorepassword 

    Credo che Firefox utilizzi NSS e che tu possa visualizzare la sua libreria utilizzando l'utilità certutil (da nss-tools o un pacchetto simile) qualcosa di simile:

     $ certutil -L -d sql:$HOME/.pki/nssdb 

    È necessario utilizzare l'utilità pk12util per estrarre la chiave e il certificato in un file PKCS12, ma è probabilmente meglio distriggersre semplicemente una nuova richiesta di firma del certificato utilizzando l'utilità keytool.

    Notare che un certificato revocato non è lo stesso di uno scaduto e per questo motivo il tuo checkRevocation = false non funziona. La CA può revocare in qualsiasi momento un certificato anche se non è ancora scaduto e ciò indica che non dovrebbe più essere attendibile.

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.