Siempre establezco los permisos de los certificados y otros archivos que contienen datos confidenciales de modo que solo mi equipo de desarrollo y el servicio apache puedan acceder al archivo. Esto es importante si está utilizando un servidor compartido por una organización grande, como una universidad, donde muchas personas pueden tener permisos para el archivo de forma predeterminada. A menudo he visto permisos de lectura para todos, para que el servidor web pueda acceder al archivo (ya que no es el propietario ni el permiso del grupo para el archivo, lo único que queda es dar lectura a "otro").
En su lugar, me aseguro de que haya un grupo que solo contenga mi equipo de desarrollo y establezco los permisos de lectura/escritura para el archivo en ese grupo. Luego uso ACL para agregar un permiso de lectura para el servicio APACHE. Debe usar una ACL ya que el propietario y el grupo normalmente se configuran como un desarrollador y un grupo de equipo de desarrollo, dejándole sin opciones para establecer el acceso de apache que no sea el uso de ACL.
+1 para desarmar las variables una vez que no son necesarias. Lo hago con mis contraseñas de base de datos. – MitMaro
Esta es una gran respuesta, gracias. – DiogoNeves
Ahora que lo pienso, ¿podría dejar las claves en el mismo lugar (con mejores configuraciones de permisos) pero encriptarlas, poniendo solo la clave de cifrado fuera del alcance de la raíz web? De esa manera podríamos leer el archivo en tantas máquinas como necesitemos tan pronto como las configuremos nosotros mismos con nuestra clave? Gracias de nuevo. – DiogoNeves