Así que estoy tratando de configurar un servidor web que usará nginx para servir un sitio estático (por ahora). Configuro un repositorio git al que deseo enviar para facilitar la implementación (usando esta guía: enlace ).
He leído algo acerca de la importancia de restringir los permisos de directorio / archivo al configurar cualquier servidor, pero estoy confundido acerca de cómo debería configurarlos exactamente y de qué manera los diferentes permisos ponen en riesgo a nginx / my server.
De acuerdo con este hilo: en serverfault :
Cita: Iniciado por druuna Ver Mensaje / var / www y todos los archivos / subdirectorios deben ser propiedad del usuario y el grupo que ejecuta apache (apache: apache por ejemplo) !!
NO! ABSOLUTAMENTE NO!
Si haces eso, permites que Apache y cualquier secuencia de comandos que ejecuta, modifique los archivos existentes y cree otros nuevos. Cualquier pequeño error de programación en cualquiera de sus scripts, o un ligero error en la configuración de Apache (permitiendo DAV anónimo, por ejemplo) expondrá su servidor Apache por uso malicioso.
Si ejecuta un servidor Apache conocido, verá en los registros que hay personas que exploran los servidores en busca de vulnerabilidades de script conocidas. Si tiene uno de esos en su servidor y está usando la configuración sugerida por Druuna, su servidor será subvertido. Como mínimo, se usará como un buzón para archivos ilícitos o para propagar malware o virus; en el peor de los casos, cargarán una secuencia de comandos que utiliza una vulnerabilidad de seguridad sin parches para obtener el control total de su servidor. En ese momento, está atornillado: solo una reinstalación completa de buenas fuentes conocidas le devolverá el control de su servidor.
La respuesta aceptada a esto La pregunta sobre serverfault parece ser una buena dirección, pero como se señala en la sección "Mantenido por un grupo de usuarios":
Una cosa que hay que tener cuidado con esta solución es que el propietario del usuario de los nuevos archivos coincidirá con el creador en lugar de configurarse en www-data. Por lo tanto, Apache no podrá leer todos los archivos nuevos que cree hasta que los reproduzca.
Entonces, ¿esta respuesta es correcta? ¿Es aplicable a mi situación (soy el propietario del servidor, solo alojo un sitio estático ...)? ¿Cómo puedo superar el problema de tener que rechazar por separado los nuevos archivos?
¿Podría alguien darme un desglose más detallado sobre cómo un servidor web nginx comprometido podría comprometer a todo el servidor host y cómo esto se relaciona (o no) con los permisos de archivo / directorio? Estoy encontrando información muy dispersa / contradictoria / no concisa / no comprensiva en Google.
Gracias.