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.

240CAPÍTULO 15. ALGUNAS HERRAMI<strong>EN</strong>TAS DE <strong>SEGURIDAD</strong>recursos, por lo que se suele utilizar un programa denominado TCP Wrappers ([Ven92]) para definiruna serie de redes o máquinas autorizados a conectar con nosotros. Aquí veremos como instalareste software – en su versión 7.6 – y su configuración básica para que no todo el mundo pueda contactarcon nosotros. Actualmente, cualquier administrador que desee un mínimo de seguridad hade instalar TCP Wrappers en sus equipos; incluso algunos Unices como Linux o BSDI lo ofrecen pordefecto al instalar el operativo. Cabe decir que la configuración del programa puede ser muy elaboraday con muchas opciones; aquí veremos la forma más básica, que suele ser automática mediantemake install 2 . Para configuraciones más avanzadas se recomienda consultar los ficheros de ayuda.En nuestro caso vamos a instalar TCP Wrappers sobre una máquina Silicon Graphics corriendoIRIX 6.2:llegona_(/) # uname -aIRIX64 llegona 6.2 06101031 IP28llegona_(/) #No vamos a entrar aquí en como compilar el software (para ello se puede consultar el ficheroREADME); asumiremos que ya lo tenemos compilado y el resultado está, por ejemplo, en el directorio/tmp/tcp wrappers 7.6/. Tras compilar el software se habrán generado una serie de ficherosejecutables que hemos de copiar a un destino definitivo, por ejemplo a /etc/usr/sbin/:llegona_(/tmp/tcp_wrappers_7.6) # cp ‘find . -type f -perm -700‘ /usr/sbin/llegona_(/tmp/tcp_wrappers_7.6) #Una vez en su destino definitivo, hemos de modificar el fichero /etc/inetd.conf para indicarle ainetd que ha de utilizar el demonio tcpd (la parte más importante de TCP Wrappers) a la horade servir peticiones; para ello, una entrada de la formatelnet stream tcp nowait root /usr/etc/telnetdse convertirá en una comotelnet stream tcp nowait root /usr/sbin/tcpd /usr/etc/telnetdComo vemos, en lugar de que inetd ejecute directamente el demonio correspondiente a cada servicio,ejecuta el wrapper, y es éste el encargado de controlar la ejecución del demonio real.Tras haber modificado convenientemente /etc/inetd.conf hemos de configurar los servicios quevamos a ofrecer a diferentes máquinas o redes; seguiremos una política restrictiva: todo lo noexplícitamente permitido, está negado. Para ello, en el archivo /etc/hosts.allow indicamos queservicios ofrecemos y a dónde lo hacemos 3 , de la siguiente forma:demonio: maquinasDonde ‘demonio’ es el nombre del demonio encargado de atender el servicio correspondiente(sendmail, telnetd, fingerd. . . ), y ‘maquinas’ es la especificación de los hosts a los que les estápermitida la conexión a cada servicio; se trata de una lista separada por espacios donde podemosincluir desde nombres de sistemas o direcciones IP hasta subdominios, pasando por palabras reservadascomo ALL. Así, si por ejemplo queremos ofrecer todo a las máquinas .dsic.upv.es, telneta andercheran.aiind.upv.es y luisvive.euiti.upv.es, y ftp a toda la UPV, tendremos un/etc/hosts.allow de la forma siguiente:llegona_(/) # cat /etc/hosts.allowALL: .dsic.upv.estelnetd: andercheran.aiind.upv.es luisvive.euiti.upv.esftpd: .upv.esllegona_(/) #2 Aquí explicamos el proceso ‘a mano’ simplemente para entender cómo funciona.3 Realmente, también es posible especificar acciones a realizar al recibir una conexión; se puede consultar la sintaxisexacta en la página del manual de hosts access(5).

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

Saved successfully!

Ooh no, something went wrong!