Capítulo 21. Control de acceso a servicios

El mantenimiento de la seguridad en su sistema es extremadamente importante. Una forma de administrar la seguridad en el sistema es mediante una gestión minuciosa del acceso a los servicios del sistema. Probablemente su sistema deberá proporcionar acceso a determinados servicios (por ejemplo, httpd si ejecuta un servidor Web). Sin embargo, si no necesita proveer este servicio, debería desactivar esta función para que de este modo se minimice la exposición a potenciales fallos.

Hay diferentes métodos de administrar el acceso a los servicios del sistema. Debe decidir qué método le gustaría usar en función del servicio, la configuración del sistema y el nivel de conocimientos que tenga de Linux.

La forma más fácil de denegar el acceso a un servicio es desactivándolo. Tanto los servicios administrados con xinetd (discutidos más adelante en esta sección) y los servicios en la jerarquía /etc/rc.d/init.d (también conocidos como servicios SysV), se pueden configurar para iniciarse o detenerse con tres aplicaciones diferentes:

Pronto descubrirá que estas herramientas son más fáciles de usar que las alternativas — modificación manual de los numerosos vínculos simbólicos ubicados en los directorios bajo /etc/rc.d o la modificación de los ficheros de configuración xinetd en /etc/xinetd.d.

Otra forma de administrar el acceso a los servicios del sistema es mediante el uso de iptables para configurar un firewall IP. Si es un usuario nuevo de Linux, tenga en cuenta que iptables puede que no sea la mejor solución para usted. La configuración de iptables puede ser complicada y es mejor que la realicen administradores de sistemas Linux experimentados.

Por otro lado, la ventaja de utilizar iptables es flexibilidad. Por ejemplo, si necesita una solución personalizada que proporcione a determinados hosts el acceso a servicios concretos, iptables puede ser la herramienta que necesita. Consulte el Manual de referencia de Red Hat Enterprise Linux y el Manual de seguridad de Red Hat Enterprise Linux para más información sobre iptables.

Alternativamente, si está buscando una utilidad que establezca reglas de acceso generales para su máquina, y/o es un nuevo usuario de Linux, pruebe con la Herramienta de configuración de nivel de seguridad (redhat-config-securitylevel), la cual le permite seleccionar el nivel de seguridad para su sistema, similar a la pantalla de Configuración del cortafuegos en el programa de instalación.

Consulte el Capítulo 20 para más información. Si necesita más reglas específicas para el cortafuegos, refiérase al capítulo iptables en el Manual de referencia de Red Hat Enterprise Linux.

21.1. Niveles de ejecución

Antes de configurar el acceso a servicios, deberá entender qué son los niveles de ejecución en Linux. Un nivel de ejecución es un estado o un modo que los servicios incluídos en el directorio /etc/rc.d/rc<x>.d definen, donde <x> es el número del nivel de ejecución.

Existen los siguientes niveles de ejecución:

Si usa una pantalla de texto para el ingreso al sistema, estará operando a nivel de ejecución 3. Si usa una pantalla gráfica para ingresar al sistema, estará operando a nivel de ejecución 5.

El nivel de ejecución por defecto se puede cambiar si se modifica el fichero /etc/inittab, que contiene una línea junto a la parte superior del fichero con el siguiente aspecto:

id:5:initdefault:

Cambie el número en esta línea para reflejar el nivel de ejecución que desee. El cambio no tendrá efecto hasta rearrancar el sistema.

Para cambiar el nivel de ejecución inmediátamente, utilice el comando telinit seguido por el número de nivel de ejecución. Debe ser usuario root para usar este comando. El comando telinit no cambia el archivo /etc/inittab, sólo modifica el nivel de ejecución actual. Cuando el sistema es reiniciado, se arranca en el nivel de ejecución especificado en /etc/inittab.