Uno de los principios básicos de la seguridad informática es nunca ejecutar nada que no necesite.
Estaba pgrep
haciendo ping para un proceso hoy cuando noté que mi máquina Ubuntu 9.04 (computadora de escritorio) estaba ejecutando un demonio de servidor git. Después de un juramento rápido, descubrí que el git-daemon-run
paquete se había instalado (probablemente inadvertidamente) y al eliminarlo se eliminó ese proceso (y me aseguré de que no se reiniciara más tarde).
Pero en otros casos, quiero que se instale el paquete del servidor, pero no quiero que se ejecute el demonio del servidor. Por ejemplo, lo uso lighttpd
para pruebas internas (se inicia mediante scripts de prueba específicos para algunas aplicaciones, y solo escucha en localhost en esas configuraciones) pero no quiero que escuche conexiones externas con algún archivo de configuración aleatorio. (Si quisiera ejecutar uno escuchando conexiones externas, lo configuraría y lo ejecutaría yo mismo).
Realmente no me gusta ejecutar todo tipo de servidores aleatorios que no necesito en máquinas expuestas a Internet, ya que quién sabe qué agujeros de seguridad abren. Y prefiero no tener que molestar con los firewalls, ya que esa es otra fuente potencial de errores y configuraciones erróneas que pueden abrir agujeros de seguridad. No es tan difícil tener máquinas Unix configuradas para no iniciar ningún servidor a menos que el administrador se lo solicite específicamente; NetBSD (y OpenBSD también, creo) vienen de esta manera por defecto.
¿Cómo configuro mis sistemas Ubuntu para que nunca inicien ningún tipo de demonio de servidor a menos que le diga específicamente que quiero que se inicie?
(En mi libro, pedir que se instale un paquete no es pedir iniciar un servidor. Si se supone que es, es una interfaz de usuario terrible, ya que muchas instalaciones de paquetes ni siquiera tienen un servidor para iniciar, por lo que es demasiado fácil iniciar un servidor sin darse cuenta sin darse cuenta de que lo ha hecho).
EDITAR: Solo para dejarlo claro, el problema no es que quiera poder detener los servidores existentes. El problema es que no quiero que se inicien nuevos servidores sin una solicitud explícita. Esto significa que debería poder hacer cualquier tarea de administrador de sistemas, como instalar un paquete, y estar seguro de que no se han iniciado servidores. La mayoría de las respuestas no abordan este punto.