Capítulo 14. Control de acceso a servicios
El mantenimiento de la seguridad en su sistema Red Hat Linux
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 se pueden configurar para iniciarse o detenerse
con tres aplicaciones diferentes:
Herramienta de configuración de servicios — una aplicación
gráfica que muestra una descripción de cada servicio, muestra si los servicios se han
iniciado en el momento del arranque (para los niveles de ejecución 3, 4, y 5), y permite
que los servicios sean arrancados, detenidos o reiniciados.
ntsysv — una aplicación basada en texto
que permite configurar cuáles servicios son arrancados al momento de arranque
para cada nivel de ejecución. Los cambios no toman efecto de inmediato para los
servicios no xinetd. Los servicios que no son
xinetd no pueden ser arrancados, detenidos o reiniciados usando
este programa.
chkconfig — utilidad de línea de comandos
permite activar o desactivar servicios para los diferentes niveles de ejecución.
Los cambios no toman efecto de inmediato para los servicios
no xinetd. Los servicios no xinetd
no pueden ser arrancados, detenidos o reiniciados usando
esta utilidad.
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 Linux y el Manual de seguridad de Red Hat 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
GNOME Lokkit.
GNOME Lokkit es una aplicación tipo GUI que le
hará preguntas sobre cómo desea usar el equipo.
Basado en sus respuestas, configurará un cortafuegos sencillo por usted. También
puede usar 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
Nivel de seguridad en el programa de instalación de Red Hat Linux.
Refiérase al Capítulo 13 para ver más información sobre estas herramientas.
14.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.
Red Hat Linux utiliza los siguientes niveles de ejecución:
0 — Parada
1 — Modo de un usuario
2 — No se utiliza (definido por el usuario)
3 — Modo completo de multiusuarios
4 — No se utiliza (definido por el usuario)
5 — Modo completo de multiusuarios (con una pantalla de
conexión basada en X)
6 — Rearranque
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:
Cambie el número de 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 inmediatamente, use el comando
telinit seguido del número del nivel de
ejecución. Debe ser usuario root para poder usar este comando.