Contraseña SSL al reiniciar apache2


33

Configuré el certificado SSL comodín de Godaddy en Apache2. Cada vez que el servidor se reinicia, solicita la frase de contraseña para la clave privada del certificado SSL.

¿Cuál es la mejor manera de eliminar este obstáculo para reiniciar, porque cuando el reinicio de la rotación del archivo de registro se produce en medio de la noche, el servidor no vuelve a funcionar y recibo una llamada de cliente descontento por la mañana, ya que es un servidor compartido .


55
Si bien la pregunta real ha sido respondida, permítanme agregar: la rotación del archivo de registro no requiere un reinicio. Una recarga estará bien y no requerirá que presente ninguna credencial.
Jan Jungnickel

Gracias Jan - buen punto - en realidad no estoy seguro de por qué el corte se está reiniciando - parece suceder aproximadamente una semana. Necesito profundizar más para averiguar por qué
ryw 05 de

Respuestas:


28

Para que apache reciba la frase de contraseña cada vez que se reinicia, agréguela a httpd.conf:

SSLPassPhraseDialog exec:/path/to/passphrase-file

en su archivo de frase de contraseña:

#!/bin/sh
echo "passphrase"

y hacer que el archivo de frase de contraseña sea ejecutable:

chmod +x passphrase-file

1
funcionó para mí también! : D
markcial

55
Recuerde establecer los permisos adecuados en la secuencia de comandos que contiene la frase de contraseña , de lo contrario, ha eliminado efectivamente cualquier seguridad que le haya dado la frase de contraseña. (También debe establecer los permisos adecuados en la clave, como se describe en la respuesta de Max).
voretaq7

66
¿Cómo es más seguro almacenar la clave (con frase de contraseña) con 600 permisos y este script con 700 permisos que simplemente almacenar la clave sin frase de contraseña con 600 permisos dado que el propietario de ambos archivos tendrá que ser usuario root, ¿verdad?
zelanix

55
Estoy de acuerdo; Esto es seguridad sin sentido. Elimine, por todos los medios, una frase de contraseña de una clave, para reinicios automáticos; pero no piense que de ninguna manera puede recuperar la pérdida de seguridad que acaba de hacer. A menudo es una buena compensación, pero es una compensación.
MadHatter apoya a Monica

Para completar el enlace a la documentación relacionada de Apache: httpd.apache.org/docs/2.2/mod/mod_ssl.html#sslpassphrasedialog
alk

29

Debe eliminar el cifrado de su archivo de clave privada de esta manera:

openssl rsa -in server.key -out server.key.new

mv server.key.new server.key

Asegúrese de que el nuevo archivo de clave solo sea legible por root; de lo contrario, cualquier persona con acceso de shell a este servidor podrá obtener la clave privada y hacerse pasar por su servidor.

Para hacer que la clave sea legible solo por root, haga 'chmod 600 server.key.new' antes de intercambiar claves.


probé tu idea, todavía recibo un desafío en sudo ./apache2 restart :(
ryw

44
+1 porque esa no es una "idea", es un procedimiento real
codehead

Utilicé el término "idea" porque no me funcionó.
ryw el

2
¿Cómo hace que la frase de contraseña haga un certificado SSL más seguro si puede eliminarlo tan fácilmente sin requerir la frase de contraseña? (¿o le pide la frase de contraseña?)
user2693017

3
@ user2693017: el comando openssl que se describe aquí solicitará la frase de contraseña de la clave privada cifrada. Sin conocer la contraseña, eliminarla no funcionará.
Michael Paesold
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.