SlideShare una empresa de Scribd logo
1 de 361
Descargar para leer sin conexión
Memoria del Proyecto 
|{ 
Servidor Linux 
para conexiones seguras de una LAN a Internet 
|{ 
Jose Antonio Escartn Vigo 
Junio de 2005
Introduccion 
En las siguientes lneas trato de describir los motivos que me llevaron a escoger un proyecto de este 
estilo y de donde surgio la idea de realizar un documento informativo para facilitar la tarea de muchos 
administradores de sistemas noveles, como yo cuando comence este proyecto. 
En esta peque~na introduccion tambien se especi
can los objetivos que se pretenden conseguir y para 
entrar en materia se comenta, muy por encima, la historia de Linux. 
Motivacion 
Me decid a realizar este proyecto por la inquetud personal que tena respecto al sistema operativo 
Linux. Conozco a mucha gente que lo maneja y que me hablaba muy bien, por pereza y falta de tiempo, 
nunca me haba puesto a experimentar a fondo con el. Si bien es cierto que lo tena instalado (una version 
Mandrake 9.0) lo utilizaba solamente para realizar las practicas de la universidad y poca cosa mas. 
Siempre me han atrado los sistemas operativos, bastante mas que la rama de programacion. Una 
prueba de ello es que cuando llege a la FIB (vine del Ciclo formativo de grado superior: Desarrollo de 
aplicaciones informaticas; es decir, basicamente programacion) me cambie a la rama de sistemas. 
Actualmente me encuentro cursando el PFC de la Ingeniera tecnica en Informatica de Sistemas y 
tengo la intencion de solicitar plaza de admision en la Ingeniera superior de informatica, carrera a la que 
no pude acceder en primera instancia por restricciones legales, al acceder a la universidad por la va de 
los ciclos formativos de grado superior. 
A lo largo de la carrera, he cursado las siguientes asignaturas relacionadas con los sistemas operati-vos: 
ISO (Introduccion a los sistemas operativos), SO (Sistemas Operativos), ASO (Administracion de 
sistemas operativos), CASO (Conceptos avanzados de sistemas operativos), SSI (Seguridad en sistemas 
informaticos). Ademas hace unos a~nos, antes de comenzar la carrera, realizaba trabajos de administrador 
de sistemas en entornos Windows, para dos institutos (IES Piramide y IES Sierra de Guara) de mi ciudad 
natal, Huesca. 
El PFC: Servidor Linux para conexiones seguras de una LAN a Internet me ha permitido desarrollar 
amplios conocimientos en el campo de los sistemas operativos, algo que realmente me interesa y supongo 
que me permitira encarrilar mi carrera hacia el trabajo que pretendo desarrollar como Administrador de 
sistemas. 
Si en vez de elegir uno de los proyectos propuestos desde la universidad, hubiera pensado proponer 
uno, sin duda habra elegido hacer un proyecto igual al que propuso el profesor Llus Perez Vidal del 
departamente LSI de la UPC. Me siento bastante afortunado de haber realizado un PFC que realmente 
me interesaba y motivaba.
vi Servidor Linux para conexiones seguras de una LAN a Internet 
Motivacion del proyecto 
Ante el problema de instalar un sistema operativo que controle los servicios de red y ademas sea estable 
se nos plantean principalmente dos alternativas, Linux o Windows. 
Que ventajas tiene Linux sobre Windows? 
Es mas seguro. 
Ya que la gran mayora de los ataques de hackers son dirigidos a servidores Windows al igual que 
los virus los cuales se enfocan principalmente a servidores con este sistema operativo. La plataforma 
Linux es mas robusta lo cual hace mas difcil que algun intruso pueda violar la seguridad del sistema. 
Es mas rapido. 
Al tener una plataforma mas estable, se favorece la utilizacion de aplicaciones de todo tipo de 
aplicaciones. La e
ciencia de su codigo fuente hace que la velocidad de las aplicaciones Linux sean 
superiores a las que corren sobre Windows. 
Es mas economico. 
Ya que requiere menor mantenimiento. Los servidores Windows son mas costosos debido a que es 
necesaria una frecuente atencion y monitoreo contra ataques de virus, hackers y errores de codigo. 
El software Linux as como tambien un sin numero de aplicaciones, son de codigo abierto y estan 
protegidas por la licencia GPL1, motivo por el que son distribuidas gratuitamente. No requieren 
supervision constante ni pagos de mantenimiento para obtener Service Packs, que no son mas que 
parches de seguridad para aplicaciones mal diseadas. 
Que ventajas tiene Windows sobre Linux? 
Es mas facil. 
Al ser de mayor facilidad de uso Windows en este momento continua siendo el sistema operativo mas 
comercial lo cual se re
eja en la disponibilidad de aplicaciones, facilidad de mantenimiento as como 
soporte en el desarrollo de nuevas aplicaciones. 
Las aplicaciones se desarrollan en menor tiempo. 
Fruto de la inversion realizada por Microsoft y aunado a una comunidad de programadores cada vez 
mas grande se ha logrado facilitar el desarrollo de aplicaciones y sistemas que corran sobre servidores 
Windows lo cual se ve re
ejado en tiempos de desarrollo menores. De la misma forma, la curva de 
aprendizaje en el sistema Windows es mucho menor. 
La alternativa mas sencilla y a la vez mas ine
ciente es elegir un sistema operativo Windows. Lo que 
se busca es seguridad, integridad de datos y e
ciencia del sistema, por tanto nos decantaremos por una 
distribucion GNU/Linux. 
El proyecto surge ante la necesidad de escoger entre las distribuciones Linux actuales, la mas adecuada 
para instalar un servidor e implementar las aplicaciones necesarias para dar servicios a clientes de sistemas 
operativos Linux y Windows. 
Esto es algo no trivial y el proyecto trata de ser una ayuda, apoyo y consulta para facilitar la tarea de 
una persona que trate de implementar un servidor. 
1GPL: Licencia publica GNU. Segun se cita en [Sha01] expeci
ca explcitamente que el software desarrollado es libre y 
que nadie puede coartar estas libertados. Se puede revender, incluso obteniendo bene
cio; sin embargo, en esa reventa el 
vendedor debe de proveer el codigo fuente completo, incluyendo cualquier modi
cacion realizada. El paquete continua bajo 
GPL y puede ser distribuido de modo libre y revendido de nuevo obteniendo tambien bene
cio. Es de una importancia 
primordial la clausula de responsabilidad: los programadores no son responsables de cualquier da~no causado por su software. 
Jose Antonio Escartn Vigo, Junio 2005.
vii 
Objetivos 
Este documento esta elaborado para describir la implementacion de un servidor GNU/Linux, as como 
especi
car y resolver los principales problemas que un administrador se encuentra al poner en funcio-namiento 
un servidor. Se aprendera a con
gurar un servidor GNU/Linux describiendo los principales 
servicios utilizados para compartir archivos, paginas web, correo y otros que veremos mas adelante. 
La herramienta de con
guracion Webmin, que se detalla en uno de los ultimos captulos es indepen-diente 
de la distribucion GNU/Linux que utilicemos y nos permitira administrar de forma transparente 
diferentes distribuciones, con la ventaja que eso supone si alguna vez cambiamos de distribucion. 
Cuadro 1: Objetivos del proyecto 
Estudiar el entorno de composicion de textos LATEX 
Analizar e instalar las distribuciones Linux mas importantes 
Estudiar la compilacion de kernels 
Analizar y con
gurar los servicios para usuarios Linux y Windows 
Establecer sistemas de proteccion 
Realizar pruebas de seguridad del servidor 
Documentar el proyecto 
Marco historico 
Como se especi
ca en [BB00], Linux hizo su aparicion en 1991 cuando el
nlandes Linus Torvalds deci-di 
o publicar en Internet su proyecto de carrera, animando a la comunidad internacional de programadores 
a mejorarlo. Nacio como una mejora de Minix, una version de Unix para ordenadores PC basados en el 
procesador 8086 de Intel, Linux por su parte utilizaba el procesador 386SX de Intel. 
Posiblemente una de las explicaciones del exito de Linux es GNU1 que junto con la FSF2 (Free Software 
Fundation), tratan de promover el desarrollo de programas cuyo codigo sea publico y compartido. Una de 
las principales aportaciones GNU fue Linux, un sistema operativo de libre distribucion. 
A partir de 1994 emperzaron a aparecer las primeras distribuciones de CD-ROM, junto con el codigo 
fuente del sistema operativo, se dispona de diversas utilidades y aplicaciones sin tener que descargarlas. 
Ese a~no aparecieron los primeros grupos locales de usuarios de Linux y la primera revista on-line especia-lizada. 
Al a~no siguiente se empezo a trabajar en las primeras versiones de Linux para plataforma no Intel 
y los primeros desarrollos de instaladores parcialmente automaticos. A partir de 1996 Linux comienza a 
difundirse de forma mas general en Espa~na, a~no en el que se inicia el proyecto de documentacion de Linux 
en catellano (LUCAS) y se comienzan a organizar los primeros grupos de usuarios. 
El futuro es muy prometedor, cada vez es mayor el numero de fabricantes de software y hardware que 
han mostrado un creciente interes. 
1GNU: GNU no es Unix. De
nicion recursiva que representa el humor informatico en su maxima expresion 
2FSF: Fundacion para el software libre. Es el principal contribuidor del Proyecto GNU, depende de donaciones privadas y 
se dedica a preservar, proteger y promover los derechos de los usuarios y su libertad para usar, estudiar, copiar, modi
car y 
redistribuir software. Apoya la libertad de expresion, prensa y asociacion en internet, el derecho a usar software criptogra
co 
en comunicaciones privadas y el derecho a escribir software sin los impedimentos del monopolio. 
Jose Antonio Escartn Vigo, Junio 2005.
viii Servidor Linux para conexiones seguras de una LAN a Internet 
Requisitos mnimos Linux 
Probablemente la con
guracion mnima sobre la que Linux sea capaz de funcionar sea un 386SX con 2 
Mb de memoria RAM y una disquetera de 1.44, aunque con estas caractersticas simplemente podremos 
arrancar el sistema y poco mas. Una con
guracion mas realista debera incluir 4Mb de Ram si no vamos 
a utilizar el entorno gra
co, 8Mb en caso contrario y un mnimo de 40MB de espacio en disco, aunque 
en las distribuciones actuales el espacio debera ser mayor de unos 300Mb. Cantidades ridculas si las 
comparamos con los dispositivos disponibles actualmente, pero que permiten reutilizar materiales mas 
antiguos de los que se pueda disponer. Frente a estos requerimientos, se encuentran los sistemas Windows, 
con unos requerimientos1 desorbitados. 
Linux soporta cualquier CPU compatible con los procesadores x86 de Intel, pudiendose encontrar 
versiones que funcionan con procesadores 680x0 de Motorola utilizados en ordenadores Amiga y Atari. 
Tambien son compatibles con Linux muchos ordenadores basados en Alpha, ciertas maquinas Sparc, las 
maquinas basadas en PowerPC como por ejemplo los ordenadores Macintosh de Apple, as como ARM, 
MIPS y algunos tipos de agendas electronicas, telefonos y consolas de juegos. 
Notas Previas 
Se van a tomar varias la siguiente notacion para el documento: 
Cuando aparezcan frases que el usuario pueda introducir por teclado se hara notar por el tipo de 
letra mecanogra
ca, Verbatim 
Al hacer referencia a un comando que deba de ser introducido por una cuenta con privilegios de 
root, ira precedido por el caracter # 
Al hacer referencia a un comando que puede a ser ejecutado por un usuario cualquiera del sistema, 
si tiene privilegios para ello, ira precedido por el caracter $ 
Cuando se muestran codigos el caracter # al inicio de la frase especi
ca que esa frase concreta es 
un comentario dentro del codigo. 
1WindowsXP: Procesador 233Mhz, 64Mb Ram y 1.5 Gb de disco; Windows2003 Server: Procesador 550Mhz, 256Mb Ram 
y 1.5 Gb de disco 
Jose Antonio Escartn Vigo, Junio 2005.
Indice general 
Introduccion IV 
I Tareas previas 1 
1. Plani
cacion 3 
1.1. Fases del proyecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 
1.2. Esquema temporal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 
2. Seleccion de Herramientas 9 
2.1. Seleccion de Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 
2.1.1. Servidor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 
2.1.2. Clientes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 
2.2. Seleccion de la distribucion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 
2.2.1. Distribuciones Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 
2.2.2. Pruebas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 
2.2.3. Distribucion elegida . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 
2.3. Seleccion del Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 
2.3.1. Planner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 
2.3.2. LATEX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 
2.3.3. Kile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 
2.3.4. Prosper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 
2.3.5. Programas gra
cos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 
II Instalacion base 19 
3. Instalacion de la distribucion 21 
3.1. Proyecto Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 
3.1.1. Unstable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 
3.1.2. Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 
3.1.3. Stable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 
3.1.4. Recomendaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 
3.2. Debian Sarge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 
3.3. Debian Woody . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 
3.4. Actualizacion de Woody a Sarge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 
4. Primeros pasos 25 
4.1. Particionar el disco . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 
4.2. Gestores de arranque . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 
4.3. Usuarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 
4.3.1. A~nadir nuevos usuarios al sistemas . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 
4.3.2. A~nadir grupos al sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
x Servidor Linux para conexiones seguras de una LAN a Internet 
4.3.3. Bases de datos de usuarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 
4.4. Permisos de archivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 
4.4.1. Tipos de archivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 
4.4.2. Modi
car los permisos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 
4.4.3. Permisos especiales: SUID, SGID y bit de persistencia . . . . . . . . . . . . . . . . 32 
4.4.4. Cambiar un archivo de propietario o grupo . . . . . . . . . . . . . . . . . . . . . . 33 
4.5. Instalacion de aplicaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 
4.5.1. Compilacion de paquetes desde archivos fuente . . . . . . . . . . . . . . . . . . . . 33 
4.5.2. Dpkg: Instalador de paquetes precompilados . . . . . . . . . . . . . . . . . . . . . . 36 
4.5.3. Apt: Gestor de paquetes Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 
4.5.4. Alien: Convertir paquetes .rpm a .deb (formato Debian) . . . . . . . . . . . . . . . 38 
4.5.5. Encontrar paquetes y sus dependencias . . . . . . . . . . . . . . . . . . . . . . . . 38 
4.5.6. Problemas al instalar paquetes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 
4.6. Shells . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 
4.6.1. Tipos de shell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 
4.6.2. Caractersticas de la shell Bash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 
4.6.3. Ejecucion de procesos en la shell Bash . . . . . . . . . . . . . . . . . . . . . . . . . 41 
4.6.4. Variables de entorno . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 
4.6.5. Con
guracion del entorno . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 
4.6.6. Redireccionamientos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 
4.7. Consolas virtuales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 
5. Kernel 45 
5.1. Por que compilar? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 
5.2. Acerca de los modulos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 
5.3. Kernel-image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 
5.4. Kernel-source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 
5.4.1. Instalar un kernel-source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 
5.4.2. Crear un paquete .deb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 
5.5. Compilar Kernel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 
5.5.1. Paquetes necesarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 
5.5.2. Comprobar el hardware disponible . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 
5.5.3. Metodo de compilacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 
5.5.4. Parchear el kernel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 
5.5.5. Consejos para la con
guracion del kernel . . . . . . . . . . . . . . . . . . . . . . . . 49 
6. Interfaz gra
co 51 
6.1. X-Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 
6.1.1. Con
guracion X-Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 
6.1.2. Arrancar X-Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 
6.2. Gestores de ventanas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 
6.3. Entornos de escritorio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 
6.3.1. Kde . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 
6.3.2. Gnome . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 
6.3.3. Otros entornos de escritorio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 
7. Infraestructura de redes 59 
7.1. Arquitectura de redes (Modelo OSI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 
7.2. Direcciones IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 
7.2.1. Datagramas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 
7.2.2. Encaminamiento IP (router y gateway) . . . . . . . . . . . . . . . . . . . . . . . . 63 
7.2.3. Mascaras de red y notacion de barra inclinada . . . . . . . . . . . . . . . . . . . . 64 
7.2.4. Subneting (CIDR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 
7.2.5. Enmascaramiento IP (NAT, Network Adress Translation) . . . . . . . . . . . . . . 66 
7.3. Resolucion de direcciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 
Jose Antonio Escartn Vigo, Junio 2005.
Indice general xi 
7.3.1. ARP (Adress Resolution Protocol) . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 
7.3.2. RARP (Reverse Address Resolution Protocol) . . . . . . . . . . . . . . . . . . . . . 68 
7.4. Protocolos de red, IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 
7.4.1. ICMP (Internet Control Message Protocol) . . . . . . . . . . . . . . . . . . . . . . 69 
7.4.2. OSPF (Open Shortest Path First) . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 
7.4.3. Protocolo BGP (Border Gateway Protocol) . . . . . . . . . . . . . . . . . . . . . . 70 
7.4.4. IGMP (Internet Group Management Protocol) . . . . . . . . . . . . . . . . . . . . 70 
7.5. Protocolos de transporte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 
7.5.1. UDP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 
7.5.2. TCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 
7.6. Protocolos de aplicacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 
7.6.1. NFS (Network File System) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 
7.6.2. SNMP (Simple network management protocol) . . . . . . . . . . . . . . . . . . . . 74 
7.6.3. DNS (Domain Name Server) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 
7.6.4. SMTP (Simple Mail Transfer Protocol) . . . . . . . . . . . . . . . . . . . . . . . . 74 
7.6.5. TELNET (Remote login) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 
7.6.6. FTP (File Transfer Protocol) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 
7.6.7. HTTP (Hyper Text Transport Protocol) . . . . . . . . . . . . . . . . . . . . . . . . 75 
7.7. Protocolo TCP/IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 
8. Con
guracion de dispositivos de red 79 
8.1. Etherconf: Con
gurador gra
co de red . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 
8.2. Ifcon
g: Con
gurador de red . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 
8.3. Route: Tablas de redireccionamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 
8.4. Netstat: Estado de las conexiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 
8.5. Con
guracion de interfaces usando DHCP . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 
8.6. Archivo /etc/network/interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 
8.6.1. Direcciones IP estaticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 
8.6.2. Direcciones IP dinamicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 
8.6.3. Interfaz Wi
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 
8.6.4. Interfaz PPPoE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 
8.6.5. Puertas de enlace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 
8.6.6. Interfaces virtuales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 
8.7. Recon
guracion de la red . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 
8.7.1. Con
guracion de red durante el arranque . . . . . . . . . . . . . . . . . . . . . . . 87 
8.7.2. Hotplug . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 
8.7.3. Ifplugd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 
8.8. Resolvconf: Resolucion de nombres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 
8.9. Archivos de con
guracion de Hosts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 
8.10. Iwcon
g: Con
guracion wireless . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 
8.11. Resolucion de problemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 
III Instalacion de Servicios 91 
9. Servicios de red 93 
9.1. Servidor DHCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 
9.1.1. Asignacion de direcciones IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 
9.1.2. Parametros con
gurables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 
9.1.3. Implementaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 
9.1.4. Anatoma del protocolo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 
9.1.5. Con
guracion de un servidor DHCP . . . . . . . . . . . . . . . . . . . . . . . . . . 95 
9.1.6. Con
guracion de un cliente DHCP . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 
9.1.7. Con
guracion gra
ca de DHCP, interfaz Webmin . . . . . . . . . . . . . . . . . . . 99 
9.2. BIND: Servidor de nombres DNS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 
Jose Antonio Escartn Vigo, Junio 2005.
xii Servidor Linux para conexiones seguras de una LAN a Internet 
9.2.1. Para que necesitamos un DNS? . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 
9.2.2. Servicios que activa un DNS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 
9.2.3. Con
guracion del servidor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 
9.2.4. Traduccion de nombres a direcciones IP . . . . . . . . . . . . . . . . . . . . . . . . 103 
9.2.5. Con
guracion gra
ca de DNS BIND, interfaz Webmin . . . . . . . . . . . . . . . . 103 
9.2.6. Seguridad en DNS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 
9.3. NIS: Servicio de informacion de red . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 
9.3.1. Funcionamiento basico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 
9.3.2. Servidores NIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 
9.3.3. Con
guracion del servidor NIS maestro . . . . . . . . . . . . . . . . . . . . . . . . 110 
9.3.4. Cliente NIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 
9.3.5. Herramientas basicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 
9.3.6. Problemas de seguridad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116 
9.4. NFS: Sistema de archivos Linux en red . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 
9.4.1. Cliente NFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 
9.4.2. Montaje automatico de particiones NFS . . . . . . . . . . . . . . . . . . . . . . . . 118 
9.4.3. Propiedades de las particiones montadas . . . . . . . . . . . . . . . . . . . . . . . . 118 
9.4.4. Servidor de NFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 
9.4.5. Con
guracion gra
ca de NFS, interfaz Webmin . . . . . . . . . . . . . . . . . . . . 120 
9.5. Samba: Servicio de conexiones para sistemas Microsoft . . . . . . . . . . . . . . . . . . . . 121 
9.5.1. Comparticion de recursos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 
9.5.2. Que es Samba? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 
9.5.3. Con
guracion gra
ca de Samba, interfaz SWAT . . . . . . . . . . . . . . . . . . . . 123 
9.5.4. Funcionamiento de CIFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 
9.5.5. Parametros globales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 
9.5.6. Impresoras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 
9.5.7. Comparticion de directorios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 
9.5.8. Limitar acceso de los usuarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 
9.5.9. Integracion de Samba en un dominio NT . . . . . . . . . . . . . . . . . . . . . . . 127 
9.5.10. Con
guracion de Samba como controlador de dominio . . . . . . . . . . . . . . . . 128 
9.5.11. Cliente Samba . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 
9.5.12. Con
guracion gra
ca de Samba, interfaz Webmin . . . . . . . . . . . . . . . . . . . 129 
9.6. ProFTPD: Servidor FTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 
9.6.1. Servidor ProFTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 
9.6.2. Con
guracion gra
ca de ProFTP, interfaz Webmin . . . . . . . . . . . . . . . . . . 132 
9.6.3. Clientes FTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 
10.Servicios de usuario 133 
10.1. Cuotas de usuario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 
10.1.1. Arrancar el sistema de cuotas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 
10.1.2. Asignar cuotas a los usuarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 
10.1.3. Con
guracion gra
ca de Quote, interfaz Webmin . . . . . . . . . . . . . . . . . . . 134 
10.2. Cups: Servidor de impresion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 
10.2.1. Servidor Cups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 
10.2.2. Servidor Cups para Samba . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 
10.2.3. Clientes Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 
10.2.4. Clientes Microsoft . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 
10.2.5. Solucionar problemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 
10.3. Servidor Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 
10.3.1. Servidor Apache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 
10.3.2. Apache-SSL: Conexiones seguras . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150 
10.3.3. Creacion de un servidor web seguro . . . . . . . . . . . . . . . . . . . . . . . . . . 152 
10.3.4. Apache 2.x . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 
10.3.5. Ataques al servidor Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 
Jose Antonio Escartn Vigo, Junio 2005.
Indice general xiii 
10.4. Servidor de correo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 
10.4.1. Exim: Correo corporativo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 
10.4.2. Fetchmail: Correo externo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 
10.4.3. Horde: Webmail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161 
10.4.4. Protocolo IMAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162 
10.4.5. Filtrado de correo, eliminar virus y Spam con Procmail . . . . . . . . . . . . . . . 163 
10.4.6. ClamAV: Antivirus para correo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 
10.4.7. SpamAssassin: Filtro basado en reglas . . . . . . . . . . . . . . . . . . . . . . . . . 167 
10.4.8. Bogo
lter: Filtro bayesiano . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 
10.5. Jabber: Mensajera instantanea para corporaciones . . . . . . . . . . . . . . . . . . . . . . 172 
10.5.1. Servidor Jabber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173 
10.5.2. Con
guracion gra
ca de Jabber, interfaz Webmin . . . . . . . . . . . . . . . . . . . 174 
10.5.3. Clientes Jabber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174 
11.Comunicaciones seguras 177 
11.1. Shell seguro: OpenSSH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 
11.1.1. Cliente OpenSSH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 
11.1.2. Servidor OpenSSH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 
11.2. Criptografa y cifrado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 
11.2.1. Tipos de cifrado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 
11.2.2. Estandares generales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182 
11.2.3. Aplicaciones de la criptografa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183 
11.2.4. Protocolos de cifrado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184 
11.2.5. OpenPGP: Aplicacion de cifrado . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 
12.Herramientas de seguridad 191 
12.1. Herramientas basicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191 
12.1.1. Ping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191 
12.1.2. Traceroute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192 
12.1.3. Whois . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 
12.1.4. Dig . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194 
12.1.5. Finger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 
12.2. Firewall o cortafuegos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196 
12.2.1. Polticas de seguridad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196 
12.2.2. Modos de con
guracion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196 
12.2.3. IPTables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197 
12.3. Squid: Proxy transparente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204 
12.4. Bastille Linux: Herramienta de seguridad . . . . . . . . . . . . . . . . . . . . . . . . . . . 206 
12.4.1. Ejecucion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206 
12.4.2. Modos de funcionamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 
12.5. Copias de seguridad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 
12.5.1. Dispositivos de cinta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 
12.5.2. Mt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208 
12.5.3. Dump y Restore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208 
12.5.4. Con
guracion gra
ca de backups, interfaz Webmin . . . . . . . . . . . . . . . . . . 210 
12.5.5. K3B: Grabacion de CDs y DVDs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211 
13.Sistemas de deteccion de intrusiones 213 
13.1. Tipos de IDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213 
13.1.1. NIDS (Network Intrusion Detection System) . . . . . . . . . . . . . . . . . . . . . 213 
13.1.2. IDS (Deteccion de actividades anomalas) . . . . . . . . . . . . . . . . . . . . . . . 214 
13.1.3. IPS (Intrusion Prevention System) . . . . . . . . . . . . . . . . . . . . . . . . . . . 214 
13.2. Ubicacion del NIDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214 
13.3. El problema de los falsos positivos de NIDS . . . . . . . . . . . . . . . . . . . . . . . . . . 215 
13.4. Obtener lo maximo del IDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217 
Jose Antonio Escartn Vigo, Junio 2005.
xiv Servidor Linux para conexiones seguras de una LAN a Internet 
13.4.1. Con
guracion apropiada del sistema . . . . . . . . . . . . . . . . . . . . . . . . . . 217 
13.4.2. Ajuste del IDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217 
13.4.3. Herramientas de analisis IDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217 
13.5. IDS Snort (NIDS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218 
13.5.1. Caractersticas basicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218 
13.5.2. Instalacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218 
13.5.3. Modos de ejecucion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219 
13.5.4. Modos de alerta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221 
13.5.5. Optimizar la con
guracion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222 
13.5.6. Clases de reglas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223 
13.5.7. Ejecutar como servicio del sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . 226 
13.5.8. Con
guracion gra
ca de Snort, interfaz Webmin . . . . . . . . . . . . . . . . . . . 226 
13.5.9. Personalizar reglas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228 
13.6. Deteccion de intrusiones en el host . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229 
13.7. Integridad de archivos: IDS Tripwire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231 
13.8. ACIDlab: Analizar alertas IDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235 
13.9. Logcheck: Analizar logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239 
13.10.PortSentry: Detectar escaneos de puertos . . . . . . . . . . . . . . . . . . . . . . . . . . . 241 
13.11.Detectores de sniers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245 
13.11.1.Neped . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247 
13.11.2.Sentinel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247 
13.12.Chkrootkit: Detector de rootkits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248 
13.13.HoneyPots: Entretener a los atacantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250 
13.13.1.Como funcionan? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251 
13.13.2.Ventajas y desventajas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251 
13.13.3.Utilidades de honeypots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252 
13.13.4.Tipos de honeypots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253 
13.13.5.Otras caractersticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254 
13.13.6.Honeynets: alta interaccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255 
13.13.7.Honeyd: baja interaccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255 
14.Redes inalambricas 257 
14.1. Estandar 802.11 (Wi
) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257 
14.2. Peligros de las LAN inalambricas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259 
14.3. El fenomeno del Wardriving . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260 
14.4. Seguridad en redes inalambricas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262 
14.4.1. Clave WEP (Wired Equivalente Privacy) . . . . . . . . . . . . . . . . . . . . . . . 262 
14.4.2. Clave WPA (Wi
Protected Access) . . . . . . . . . . . . . . . . . . . . . . . . . . 262 
14.4.3. Clave WPA2 (Estandar 802.11i) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266 
14.4.4. Medidas preventivas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266 
14.5. Servidor Radius: FreeRadius . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267 
14.5.1. Con
gurar FreeRadius con EAP-TLS . . . . . . . . . . . . . . . . . . . . . . . . . 267 
14.5.2. Generar los certi
cados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269 
14.5.3. Comprobar el funcionamiento de FreeRadius . . . . . . . . . . . . . . . . . . . . . 270 
14.5.4. Con
gurar AP (Router 3Com) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270 
14.5.5. Clientes Linux: WPA-Supplicant . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271 
14.5.6. Clientes Windows: WindowsXP + SP2 . . . . . . . . . . . . . . . . . . . . . . . . . 272 
14.6. Herramientas de seguridad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273 
14.6.1. Descubrir redes ilegales e intrusos: Kismet Wireless . . . . . . . . . . . . . . . . . . 273 
14.6.2. Desencriptar claves inalambricas WEP: Airsnort . . . . . . . . . . . . . . . . . . . 275 
15.Servicio de administracion por Web: WebMin 279 
15.1. Usuarios de Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279 
15.2. Secciones Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279 
15.3. Modulos de Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283 
Jose Antonio Escartn Vigo, Junio 2005.
Indice general xv 
16.Servicios de monitorizacion del sistema 287 
16.1. Monitor del sistema: Top . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287 
16.2. Rendimiento del sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288 
16.2.1. CPU, dispositivos y particiones de E/S: iostat . . . . . . . . . . . . . . . . . . . . . 288 
16.2.2. Memoria: free . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289 
16.2.3. Memoria virtual: vmstat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289 
16.2.4. Disco: df, du . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290 
16.2.5. Usuarios y sus procesos: w . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290 
16.3. Gestionar procesos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290 
16.3.1. Visualizar procesos: ps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291 
16.3.2. Enviar signals a procesos: kill . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292 
16.3.3. Modi
car prioridades: nice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293 
16.4. Terminal de root con prioridad maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293 
16.5. Programacion de tareas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293 
16.5.1. At . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294 
16.5.2. Cron . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294 
16.5.3. Tareas periodicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296 
16.5.4. Anacron . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296 
IV Valoracion
nal 297 
17.Pruebas del sistema 299 
17.1. Nessus: Escaner de vulnerabilidades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299 
17.1.1. Con
gurar el programa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299 
17.1.2. Ejecucion de Nessus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300 
17.1.3. Otros interfaces de con
guracion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302 
17.2. Nmap: Escaner de red y puertos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303 
17.2.1. Caractersticas basicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303 
17.2.2. Tipos de escaneado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305 
17.2.3. Opciones de descubrimiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305 
17.2.4. Opciones de ajuste de frecuencia de Nmap . . . . . . . . . . . . . . . . . . . . . . . 305 
17.2.5. Otras opciones de Nmap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306 
17.2.6. Salida de Nmap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307 
17.2.7. Con
guracion gra
ca de Nmap, interfaz Nmapfe . . . . . . . . . . . . . . . . . . . 307 
17.3. Pruebas de carga . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308 
18.Estudio Economico 309 
18.1. Recursos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309 
18.2. Costes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310 
18.3. Resumen economico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310 
18.4. Modi
caciones a los costes economicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310 
19.Conclusiones 311 
V Apendices 315 
A. Comandos basicos 317 
B. Debian en castellano 319 
C. Archivos de con
guracion 321 
D. Por que Debian no tiene rc.local? 325 
Jose Antonio Escartn Vigo, Junio 2005.
xvi Servidor Linux para conexiones seguras de una LAN a Internet 
E. Puertos por defecto 327 
F. Manual del editor Vim (Vi mejorado) 329 
G. Gua rapida de IPTables 331 
Debian Sarge, nueva version estable 333 
Licencia CC - Reconocimiento-CompartirIgual 335 
Paginas Web 339 
Bibliografa 343 
Jose Antonio Escartn Vigo, Junio 2005.
Indice de
guras 
1.1. Plani
cacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 
1.2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 
1.3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 
1.4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 
2.1. Planner, distribucion de recursos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 
2.2. Planner, diagrama temporal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 
2.3. Editor Kile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 
2.4. Prosper, tipos de transparencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 
7.1. IP, rango de direcciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 
7.2. IP, direcciones reservadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 
7.3. IP, cabecera del datagrama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 
7.4. UDP, cabecera del datagrama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 
7.5. TCP, cabecera del datagrama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 
9.1. DHCP, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 
9.2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 
9.3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 
9.4. DNS BIND, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 
9.5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 
9.6. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 
9.7. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 
9.8. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 
9.9. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 
9.10. NIS, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 
9.11. NFS, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 
9.12. Samba, interfaz gra
ca SWAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 
9.13. Samba, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 
9.14. ProFTPD, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 
10.1. Quota, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 
10.2. Cups, interfaz gra
ca de con
guracion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 
10.3. Cups, impresora HP815 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 
10.4. Apache, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142 
10.5. Apache, parametros de con
guracion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144 
10.6. Apache, modulo HtAccess Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145 
10.7.Webalizer, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 
10.8. Apache, servidores virtuales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 
10.9. Apache, comparticion de carpetas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 
10.10.Apache, modulos instalados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150 
10.11.Exim, monitor con la interfaz Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 
10.12.Fetchmail, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
xviii Servidor Linux para conexiones seguras de una LAN a Internet 
10.13.Procmail, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 
10.14.Procmail, crear acciones de forma gra
ca . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 
10.15.SpamAssassin, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 
10.16.SpamAssassin, opciones de con
guracion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 
10.17.Jabber, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175 
10.18.Kopete, cliente de mensajera instantanea . . . . . . . . . . . . . . . . . . . . . . . . . . . 176 
10.19.Gaim, cliente de mensajera instantanea . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176 
11.1. SSHD, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180 
12.1. Backups, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211 
12.2. K3B, grabacion de CDs y DVDs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211 
13.1. Snort, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227 
13.2. Acidlab, detalle de una alerta de Snort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238 
13.3. Logcheck, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242 
13.4. PortSentry, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246 
14.1. Smbolos urbanos de redes wi
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261 
14.2. WEP-WPA, comparativa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263 
14.3. WPA/EAP, funcionamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263 
14.4. WPA, autenticacion servidor Radius . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264 
14.5. Servidor Radius, sistema de autenticacion . . . . . . . . . . . . . . . . . . . . . . . . . . . 268 
14.6. Servidor Radius, desvo en el router . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270 
14.7. AirSnort, descifrado de claves WEP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277 
15.1.Webmin, pantalla de con
guracion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280 
15.2.Webmin, pantallas de la interfaz Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285 
15.3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286 
17.1. Nessus, con
guracion de la aplicacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301 
17.2. Nessus, vulnerabilidades del sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302 
D.1. Runlevels, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326 
G.1. Licencia Reconocimiento-CompartirIgual . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338 
Jose Antonio Escartn Vigo, Junio 2005.
Indice de cuadros 
1. Objetivos del proyecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii 
2.1. Distribuciones Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 
4.1. Lilo, archivo de con
guracion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 
4.2. /etc/passwd, ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 
4.3. /etc/passwd, descripcion de campos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 
4.4. /etc/shadow, ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 
4.5. /etc/shadow, descripcion de campos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 
4.6. /etc/group, ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 
4.7. /etc/group, descripcion de campos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 
4.8. Tipos de archivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 
4.9. Chmod, Opciones basicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 
4.10. Chmod, opciones especiales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 
4.11. Make
le, ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 
4.12. Dpkg, opciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 
4.13. /etc/apt/sources.list, ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 
4.14. Apt, opciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 
4.15. Variables habituales del sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 
5.1. Kernel, paquetes basicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 
5.2. Kernel 2.6, paquetes necesarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 
5.3. Metodo de compilacion del kernel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 
6.1. /etc/X11/XF86Con
g-4, ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 
7.1. Modelo de referencia OSI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 
7.2. Tipos de redes, n.o de hosts por red . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 
7.3. Notacion de barra inclinada en IPs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 
7.4. TCP/IP, ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 
7.5. TCP/IP, esquema de transmision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 
8.1. Netstat, opciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 
9.1. /var/yp/Make
le, ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 
10.1. Apache, archivos de con
guracion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 
11.1. SSH cliente, opciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 
12.1. Ping, opciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192 
12.2. Dig, opciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 
12.3. IPTables, especi
caciones de reglas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 
12.4. IPTables, comandos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200 
12.5. IPTables, ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
xx Servidor Linux para conexiones seguras de una LAN a Internet 
12.6. /etc/squid/squid.conf, ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204 
12.7. Mt, opciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208 
12.8. Dump, opciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209 
12.9. Restore, opciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210 
13.1. Snort, opciones de alerta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221 
13.2. Snort, archivos de reglas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224 
13.3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225 
13.4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226 
13.5. Snort, opciones de personalizacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230 
13.6. Tripwire, mascaras de propiedad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231 
13.7. Tripwire, mascaras prede
nidas en plantillas . . . . . . . . . . . . . . . . . . . . . . . . . . 232 
13.8. Acidlab, variables de con
guracion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236 
13.9. PortSentry, opciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244 
14.1. Estandares 802.11 inalambricos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258 
14.2. Kismet, con
guracion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274 
14.3. Kismet, con
guracion de la interfaz gra
ca . . . . . . . . . . . . . . . . . . . . . . . . . . 274 
14.4. Kismet, teclas de la interfaz gra
ca . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275 
15.1.Webmin, modulos disponibles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284 
16.1. Ps, opciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291 
17.1. Nmap, tipos de escaneo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305 
17.2. Nmap, opciones de descubrimiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305 
17.3. Nmap, con
guraciones de frecuencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306 
17.4. Nmap, otras opciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306 
17.5. Nmap, codi
cacion de color de la salida . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307 
18.1. Recursos del proyecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309 
18.2. Costes del proyecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310 
Jose Antonio Escartn Vigo, Junio 2005.
Parte I 
Tareas previas
Captulo 1 
Plani
cacion 
El numero de creditos asignados al proyecto es de 22,5 y decid que cada credito me supondra una 
carga de 20 horas, por lo tanto, la plani
cacion ha sido realizada para un total de 450 horas. 
1.1. Fases del proyecto 
Plani
cacion temporal: 20 horas. Mediante la herramienta de gestion de proyectos Planner, se realiza 
una division temporal de las actividades a realizar. 
Trabajo preliminar: 40 horas. Se eligen una serie de herramientas y sistemas sobre los cuales se 
desarrolla el proyecto. 
Instalacion base y con
guracion: 80 horas. Implementacion y con
guracion del entorno de trabajo. 
Con
guracion de los servicios: 120 horas. Basandose en los servicios tpicos que implementan los 
servidores de red, se instalan una serie de servicios estandar para clientes de sistemas operativos 
Linux y Windows. 
Pruebas del sistema y conclusiones: 30 horas. Apoyandose en una serie de pruebas de carga se deter-mina 
la e
ciencia real, de los servicios del servidor. As mismo se utilizan varias herramientas para 
determinar la seguridad del servidor y comprobar su resistencia a posibles intrusiones o agresiones 
externas. 
Aprendizaje del entorno LATEX: 20 horas. A traves de varios libros, que detallo en la bibliografa, se 
aprende a utilizar el entorno de composicion de textos LATEX para elaborar la documentacion del 
proyecto. 
Documentacion del proyecto: 140 horas. A lo largo del desarrollo de las fases anteriores se realizan 
una serie de informes parciales que son la base de la memoria del proyecto. 
1.2. Esquema temporal 
Pese a la plani
cacion inicial, en los siguientes esquemas se detallan la cronologa real que se siguio en 
la elaboracion del proyecto. 
1PFC: Proyecto
n de carrera
4 Servidor Linux para conexiones seguras de una LAN a Internet 
Figura 1.1: Plani
cacion (I) 
Jose Antonio Escartn Vigo, Junio 2005.
Captulo 1. Plani
cacion 5 
Figura 1.2: Plani
cacion (II) 
Jose Antonio Escartn Vigo, Junio 2005.
6 Servidor Linux para conexiones seguras de una LAN a Internet 
Figura 1.3: Plani
cacion (III) 
Jose Antonio Escartn Vigo, Junio 2005.
Captulo 1. Plani
cacion 7 
Figura 1.4: Plani
cacion (IV) 
Jose Antonio Escartn Vigo, Junio 2005.
Captulo 2 
Seleccion de Herramientas 
En este capitulo explicare cuales fueron las diferentes herramientas utilizadas para la elaboracion del 
proyecto. 
En una primera fase se determina el hardware donde se implementa el servidor y los diferentes 
clientes utilizados en las pruebas 
En la segunda fase se elige la distribucion utilizada y los motivos que me llevaron a su eleccion 
En la tercera fase se detalla que herramientas de apoyo se uso para desarrollar los trabajos. 
2.1. Seleccion de Hardware 
Pese a que el director del proyecto me ofrecio la utilizacion de material del departamento LSI de la 
UPC, por mi comodidad, el material escogido fue de mi propiedad. Comprando una parte de el para 
desarrollar de forma mas e
ciente las tareas. 
2.1.1. Servidor 
Como servidor me decid por la compra de un ordenador portatil, que permitiera desarrollar un servidor 
portable con mas utilidades habituales en los servidores
jos, ademas de la ventaja de poder portar el 
proyecto y trabajar en sitios diferentes. Con este sistema se permite a un grupo corporativo itinerante el 
desarrollo de sus actividades en posibles reuniones fuera de su propio edi
cio. La conexion y seguridad del 
sistema queda garantizada gracias al sistema de validacion de clientes. 
El portatil elegido fue un Acer TravelMate 4002 WLMI con procesador Intel Centrino a 1,6 Ghz. 
con dos tarjetas de red integradas, una ethernet 10/100Mb y otra wi
802.11g de 54Mb que permite sin 
problemas establecer dos segmentos diferenciados de red. Uno para los usuarios de o
cina, es decir los 
usuarios
jos, y otro para los clientes wi
, dotando al sistema de mayor seguridad. 
Se presentaron una serie de problemas directamente derivados de esta eleccion. El hardware era dema-siado 
nuevo y esto provoco una serie de incompatibilidades que se fueron solucionando con la instalacion 
de drivers y parches que no se encontraban en las instalaciones Linux estandar. 
El servidor realiza tambien la gestion de la conexion a internet. Esta conexion es suministrada, cuando 
se encuentra
jo, por un router 3com conectado al switch de la red y que solo responde a las peticiones 
del servidor. 
2.1.2. Clientes 
Como clientes se utilizaran varios PC's de sobremesa, conectados mediante cable RJ45 a un switch. 
PC AMD-Duron a 1,3 Ghz., tambien de mi propiedad, donde estara situado el principal cliente 
Linux y Windows del sistema. En este ordenador se realizaron la mayoria de pruebas de conexion a 
servicios.
10 Servidor Linux para conexiones seguras de una LAN a Internet 
PC AMD-Athlon a 1,2 Ghz. y PC AMD-Athlon a 2,4 Ghz. con clientes Windows, prestados. 
Portatil Pentium-IV Mobile, con sistema Linux y Windows, para la pruebas de conexion de clientes 
inalambricos. 
Los clientes se utilizaron simultaneamente para realizar las pruebas de carga una vez terminada la 
implementacion del servidor, para comprobar la efectividad del mismo. 
2.2. Seleccion de la distribucion 
Completada la infraestructura hardware, comence a leer sobre distribuciones de GNU/Linux, buscando 
cuales eran las mas adecuadas para desplegar servidores. 
A continuacion detallo los tipos de distribuciones valoradas: 
Mepis y Ubuntu (basadas en Debian) son consideradas las mejores para aquellos usuarios nuevos 
en Linux que quieren empezar a ser productivos lo antes posible, sin tener que aprender todas sus 
complejidades, son distribuciones orientadas a usuario de escritorio. 
En el lado opuesto tenemos a Gentoo, Debian y Slackware que son distribuciones mas avanzadas 
que requieren un completo aprendizaje antes de poder ser usadas e
cientemente. 
A medio camino entre ellas se encuentran Mandrake, Fedora (basada en Red Hat) y SuSE, estas dos 
ultimas son distribuciones comerciales. 
Knoppix y Mepis-LiveCD (basadas en Debian) son un caso a parte, permiten probar Linux sin tener 
que hacer nada, ya que funciona directamente del CD, sin ninguna instalacion. 
2.2.1. Distribuciones Linux 
Cuadro 2.1: Distribuciones analizadas 
SimplyMepis 3.3 - Mepis-LiveCD 
Ubuntu (Warty Warthog 4.10) 
Gentoo 2004.3 (FreeBSD) 
Debian Woody 3.r04 - Sarge 3.1) 
Debian Sarge 3.1) 
Slackware 10.1 
Mandrake 10.1 
Fedora Core 3 (Red Hat) 
SuSE 
Knoppix 3.7 
Mepis y Mepis-LiveCD 
Fue lanzada por Warren Woodford en julio de 2003. Mepis Linux es una fusion entre Debian Sid 
y Knoppix, una nueva clase de distribucion de Linux que se pueda utilizar como CD en vivo, y como 
distribucion completa con un instalador gra
co a disco duro. De esta manera, usuarios pueden probar el 
producto simplemente booteando desde el CD de Mepis, e instalandolo luego a disco duro solamente 
si les gusta. Muchas otras distribuciones copiaron esta idea mas adelante, pero fue Mepis quien inicio el 
concepto de un CD vivo mas un instalador gra
co completo partiendo de un CD. 
A que se debe el exito de Mepis? A diferencia de la mayora de las distribuciones principales de Linux, 
Mepis viene con muchos paquetes que no son de uso-libre, pero altamente utiles, precon
gurados todos y 
Jose Antonio Escartn Vigo, Junio 2005.
Captulo 2. Seleccion de Herramientas 11 
listos para utilizar. Estos incluyen el driver de video Nvidia, el plugin Flash de Macromedia, Java, varios 
codecs de multimedia para manejar archivos populares de audio y video y otros usos. Con Mepis Linux, no 
hay necesidad de buscar el software para Java y despues tener que buscar la documentacion para descubrir 
como permitir el uso de Java en sus navegadores. Todo esta disponible despues de la instalacion. 
Esta idea simple resulto ser enormemente popular, no solamente entre los usuarios nuevos de Linux, 
sino tambien entre los mas experimentados quienes encontraron muy conveniente el no tener que pasar 
horas post-instalacion con
gurando y a
nando el sistema. Aparte de las aplicaciones estandard de Debian 
y del software no-libre antes citado Mepis Linux tiene excelente auto-deteccion del hardware. 
Ubuntu (Warty Warthog) 
Ubuntu esta basada en Debian, pero el planteamiento esta inspirado en los principios de la corriente 
ubuntu, un movimiento humanista encabezado por el obispo Desmond Tutu, premio Nobel de la Paz en 
1984. Economicamente el proyecto se sostiene con aportaciones de la empresa Canonical del millonario 
sudafricano Mark Shuttleworth. 
El proyecto nacio por iniciativa de algunos programadores de los proyectos Debian, Gnome y Arch 
que se encontraban decepcionados con la manera de operar del proyecto Debian. La version estable era 
utilizada solo por una minora debido a la poca o nula vigencia que posea en terminos de la tecnologa 
Linux actual. 
Tras varios meses de trabajo y un breve perodo de pruebas, la primera version de Ubuntu (Warty 
Warthog) fue lanzada en el mes de octubre de 2004. 
Los desarrolladores se esfuerzan en ofrecer una propuesta que corrija la problematica que advirtieron 
en Debian. Las versiones estables se liberan al menos dos veces al a~no y se mantienen actualizadas. 
Contribuye al proyecto Debian de manera continua debido a que ambas distribuciones comparten 
colaboradores de manera o
cial. El administrador de escritorio o
cial es Gnome y el navegador o
cial es 
Mozilla Firefox. El sistema incluye funciones avanzadas de seguridad y entre sus polticas se encuentra el 
no activar procesos latentes por omision al momento de instalarse. 
Gentoo (FreeBSD) 
Gentoo Linux fue creada por Daniel Robbins, un conocido desarrollador de Stampede Linux y FreeBSD. 
La primera version estable de Gentoo fu anunciada en Marzo del 2002. 
Gentoo Linux es una distribucion basada en codigo fuente. Mientras que los sistemas de instalacion 
proveen de varios niveles de paquetes pre-compilados, para obtener un sistema Linux basico funcionando, 
el objetivo de Gentoo es compilar todos los paquetes de codigo en la maquina del usuario. La principal 
ventaja de esto es que todo el software se encuentra altamente optimizado para la arquitectura de la 
computadora. 
Tambien, actualizar el software instalado a una nueva version es tan facil como teclear un comando, 
y los paquetes, mantenidos en un repositorio central, son actualizados a menudo. En la otra cara de la 
moneda, instalar Gentoo y convertirla en una distribucion completa, con los ultimos entornos gra
cos, 
multimedia y de desarrollo es un trabajo largo y tedioso, puede durar varios das incluso en una maquina 
rapida. 
Debian (Woody - Sarge) 
Debian GNU/Linux inicio su andadura de la mano de Ian Murdock en 1993. Debian es un proyecto 
totalmente no-comercial; posiblemente el mas puro de los ideales que iniciaron el movimiento del software 
libre. Cientos de desarrolladores voluntarios de todo el mundo contribuyen al proyecto, que es bien dirigido 
y estricto, asegurando la calidad de la distribucion. En cualquier momento del proceso de desarrollo existen 
tres ramas en el directorio principal: estable, en pruebas e inestable (tambien conocida como sid, 
nombre que no vara). Actualmente la rama estable es Woody y la rama en pruebas es Sarge. 
Cuando aparece una nueva version de un paquete, se situa en la rama inestable para las primeras 
pruebas, si las pasa, el paquete se mueve a la rama de pruebas, donde se realiza un riguroso proceso que 
dura muchos meses. Esta rama solo es declarada estable tras una muy intensa fase de pruebas. 
Jose Antonio Escartn Vigo, Junio 2005.
12 Servidor Linux para conexiones seguras de una LAN a Internet 
Como resultado de esto, la distribucion es posiblemente la mas estable y con
able, aunque no la 
mas actualizada. Mientras que la rama estable es perfecta para servidores con funciones crticas, muchos 
usuarios pre
eren usar las ramas de pruebas o inestable, mas actualizadas, en sus ordenadores personales. 
Debian es tambien famosa por su reputacion de ser difcil de instalar, a menos que el usuario tenga 
un profundo conocimiento del hardware de la computadora. Compensando este fallo esta apt-get el 
instalador de paquetes Debian. Muchos usuarios de Debian hacen bromas sobre que su instalador es tan 
malo por que solo lo han de usar una vez, tan pronto como Debian esta en funcionamiento, todas las 
actualizaciones, de cualquier tipo pueden realizarse mediante la herramienta apt-get. 
Slackware 
Creada por Patrick Volkerding en 1992, Slackware Linux es la distribucion mas antigua que sobrevive 
hoy en da. No ofrece extras vistosos, y se mantiene con un instalador basado en texto, y sin herramientas 
de con
guracion gra
ca. 
Mientras otras distribuciones intentan desarrollar intarfaces faciles de usar para muchas utilidades 
comunes, Slackware no ofrece nada amistoso, y toda la con
guracion se realiza mediante los archivos de 
con
guracion. Es por esto que Slackware solo se recomienda a aquellos usuarios nuevos que deseen perder 
el tiempo aprendiendo acerca de Linux.A pesar de todo, Slackware tiene una especie de aura magica para 
muchos usuarios. 
Es extremadamente estable y segura, muy recomendada para servidores. Los administradores con 
experiencia en Linux encuentran que es una distribucion con pocos fallos, ya que usa la mayora de paquetes 
en su forma original, sin demasiadas modi
caciones propias de la distribucion, que son un riesgo potencial 
de a~nadir nuevos fallos. Es raro que se produzcan lanzamientos de nuevas versiones (aproximadamente una 
al a~no), aunque siempre se pueden encontrar paquetes actualizados para descargar despues del lanzamiento 
o
cial. Slackware es una buena distribucion para aquellos interesados en profundizar en el conocimiento 
de las entra~nas de Linux. 
Posiblemente, la mejor caracterstica de esta distribucion es que si necesitas ayuda con tu sistema 
linux, encuentra un usuario de Slackware. Es mas probable que resuelva el problema que otro usuario 
familiarizado con cualquier otra distribucion. 
Mandrake 
Creada por Gal Duval, Mandrake Linux es una distribucion que ha experimentado un enorme aumento 
de popularidad desde su primera version de julio de 1998. Los desarrolladores partieron de la distribucion 
de Red Hat, cambiaron el entorno de escritorio predeterminado por KDE, y a~nadieron un instalador facil 
de usar rompiendo el mito de que linux es difcil de instalar. Las herramientas de deteccion de hardware 
de Mandrake y sus programas para el particionamiento de discos son consideradas por muchos como las 
mejores de la industria, y muchos usuarios se encontraron usando Mandrake all donde otras distribuciones 
no haban conseguido entregar la usabilidad necesaria.Desde entonces Mandrake Linux ha madurado y 
se ha convertido en una distribucion popular entre los nuevos usuarios de linux y aquellos hogares que 
buscan un sistema operativo alternativo. 
El desarrollo de Mandrake es completamente abierto y transparente, con paquetes nuevos que se a~naden 
al directorio llamado cooker a diario. Cuando una nueva version entra en fase beta, la primera beta se 
crea a partir de los paquetes que se encuentran en cooker en ese momento. El proceso de pruebas de 
la beta sola ser corto e intensivo, pero desde la versin 9.0 ha pasado ha ser mas largo y exigente. Las 
listas de correo sobre la version beta suelen estar saturadas, pero sigue siendo posible recibir una respuesta 
rapida sobre cualquier fallo o duda que enves. Como resultado de este tipo de desarrollo se obtiene una 
distribucion puntera y altamente actualizada. Como contrapartida, los usuarios pueden encontrarse con 
mas fallos que en otras distribuciones. 
Mucha gente encuentra este 'pero' razonable para sus equipos, ellos obtienen las ultimas versiones de 
software y los cuelgues ocasionales de las aplicaciones es algo con lo que pueden vivir. Tan pronto como 
el desarrollo se completa el software se pone a la libre disposicion de la gente desde replicas en todo el 
mundo. 
Jose Antonio Escartn Vigo, Junio 2005.
Captulo 2. Seleccion de Herramientas 13 
Fedora (Red Hat) 
Para muchos el nombre de Red Hat equivale a Linux, ya que probablemente se trata de la compa~na 
de linux mas popular del mundo. Fundada en 1995 por Bob Young y Marc Ewing, Red Hat Inc. Solo ha 
mostrado bene
cios recientemente gracias a otros servicios en lugar de a la distribucion en si. Aun as, 
Red Hat es la primera eleccion para muchos profesionales y parece que seguira siendo un peso pesado 
durante mucho tiempo. 
Afortunadamente se resistieron a realizar ningun plan de rapida expansion durante el boom de las 
punto-com durante los a~nos 1998-1999, concentrandose en su negocio principal. Este tipo de gestion 
prudente si sigue as, es propensa a garantizar estabilidad y dependencia.. 
Que hace a Red Hat Linux tan especial? Su curiosa mezcla de conservadurismo y paquetes punteros 
mezclados con muchas aplicaciones desarrolladas en casa. Los paquetes no son los mas actuales, una vez se 
anuncia una nueva version beta, las versiones de los paquetes se mantienen, excepto para actualizaciones 
de seguridad. Como resultado se obtiene una distribucion bien probada y estable. El programa de betas 
y las facilidades para enviar fallos estan abiertas al publico y hay un gran espritu en las listas de correo 
publicas. 
Red Hat Linux se ha convertido en la distribucion linux dominante en servidores en todo el mundo. 
Otra de las razones del exito de Red Hat es la gran variedad de servicios populares que ofrece la com-pa~ 
na. Los paquetes de software son facilmente actualizables usando la Red Hat Network, un repositorio 
o
cial de software e informacion. Una larga lista de servicios de soporte son accesibles en la compa~na 
y, aunque no siempre baratos, tienes virtualmente asegurado un excelente soporte de personal altamente 
cuali
cado. La compa~na ha desarrollado incluso un programa de certi
cacion para popularizar su distribu-ci 
on, el RHCE (Certi
cado de Ingeniera de Red Hat), academias y centros examinadores estan disponibles 
en el casi todas las partes del mundo. 
Todos estos factores han contribuido a que Red Hat sea una marca reconocida en el mundo de la 
industria de las TI. 
SuSE 
SuSE es otra compa~na orientada a los escritorios, aunque tiene variedad de otros productos para 
empresas. La distribucion ha recibido buenas crticas por su instalador y la herramienta de con
guracion 
YaST, desarrollada por los desarrolladores de la propia SuSE. La documentacion que viene con las versiones 
comerciales, ha sido repetidas veces evaluada como la mas completa, util y usable con diferencia a la de 
sus competidores. SuSE Linux 7.3 recibio el premio Producto del a~no 2001que entrega el Linux Journal. 
La distribucion tiene un gran porcentaje de mercado en Europa y America del norte, pero no se vende en 
Asia y otras partes del mundo. 
El desarrollo de SuSE se realiza completamente a puerta cerrada, y no se lanzan betas publicas para 
probar. Siguen la poltica de no permitir descargar el software hasta tiempo despues de que salgan a la 
venta las versiones comerciales. A pesar de todo, SuSE no entrega imagenes ISO de facil instalacion de su 
distribucion, usando el software empaquetado para la gran mayora de su base de usuarios. 
Actualmente van por la version 9.3 y no la instale porque la unica forma de conseguirla era pagando 
y uno puntos claves era que todo el software fuera libre y gratuito. SuSE no cumpla esos requisitos. 
Knoppix 
Knoppix es una distribucion CD vivo de Linux basada en Debian y que utiliza como gestor de escritorio 
KDE. Esta desarrollada por el consultor de GNU/Linux Klaus Knopper. Gnoppix es una variante pero 
incluye como entorno gra
co Gnome en vez de KDE. 
A diferencia de la mayora de las distribuciones Linux, no requiere una instalacion en el disco duro; 
el sistema puede iniciarse desde un simple CD de 700 MB. Ademas, Knoppix reconoce automaticamente 
la mayora del hardware del ordenador cuando se inicia. Tambien puede ser instalado en el disco duro 
utilizando un script de instalacion. Y otra posibilidad de hacerlo mas persistente es guardar el directorio 
home en una unidad removible, como un dispositivo de almacenamiento USB. 
Se puede usar de distintas formas como: 
Jose Antonio Escartn Vigo, Junio 2005.
14 Servidor Linux para conexiones seguras de una LAN a Internet 
Para ense~nar y demostrar de manera sencilla el sistema GNU/Linux, especialmente como sistema 
operativo. 
Probar rapidamente la compatibilidad de hardware bajo Linux antes de comprarlo o utilizarlo, 
especialmente para tarjetas de vdeo. 
Utilizar las herramientas incluidas para restaurar un sistema corrupto o sus datos perdidos. 
Existen versiones ntegramente en espa~nol y catalan. 
2.2.2. Pruebas 
Los CD's vivos arrancaron bien, sobre todo MEPIS con el que me lleve una grata sorpresa, muy simple 
y funciona casi todo. 
La distribucion Ubuntu estaba claramente orientada a usuario
nal y no servidor que era mi objetivo, 
de todas formas es una buena distribucion que permite estar siempre actualizado. 
Gentoo no la llege a probar debido a las di
cultades de instalacion que representa la continua compi-laci 
on de paquetes, paso esencial en esta distribucion. Es muy complicado dejarla a punto. 
Debian y Slackware eran las distribuciones que mas se ajustaron a los propositos del proyecto; sobre 
todo Debian que cuenta con un gran grupo de soporte y recursos. Pese a ser las menos actualizadas, 
eso no presenta ninguna di
cultad para poder actuar como un servidor, mas bien al contrario, son las 
distribuciones mas estables de todas las evaluadas. 
Mandrake no presentaba el entorno adecuado y Fedora y SuSE, al ser versiones comerciales, no cubran 
los requisitos pre
jados. 
2.2.3. Distribucion elegida 
Pese a la di
cultad de instalacion y con
guracion me decante por Sarge del proyecto Debian, debido 
a su caracter al 100% libre y la gran cantidad de aplicaciones que adjunta. Otro factor decisivo fue el 
soporte que tiene dicha distribucion, mantenida por multitud de desarrolladores. 
Pese a ser una version en pruebas, se encuentra en la ultima fase. La rama de desarrollo Sarge, lleva 
abierta desde el 2002 y la liberacion de la version estable se plantea inminente. 
2.3. Seleccion del Software 
Las herramientas escogidas no lo han sido al azar, son consecuencia directa de la
losofa del proyecto, 
donde el uso exclusivo de software libre y gratuito era un objetivo prioritario. 
Paso a detallar el software que utilizo: 
2.3.1. Planner 
Programa de gestion de proyectos que permite crear planes para el proyecto y seguir su progreso, 
pudiendo colocar sellos temporales 
Lista de caractersticas 
Calendario 
Costes de proyecto 
Gestion de tareas 
Jose Antonio Escartn Vigo, Junio 2005.
Captulo 2. Seleccion de Herramientas 15 
Gestion de recursos 
Figura 2.1: Distribucion de recursos 
Diagramas de ghant 
Figura 2.2: Diagrama temporal de Ghant 
2.3.2. LATEX 
Como se menciona en [CSLSMR+03] LATEX es un conjunto de sentencias escritas en un lenguaje 
de programacion llamado TEX. Este no es un lenguaje de programacion usual, sino uno orientado a la 
escritura de textos de excelente calidad. TEX no es un editor de la familia WYSIWYG, termino empleado 
para denominar a los editores que solo trabajan sobre la pantalla del computador, dando un formato 
visual al texto, y en los cuales lo que ves es lo que tienes. Muy al contrario, en TEX se escribe el texto 
acompa~nado de ordenes que el compilador, posteriormente, interpreta y ejecuta para proporcionar un 
texto perfectamente compuesto. 
A estas ventajas hay que a~nadir otra, es gratuito; Donald E. Knuth el creador de TEX, lo libero en 
Octubre de 1.990. 
El entorno LATEX desarrollado por Leslie Lamport, lo creo en 1982, con la intencion de simpli
car la 
tarea a aquellos que desean utilizar TEX. A~nade a TEX una coleccion de comandos que simpli
can el 
mecanogra
ado, permitiendo al usuario concentrarse en la estructura del texto, en vez de en los comandos 
para dar formato. Tal es la calidad de LATEX que muchas editoriales permiten a sus autores escribir libros 
en LATEX, dandoles un archivo base y unas directrices sobre la elaboracion de los textos. 
Una de las ventajas de LaTeX es que puede ser exportado muy facilmente a Portable Document Format 
(PDF) y PostScrip. 
Utilizare este entorno de composicion de textos para desarrollar la documentacion derivada del pro-yecto. 
Jose Antonio Escartn Vigo, Junio 2005.
16 Servidor Linux para conexiones seguras de una LAN a Internet 
2.3.3. Kile 
Kile es un editor de textos para LATEX desarrollado por P. Brachet. Tiene una completa interfaz con 
diversas facilidades que ofrece a un usuario novel un entorno amigable. 
Figura 2.3: Imagen del editor Kile 
Sus principales caractersticas son las siguientes: 
Los comandos de LATEX estan disponibles a traves de menus, botones y combinaciones de teclas. 
La ayuda integrada en el programa nos permitira saber que macro usar ante una necesidad concreta. 
Para una edicion comoda de los
cheros de texto, contamos con resaltado de sintaxis, funciones de 
busqueda (incremental o no), reemplazo, deshacer, . . . 
Los mas de 370 smbolos matematicos posibles son accesibles mediante botones y menus. 
Corrector ortogra
co a traves de ispell 
Asistentes para la creacion de distintos tipos de documentos LATEX(cartas, artculos, etc). 
Manejo de bibliografas a traves de BibTEX. 
Navegacion mediante menus de la estructura de un documento o proyecto. 
Facilidades para compilar y depurar
cheros LATEX. 
Integracion con herramientas externas para la visualizacion e impresion de los documentos editados 
en distintos formatos: DVI, Postscript o PDF. 
Interfaz con programas de dibujo como x
g o gnuplot. 
2.3.4. Prosper 
La herramienta Prosper, desarrollada por F. Goualard y P.M.Neergaard es una clase para LATEX que 
permite crear presentaciones electronicas con una excelente calidad. 
Con ella se pueden producir documentos en formato PDF para realizar exposiciones con un monitor o 
con un sistema de proyeccion de vdeo. Tambien se puede producir documentos PostScript para imprimir 
la presentacion sobre transparencias para exposiciones con retroproyector. 
Dispone de multitud de estilos de presentacion y la posibilidad de conseguir efectos de animacion en 
pantalla haciendo que el contenido de la misma aparezca o desaparezca en distintas etapas (de forma 
incremental). 
Jose Antonio Escartn Vigo, Junio 2005.
Captulo 2. Seleccion de Herramientas 17 
Figura 2.4: Varios estilos de transparencias 
2.3.5. Programas gra
cos 
Las imagenes y videos que he utilizado en la documentacion y en las transparencias se han generado 
con los siguientes programas: 
KSnapshot: Para capturar pantallas, es mucho mejor que la tpica tecla Impr-pant gracias a sus 
multiples opciones, entre las que se encuentran un temporizador y poder elegir que parte de la 
pantalla se va a capturar; pudiendo seleccionar entre toda la pantalla, la ventana activa o una region 
concreta. En resumen, una herramienta muy util para la redaccion de tutoriales. 
The Gimp: Es el programa estrella de GNU para la creacion y el retoque fotogra
co de imagenes, 
comparable al famoso programa comercial Adobe Photoshop. 
Xvidcap y Mencoder: Permite capturar una secuencia de imagenes de una parte de la pantalla, ya sea 
una ventana o una region. De esta manera, obtendremos una coleccion de imagenes del area capturada 
separadas temporalmente un numero de fps1 que se puede especi
car. El programa Mencoder forma 
parte de Mplayer, que es un conjunto de aplicaciones para la grabacion y reproduccion de vdeos, 
dvd's y otros. Una vez obtenida la coleccion de imagenes que conformaran los frames del vdeo se 
utilizara el programa Mencoder para componerlo. 
1fps: frames por segundo 
Jose Antonio Escartn Vigo, Junio 2005.
Parte II 
Instalacion base
Captulo 3 
Instalacion de la distribucion 
Existen varias formas de realizar la instalacion de la distribucion: 
Desde CD-ROM: con las imagenes o
ciales 
Desde disquetes: carga un nucleo y permite hacer una instalacion base por internet si la tarjeta de 
red es soportada. 
Desde dispositivo USB: crea un mini sistema base 
Desde el disco duro: a partir de unos
cheros locales. 
Desde red: Se realiza a traves de TFTP desde una maquina a la que se tiene acceso, si la tarjeta de 
red es soporta. 
La manera mas sencilla, con mucho, de instalar Debian GNU/Linux, es usar un juego o
cial de CDs o 
DVDs de Debian, las imagenes pueden ser descargadas desde el servidor Debian (www.debian.org/distrib/ ) 
o desde una replica del mismo. 
Si el sistema no permite arrancar desde el CD, se puede utilizar una estrategia alternativa (disquete o 
disco duro) para hacer el arranque inicial del instalador del sistema, los
cheros para arrancar mediante 
otros medios tambien se encuentran en el CD. Una vez arranque el instalador, se pueden obtener el resto 
de
cheros desde el CD. 
Se puede obtener mas informacion respecto a la instalacion de Debian en [PRG+02] y [eidD04]. 
3.1. Proyecto Debian 
El proyecto Debian GNU/Linux posee tres ramas: stable, testing y unstable. En los siguientes 
apartados se detallan las diferencias entre ellas. 
3.1.1. Unstable 
Se llama Sid y como su nombre indica es la distribucion mas inestable porque contiene paquetes 
muy nuevos. La utilizan los desarrolladores de Debian para depuracion. Debian Sid contiene software muy 
reciente y puede traer problemas de estabilidad graves. 
3.1.2. Testing 
Actualmente se llama Sarge, posee el software que ya paso un tiempo de prueba en inestable pero 
que aun debe pasar una fase de pruebas para consideralo estable, es la utilizada por aquellos que desean 
disfrutar de las nuevas caractersticas de Debian y de las versiones de software mas reciente sin esperar 
a la liberacion o
cial de una nueva version. Es el equivalente a la distribucion mas actual de las demas 
distribuciones (Mandrake, Fedora, Slackware, etc).
22 Servidor Linux para conexiones seguras de una LAN a Internet 
3.1.3. Stable 
Actualmente es la version 3.0, tambien llamada Woody y como su nombre indica es la mas estable de 
las distribuciones Debian, ya que su software contenido ya supero varios meses de pruebas y correcciones. 
En sistemas de produccion, donde no se toleran problemas de estabilidad, se recomienda el uso de 
Debian Woody. 
3.1.4. Recomendaciones 
En entornos de prueba y/o desarrollo se recomienda utilizar Debian Woody o Sarge. 
Para PCs de escritorio se recomienda utilizar Debian Sarge, ya que contiene versiones de software 
bastante recientes y ya probadas un tiempo en la rama inestable. 
He elegido Sarge, ya que esta rama de desarrollo lleva abierta desde el 2002 y la liberacion de la version 
estable se plantea inminente. 
3.2. Debian Sarge 
Este metodo de instalacion se utilizo en el cliente de pruebas. En el servidor se instalo Debian Woody 
y se realizo una actualizacion debido a incompatibilidades de Hw. 
Metodo de instalacion 
Mediante el siguiente esquema detallo el sistema de instalacion. 
1. Con
gurar la BIOS para arrancar desde el DVD 
2. Iniciar el instalador boteando desde el DVD 
3. Arrancar el instalador con los metodos y parametros mas adecuados al Hw disponible. Presionando 
Enter se arranca con los parametros por defecto que incluyen el kernel 2.6 de GNU/Linux. 
4. Elegir idioma 
5. Seleccionar pas 
6. Con
rmar mapa de teclado 
7. Detectar Hw y cargar componentes. 
8. Con
gurar la red 
9. Particionar discos. Se puede escoger un particionado automatico o si se elige manual, al menos se 
han de crear 2 particiones, una raz y otra de intercambio 
10. Formar particiones y realizar la instalacion base 
11. Instalar el nucleo 
12. Instalar el gestor de arranque, se instala Grub como predeterminado. Si se disponen de varios sistemas 
operativos se puede especi
car un arranque multiple 
13. Retirar el DVD y reiniciar para continuar la instalacion 
14. Arrancar y con
gurar el sistema base 
15. Con
gurar zona horaria 
Jose Antonio Escartn Vigo, Junio 2005.
Captulo 3. Instalacion de la distribucion 23 
16. Con
gurar usuarios (root y usuarios corrientes) 
17. Con
gurar APT 
18. Instalar y con
gurar paquetes adicionales 
19. Con
gurar correo 
Si durante la instalacion se producen errores o cuelgues se pueden especi
car opciones restrictivas al 
iniciar el instalador. En mi caso, no consegu que ninguna opcion instalara el sistema en el servidor. 
3.3. Debian Woody 
En la instalacion se incluyen varias imagenes de nucleos disponibles, la mayora basados en el kernel 2.2.20: 
Vanilla: La imagen estandar de Debian Woody, instala el kernel 2.2.20. Incluye casi todos los 
controladores soportados por Linux, compilados como modulos. 
Compact: Igual que Vanilla, pero eliminando controladores de dispositivo que se usan con menos 
frecuencia. 
Idepci: Un nucleo que solo soporta dispositivos IDE y PCI (y unos pocos ISA). Se debe usar este 
nucleo si los controladores SCSI producen cuelgues al arrancar, debido a con
ictos de hardware o a 
un compotamiento inadecuado de los controladores o placas de su sistema. 
Bf2.4: Usa el kernel 2.4 y da soporte a hardware nuevo ausente en las otras imagenes. Soporta mas 
hardware USB, controladoras IDE modernas, y los sistemas de
cheros Ext3 y Reiser. 
Esta fue una de las partes mas desesperantes del proyecto, debido a incompatibilidades de Hw, tuve 
que instalar un version diferente de la plani
cada y al arrancar Debian Woody con cualquiera de los 
kernels disponibles, no cargaba el driver adecuado para la pantalla TFT. Esto supuso tener que utilizar 
otra pantalla diferente, conectada a la salida VGA del portatil, para realizar toda la instalacion, hasta 
poder actualizar el kernel a una version 2.6. 
El arranque que utilice fue Bf2.4, para que fuera soportado un mayor numero de dispositivos desde el 
inicio, aunque el problema de la pantalla persista. 
Este es un peque~no resumen de los pasos a seguir en la instalacion de Debian Woody: 
1. Con
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras
Servidor Linux para conexiones seguras

Más contenido relacionado

La actualidad más candente

SISTEMA OPERATIVO LINUX
SISTEMA OPERATIVO LINUXSISTEMA OPERATIVO LINUX
SISTEMA OPERATIVO LINUXFabianAL
 
Linux vs Windows
Linux vs WindowsLinux vs Windows
Linux vs Windowscocoanton
 
Que es linux deber
Que es linux deberQue es linux deber
Que es linux deberdaniel78945
 
Linux, el predilecto Sistema Operativo de Red
Linux, el predilecto Sistema Operativo de RedLinux, el predilecto Sistema Operativo de Red
Linux, el predilecto Sistema Operativo de RedCarlos Soriano
 
Windows vs linux
Windows vs linuxWindows vs linux
Windows vs linuxflymoto
 
Tlk
TlkTlk
Tlk1 2d
 
Linux vs windows.
Linux vs windows.Linux vs windows.
Linux vs windows.nicobdm
 
Evolucion de linux Marge andrea
Evolucion de linux Marge andrea Evolucion de linux Marge andrea
Evolucion de linux Marge andrea Andrea Marge
 
Grafico estadistico de los sistemas operativos
Grafico estadistico de los sistemas operativosGrafico estadistico de los sistemas operativos
Grafico estadistico de los sistemas operativosJonnathan Heras
 
Software Libre en el Mundo
Software Libre en el MundoSoftware Libre en el Mundo
Software Libre en el MundoAprende Viendo
 
Grafico estadistico adriano
Grafico estadistico adrianoGrafico estadistico adriano
Grafico estadistico adrianoadriusgp
 
LINUX vs WINDOWS
LINUX vs WINDOWS LINUX vs WINDOWS
LINUX vs WINDOWS azazeltic
 
Linuxxxxx
LinuxxxxxLinuxxxxx
LinuxxxxxJOELXXX
 

La actualidad más candente (18)

SISTEMA OPERATIVO LINUX
SISTEMA OPERATIVO LINUXSISTEMA OPERATIVO LINUX
SISTEMA OPERATIVO LINUX
 
Linux vs Windows
Linux vs WindowsLinux vs Windows
Linux vs Windows
 
Que es linux deber
Que es linux deberQue es linux deber
Que es linux deber
 
Cuestionario
Cuestionario Cuestionario
Cuestionario
 
Cuestionario
Cuestionario Cuestionario
Cuestionario
 
Linux, el predilecto Sistema Operativo de Red
Linux, el predilecto Sistema Operativo de RedLinux, el predilecto Sistema Operativo de Red
Linux, el predilecto Sistema Operativo de Red
 
Windows vs linux
Windows vs linuxWindows vs linux
Windows vs linux
 
Tlk
TlkTlk
Tlk
 
Linux vs windows.
Linux vs windows.Linux vs windows.
Linux vs windows.
 
Evolucion de linux Marge andrea
Evolucion de linux Marge andrea Evolucion de linux Marge andrea
Evolucion de linux Marge andrea
 
Grafico estadistico de los sistemas operativos
Grafico estadistico de los sistemas operativosGrafico estadistico de los sistemas operativos
Grafico estadistico de los sistemas operativos
 
Linux y windows
Linux y windowsLinux y windows
Linux y windows
 
Software Libre en el Mundo
Software Libre en el MundoSoftware Libre en el Mundo
Software Libre en el Mundo
 
Linux Jovencuentro
Linux JovencuentroLinux Jovencuentro
Linux Jovencuentro
 
Manual practico de_linux_alumnos
Manual practico de_linux_alumnosManual practico de_linux_alumnos
Manual practico de_linux_alumnos
 
Grafico estadistico adriano
Grafico estadistico adrianoGrafico estadistico adriano
Grafico estadistico adriano
 
LINUX vs WINDOWS
LINUX vs WINDOWS LINUX vs WINDOWS
LINUX vs WINDOWS
 
Linuxxxxx
LinuxxxxxLinuxxxxx
Linuxxxxx
 

Destacado

Linux ejemplo de comandos
Linux ejemplo de comandosLinux ejemplo de comandos
Linux ejemplo de comandosJose Barraza
 
Tutorial shell scripts
Tutorial shell scriptsTutorial shell scripts
Tutorial shell scriptsScreenMedia
 
Red hat jose miguel_suarez_villa
Red hat jose miguel_suarez_villaRed hat jose miguel_suarez_villa
Red hat jose miguel_suarez_villaJose Suarez
 
Comandos GNU/Linux-Unix y programación shell.
Comandos GNU/Linux-Unix y programación shell.Comandos GNU/Linux-Unix y programación shell.
Comandos GNU/Linux-Unix y programación shell.Alan Resendiz
 
20 comandos linux que todos los administradores deben conocer
20 comandos linux que todos los administradores deben conocer20 comandos linux que todos los administradores deben conocer
20 comandos linux que todos los administradores deben conocerOpenWebinars.net
 
Apache.d4 admin web
Apache.d4 admin webApache.d4 admin web
Apache.d4 admin webgh02
 
Presentación1 rodrigo saurez
Presentación1 rodrigo saurezPresentación1 rodrigo saurez
Presentación1 rodrigo saurezRodrigo Suarez
 
Las opiniones de estrellas del futbol sobre Riquelme
Las opiniones de estrellas del futbol sobre RiquelmeLas opiniones de estrellas del futbol sobre Riquelme
Las opiniones de estrellas del futbol sobre RiquelmeSimon Cassano
 
Abraham 4b roger federer
Abraham 4b roger federerAbraham 4b roger federer
Abraham 4b roger federerabrisoto1
 
cuanto saves de roger
cuanto saves de rogercuanto saves de roger
cuanto saves de rogeroddone
 
Ranking Mundial De Tenis
Ranking Mundial De TenisRanking Mundial De Tenis
Ranking Mundial De Tenisismaedo
 
Flashtennis Semanario 15 diciembre 2014
Flashtennis Semanario 15 diciembre 2014Flashtennis Semanario 15 diciembre 2014
Flashtennis Semanario 15 diciembre 2014Edgar Gonzalez Allegre
 
Roger Federer
Roger FedererRoger Federer
Roger Federerusuario6
 
Placa madre
Placa madrePlaca madre
Placa madreD1O5
 
Pone A Riquelme
Pone A RiquelmePone A Riquelme
Pone A Riquelmemarcelo17
 
Decodificador duo lite tocomsat
Decodificador duo lite tocomsatDecodificador duo lite tocomsat
Decodificador duo lite tocomsatparcifal32
 

Destacado (20)

Linux ejemplo de comandos
Linux ejemplo de comandosLinux ejemplo de comandos
Linux ejemplo de comandos
 
Tutorial shell scripts
Tutorial shell scriptsTutorial shell scripts
Tutorial shell scripts
 
Red hat jose miguel_suarez_villa
Red hat jose miguel_suarez_villaRed hat jose miguel_suarez_villa
Red hat jose miguel_suarez_villa
 
Red HAT
Red HATRed HAT
Red HAT
 
Comandos GNU/Linux-Unix y programación shell.
Comandos GNU/Linux-Unix y programación shell.Comandos GNU/Linux-Unix y programación shell.
Comandos GNU/Linux-Unix y programación shell.
 
Linux comandos 1
Linux comandos 1Linux comandos 1
Linux comandos 1
 
20 comandos linux que todos los administradores deben conocer
20 comandos linux que todos los administradores deben conocer20 comandos linux que todos los administradores deben conocer
20 comandos linux que todos los administradores deben conocer
 
Apache.d4 admin web
Apache.d4 admin webApache.d4 admin web
Apache.d4 admin web
 
Presentación1 rodrigo saurez
Presentación1 rodrigo saurezPresentación1 rodrigo saurez
Presentación1 rodrigo saurez
 
Las opiniones de estrellas del futbol sobre Riquelme
Las opiniones de estrellas del futbol sobre RiquelmeLas opiniones de estrellas del futbol sobre Riquelme
Las opiniones de estrellas del futbol sobre Riquelme
 
Abraham 4b roger federer
Abraham 4b roger federerAbraham 4b roger federer
Abraham 4b roger federer
 
cuanto saves de roger
cuanto saves de rogercuanto saves de roger
cuanto saves de roger
 
Ranking Mundial De Tenis
Ranking Mundial De TenisRanking Mundial De Tenis
Ranking Mundial De Tenis
 
Trabajo n°10
Trabajo n°10Trabajo n°10
Trabajo n°10
 
Flashtennis Semanario 15 diciembre 2014
Flashtennis Semanario 15 diciembre 2014Flashtennis Semanario 15 diciembre 2014
Flashtennis Semanario 15 diciembre 2014
 
Roger Federer
Roger FedererRoger Federer
Roger Federer
 
Placa madre
Placa madrePlaca madre
Placa madre
 
3 Gestion de Usuarios
3 Gestion de Usuarios3 Gestion de Usuarios
3 Gestion de Usuarios
 
Pone A Riquelme
Pone A RiquelmePone A Riquelme
Pone A Riquelme
 
Decodificador duo lite tocomsat
Decodificador duo lite tocomsatDecodificador duo lite tocomsat
Decodificador duo lite tocomsat
 

Similar a Servidor Linux para conexiones seguras

Similar a Servidor Linux para conexiones seguras (20)

Sistemas Operativos, Linux y Windows, inicios y creadores
Sistemas Operativos, Linux y Windows, inicios y creadoresSistemas Operativos, Linux y Windows, inicios y creadores
Sistemas Operativos, Linux y Windows, inicios y creadores
 
Linux
LinuxLinux
Linux
 
Maramaro Rodriguez Ramirez Zabala
Maramaro Rodriguez Ramirez ZabalaMaramaro Rodriguez Ramirez Zabala
Maramaro Rodriguez Ramirez Zabala
 
Exposicion de linux
Exposicion de linuxExposicion de linux
Exposicion de linux
 
Linux
LinuxLinux
Linux
 
Liceo Miguel Araya
Liceo Miguel ArayaLiceo Miguel Araya
Liceo Miguel Araya
 
Liceo Miguel Araya
Liceo Miguel ArayaLiceo Miguel Araya
Liceo Miguel Araya
 
Linux
Linux Linux
Linux
 
Slaideshare
SlaideshareSlaideshare
Slaideshare
 
Descripción
DescripciónDescripción
Descripción
 
Sistema operativo linux
Sistema operativo linuxSistema operativo linux
Sistema operativo linux
 
evolucion del sistema operativo linux
evolucion del sistema operativo linuxevolucion del sistema operativo linux
evolucion del sistema operativo linux
 
Computacion
ComputacionComputacion
Computacion
 
Computacion
ComputacionComputacion
Computacion
 
Computacion
ComputacionComputacion
Computacion
 
Computacion
ComputacionComputacion
Computacion
 
Computacion
ComputacionComputacion
Computacion
 
Computacion
ComputacionComputacion
Computacion
 
Computacion
ComputacionComputacion
Computacion
 
Computacion
ComputacionComputacion
Computacion
 

Más de xavazquez

Users técnico pc - jpr504 - 24
Users   técnico pc - jpr504 - 24Users   técnico pc - jpr504 - 24
Users técnico pc - jpr504 - 24xavazquez
 
Users técnico pc - jpr504 - 23
Users   técnico pc - jpr504 - 23Users   técnico pc - jpr504 - 23
Users técnico pc - jpr504 - 23xavazquez
 
Users técnico pc - jpr504 - 22
Users   técnico pc - jpr504 - 22Users   técnico pc - jpr504 - 22
Users técnico pc - jpr504 - 22xavazquez
 
Users técnico pc - jpr504 - 21
Users   técnico pc - jpr504 - 21Users   técnico pc - jpr504 - 21
Users técnico pc - jpr504 - 21xavazquez
 
Users técnico pc - jpr504 - 20
Users   técnico pc - jpr504 - 20Users   técnico pc - jpr504 - 20
Users técnico pc - jpr504 - 20xavazquez
 
Users técnico pc - jpr504 - 19
Users   técnico pc - jpr504 - 19Users   técnico pc - jpr504 - 19
Users técnico pc - jpr504 - 19xavazquez
 
Users técnico pc - jpr504 - 18
Users   técnico pc - jpr504 - 18Users   técnico pc - jpr504 - 18
Users técnico pc - jpr504 - 18xavazquez
 
Users técnico pc - jpr504 - 17
Users   técnico pc - jpr504 - 17Users   técnico pc - jpr504 - 17
Users técnico pc - jpr504 - 17xavazquez
 
Users técnico pc - jpr504 - 16
Users   técnico pc - jpr504 - 16Users   técnico pc - jpr504 - 16
Users técnico pc - jpr504 - 16xavazquez
 
Users técnico pc - jpr504 - 15
Users   técnico pc - jpr504 - 15Users   técnico pc - jpr504 - 15
Users técnico pc - jpr504 - 15xavazquez
 
Users técnico pc - jpr504 - 14
Users   técnico pc - jpr504 - 14Users   técnico pc - jpr504 - 14
Users técnico pc - jpr504 - 14xavazquez
 
Users técnico pc - jpr504 - 13
Users   técnico pc - jpr504 - 13Users   técnico pc - jpr504 - 13
Users técnico pc - jpr504 - 13xavazquez
 
Users técnico pc - jpr504 - 12
Users   técnico pc - jpr504 - 12Users   técnico pc - jpr504 - 12
Users técnico pc - jpr504 - 12xavazquez
 
Users técnico pc - jpr504 - 11
Users   técnico pc - jpr504 - 11Users   técnico pc - jpr504 - 11
Users técnico pc - jpr504 - 11xavazquez
 
Users técnico pc - jpr504 - 10
Users   técnico pc - jpr504 - 10Users   técnico pc - jpr504 - 10
Users técnico pc - jpr504 - 10xavazquez
 
Users técnico pc - jpr504 - 09
Users   técnico pc - jpr504 - 09Users   técnico pc - jpr504 - 09
Users técnico pc - jpr504 - 09xavazquez
 
Users técnico pc - jpr504 - 08
Users   técnico pc - jpr504 - 08Users   técnico pc - jpr504 - 08
Users técnico pc - jpr504 - 08xavazquez
 
Users técnico pc - jpr504 - 07
Users   técnico pc - jpr504 - 07Users   técnico pc - jpr504 - 07
Users técnico pc - jpr504 - 07xavazquez
 
Users técnico pc - jpr504 - 06
Users   técnico pc - jpr504 - 06Users   técnico pc - jpr504 - 06
Users técnico pc - jpr504 - 06xavazquez
 
Users técnico pc - jpr504 - 05
Users   técnico pc - jpr504 - 05Users   técnico pc - jpr504 - 05
Users técnico pc - jpr504 - 05xavazquez
 

Más de xavazquez (20)

Users técnico pc - jpr504 - 24
Users   técnico pc - jpr504 - 24Users   técnico pc - jpr504 - 24
Users técnico pc - jpr504 - 24
 
Users técnico pc - jpr504 - 23
Users   técnico pc - jpr504 - 23Users   técnico pc - jpr504 - 23
Users técnico pc - jpr504 - 23
 
Users técnico pc - jpr504 - 22
Users   técnico pc - jpr504 - 22Users   técnico pc - jpr504 - 22
Users técnico pc - jpr504 - 22
 
Users técnico pc - jpr504 - 21
Users   técnico pc - jpr504 - 21Users   técnico pc - jpr504 - 21
Users técnico pc - jpr504 - 21
 
Users técnico pc - jpr504 - 20
Users   técnico pc - jpr504 - 20Users   técnico pc - jpr504 - 20
Users técnico pc - jpr504 - 20
 
Users técnico pc - jpr504 - 19
Users   técnico pc - jpr504 - 19Users   técnico pc - jpr504 - 19
Users técnico pc - jpr504 - 19
 
Users técnico pc - jpr504 - 18
Users   técnico pc - jpr504 - 18Users   técnico pc - jpr504 - 18
Users técnico pc - jpr504 - 18
 
Users técnico pc - jpr504 - 17
Users   técnico pc - jpr504 - 17Users   técnico pc - jpr504 - 17
Users técnico pc - jpr504 - 17
 
Users técnico pc - jpr504 - 16
Users   técnico pc - jpr504 - 16Users   técnico pc - jpr504 - 16
Users técnico pc - jpr504 - 16
 
Users técnico pc - jpr504 - 15
Users   técnico pc - jpr504 - 15Users   técnico pc - jpr504 - 15
Users técnico pc - jpr504 - 15
 
Users técnico pc - jpr504 - 14
Users   técnico pc - jpr504 - 14Users   técnico pc - jpr504 - 14
Users técnico pc - jpr504 - 14
 
Users técnico pc - jpr504 - 13
Users   técnico pc - jpr504 - 13Users   técnico pc - jpr504 - 13
Users técnico pc - jpr504 - 13
 
Users técnico pc - jpr504 - 12
Users   técnico pc - jpr504 - 12Users   técnico pc - jpr504 - 12
Users técnico pc - jpr504 - 12
 
Users técnico pc - jpr504 - 11
Users   técnico pc - jpr504 - 11Users   técnico pc - jpr504 - 11
Users técnico pc - jpr504 - 11
 
Users técnico pc - jpr504 - 10
Users   técnico pc - jpr504 - 10Users   técnico pc - jpr504 - 10
Users técnico pc - jpr504 - 10
 
Users técnico pc - jpr504 - 09
Users   técnico pc - jpr504 - 09Users   técnico pc - jpr504 - 09
Users técnico pc - jpr504 - 09
 
Users técnico pc - jpr504 - 08
Users   técnico pc - jpr504 - 08Users   técnico pc - jpr504 - 08
Users técnico pc - jpr504 - 08
 
Users técnico pc - jpr504 - 07
Users   técnico pc - jpr504 - 07Users   técnico pc - jpr504 - 07
Users técnico pc - jpr504 - 07
 
Users técnico pc - jpr504 - 06
Users   técnico pc - jpr504 - 06Users   técnico pc - jpr504 - 06
Users técnico pc - jpr504 - 06
 
Users técnico pc - jpr504 - 05
Users   técnico pc - jpr504 - 05Users   técnico pc - jpr504 - 05
Users técnico pc - jpr504 - 05
 

Servidor Linux para conexiones seguras

  • 1. Memoria del Proyecto |{ Servidor Linux para conexiones seguras de una LAN a Internet |{ Jose Antonio Escartn Vigo Junio de 2005
  • 2.
  • 3. Introduccion En las siguientes lneas trato de describir los motivos que me llevaron a escoger un proyecto de este estilo y de donde surgio la idea de realizar un documento informativo para facilitar la tarea de muchos administradores de sistemas noveles, como yo cuando comence este proyecto. En esta peque~na introduccion tambien se especi
  • 4. can los objetivos que se pretenden conseguir y para entrar en materia se comenta, muy por encima, la historia de Linux. Motivacion Me decid a realizar este proyecto por la inquetud personal que tena respecto al sistema operativo Linux. Conozco a mucha gente que lo maneja y que me hablaba muy bien, por pereza y falta de tiempo, nunca me haba puesto a experimentar a fondo con el. Si bien es cierto que lo tena instalado (una version Mandrake 9.0) lo utilizaba solamente para realizar las practicas de la universidad y poca cosa mas. Siempre me han atrado los sistemas operativos, bastante mas que la rama de programacion. Una prueba de ello es que cuando llege a la FIB (vine del Ciclo formativo de grado superior: Desarrollo de aplicaciones informaticas; es decir, basicamente programacion) me cambie a la rama de sistemas. Actualmente me encuentro cursando el PFC de la Ingeniera tecnica en Informatica de Sistemas y tengo la intencion de solicitar plaza de admision en la Ingeniera superior de informatica, carrera a la que no pude acceder en primera instancia por restricciones legales, al acceder a la universidad por la va de los ciclos formativos de grado superior. A lo largo de la carrera, he cursado las siguientes asignaturas relacionadas con los sistemas operati-vos: ISO (Introduccion a los sistemas operativos), SO (Sistemas Operativos), ASO (Administracion de sistemas operativos), CASO (Conceptos avanzados de sistemas operativos), SSI (Seguridad en sistemas informaticos). Ademas hace unos a~nos, antes de comenzar la carrera, realizaba trabajos de administrador de sistemas en entornos Windows, para dos institutos (IES Piramide y IES Sierra de Guara) de mi ciudad natal, Huesca. El PFC: Servidor Linux para conexiones seguras de una LAN a Internet me ha permitido desarrollar amplios conocimientos en el campo de los sistemas operativos, algo que realmente me interesa y supongo que me permitira encarrilar mi carrera hacia el trabajo que pretendo desarrollar como Administrador de sistemas. Si en vez de elegir uno de los proyectos propuestos desde la universidad, hubiera pensado proponer uno, sin duda habra elegido hacer un proyecto igual al que propuso el profesor Llus Perez Vidal del departamente LSI de la UPC. Me siento bastante afortunado de haber realizado un PFC que realmente me interesaba y motivaba.
  • 5. vi Servidor Linux para conexiones seguras de una LAN a Internet Motivacion del proyecto Ante el problema de instalar un sistema operativo que controle los servicios de red y ademas sea estable se nos plantean principalmente dos alternativas, Linux o Windows. Que ventajas tiene Linux sobre Windows? Es mas seguro. Ya que la gran mayora de los ataques de hackers son dirigidos a servidores Windows al igual que los virus los cuales se enfocan principalmente a servidores con este sistema operativo. La plataforma Linux es mas robusta lo cual hace mas difcil que algun intruso pueda violar la seguridad del sistema. Es mas rapido. Al tener una plataforma mas estable, se favorece la utilizacion de aplicaciones de todo tipo de aplicaciones. La e
  • 6. ciencia de su codigo fuente hace que la velocidad de las aplicaciones Linux sean superiores a las que corren sobre Windows. Es mas economico. Ya que requiere menor mantenimiento. Los servidores Windows son mas costosos debido a que es necesaria una frecuente atencion y monitoreo contra ataques de virus, hackers y errores de codigo. El software Linux as como tambien un sin numero de aplicaciones, son de codigo abierto y estan protegidas por la licencia GPL1, motivo por el que son distribuidas gratuitamente. No requieren supervision constante ni pagos de mantenimiento para obtener Service Packs, que no son mas que parches de seguridad para aplicaciones mal diseadas. Que ventajas tiene Windows sobre Linux? Es mas facil. Al ser de mayor facilidad de uso Windows en este momento continua siendo el sistema operativo mas comercial lo cual se re eja en la disponibilidad de aplicaciones, facilidad de mantenimiento as como soporte en el desarrollo de nuevas aplicaciones. Las aplicaciones se desarrollan en menor tiempo. Fruto de la inversion realizada por Microsoft y aunado a una comunidad de programadores cada vez mas grande se ha logrado facilitar el desarrollo de aplicaciones y sistemas que corran sobre servidores Windows lo cual se ve re ejado en tiempos de desarrollo menores. De la misma forma, la curva de aprendizaje en el sistema Windows es mucho menor. La alternativa mas sencilla y a la vez mas ine
  • 7. ciente es elegir un sistema operativo Windows. Lo que se busca es seguridad, integridad de datos y e
  • 8. ciencia del sistema, por tanto nos decantaremos por una distribucion GNU/Linux. El proyecto surge ante la necesidad de escoger entre las distribuciones Linux actuales, la mas adecuada para instalar un servidor e implementar las aplicaciones necesarias para dar servicios a clientes de sistemas operativos Linux y Windows. Esto es algo no trivial y el proyecto trata de ser una ayuda, apoyo y consulta para facilitar la tarea de una persona que trate de implementar un servidor. 1GPL: Licencia publica GNU. Segun se cita en [Sha01] expeci
  • 9. ca explcitamente que el software desarrollado es libre y que nadie puede coartar estas libertados. Se puede revender, incluso obteniendo bene
  • 10. cio; sin embargo, en esa reventa el vendedor debe de proveer el codigo fuente completo, incluyendo cualquier modi
  • 11. cacion realizada. El paquete continua bajo GPL y puede ser distribuido de modo libre y revendido de nuevo obteniendo tambien bene
  • 12. cio. Es de una importancia primordial la clausula de responsabilidad: los programadores no son responsables de cualquier da~no causado por su software. Jose Antonio Escartn Vigo, Junio 2005.
  • 13. vii Objetivos Este documento esta elaborado para describir la implementacion de un servidor GNU/Linux, as como especi
  • 14. car y resolver los principales problemas que un administrador se encuentra al poner en funcio-namiento un servidor. Se aprendera a con
  • 15. gurar un servidor GNU/Linux describiendo los principales servicios utilizados para compartir archivos, paginas web, correo y otros que veremos mas adelante. La herramienta de con
  • 16. guracion Webmin, que se detalla en uno de los ultimos captulos es indepen-diente de la distribucion GNU/Linux que utilicemos y nos permitira administrar de forma transparente diferentes distribuciones, con la ventaja que eso supone si alguna vez cambiamos de distribucion. Cuadro 1: Objetivos del proyecto Estudiar el entorno de composicion de textos LATEX Analizar e instalar las distribuciones Linux mas importantes Estudiar la compilacion de kernels Analizar y con
  • 17. gurar los servicios para usuarios Linux y Windows Establecer sistemas de proteccion Realizar pruebas de seguridad del servidor Documentar el proyecto Marco historico Como se especi
  • 18. ca en [BB00], Linux hizo su aparicion en 1991 cuando el
  • 19. nlandes Linus Torvalds deci-di o publicar en Internet su proyecto de carrera, animando a la comunidad internacional de programadores a mejorarlo. Nacio como una mejora de Minix, una version de Unix para ordenadores PC basados en el procesador 8086 de Intel, Linux por su parte utilizaba el procesador 386SX de Intel. Posiblemente una de las explicaciones del exito de Linux es GNU1 que junto con la FSF2 (Free Software Fundation), tratan de promover el desarrollo de programas cuyo codigo sea publico y compartido. Una de las principales aportaciones GNU fue Linux, un sistema operativo de libre distribucion. A partir de 1994 emperzaron a aparecer las primeras distribuciones de CD-ROM, junto con el codigo fuente del sistema operativo, se dispona de diversas utilidades y aplicaciones sin tener que descargarlas. Ese a~no aparecieron los primeros grupos locales de usuarios de Linux y la primera revista on-line especia-lizada. Al a~no siguiente se empezo a trabajar en las primeras versiones de Linux para plataforma no Intel y los primeros desarrollos de instaladores parcialmente automaticos. A partir de 1996 Linux comienza a difundirse de forma mas general en Espa~na, a~no en el que se inicia el proyecto de documentacion de Linux en catellano (LUCAS) y se comienzan a organizar los primeros grupos de usuarios. El futuro es muy prometedor, cada vez es mayor el numero de fabricantes de software y hardware que han mostrado un creciente interes. 1GNU: GNU no es Unix. De
  • 20. nicion recursiva que representa el humor informatico en su maxima expresion 2FSF: Fundacion para el software libre. Es el principal contribuidor del Proyecto GNU, depende de donaciones privadas y se dedica a preservar, proteger y promover los derechos de los usuarios y su libertad para usar, estudiar, copiar, modi
  • 21. car y redistribuir software. Apoya la libertad de expresion, prensa y asociacion en internet, el derecho a usar software criptogra
  • 22. co en comunicaciones privadas y el derecho a escribir software sin los impedimentos del monopolio. Jose Antonio Escartn Vigo, Junio 2005.
  • 23. viii Servidor Linux para conexiones seguras de una LAN a Internet Requisitos mnimos Linux Probablemente la con
  • 24. guracion mnima sobre la que Linux sea capaz de funcionar sea un 386SX con 2 Mb de memoria RAM y una disquetera de 1.44, aunque con estas caractersticas simplemente podremos arrancar el sistema y poco mas. Una con
  • 25. guracion mas realista debera incluir 4Mb de Ram si no vamos a utilizar el entorno gra
  • 26. co, 8Mb en caso contrario y un mnimo de 40MB de espacio en disco, aunque en las distribuciones actuales el espacio debera ser mayor de unos 300Mb. Cantidades ridculas si las comparamos con los dispositivos disponibles actualmente, pero que permiten reutilizar materiales mas antiguos de los que se pueda disponer. Frente a estos requerimientos, se encuentran los sistemas Windows, con unos requerimientos1 desorbitados. Linux soporta cualquier CPU compatible con los procesadores x86 de Intel, pudiendose encontrar versiones que funcionan con procesadores 680x0 de Motorola utilizados en ordenadores Amiga y Atari. Tambien son compatibles con Linux muchos ordenadores basados en Alpha, ciertas maquinas Sparc, las maquinas basadas en PowerPC como por ejemplo los ordenadores Macintosh de Apple, as como ARM, MIPS y algunos tipos de agendas electronicas, telefonos y consolas de juegos. Notas Previas Se van a tomar varias la siguiente notacion para el documento: Cuando aparezcan frases que el usuario pueda introducir por teclado se hara notar por el tipo de letra mecanogra
  • 27. ca, Verbatim Al hacer referencia a un comando que deba de ser introducido por una cuenta con privilegios de root, ira precedido por el caracter # Al hacer referencia a un comando que puede a ser ejecutado por un usuario cualquiera del sistema, si tiene privilegios para ello, ira precedido por el caracter $ Cuando se muestran codigos el caracter # al inicio de la frase especi
  • 28. ca que esa frase concreta es un comentario dentro del codigo. 1WindowsXP: Procesador 233Mhz, 64Mb Ram y 1.5 Gb de disco; Windows2003 Server: Procesador 550Mhz, 256Mb Ram y 1.5 Gb de disco Jose Antonio Escartn Vigo, Junio 2005.
  • 29. Indice general Introduccion IV I Tareas previas 1 1. Plani
  • 30. cacion 3 1.1. Fases del proyecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.2. Esquema temporal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Seleccion de Herramientas 9 2.1. Seleccion de Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.1.1. Servidor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.1.2. Clientes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.2. Seleccion de la distribucion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.2.1. Distribuciones Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.2.2. Pruebas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.2.3. Distribucion elegida . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.3. Seleccion del Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.3.1. Planner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.3.2. LATEX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2.3.3. Kile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 2.3.4. Prosper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 2.3.5. Programas gra
  • 31. cos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 II Instalacion base 19 3. Instalacion de la distribucion 21 3.1. Proyecto Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.1.1. Unstable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.1.2. Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.1.3. Stable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.1.4. Recomendaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.2. Debian Sarge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.3. Debian Woody . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 3.4. Actualizacion de Woody a Sarge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 4. Primeros pasos 25 4.1. Particionar el disco . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 4.2. Gestores de arranque . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 4.3. Usuarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 4.3.1. A~nadir nuevos usuarios al sistemas . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 4.3.2. A~nadir grupos al sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
  • 32. x Servidor Linux para conexiones seguras de una LAN a Internet 4.3.3. Bases de datos de usuarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 4.4. Permisos de archivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 4.4.1. Tipos de archivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 4.4.2. Modi
  • 33. car los permisos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 4.4.3. Permisos especiales: SUID, SGID y bit de persistencia . . . . . . . . . . . . . . . . 32 4.4.4. Cambiar un archivo de propietario o grupo . . . . . . . . . . . . . . . . . . . . . . 33 4.5. Instalacion de aplicaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 4.5.1. Compilacion de paquetes desde archivos fuente . . . . . . . . . . . . . . . . . . . . 33 4.5.2. Dpkg: Instalador de paquetes precompilados . . . . . . . . . . . . . . . . . . . . . . 36 4.5.3. Apt: Gestor de paquetes Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 4.5.4. Alien: Convertir paquetes .rpm a .deb (formato Debian) . . . . . . . . . . . . . . . 38 4.5.5. Encontrar paquetes y sus dependencias . . . . . . . . . . . . . . . . . . . . . . . . 38 4.5.6. Problemas al instalar paquetes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 4.6. Shells . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 4.6.1. Tipos de shell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 4.6.2. Caractersticas de la shell Bash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 4.6.3. Ejecucion de procesos en la shell Bash . . . . . . . . . . . . . . . . . . . . . . . . . 41 4.6.4. Variables de entorno . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 4.6.5. Con
  • 34. guracion del entorno . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 4.6.6. Redireccionamientos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 4.7. Consolas virtuales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 5. Kernel 45 5.1. Por que compilar? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 5.2. Acerca de los modulos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 5.3. Kernel-image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 5.4. Kernel-source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 5.4.1. Instalar un kernel-source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 5.4.2. Crear un paquete .deb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 5.5. Compilar Kernel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 5.5.1. Paquetes necesarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 5.5.2. Comprobar el hardware disponible . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 5.5.3. Metodo de compilacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 5.5.4. Parchear el kernel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 5.5.5. Consejos para la con
  • 35. guracion del kernel . . . . . . . . . . . . . . . . . . . . . . . . 49 6. Interfaz gra
  • 36. co 51 6.1. X-Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 6.1.1. Con
  • 37. guracion X-Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 6.1.2. Arrancar X-Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 6.2. Gestores de ventanas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 6.3. Entornos de escritorio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 6.3.1. Kde . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 6.3.2. Gnome . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 6.3.3. Otros entornos de escritorio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 7. Infraestructura de redes 59 7.1. Arquitectura de redes (Modelo OSI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 7.2. Direcciones IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 7.2.1. Datagramas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 7.2.2. Encaminamiento IP (router y gateway) . . . . . . . . . . . . . . . . . . . . . . . . 63 7.2.3. Mascaras de red y notacion de barra inclinada . . . . . . . . . . . . . . . . . . . . 64 7.2.4. Subneting (CIDR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 7.2.5. Enmascaramiento IP (NAT, Network Adress Translation) . . . . . . . . . . . . . . 66 7.3. Resolucion de direcciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 Jose Antonio Escartn Vigo, Junio 2005.
  • 38. Indice general xi 7.3.1. ARP (Adress Resolution Protocol) . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 7.3.2. RARP (Reverse Address Resolution Protocol) . . . . . . . . . . . . . . . . . . . . . 68 7.4. Protocolos de red, IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 7.4.1. ICMP (Internet Control Message Protocol) . . . . . . . . . . . . . . . . . . . . . . 69 7.4.2. OSPF (Open Shortest Path First) . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 7.4.3. Protocolo BGP (Border Gateway Protocol) . . . . . . . . . . . . . . . . . . . . . . 70 7.4.4. IGMP (Internet Group Management Protocol) . . . . . . . . . . . . . . . . . . . . 70 7.5. Protocolos de transporte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 7.5.1. UDP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 7.5.2. TCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 7.6. Protocolos de aplicacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 7.6.1. NFS (Network File System) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 7.6.2. SNMP (Simple network management protocol) . . . . . . . . . . . . . . . . . . . . 74 7.6.3. DNS (Domain Name Server) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 7.6.4. SMTP (Simple Mail Transfer Protocol) . . . . . . . . . . . . . . . . . . . . . . . . 74 7.6.5. TELNET (Remote login) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 7.6.6. FTP (File Transfer Protocol) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 7.6.7. HTTP (Hyper Text Transport Protocol) . . . . . . . . . . . . . . . . . . . . . . . . 75 7.7. Protocolo TCP/IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 8. Con
  • 39. guracion de dispositivos de red 79 8.1. Etherconf: Con
  • 41. co de red . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 8.2. Ifcon
  • 43. gurador de red . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 8.3. Route: Tablas de redireccionamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 8.4. Netstat: Estado de las conexiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 8.5. Con
  • 44. guracion de interfaces usando DHCP . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 8.6. Archivo /etc/network/interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 8.6.1. Direcciones IP estaticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 8.6.2. Direcciones IP dinamicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 8.6.3. Interfaz Wi
  • 45. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 8.6.4. Interfaz PPPoE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 8.6.5. Puertas de enlace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 8.6.6. Interfaces virtuales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 8.7. Recon
  • 46. guracion de la red . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 8.7.1. Con
  • 47. guracion de red durante el arranque . . . . . . . . . . . . . . . . . . . . . . . 87 8.7.2. Hotplug . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 8.7.3. Ifplugd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 8.8. Resolvconf: Resolucion de nombres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 8.9. Archivos de con
  • 48. guracion de Hosts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 8.10. Iwcon
  • 50. guracion wireless . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 8.11. Resolucion de problemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 III Instalacion de Servicios 91 9. Servicios de red 93 9.1. Servidor DHCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 9.1.1. Asignacion de direcciones IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 9.1.2. Parametros con
  • 51. gurables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 9.1.3. Implementaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 9.1.4. Anatoma del protocolo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 9.1.5. Con
  • 52. guracion de un servidor DHCP . . . . . . . . . . . . . . . . . . . . . . . . . . 95 9.1.6. Con
  • 53. guracion de un cliente DHCP . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 9.1.7. Con
  • 55. ca de DHCP, interfaz Webmin . . . . . . . . . . . . . . . . . . . 99 9.2. BIND: Servidor de nombres DNS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 Jose Antonio Escartn Vigo, Junio 2005.
  • 56. xii Servidor Linux para conexiones seguras de una LAN a Internet 9.2.1. Para que necesitamos un DNS? . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 9.2.2. Servicios que activa un DNS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 9.2.3. Con
  • 57. guracion del servidor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 9.2.4. Traduccion de nombres a direcciones IP . . . . . . . . . . . . . . . . . . . . . . . . 103 9.2.5. Con
  • 59. ca de DNS BIND, interfaz Webmin . . . . . . . . . . . . . . . . 103 9.2.6. Seguridad en DNS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 9.3. NIS: Servicio de informacion de red . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 9.3.1. Funcionamiento basico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 9.3.2. Servidores NIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 9.3.3. Con
  • 60. guracion del servidor NIS maestro . . . . . . . . . . . . . . . . . . . . . . . . 110 9.3.4. Cliente NIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 9.3.5. Herramientas basicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 9.3.6. Problemas de seguridad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116 9.4. NFS: Sistema de archivos Linux en red . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 9.4.1. Cliente NFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 9.4.2. Montaje automatico de particiones NFS . . . . . . . . . . . . . . . . . . . . . . . . 118 9.4.3. Propiedades de las particiones montadas . . . . . . . . . . . . . . . . . . . . . . . . 118 9.4.4. Servidor de NFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 9.4.5. Con
  • 62. ca de NFS, interfaz Webmin . . . . . . . . . . . . . . . . . . . . 120 9.5. Samba: Servicio de conexiones para sistemas Microsoft . . . . . . . . . . . . . . . . . . . . 121 9.5.1. Comparticion de recursos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 9.5.2. Que es Samba? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 9.5.3. Con
  • 64. ca de Samba, interfaz SWAT . . . . . . . . . . . . . . . . . . . . 123 9.5.4. Funcionamiento de CIFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 9.5.5. Parametros globales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 9.5.6. Impresoras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 9.5.7. Comparticion de directorios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 9.5.8. Limitar acceso de los usuarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 9.5.9. Integracion de Samba en un dominio NT . . . . . . . . . . . . . . . . . . . . . . . 127 9.5.10. Con
  • 65. guracion de Samba como controlador de dominio . . . . . . . . . . . . . . . . 128 9.5.11. Cliente Samba . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 9.5.12. Con
  • 67. ca de Samba, interfaz Webmin . . . . . . . . . . . . . . . . . . . 129 9.6. ProFTPD: Servidor FTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 9.6.1. Servidor ProFTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 9.6.2. Con
  • 69. ca de ProFTP, interfaz Webmin . . . . . . . . . . . . . . . . . . 132 9.6.3. Clientes FTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 10.Servicios de usuario 133 10.1. Cuotas de usuario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 10.1.1. Arrancar el sistema de cuotas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 10.1.2. Asignar cuotas a los usuarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 10.1.3. Con
  • 71. ca de Quote, interfaz Webmin . . . . . . . . . . . . . . . . . . . 134 10.2. Cups: Servidor de impresion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 10.2.1. Servidor Cups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 10.2.2. Servidor Cups para Samba . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 10.2.3. Clientes Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 10.2.4. Clientes Microsoft . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 10.2.5. Solucionar problemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 10.3. Servidor Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 10.3.1. Servidor Apache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 10.3.2. Apache-SSL: Conexiones seguras . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150 10.3.3. Creacion de un servidor web seguro . . . . . . . . . . . . . . . . . . . . . . . . . . 152 10.3.4. Apache 2.x . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 10.3.5. Ataques al servidor Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 Jose Antonio Escartn Vigo, Junio 2005.
  • 72. Indice general xiii 10.4. Servidor de correo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 10.4.1. Exim: Correo corporativo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 10.4.2. Fetchmail: Correo externo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 10.4.3. Horde: Webmail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161 10.4.4. Protocolo IMAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162 10.4.5. Filtrado de correo, eliminar virus y Spam con Procmail . . . . . . . . . . . . . . . 163 10.4.6. ClamAV: Antivirus para correo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 10.4.7. SpamAssassin: Filtro basado en reglas . . . . . . . . . . . . . . . . . . . . . . . . . 167 10.4.8. Bogo
  • 73. lter: Filtro bayesiano . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 10.5. Jabber: Mensajera instantanea para corporaciones . . . . . . . . . . . . . . . . . . . . . . 172 10.5.1. Servidor Jabber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173 10.5.2. Con
  • 75. ca de Jabber, interfaz Webmin . . . . . . . . . . . . . . . . . . . 174 10.5.3. Clientes Jabber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174 11.Comunicaciones seguras 177 11.1. Shell seguro: OpenSSH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 11.1.1. Cliente OpenSSH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 11.1.2. Servidor OpenSSH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 11.2. Criptografa y cifrado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 11.2.1. Tipos de cifrado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 11.2.2. Estandares generales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182 11.2.3. Aplicaciones de la criptografa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183 11.2.4. Protocolos de cifrado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184 11.2.5. OpenPGP: Aplicacion de cifrado . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 12.Herramientas de seguridad 191 12.1. Herramientas basicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191 12.1.1. Ping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191 12.1.2. Traceroute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192 12.1.3. Whois . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 12.1.4. Dig . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194 12.1.5. Finger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 12.2. Firewall o cortafuegos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196 12.2.1. Polticas de seguridad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196 12.2.2. Modos de con
  • 76. guracion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196 12.2.3. IPTables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197 12.3. Squid: Proxy transparente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204 12.4. Bastille Linux: Herramienta de seguridad . . . . . . . . . . . . . . . . . . . . . . . . . . . 206 12.4.1. Ejecucion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206 12.4.2. Modos de funcionamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 12.5. Copias de seguridad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 12.5.1. Dispositivos de cinta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 12.5.2. Mt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208 12.5.3. Dump y Restore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208 12.5.4. Con
  • 78. ca de backups, interfaz Webmin . . . . . . . . . . . . . . . . . . 210 12.5.5. K3B: Grabacion de CDs y DVDs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211 13.Sistemas de deteccion de intrusiones 213 13.1. Tipos de IDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213 13.1.1. NIDS (Network Intrusion Detection System) . . . . . . . . . . . . . . . . . . . . . 213 13.1.2. IDS (Deteccion de actividades anomalas) . . . . . . . . . . . . . . . . . . . . . . . 214 13.1.3. IPS (Intrusion Prevention System) . . . . . . . . . . . . . . . . . . . . . . . . . . . 214 13.2. Ubicacion del NIDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214 13.3. El problema de los falsos positivos de NIDS . . . . . . . . . . . . . . . . . . . . . . . . . . 215 13.4. Obtener lo maximo del IDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217 Jose Antonio Escartn Vigo, Junio 2005.
  • 79. xiv Servidor Linux para conexiones seguras de una LAN a Internet 13.4.1. Con
  • 80. guracion apropiada del sistema . . . . . . . . . . . . . . . . . . . . . . . . . . 217 13.4.2. Ajuste del IDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217 13.4.3. Herramientas de analisis IDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217 13.5. IDS Snort (NIDS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218 13.5.1. Caractersticas basicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218 13.5.2. Instalacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218 13.5.3. Modos de ejecucion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219 13.5.4. Modos de alerta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221 13.5.5. Optimizar la con
  • 81. guracion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222 13.5.6. Clases de reglas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223 13.5.7. Ejecutar como servicio del sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . 226 13.5.8. Con
  • 83. ca de Snort, interfaz Webmin . . . . . . . . . . . . . . . . . . . 226 13.5.9. Personalizar reglas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228 13.6. Deteccion de intrusiones en el host . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229 13.7. Integridad de archivos: IDS Tripwire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231 13.8. ACIDlab: Analizar alertas IDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235 13.9. Logcheck: Analizar logs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239 13.10.PortSentry: Detectar escaneos de puertos . . . . . . . . . . . . . . . . . . . . . . . . . . . 241 13.11.Detectores de sniers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245 13.11.1.Neped . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247 13.11.2.Sentinel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247 13.12.Chkrootkit: Detector de rootkits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248 13.13.HoneyPots: Entretener a los atacantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250 13.13.1.Como funcionan? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251 13.13.2.Ventajas y desventajas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251 13.13.3.Utilidades de honeypots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252 13.13.4.Tipos de honeypots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253 13.13.5.Otras caractersticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254 13.13.6.Honeynets: alta interaccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255 13.13.7.Honeyd: baja interaccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255 14.Redes inalambricas 257 14.1. Estandar 802.11 (Wi
  • 84. ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257 14.2. Peligros de las LAN inalambricas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259 14.3. El fenomeno del Wardriving . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260 14.4. Seguridad en redes inalambricas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262 14.4.1. Clave WEP (Wired Equivalente Privacy) . . . . . . . . . . . . . . . . . . . . . . . 262 14.4.2. Clave WPA (Wi
  • 85. Protected Access) . . . . . . . . . . . . . . . . . . . . . . . . . . 262 14.4.3. Clave WPA2 (Estandar 802.11i) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266 14.4.4. Medidas preventivas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266 14.5. Servidor Radius: FreeRadius . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267 14.5.1. Con
  • 86. gurar FreeRadius con EAP-TLS . . . . . . . . . . . . . . . . . . . . . . . . . 267 14.5.2. Generar los certi
  • 87. cados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269 14.5.3. Comprobar el funcionamiento de FreeRadius . . . . . . . . . . . . . . . . . . . . . 270 14.5.4. Con
  • 88. gurar AP (Router 3Com) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270 14.5.5. Clientes Linux: WPA-Supplicant . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271 14.5.6. Clientes Windows: WindowsXP + SP2 . . . . . . . . . . . . . . . . . . . . . . . . . 272 14.6. Herramientas de seguridad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273 14.6.1. Descubrir redes ilegales e intrusos: Kismet Wireless . . . . . . . . . . . . . . . . . . 273 14.6.2. Desencriptar claves inalambricas WEP: Airsnort . . . . . . . . . . . . . . . . . . . 275 15.Servicio de administracion por Web: WebMin 279 15.1. Usuarios de Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279 15.2. Secciones Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279 15.3. Modulos de Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283 Jose Antonio Escartn Vigo, Junio 2005.
  • 89. Indice general xv 16.Servicios de monitorizacion del sistema 287 16.1. Monitor del sistema: Top . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287 16.2. Rendimiento del sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288 16.2.1. CPU, dispositivos y particiones de E/S: iostat . . . . . . . . . . . . . . . . . . . . . 288 16.2.2. Memoria: free . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289 16.2.3. Memoria virtual: vmstat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289 16.2.4. Disco: df, du . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290 16.2.5. Usuarios y sus procesos: w . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290 16.3. Gestionar procesos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290 16.3.1. Visualizar procesos: ps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291 16.3.2. Enviar signals a procesos: kill . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292 16.3.3. Modi
  • 90. car prioridades: nice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293 16.4. Terminal de root con prioridad maxima . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293 16.5. Programacion de tareas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293 16.5.1. At . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294 16.5.2. Cron . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294 16.5.3. Tareas periodicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296 16.5.4. Anacron . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296 IV Valoracion
  • 91. nal 297 17.Pruebas del sistema 299 17.1. Nessus: Escaner de vulnerabilidades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299 17.1.1. Con
  • 92. gurar el programa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299 17.1.2. Ejecucion de Nessus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300 17.1.3. Otros interfaces de con
  • 93. guracion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302 17.2. Nmap: Escaner de red y puertos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303 17.2.1. Caractersticas basicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303 17.2.2. Tipos de escaneado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305 17.2.3. Opciones de descubrimiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305 17.2.4. Opciones de ajuste de frecuencia de Nmap . . . . . . . . . . . . . . . . . . . . . . . 305 17.2.5. Otras opciones de Nmap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306 17.2.6. Salida de Nmap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307 17.2.7. Con
  • 95. ca de Nmap, interfaz Nmapfe . . . . . . . . . . . . . . . . . . . 307 17.3. Pruebas de carga . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308 18.Estudio Economico 309 18.1. Recursos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309 18.2. Costes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310 18.3. Resumen economico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310 18.4. Modi
  • 96. caciones a los costes economicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310 19.Conclusiones 311 V Apendices 315 A. Comandos basicos 317 B. Debian en castellano 319 C. Archivos de con
  • 97. guracion 321 D. Por que Debian no tiene rc.local? 325 Jose Antonio Escartn Vigo, Junio 2005.
  • 98. xvi Servidor Linux para conexiones seguras de una LAN a Internet E. Puertos por defecto 327 F. Manual del editor Vim (Vi mejorado) 329 G. Gua rapida de IPTables 331 Debian Sarge, nueva version estable 333 Licencia CC - Reconocimiento-CompartirIgual 335 Paginas Web 339 Bibliografa 343 Jose Antonio Escartn Vigo, Junio 2005.
  • 101. cacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.1. Planner, distribucion de recursos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2.2. Planner, diagrama temporal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2.3. Editor Kile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 2.4. Prosper, tipos de transparencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 7.1. IP, rango de direcciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 7.2. IP, direcciones reservadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 7.3. IP, cabecera del datagrama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 7.4. UDP, cabecera del datagrama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 7.5. TCP, cabecera del datagrama . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 9.1. DHCP, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 9.2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 9.3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 9.4. DNS BIND, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 9.5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 9.6. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 9.7. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 9.8. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 9.9. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 9.10. NIS, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 9.11. NFS, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 9.12. Samba, interfaz gra
  • 102. ca SWAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 9.13. Samba, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 9.14. ProFTPD, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 10.1. Quota, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 10.2. Cups, interfaz gra
  • 104. guracion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 10.3. Cups, impresora HP815 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 10.4. Apache, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142 10.5. Apache, parametros de con
  • 105. guracion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144 10.6. Apache, modulo HtAccess Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145 10.7.Webalizer, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 10.8. Apache, servidores virtuales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 10.9. Apache, comparticion de carpetas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 10.10.Apache, modulos instalados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150 10.11.Exim, monitor con la interfaz Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 10.12.Fetchmail, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
  • 106. xviii Servidor Linux para conexiones seguras de una LAN a Internet 10.13.Procmail, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 10.14.Procmail, crear acciones de forma gra
  • 107. ca . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 10.15.SpamAssassin, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 10.16.SpamAssassin, opciones de con
  • 108. guracion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 10.17.Jabber, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175 10.18.Kopete, cliente de mensajera instantanea . . . . . . . . . . . . . . . . . . . . . . . . . . . 176 10.19.Gaim, cliente de mensajera instantanea . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176 11.1. SSHD, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180 12.1. Backups, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211 12.2. K3B, grabacion de CDs y DVDs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211 13.1. Snort, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227 13.2. Acidlab, detalle de una alerta de Snort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238 13.3. Logcheck, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242 13.4. PortSentry, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246 14.1. Smbolos urbanos de redes wi
  • 109. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261 14.2. WEP-WPA, comparativa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263 14.3. WPA/EAP, funcionamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263 14.4. WPA, autenticacion servidor Radius . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264 14.5. Servidor Radius, sistema de autenticacion . . . . . . . . . . . . . . . . . . . . . . . . . . . 268 14.6. Servidor Radius, desvo en el router . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270 14.7. AirSnort, descifrado de claves WEP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277 15.1.Webmin, pantalla de con
  • 110. guracion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280 15.2.Webmin, pantallas de la interfaz Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285 15.3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286 17.1. Nessus, con
  • 111. guracion de la aplicacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301 17.2. Nessus, vulnerabilidades del sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302 D.1. Runlevels, modulo Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326 G.1. Licencia Reconocimiento-CompartirIgual . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338 Jose Antonio Escartn Vigo, Junio 2005.
  • 112. Indice de cuadros 1. Objetivos del proyecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii 2.1. Distribuciones Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 4.1. Lilo, archivo de con
  • 113. guracion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 4.2. /etc/passwd, ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 4.3. /etc/passwd, descripcion de campos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 4.4. /etc/shadow, ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 4.5. /etc/shadow, descripcion de campos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 4.6. /etc/group, ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 4.7. /etc/group, descripcion de campos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 4.8. Tipos de archivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 4.9. Chmod, Opciones basicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 4.10. Chmod, opciones especiales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 4.11. Make
  • 114. le, ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 4.12. Dpkg, opciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 4.13. /etc/apt/sources.list, ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 4.14. Apt, opciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 4.15. Variables habituales del sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 5.1. Kernel, paquetes basicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 5.2. Kernel 2.6, paquetes necesarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 5.3. Metodo de compilacion del kernel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 6.1. /etc/X11/XF86Con
  • 115. g-4, ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 7.1. Modelo de referencia OSI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 7.2. Tipos de redes, n.o de hosts por red . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 7.3. Notacion de barra inclinada en IPs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 7.4. TCP/IP, ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 7.5. TCP/IP, esquema de transmision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 8.1. Netstat, opciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 9.1. /var/yp/Make
  • 116. le, ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 10.1. Apache, archivos de con
  • 117. guracion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 11.1. SSH cliente, opciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 12.1. Ping, opciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192 12.2. Dig, opciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 12.3. IPTables, especi
  • 118. caciones de reglas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 12.4. IPTables, comandos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200 12.5. IPTables, ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
  • 119. xx Servidor Linux para conexiones seguras de una LAN a Internet 12.6. /etc/squid/squid.conf, ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204 12.7. Mt, opciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208 12.8. Dump, opciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209 12.9. Restore, opciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210 13.1. Snort, opciones de alerta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221 13.2. Snort, archivos de reglas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224 13.3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225 13.4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226 13.5. Snort, opciones de personalizacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230 13.6. Tripwire, mascaras de propiedad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231 13.7. Tripwire, mascaras prede
  • 120. nidas en plantillas . . . . . . . . . . . . . . . . . . . . . . . . . . 232 13.8. Acidlab, variables de con
  • 121. guracion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236 13.9. PortSentry, opciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244 14.1. Estandares 802.11 inalambricos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258 14.2. Kismet, con
  • 122. guracion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274 14.3. Kismet, con
  • 123. guracion de la interfaz gra
  • 124. ca . . . . . . . . . . . . . . . . . . . . . . . . . . 274 14.4. Kismet, teclas de la interfaz gra
  • 125. ca . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275 15.1.Webmin, modulos disponibles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284 16.1. Ps, opciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291 17.1. Nmap, tipos de escaneo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305 17.2. Nmap, opciones de descubrimiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305 17.3. Nmap, con
  • 126. guraciones de frecuencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306 17.4. Nmap, otras opciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306 17.5. Nmap, codi
  • 127. cacion de color de la salida . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307 18.1. Recursos del proyecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309 18.2. Costes del proyecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310 Jose Antonio Escartn Vigo, Junio 2005.
  • 128. Parte I Tareas previas
  • 129.
  • 131. cacion El numero de creditos asignados al proyecto es de 22,5 y decid que cada credito me supondra una carga de 20 horas, por lo tanto, la plani
  • 132. cacion ha sido realizada para un total de 450 horas. 1.1. Fases del proyecto Plani
  • 133. cacion temporal: 20 horas. Mediante la herramienta de gestion de proyectos Planner, se realiza una division temporal de las actividades a realizar. Trabajo preliminar: 40 horas. Se eligen una serie de herramientas y sistemas sobre los cuales se desarrolla el proyecto. Instalacion base y con
  • 134. guracion: 80 horas. Implementacion y con
  • 135. guracion del entorno de trabajo. Con
  • 136. guracion de los servicios: 120 horas. Basandose en los servicios tpicos que implementan los servidores de red, se instalan una serie de servicios estandar para clientes de sistemas operativos Linux y Windows. Pruebas del sistema y conclusiones: 30 horas. Apoyandose en una serie de pruebas de carga se deter-mina la e
  • 137. ciencia real, de los servicios del servidor. As mismo se utilizan varias herramientas para determinar la seguridad del servidor y comprobar su resistencia a posibles intrusiones o agresiones externas. Aprendizaje del entorno LATEX: 20 horas. A traves de varios libros, que detallo en la bibliografa, se aprende a utilizar el entorno de composicion de textos LATEX para elaborar la documentacion del proyecto. Documentacion del proyecto: 140 horas. A lo largo del desarrollo de las fases anteriores se realizan una serie de informes parciales que son la base de la memoria del proyecto. 1.2. Esquema temporal Pese a la plani
  • 138. cacion inicial, en los siguientes esquemas se detallan la cronologa real que se siguio en la elaboracion del proyecto. 1PFC: Proyecto
  • 140. 4 Servidor Linux para conexiones seguras de una LAN a Internet Figura 1.1: Plani
  • 141. cacion (I) Jose Antonio Escartn Vigo, Junio 2005.
  • 143. cacion 5 Figura 1.2: Plani
  • 144. cacion (II) Jose Antonio Escartn Vigo, Junio 2005.
  • 145. 6 Servidor Linux para conexiones seguras de una LAN a Internet Figura 1.3: Plani
  • 146. cacion (III) Jose Antonio Escartn Vigo, Junio 2005.
  • 148. cacion 7 Figura 1.4: Plani
  • 149. cacion (IV) Jose Antonio Escartn Vigo, Junio 2005.
  • 150.
  • 151. Captulo 2 Seleccion de Herramientas En este capitulo explicare cuales fueron las diferentes herramientas utilizadas para la elaboracion del proyecto. En una primera fase se determina el hardware donde se implementa el servidor y los diferentes clientes utilizados en las pruebas En la segunda fase se elige la distribucion utilizada y los motivos que me llevaron a su eleccion En la tercera fase se detalla que herramientas de apoyo se uso para desarrollar los trabajos. 2.1. Seleccion de Hardware Pese a que el director del proyecto me ofrecio la utilizacion de material del departamento LSI de la UPC, por mi comodidad, el material escogido fue de mi propiedad. Comprando una parte de el para desarrollar de forma mas e
  • 152. ciente las tareas. 2.1.1. Servidor Como servidor me decid por la compra de un ordenador portatil, que permitiera desarrollar un servidor portable con mas utilidades habituales en los servidores
  • 153. jos, ademas de la ventaja de poder portar el proyecto y trabajar en sitios diferentes. Con este sistema se permite a un grupo corporativo itinerante el desarrollo de sus actividades en posibles reuniones fuera de su propio edi
  • 154. cio. La conexion y seguridad del sistema queda garantizada gracias al sistema de validacion de clientes. El portatil elegido fue un Acer TravelMate 4002 WLMI con procesador Intel Centrino a 1,6 Ghz. con dos tarjetas de red integradas, una ethernet 10/100Mb y otra wi
  • 155. 802.11g de 54Mb que permite sin problemas establecer dos segmentos diferenciados de red. Uno para los usuarios de o
  • 156. cina, es decir los usuarios
  • 157. jos, y otro para los clientes wi
  • 158. , dotando al sistema de mayor seguridad. Se presentaron una serie de problemas directamente derivados de esta eleccion. El hardware era dema-siado nuevo y esto provoco una serie de incompatibilidades que se fueron solucionando con la instalacion de drivers y parches que no se encontraban en las instalaciones Linux estandar. El servidor realiza tambien la gestion de la conexion a internet. Esta conexion es suministrada, cuando se encuentra
  • 159. jo, por un router 3com conectado al switch de la red y que solo responde a las peticiones del servidor. 2.1.2. Clientes Como clientes se utilizaran varios PC's de sobremesa, conectados mediante cable RJ45 a un switch. PC AMD-Duron a 1,3 Ghz., tambien de mi propiedad, donde estara situado el principal cliente Linux y Windows del sistema. En este ordenador se realizaron la mayoria de pruebas de conexion a servicios.
  • 160. 10 Servidor Linux para conexiones seguras de una LAN a Internet PC AMD-Athlon a 1,2 Ghz. y PC AMD-Athlon a 2,4 Ghz. con clientes Windows, prestados. Portatil Pentium-IV Mobile, con sistema Linux y Windows, para la pruebas de conexion de clientes inalambricos. Los clientes se utilizaron simultaneamente para realizar las pruebas de carga una vez terminada la implementacion del servidor, para comprobar la efectividad del mismo. 2.2. Seleccion de la distribucion Completada la infraestructura hardware, comence a leer sobre distribuciones de GNU/Linux, buscando cuales eran las mas adecuadas para desplegar servidores. A continuacion detallo los tipos de distribuciones valoradas: Mepis y Ubuntu (basadas en Debian) son consideradas las mejores para aquellos usuarios nuevos en Linux que quieren empezar a ser productivos lo antes posible, sin tener que aprender todas sus complejidades, son distribuciones orientadas a usuario de escritorio. En el lado opuesto tenemos a Gentoo, Debian y Slackware que son distribuciones mas avanzadas que requieren un completo aprendizaje antes de poder ser usadas e
  • 161. cientemente. A medio camino entre ellas se encuentran Mandrake, Fedora (basada en Red Hat) y SuSE, estas dos ultimas son distribuciones comerciales. Knoppix y Mepis-LiveCD (basadas en Debian) son un caso a parte, permiten probar Linux sin tener que hacer nada, ya que funciona directamente del CD, sin ninguna instalacion. 2.2.1. Distribuciones Linux Cuadro 2.1: Distribuciones analizadas SimplyMepis 3.3 - Mepis-LiveCD Ubuntu (Warty Warthog 4.10) Gentoo 2004.3 (FreeBSD) Debian Woody 3.r04 - Sarge 3.1) Debian Sarge 3.1) Slackware 10.1 Mandrake 10.1 Fedora Core 3 (Red Hat) SuSE Knoppix 3.7 Mepis y Mepis-LiveCD Fue lanzada por Warren Woodford en julio de 2003. Mepis Linux es una fusion entre Debian Sid y Knoppix, una nueva clase de distribucion de Linux que se pueda utilizar como CD en vivo, y como distribucion completa con un instalador gra
  • 162. co a disco duro. De esta manera, usuarios pueden probar el producto simplemente booteando desde el CD de Mepis, e instalandolo luego a disco duro solamente si les gusta. Muchas otras distribuciones copiaron esta idea mas adelante, pero fue Mepis quien inicio el concepto de un CD vivo mas un instalador gra
  • 163. co completo partiendo de un CD. A que se debe el exito de Mepis? A diferencia de la mayora de las distribuciones principales de Linux, Mepis viene con muchos paquetes que no son de uso-libre, pero altamente utiles, precon
  • 164. gurados todos y Jose Antonio Escartn Vigo, Junio 2005.
  • 165. Captulo 2. Seleccion de Herramientas 11 listos para utilizar. Estos incluyen el driver de video Nvidia, el plugin Flash de Macromedia, Java, varios codecs de multimedia para manejar archivos populares de audio y video y otros usos. Con Mepis Linux, no hay necesidad de buscar el software para Java y despues tener que buscar la documentacion para descubrir como permitir el uso de Java en sus navegadores. Todo esta disponible despues de la instalacion. Esta idea simple resulto ser enormemente popular, no solamente entre los usuarios nuevos de Linux, sino tambien entre los mas experimentados quienes encontraron muy conveniente el no tener que pasar horas post-instalacion con
  • 167. nando el sistema. Aparte de las aplicaciones estandard de Debian y del software no-libre antes citado Mepis Linux tiene excelente auto-deteccion del hardware. Ubuntu (Warty Warthog) Ubuntu esta basada en Debian, pero el planteamiento esta inspirado en los principios de la corriente ubuntu, un movimiento humanista encabezado por el obispo Desmond Tutu, premio Nobel de la Paz en 1984. Economicamente el proyecto se sostiene con aportaciones de la empresa Canonical del millonario sudafricano Mark Shuttleworth. El proyecto nacio por iniciativa de algunos programadores de los proyectos Debian, Gnome y Arch que se encontraban decepcionados con la manera de operar del proyecto Debian. La version estable era utilizada solo por una minora debido a la poca o nula vigencia que posea en terminos de la tecnologa Linux actual. Tras varios meses de trabajo y un breve perodo de pruebas, la primera version de Ubuntu (Warty Warthog) fue lanzada en el mes de octubre de 2004. Los desarrolladores se esfuerzan en ofrecer una propuesta que corrija la problematica que advirtieron en Debian. Las versiones estables se liberan al menos dos veces al a~no y se mantienen actualizadas. Contribuye al proyecto Debian de manera continua debido a que ambas distribuciones comparten colaboradores de manera o
  • 168. cial. El administrador de escritorio o
  • 169. cial es Gnome y el navegador o
  • 170. cial es Mozilla Firefox. El sistema incluye funciones avanzadas de seguridad y entre sus polticas se encuentra el no activar procesos latentes por omision al momento de instalarse. Gentoo (FreeBSD) Gentoo Linux fue creada por Daniel Robbins, un conocido desarrollador de Stampede Linux y FreeBSD. La primera version estable de Gentoo fu anunciada en Marzo del 2002. Gentoo Linux es una distribucion basada en codigo fuente. Mientras que los sistemas de instalacion proveen de varios niveles de paquetes pre-compilados, para obtener un sistema Linux basico funcionando, el objetivo de Gentoo es compilar todos los paquetes de codigo en la maquina del usuario. La principal ventaja de esto es que todo el software se encuentra altamente optimizado para la arquitectura de la computadora. Tambien, actualizar el software instalado a una nueva version es tan facil como teclear un comando, y los paquetes, mantenidos en un repositorio central, son actualizados a menudo. En la otra cara de la moneda, instalar Gentoo y convertirla en una distribucion completa, con los ultimos entornos gra
  • 171. cos, multimedia y de desarrollo es un trabajo largo y tedioso, puede durar varios das incluso en una maquina rapida. Debian (Woody - Sarge) Debian GNU/Linux inicio su andadura de la mano de Ian Murdock en 1993. Debian es un proyecto totalmente no-comercial; posiblemente el mas puro de los ideales que iniciaron el movimiento del software libre. Cientos de desarrolladores voluntarios de todo el mundo contribuyen al proyecto, que es bien dirigido y estricto, asegurando la calidad de la distribucion. En cualquier momento del proceso de desarrollo existen tres ramas en el directorio principal: estable, en pruebas e inestable (tambien conocida como sid, nombre que no vara). Actualmente la rama estable es Woody y la rama en pruebas es Sarge. Cuando aparece una nueva version de un paquete, se situa en la rama inestable para las primeras pruebas, si las pasa, el paquete se mueve a la rama de pruebas, donde se realiza un riguroso proceso que dura muchos meses. Esta rama solo es declarada estable tras una muy intensa fase de pruebas. Jose Antonio Escartn Vigo, Junio 2005.
  • 172. 12 Servidor Linux para conexiones seguras de una LAN a Internet Como resultado de esto, la distribucion es posiblemente la mas estable y con
  • 173. able, aunque no la mas actualizada. Mientras que la rama estable es perfecta para servidores con funciones crticas, muchos usuarios pre
  • 174. eren usar las ramas de pruebas o inestable, mas actualizadas, en sus ordenadores personales. Debian es tambien famosa por su reputacion de ser difcil de instalar, a menos que el usuario tenga un profundo conocimiento del hardware de la computadora. Compensando este fallo esta apt-get el instalador de paquetes Debian. Muchos usuarios de Debian hacen bromas sobre que su instalador es tan malo por que solo lo han de usar una vez, tan pronto como Debian esta en funcionamiento, todas las actualizaciones, de cualquier tipo pueden realizarse mediante la herramienta apt-get. Slackware Creada por Patrick Volkerding en 1992, Slackware Linux es la distribucion mas antigua que sobrevive hoy en da. No ofrece extras vistosos, y se mantiene con un instalador basado en texto, y sin herramientas de con
  • 176. ca. Mientras otras distribuciones intentan desarrollar intarfaces faciles de usar para muchas utilidades comunes, Slackware no ofrece nada amistoso, y toda la con
  • 177. guracion se realiza mediante los archivos de con
  • 178. guracion. Es por esto que Slackware solo se recomienda a aquellos usuarios nuevos que deseen perder el tiempo aprendiendo acerca de Linux.A pesar de todo, Slackware tiene una especie de aura magica para muchos usuarios. Es extremadamente estable y segura, muy recomendada para servidores. Los administradores con experiencia en Linux encuentran que es una distribucion con pocos fallos, ya que usa la mayora de paquetes en su forma original, sin demasiadas modi
  • 179. caciones propias de la distribucion, que son un riesgo potencial de a~nadir nuevos fallos. Es raro que se produzcan lanzamientos de nuevas versiones (aproximadamente una al a~no), aunque siempre se pueden encontrar paquetes actualizados para descargar despues del lanzamiento o
  • 180. cial. Slackware es una buena distribucion para aquellos interesados en profundizar en el conocimiento de las entra~nas de Linux. Posiblemente, la mejor caracterstica de esta distribucion es que si necesitas ayuda con tu sistema linux, encuentra un usuario de Slackware. Es mas probable que resuelva el problema que otro usuario familiarizado con cualquier otra distribucion. Mandrake Creada por Gal Duval, Mandrake Linux es una distribucion que ha experimentado un enorme aumento de popularidad desde su primera version de julio de 1998. Los desarrolladores partieron de la distribucion de Red Hat, cambiaron el entorno de escritorio predeterminado por KDE, y a~nadieron un instalador facil de usar rompiendo el mito de que linux es difcil de instalar. Las herramientas de deteccion de hardware de Mandrake y sus programas para el particionamiento de discos son consideradas por muchos como las mejores de la industria, y muchos usuarios se encontraron usando Mandrake all donde otras distribuciones no haban conseguido entregar la usabilidad necesaria.Desde entonces Mandrake Linux ha madurado y se ha convertido en una distribucion popular entre los nuevos usuarios de linux y aquellos hogares que buscan un sistema operativo alternativo. El desarrollo de Mandrake es completamente abierto y transparente, con paquetes nuevos que se a~naden al directorio llamado cooker a diario. Cuando una nueva version entra en fase beta, la primera beta se crea a partir de los paquetes que se encuentran en cooker en ese momento. El proceso de pruebas de la beta sola ser corto e intensivo, pero desde la versin 9.0 ha pasado ha ser mas largo y exigente. Las listas de correo sobre la version beta suelen estar saturadas, pero sigue siendo posible recibir una respuesta rapida sobre cualquier fallo o duda que enves. Como resultado de este tipo de desarrollo se obtiene una distribucion puntera y altamente actualizada. Como contrapartida, los usuarios pueden encontrarse con mas fallos que en otras distribuciones. Mucha gente encuentra este 'pero' razonable para sus equipos, ellos obtienen las ultimas versiones de software y los cuelgues ocasionales de las aplicaciones es algo con lo que pueden vivir. Tan pronto como el desarrollo se completa el software se pone a la libre disposicion de la gente desde replicas en todo el mundo. Jose Antonio Escartn Vigo, Junio 2005.
  • 181. Captulo 2. Seleccion de Herramientas 13 Fedora (Red Hat) Para muchos el nombre de Red Hat equivale a Linux, ya que probablemente se trata de la compa~na de linux mas popular del mundo. Fundada en 1995 por Bob Young y Marc Ewing, Red Hat Inc. Solo ha mostrado bene
  • 182. cios recientemente gracias a otros servicios en lugar de a la distribucion en si. Aun as, Red Hat es la primera eleccion para muchos profesionales y parece que seguira siendo un peso pesado durante mucho tiempo. Afortunadamente se resistieron a realizar ningun plan de rapida expansion durante el boom de las punto-com durante los a~nos 1998-1999, concentrandose en su negocio principal. Este tipo de gestion prudente si sigue as, es propensa a garantizar estabilidad y dependencia.. Que hace a Red Hat Linux tan especial? Su curiosa mezcla de conservadurismo y paquetes punteros mezclados con muchas aplicaciones desarrolladas en casa. Los paquetes no son los mas actuales, una vez se anuncia una nueva version beta, las versiones de los paquetes se mantienen, excepto para actualizaciones de seguridad. Como resultado se obtiene una distribucion bien probada y estable. El programa de betas y las facilidades para enviar fallos estan abiertas al publico y hay un gran espritu en las listas de correo publicas. Red Hat Linux se ha convertido en la distribucion linux dominante en servidores en todo el mundo. Otra de las razones del exito de Red Hat es la gran variedad de servicios populares que ofrece la com-pa~ na. Los paquetes de software son facilmente actualizables usando la Red Hat Network, un repositorio o
  • 183. cial de software e informacion. Una larga lista de servicios de soporte son accesibles en la compa~na y, aunque no siempre baratos, tienes virtualmente asegurado un excelente soporte de personal altamente cuali
  • 184. cado. La compa~na ha desarrollado incluso un programa de certi
  • 185. cacion para popularizar su distribu-ci on, el RHCE (Certi
  • 186. cado de Ingeniera de Red Hat), academias y centros examinadores estan disponibles en el casi todas las partes del mundo. Todos estos factores han contribuido a que Red Hat sea una marca reconocida en el mundo de la industria de las TI. SuSE SuSE es otra compa~na orientada a los escritorios, aunque tiene variedad de otros productos para empresas. La distribucion ha recibido buenas crticas por su instalador y la herramienta de con
  • 187. guracion YaST, desarrollada por los desarrolladores de la propia SuSE. La documentacion que viene con las versiones comerciales, ha sido repetidas veces evaluada como la mas completa, util y usable con diferencia a la de sus competidores. SuSE Linux 7.3 recibio el premio Producto del a~no 2001que entrega el Linux Journal. La distribucion tiene un gran porcentaje de mercado en Europa y America del norte, pero no se vende en Asia y otras partes del mundo. El desarrollo de SuSE se realiza completamente a puerta cerrada, y no se lanzan betas publicas para probar. Siguen la poltica de no permitir descargar el software hasta tiempo despues de que salgan a la venta las versiones comerciales. A pesar de todo, SuSE no entrega imagenes ISO de facil instalacion de su distribucion, usando el software empaquetado para la gran mayora de su base de usuarios. Actualmente van por la version 9.3 y no la instale porque la unica forma de conseguirla era pagando y uno puntos claves era que todo el software fuera libre y gratuito. SuSE no cumpla esos requisitos. Knoppix Knoppix es una distribucion CD vivo de Linux basada en Debian y que utiliza como gestor de escritorio KDE. Esta desarrollada por el consultor de GNU/Linux Klaus Knopper. Gnoppix es una variante pero incluye como entorno gra
  • 188. co Gnome en vez de KDE. A diferencia de la mayora de las distribuciones Linux, no requiere una instalacion en el disco duro; el sistema puede iniciarse desde un simple CD de 700 MB. Ademas, Knoppix reconoce automaticamente la mayora del hardware del ordenador cuando se inicia. Tambien puede ser instalado en el disco duro utilizando un script de instalacion. Y otra posibilidad de hacerlo mas persistente es guardar el directorio home en una unidad removible, como un dispositivo de almacenamiento USB. Se puede usar de distintas formas como: Jose Antonio Escartn Vigo, Junio 2005.
  • 189. 14 Servidor Linux para conexiones seguras de una LAN a Internet Para ense~nar y demostrar de manera sencilla el sistema GNU/Linux, especialmente como sistema operativo. Probar rapidamente la compatibilidad de hardware bajo Linux antes de comprarlo o utilizarlo, especialmente para tarjetas de vdeo. Utilizar las herramientas incluidas para restaurar un sistema corrupto o sus datos perdidos. Existen versiones ntegramente en espa~nol y catalan. 2.2.2. Pruebas Los CD's vivos arrancaron bien, sobre todo MEPIS con el que me lleve una grata sorpresa, muy simple y funciona casi todo. La distribucion Ubuntu estaba claramente orientada a usuario
  • 190. nal y no servidor que era mi objetivo, de todas formas es una buena distribucion que permite estar siempre actualizado. Gentoo no la llege a probar debido a las di
  • 191. cultades de instalacion que representa la continua compi-laci on de paquetes, paso esencial en esta distribucion. Es muy complicado dejarla a punto. Debian y Slackware eran las distribuciones que mas se ajustaron a los propositos del proyecto; sobre todo Debian que cuenta con un gran grupo de soporte y recursos. Pese a ser las menos actualizadas, eso no presenta ninguna di
  • 192. cultad para poder actuar como un servidor, mas bien al contrario, son las distribuciones mas estables de todas las evaluadas. Mandrake no presentaba el entorno adecuado y Fedora y SuSE, al ser versiones comerciales, no cubran los requisitos pre
  • 193. jados. 2.2.3. Distribucion elegida Pese a la di
  • 195. guracion me decante por Sarge del proyecto Debian, debido a su caracter al 100% libre y la gran cantidad de aplicaciones que adjunta. Otro factor decisivo fue el soporte que tiene dicha distribucion, mantenida por multitud de desarrolladores. Pese a ser una version en pruebas, se encuentra en la ultima fase. La rama de desarrollo Sarge, lleva abierta desde el 2002 y la liberacion de la version estable se plantea inminente. 2.3. Seleccion del Software Las herramientas escogidas no lo han sido al azar, son consecuencia directa de la
  • 196. losofa del proyecto, donde el uso exclusivo de software libre y gratuito era un objetivo prioritario. Paso a detallar el software que utilizo: 2.3.1. Planner Programa de gestion de proyectos que permite crear planes para el proyecto y seguir su progreso, pudiendo colocar sellos temporales Lista de caractersticas Calendario Costes de proyecto Gestion de tareas Jose Antonio Escartn Vigo, Junio 2005.
  • 197. Captulo 2. Seleccion de Herramientas 15 Gestion de recursos Figura 2.1: Distribucion de recursos Diagramas de ghant Figura 2.2: Diagrama temporal de Ghant 2.3.2. LATEX Como se menciona en [CSLSMR+03] LATEX es un conjunto de sentencias escritas en un lenguaje de programacion llamado TEX. Este no es un lenguaje de programacion usual, sino uno orientado a la escritura de textos de excelente calidad. TEX no es un editor de la familia WYSIWYG, termino empleado para denominar a los editores que solo trabajan sobre la pantalla del computador, dando un formato visual al texto, y en los cuales lo que ves es lo que tienes. Muy al contrario, en TEX se escribe el texto acompa~nado de ordenes que el compilador, posteriormente, interpreta y ejecuta para proporcionar un texto perfectamente compuesto. A estas ventajas hay que a~nadir otra, es gratuito; Donald E. Knuth el creador de TEX, lo libero en Octubre de 1.990. El entorno LATEX desarrollado por Leslie Lamport, lo creo en 1982, con la intencion de simpli
  • 198. car la tarea a aquellos que desean utilizar TEX. A~nade a TEX una coleccion de comandos que simpli
  • 200. ado, permitiendo al usuario concentrarse en la estructura del texto, en vez de en los comandos para dar formato. Tal es la calidad de LATEX que muchas editoriales permiten a sus autores escribir libros en LATEX, dandoles un archivo base y unas directrices sobre la elaboracion de los textos. Una de las ventajas de LaTeX es que puede ser exportado muy facilmente a Portable Document Format (PDF) y PostScrip. Utilizare este entorno de composicion de textos para desarrollar la documentacion derivada del pro-yecto. Jose Antonio Escartn Vigo, Junio 2005.
  • 201. 16 Servidor Linux para conexiones seguras de una LAN a Internet 2.3.3. Kile Kile es un editor de textos para LATEX desarrollado por P. Brachet. Tiene una completa interfaz con diversas facilidades que ofrece a un usuario novel un entorno amigable. Figura 2.3: Imagen del editor Kile Sus principales caractersticas son las siguientes: Los comandos de LATEX estan disponibles a traves de menus, botones y combinaciones de teclas. La ayuda integrada en el programa nos permitira saber que macro usar ante una necesidad concreta. Para una edicion comoda de los
  • 202. cheros de texto, contamos con resaltado de sintaxis, funciones de busqueda (incremental o no), reemplazo, deshacer, . . . Los mas de 370 smbolos matematicos posibles son accesibles mediante botones y menus. Corrector ortogra
  • 203. co a traves de ispell Asistentes para la creacion de distintos tipos de documentos LATEX(cartas, artculos, etc). Manejo de bibliografas a traves de BibTEX. Navegacion mediante menus de la estructura de un documento o proyecto. Facilidades para compilar y depurar
  • 204. cheros LATEX. Integracion con herramientas externas para la visualizacion e impresion de los documentos editados en distintos formatos: DVI, Postscript o PDF. Interfaz con programas de dibujo como x
  • 205. g o gnuplot. 2.3.4. Prosper La herramienta Prosper, desarrollada por F. Goualard y P.M.Neergaard es una clase para LATEX que permite crear presentaciones electronicas con una excelente calidad. Con ella se pueden producir documentos en formato PDF para realizar exposiciones con un monitor o con un sistema de proyeccion de vdeo. Tambien se puede producir documentos PostScript para imprimir la presentacion sobre transparencias para exposiciones con retroproyector. Dispone de multitud de estilos de presentacion y la posibilidad de conseguir efectos de animacion en pantalla haciendo que el contenido de la misma aparezca o desaparezca en distintas etapas (de forma incremental). Jose Antonio Escartn Vigo, Junio 2005.
  • 206. Captulo 2. Seleccion de Herramientas 17 Figura 2.4: Varios estilos de transparencias 2.3.5. Programas gra
  • 207. cos Las imagenes y videos que he utilizado en la documentacion y en las transparencias se han generado con los siguientes programas: KSnapshot: Para capturar pantallas, es mucho mejor que la tpica tecla Impr-pant gracias a sus multiples opciones, entre las que se encuentran un temporizador y poder elegir que parte de la pantalla se va a capturar; pudiendo seleccionar entre toda la pantalla, la ventana activa o una region concreta. En resumen, una herramienta muy util para la redaccion de tutoriales. The Gimp: Es el programa estrella de GNU para la creacion y el retoque fotogra
  • 208. co de imagenes, comparable al famoso programa comercial Adobe Photoshop. Xvidcap y Mencoder: Permite capturar una secuencia de imagenes de una parte de la pantalla, ya sea una ventana o una region. De esta manera, obtendremos una coleccion de imagenes del area capturada separadas temporalmente un numero de fps1 que se puede especi
  • 209. car. El programa Mencoder forma parte de Mplayer, que es un conjunto de aplicaciones para la grabacion y reproduccion de vdeos, dvd's y otros. Una vez obtenida la coleccion de imagenes que conformaran los frames del vdeo se utilizara el programa Mencoder para componerlo. 1fps: frames por segundo Jose Antonio Escartn Vigo, Junio 2005.
  • 210.
  • 212.
  • 213. Captulo 3 Instalacion de la distribucion Existen varias formas de realizar la instalacion de la distribucion: Desde CD-ROM: con las imagenes o
  • 214. ciales Desde disquetes: carga un nucleo y permite hacer una instalacion base por internet si la tarjeta de red es soportada. Desde dispositivo USB: crea un mini sistema base Desde el disco duro: a partir de unos
  • 215. cheros locales. Desde red: Se realiza a traves de TFTP desde una maquina a la que se tiene acceso, si la tarjeta de red es soporta. La manera mas sencilla, con mucho, de instalar Debian GNU/Linux, es usar un juego o
  • 216. cial de CDs o DVDs de Debian, las imagenes pueden ser descargadas desde el servidor Debian (www.debian.org/distrib/ ) o desde una replica del mismo. Si el sistema no permite arrancar desde el CD, se puede utilizar una estrategia alternativa (disquete o disco duro) para hacer el arranque inicial del instalador del sistema, los
  • 217. cheros para arrancar mediante otros medios tambien se encuentran en el CD. Una vez arranque el instalador, se pueden obtener el resto de
  • 218. cheros desde el CD. Se puede obtener mas informacion respecto a la instalacion de Debian en [PRG+02] y [eidD04]. 3.1. Proyecto Debian El proyecto Debian GNU/Linux posee tres ramas: stable, testing y unstable. En los siguientes apartados se detallan las diferencias entre ellas. 3.1.1. Unstable Se llama Sid y como su nombre indica es la distribucion mas inestable porque contiene paquetes muy nuevos. La utilizan los desarrolladores de Debian para depuracion. Debian Sid contiene software muy reciente y puede traer problemas de estabilidad graves. 3.1.2. Testing Actualmente se llama Sarge, posee el software que ya paso un tiempo de prueba en inestable pero que aun debe pasar una fase de pruebas para consideralo estable, es la utilizada por aquellos que desean disfrutar de las nuevas caractersticas de Debian y de las versiones de software mas reciente sin esperar a la liberacion o
  • 219. cial de una nueva version. Es el equivalente a la distribucion mas actual de las demas distribuciones (Mandrake, Fedora, Slackware, etc).
  • 220. 22 Servidor Linux para conexiones seguras de una LAN a Internet 3.1.3. Stable Actualmente es la version 3.0, tambien llamada Woody y como su nombre indica es la mas estable de las distribuciones Debian, ya que su software contenido ya supero varios meses de pruebas y correcciones. En sistemas de produccion, donde no se toleran problemas de estabilidad, se recomienda el uso de Debian Woody. 3.1.4. Recomendaciones En entornos de prueba y/o desarrollo se recomienda utilizar Debian Woody o Sarge. Para PCs de escritorio se recomienda utilizar Debian Sarge, ya que contiene versiones de software bastante recientes y ya probadas un tiempo en la rama inestable. He elegido Sarge, ya que esta rama de desarrollo lleva abierta desde el 2002 y la liberacion de la version estable se plantea inminente. 3.2. Debian Sarge Este metodo de instalacion se utilizo en el cliente de pruebas. En el servidor se instalo Debian Woody y se realizo una actualizacion debido a incompatibilidades de Hw. Metodo de instalacion Mediante el siguiente esquema detallo el sistema de instalacion. 1. Con
  • 221. gurar la BIOS para arrancar desde el DVD 2. Iniciar el instalador boteando desde el DVD 3. Arrancar el instalador con los metodos y parametros mas adecuados al Hw disponible. Presionando Enter se arranca con los parametros por defecto que incluyen el kernel 2.6 de GNU/Linux. 4. Elegir idioma 5. Seleccionar pas 6. Con
  • 222. rmar mapa de teclado 7. Detectar Hw y cargar componentes. 8. Con
  • 223. gurar la red 9. Particionar discos. Se puede escoger un particionado automatico o si se elige manual, al menos se han de crear 2 particiones, una raz y otra de intercambio 10. Formar particiones y realizar la instalacion base 11. Instalar el nucleo 12. Instalar el gestor de arranque, se instala Grub como predeterminado. Si se disponen de varios sistemas operativos se puede especi
  • 224. car un arranque multiple 13. Retirar el DVD y reiniciar para continuar la instalacion 14. Arrancar y con
  • 225. gurar el sistema base 15. Con
  • 226. gurar zona horaria Jose Antonio Escartn Vigo, Junio 2005.
  • 227. Captulo 3. Instalacion de la distribucion 23 16. Con
  • 228. gurar usuarios (root y usuarios corrientes) 17. Con
  • 229. gurar APT 18. Instalar y con
  • 231. gurar correo Si durante la instalacion se producen errores o cuelgues se pueden especi
  • 232. car opciones restrictivas al iniciar el instalador. En mi caso, no consegu que ninguna opcion instalara el sistema en el servidor. 3.3. Debian Woody En la instalacion se incluyen varias imagenes de nucleos disponibles, la mayora basados en el kernel 2.2.20: Vanilla: La imagen estandar de Debian Woody, instala el kernel 2.2.20. Incluye casi todos los controladores soportados por Linux, compilados como modulos. Compact: Igual que Vanilla, pero eliminando controladores de dispositivo que se usan con menos frecuencia. Idepci: Un nucleo que solo soporta dispositivos IDE y PCI (y unos pocos ISA). Se debe usar este nucleo si los controladores SCSI producen cuelgues al arrancar, debido a con ictos de hardware o a un compotamiento inadecuado de los controladores o placas de su sistema. Bf2.4: Usa el kernel 2.4 y da soporte a hardware nuevo ausente en las otras imagenes. Soporta mas hardware USB, controladoras IDE modernas, y los sistemas de
  • 233. cheros Ext3 y Reiser. Esta fue una de las partes mas desesperantes del proyecto, debido a incompatibilidades de Hw, tuve que instalar un version diferente de la plani
  • 234. cada y al arrancar Debian Woody con cualquiera de los kernels disponibles, no cargaba el driver adecuado para la pantalla TFT. Esto supuso tener que utilizar otra pantalla diferente, conectada a la salida VGA del portatil, para realizar toda la instalacion, hasta poder actualizar el kernel a una version 2.6. El arranque que utilice fue Bf2.4, para que fuera soportado un mayor numero de dispositivos desde el inicio, aunque el problema de la pantalla persista. Este es un peque~no resumen de los pasos a seguir en la instalacion de Debian Woody: 1. Con