Un usuario preguntó 👇
Tenía una instalación funcional de WordPress, luego tuve que hacer una instalación completamente nueva. Seguí todas las instrucciones para restaurar y restaurar la copia de seguridad. Incluso tuve la nueva instalación funcionando por un tiempo.
(Servidor Ubuntu 16.04 LTS, de mi propiedad y administrado por mí, que viene a través de SSH)
Sin embargo, cuando sigo las instrucciones para «Endurecer WordPress», las cosas se rompen. Cambié el propietario de todos los archivos y carpetas a mi usuario individual, excepto la carpeta wp content, que es propiedad del usuario www-data de mi servidor Apache. Cambié los permisos para cada carpeta a 755 y todos los archivos a 644, excepto wp-config.php que cambié a 400.
Esto crea un «error fatal» cuando intento acceder al sitio a través de un navegador web, diciendo que a wp-config.php se le niega el permiso cuando intento acceder con wp-load.php. Esto establece el permiso de cambio de wp-config.php en 644, pero «Hardening WordPress» dice que esto es inseguro. Realmente no quiero que la contraseña de mi base de datos (almacenada en wp-config.php) esté expuesta al mundo en general.
¿Qué permisos puedo otorgar a wp-config.php que mantienen mis datos seguros pero permiten que WordPress funcione? No puedo encontrar una respuesta a esta pregunta en ningún lado. Solo veo personas en foros que dicen «cámbielo a 644» y el sitio «Endurecimiento de WordPress» que dice «cámbielo a 400», pero no hay ningún consejo sobre qué hacer cuando ninguno de estos es una solución viable.
¿O hay otro lugar donde pueda almacenar las credenciales de mi base de datos para poder mantenerlas seguras incluso si los permisos para wp-config.php son laxos?
(@sterndata)
Moderador del foro y voluntario del equipo de apoyo
Hace 2 años, 6 meses
wp-config.php, propiedad del usuario bajo el cual se ejecuta PHP, debería tener 640 (www-data, creo, en Uubuntu).
Todos mis sitios están configurados para que cada uno se ejecute como un usuario diferente (a través de php-fpm) y nunca como el usuario predeterminado. Cada archivo contiene 644 y cada directorio 755.
(@angelax)
Hace 2 años, 6 meses
Muchas gracias por tu rápida respuesta.
Solo para confirmar, ¿el acceso (640) a un archivo php que contiene la contraseña de mi base de datos da fácil acceso a la contraseña de mi base de datos para las partes interesadas externas? ¿O es esta una forma segura de almacenarlo?
(@sterndata)
Moderador del foro y voluntario del equipo de apoyo
Hace 2 años, 6 meses
6 dice que el propietario puede leer / escribir, 4 dice que el grupo puede leer, 0 dice que nadie más puede leer.
Sin embargo, externamente nadie puede «leer» el archivo, independientemente de los permisos. Es un archivo PHP que se ejecuta, no se lee.
Esta respuesta se modificó hace 2 años y 6 meses.
(@angelax)
Hace 2 años, 6 meses
Gracias, esta es una gran información. Lo siento si sueno paranoico o ignorante. Me preocupaba que, con acceso de lectura al servidor web, alguien pudiera usar un wget o algo similar para encontrar la fuente. Pero como dijiste, ese no es el caso. Lo he probado yo mismo y tu solución es perfecta.
El propietario (y el grupo) cambiaron a www-data y tenemos un sitio de trabajo que es al menos tan seguro como lo era antes de que hiciera mi nueva instalación.
Gracias de nuevo por tu ayuda (¡rápido!).
(@sterndata)
Moderador del foro y voluntario del equipo de apoyo
Hace 2 años, 6 meses
Tenga en cuenta que si tiene otros sitios en su servidor que también se ejecutan como www-data, un pirateo exitoso en cualquiera de ellos puede piratearlos a todos. Así que lea php-fpm y use diferentes usuarios para cada sitio.
¿Solucionó tu problema??
0 / 0
1aimless