¿Cómo mantener seguro un servidor de alojamiento web compartido?

20

¿Cuáles son las formas de mantener seguro un servidor LAMP compartido, asumiendo que el acceso SSH está disponible para todos los usuarios?

Editar: Estoy pensando principalmente en proteger el servidor de los propios usuarios y entre ellos mismos.

    
pregunta Olivier Lalonde 11.11.2010 - 23:48
fuente

4 respuestas

13

Probablemente sea imposible, pero puede hacer que sea más difícil que un atacante tenga éxito.

Fortalece tus defensas:

La seguridad refuerza el sistema (tal vez haciendo referencia a una de las siguientes listas de verificación)

  

enlace (busque la Lista de verificación de seguridad de UNIX)
enlace

Añadir:

  

grsecurity
Linux con seguridad mejorada
AppArmor

Una comparación decente de las herramientas anteriores se describe aquí: enlace

Manténgase actualizado sobre los parches de seguridad.

Obtenga visibilidad:

  

Implemente un HIDS (por ejemplo, OSSEC ) para ayudarlo a detectar cuándo los usuarios se están comportando mal.

Todo lo anterior requerirá un esfuerzo continuo. Eso es seguridad.

    
respondido por el Tate Hansen 12.11.2010 - 04:42
fuente
2

Lo primero que debo hacer en mi opinión es cambiar el puerto ssh a algo que no sea estándar e instalar algo como fail2ban.

También podría ser útil ajustar el firewall para bloquear el acceso desde el exterior a los puertos no utilizados (tal vez solo permita 80, 423, 25 y ssh ... depende)

    
respondido por el gbr 11.11.2010 - 23:57
fuente
2

Además de las otras respuestas:

Los permisos de los programas (cgi, php, etc.) ejecutados por el servidor web son un problema:

Si se ejecutan con los permisos del servidor web, un usuario malintencionado puede acceder a los archivos proporcionados por otros usuarios. Estoy pensando en los archivos de configuración con credenciales de base de datos aquí.

Si esos programas se ejecutan con el permiso de los usuarios individuales, pueden modificar los archivos del programa ellos mismos. Esto podría hacer que sea más fácil explotar los problemas de seguridad en las aplicaciones, por ejemplo, una secuencia de comandos .php podría no validar correctamente los nombres de los archivos cuando los guarda. Y los usuarios necesitan permisos de escritura en el directorio web, por lo que el programa php también tiene permisos de escritura allí.

SourceForge ha liberado un módulo de apache y un sistema de archivos de fusibles que permite permisos más específicos:

  

Los bits de permisos están en un trío estándar de conjuntos "rwx" (lectura / escritura / ejecución), pero las categorías "usuario" (propietario), "grupo" y "otras" normales se reemplazan por el trío de "proyecto miembro "," acceso de apache iniciado por el proyecto "y" todos ".

Permisos del sistema de archivos web del proyecto

    
respondido por el Hendrik Brummermann 13.03.2011 - 06:00
fuente
1

Básicamente, no hay nada que puedas hacer para hacer que las cosas estén realmente seguras, ya que cosas como wordpress siempre terminan con problemas de seguridad masivos, así como PHP en sí, etc.

La única manera (creo) de estar bastante seguro es ejecutar cada sitio en una máquina virtual separada. Esto (casi) aísla totalmente un sitio de otro, pero, por supuesto, tiene la sobrecarga de tener que administrar todas las máquinas virtuales, tiene más uso de memoria, más ciclos de CPU, etc.

Ah, y cada VM necesita todos los parches de software continuamente.

Sin duda, vale la pena considerarlo, ya que es mucho más seguro que tratar de mantenerse al tanto de todos esos sitios.

    
respondido por el John Hunt 30.01.2015 - 11:15
fuente

Lea otras preguntas en las etiquetas