Acabo de adquirir un nuevo servidor CentOS, que alojará una aplicación Ruby on rails, que es pública. ¿Qué debo hacer para proteger este servidor?
La forma más fácil es endurecerla utilizando los estándares de cumplimiento DISA / STIG (Guías de implementación técnica de seguridad) que publica el departamento de defensa.
Son bastante completos y exhaustivos en lo que respecta al fortalecimiento del servidor. Puede encontrarlos aquí: enlace .
Además del fortalecimiento del servidor, también debe asegurarse de que su aplicación esté escrita de acuerdo con las mejores prácticas de la aplicación web OWASP.
Además de un firewall normal, también debe implementar un Firewall de aplicación web (WAF), como mod_security y un sistema de detección de intrusos basado en host (OSSEC).
Es preferible que no exponga las interfaces de administración como SSH en la IP pública y todo el registro se debe hacer hacia un servidor de registro independiente (por supuesto, si la infraestructura de su servidor solo cubre este servidor único que podría no ser un problema).
La respuesta: depende .
Si bien es absolutamente necesario que se familiarice con los elementos de la respuesta de @LucasKauffman, también debe comprender que la implementación de las mejores prácticas llevará tiempo. Y también significa mantenerlos en el futuro.
No instalo el último & El mejor sistema de alarma en mi 95 toyota corolla. Entonces, todo se reduce a identificar los riesgos y los costos de no mitigarlos.
¿Cuál será su servidor host? ¿Mantendrás los números de tarjeta de crédito (que espero que no!)? ¿Está usted en mayor riesgo por los escáneres de servidores aleatorios o un pirata informático dedicado a romper su aplicación web? Todo esto debería ser parte de su análisis de riesgo.
Ciertamente, hay una línea de base que puede lograr que es de sentido común (y no cuesta mucho):
Esta no es, de lejos, una lista exhaustiva. Pero este es un punto de partida.
Lea otras preguntas en las etiquetas web-application webserver linux