Gu�a de Administraci�n de Redes con Linux | ||
---|---|---|
Anterior | Cap�tulo 16. Administraci�n deTaylor UUCP | Siguiente |
Si quiere configurar su sitio para recibir llamadas tendr� que permitir conexiones por su puerto serie y personalizar algunos ficheros del sistema para ofrecer cuentas UUCP, lo que cubriremos en esta secci�n.
A continuaci�n tiene que configurar las cuentas de usuarios que permiten a sistemas remotos entrar en su sistema y establecer una conexi�n de UUCP. Generalmente tendr� que suministrar un nombre de usuario para cada sistema que se conecte con usted. Cuando configura una cuenta para el sistema pablo, puede darle el nombre de usuario Upablo. No hay ninguna pol�tica sobre los nombres de entrada; pueden ser cualquier cosa, pero le convendr� que el nombre de entrada pueda relacionarse f�cilmente con el nombre del sitio remoto.
Para los sistemas que se conectan con el suyo a trav�s de puerto serie, normalmente tendr� que a�adir estas cuentas al fichero de contrase�as del sistema /etc/passwd. Una buena pr�ctica es poner todas las entradas de UUCP en un grupo especial como uuguest. El directorio principal de la cuenta deber�a configurarse como el directorio p�blico de la cola /var/spool/uucppublic ; su int�rprete de �rdenes de entrada debe ser uucico.
Para servir a sistemas UUCP que se conecten con su sitio sobre TPC, tendr� que configurar inetd de forma que gestione las conexiones entrantes por el puerto uucp a�adiendo la siguiente l�nea a su /etc/inetd.conf :[1]
uucp stream tcp nowait root /usr/sbin/tcpd /usr/lib/uucp/uucico -l |
La opci�n –l hace que uucico lleve a cabo su propia autorizaci�n de entrada. Solicitar� un nombre de entrada y una contrase�a igual que el programa login est�ndar, pero bas�ndose en su propia base de datos privada con las claves en vez de en /etc/passwd. Este fichero privado de contrase�as se conoce como /etc/uucp/passwd y contiene pares de nombres de entrada y contrase�as:
Upablo IslaNegra Ulorca co'rdoba |
Este fichero tiene que ser propiedad de uucp y tener 600 como permiso.
�Le parece esta base de datos una idea tan buena que le gustar�a en las entradas al sistema por serie tambi�n? Bien, en algunos casos puede hacerlo. Lo que necesita es un programa getty al que pueda pedirle que invoque a uucico en vez de a /bin/login para sus usuarios UUCP. [2] La invocaci�n de uucico ser�a de esta forma:
/usr/lib/uucp/uucico -l -u usuario |
Para proteger a sus usuarios de UUCP de otros que den un nombre de sistema falso y les lean todo el correo, tiene que a�adir �rdenes called-login a cada entrada de sistema en el fichero sys. Esto se describe en la secci�n siguiente.
Uno de los mayores problemas con UUCP es que el sistema que nos llama puede mentir acerca de su nombre; comunica su nombre al sistema que llama despu�s de entrar, pero el servidor no tiene manera de comprobarlo. Por consiguiente, un atacante podr�a entrar con su propia cuenta de UUCP, pretender ser otra persona, y coger el correo de esa otra persona. Esto representa un grave problema, especialmente si usted ofrece entrada mediante UUCP an�nimo, que tiene una clave p�blica.
Usted debe protegerse de estos impostores. La cura de esta enfermedad va a requerir que cada sistema un nombre de entrada en particular especificando un called-login en sys. Una entrada de sistema de ejemplo ser�a algo as�:
system pablo ... usual options ... called-login Upablo |
La ventaja es que cuando un sistema entre y finja ser pablo, uucico comprobar� si ha entrado como Upablo. De no ser as�, se desconectar� al sistema que haya llamado. Deber�a acostumbrarse a a�adir la orden called-login a cada entrada de sistema que a�ada a su fichero sys. Es importante que haga esto en todos los sistemas de su fichero sys, independientemente de si van a llamar a su sistema o no. Para los sitios que nunca le llamen, probablemente deber�a asignar called-login a alg�n nombre de usuario totalmente ficticio, como nuncaentras.
Otra manera de detectar y rechazar a los impostores es usar comprobaciones de la secuencia de llamada. �stas le ayudan a protegerse de intrusos que hayan logrado averiguar de alguna manera una contrase�a con la que entrar a su sistema UUCP.
Cuando usa comprobaci�n de secuencia de llamadas, ambas m�quinas mantienen una cuenta del n�mero de conexiones establecidas hasta el momento. Se incrementa con cada conexi�n. Despu�s de entrar, el llamador env�a su n�mero de secuencia de llamadas y el sistema llamado lo comprueba con su propio n�mero. Si no son iguales, el intento de conexi�n es rechazado. Si el n�mero inicial se elige aleatoriamente, los atacantes lo tendr�n m�s dificil para adivinar el n�mero de secuencia de llamadas correcto.
Pero la comprobaci�n de la secuencia de llamada sirve para m�s que esto: aunque una persona muy inteligente descubriese su n�mero de secuencia de llamada as� como su clave, usted sabr� que esto ha ocurrido. Cuando el atacante llama al sistema de UUCP que le provee el correo a usted y roba su correo, esto incrementa el n�mero de secuencia de llamada en uno. La siguiente vez que usted se conecte con su proveedor de correo e intenta entrar, el uucico remoto le rechazar�, porque los n�meros de secuencia ya no son iguales.
Si ha activado la comprobaci�n de las secuencias de llamadas, deber�a mirar sus ficheros de registro de manera regular en busca de mensajes de error que apunten a posibles ataques. Si su sistema rechaza el n�mero de secuencias de llamadas que le ofrece el sistema que llama, uucico pondr� un mensaje en el fichero de registro diciendo algo como “Out of sequence call rejected.” (Llamada fuera de secuencia rechazada). Si su sistema es rechazado por quien le suministra porque los n�meros de la secuencia no est�n sincronizados, pondr� un mensaje diciendo “Handshake failed (RBADSEQ)” (Negociaci�n fallida (RBADSEQ)).
Para activar la comprobaci�n de secuencias de llamada, a�ada la siguiente orden a la entrada del sistema:
# activar comprobaci�n de secuencias de llamada sequence true |
Adem�s, tiene que crear el fichero que contiene el n�mero de secuencias en s�. Taylor UUCP guarda el n�mero de secuenciasen un fichero llamado .Sequence en el directorio de cola del sitio remoto. Debe ser propiedad de uucp y debe estar en modo 600 (esto es, s�lo uucp puede leerlo y modificarlo). Lo mejor es inicializar este fichero con un valor que ambas partes hayan acordado previamente. Una manera sencilla de crear este fichero es:
# cd /var/spool/uucp/pablo # echo 94316 > .Sequence # chmod 600 .Sequence # chown uucp.uucp .Sequence |
Evidentemente, el sitio remoto tiene que habilitar igualmente la comprobaci�n de secuencias de llamadas y comenzar usando exactamente el mismo n�mero de secuencia.
Si quiere ofrecer acceso a su sistema por UUCP an�nimo primero tendr� que configurar una cuenta especial para ello como se describe anteriormente. Una pr�ctica com�n es proporcionar a la cuenta an�nima uucp como nombre de entrada y contrase�a.
Adem�s, tiene que configurar unas pocas opciones de seguridad para sistemas desconocidos. Por ejemplo, puede querer prohibir que ejecuten cualquier orden en su sistema. De todas maneras, no puede ajustar estas variables en una entrada del fichero sys porque la orden system requiere el nombre del sistema, que usted no tiene. Taylor UUCP resuelve este dilema mediante la orden unknown. unknown puede usarse en el fichero config para especificar cualquier orden que pueda aparecer de manera habitual en una entrada de sistema:
unknown remote-receive ~/incoming unknown remote-send ~/pub unknown max-remote-debug none unknown command-path /usr/lib/uucp/anon-bin unknown commands rmail |
Esto restringir� la descarga de ficheros desde sistemas desconocidos bajo el directorio pub y la carga de ficheros en el directorio incoming bajo /var/spool/uucppublic. La pr�xima l�nea har� que uucico ignore cualquier petici�n desde el sistema remoto para activar la depuraci�n localmente. Las dos �ltimas l�neas permiten a sistemas descnocidos ejecutar rmail ; pero la ruta especificada hace que uucico busque la orden rmail �nicamente en un directoro privado llamado anon-bin. Esta restricci�n le permite ofrecer un rmail que, por ejemplo, reenv�e todo el correo al superusuario para que lo examine. Esto permite a los usuarios an�nimos ponerse en contacto con el administrador del sistema previni�ndoles al mismo tiempo de inyectar correo en otros sitios.
Para habilitar el UUCP an�nimo debe especificar al menos una sentencia unknown en config. De otra manera uucico rechazar� todos los sistemas desconocidos.
[1] | Tenga en cuenta que tcpd normalmente tiene el modo 700, por lo que debe invocarlo como usuario root, no uucp. tcpd se discute con mayor detalle en Cap�tulo 12. |
[2] | El mgetty de Gert Doering es una bestia de esa cala�a. Corre sobre varias plataformas, incluyendo SCO Unix, AIX, SunOS, HP-UX y GNU/Linux. |
[3] | Esta opci�n no se encuentra presente en la versi�n 1.04. |