La semana pasada recibí una llamada de un cliente asustado porque pensó que su sitio web fue pirateado. Cuando busqué en su sitio web, vi la apache2
página predeterminada. Esa noche mi servidor ( Ubuntu 16.04 LTS
) se actualizó y reinició. Normalmente, cuando algo sale mal, me habrían alertado durante la noche. Esta vez no, porque el sistema de monitoreo verifica el código de estado HTTP 200, y la apache2
página predeterminada viene con el código de estado 200.
Lo que sucedió es que durante el inicio apache2
fue más rápido enlazar a los puertos 80 y 443 que mi servidor web actual nginx. No instalé apache2 yo mismo. A través aptitude why apache2
descubrí que el paquete php7.0 lo requiere.
Simplemente eliminar apache2
no funcionará porque aparentemente php7.0 lo requiere. ¿De alguna manera es posible crear una restricción para que solo nginx pueda unirse al puerto 80 y 443?
Otras soluciones son más que bienvenidas también.
This time not, because the monitoring system checks for HTTP status code 200
. Puede mejorar el sistema de monitoreo haciendo que verifique el contenido real de la página web (alguna cadena particular en el cuerpo o encabezado), esto será más confiable.