13.07.2015 Views

SEGURIDAD EN UNIX Y REDES

SEGURIDAD EN UNIX Y REDES

SEGURIDAD EN UNIX Y REDES

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

160CAPÍTULO 10. EL SISTEMA DE RED/etc/hosts.equiv; es importante para la seguridad de nuestro sistema el controlar la existenciay el contenido de estos archivos .rhosts. Por ejemplo, podemos aprovechar las facilidades deplanificación de tareas de Unix para, cada cierto tiempo, chequear los directorios $HOME de losusuarios en busca de estos ficheros, eliminándolos si los encontramos. Un shellscript que hace estopuede ser el siguiente:#!/bin/shfor i in ‘cat /etc/passwd |awk -F: ’{print $6}’‘; docd $iif [ -f .rhosts ]; thenecho "$i/.rhosts detectado"|mail -s "rhosts" rootrm -f $i/.rhostsfidoneEste programa envía un correo al root en caso de encontrar un fichero .rhosts, y lo elimina;podemos planificarlo mediante cron para que se ejecute, por ejemplo, cada cinco minutos (la formade planificarlo depende del clon de Unix en el que trabajemos, por lo que se recomienda consultarla página del manual de cron o crond).10.2.7 El fichero .netrcEl mecanismo de autenticación que acabamos de ver sólo funciona con las órdenes r* de Unix bsd;la conexión vía ftp seguirá solicitando un nombre de usuario y una clave para acceder a sistemasremotos. No obstante, existe una forma de automatizar ftp para que no solicite estos datos, yes mediante el uso de un archivo situado en el directorio $HOME de cada usuario (en la máquinadesde donde se invoca a ftp, no en la servidora) y llamado .netrc. En este fichero se puedenespecificar, en texto claro, nombres de máquina, nombres de usuario y contraseñas de sistemasremotos, de forma que al conectar a ellos la transferencia de estos datos se realiza automáticamente,sin ninguna interacción con el usuario. Por ejemplo, imaginemos que el usuario ‘root’ del sistemaluisa conecta habitualmente a rosita por ftp, con nombre de usuario ‘toni’; en su $HOME deluisa puede crear un fichero .netrc como el siguiente:luisa:~# cat $HOME/.netrcmachine rositalogin tonipassword h/l0&54luisa:~#Si este archivo existe, cuando conecte al sistema remoto no se le solicitarán ningún nombre deusuario ni contraseña:luisa:~# ftp rositaConnected to rosita.220 rosita FTP server (Version wu-2.6.0(1) Thu Oct 21 12:27:00 EDT 1999) ready.331 Password required for toni.230 User toni logged in.Remote system type is <strong>UNIX</strong>.Using binary mode to transfer files.ftp>La existencia de ficheros .netrc en los $HOME de los usuarios se puede convertir en un graveproblema de seguridad: si un atacante consigue leer nuestro fichero .netrc, automáticamenteobtiene nuestro nombre de usuario y nuestra clave en un sistema remoto. Por tanto, no es deextrañar que para que el mecanismo funcione correctamente, este fichero sólo puede ser leído porsu propietario; si no es así, no se permitirá el acceso al sistema remoto (aunque los datos de .netrcsean correctos):

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!