2015-09-25 7 views
6

Ho installato nodejs e SSL sul mio severCome risolvere manca un/certificato di catena di intermedio in nodejs

ei miei app.js codice

var sslOptions = { 
    key: fs.readFileSync('/etc/ssl/private/private.key'), 
    cert: fs.readFileSync('/etc/ssl/certs/cert.com.crt'), 
    requestCert: true, 
    ca: fs.readFileSync('/etc/ssl/certs/ca.crt'), 
    rejectUnauthorized: false 
}; 

var secureServer = https.createServer(sslOptions,app).listen(443, function(){ 
    console.log("Express server listening on port "); 

}); 

Ora quando posso controllare

https://www.sslshopper.com/

mi sta dando errore

Il certificato non è affidabile in tutti i browser Web. Potrebbe essere necessario installare un certificato Intermediate/chain per collegarlo a un certificato root attendibile. Ulteriori informazioni su questo errore. È possibile risolvere questo problema con seguendo le istruzioni di installazione dei certificati Comodo per la propria piattaforma server (utilizzare queste istruzioni per InstantSSL). Prestare attenzione allo alle parti relative ai certificati intermedi.

Qualche idea?

Come risolvere questo

risposta

13

commento la riga in cui si aggiunge il pacchetto ca. Copia tutto il testo da ca.crt e incollali in cert.com.crt (non sostituire il certificato precedente, semplicemente incollalo sotto). Dovrebbe funzionare bene ora.

var sslOptions = { 
    key: fs.readFileSync('/etc/ssl/private/private.key'), 
    cert: fs.readFileSync('/etc/ssl/certs/cert.com.crt'), 
    requestCert: true, 
    //ca: fs.readFileSync('/etc/ssl/certs/ca.crt'), 
    rejectUnauthorized: false 
}; 

var secureServer = https.createServer(sslOptions,app).listen(443, function(){ 
    console.log("Express server listening on port "); 

}); 
+0

Sempre con lo stesso problema –

+0

Grazie funziona perfettamente per me. –

+0

Ho trovato un codice molto simile [qui] (http://www.benjiegillam.com/2012/06/node-dot-js-ssl-certificate-chain/) – danilodeveloper

Problemi correlati