Ho appena aggiunto un certificato SSL ad Apache. Il problema è che Apache viene eseguito all'avvio del sistema e dopo l'accensione del mio server, Apache viene eseguito ma non viene eseguito. Ho inserito l'indirizzo IP del mio computer e il mio browser continua a provare a connettersi. Vedo un cerchio che gira.
Quindi salgo sul mio server, uccido tutti i processi relativi ad Apache ed eseguo sudo service apache2 restart
. A causa del sudo
Mi viene richiesta la password del superutente, ma dopo che l'ho inserita, Apache chiede la password per il file .key. L'ho inserito e poi Apache funziona bene. L'SSL funziona anche.
Allora perché Apache non funziona finché non lo riavvio? È perché vuole che inserisca la password ad ogni avvio? In tal caso, come posso farlo sul mio server Xubuntu? Posso farlo in modo da non doverlo inserire ogni volta?
Risposta accettata:
Sembra che la chiave privata per il tuo certificato SSL sia protetta da password. Per verificare se è davvero così, esamina l'inizio del tuo file di chiavi usando il comando head -3 your.key
. Questa chiave privata è crittografata:
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: AES-128-CBC,C251E8A1254B933D763703EE1C364AB7
Questo file non è crittografato:
-----BEGIN RSA PRIVATE KEY-----
MIIEowIBAAKCAQEAvbeWtO9nQP4cFFuhGrOM/WQ73oTQHU7mzZB9CaA3R2iwjDNz
wwlDtT9tfo0tCC2ib9STfeM6AYrdI3wauzCu7AV4CFGSMP3HLX8DJuk8zzbdQHHv
Per rimuovere la password da una chiave privata RSA, utilizzare il comando seguente:
umask 077
mv your.key old-with-pass.key
openssl rsa -in old-with-pass.key -out your.key
Il umask 077
comando è necessario per garantire che la nuova chiave non venga creata con autorizzazioni eccessivamente rilassate. In alternativa, puoi cambiare manualmente la modalità del file con chmod 400 new.key
. A seconda della posizione della chiave, potrebbe essere necessario anteporre il openssl
, mv
e chmod
comandi con sudo
.