You are on page 1of 168

'

O’REILLY' 1.1111111
41146157

Administración de sistemas Linux
De todos los sistemas Unix, Linux es una plataforma servidora excelente
un buen
sistema de escritorio y el centro en torno al cual gira una gran parte de
la
innovación del mundo informático actual. Linux es probablemente el que más
ámbitos abarca de todos los sistemas operativos, desde sistemas pequeños como
un teléfono móvil hasta ciústeres de computadores más grandes que un edificio. Está presente
en los campos de las telecomunicaciones, sistemas embebidos, satélites, equipamiento médico
sistemas militares y gráficos por computador e informática de escritorio.

Administración de sistemas Linux ofrece numerosos consejos para gestionar un amplio rango
de sistemas y servidores. Este libro resume los pasos para implantar desde hubs SOLIO,
servidores web y servidores LAN, hasta ciústeres de carga balanceada y servidores virtuales.
También le ayudará a conocer las herramientas necesarias para administrar
y mantener de
forma eficaz estos entornos de trabajo.

Con este libro aprenderá a:

• Instalar, configurar, mantener y resolver problemas en un servidor usando BINO.

• Configurar un servidor de correo Postfix con autentificadón SASL, un servidor POP y un
servidor IMAP.

• Gestionar usuarios y configurar elementos de red comunes, tales como OCHO y software
para pasarelas en recles de área local (LAN).

• Definir Xen, VMware en un equipo Linux y luego añadir sistemas operativos invitados.

• Instalar y configurar Apache, PHP y MySQL en un servidor web desde cero.

• Hacer copias de seguridad y restaurar ciatos con rsync, tar, cdrecord, Amanda y
herramientas MySQL.

Tom Adelstein comenzó su carrera en el mundo de las inversiones bancadas, donde sus
conocimientos técnicos ayudaron a algunas empresas de servicios financieros a convertirse en
líderes de su sector. Ahora es administrador de sistemas y escritor técnico.

Bill Lubanovic comenzó desarrollando software para Unix en la década de 1970, interfaces
gráficas de usuario en la década de 1980 y para la Web en la década de 1990. Actualmente
trabaja en el. área de visualización Web para una compañía ele energía eólica.

2327258

iffif ^
ANAYA
'

:S'-

«MULTIMEDIA»*
http://www.AnayaMultimedia.6s

O'REILLY

Título de la obra original:

Linux System Administraron

Responsable editorial:
VíctorManuel Ruiz Calderón
Alicia Cózar Concejil

Traducción:
Jorge Martínez Gil

Realización de cubierta:
Sandra Cordova Yusta

Tom Adelstein
BilKLubano-vic

an m
mm MULTIMEDIA

Este libro no existiría sin la contribución de muchas personas. Aunque es im-
posible incluirlas aquí a todas. En primer lugar, queremos dar las gracias a Andy
Oram cuyos esfuerzos de edición, redacción y gestión son destacadles. Aparte de
su trabajo como editor, Andy ha contribuido materialmente al contenido de este
libro. Andy ha ejercido como gestor del proyecto y ha demostrado paciencia
y
disciplina.

Tampoco podemos olvidar las contribuciones de Falko Timme, Phil Howard y
Herschel Cohén. Falki nos ha prestado su tiempo y experiencia en los capítulos 2
y 4. Phil ha escrito gran parte del capítulo 1 i y nos ha proporcionado el framework
Todos ios nombres propios de programas, sistemas operativos, equipos hardware, del capítulo 10 y el apéndice de los scripts. Herschel ha escrito varias secciones de
etc., que aparecen en este libro son marcas registradas de sus respectivas capítulos, entre los que están el capítulo 8 y 0, y ha contribuido con su expe-
1

compañías u organizaciones. riencia en el capítulo ó. Los tres, además, han revisado otras partes del libro.
Muchas gracias también a los expertos técnicos, que han pasado innumera-
derechos. contenido
bles horas revisando,probando y haciendo sugerencias sobre el trabajo: Markus
Reservados todos los El

de esta obra está protegido por que la ley, Amersdorfer, Keitb Burgess, Robert Day, Animar Ibrahim, and Yaman Saqqa.
establece penas de prisión y/o multas, además Y un agradecimiento especial a Yvonne Adelstein y Mary Lubanovic, nuestras
de las correspondientes indemnizaciones por esposas, que han demostrado una gran paciencia. No habríamos podido realizar
daños y perjuicios, para quienes reprodujeren,
este trabajo sin su apoyo.
plagiaren, distribuyeren o comunicasen publi-
camente, en todo o en parte, una obra literaria,
artística o científica, o su transformación,
interpretación o ejecución artística fijada en
cualquier tipo de soporte o comunicada a

través de cualquier medio, sin la preceptiva
autorización. Tom Adelstein comenzó su carrera en el mundo de las inversiones bancarias,
donde sus conocimientos técnicos ayudaron a algunas empresas de servicios fi-
nancieros a convertirse en líderes de su sector. Ahora es administrador de siste-
Copyright © 2007 by O'Reilly Media, Inc. mas y escritor técnico.
Authorized translation from the English language edition published by O'Reilly Media, Inc.
Bill Lubanovic comenzó desarrollando software para Unix en la década de
All rights reserved
1970, interfaces gráficas de usuario en la década de 1980 y para la Web en la
década de 990. Ahora trabaja en el área de visualización Web para una compa-
1

ñía de energía cólica.
© EDICIONES ANAYA MULTIMEDIA (GRUPO ANAYA, S.A.), 2007
28027 Madrid.
Juan Ignacio Lúea de Tena, 15.
Depósito legal: M-3 .807-2007 1

ISBN: 978-84-415-2234-3
Printed ¡n Spain.
Imprime: Artes Gráficas Guemo, S.L.

Febrero, 32. 28022 Madrid.

Agradecimientos 5 Sobre los autores 5 Introducción 15 Cómo se organiza el libro i 6 Convenciones usadas en este libro 17 Capítulo 1. Requisitos para un administrador de sistemas Linux 19 f Sobre este libro 20 ¿Cómo podemos ayudarle? 21 ¿Por dónde empezar? 21 ¿Necesita un libro? 21 ¿Quién le necesita? 22 Ayuda demandada 23 Analizando los conjuntos de habilidades 24 Qué deberían saber los gestores de sistemas sobre Linux 25 ¿Qué es lo próximo? 26 .

.... El sistema de nombres de dominio 61 Configurando un servidor y usuarios con ISPConfig 112 Añadiendo clientes y sitios Web 112 Aspectos básicos de DNS 61 Gestionando usuarios y correo electrónico 119 Ventajas de la administración localizada de DNS 62 Directorios públicos.. POP3 e IMAP 43 Qué es lo próximo 98 Haciendo funcionar Apache 54 Añadiendo servicios FTP con ProFTPD 56 Recopilando las estadísticas Web con Webalizer 57 Sincronizando el reloj del sistema 57 Instalando ISPConfig 102 Instalando los diferentes módulos Perl requeridos por SpamAssassin 58 Requisitos 103 Qué es lo próximo 59 Comenzando 104 Estructura de directorios de ISPConfig Til Capítulo 3...... Sendmail y otros MTA 132 Servidores de solo caché 74 El servidor SMTP de correo Postfix en Debían 134 Editando los archivos de configuración 74 Paquetes de Debían relacionados con Postfix 135 named... Contenido Contenido Capítulo 2... Configurando un servidor Linux muitifunción .... 27 El archivo de zona inversa 84 Búsquedas de prueba 86 Requisitos del servidor 28 Configurando el servidor de nombres secundario 88 Instalando Debían 29 Herramientas BIND 89 Autentificándose remotamente 31 nslookup 89 Configurando la red 32 rndc 91 Cambiando los paquetes por defecto de Debían 34 Resolución de problemas en BIND 92 Configurando cuotas 36 No se puede conectar usando rndc 92 Ofreciendo servidos de nombre de dominio 38 named se inicia pero no resuelve nombres 94 Añadiendo una base de datos relacional: MySQL 4 i No se reconocen los equipos 95 Configurando el manera segura con correo de Postfix........23 Componentes de BIND 63 Salvaguardando un servidor Web Linux 124 Configurando un servidor DNS 64 El papel de demonio monitorizador de demonios 125 Usando un entorno chroot seguro 66 r Instalando y configurando monit 126 Configurando un servidor DNS autoritativo 68 Qué es lo próximo 130 Su responsabilidad en DNS 69 Elmétodo distribuido para resolver nombres de dominio 69 Encontrando un dominio 70 Respondiendo consultas 71 Aspectos claves del servicio de correo 132 Servidores DNS primarios y secundarios 72 Postfix.. de usuario y de inicio 123 Introducción a BIND 63 Configuración del cliente de correo electrónico 1..conf 74 Instalando Postfix en Debían 136 El archivo de zona primaria 77 Configuración básica de Postfix 138 Mejoras y características avanzadas 80 Probando el correo 141 .

Clusters de carga balanceada 191 Archivos de grupo 167 Contenedores y alias 167 Balanceo de carga y alta disponibilidad 192 Rutas absolutas: Directorio 167 Software para balanceo de carga 192 Rutas relativas: Ubicación 168 IPVS en el balanceador de carga 193 Reconocimiento de patrones: Archivos Idirectord 194 y Comparación de archivos 168 Configurando los servidores reales (Nodos Apache) 195 Alias 168 Configurando el balanceador de carga 196 Límites 169 Probando el sistema 197 Tecnología de servidor 169 Añadiendo HA a LB 199 .10 Contenido Contenido 1 Añadiendo autentificación y encriptación 142 CGÍ 171 Autentificación SASL 142 Location 172 Configurando Postfix con SASL para autentificar Sufijo del archivo 1 72 usuarios con cuentas 143 Directivas específicas del módulo PHP 173 El demonio saslauthd 145 Hosts Virtuales 174 Configurando Postfix con SASL para autentificar Hosts virtuales basados en IP 174 usuarios sin cuentas 146 Hosts virtuales basados en nombres 174 Encriptación TLS 147 mod_vhost_a.lias 175 Configurando los agentes de entrega de correo POP3 e IMAP 150 Archivos log 176 Configuración del cliente de correo 152 División y rotación de logs 176 Qué es lo próximo 153 Dividiendo los logs con vlogger 177 Analizando logs con Webalizer 178 Capítulo 6. Administrando Apache 155 Encriptación SSL/TLS 178 Archivos estáticos y dinámicos 155 Soporte para suEXEC 180 Instalación básica de LAMP 156 Rendimiento í 180 Instalación 157 Instalando y administrando Drupal 182 Apache 157 Instalando Drupa! con apt-get 182 PHP 153 Instalando Drupa! desde las fuentes 184 MySQE 159 Configurando Drupal 185 Archivos de configuración de Apache 160 Resolución de problemas 186 Directivas de archivos de configuración 162 La página Web no aparece en el navegador 186 Directivas de usuarios y grupos 164 Los Hosts Virtuales no funcionan: 189 Directiva Listen 164 SSl no funciona 189 Directiva DocurnentRoot 164 Un programa CGI no se ejecuta 190 Autentificación y autorización 134 F SSL no funciona 190 Archivos de usuario 165 Capítulo 7.

. 235 Otras lecturas 282 236 Capítulo 11. Servicios efe red de área local 203 Capítulo 10. Scripting.. Virtualización en la empresa moderna. 255 Comenzando con bash 256 Sistemas de archivos distribuidos 204 Rutas y permisos 257 Introducción a Samba 205 La ruta por defecto 259 Configurando la red 206 Redirección de E/S 260 DHCP 209 Variables 261 Instalando DHCP 209 Elementos útiles para bash Scripts 263 Iniciando el servicio DHCP 212 Expresiones 263 Ofreciendo direcciones IP estáticas 212 Aritmética 264 Asignando direcciones IPv6 con radvd 213 If 265 Servicios de pasarela 214 Depurando un script sencillo 266 El papel de una DMZ 215 Bucles 269 Otra aproximación a los servicios de pasarela 217 Tareas cron 271 Servicios de impresión 222 Problemas con los lenguajes de script 272 Consideraciones sobre el software de impresión 223 Formato de los datos: El archivo /etc/passwd 274 Impresión en plataforma cruzada 223 Versiones de script 274 Controlando las colas de impresión desde la línea de comandos 226 El bash script 275 Gestión de usuarios 227 El script Perl 276 Eliminando a un usuario 230 El script PHP 279 Sellando el directorio personal 232 El script Python 280 Gestores gráficos de usuarios 232 Escogiendo un lenguaje de script 281 Capítulo 9.12 Contenido Contenido 1 Añadiendo otros servicios LB 200 Instalando VMware 246 Escaiabilidad sin LB y HA 200 Instalando sistemas operativos invitados en VMware 250 Otras lecturas 201 Virtualización. Haciendo copia de seguridad de los datos 283 Por qué la virtualización es tan popular Computación de alto rendimiento 237 Salvaguardando ios datos de usuario en un servidor con rsync 284 Continuidad comercial y gestión de la carga de trabajo 238 Aspectos básicos de rsync 284 Abastecimiento rápido 239 Haciendo un script para copias de seguridad de usuario 286 Cómo ayuda la virtualización 240 Listando archivos en el servidor de copias de seguridad 287 instalando Xen en Fedora 5 240 Restaurando archivos perdidos o dañados 288 Instalando sistemas operativos invitados en Xen 243 Copias de seguridad automatizadas 289 Fedora Core 5 243 Archivos tar 289 Otros invitados 244 Creando un nuevo archivo 291 . ¿una moda pasajera? 252 Capítulo 8.

Sonreí y continué Añadiendo usuarios trabajando. administración de sistemas Linux. Dijo que quería algo similar.0 Por la noche. Andy hablaba de un libro en el que cada capítulo mostrará a los usuarios los pasos para construir y desplegar servidores sin. y la cosa quedó ahí. nuestro director pidió al grupo una solución para índice alfabético 327 lagestión de parches. teníamos una idea ligeramente diferente de lo que queríamos hacer. Después en la conferencia. Sospe- cho que conversaciones parecidas a las que acabo de contar ocurren muy a me- nudo en muchos lugares. deseé tener este libro acabado para reco- mendárselo a toda esa gente que aunque poseía experiencia y habilidades. Quizás usted tenga experiencias similares y le hubiese gustado tener un libro como este a mano en aquellos momentos. Generador de contraseñas aleatorias 31. me respondió: "Simplemente 1 integrando ssh y screen 320 quiero aprender". quería aprender a administrar Linux. Me dijo que quería Enviando archivos entre sesiones shell 3 aprender Apache. se sentía un profesional incompetente porque nunca había aprendido 309 Linux. Decía Apéndice. Cuando Andy Orara. el otro hombre se giró y me miró. En ambos casos.una conversación entre dos compañeros de trabajo en nues- Replicando datos MySQL 304 tro laboratorio Cisco acerca de Linux. y yo comenzamos a debatir acerca de un libro para 1a. incluso diariamente. Bash Scripts de ejemplo 309 mientos. y cuando le pregunté por qué. Un poco después.14 Contenido Extrayendo datos de un archivo 291 Un ejemplo completo de compresión y descompresión con tar 292 Resumen 294 Guardando archivos en medios ópticos 294 Accediendo a su unidad CD-R 295 Opciones por defecto 296 Preparando los archivos para grabar un CD -R 297 Grabando el CD-R 298 Verificando el grabado 299 Copias de seguridad en DVD 300 Haciendo copias de seguridad y guardándolas en una cinta con Amanda 300 InstalandoAmanda 301 Configurando Amanda 302 Cuando Bill Lubanovic y yo estábamos dando los retoques finales a este libro Restaurando archivos replicados con Amanda 304 escuché. explicando y haciendo uso de rsync como ejemplo. nuestro director de Tecnologías de la Información me hizo un Búsqueda del DNS autor ilativo 312 comentario improvisado y nada usual durante una conferencia. mientras entraba en detalles acerca de una herramienta para la gestión de parches de manera incrementa! y acumulativa. entrar en deta- . Uno de los dos era experto en redes y hacía una puntualización muy que a pesar de todos sus conoci- interesante. sin quererlo. y en muchos otros.

Haciendo copia de seguridad de los datos: Presenta un nas que preguntan qué tienen que hacer para conseguir que CLIPS o Samba fun. Los foros de Linux se llenan de perso. por ejemplo Con- Repasa los objetivos del libro y qué se conseguirá al leerlo. Para ayudarle a sacar el mayor partido al texto y saber dónde se encuentra en cada momento. con la cantidad de gente que usa Linux a día de hoy sin tener la menor idea de cómo escribir un archivo de configuración. a internet mediante un demonio de inicio. URL y código incluido en texto se muestran en un tipo de letra monoespacial. trol-A. quiere convertirse en administrador. ® Los nombres de archivo. todavía me sorprendo tración. No creo recordar ninguna lista de ware para pasarelas en redes de área local (LAN). VMware en un equipo Linux y luego añadir sistemas operativos Web como que están disponibles hoy en día. libro evolucionaba. sistemas Linux. de configuración de Apache con el servidor de IP Virtual y Idirectord para sario que lea este libro de principio a fin para convertirse en un administrador de ofrecer gran capacidad. No es nece. los invitados. Los trucos. sentíamos que se estaba cumpliendo este objetivo.000 en todo el planeta. Scripting: Muestra algunas técnicas básicas para escribir propio sistema o estaban aprendiendo. cionen. introducción introducción lies. A medida que el • Capítulos Clusters de carga balanceada: Extiende el capítulo previo 7. tir allector completar los módulos que quisiera o que necesitase. cuadros de diálogo y demás elementos de la interfaz de las aplicaciones se muestran en un. puesto que hemos escrito este libro pensando en usted. El sistema de nombres de dominio: Muestra ios aspectos básicos para configurar servidores DNS primarios y secundarios. ficación SASL. Me estoy refiriendo a una época en la que script potentes y robustos que pueden ahorrar mucho tiempo de adminis- los usuarios de Linux eran unos 30. incluyendo autentificación SSL. amplio rango de técnicas para realizar esta función crucial. relacionada con el texto adjunto. desde el rsync básico y el tar hasta el potente sistema Amanda. Si usted ya usa Linux a nivel de usuario. submenús. ° Capítulo 11. JBoss y Monit. Administrando Apache: Proporciona una visión rápida de pasos técnicos. sugerencias y comentarios afines Capítulo 5. Servicios de red de área local: Muestra cómo gestionar Cuando yo empecé a manejar Linux. un servidor POP y un servidor 1MAP. Capítulo 3. En gente mantiene debates acerca de detalles técnicos de las listas de correo. Bash scripts de ejemplo: Contiene unos cuantos shell Scripts proyectos como Postfix. No teníamos conexiones ni navegadores finir Xen. MySQL y PHP (a la que junto con Linux Después. a lo largo del libro utilizamos distintas convenciones: Capítulo 1. la • Apéndice. Un entorno para Internet: lisa el software de inicial listo configuración ISPConfig para introducirle en un conjunto de servicios con los que podrá practicar mientras lee el resto del libro. Nota: En estos cuadros incluye información importante directamente se. Requisitos para un administrador de sistemas Linux: ^ Las combinaciones de teclas se muestran en negrita. Él proponía debatir primero acerca de los capítulos y luego acerca de los ® Capítulo ó. comience por donde le interese. la popular combinación Apache. ® Capítulo 8. la comunidad estaba compuesta en su usuarios y configurar elementos de red comunes. Los botones de las distintas aplicaciones también se muestran en Capítulo 2. . Correo: Configura un servidor de correo Postfix con autenti- relacionados con el tema analizado se reproducen en este formato. tipo de letra Aria! Capítulo 4. Configurando un servidor Linux multifunción: Le inicia en el manejo de servidores sencillos para Internet. este libro le ayudará en la transición. yo propuse que hiciéramos de cada capítulo un módulo y así permi. opciones. La gran mayoría de la gente que yo conocía o eran administradores de su • Capítulo 10. se le llama servidor LAMP). tales como DCHO y soft- mayor parte por programadores y aficionados. discusión que se centrará en aplicaciones comerciales o de escritorio. « Los mentís. consejos a tener en cuenta a la hora de escribir tus propios scripts. Simplemente. y quiere ir un paso más alió. Accedíamos Virtualización de la empresa moderna: Muestra cómo de- • Capítulo 9. es decir. Muchas personas aún sienten curiosidad que nos han sido útiles para administrar sistemas y también proporciona por aprender las grandes posibilidades de Linux como plataforma de aplicaciones.

pero no por ello menos importante.000 personas que había en 1995 hasta los cien- tos de millones que hay a día de hoy. Linux es probablemente aspectos abarca de todos los sistemas el que más operativos. equipamiento médico. sistemas embebidos. puede que sea un veterano de Unix. Muchos administradores de Windows y de Novell vieron que Linux podía manejar DNS. y especialmente la Web. informática de escritorio. En un período de tiempo relativamente corto. un bravo MCSE o un estoico administrador de. muchos ahora olvidados. Es una plataforma . un buen sistema de escritorio y el centro en torno al cual gira mucho de la innovación del mundo informático actual. Linux es nuestro favorito. Durante el boom de Internet en la década de 1 990. muchos administradores de Unix se sorprendieron gratamente al descu- brir que un Linux sobre un PC podía hacer las mismas tareas que carísimas esta- ciones y servidores UNIX. El crecimiento de Internet. De tocios los sistemas Unix y parecidos a Unix que hemos usado. No obstante. correo electrónico y servicios de archivos más eficientemente y con menos soporte humano que sus diferentes plataformas. Linux ha pasado de ser el pasa- tiempo de un hacker finlandés a un sistema avanzado de nivel empresarial res- paldado por gigantes como IBM y Oracle. Este libro es para administradores de sistemas Linux. Nos gusta Linux. desde sistemas pequeños teléfono móvil hasta clústeres de como un computadores más grandes que un edificio. satélites. servidora excelente. Está presente en los campos de las telecomunicaciones. . siste- mas militares y gráficos por computador. sirvió de combustible para la rápida expansión del uso de los servidores Linux y la necesidad de personal para gestionarlos. y por último. La base de usuarios ha crecido considerablemente desde las 30.

tribuidos y las aplicaciones no se enseñan en los colegios. Como dice el refrán. quier parte. le todo de la manera más difícil. y deberá la gurar un sofisticado centro de aprendizaje sobre hardware que en muchos sitios ser capaz de hacer copias calientes en sistemas 24 x 7. documentación técnica. Los libros técnicos han adquirido popularidad a medida que Internet ha ma- mentación para proyectos abiertos es sorprendentemente escasa. principio hasta el final. donde publicaremos actua- lizaciones de los ejemplos.org. sistemas de archivos. y mantendremos para escalar la curva de aprendizaje de Linux. enlaces a nuevas y útiles herramientas que vayamos descubriendo y otros consejos. por ejemplo los clústeres de carga balanceada y la virtualización. Nosotros comenzamos con una caja que conte- Si ya ha realizado muchos simulacros de incendios. puede dirigirse Los libros de administración de sistemas suden ser fácilmente predecibles. come al elefante de una vez y luego saboréalo. Para eso es exactamente para lo nuestros experimentos hasta después de que el libro esté terminado. todo esto les parecerá como las instalaciones de PC y mainframes tradicionales. Pero está explorando un nuevo territorio y necesita mapa y com- pás. Algunos aspectos le sonarán familiares. Google. durado. Los productos co- merciales suelen cumplir los protocolos del RFC original.centralsoft. auten- crear un ciuster para servicios Web o reforzar los servidores gracias a ia tificadón distribuida y otros detalles complejos. Aunque ya sabrá aplicar parches y corregir fallos. paso por paso. pero la buena docu. Si añade una base de datos. Si es de los que están en esta categoría. tendrá que aprender rápidamente capítulo siguiente. y suele pecar de ser demasiado abstracta. Este libro resume pasos que tiene que seguir para desplegar servidores los Sobre este libro autónomos. virtualización. balanceado de carga. redes. Si su sitio Web se convierte en popular. A escalar una montaña de 10. y ampliar sus posibilidades profesionales. No tiene que leer "Administración de sistemas Linux" desde el Enseñan cómo gestionar usuarios. desde Linux en el a usar servidores proxy. Pero no indican qué tiene que hacer cuando surge un pro. puede leer los otros temas del libro hardware manejable y relativamente pocos administradores en comparación con algunos. pero tendrá que hacer frente a nuevos retos técni. procesos. Por ejemplo. ne. Este libro cubre muchos temas que se acaban de añadir a la tendencia Las personas que trabajan en Linux resuelven problemas. Linux puede levantar un pequeño servidor. unas veces más amarga y otras más dulce. a manejar su propio DNS o a cambiar Exchange por Zirnbra. que estamos: para ayudarle a explorar el sistema Linux sin tener que pasar por Invitamos a los lectores a que visiten el sitio Web que hemos levantado por experiencias traumáticas el libro. Un usuario medio de actual.000 metros. el sitio se ha convertido en una misión crítica. y una versión sin extras cos prácticamente a diario y con la ayuda de muy pocas fuentes de ayuda. http://www. a la mitad del libro. Amazon. impresoras. pusimos una versión antigua de discos duro y memoria. Si necesita levantar un servidor de correo. la manera levantar un servidor blema. ya sea de software comercial o software libre. el autor tiene que proporcio- . dispositivos. crear un servidor Web con capacidad para blogs o configurar una pasarela para su LAN. registrar un nombre de dominio y poner en marcha el servidor en cios. usuarios y recursos. Hacer funcionar un sistema operativo moderno es muy barato. pero otros serán una tierra sin ex- plorar. rara vez tiene que ver con la tecnología. cesitará saber cómo ampliarla y aprender a evitar los ataques de inyección SQL. Comenzaremos explicando. Para conseguir un libro de éxito hoy en día. obtener una conexión con una IP está- El éxito de Internet y del software de código abierto está cambiando los nego- tica en su casa. necesitará ayuda probando las últimas distribuciones y herramientas. consideran obsoleto y lo regalan. estará cansado de hacerlo nía una CPU de Intel dos generaciones más antigua que los modelos actuales. eBay y otros han levantado granjas de servidores con Internet. sino que se aprenden de Quizás tenga certificaciones de otros sistemas operativos distintos a Linux. aquí aprenderá a desplegar el servidor Apache. Nota: Mientras escribíamos este libro hemos estado de forma constante Si solo quiere aprender o tiene la obligación de aprender. La y gratuita de Linux. Si no es uno de ellos. diferentes niveles de caché. ios servidores de directorios de código abierto se han convertido en algo importante para gestionar ordenadores. la experiencia. Puede elegir ei camino que le convenga. Requisitos para un administrador de sistemas Linux Requisitos para un administrador de sistemas Linux mainframes. comience por cual- Los conocimientos necesarios para desarrollar y mantener tales sistemas dis. Puede confi- De noche a la mañana. etc. hasta configurar un servidor para una red de área local.

Almacenamiento. ción de trabajo y en pequeñas redes. a día de hoy da soporte a un 75 por 100 de los 500 supercomputadores bases de datos. De SMTP. sistema operativo que más supercomputadores hace funcionar en el mundo. ofre- y los administradores de sistemas Linux aprendían el funcionamiento en una esta. administrar la infraestructura del servidor Linux para Hace unos cuantos años. Los clústeres para computación de alto rendimiento basados en Linux se diseñan para mejorar • Interactuar con otros grupos de soporte interno como el de Control de el tiempo de respuesta de aplicaciones. la personalización y la gestión. configurary solucionar los fallos relativos al hardware. la administración de sistemas Linux involucra a miles de paque- • Gestionar todos los aspectos relativos a la integridad del entorno. cer soporte para ampliaciones. esperamos que esta tenden- críticos. Nosotros solucionamos mu. en- trenar y tutorizar a los administradores noveles. NFS. Según el Lawrence Livermore National Laboratory de ros sitios de comercio electrónico ayuda a explicar qué debería ofrecer un libro. • Ofrecer consejos y aportar soluciones tecnológicas a la organización. inclu- tes y ia interoperabilidad con otros sistemas operativos. pero no una documentación adecuada para el código por varias razones: falta de tiempo. Administradores de Ba- tiempo y del cambio climático hasta la simulación de fenómenos astrofísicos. con énfasis en ia automatización y en la monitorización. revistas y la experiencia de amigos. LDAP. yendo la seguridad. • Ofrecer soluciones a los problemas que puedan surgir en la red. su línea de teléfono estaba colapsada. Se dieron cuenta de que se necesitaba un esfuerzo considerable para hacer sus propios pasteles y por tanto vieron el valor de comprárselos a la compañía. SAMBA. con énfasis de aparecer este libro. FTP. grupos de discusión. Muchos proyectos excelentes tienen una documentación inadecuada. La gente empezó a pedir muchos pasteles de queso. Entre estos sistemas se incluye el BlueGene/ días de la Web. Los 41 Supervisar el diseño físico de las bases de datos. documentación. en el rendimiento. que van desde el estudio del Cambios. el supercomputador más potente. Linux era como un Unix adolescente. y ahora se las ofrecemos. en coma flo- tante por segundo (TFLOPS) en su configuración de alto rendimiento. Una historia interesante sobre uno de los prime. sino que. miles de tareas que un administrador Linux puede desempeñar según un sitio dos de libros. Una compañía que fabricaba tartas de queso puso un anuncio en los primeros todos incluidos entre la lista de los 500. Desarrollo de Aplicaciones. dar sopor- la barrera del lenguaje. Ingeniería. Linux íes había escogido ellos « Instalar. así como maximizar la eficiencia del entorno. la monitorización (de 1a capacidad y del rendimiento). Los administradores Linux están muy solicitados. el control de cambios v la gestión del software. falta de recursos. La mayoría de equipamiento necesario para mantener la integridad del sistema. Linux es el 8 Administrar servicios de infraestructura como: DN5. su administración y su desarrolladoreshan trabajado mucho para ofrecer un excelente software libre. topBOO . que actualmente ocupa el recibiera un pedido. ¿Quién necesita administradores Linux? El centro para ciencias de la compu. que hay en el planeta. esta pequeña parcela del mundo de la informática. He aquí algunas de las responsabilidades: chos problemas cuyas soluciones estaban completamente indocumentadas antes ° Administrar y gestionar un gran entorno de servidor Linux. el presidente de la compa. editores y revisores. hemos recopilado una pequeña selección de algunas de las listasde correos. y servidores de aplicaciones y de hecho. Linux heredó algunos servidores de Unix • Ofrecer soporte efectivo de primer/segundo nivel para entornos Linux a (BINO. Livermore (California). y el Thunder. Operaciones y la arquitectura de la NCSS soportar hasta 4 billones de operaciones Centros de Órdenes. Apache). nes. falta de interés. Postfix/Sendmaii. Servicios Web. Para que se haga una idea de Muchos de los ingredientes de este libro han sido recopilados de Internet. te a la ampliación de servicios y la monitorización proactiva de sistemas Junto con nuestros lectores. Según la historia. pasaron varios meses sin que la compañía L. puesto diecinueve (http: //www. de que se espera de ellos. al menos en. pero también software de oficina algunas aplicacio- y través de sus servidores. etc. . Hoy en día. 22 Requisitos para un administrador de sistemas Linux Requisitos para un administrador de sistemas Linux nar un valor añadido al lector. mientras que otros han sido extraí. la monitorización. • Ofrecer soporte técnico diario y resolver consultas relativas al hardware y al sistema operativo. la mayoría de los administradores de sistemas Linux mantener la estabilidad. ñía publicó la receta secreta de la tarta de queso.org/list/2006/11/100). En aquellos tiempos. NIS. Sendmail. dedan que no había escogido esta carrera. tación de la NASA (NCSS) y el Centro para vuelos espaciales Goddard. cia disminuya. Seguridad. foros. Linux se ejecuta en 10 de sus sistemas más robustos. En un movimiento mida común. Linux permite a ses de Datos. Web de una agencia nacional de empleo. periféricos a ellos. Al cabo de unas horas.

Sin embargo. en el área de la administración de sistema. Fíjese deberían saber es que Linux no es Unix. también puede ejecutar un amplio rango de LDAP. han incrementado el tráfico en productividad a la hora de acometer un amplio rango de tareas de manera rápida detrimento del correo electrónico. De la lista de com- servicios". do entre un gran número de componentes que hacen trabajos similares. normalmente no han podido desarrollar su labor correc- y electrónico representa 70 por 100 de todo el tráfico de Internet. La mayoría de los administradores de sistemas Linux de- MTA. El correo conseguido un trabajo. además de las telecomunicaciones la movilidad. pocos centros nar. aplicaciones sobre redes públicas y privadas. como así lo evidencia la creciente de. ayudándole a mejorar su y otras formas de comu- nicación. Continuemos analizando las responsabilidades laborales descritas en la sec- ción previa. pero éstos están fueran del backbone de correo a gran escala o simplemente una aplicación Web para mane- alcance del libro porque no son de naturaleza técnica. Pero una gran parte administradores Linux tiene un conocimiento mucho más amplio de sus siste. Aunque Linux puede ejecutar la gran ponentes Linux que es necesario saber. debe jugar el administrador del sistema y obtendrá una gran variedad de res. y los profesionales de Linux. jar formularios del tipo "Contacte con nosotros". Otros libros de O'Reilly y que deberían saber los profesionales de Linux. El mercado se ha visto sorprendido por el hecho de que la mayoría de pués de estudiar los aspectos básicos. dejando incompletos ciertos programas siempre suelen descubrir que no es así. debido a la naturaleza del software del código abierto. sino el miembro de un gru- Pregunte a distintos gestores de sistemas de información sobre el papel que po capaz de tomar decisiones. Los administradores Linux tienen menos de grado. Requisitos para un administrador de sistemas Linux Requisitos para un administrador de sistemas Linux Linux es ahora una plataforma estándar encuadran dentro de la categoría de "habi- y el talento no abunda. mayoría de los programas Unix. cuando estos administradores autodidactas han gestión de sitios Web. Por ahora. ofrecen cursos de Administración Linux. asuntos más importantes. La mayoría de las transacciones están relacionadas con el correo y la dido por sí solos. Esta es un área a la que aplicaciones de banda ancha como la Voz sobre IP (VoIP) Administración de sistemas Linux puede contribuir. dependiendo de si quiere una aplicación para trabajo colaborativo. Sin embargo. es decir. Pero a pesar de los protocolos las aplicacio. Ingeniería. del material existente no incluye lo que los expertos en Linux consideran ios mas. puede elegir entre muchos del sistema operativo. La ultima tarea ("Administrar servicios de infraestructura") puede darle una idea del conjunto de habilidades necesarias en Linux. y y nes multimedia. incluyendo la mensajería instantánea. Los administradores de Linux pueden configurar las distribuciones escogien- Las otras descripciones de trabajos se ajustan más a la categoría de necesida. Las tareas de los administradores de sistemas muy a menudo involucran a La mayoría de los administradores Linux son autodidactas. nadie esperaba que un administrador de sistemas manda de trabajadores con conocimientos de administración Linux. un administrador de sistemas no es sólo un técnico con conocimientos de algunos sistemas misteriosos. Ellos no saben qué es lo des en este libro. ponentes en próximos capítulos. problemas para adaptarse a Unix que al contrario. Hoy en día. Quizás cubramos algunas de esas habilida- estos gestores carecen de conocimientos acerca de Linux. Sendmail es la única opción como agente servicios escalables. porque no sabían todo lo que tenían que hacer. lidades ligeras". Administradores de Bases de datos o Servicios Web. Pero con Linux. FTfJ SMTP y Postfix/Sendmail. miento experimenta y donde no parecer existir una adecuada documentación. las el tamente. Uno normalmente consigue unas habilidades básicas y espedaiizacion. un berían poseer habilidades para ofrecer estos servicios. han apren- Internet. le introduciremos vez entienden a estos gestores.es des- puestas. Por lo que si usted quiere aprender administración de sistemas Linux. puesto que es la que mayor creci- Muchos gestores de sistemas de información que entienden Unix quieren adap. En el pasado. Aunque los administradores Unix crean que la migración a Linux es fácil. pero creemos que ese no es el objetivo. Internet sigue siendo el dominio principal de Linux. Una explicación es que los tiene que buscar materiales y cursos fuera de la universidad. Cubriremos la mayor parte de estos com. en casi todas las distribuciones Unix. Las empresas quieren administradores de sistemas que puedan manejar "infraestructuras de Una de las primeras cosas que los gestores de tecnologías de la información en las tecnologías de internet involucradas. Sí quieres El resto de las responsabilidades se aprender Linux podrás mejorar tu salario. Esto no sude funcio. rara el tiempo le ayudarán a adquirir esas habilidades. soporte técnico y consultor para el entorno del hardware y de transferencia de correo (MTA). la mayoría de las tareas involucran DNS. eficiente. Por ejem- des internas de la empresa. contrarío que en otras disciplinas de informática y de ingeniería. . Entre ellas se incluyen el soporte para el diseño de plo. aprendiera a funcionar corno enlace con otros grupos internos de soporte como el de Desarrollo de Aplicaciones. Al tar a los administradores de Linux a los estándares de Unix.

se adaptan rápidamente y tienen unos conocimientos que no po- seen otros tecnólogos. Requisitos para un administrador de sistemas Linux Una prueba más de la flexibilidad de Linux es que es el primer sistema operati- vo que IBM ha escogido para funcionar en todas sus plataformas hardware. ¿Por qué? Por- de recetario de cocina y guía de viajes. configurarlo y empezar a ofrecer servicios Web. elmanejo de correo local y el ofrecimiento de acceso remoto. Si usted quiere aprender admi- nistración de sistemas Linux. Queremos proporcionar un servidor de trabajo que pueda realizar muchas de las tareas que necesita apren. Pero no sea demasiado exigente con ellos. que se estuvieron en clase un día y luego empezaron a desplegar Linux en ordenadores IBM de la serie zSeries. es que aprenden rápidamente. desarrollo.390 y los mainframes zSeries. Las primeras veces. No tendrá la interfaz gráfica del sistema X Window y tendrá que usar comandos en lugar de hacer clic sobre iconos. Su trabajo se hará en modo consola. Hay una diferencia real entre leer algo y hacer algo. sigue nuestros pasos. si su ISP le facilita una dirección IP estática. una pasarela o un servidor de archivos y de impresión? Sea lo que sea. podrá (de hecho estamos sorprendidos de que haya llegado hasta este punto del capítu- disfrutar de una buena base para practicar y aprender Linux. Si hay algo que la gente de Linux puede ofrecer. Así es que. desde la interfaz de línea de comandos. hasta el S/. In- cluso puede convertirlo en su propiositio. Aprenderá a desplegar un servidor Web como si al añadir servicios como correo electrónico o bases de datos. desde las series de servidores Intel xSeries o las pSeries y las iSeres. empezaremos a configurar un servidor listo para gran variedad de funciones dependiendo del chasis y de otras características. como mientras aprende. Normalmente. el sistema y de correo sin importar para qué sea el servidor (incluso aunque esté destinado al fuera un personaje distinto. 1PL para arrancar el sistema. ¡Adelante! Configurar un servidor para Internet cambiará su perspectiva de la informá- tica. que es lo que este capítulo describe. Si des para el alojamiento Web. Es Internet en el siguiente capítulo. ¿Usted necesita un servidor Web. lagestión y autentificación de usuarios. una plataforma de soporte de una LAN) y aquellas herramientas que le serán útiles para comenzar. "catalog" para un directorio y "lista de comandos" para una interfaz de comandos. El sistema operativo Linux se parece al eje de un coche que puede tener una der y usar. Administración de sistemas Linux es una combinación servidor que funcione en Internet y que pueda albergar sitios Web. Puede ofrecer facilida- pítulo y luego los pasos y las aplicaciones concretas. Pueden aprender a manejar un sistema Microsoft en me- nos tiempo que lo que tardaría un MCSE en aprender una simple tarea de Linux. explicaremos los conceptos al principio del ca. necesita un servidor. Una vez desplegado. Por ello muchas escudas disponen de laboratorios para impartir las clases. como servidor de archivos y de impresión o como cortafuegos. usted podrá disfrutar de su desayuno que es posible adaptar un servidor de Internet a muchas tareas adicionales. Por este motivo. por lo que empezaremos lo más rápido posible. la compartición de archivos y de impresoras. Vamos a comenzar con un encontrará casi a diario. Si quiere un administrador de Linux y usa grandes sistemas IBM. . El resto del libro amplía algunos de los temas e introduce otros con los que se necesita un núcleo. Podrá resolver su problema después. debido a que no están acostumbrados con los términos y los conceptos. Desplegar una red de área extensa (WAN) es distinto de usar Linux como equipo de escritorio. Si sólo quiere seguir paso por paso las instrucciones. la primera tarea de Sabemos que no le gusta el aprendizaje a paso lento ni los contenidos densos este libro consiste en desplegar un entorno básico. su candidato debe saber arquitectura de mainframes y estar familiarizado con términos como DASD para almacenamiento en disco duro. los administradores se confunden al configurar el servi- dor. puede hacerlo. le aseguramos que irá en la dirección correcta. Una vez asistimos a un se- minario de dos días con un grupo de administradores de Linux. lo).

una CPU más moderna y memoria adicional mejorarán el rendimiento. por defecto le mostrará una pantalla que le permite configurar la red de manera manual. Después de que inicie el equipo con el CD-ROM de arranque de Debian.x). Para ios pro- un servidor Seguidamente. mos usar una distribución estable de Linux. necesitará a internet y una dirección IP estática. puede continuar con las tareas de insta- lación hasta que complete la instalación básica. seguir CD con núcleo Netlnstall.0. verá Es difícil para alguien retener información compleja en una primera lectura. Si tiene registrado un dominio y una dirección IP estática. con al menos una CPU Pentium II con un 8 Agentes de transferencia de correo (POP3/POP3/IMAP/IMAP). ® Un servidor DNS (BINE) 9). Si sigue las instrucciones de este capítulo. gurarla estáticamente. una dirección IP. Debian propone el libro. por si necesita cambiarla mientras el sistema está ejecutándose. y esta experiencia le ayudará a seguir el curso que figurar su red con DHCP. una pantalla de autentificarión. necesitará uno. Configurando un servidor Linux multifunción Configurando un servidor Linux multifunción Nota: Como parte de nuestra estrategia para enseñar administración. probablemente verá comandos y conceptos con los que no está familiarizado. Ahora que ya ha configurado su red. llegará a la Web. Cubriremos cada terna con gran detalle en los lacióíi.4. bre de dominio. El script de instalación de Debian le guiará a través de las siguientes secciones. Debian primero sugiere con- siguientes capítulos. Asegúrese de que sabe el tiempo que dura dicha dirección. probablemente no quedará satisfecho con la información ele este capítulo. está listo para continuar. También Red Hat y usan esta herramienta basada en Web para gestionar los servidores Linux que SUSE usan herramientas de gestión propietarias que crean dificultades para trans- alquilan a los clientes). 0 Un servidor FTP ProFTPD ( ) También necesitará un ordenador.Cuando llegue a la pantalla Configure su red. Puede usar casi cualquier distribución de Linux para configurar pantalla de particionamiento de disco. cree sólo una el . Sólo necesi- introduzca datos sin pensarlo antes. un nom- Usted y su servidor se encuentran en la puerta de un nuevo mundo. Le guiaremos para que no Asumimos que sabe cómo hacer una instalación de red de Linux. Hemos elegido Debían partición con punto de montaje / (barra porque quere. pero puede obtener Debían gratis. usaremos Debían. Se le preguntará el nombre de host que quiere dar al servidor. Aunque intentaremos explicar todo lo tará unos cuantos pasos para configurar su instalación base. En este ejercicio. ineficiente. Si no tiene registrado un nombre de dominio. Nota: Durante el proceso de instalación. estática. tendrá la posibilidad de configurar ios servidores a su medida. Puede hacerlo si dispone de DHCP. que proporcionamos es una buena base para iniciarse en Linux. de servidor. 8 Analizador para estadísticas Web. puede configurar el sistema con la dirección cedida por su ISP y confi- s Un servidor de correo (Postfix). Por lo que no estará limitado a una pantalla en ferir conocimiento Linux. Su sistema dispondrá de: Para configurar un Servidor de internet sobre Linux. blanco y negro. una máscara de red y un nombre el de Linux. una pasarela. Una vez que haya aprendido a instalar. El sitio Web de Debian (http //www debían org) el : . obtendrá un marco para hospedar una conexión sitios Web que podrá adaptar a otros propósitos. Si no es así. pósitos de este libro. le permitirá retener suficiente información sobre la materia que programa de instalación le guiará a través de una serie de pantalla de insta- El más tarde podrá asimilar.6 del kernel que es más reciente que la antigua versión 2. Asegúrese de introducir Iinux26 para así traba- Así es que. aunque aconsejarle los comandos a introducir puede parecer jar sobre la versión 2. las instrucciones ofrece imágenes de CD descargabies. mínimo de 256 MB de RAM y 10 GB de disco duro. Las principales distribuciones co- le enseñaremos cómo disponer de una herramienta basada en Web para el merciales (Red Hat Linux y Novell Suse Linux) tienen precios que los alejan de la sistema en el próximo capítulo (los proveedores de servicios mayoría de los usuarios. Puede aprender más sobre el comportamiento estándar de Linux usando Debían que usando SUSE o Red Hat. así es que comencemos. posible el proceso de instalación. Si no puede conseguir una dirección ÍP s Un servidor Web (Apache 2. Aunque hay muchas formas de configurar un servidor Web remoto. Recomendamos usar un Este capítulo se basa en la versión estable de Debían. Obviamente.

los administradores de sistemas tienen la práctica común de no entrar en el sistema como root. . Verá una lista de lugares. Los buzones de correo de Unix son más fáciles de configurar. yv MTA: Sendfnaii y Alternativas ' > ' obtener un nombre de dominio inicialmente. elija la opción Sin configuración. ie pregunte "¿Realmente quiere dejar el sistema de correo sin configurar?" Finalmente. Muchos vendedores ofrecen sus servicios a precios bajos y otros los ofrecen gratis. Debían le pedirá que añada un usuario sin privilegios reemplazar. de las Nota: La instalación básica de Debían que estamos usando tiene tíos secciones api unciones de software libre esperan que Peodmati este instalando me! . por lo que de servidor Linux: momento será con los que trabajemos. en la última pantalla que tiene que ver con Exim. mota de su escritorio. $ ssh admin@serverl. como si estuviera en un sitio en producción. Si instala I i i i i transfiere archivos desde el CD-ROM hasta el disco duro. 1loy en cha. Ral lía! \ Adoso I vienen con un programa que permite ai ostia no a mina. Usaremos el usuario de ID admin en otros capítulos. es decir. porque un servidor seguro nor- en el recuadro Servidor de correo. usó en Desde este punto en adelante. cliente libe.im porlbstfix. elija la opción de finalizar el particionamiento y es. Por razones de seguridad.explicaremos De todas formas usted no estropeará su sistema a! Después de reiniciar. desde otro sistema (incluso desde un portátil). que puede ejecu- sistema ínstale los paquetes por defecto hasta que llegue a la opción donde se vea tar aplicaciones sin Acostúmbrese a administrar su servidor monitor y sin teclado. En la máquina remo- Debería instalar el cliente libe con el buzón de correo de Unix en lugar del ta necesitará solamente un cliente SSH. la práctica. i sistema operativo.s ib i. que le permitirá autentificarse y usar el comando su para . a menos que necesiten recuperar el sistema tras un fallo. la j .org (70. 3 USD. ! í. Los buzones de correo Unix mantienen todo el correo en un y que puede descargarse para otros sistemas operativos. incluido en todas las distribuciones Linux soporte maildir. Mientras tanto. Necesitará dos servidores DNS registrado para [ . I Red Hat. Sin embargo.org Debían también querrá que configure Exiin como agente de transferencia de The authenticity of host 'serverl. i Los gestores del proyecto Debían eligieron Lxim como d MIA por defirió porque su creador le otorgó la licencia pública CPL. todos ios procesos en thuix que están vrdacíoi jados con fi correes así ¡ involucran archivos de configuración. Ponga el nombre de Administrador y el ID admin. Sustituiremos Exim con Postfix un poco más be established. Busque en internet las palabras "registro de dominios". . Ai igual que Porihv los archivos almacenados en el disco duro. convertirse en root. pero no lo haga. ' ? Exim es un sustituto para Sendmail. Snuimuil es de hecho de nombres secundario. la instalación continúa usando la instalación. ixi primario y una copia o un servidor DNS secundario. No use la misma contrase- Cuando finalice la instalación. de esta forma. Recomendamos que realice las labores de administración Cuando ponga el cursor llegue a la pantalla de selección de software Debían.centralsoft..centralsoft. Luego elija Sí cuando el script criba los resultados en el disco. podía descaí gar.Smdruaii se instala por defecto.158. Sendrmdl. pulse la barra de espacio y permita que el malmente se ejecuta en lo que se llama modo headless. y la m a y es ría. Ahora continúan unas cuantas pantallas de instalación. ' repositorios de Debían. . comerlo prueban las primeras disinbuciom'. aunque nombre de dominio si no tiene un servidor físico que ie ofrezca un servidor ! otras distribuí iones lirmx: usan Srndínoil por defecto. Cada dominio que registre necesita un servidor DNS i ' d andar MIA. común es usar Post hx. le pide que extraiga el CD-ROM que ' . que le permite arrancar el disco duro y obtener una pantalla de root. distintas. De hecho. cuando llegue a la pantalla que dice Con- una partición. Elija la opción que pone todos los archivos en tarde en este capítulo. a Rostí ix aunque i debe hacerse de manera manual ' Una vez que primera sección termina. introduzca el Nota: Puede obtener un nombre de dominio desde multitud de fuentes desde nombre admin y el correo electrónico del root y del administrador de correo. archivo simple.253.42)' can't correo (MTA). que le solicitarán que .Posthx desde los durante la instalación. La primera instala lo que algunos llaman el motor GNU/Linux. .mux. debería acceder al sistema desde la consola re- ña para admin y para root. Ex. Además i Probablemente sea una locura r c e rn p aza r S c k rn a por otro MIA. mientras que maildir mantiene cada mensaje en un archivo dis- La siguiente salida se produce cuando usa por primera vez SSH en su nuevo tinto. También puede usar otro El proceso de instalación por defecto de Debían gira en tomo a Exim. taro. por muchas razone s que más reinicie el núcleo para finalizar la instalación. figurando Exim v4. Configurando un servidor Linux muitifunción Configurando un servidor Linux muitifunción invertida) y una partición swap. Finalmente.

8-2-386 #1 Thu May 19 17:40:50 JST 2005 Í686 GNU/ Linux # instaliation # (network.258. .42 a la interfaz ethO. lo haremos más tarde en este capítulo.158.45 acceso a Internet. . En este punto.org serverl iface lo inet loopback # The first network card . 258. vamos a usar la dirección IP 70. 153. .253.1. ’ auto lo i face lo inet loopback to the list of known hosts.0.153.1 localhost localdomain . # /etc/init . to the extent netmask 255.255. d/networking restart Necesitará editar /etc/resolv conf y añadir nameservers para resolver los . 153. reinicie la red introdu- ciendo esto: tareas como si estuviera delante del monitor de su servidor. (RSA) .8 si quiere explorar la configuración de red de Linux.153.258. su servidor DNS no indicará quién es la autoridad para su sus necesidades.42 serverl.org > /etc/hostname archivo para que quede así (deberá preguntar por esta información a su ISP): # /hin/hostname ~F /etc/hostname . # (network. ha establecido una conexión remota y puede realizar Después de editar /etc/network/interf aces file. puede quitar cualquier monitor. ahora debería configurar su mínimo.conf iguration file for ifup(8).153. nombres de host relacionados con la correspondiente dirección IR Aunque no hemos configurado nuestro propio servidor de nombres.6.46 Llegados a este punto. and gateway are optional) The nrograms inciuded with the Debian GNU/Linux system are free software auto ethO the exact distribution terms for each program are described in the iface ethO inet static individual files in /usr/share/doc/*/copyright address 70. en vertirse en root editar el archivo /etc/network/interf aces de acuerdo a y caso contrario. ifdown(8) # The loopback interface 127.255. necesitará con.258.this entry was created during the Debian Linux serverl 2. r dominio. i£down(8) Are you -sure you want to continué connecting (yes/no) ? yes # The loopback interface Warning: Permanently added serverl centralsoft org. teclado y ratón que haya conectado al servidor.197. Nuestro archivo de configuración comienza así: Ahora edite /etc/ hosts y añada su dirección IP: # /etc/network/interf aces -. Password: enter password for admin user here # The first network card .258. and gateway are optional) # The primary network interface iface ethO inet dhcp Ahora configure el nombre de host. # /etc/network/interf aces -.centralsoft.164. Last login: Sun Dec 25 19:07:38 2005 from 70. conf quedaría así: como se explica más tarde en este mismo capítulo. Los otros servidores de nombre deberían especificar la dirección IP de los servidor con una dirección IP estática. simplemente configuraremos un servidor DNS Si usó DHCP durante la instalación de Debian. Para cambiar la configuración y usar una dirección IP estática. Esto supone una lección valiosa nameserver 151.47 admin@serverl ~$ : gateway 70. Le mostraremos # instaliation cómo configurar el servidor IPv6 más adelante.162 broadcast 70. por lo que podrá realizar el test necesario servidores DNS ofrecidos por tu ISR Nuestro resolv. Si lo desea.42 Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY. 70 253 158 42 ' . Nota: Asegúrese de usar servidores DNS que funcionen con su dominio. search server nameserver 70. debe cambiar el # echo serverl. Si usted tuviera una dirección IP pública configurada como estática. necesitará reconfigurar la red. network 70. Como ejemplo.255. puede saltar a la siguiente sección.32 Configurando un servidor Linux multifunción Configurando un servidor Linux multifunción RSA key fingerprint is 9f 26 c7 :cc f2 f'6 :da: 74 :af fe: 15 16 97 :4d:b3 e6 : : : : : : : : .248 permitted by applicable law.258.42 Si instaló Debian con un cliente DI1CP para su router o para su proveedor de nameserver 70.153.153.conf iguration file for ifup(8).258. localhost serverl auto lo 70.153.0.this entry was created during the Debian Nota: Ignore la información IPv6 en el archivo /etc/hosts. broadcast.centralsoft.42. broadcast. introduzca estos comandos: Para añadir la dirección IP 70.258.

Desde que haga cambios en el paquete de la base de datos. verá una salida como la siguiente: de host correctamente ejecutando el comando hostname: # apt-get remove Ipr nfs-common portmap pidentd pcmcia-cs \ ~$ hostname pppoe pppoeconf ppp pppconfig serverl Reading Package Lists. Stopping NFS common Utilities: statd.34 Configurando un servidor Linux multifunción Configurando un servidor Linux multifunción 35 mismos comandos independientemente de cómo configu- Necesitará usar los Pulsando Y completará la instalación de los archivos adicionales... ha- rara la red durante la instalación. Oops. este no es el caso. Done serverl centralsof t org . En este una LAN como el NetworkFile System (NFS).) Removing lpr . Stopping portmap daemon: portmap.es currently installed. la descarga finalizará # update-inetd --remove talk y verá un mensaje que le preguntará si desea continuar: # update-inetd --remove ntalk # update-inetd --remove ftp 0 upgraded.d -f exim remove Removing any system startup links for /etc/init d/exim . Como indicamos anteriormente.. Use los siguientes que añadiremos otros como OpenSSL. 0 to remove and 0 not upgraded. #less /etc/hostname Do you want to continué? [Y/n] Y serverl (Reading database . Removing pppoeconf . so not removed The following packages will be REMOVED: Si obtiene este resultado. gunos cambios. por lo que eliminaremos NFS y otros servicios. Nota: Asegúrese de revisar los comandos que introduzca.. Pero nosotros estamos poniendo el caso. necesita servidor en Internet. . . After unpacking 35. lpr nfs-common pidentd portmap ppp pppconfig pppoe pppoeconf 0 upgraded. portmap . revise el archivo /etc/hostname. Puede modifi- . . los servicios Do you want to continué? [Y/n] estándares de Internet. por defecto. Luego. Stopping printer spooler: Ipd . servicios apropiados para El Debían le indicará que no puede encontrar el archivo en cuestión. .8MB of additional disk space will be used. necesitamos hacer al- distribución por defecto. mientras cambiar los Scripts que se ejecutan cuando se arranca.. Ahora necesita reiniciar inetd. Ejecute el siguiente comando y serverl . pero como ha . Luego. Removing. .cent ral soft org. De no ser así. # update-inetd --remove discard Need to get 12. simplemente reintroduzca apt-get. . Package pcmcia-cs is not installed. k comandos para modificar los Scripts de inicio: Para obtener todos los archivos necesarios para este capítulo. carlo ahora. inetd normalmente se lanza al arrancar.. . Debería ser parecido a esto: Need to get OB of archives. 42 newly installed. está listo para ir a la siguiente sección. # apt-get install wget bzip2 rdate fetchmail libdb3++-dev \ # update-inetd --remove daytime unzip zip neftp xlispstat libarchíve-zip-perl \ # update-inetd --remove telnet zliblg-dev libpopt-dev nmap openssl lynx fileutils # update-inetd --remove time # update-inetd --remove finger Verá a Debían descargar archivos en su consola. After unpacking 3598k. . 22425 files and directori. Removing pppoe . 0 newly installed. Luego. especificando sólo el nombre del paquete. que es el proceso servidor para. Removing pidentd . ejecute el si- guiente comando: # update-rc. . . estamos relegando a un segundo plano el trabajo hecho por el equipo de Debían. . Done ~$ hostname ~f Building Dependency Tree..B disk space will be freed. Comenzamos con paquetes Debían que los desarrolladores colocan en su ios Removing pppconfig . Debería leer atentamente serverl centralsof t org. Removing ppp . .2MB of archives. . Removing nfs-common . sustituyendo su nombre de dominio por brá que eliminar los servicios que no vaya a usar. verifique que ha configurado su nombre . sobre todo para hacer uso de Posftix.. Si comete un error. equipo Debían ha elegido instalar. Aunque podría pensar que Stopping all PPP connections done . . 8 to remove and 0 not upgraded. .

Configurando un servidor Linux multifunción Configurando un servidor Linux muítifu ncion

cambiado ios servicios cid sistema, necesita reiniciarlo para que pueda descubrir servidor, añadirá una facilidad para cuotas que podrá usarse después. Primero,
ios nuevos servicios del archivo de configuración. El comando inetd acepta un instala los paquetes de cuotas usando apt-get:
parámetro que apunta al archivo de configuración listando los servicios que ofrece.
# apt-get install quota quotatool
Pero si no se proporciona un parámetro por línea de comandos, inetd lee la
información de configuración del archivo /etc/ inetd conf que sirve para nues-
.
,
Le aparecerá una pregunta como esta:
tros propósitos. El comando de actualización de inetd almacenó nuestros cam-
bios en este archivo. Para reinicíar inetd usando el archivo de configuración por Enabie this option if you want the warnquota utility to be run daily
defecto, introduzca: to alert users
when they are over quota.
# /etc/init d/inetd reload
.
Send daily reminders to users over quota?
<Yes> <No>
Verá el siguiente mensaje en su consola:
Aquí debe escoger <No>.
Reloading internet superserver: inetd Debían instalará y configurará los dos paquetes, pero usted tendrá que editar
/etc/fstab para activar las cuotas en los sistemas de archivos que desee. Debi-
do a que nuestro sistema tiene una única partición para todos los archivos de
usuario, puede añadir las opciones usrquota y grpquota a la partición con el
punto de montaje /:
El servidor Web Apache
ofrece a Linux la posibilidad de ofrecer alojamiento
# /etc/fstab: static filesystem Information.
su servidor puede alojar varios sitios Web con nombres de domi-
virtual, es decir,
#
nio que difieren del nombre del servidor físico. En el archivo de configuración del # <fiiesystem> cmount point> <type> <opt.ions> <dump> <pass>
servidor Web, puede definir diferentes dominios usando cláusulas de alojamiento proc /proc proc defaults 0 0

virtual. Por ejemplo, incluso aunque el dominio usado en este libro es central
/dev/sdal / ext3 def aults errors=remountro,
,

usrquota grpquota 0 1
soft org, podríamos tener mothersmagic com, wildbills info u otro do-
. .
/dev/sda.5
,

none swap sw 0
minio que registremos y usemos con la misma dirección IP. Cubriremos este /d.ev/hdc /media/cdromO iso9660 ro, user, noauto 0
concepto con detalle más adelante. Por ahora, sólo piense en la dirección IP como /dev/fdO /media/floppyO auto rw, user noauto 0
,

el número de teléfono de una casa donde viven diferentes personas. Cuando el

navegador accede al puerto 80, llega hasta el dominio que usted ha configurado. Ahora ejecute los siguientes comandos para añadirlos al directorio raíz:

Linux ofrece medios para gestionar el uso del disco para múltiples dominios gra- ü touch /quota. user /quota group .

cias a una facilidad llamada cuotas. Originalmente, Unix ofrecía cuotas para las .,p # chmoá 600 /quota.*
cuentas de usuario para que no ocuparan demasiado espacio en el servidor. Por # mount -o remount /

ejemplo, si tuviera 50 usuarios compartiendo espacio en disco en un servidor de # quotacheck -avugm

archivos, sin un sistema de cuotas, un usuario podría llenar el disco, provocando
El kernel de Linux normalmente tiene soporte por defecto para las cuotas. El
que las aplicaciones de todos los usuarios no pudieran guardar más datos.
kernel ve las opciones de cuota en /etc/fstab y comprueba quota. user y
La facilidad para las cuotas obliga a los usuarios a mantenerse dentro de los quota. group para determinar si los usuarios o los grupos tienen límites en su
límites de consumo marcados, evitando la posibilidad de que consuman espacio
espacio en disco.
ilimitado en disco. El sistema lleva en cuenta la cuota por usuario y por sistema de
Ahora verá lo siguiente en su consola:
archivos. Si tiene más de un sistema de archivos donde los usuarios pueden crear
archivos, configure la facilidad para cada sistema de archivos de manera separada. quotacheck: Scanning /dev/hdal [/] done
Puede usar el mismo sistema de cuota para, limitar el espacio reservado para
Ahora verá un mensaje en su consola parecido a este:
un dominio de su host. Varias herramientas le permiten administrar y automa-
tizar la política de cuotas de su sistema. En esta parte de la configuración del quotacheck: Checked 1912 directories and 28410 files

Configurando un servidor Linux multifunción Configurando un servidor Linux multifunción 39
38

Ahora puede ejecutar el próximo comando: Para poner BIND en un entorno seguro, cree un directorio donde el servicio pue-
da ejecutarse sin tener que estar expuesto a los otros procesos. También podrá eje-
# quotaon -avug cutarlo como usuario sin privilegios, pero sólo el root podrá acceder al directorio.
Primero pare el servicio ejecutando el siguiente comando:
Verá los siguientes mensajes:
# /etc/ínit d/bind9 stop
.

/dev/hdal [/) group quotas turnea on
/dev/hdal [/] user quotas turned on
Edite el archivo /etc/def ault/bind9 por lo que el demonio se ejecutará como
que ha pasado? Esta secuencia activó las cuotas en el usuario sin privilegios, el directorio será /var/lib/named. Cambie la línea:
¿Ha comprendido lo
sistema. Puede revisar las páginas de ayuda para cuotas si cree que no lo ha
0PTS= " ~u bind"
comprendido. El servidor ahora está listo para usar las cuotas.
para que ponga:

OPTIONS="-u bind -t /var/lib/named"

En el capítulo siguiente, aprenderemos cómo manejar nombres
de dominio
Para ofrecer un entorno completo para ejecutar BIND, cree los directorios ne-

Por ahora,
cesarios en /var/lib:
para su servidor y para dominios virtuales que residan en su sistema.
estableceremos una configuración mínima para BINO, el servidor DNS ubicuo. # mkdir -p /var/lib/named/etc
Debían ofrece una versión estable de BJND en sus repositorios. Nosotros ins- # mkdir /Var/lib/named/dev
talaremos y configuraremos BIND y lo aseguraremos en un entorno chroot, es # mkdir -p /var/lib/named/var/cache/bind
# mkdir -p /var/lib/naraed/var/run/bind/run
decir, donde no será posible acceder a los archivos que están fueran de su propio
árbol de directorios. Esta es una técnica de seguridad importante. El término Luego, mueva el directorio config desde /etc a /var/lib/named/etc:
chroot se refiere al truco de cambiar el sistema de archivos raíz (el directorio /)
que ve un proceso, por la que la mayor parte del sistema no puede acceder a él. # mv /etc/bind /var/lib/named/etc
También configuraremos BIND para ejecutarlo como un usuario que no sea root.
De esta forma, si alguien consigue el acceso a BIND, no podrá obtener privilegios
Ahora cree un enlace simbólico al nuevo directorio config desde la localiza-
ción antigua, para evitar problemas cuando BIND se actualice en el futuro:
de root o ser capaz de controlar otros procesos. Para instalar BIND en su servidor
Debían, ejecuta este comando: # ln -s /var/lib/named/etc/bind /etc/bind

# apt-get install bind9 Cree dispositivos nuil y random para que los use BIND y establezca los permi-
sos de los directorios:
Debían baja y configura el archivo como un servidor de Internet. Podrá ver el

siguiente mensaje en su pantalla: # mknod /var/lib/named/dev/null c 1 3

# mknod /var/lib/named/dev/ random c 1 8

Setting up bind9 (9. 2. 4-1)
Adding group 'bind' (104) Luego, cambie los permisos y la autoría de los archivos:
Done
Adding system user 'bind' # chmod 666 /var/lib/named/dev/null /var/lib/named/dev/random
Adding new user 'bind' (104) with group 'bind' # ehown -R bind:b±nd /var/lib/named/ var/*
Not creating home directory. # chown -R bind:bind /var/lib/named/etc/bind
Starting domain ñame Service: narned.
También necesitará cambiar el script de inicio /etc/init d/sysklogd para .

que pueda ver mensajes en los logs del sistema. Cambie la línea:
Nota: Verá salidas similares cuando instale o elimine otros servicios con la
utilidad apt-get. SYSLOGD = "

40 Configurando un servidor Linux multifunción Conflgurando un servidor Linux multifunción 41

para que ponga: na en caché cada visita a una página Web. Le mostraremos cómo configurar el
servidor DNS
primario y secundario en el capítulo siguiente.
SYSL0GD= " -a /var/lib/named/dev/log"
Aunque muchas personas creen que carece de importancia, administrar DNS
Ahora reinicie el proceso de logging con este comando: es crucial porque muchos otros servicios dependen de él. Ya verá como DNS es un
componente crítico de casi todos los servicios de Internet que su sistema ofrece.
# /etc/init . d/sysklogd restart

Verá el siguiente mensaje:

Restarting system log daemorn syslogd.
Los sitios y los servicios Web usan bases de datos relaciones para colocar obje-
Finalmente, ejecute BIND: tos en las páginas Web. Esto permite un acceso rápido a la hora de atender las
peticiones. Los navegadores Web pueden realizar 30 peticiones de una vez,
# /etc/init d/bind9 start
.

incrementando las cargas en la CPU, en la memoria y en el acceso a disco.
Compruebe /var/log/syslog por si hay errores. Puede moverse por el ar- Las bases de datos relaciones, en combinación con un servidor Web, puede
chivo usando: construir de manera eficiente páginas Web al vuelo.
No vamos a cubrir el complejo asunto de la administración de bases de datos
# lees /var/log/syslog
en este libro. Sin embargo, los administradores de sistemas Linux a menudo se
Puede asegurarse que BIND se arrancó con éxito si puede ver: encuentran con que los desarrolladores esperan contar con bases de datos para
su desarrollo, por lo que le mostraremos la manera de configurar su servidor
Start ing domain ñame service: named. Linux con una de las bases de datos de código abierto más populares: MySQL.
Para hacer efectivo el uso de la base de datos, necesitará aprender a:
Ahora, comprobemos si named está funcionando sin problemas. Ejecute este
comando, debería ver un resultado como el siguiente: 1 . Instalar e iniciar MySQL.
2. Crear un usuario root para MySQL.
serverl /home/admin# rndc status
:

3. Crear un usuario MySQL normal, que será usado por las aplicaciones para
number of zones: 6 acceder a la base de datos.
debug level 0 :

4. Realizar copias de seguridad y restauraciones de la base de datos.
xfers running: 0
xfers deferred: 0 Para instalar correctamente el servidor de bases de datos, un programa diente
soa queries in progrese : 0
adecñado para las tareas de administración y la biblioteca necesaria por ambos,
query logging is OFP
server is up and running use este comando:
serverl /home/admin#
:

# apt-get install mysql - server mysql-cllent libmysqlclientl2 -dev
Si DNS no está funcionando correctamente, en su lugar podrá ver algo como
lo siguiente:
Debían descargará MySQL desde sus repositorios y comenzará el proceso de
instalación. Verá los siguientes mensajes:
serverl:-# rndc status
rndc neither /etc/bind/rndc conf ñor /etc/bind/rndc key was found
: . .
Install Hints
serverl ~# :
MySQL will only install if you have a NON-NÜMERIC hostname that is
resolvable via the /etc/hosts file. E.g. if the "hostname" comraand
returns "myhostname” then there must be a line like "10.0.0.1
Afortunadamente, nuestro sistema DNS está funcionando correctamente.
myhostname "
Por el momento, no hemos configurado nuestros archivos de zona primaria A new mysql user " debían- sys-maint" will be created. This mysql account
ni hemos configurado DNS para que actúe como servidor caché, el cual almace- is used in the start/stop and cron Scripts. Don't delete.

ver algo como esto: Postfix es nuestro sustituto preferido para Sendmail. Cree el usuario root de MySQL introduciendo: # mysqladmin -u root password 'pword' Elija una cadena que sea difícil de adivinar como contraseña (pwrod). Durante más de Enter password: 25 años. y es el que tiene el menor número de incidencia en la lista esta línea. Esto . . .1 Security (TLS). no obstante. la línea bind-address = 127. Sendmail ha servido como el MIA primario de Internet.0. Por todas estas razones.-' or '\h' for-help. Sendmail tiene muchos problemas de seguridad que se listan en la lista Common siguiente: Vulnerabilities and Exposures (CVE) alojada en http //c ve . Postfix no soporta protocolos obsoletos. Muchas aplica- ciones escritas para Linux esperan que Sendmail se esté ejecutando en el servidor. : LISTEN 2449/mysqld funciones requeridas por un proveedor de grandes volúmenes de correo. . Demostraremos cómo autentificar a los usuarios de un sistema de correo elec- # mysql -u root -p trónico y prevenir el acceso fraudulento a aspectos del correo. Para solucionar esto. edite /etc/mysql/my cnf (el archivo de configuración que el diente . esto es suficiente para que pueda ciar ios siguientes cada usuario root tiene el control sobre todo y puede conceder o denegar privile. Commands end with or \g. Son sustituciones de andar por casa y pueden hacer que el Ya que el servidor MySQL se está ejecutando. otros MTA han emergido para ocupar el lugar de Sendmail. See /usr/share/doc/mysql-server/README. Type '\c' to olear the buffer.0. pasos. Welcome to the MySQL monitor. .0. Si quiere que MySQL escuche en todas las direcciones IP disponibles.0.1) en el puerto 3306.0. Postfix es más rápido que Sendmail. Si no ve de Correo (SMTP). MySQL es comparable a Linux: en su servidor. una arquitectura más segura y modular y ofrece muchas tiene tep 0 0 localhost localdo mysql *:* . ellos son Sendmail. Intente asegurarse de que el cliente y el servidor están trabajando y que pue- den acceder al servidor. : . un protocolo mejor que el conocido Secare Sockets Layer (SSL). . El root MySQL no tiene nada que ver con el root de Linux. Afortunadamente. etc/mysql/my cnf y comente.10-log .mitre org. Debían for more Information. El principal problema de estos MTA es que las aplicaciones esperan que sea Type 'help.Cuando quiera administrar SQL en el futuro. reinicie MySQL usando este comando: /root/ my cnf always write the "user” and the "password ” lines in .0. there. Your MySQL connection id is 14 to server versión: 4 0 24_Debian. y el servidor comprueban para obtener los parámetros) y añada un símbolo # El correo electrónico seguro involucra mantener fuera del servidor a todos los para comentar la línea skip-networking: usuarios sin autorización (por lo que no pueden usarlo para enviar correo anó- #skip-networking nimo). mysql Sendmail el que está presente en el servidor Linux. Debería ver en la salida de la consola algo similar a lo A pesar de que fue escrito antes de que Internet se abriera al público. deberá introducir el siguiente comando y En esta sección. lo único que tienen en común es el nombre. MySQL está ahora configurado para ejecutarse Desde el punto de vista de la administración.1 Para proteger la autentificación. CVE. sino que usa el Protocolo Simple de Transporte MySQL es accesible desde localhost (127. asegurándose de que nadie puede suplantar a los usuarios legítimos y protegiendo el contenido de cada correo recibido o despachado. Configurando un servidor Linux muitifunción 43 42 Configurando un servidor Linux multifunción Please remember to set a PASSWORD for the MySQL root userl If you use a Si ha editado /etc/mysql/my cnf. never only the password! # /etc/inít d/mysql restart . añadiremos agentes de transporte y de entrega de correo elec- teclear su contraseña: trónico e implemen taremos un ligero control sobre el entorno de los sistemas. instalaremos con Postfix la Transport Layer #bind-address 127 . algunos MTA como Postfix o Exim deben ser capaces de hacer creer a las aplicaciones que Teclee/q o quit para salir. gios a los otros usuarios. usaremos Postfix en lugar de Sendmail como MTA. Haremos más cosas con MySQL en próximos capítulos. puede ejecutar netstat -tap y sistema se ejecute en modo Sendmail. edite / Una seguridad débil hace más fácil que los impostores suplanten usuarios. <0k> Esta sección no ha cubierto todas las funciones de las bases de datos que los desarrolladores esperan de usted.

.4. tareas ahora. donde debería seleccio- nar <No> para conseguir flexibilidad a la hora de enrutar los puertos en caso de Cuando configure Postfix para ejecutar el correo.5. o un IS P ) para enviar y recibir correo en el pasado. cisfault the por? seise ti on is respe? Gnty °P O A Instalar los paquetes es necesario para Postfix y los otros componentes de correo. Si ha usado otro servidor (un portal popular nes tiene para la configuración de correo.4 para usar el demonio SASL. Opciones de configuración Postfix. También queremos que los usuarios se autentifiquen y accedan al servidor de correo.ignore possible. Authentication Security Layer (SASL). Para conseguirlo. seleccione pop3 y pop3s.' A T O : | . escogeremos Interne! Site. tanto para Luego. Luego. presentará algunas pantallas que le preguntarán algunas cuestiones. En otras palabras. Esto crea una extensión (ESMTP) que permite a un cliente SMTP autenti. su servidor realizará estas lla de la figura 2. . Debían ofrecerá el tipo de archivo de configuración su propio archivo de alias.local snc! alWays 'úse . emplearemos el Simple. Services. configuración por defecto.. or¡? libsas!2 -modules ipopd-ssl uw-imapd-ssl V 'I : A ' A/V-T ‘AS ' S ¿'> ' 1 ? A A'l'k I / wrisfflETíSS':-'® MyA. Figura 2. Dejando los puertos por defecto para el correo. A medida que Debían instale los paquetes. funcionará como un agente lo que necesite después. que le permite escoger una opción. introduzca: to you v/snt . Cuando vea la pantalla de configuración de ipopd mostrada en la figura 2.£$ m shling sfeiy be b/iááT ádan yy to álly corrí ígu red ficar el servidor. Figura 2.1. en la pantalla mostrada en la figura 2. Pantalla de configuración de correo de Debían. otro servidor de correo como smarthost. autoridad de correo de su dominio. Más tarde podremos añadir esto a la un servidor. verá una pantalla parecida a la de figura 2. No escoja la opción de la figura 2. TU j poi-'ts s*ie tad . porque usaremos SMTP para todo el tráfico. Configurando un servidor Linux multifunción Configurando un servidor Linux multifunción evita enviar contraseñas en texto claro desde un cliente de correo electrónico a que mejor se ajuste a nuestras necesidades. Los puertos por defecto trabajan aquí porque usan TES y de transferencia de correo estándar. irc.2.1. Figura 2.3.3 es informativa. Postfix creará la LAN como para Internet. Para nuestro propósito. Haga clic en OK para pasar a la panta. responda NONO. el instalador Debían está indicando qué opcio.áélected # apt-get install postfix postfix-tls libsasl2 sasl2-bin \ Entere© port seise ti.2. su sistema será la La figura 2.

8.6 tal y como le mostramos.org.4. En la figura 2. Por ahora. Le advertimos sobre esta parte al principio del capítulo. Figura 2.6 y 2. Esto significaque deberá escribir entradas en el archivo de configuración Postfíx y Figura 2. Configurando un servidor Linux multifunción Configurando un servidor Linux multifunción Figura 2.7. Después de que Debían acabe la instalación y vea que la consola vuelve a estar disponible. Opción para usar una cuenta alias existente. necesitará poner a trabajar juntos varios componentes de correo. el configurado!’ Postfíx quiere saber para quién acepta El nombre de dominio es también "nombre de correo". mandos no tendrán sentido para usted. Cuando al- cance las pantallas mostradas en las figuras 2. Perono se preocupe. Comprobando el nombre de dominio para Postifx. asegúrese de sustituirlo por su nombre de dominio. Lista interna de dominios usada en Postfix. Nota: centralsoft. Figura 2. tendrán valores por defecto en las cajas azules de texto.6. . el do Suelva la vista atrás después de haber completado las tareas de esta sección. Rechazando actualizaciones síncronas. En la figura 2. síncrona. el configurador de Postfíx necesita información sobre la actua- lización.8.org es el nombre de dominio que usamos en este libro.5.7.7.7. Algunos de estos co- En las figuras 2. Elimine la segunda coma. responda <No> a la pregunta y siga avanzando. generar certificados y claves de encriptación. Postfíx usará este nombre para verificar el correo dirigido al servidor. Figura 2. notará que hay dos comas después del nombre localhost centralsoft . le verá el sentido crian- y despacha el correo.6 y 2. Seleccionando el sitio de Internet desde el menú de configuración. Puede aceptar la figura 2. Cubriremos la administración de servidores de correo con gran detalle más adelante.

YOUR ñame) [] You are about to be asked to enter information that will be incorporated Email Address [J : into your certifícate request. YOUR ñame) [] Email Address [] # postconf -e : ' smtpd_sasl_local domain =' # postconf -e 'smtpd sasl auth_enable = yes' Please enter the following 'extra' attributes # postconf -e smtpd_sasl_security_options = noanonymous ' ' to be sent with your certifícate request # postconf -e broken_sasl_auth clients = yes' . crt Signature ok subject=/C=US/ST=Taxas/L=Dallas/0=centralsoft . company) [Internet Wídgits Pty Ltd] Debían. tiene la clave OpenSSL RSA: r There are quite a few fields but you can leave some biank For some fields there will be a default valué. conf # openssl rsa -in smtpd.ntralsof t org . or a DN. key. What you are about to enter is what is called a Distinguished Ñame Luego. unencrypted smtpd.unencrypted Enter pass phrase for smtpd. Nota: Existe un debate acerca de si al generar un certificado se debería pedir There are quite a few fields but you can leave sorae biank o no información. permit jmynetworks re j ect_unauth_destination' . section) [] web : Common Ñame (eg. Se usará para escribir El. csr -signkey smtpd.org/OU=web/CN=Tom_Adelstein/ Estos comandos escriben texto en el archivo smtpd conf . key: You are about to be asked to enter information that will be incorporated Verifying . 1024 bit long modulus writing new prívate key to 'cakey. key -out smtpd. conf 1 Getting Prívate key # : Enter pass phrase for smtpd. key # openssl req -new -x509 -extensions v3_ca -keyout cakey. section) [] # openssl req -new -key smtpd. Locality Ñame (eg. genere otra clave y un certificado y cambie State or Province Ñame (full ñame) [Some-State] las claves existen- Locality Ñame (eg. key: into your certifícate request. # postconf -e inet interf aces = all' ' smtpd. key: Ahora cree un directorio para sus certificados SSL y genere tanto los certifica. key -out smtpd.Enter PEM pass phrase: e is 65537 (0x10001) Enter pass phrase for smtpd. necesitará indicarle a Postfix qué hacer con respeto a la autentificación centralsof t org . apropiada a sus circunstancias. echo pwchecfc_me thod saslauthd' >> /etc/postf ix/sasl/smtpd.pem -out \ # mkdir /etc/post£ix/ssl cacert. segura.pem' ++++++ Enter PEM pass phrase: Verifying . key . # chmod 600 smtpd. . adelstein@ce. csr Common Ñame (eg. Country Ñame (2 letter code) [AU] : el un parámetro Postfix en el archivo de configuración main cf valor de State or Province Ñame (full ñame) [Some-State] .pem -days 3650 # cd /etc/postf ix/ssl/ Generating a 1024 bit RSA prívate key # openssl genrsa -des3 -rand /etc/hosts -out smtpd. email Address =tom. city) [] Una vez que Posftix se ha instalado y se ha configurado como un servicio Organization Ñame (eg. ejecute este comando para cambiar los permisos del archivo que con. key -out \ permit_sasl_authenticated. Usa los siguientes comandos: Organizational Unít Mame (eg. If you enter the field will be left biank. Nosotros le recomendamos que introduzca la información For some fields there will be a default valué. Configurando un servidor Linux muitífunción Configurando un servidor Linux multifunción comando postconf reside en el directorio /usr/sbin. city) [] tes por las recién generadas: Organization Ñame (eg. key If you enter the field will be left biank Country Ñame (2 letter code) [AU] Posteriormente. company) [Internet Widgits Pty Ltd] Organizational Unit Ñame (eg.Enter pass phrase for smtpd. key: # echo 'mech_list: plain login' >> /etc/postf ix/sasl/smtpd. key 1024 ++++++ 293 semi-random bytes loaded ++++++ Generating RSA prívate key. What you are about to enter is what is called a Distinguished Ñame or a DN. A challenge password [] : An optional company ñame [j eso : # postconf -e smtpd_recipient_restrictions = \ ’ # openssl x509 -req -days 3650 -in smtpd. writing RSA key dos como las claves de encriptación: # mv -£ smtpd.

para ello use los smtpd_tls session__cache__timeout = 3SOOs y tls_random_source = dev /dev/urandom siguientes comandos postconf: : # postconf -e 'smtpd__tls_auth_only = no' Sisu archivo coincide con este. localhost # MECHANISMS= "pam shadow" relayhost = MECHANISMS» "pam" mynet works = 127. PARAMS=”-m /var/spool/postf ix/var/run/ saslauthd" alias_maps = hash /etc/aliases : # You must specify the authent i catión mechanisms you wish to use. permi t_mynet works reject_unauth_destination . un demonio SASL. but may also myorigin = /etc/mailname # "shadow" or "sasldb". : # postconf -e 'sratpd_tls_cert_f ile = /etc/postfix/ssl/smtpd. Cambie la línea: .dist for a commented. pero ten- # postconf ~e 'smtpd_tls_receivad_header . crt El archivo /etc/init d/ saslauthd debería quedar así: .domain is the MUA' s job var/spool/postf ix/var/run/saslauthd" para que el archivo quede así: append_dot_mydomain = no # Uncomment the next line to generate "delayed mail" warnings This needs to be uncommented before saslauthd will be run automatically # #delay_warning_time = 4h START=yes myhostname . mailbox__size_limit = 0 recipient_delimiter = + dir= 'dpkg-statoverride --list $PWDIR' inet_interf aces . # postconf -e 'smtpd_tls CAfile = /etc/postf ix/ssl/cacert pem' .0. smt pd_t 1 s_ce rt_f ile = /etc/postf ix/ssl/smtpd.example. alias database = hash /etc/aliases inelude : # This defaults to "para" for PAM support. comienzo del archivo: smtpd_tls_auth_only = no smtp_use_tls = yes PWDI R= " / var / spoo 1 /pos t f ix /var / run/ $ { ÑAME } smtpd_use__tls = yes PIDFILE» " $ { PWDIR} /saslauthd. key' Stoppíng mail transport agent Postfix. cf. puede usar este comando para que los cambios # postconf -e 'smtpuse tls = yes' surtan efecto: # postconf -e 'smtpdjuse_tls = yes' # postconf -e 'smtp_tls_note__starttls_of f er = yes' # /etc/init .0/8 mailbox_command = proemail -a "$EXTENSION" Finalmente. pid" smtp_tls_note_starttls_of f er = yes dir="root sasl 755 ${PWDIR}" smtpd_t 1 s_key_f ile = /etc/postf ix/ssl/smtpd key . # postconf -e 'smtpd tls_loglevel = 1 ’ La a identificación se hará a través de saslauthd.example. tiene que editar /etc/default/saslauthd para activar saslauthd. crt' Starting mail transport agent: Postfix.com. cambie las variables PWDIR y PIDF1LE y añada la variable dir cerca del permit_sasl__authent icated.com. sn»tpd_tls_CAf ile = /etc/postf ix/ssl/cacert pem . smtpd_tls_loglevel = 1 # /bin/sh -e ! smtpd_tls_received_header = yes NAME= saslauthd . .serverl example com . : " Configurando un servidor Linux muítifundón Configurando un servidor Linux muitifunción Ahora necesita indicarle a Postfix sus claves certificados.d/postf ix restart # postconf -e 'smtpd_tls Jkey_f ile = /etc/postf ix/ssl/smtpd.0.yes' drá que cambiar unas cuantas cosas para que funcione correctamente.all r smtpd_sasl_local_domain = por: smtpd_sasl_auth_enable = yes smtpd_sasl_security_options = noanonymous #dir= dpkg-statoverride --list $PWDIR' ' broken_sasl_auth_clients = yes smtpd_recipient_restrictions = Luego. biff = no Elimine el símbolo # en la línea START=yes y añada la linea PARAMS="-m / # Appending . localhost. more complete # rm -fr /var/run/saslauthd í# # versión smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU) Ahora. así: # mkdir -p /var/spool/postf ix/var/run/saslauthd See /usr/share/postf ix/main. introduzca ios siguientes comandos El archivo /etc/postf ix/main cf debería quedar . Debido a # postconf -e 'smtpd_tls__session_cache_timeout = 3600s' # postconf -e ’ tls_random_source = dev: /dev/urandom' que Postfix se ejecuta en modo chroot en /var/ spool /postfix. like this: mydestination = serverl. edite /etc/init d/saslauthd.

.centralsoft. else Escape character is íf start -stop-daemon --test $ {START} >/dev/nuil 2>&1. then 220 serverl. pid” } echo "${NAME}.0. then " } ! [ reload}" >&2 exit 0 exit 1 fi # If we have no mechanisms defined esac if f " x${ MECHANISMS } " = "x" ].$ {PARAMS }" } # Consider our options saslauthd. PIDFILE= " $ { PWDIR / saslauthd. then [ exec $0 start $ { DEFAULTS ” .stop-daemon --test $ { START } # $1 = user echo " (not running) ." exit 1 Esto establece una conexión con Postfix.org ESMTP Postfix (Debian/GNü) echo "(failed).i Ahora inicie saslauthd: # Add our mechanisms with the necessary flag PARAMS= " $ { PARAMS -a $ {MECHANISMS } # /etc/init. Ahora introduzca: else echo " $ { DAEMON already running. { j | | if $ { START " = "yes" ]." } # ehlo localhost exit 0 fi Si puede ver estas líneas: fi serverl /etc/postf ix# telnet localhost 25 : stop) Trying 127.d/saslauthd start } START-".0.. . .1.stop-daemon --stop --quiet --pidfile "${PIDFILB}" \ DEPAULTS=/etc/defauit/saslauthd --startas $ {DAEMON} --retry 10 --ñame ${NAMS) \ PWDIR= “/var/ spool/postf ix/var/ run/$ {ÑAME." Connected to localhost localdomain . edit that file to conFigure this script $0 stop if -e " $ { DEFAULTS } ].c ~h '$l:$2" "$4" l fi chmod -c " $ 3 " "$4" fi } test -f " $ { DAEMON " |¡ exit 0 } restart force-reload) | # Source defauits file. then } { if start. Trying 127 .0. echo "${NAME}.-start --quiet --pidfile ${ PIDFILE} --startas ${DAEMON} Starting SASL Authentication Daemon: changed ownership of --ñame '/var/spool/postf ix/var/run/saslauthd' to root ¡sasl $ ÑAME { -.0. then exit 0 echo "You need to conFigure $ {DEFAULTS} with mechanisms to be used" exit. } fi *) # If we're not to start the daemon. 0 f." dir=” root sasl 755 ${PWDIR}” else createdir( >/dev/null 2>&1. -d "$4" [ || mkdir -p "$4" ] exit 1 chown . siraply exit start stop restart force- echo "Usage: /etc/ init d/ $ {ÑAME } . ejecute el siguiente echo -n "Starting ${DESC} » : comando: y tfdir= 'dpkg-statoverride --list $PWDIR’ test -z "$dir" createdir $dir | | # telnet localhost 25 if start -stop-daemon $ {START} >/dev/null 2>&1 then . >/dev/null 2>&1 then . case "${1}" in start) Para ver si SMTP-AUTH y TLS funcionan correctamente. •# $2 = group exit 0 # $3 = permissions (octal) else # $4 = path to directory echo " (failed) . Configurando un servidor Linux multifunción Configurando un servidor Linux multifunción DAEMON= "/usr/sbin/$ {ÑAME } echo -n "Stopping ${DESC}: " DESC= " SASL Authentication Daemon" if start.1.

please edit /etc/apache2/ports.load ssl.. load lina vez que Debían acabe de instalar adecuadamente servidor apache httpd.54-5) . # ln -s /etc/apache 2 /mods-available/ssl . shtral índex.0. índex. lo usaremos para ofrecer estadísticas Web generadas con Webalizer. 250-STARTTLS 250-AÜTH LOGIN PLAIN Di rectory Index index.load .phps esta sección.conf as desired.conf # ln -s /etc/apache2/mods-available/ssl. <If Module mod_php4. Setting up apache2 -utils (2. y porque el servidor php4 ttapplicat ion/x -httpd -php4 puede servir de alojamiento para otras herramientas.. 220 serverl. Note that the Port directive no longer Ahora.0. rewrite y suexec) para works lo que tendrá que crear los siguientes enlaces simbólicos en el subdirectorio rnods- Module userdir installed.php3 Apache está bien integrado con la mayoría de las distribuciones Linux. # cd /etc/apache2/mods -enabled Setting up apache2-doc (2.phtml .. Puede teclear quit y pasar a la siguiente sección. Setting up ssl-cert (1... php Índex. .0-11) .54-5) .html index. Netcraft publicó un informe en el que se decía que el enabled/php4 .0.pl Índex.html Índex.org ESMTP Postfix (Debian/GNU) php4-gd php4-imap php4~ldap php4~mcal php4-mhash php4-mysql \ ehlo localhost php4-odbc php4-pear php4-xslt curl libwww-perl imagemagick 250-serverl centralsof t org . ejecute lo siguiente: # ln -s /etc/apache2/mods-available/ inelude.centralsoft. Listen 443 Setting Apache2 to Listen on port 80. -s /etc/apache 2 /mods-available/suexec load suexec. xhtml 250 -AUTH-LOGIN PLAIN 250 8BITMIME por: su configuración debería funcionar y ya habrá completado esta parte de la Directorylndex index. vamos a incluir #application/x-httpd-php. Al final del capítulo.54-5) .php .54-5) . cgi index. cgi índex.pl índex. Setting up apache 2 -mpm-worker (2. seguiremos un patrón familiar e instalaremos </IfModule> y configuraremos Apache ejecutando el siguiente comando: Después.load # ln -s /etc/apache 2 /mods-available/rewrite.. Escape character is php4 php4-cli php4-comroon php4~curl php4-dev php4-domxml \ .0. 2S0-PIPELINING 250-SIZE 10240000 comando captura y configura 48 archivos. enabled: Starting web server: Apache2 Setting up apache2 (2. #application/x~httpd-php phtml pht php Como mencionamos anteriormente en este mismo capítulo. load el # ln . asegúrese de que las siguientes dos líneas están presentes en el ar- # apt-get install apache2 apache2-doc chivo /etc /apache2 /port s conf. Configurando un servidor Linux multifunción Configurando un servidor Linux muitifunción Connected to localhost localdomain # apt-get install libapache2~mod-php4 libapache2 -mod-perl2 \ . para comentar las siguientes líneas en el archivo /etc/mime types: .. tiene que activar algunos módulos Apache (SSL. añada símbolos # tal y como se muestra.. ..c> #AddType application/x-httpd-php . php 3 index.. load ínclude. If this is not desired.0. En #AddType application/x-httpd-php-source . También necesitará comentar dos líneas más en /etc/apache2/mods- En noviembre de 2006.comraon (2. php configuración del correo.. . Listen 80 Setting up apache2 .htm índex.. Cambie la directiva 250-ETRN Directorylndex del archivo /etc/apache2/apache2 conf . por lo que tardará un Este 250-VRFY rato.conf: 60 por 100 de los sitios Web en Internet usaban Apache.54-5) . xhtml Luego. puede saltar al siguiente paso. run /etc/init d/apache2 force-reload to enable. Esto lo convierte en el servidor más usado de todos los otros ser vidores juntos.conf ssl.load rewrite.source phps un servidor Web en nuestra configuración inicial porque es importante aprender #application/x-httpd-php3 php3 #application/x-httpd-php3-preprocessed php3p algunos aspectos básicos de administración de servidores. Una vez hecho. añádalas si es necesario.

No invoca ningún programa externo se ejecuta como usua. Por razones de seguridad. de manera análoga a los archivos htaccess de Apache. y debido a que ha hecho varios en la configuración. añada las siguientes líneas al archivo /etc/prof tpd conf . 1): La figura 2.. reinicie ProFTPD Los relojes de los ordenadores tienden a desviarse. What is the filename of the rotated Webserver log? /var/log/apache/access log .org Posteriormente. # apt-get install webalizer ProFTPD le permite configurar múltiples servidores FTP virtuales y servicios de FTP anónimos. Sin embargo. necesitará verificar el directorio de instalación (/var/ y rio sin privilegios. Configurando un servidor Linux multifunción Configurando un servidor Linux multifunción Como vio al instalar otros procesos en secciones previas de este capítulo. servidor Apache comprenderá. el «nombre que se usará para los títulos de los informes estadís- ticos (podría especificar un nombre de dominio.9 muestra la pantalla que verá una vez que Debían haya descar- gado y comience a instalar ProFTPD. DefaultRoot ~ IdentLookups off Serverldent on "FTP Server ready. the reporte webalizer wiil generate. por ejemplo) y la localización del # apt-get install proftpd archivo log del servidor Web (que en su sistema está en /var/log/apache/ accQss. por lo que puede instalarlo con este comando: acceder a los directorios individuales. El proyecto Debían incluye Webalizer que obligan a los usuarios a introducir sus ID de usuarios y sus contraseñas para en sus repositorios estables. ai igual que hemos hecho con los otros procesos. El servidor Web se reiniciará y activará los nuevos módulos. Introduzca este comando: # /etc/init d/apache2 restart .9. ins- talar los módulos apropiados con apt-get inicia automáticamente Apache en el sistema. .log. junto con los cambios de configuración. El servidor FTP usa un archivo de configuración principal.’ 1 Ahora.centralsoft. nece- sitará reiniciar Apache para que los cambios surtan efecto sin tener que reiniciar el servidor. Usaremos una herramienta de código abierto llamada ProFTPD para este propósito porque es popular. d/proftpd restart Protocol (NTP) que mantendrá la hora correcta. segura y configurable. fácilmente configurables en formato HTML. taremos ProFTPD en modo autónomo. con directivas y grupos de directivas que cualquier administrador que haya usado alguna vez el Webalizer crea informes estadísticos a partir de los archivos del servidor Web. Por tanto. Junto con el servidor httpd que muestra páginas Web en un navegador. Pantalla de configuración Debían para ProFf’PD. Éste puede ejecutarse bien como aplicación Which directory should webalizer put the output in? / var /www/webal i z er autónoma o bien como un servicio desde inetd. Instale ProFTPD ejecutando este comando: www/webalízer). sitaráimplantar un servidor de trasfcrencia de archivos (FTP). nece- Figura 2. . Durante la instalación. Puede usarlo con un navegador Web estándar y produce informes detallados y ración por directorios. ProFTPD tiene archivos f tpaccess de configu- . Usage Statistics for serverl. existe una tarea usando este comando: básica de configuración que conecta su sistema con un servidor NetWork Time # /etc/init. ejecu- Enter the title of.

71 | logger -t NTP respeto a activar los test.2.2. Una vez que esté hecho. verá un mensaje como HTML Parser Si : Si el archivo no existe. añadiremos algunos usando la consolaCPAN de Perl. verá algo como / el # touch /var/spool/cron/crontabs/root usr/bin/make install . es un programa que usaremos en implementanclo en Perl.136. incluso aunque no quiera programar en Perl.15. ahora podrá empezar a usarlo en modo de producción. la consola del sistema. añada las siguientes líneas a > install HTML: ¡Parser /var/ spool/cron/crontabs/root.9. SpamAssassin es una herramienta crítica para administradores de correo (e incluso usuarios de co- rreo). Muchas herramientas dependen del lenguaje de programación Perl u ofrecen una interfaz Perl que permite personalizarlas (aunque otros lenguajes están ga- nando adictos en los mundos del software libre y de Unix).OK.d/cron restart rar los servicios de DNS y notificar al registrador dónde ha configurado su dominio (esto será objeto de estudio en siguiente capítulo). Responda a todas las preguntas presionando la teda Intro para aceptar los valores por defecto. el Comprehensiva Perl Archive NetWork (CPAN). simplemente pulse q para abandonar Perl y volver a La dirección IP 128. Cuando un módulo se instale con éxito. responda no Y con un módulo ya existiera en el sistema. Luego ejecute los siguientes comandos para instalar los mó- dulos que usaremos en d próximo capítulo: .pm initialized. puede instalar una aplicación basada en Web (nosotros usaremos ISPConfig) y comenzar a explorar cómo funcionan las aplicaciones Web. dad de Carnegie Mellon. Modifique los permisos en el archivo crontab ejecutando: # chmod 600 /var/spool/cron/crontabs/root y reinicie el servicio cron mediante: Ahora que ya ha completado las tareas asociadas a la configuración del servi- dor. . Que es un entorno para buscar archivos e insta- lar módulos. Configurando un servidor Linux multifunción Configurando un servidor Linux multifunción Para sincronizar su sistema con un servidor NTP. Necesitará configu- # /etc/init . este libro y está Como administrador del sistema.71 pertenece al servidor de tiempo de la Universi. Puede usar un tiempo diferente si lo desea. > install DB__File > install Net: :DNS # update time with NTP server 0 3.136. puede crearlo con comando: se ha actualizado. Para darle una ligera idea de cómo instalar módulos Perl. debería ser capaz de descargar módulos Perl del repositorio más popular y segu- ro.21 * * * /usr/sbin/rdate 128. Entre en la línea de comandos como root y ejecute el siguiente comando para entrar en la consola CPAN de Perl: server 1 /home/admin# perl -MCPAN -e Shell : /etc/perl/CPAN/Conf ig. Una vez que la configura- el ción DNS esté acabada.

Si le surgen problemas. . de manera similar a como la colección de guías telefónicas está dividida en estado.org. Al igual que las bibliotecas publicas tienen una colección de guías telefónicas clasificadas por estados. DNSsepara los dominios en categorías.de. DNS asocia la dirección IP con el nombre de los servidores conectados a Internet. la cual se podrá saltar para ir a la sección de instalación y configuración paso por paso. Aunque comparándola con otros sistemas gestores de bases de datos como Oracle o MySCIL es un poco diferente.edu. . Aspectos básicos de DNS Si busca un poco acerca de DNS en Internet. etc.fr. . debería saber instalar. Este capítulo le muestra cómo construir un Sistema de Nombres de Dominio (DNS) usando BIND. . De hecho. configu- rar. En lugar de buscar un número de teléfono con el código de área de Nueva York. mantener y resolver las incidencias de cualquier dominio que registre. . DNS es el directorio digital distribuido más grande del mundo. Los dominios de cada TLD apuntan a la direc- ción que puede usar para comunicarse con el servidor. Al igual que un directorio telefónico que se usa para asociar nombres con números. .net. que abarcan desde pequeños sitios Web hasta granjas de servidores como Google o Amazon. siempre puede volver atrás y leer o revisar el material inicial. . Esta colección está divida en dominios de alto nivel (TLD). La colección de categorías reside en lo que se llama el directorio raíz. podrá comprobar que DNS es la base de datos más grande del mundo. Em- pezaremos con una introducción a DNS.mil.com. Cuando acabe este capítulo. DNS busca los nombres según el sufijo .

Este componente se llama named. su dominio. en lugar de tener a blemente se dormiría.centralsoft. ldap. los servidores de su vez sub-ramas. En cada caso. El sistema distribuye los datos y dominio al registrador (por lo menos dos. no a la versión 5. y poner DNS en su infraestructura permite mayor Nota: La alternativa más popular para BINO es la suite djbdns. y puede tener tantos servidores como quiera para aspectos y términos clave antes de sumergirnos en los archivos de configuración. 6 ó 7). Debe gestionar los nombres de do- dominio. considere la configuración y la gestión de DNS como uno de los cono. DNS es una parte integrante de los sistemas basados riesgos de seguridad para BIND 4.centralsoft.html para más detalles. En lugar de reemplazar los sistemas existentes. También tiene más control a la hora de mantener los nombres actualizados. Como dijimos antes. Los programas llamados servidores de nombres ofrecen infor. donde la gente puede usar aplicaciones ofrecidas por Google. Los departamentos de tecnologías de BIND 4.yp. puede tener equipos que se llamen serverl. le recomendamos que se actualice (y ya de en Web. En este capítulo. Un sitio que controle centralsoft. porque dichos sistemas usan servidores de directorios para comunicarse. Cada dominio se parece a una rama de un árbol y cada rama contiene a minio de los sistemas que van a ser públicos: los servidores Web. Véase escalabilidad:puede añadir servidores según se vaya necesitando e incluso ba- http://cr. salte a la versión 8 como mínimo. gente que todavía usa la antigua y obsoleta versión 4 de BIND. Le enseñaremos Los esquemas de nombres jerárquicos como DNS evitan la duplicación de los cómo levantar un servidor DNS en un momento. Le da el con- trol total sobre qué sistemas alojan los servicios públicos (por ejemplo. El primero es el servicio o demonio que Por tanto.org. gado de responder al teléfono cuando suena. debería ocurrir una catástrofe para que un departamento de tecnolo- Webshpere de IBM o BEA WebLogic en segundo plano y otros productos para la gías de la información pudiera actualizar a BIND 8 o 9. este Las organizaciones pequeñas a menudo permiten a sus ISP administrar el DNS capítulo cubrirá BIND en detalle. . Es el encar- cimientos más importantes de la administración de sistemas que puede poseer. Resumiendo. Puesto que los administradores necesitan usarlo. Funciona bien. . Debido a que hay graves presentación. se irá dando cuenta de que es muy intui- mación sobre las partes del árbol y otros programas llamados resolvers piden tivo. por ejemplo.to/djbdns. por ellos. Aunque configurar sus propios servidores tiene ventajas.62 Ei sistema de nombres de dominio El sistema de nombres de dominio 63 El DNS (que originalmente se definió en el RFC 882 en 1983 y luego se revisó ¿Por qué podría necesitar un administrador de sistema gestionar sus propios como RFC 1034 y 1035) introdujo varias ideas para gestionar el mapeo de los servidores DNS? Usted debe ofrecer las direcciones de dos o más servidores de su nombres comunes de Internet a direcciones IPS. porque el lector proba- valioso controlar su propios DNS en el panorama actual. Lo consiguen usando sistema basados en Web ta de la que se muestra en probablemente el sistema esté usando este capítulo. capaces de conectar sistemas heterogéneos. es No vamos a ofrecer una clase de historia sobre BIND. BIND viene con tres componentes. correo. usaremos la nueva versión 9. Esto se convierte en importante si posee y opera en varios dominios activos o en servicios internos de autentificación. etc. Luego. No le encontrará el sen- información a los servidores de nombres de parte de los programas clientes. para garantizar que alguno de los dos los nombres de los equipos de manera jerárquica en un espacio de nombres de funcione cuando alguien solicite un nombre). Yahoo y otros. BIND es un estándar en todas las ver- siones de Unix y de Linux. la usan muchos servidores de nombres y es fácil de configurar.org y Introducción a B1ND mail centralsof t org. Muchas empresas han migrado a la Web sus principales procesos de negocio. Muchas veces la jerga parece un idioma extranjero. La mayoría de los servidores DNS del mundo se ejecutan gracias al Sistema de Ventajas ele la administración localizada de DNS Nombres de Dominio de Berkeley o BIND. las empresas odian reemplazar los sistemas que la información usan servidores de aplicaciones como JBoss (propiedad de Red Hat) funcionan. Sólo señalaremos una anécdota histórica y es que hay alguien que lo haga. Cada dominio es único. paso. lancear la carga entreellos. Resolver las direcciones IP de forma rápida y segura es importante para el éxito de estos productos en Internet y en empresas. tido hasta que no haya trabajado con ella durante un tiempo. ejecuta la parte servidora de DNS. revisaremos algunos datos. . DNS también ocupa un lugar importante en áreas emergentes como la de los servicios Web y la Internet ejecutable.org. simplemente debe añadir un prefijo a los equipos del dominio. servicios Web o correo electrónico). prefieren ofrecer sus aplicaciones a Si usa un sistema con la sintaxis de los archivos de configuración DNS distin- través de interfaces Web novedosas. A medida que aprenda DNS.

Si update-inetd --remove ntalk # todavía no tiene el disco de instalación basada en red usado en el capítulo ante. Entorno de escritorio Algunas personas piensan que un resolutor es un cliente dentro de BIND. 2.descárguelo de http://www. encontrará diferencias entre ésta y la versión que usamos para escribir las siguientes instrucciones.253.us. Si ha decidido usar SUSE o Fedora en lugar de Debian. Es su tarea configurar resolv. verá una pantalla que los navegadores Web. Realice una # update-inetd --remove discard instalación de red y asegúrese de indicar un nombre de dominio adecuado. Para instalar BIND en su servidor Debian. sino que es una Servidor de impresión { ) librería que enlaza con cada navegador Web. diente de correo.64 Ef sistema ele nombres ele dominio El sistema de nombres de dominio 65 El segundo elemento de BIND es la librería resol atora. # update-inetd --remove ftp rior. los parches y las nue- Podrá ver los siguientes mensajes en la consola: vas versiones del kernel de Linux. El código del { ) Servidor DNS resolutor lanza consultas sobre los servidores DNS para intentar traducir nom. Luego # /etc/init d/inetd reload . busque la esencia del asunto que explicamos y no Setting up b.253. Si encuentra diferencias en los procesos de instalación que describimos. conf en los equipos del dominio No ninguna opción.158. Este componente es el Después de las etapas iniciales de la instalación de Debian. Adding group 'bind' (104) . más tarde. configure debían como se sugiere aquí.158. # update-inetd --remove finger # update-inetd --remove talk versión estable de Debian y configurarla con el número mínimo de paquetes.org figurar Exim (Exim-config). # apt-get remove lpr nfs-common portmap pidentd pcmcia-cs pppoe \ pppoeconf ppp pppconfig La tercera parte de BIND ofrece herramientas tales como el comando dig para probar DNS. el software de correo y otras aplicaciones consultan gráfica indicándole que escoge el tipo de instalación que desea. verá una pantalla gráfica. He aquí cómo se vería el archivo resolv. .conf que directorio llamado { ) Selección manual de paquetes está presente en cada ordenador. Pero { ) { ) Servidor Web al contrario que el servidor. OK y el instalador Debian comenzará a descargar y a instalar paquetes. Analizaremos la herramienta dig y otras utilidades del kit paquetes con su método preferido. puede eliminar estos y vea lo que ocurre.org/CD/netinst.45 desea dejar el sistema de correo sin configurar?" Responda Sí. La pantalla será cuando intentan encontrar un servidor por su nombre DNS en la jungla de más o menos así: Internet. Haga clic en el botón seleccione centralsof t org:. Esta pantalla le preguntará si quiere con- search centralsoft. Le preguntará "¿Seguro que nameserver 70. y los pro- Debian descargará el archivo y lo configurará como un servicio de Internet. si una consul- ta falla. 4-1) tendrá problemas para instalar la última versión. solo pulse la tecla Tab. Una vez que se haya completado la instalación mínima de Debian. el cliente no es un programa simple. teclee dig yahoo com (u otro dominio conocido) . debería elimi- Como puede ver. etc. vamos a hacer una instalación de la última . el archivo de configuración del resolutor BIND es simple.ind9 (9. se procede con la siguiente línea. ejecute el comando: Cuando tenga la versión actual de Debian GNU/Linux.42 nameserver 70. Elija Sin configuración. Vaya a la consola. La nar algunos programas innecesarios que tiene alguna utilidad en una LAN pero no primera línea busca un servidor en el dominio local. Durante la descarga. Ahora. { ) Servidor de archivos ( ) Servidor de correo bres en direcciones IP ( ) Base de datos SQL Este elemento de BIND usa su propio resol v. Los # apt-get install bind9 desarrolladores de Linux actualizan sus distribuciones frecuentemente. desactivemos algunos servicios y reiniciemos inetd: # update-inetd --remove daytime Configurando un servidor DNS # update-inetd --remove telnet # update-inetd --remove time Para levantar nuestro servidor. Las otras líneas indican en un servidor de correo de Internet: puede eliminarlos usando la utilidad apt-get: direcciones de servidores de nombres que el administrador conoce.debian. cesos de instalación cambian debido a las actualizaciones. conf.

y pa- recerá ser un sistema de archivos totalmente completo después de ejecutar el SYSL0GD= " comando chroot. Incluso si se ataca named. sabrá si BIND se ha iniciado sin problemas si el archivo syslog Luego mueva el directorio config desde /etc hasta /var/lib/named/etc: muestra: #mv /etc/bind /var/lib/named/etc Starting domain ñame Service: named. #ln -s /var/lib/named/etc/bind /etc/bind Crea dispositivos nuil y random para que BIND los use y asigne los permisos de directorio: Muchos administradores de seguridad recomiendan ejecutar BIND como un #mknod /var/lib/named/dev/null c 1 3 usuario no root en un directorio aislado llamado entorno chroot. También necesita cambiar el script de inicio /etc/init . Puede moverse por el contenido del archivo usando: #mkdir -p /var/lib/named/etc # mkdir /var/lib/named/dev #less /var/log/syslog # mkdir -p /var/lib/named/var/cache/bind # mkdir -p /var/lib/named/var/run/bind/run Normalmente. por: Primero pare el servido ejecutando este comando: SYSLOGD= " -a /var/lib/named/dev/log" # /etc/init. Starting domain ñame Service: named. Para ofrecer un entorno completo para la ejecución de BIND. Esto protege # mknod /var/lib/named/dev/random c 1 8 contra oportunidades de explotar fallos que se detecten en la versión de BINO. inicie BIND: OPTIONS= " -u bind -t /var/lib/named" #/etc/init d/bind9 start .d/sysklogd para bién se ejecutará como usuario sin privilegios y sólo el root podrá acceder al que pueda ver los mensajes en los logs del sistema. cree los directo- rios necesarios en /var/lib: Compruebe /var/log/syslog por si hubiera errores. edite el archivo /etc/default/bind9 y así el demonio se ejecutará como un usuario sin privilegios. un entorno chroot limita #chmod 666 /var/lib/named/dev/null /var/lib/named/dev/random cualquier daño que pueda hacerse a los servicios de nombres. #/etc/init d/sysklogd reatart . necesita crear un nuevo directorio donde el servicio puede ejecutarse sin estar expuesto a los otros procesos. Luego. Tam. para que ponga: Finalmente. Cambie la línea: Verá el siguiente mensaje: OPTS="-u bind" Restarting system log daemon: syslogd. El directorio contendrá todos los archivos que BIND necesita. .d/bind9 stop Ahora reinicie el proceso de log con el comando: Luego. # chown -R bind:bind /var/lib/named/var/* # chown -R bind:bind /var/lib/named/etc/bind Para poner BIND en un entorno chroot. cambia los permisos y la propiedad de los archivos: que podrían desembocar en que un extraño atacará el demonio named y consi- guiera acceso al sistema. defina el entorno chroot como /var/lib/named. Cambie la línea: directorio. El sistema de nombres de dominio El sistema de nombres de dominio Done Ahora cree un enlace simbólico que apunte al nuevo directorio config desde el Adding system user 'bind' emplazamiento antiguo y así evitar problemas cuando BIND se actualice en el Adding new user 'bind' (104) with group 'bind' futuro: Not creating borne directory.

centralsoft. se Una zona contiene la información de un dominio o.com y . Supongamos que uno es central soft org . Por tanto.68 El sistema de nombres de dominio El sistema de nombres de dominio 69 Desgraciadamente. por lo que tiene que escribir archivos #rndc status de zona para cada sitio Web. y éstos tienen que estar registrados en el. pero usted no sabe todos los números de memoria. además de los dominios de cada país como . su servidor number of zones: 6 DNS estará listado como el servidor de nombres de sus nombres de dominio. etc. debido a que sí tiene un listado. supportcall org y los otros). funcionando introduciendo: Cada sitio Web es un dominio diferente. (Los nombres de 15 sitios Web alojados en su servidor. su sistema no pasará a formar parte del janedoe com. Cuando usted Si obtuvo este error. los servidores de dominios de alto nivel. Afortunadamente.1 describe la estructura DNS.mil.key was found . Imagine que hay 1 5 niños viviendo en su casa.) de dominio completamente diferente. . compruebe si named está alojados en el mismo servidor. mientras que los otros son linhelp com. En la parte de arriba de la figura. o . En debug level 0 : otras palabras. puesto que ofrece información acerca de la locali- : En cambio. y manejar múltiples dominios independientes al datos iniciales. . La versatilidad de BINO le permite manejar varios sólo son responsables de redirigir las peticiones a los TLD concretos. sistema DNS. es decir.edu. . digamos que usted ad. Cada niño tiene un Revisemos la estructura del directorio DNS de nuevo. podrá ver algo como zación de cada zona en su sistema.org. El directorio tiene tres teléfono móvil. /etc/named conf es su . tiene que haber publicado el nom- . lo que lo dejaría inoperativo. . Los administradores hacen esto creando listas que ese directorio de trabajo. La figura 3. en la jerga de DNS llaman archivos de zona de llamada. named puede iniciarse pero fallar al. Sin embargo. usted puede tener 15 servidores en su centro de datos. jdshelp net y . lo anterior le ha dado la idea bre de dominio junto con el número (la dirección IP) y haberlos hecho parte de de qué es DNS.com. . Estos servidores linuxconf net. Ahora ya se puede hacer una idea de lo que involucra el trabajo de adminis- trador de sistema. cada uno con un nombre dominio.COM son el mismo ministra un senador que aloja cinco sitios Web diferentes. El TLD incluye . Todos los propietarios de los sitios Web tienen que pedirle que . DNS distribuye su directorio. serven /home/admin# directorio de archivos de zona. niveles. servicio de directorio universal. Elprimer grupo de servidores que se llama servidores raíz. supportcall org. de una familia. serverl . paga una tasa y registra un dominio. . Usted tiene que ofrecer los nombres y las direcciones de dos servidores. . Para ilustrar esto. De manera análoga. Como se comentó anteriormente.gov. si continuamos con la analogía del teléfono. En las bases de datos de los registrantes.de. conf En cierto modo. es decir . si DNS no está funcionando correctamente. . . dominio no son sensibles a las mayúsculas. cargar ios archivos de servidores DNS mismo tiempo. query logging is OFF El archivo que se corresponde con la lista de números de teléfonos móviles de server is up and running nuestra casa es /etc/named. Ahora le explicaremos cómo conseguir entrar a formar parte de un directorio DNS distribuido. contienen sólo los nombres y la dirección ÍP del siguiente nivel de servidores y maneje sus registros DNS. y que alguien que está buscando a uno de ellos le llama. échele un vistazo al final de este capítulo.net. El segundo grupo que consiste en fono móvil del chico que el que llama está intentando localizar. un directorio donde puede buscar el número de telé- ofrecen el punto de inicio para las consultas. Pero si quiere encontrar no sigue los protocolos especificados. Tiene que configurar los servidores de nombres de sus domi- Si quiere encontrar el número de teléfono de Jane Doe en una guía telefónica. nios conforme a las especificaciones de la Internet Engineering Task Forcé (IETF). lo siguiente: #rndc status rndc: neither /etc/bind/rndc conf ñor /etc/bind/rndc. puede ver una representación de los servidores raíz de Internet. una de las cuestiones a las que ha de res- ponder tiene que ver con sus servidores de nombres. Si la compañía telefónica publica esa información. . un administrador de sistemas.org está listado como el chico con el xfers running: 0 que los de fuera tienen que contactar para encontrar a los otros chicos de la casa xfers deferred: 0 soa queries in progresa: 0 (linhelp com.

233. además de proveer un demonio para escri- bir entradas en el directorio distribuido.70 Ei sistema de nombres de dominio El sistema de nombres de dominio 71 En centro de la figura. Figura 3.org. . El "dien- .16 7. sólo ción.com.com dice "No tengo la informa- para un número determinado de dominios. Si registra un dominio con el sufijo .com".2. org. pero conozco un servidor de nombres que sí la tiene. y named responde a las consultas y se asegura que la información se mantenga actualizada para todos los servidores.99 y su nombre es risl. Respondiendo a una pregunta. lee la información que el directorio nsl. el servidor DNS coloca esa información en su caché para no tener que volver a buscar la dirección de Google de nuevo. puede ver algunos de los servidores del TLD el org. En la esquina superior izquierda de la figura está dibujada la torre de un servidor (en nuestro ejemplo este servidor se llama serverl centralsof t . de nombres TLD para el dominio org envía las peticiones). un servidor . gunta al servidor raíz dicha dirección. . La figura 3. conoce la dirección de sitio Web. Cuando named recibe una petición. Y ofrece la dirección IP de un mación restante de cada subdominio.org. como verá más tarde. .org. Vamos a analizarla. Suponemos que el servi- . Tiene la dirección necesita saber que serverl centralsof t org representa la parte del sistema . Encontrando un dominio Como se mencionó anteriormente. incluyendo los servidores de su dominio. Si el servidor DNS no conoce la dirección.google. realiza la misma función que nsl google com). . consulta los servidores DNS que especifique (que normalmente está en su red local o en su ISP). . El servidor raíz responde "No la conozco. dor está ejecutando Linux y BIND.1 representa un servidor de nombres primario . Luego.google. Básicamente.com". El servidor . servidor que conoce los dominios(que son muchos) que están registrados bajo La parte de abajo de la figura 3. res DNS registrados con el sufijo . Tendrá que ofrecer la infor- .com. resolv conf controla las consultas que los navegadores y otros . Su servidor DNS se dirige a la dirección. En nombre de tu navegador.2 describe el proceso para responder a una consulta.com para la dirección. un servidor . consulta su . pre- Estos servidores contienen los nombres y las direcciones IP de todos los servido. pero sé dónde puede encontrarla la su dirección IP residirá en cada servidor TLD org.com ofrece y regresa a decirle a su navegador la dirección de www. al servidor DNS si nes de nombres del dominio. Imaginemos que su navegador quiere encontrar www google cora. el resolutor del servidor DNS luego consulta llamado serverl centralsof t org.google. 64. . Cuando su equipo necesita encontrar la dirección de un sitio Web. El demonio escucha en el puerto 53 UDP para cualquiera que haga peticio- te" BIND ejecuta un comando que esencialmente pregunta. clienteshacen sobre nombres de dominios. Un servidor del nivel más alto dirige a los resolutores al sistema (en el caso de serverl centralsoft. BIND ofrece mecanismos para leer el directorio. Funciona como el servidor de nombres . Por ahora. respuesta. Empiece por los servidores TLD . DNS que tiene que gestionar.

Esto puede suceder si el que cuando hace cambios. línea que define a este mo al usuario sólo necesitará preguntar el nombre de dominio una vez. Gracias a la caché. . Esto tiene algo de sentido porque una operación DNS correcta requiere v que se cumplan ciertas normas y protocolos.mantener los servidores acusa! izados.centralsoft. zone "centralsoft. .42. { y consultas. mira en el archivo de la zona apropiada. . El servidor secundario práctica se llama zona de transferencia.253. El número de serie es un valor que debe incrementar en el servidor comunique con el primero y automáticamente replique el directorio. mientras que la entrada anterior ayuda a un servidor secundario a encon- Algunas personas se refieren a los archivos de configuración como archivos trar el servidor primario. servidor maestro o la red fallan. al igual que los servidores pri- transferencia de zona. como se muestra aquí: . Su función primaria es ofrecer información.158. BIND permite que el servidor secundario se maestro. el archivo de configu- han producido.parte de un i'oftaf uegos. /etc/named. Por lo tanto. Para evitar que la . asegúrese de desbloquearte / . tactar con el servidor primario pero deja de responder a las peticiones. ui<.org” ( Hay algunos valores más que debería conocer antes de manejar los archivos type slave de configuración: ei tiempo de vida (TIL).158.253.5 Los servidores : secúndanos usan tanto R'INorno UiH’ pasa rraüvar las transieren^. El archivo named conf de cada servidor es. Si los. los servidores secundarios pueden responden a las consultas y valor de reintentos. El servidor primario no transfiere la nueva configuración a los servidores se- Aunque un servidor secundario no puede actuar como mascara indefinida- cundarios inmediatamente.y . Esta dirección coincide con la que pusimos en el archivo de zona tiene la información solicitada. almacena el caché esa información y la masters { 70. el servidor secundario enmascara al Los servidores secundarios obtendrán la información del servidor primario.. . no cumplir las reglas. puesto servidor como secundario. cliente a conectarse a .se? vidores secúndanos residen. el servidor secundario sigue intentando con- named conf. Los valores actuali- dor maestro (donde se harán todas las actualizaciones manuales) y otro servidor zados indican al servidor secundario con qué frecuencia debe sondear al servidor secundario o servidor esclavo. el servidor se la envía al sistema que resolv conf antes. del dominio en cuestión. Cuando un servidor DNS remoto reci- file "sec. Si quiere. pidió dicha información. 72 El sistema de nombres de dominio Ei sistema de nombres de dominio 73 archivo de configuración. De manera eventual. Las cosas de su sitio (cada una de las cuales involucra varias descargas). . compara el valor primario con su propio valor para determinar si procede una Los servidores secundarios son autoritativos.42. reutiliza mientras sea válido ei valor TIL. ! Si tieneun cortafuegos en su servidor primario.. Un servidor secundario sabe que debería sondear a su "hermano ración también especifica un tiempo de expiración. su información podría caducar. los archivos de zona | .a j 7y actualmente funcionan como parte del directorio DNS. Es decir. por lo que sería vidor primario a intervalos regulares de tiempo para detectar los cambios que se preferible dejar de responder a las peticiones. puede hacer un dupli- Designar el servidor secundario como esclavo lo habilita para que periódica- cado exacto de la información que usó para el primer servidor DNS y colocarlo mente compruebe han producido cambios en los si en el servidor primario se en el lugar del segundo servidor. be una respuesta a una pregunta suya. debería hacerlos solamente en el servidor primario. DNS. En su lugar. . Luego. ya que está etiquetado con el término esclavo (slave) en el archivo que se produzca una actualización. : r : Como dijimos anteriormente. En este caso. también tendrá "qti. tiene que proporcionar el nombre de al menos j dos servidores DNS cuando registre su dominio. tica más común y más útil es considerar a un servidor como el primario o servi- pecifica cómo se hace el sondeo y la transferencia de zonas. un servidor próxi- importantes en las que hay que fijarse son el tipo esclavo. y para : puerto UDP 53. que le dice al que será capaz de satisfacer cada petición en base a la caché.en la otra. }. lo rúales necesario para . No obstante. La diferencia es en caso de que no pueda conectarse al servidor primario.ir yyyé zonas. Si este tiempo transcurre sin mayor".org". El archivo de configuración primario también especifica el marios. primario durante ese rato. Este puerto se usa para recibir y responder las el .o desbloquear rí puerto TCP 5. Esta técnica mejora el rendimiento de DNS. pero una prác- archivos del directorio del dominio. conf Sí el servidor tiene información servidor dónde conseguir el maestro es la direc- la información. cada servidor secundario sondea al ser- mente. Si el archivo ción 1P 70. El archivo resolv conf ayuda a un . Algunos proveedores hacen esto. AWé y - Cuestiones relativas a los cortafuegos . de regla. que el servidor secundario usará para actualizar los valores dar información de todas las zonas de las que son responsables. si alguien pasa una hora visitando varias páginas Web } No discutiremos sobre la sintaxis y el papel de la entrada por ahora. En este ejemplo. y la línea donde pone maestro (master). lo que en la primario cada vez que cambie la información que ofrece.

}. torio. no tendrá que repetir el nuación de la doble barra invertida.3 ilustra escribir type master. zone "158 253 70 . este archivo está normalmente instalado en su servidor Linux por caché usados por los ISE por ejemplo. // query-source address * port 53. DNS ofrece servidores de sólo caché. conf simple. este punto. in-addr. named conf puede residir en diferentes . Los comentarios van a conti- próxima vez que intente encontrar el mismo sitio Web. el archivo viene realiza una consulta. Aquí tenemos nuestro ejemplo. . que coordina el . modificar o arreglar cuando sea necesario.org". type master. . hemos hecho una exploración de alto nivel del sistema de nom. Editando los archivos de configuración directory "/etc/bind". Dependiendo de la distribución. Recuerde que cuando named recibía una petición. Cuando riencia puede variar ligeramente. file "db.centralsoft.root". El servidor que configure para alojar los dominios. namecf. local". no tiene que cada archivo desde cero. usan defecto. . Empezaremos por el archivo named conf. cribir.0. El archivo named conf apunta a la localización de su archivo de zona. // configuración de servidor de nombres maestro bres de dominio y hemos explicado las partes que tiene que mantener. . . . por lo que los administradores usan servidores de caché para al. file "db. . { vamos a entrar en detalle acerca de los archivos de configuración que puede es.conf file "pri 158 253 70 in-addr arpa" . TTL asegura que el servidor descartará el valor que le pide. para dar servicio a sus clientes. Luego. p. Esta tarea consume sólo trate de familiarizarse con él. simplemente hace que DNS trabaje más rápido almacenando los nombres de dominio que obtiene de los figura 3. a menudo está ocupado res. Si pondiendo a las consultas de otros servidores DNS de Internet. Algunas veces. no en el archivo named conf . el }. y acudirá al servidor autoritativo para obtener el valor actual. Verá todos estos valores en su archivo de zona.3. servidores autoritativos y ofreciéndoselos a los clientes. conf. Esto hace apuntar a named al file "pri. zone "0. options { pid-file "/var/ run/bi. los archivos básicos. archivo de zona para el dominio solicitado. Los administradores los usan para reducir la carga de los servidores autoritativos. Archivos de configuración de BIND. Ahora // r zone " " . el servidor de caché mantiene los resultados en la caché. el archivo de configuración named. Entraremos en más detalles dentro de un mo- muchos recursos.127. . Un servidor de caché no tiene autoridad.org" { type master. no entiende Veamos atentamente un archivo named. sistema entero en cada servidor BIND y apunta al resto. directorios (está en /etc/bind/named conf para BIND 9 bajo Debían).nd/ run /named. // Hasta aquí. por ejemplo. mento. La figura 3. zone "centralsoft. type hint. } . in-addr .id" . macenar localmente la información que los usuarios demandan. }. consultaba su propio direc. . Verá servidores de Recuerde. Su apa- . otro servidor para ofrecer nombres de dominio de Internet a los sitios que alojan.arpa" { . La muy comentado. proceso entero: sólo tendrá que obtener la dirección IP del equipo de la caché. Servidores de solo caché Además de los servidores primario y secundario. Cuando instala BIND. }. Eí sistema de nombres de dominio El sistema de nombres de dominio 75 información de la caché caduque. se configura un servidor de caché por defecto. Cuando instala BIND en paquete genera los archivos de configura- Linux. arpa" { ción por usted.

.0. servidores de nombres.127. revisaremos en detalle un archivo de zona primaria. * Archivo local host (para la zona "0. tiene que escribir este archivo desde cero o usar uno de los archi- vos que acompañan a BIND como plantilla. que identifica un servidor de correo en el dominio).7 El sistema de nombres de dominio El sistema de nombres de dominio 77 cular de! archivo de zona primaria. gistro A).m-addr. La sentencia de opciones contiene dos líneas.1).arpa"): Hemos nombrado el archivo de zona para el dominio centralsof t otg como . que asocia direcciones con nombres). Los archivos de zona El archivo de ejemplo named conf alude a los otros cuatro archivos de confi- . NS (Servidor de nombres). El no está estandarizado.253. algunas veces llamado base de datos de dominios. estos archivos típicamen- te aparecen cuando instala BIND y no necesita cambiarlo). El archivo convierte las direcciones IP en nombres. independien. "ceiitralsoft.org"): Este archi- vo. Normal- mente. El archivo de zona primaria asocia nombres a direcciones IP y ofrece información sobre los servicios que los equipos ofrecen en Internet (incluyendo servidores Web y FTP.0. La segunda línea 8 MX (Pasarela de correo. pero los formato del archivo archivos de zona local para cada aspecto de su sistema es la de reducir el elementos que contiene están especificados en el RFC 1035. direcciones de los servidores raíz de Internet. Es una imagen espe- pri centralsof t org (el prefijo pri le ayudará a reconocer que es el prima- . No viene preconfigurado cuando instala BIND. Que puede parecer información extraña para almacenar.in-addr. Tendrá la oportunidad de usarlos cuando profundicemos en el tema. etc. nados con su ejecución. archivo de configuración por defecto contiene las dos primeras sentencias El de zona (para los servidores raíz y los archivos locales. namecl debe conocer las di- recciones de estos servidores para poder empezar a consultar cuando nin- guno de los componentes del dominio solicitado esté almacenado en la El archivo de zona primaria caché. 8 SOA (Comienzo de autoridad). debería darle temente de que esté accediendo a un equipo local o a uno remoto. En resumen. * Archivo de zona inversa (para la zona "158. La primera muestra la localiza. .70. que define un alias para un equipo en un re- Las subsiguientes sentencias de zona. usan varios tipos de registros. Si está usando el conjunto de archivos que la instalación ofrece.0. que se está ejecutando. guración. named conf necesitará apuntar a los siguientes archivos . tifican la localización de varios archivos que contienen la información de confi- ° PTR (Puntero. ción de named pid que simplemente contiene el ID del proceso del demonio named . a Archivo Hints (para Sa zona El archivo contiene los nombres y las Ahora. entre los que se incluyen: guración. de la sentencia de opciones define el directorio que contiene los archivos relacio. La ventaja de crear ración que DNS necesita. pero que es muy útil cuando se quiere parar o reiniciar named. • A (Asocia un nombre de equipo a una dirección). 8 CNAME (Nombre canónico. La tercera línea tiene el directorio que los contiene. servidores de correo. Tendrá que añadir entradas para los archivos de zona inversa y zona primaria. Puede reconocer un archivo de zona inversa porque tiene una extensión in-addr-arpa y usa registros PTR (que se describirán después). un ejemplo de lo que vimos antes. un nombre a su archivo de zona primaria añadiendo un prefijo a su dominio. /etc/bind. 8 Archivo de zona primaria (para la zona. iden. en las sentencias de zona: Noes necesario intentar memorizar o comprender estos tipos de registros en este «punto.). tráfico y permitir al software funcionar de la misma forma. define la mayor par- te de la información necesaria para resolver las consultas sobre el dominio que administra. .arpa"): El archivo El grueso de la información de configu- archivo de zona primaria contiene el representa su propio sistema (dirección IF 127.

expiry. De izquierda a derecha los campos son: • Retry: Con qué frecuencia debería intentar conectarse al maestro si una ® Ñame: El nombre raíz de la zona. Las siguientes líneas de los registros SOA contienen aspectos necesarios para Eso es un registro SOA. por lo que servidores esclavos sabrán cuándo ha actualizado la in- dad. • Expiry: La cantidad de tiempo que un esclavo debería intentar conectar bolo @también se conoce como origen en la jerga DNS. El sím- . serial-no realiza una transferencia de zona. @ IN SOA serverl. 2006 12 103 es el número de serie ini- simplemente como: cial en nuestro archivo de zona de ejemplo. el símbolo (@). 86400 minimum-TTL. una @ tiene otro significado en este archivo. el dominio que está sirviendo. formación. si no quisiera añadir el comentario el anterior e indica la fecha en que fueron hechos los cambios. Por lo que su archivo de zona tiene que indicar dónde empieza la autori. pero la gran mayoría de expiran y el esclavo es incapaz de conectar con el servidor para actualizar usan la dase 1N (Internet).800 segundos = 8 horas). incluso aun- recurso SOA. En nuestro archivo de ejemplo. ( porque como hemos visto. Eltiempo especificado aquí es también la cantidad de tiempo que un servi- • Tvpe: El tipo del registro de recurso DNS. línea.000 segundos = 7 días). cada número de serie es mayor que comienzo de un comentario. seconds pecificar dicha dirección con un formato inusual: root localhost Fí-. Aquí tenemos que especificar el 28800. En nuestro ejemplo. refresh. serial-no Por tanto. jese que la dirección también debe acabar con un punto. seconds 7200.) que denote la raíz de la jerarquía DNS para poder indicar que la rio). Algu- mos 604800 (604. se sustituye con un punto. ruta es un nombre de dominio completo. Este número está a menudo en formato de fecha YYYYMMDD.) no indica el final de una línea. root localhost . seconds usuario root del sistema local o root@localhost. nos detalles son bastante importantes: el nombre debe terminar con un .centralsoft. usa- e Nameserver: El nombre completo del servidor de nombres primario. y funciones que no son de internet. con el maestro antes de que los datos que contiene caduquen. El símbolo @ es la referencia abreviada a conexión fallara. Las otras clases están para protocolos los sitios la información. Usted la parte en el directorio DNS distribuido. El va- lor está representado en segundo. SOA es el Comienzo de Autoridad. que lo distingue los servidores esclavos: como información para servidores autoritativos (tanto primarios como secun- darios) en contraposición con los servidores de sólo caché. éste 2006012103. A la vez que escribe su • Serial-no: El número de serie para configuración actual. podría escribir la siguiente línea: vo comprueba periódicamente el número de serie para ver si ha cambiado.org. Cada escla- "serial-no". sólo indica el varias veces cada día). es un registro de dor esclavo debería continuar respondiendo a las peticiones. no puede usar la @ que aparece en todas las direcciones de correo de Internet. De esta forma. Las primeras líneas ofrecen la información necesaria para sincronizarlo con • Dirección de Email: La dirección de correo electrónico de la persona que es el servidor secundario o esclavo: responsable del dominio. valente a usar serverl centralsof t org en nuestro ejemplo. que no haya podido actualizar el archivo de zona. representa el valor que puede tolerar el manejo de información obsoleta. . En este caso. eche punto (. = 2 horas). las futuras consultas irán dirigidas a los servidores raíz. ción. es equi- del archivo . • Refresh: El intervalo en que un servidor DNS esclavo debería sondear al el 2006012103 maestro para determinar si es necesaria una transferencia de zona. Hay otra convención DNS específica aquí. un vista- zo al final del capítulo. con una etiqueta de doble dígito al final (lo que le permite editar el archivo Nota: Un punto y coma (. Si el número actual del servidor es mayor que el que tiene el esclavo. . El intervalo en nuestro ejemplo es 7200 (7200 segundos la zona actual /etc/ named conf En otras palabras. Por tanto. Existe un número de clases. para verlo entero. pero tenemos que es- 604800. . es decir. usamos Fijémonos en la primera comienza por el valor 28800 (28. retry. 2006012103. El sistema de nombres de dominio El sistema de nombres de dominio Describiremos cada parte del archivo aquí. Si los datos 0 Class: La claseDNS. seconds ) . el sistema le cede la autoridad de su parte incrementa este número cada vez que hace un cambio en la configura- a usted. .

org (el ser- NS serveri.org. añadir accounting centralsof t org simplemente reque- .centralsoft. y así sucesiva- Lo siguiente es un registro MX que identifica el servidor de correo del dominio: mente. Un registro A asocia un nombre a una dirección IP. algunas cosas útiles que puede hacer con el archivo de zona primaria.centralsoft.158. (10). prioriza los servidores. si sertar los nombres de equipo apropiados a la direcciones IP de su entorno.org.centralsoft. que tiene una prioridad de El registro MX de nuestro archivo de zona primaria va seguido por varios . malí someotherdomain com.org. el MTA de origen primero intenta si el . ya que tiene la prioridad más alta .centralsoft. ¿Qué sucede si quiere enrutar correo a distintos de- apuntando a una única dirección IR Sin embargo. ejemplo) puede usarse para indicar el orden en que debería intentar conectarse conectarse a serverl centralsof t . . El segundo campo de este registro (10 en nuestro Ahora correo va a centralsof t org.42 server2 A 70. E[ sistema de nombres de dominio El sistema de nombres de dominio Minimum-TTL: tiempo de vida por defecto para este dominio en segun- El Registros MX dos.org. pero la mayoría solo MX 20 mail.253. El registro SOA va seguido de una Este registro indica la dirección de correo electrónico que el dominio lista de nombres de equipos de varios tipos: centralsoft. Ya que 86400 segundos son un día. puede tener múltiples registros A user@centralsof t . proporcione una lista con más de una pasarela de correo. . riría otro registro: Mejoras y características avanzadas accoanting.org MX 10 serverl. Muchas pasarelas eligen uno de manera aleatoria para serven A 70. . MX 10 serverl.42 Nota: DNS no especifica cómo tratar múltiples servidores de correo con la www A 70. esto se transformaría en accounting centralsof t.253. Nuestro archivo tiene cuatro registros A. pero es conveniente en caso de que quiera añadir un comentario ai final de la línea. que en su lista tiene la prioridad más alta. org . 158 42 . un registro MX se parece a esto: registro de consultas a caché durará un día. . como MX 10 serverl.org.centraisoft.45 implementar un tipo primitivo de balanceo de carga. el origen de la zona se agrega al nombre. .centralsoft. deberá tener en cuenta sin el punto al final. Una vez más. cada nombre de equipo no partamentos de una compañía o a la sección de una agencia gubernamental? puede tener más de un registro A. un servidor de correo en nuestro ejemplo.org. el siguiente servidor.centralsoft. Fíjese en el al final de accounting. MX 10 serverl. registros A: 20 .org. Números más bajos indican priori- proporcionó cuando registró el dominio).centralsoft. A 70. Por tanto.org. Cualquier registro de recursosque no tenga especificado el TTL usa el valor por defecto que es 86400. ciando tres nombres a una dirección otro nombre a otra dirección diferente. como explicaremos más tarde). se muestra aquí: Hemos usado MX 10 serverl. misma prioridad. de entornos de producción ofrecen varios (bien para gran volumen de tráfico o como respaldo por si uno falla). vidor de correo para el dominio) cuya prioridad debe ser 10. Por ejemplo.. hemos definido registros MX sólo para el correo dirigido a nombres que pueden asignarse a un equipo. centralsoft. el Como ha visto.158. lo que es incorrecto. asegúrese de in- define escribió: punto.centralsoft. donde Estos registros NS especifican ios servidores de nombres del dominio (los que más de un servidor de correo está disponible. Debido a los múltiples Hasta ahora.centralsoft. Si serverl centralsof t org no está disponible..158.org.com. el servidor lo vuelve a intentar con el servidor cuya prioridad es la segunda más alta. aso.org.253. usará es decir.org. No obstante. . Si no anade el Si un archivo con los contenidos de la sección previa. tendrá funcionando un archivo de zona primaria (aunque necesitará los otros archivos accounting.centralsoft. centralsof t org. y De esta forma.org. no es necesario un punto dades más altas (el 1 es la prioridad más alta).someotherdomain. el MTA de origen con los servidores MX. . NS server2.org debería despachar al serverl. si no responde.253. Las prioridades entran en juego en configuraciones más complejas. Puede hacerlo añadiendo subdominios a sus registros MX. también. El sistema de prioridades funcio- na de esta forma: el servidor de correo remoto intenta conectar con el servidor y coma.

frasear registros de put’dejf estar ! ct-n. Un CNAME debe siempre apuntar a un registro A.158.org tiene la dirección IP 70. situaciones. desaconsejan su uso.tr '-i! cof‘ oír.org y server2 centralsof t org: . .org.org. Org y server2 centralsof t org. . centralsof t org. . por lo que BIND añade el origen de la al descargar paquetes Linux. un nombre alternativa para www . serverl centralsof t . . solamen- te tendrá que actualizar el registro A.158. Por lo que los registros CNAME todavía i El problema del Bootstrapping y los registros pegamento.org. independientemente de si están incluyen- do www. por ejemplo. . WWW A 70. no debería usar nombres de equi- Especifique la dirección IP de serverl. su directorio DNS contiene muchos registros A Por ejemplo. . que controla si las pasarelas de correo deberían aceptar correo enviado a nuestro do- .42 Registros CNAME (Recuerde añadir punto al final del nombre.42 quina que www centralsof t org.42: cenfcralsoft. centralsof t org. donde www . tendrá que actualizar cada registro A.. . puede pensar que es un alias En un navegador.org apunta a diferentes direccio- . pero la mayoría de los visi- .42 un nombre distinto en su registro A. po CNAME en registros MX o SOA. pero el archivo de zona primaria tam- . que es técnicamente diferente de centralsof t org. Pero si tiene un solo registro A y todos los otros nombres en registros CNAME. La gente suele usar los pi ohlema del bootstraping no puede usarlá misma técnica para iniciar la j registros TXT para embeber registros SPF (Framework de política de envíos). si por tanto tiene que estar en un sistema diferente para el caso de que nuestro apuntando a la misma dirección IP y migra a otro servicio de alojamiento que servidor de nombres primario se caiga. si están en la zona -rué debe buscarse. zona.253. . Por tanto. .158. . este es el clásico- .centralsoft. . A 70.org. no está permitido: MX 10 ftp serven A 70 253 158 42 . Además.org. www. . El uso de registros CNAME tiene pros y contras. es el equipo. server2 A 70 253 158 45 . . especialmente Las www no van seguidas de un punto. El sistema de nombres de dominio 83 El sistema de nombres de dominio Registros A Los registros NS y MX usan nombres de equipo como centralsoft. hemos creado este registro: quiere decir que ftp cent ralsof t org es . Muchas personas los consideran los re- gistros DNS más importantes porque puede usarlos para crear direcciones como www centralsof t org. o no. ftp CNAME www tantes esperan ver el mismo sitio Web.253. Los registros A realizan esta asociación. . A 70.) el CNAME es la abreviatura de nombre canónico. asigna una dirección IP distinta. centralsof t org apunta a la misma má- .centralsoffc. Muchos especialistas en DNS El registro para server2 centralsof t . donde el repositorio fuera http / / f tp mirrors : . . - juegan un pequeño papel en el mundo del DNS. Podría encontrar . Esto. Los registros TXT le permiten añadir texto a una zona.158. probablemente estará acostumbrado a introducir para un registro A. i Podna preguntarse tomo serve-rl central? <if t .253. Aunque todavía se puede encontrar funciones para los re- nes III lo que tiene sentido ya que es nuestro servidor de nombres secundario y gistros CNAME.253. El siguiente registro A simple de nuestro archivo de zona primaria indica que centralsoft. por lo que ftp . centralsof t org en lugar de centralsof t . no a otro registro CNAME. 9 ser ver 2 ng Registros TXT y SPF 1 acostumbrados a. En estos casos es casi siempre cierto que un registro CNAME se ha usado para asignar la parte ftp del nombre del equipo a un sistema que tiene www. Por ejemplo: www. El efecto es el mismo que especificar: kernerl . bién debe especificar la dirección IP con la que se deben asociar estos nombres.

42 serverl A 70.html ?mydomain=&x= 2 6 &y=8. mu- tros SPF para evitar el spam que llega a su dominio. seconds ) .158. . . refresh.org. Con nuestro archivo de zona primaria completo.70.org.Fíjese en que hemos añadido registros CNAME y TXT a las partes que zone "158. seconds named conf. ping inverso a su dominio.centralsoft. crea- car el dominio centralsoft. MX o CNAME. 158.centralsoft. seconds 86400 70. Es como si fuera un espejo del archivo de zona primaria.253. . . pero el agente de correo receptor no puede hacer centralsoft. retry. muchos servidores de Internet usan el cará como spam. ser. . Registros PTR en lugar de listar los nombres primeros.ial-no ftp CNAME www 28800. seconds 86400 mínimum.org. el archivo de zona inversa lista las direc. centralsof t org. 253. in-addr. adelante. Puede encontrarse un asistente para crear registros SPF en ping inverso para verificar el origen del correo y así evitar el spam. inversa NS serverl. Un archivo de zona inversa asocia di- recciones 1P a nombres.158. org. comentamos antes: type master. crearemos un archivo de zona inversa. arpa" ® 1N SOA serverl. : . . TXT "v=spfl a -all" no deseado.253. Ya que no queremos que el correo originado en el domino centralsoft.. . . NS server2 centralsof t org. NS serverl. El DNS indica qué MTA es responsable del correo para el dominio de la tro archivo de zona: dirección de correo del remitente. . ( }. ( server 2 A 70.253 70 in- .TTL.253. pri centralsof t . El comienzo depri 158 . nombre de dominio. addr arpa y colocaremos el archivo en el mismo directorio que nuestro archivo .253.253. . por lo que invertimos los elementos 604800.org sea clasificado como spam. . cen- 7200. Nosotros : propósito de los registros SPF que se vieron antes.centralsoft. expiry. Pero aquí no añadimos ningún registro A. TXT "v=spfl a -all" 604800.253 . En su lugar. 70. . El sistema que hemos descrito hemos usado este asistente para crear dos registros SPF para centralsof t org.158. El sistema de nombres de dominio El sistema de nombres de dominio minio.centralsoft. NS server2. root localho3t . in-addr arpa" { . file "pri. necesitamos un archivo de zona inversa. los programas pueden bus. seconds . Pero todavía mos registros PTR. este es el http //www.org y todos los subdominios DNS. tenemos que colocar esta entrada Ahora echemos un vistazo a nuestro archivo de zona.org. y es precisamente esto: un puntero a un PTR es la ciones IP primero. para apuntar a este archivo. in- MX 10 serverl. seconds centralsof t org . Los grandes proveedores de correo como Yahoo! y Hotmail usan ios regis. retry seconds .org.70 y usarlos en la sentencia zona en mínimum -TTL. .org. en nuestro archivo named conf ..org/wi zard. Los números pueden parecer extraños.42 addr arp se parece mucho a pri centralsof t org: . pri centralsof t org. . . 15 8. ¿Por qué querría alguien usar el archivo de zona inversa? En el pasado. openspf . El dominio in-addr arpa es el dominio de alto nivel usado para ) .org. las búsquedas inversas. root localhost ..org.158.org.centralsoft.42. 2 5 3.centralsoft. por lo que detecta una irregularidad y rechaza el correo serverl. Llamaremos a nuestro archivo de zona inversa pri. Muchos difusores de spam intentan difundir el correo usando distintos MTA. de zona primaria.253 158. . TXT "v=spfl a mx ~all" una búsqueda inversa. 70.158 para producir 158.centralsoft. serial-no 28800 refresh. 2006012103.45 ** 2006012103. WWW A 70. Creemos uno que comience por la dirección de . expiry. Hoy en día. seconds server . TXT "v=spfl a mx -all 7200.centralsoft. . pero siguen un patrón simple. un MTA lo clasifi. abreviatura de puntero. Primero. ® IN SOA serverl.253. aquí tiene un problema a la hora de despachar correo que será explicado más luego los hemos embebido en registros TXT y después los hemos añadido a nues. A 70. Si un correo electrónico llega chas organizaciones no le permitían usar sus servicios si no podían hacer un procedente de un equipo que no está listado en el registro SPF. tral -soft org está en la red 70.

org.>>HEADER<< .. seconds . Got answer: Una vez que ha editado todos los archivos de configuración y de zona.158.org. ADDITIONAL: : O 45 PTR server2. una nueva entrada DNS para el dominio correspondiente.42. . seconds . 42: centralsof t org: . central soft org .centralsoft. favor.253. <<>> DiG 9... <<>> DíG 9. ANSWER: 1. .. . Nuestro archivo de zona inversa se debería parecer a lo . Ahora podemos hacer una búsqueda inversa: 45 PTR server2. Puede parar y arrancar named así: ** . por lo que añadiremos: . 70..253. través de la sentencia zona que mostramos en la sección anterior.158.253.>>HEADER« .158. es suficiente con que le .. la otra dirección IP que usamos es 70. que este archi. Para . NS serverl.42 . retry. Query tíme: 198 tnsec 28800 refresh... MSG SIZE revd: 49 86400 minimum-TTL. .. in-addr.org.org. .org. ANSWER SECTION: © IN SOA serverl.org Cree exactamente un registro PTR para cada dirección IP de su dominio.158. IN PTR Si se produce algún error o si el servido BIND no hace que se espera.253.centralsoft. id: 4096 : ta que BINO conozca los cambios.. buscaremos la dirección ÍP de tienen que especificar la parte final de la dirección IP del equipo. En el futuro. ANSWER: 1. { . id: 48489: .centralsoft. 42 158 253 70 in-addr arpa . .2. necesi.. si el único cambio que hace es actualizar el archivo de zona con .42.opeode QUERY.org está completo. #dig centralsoft. 86400 IN A 70. .158.. . . 42 PTR centralsoft.org. WHEN : 604800. org. diríjase a la sección de resolución de problemas para ver en detalle los pro- blemas más comunes.158. SERVER: 81 169 163 1C4#53 81 169 163 104 . expiry. Query time: 2 rasec . status: NOERROR. a El comando rnde se discutirá con más detalle pronto. serial-no . # dig -x 70. IP 70. . QUERY: 1.centralsoft. 253. 7200. .2.org. ... ..45 (para . . status: NOERROR. Nuestro servidor primario ffrndc reload centralsoft.org. por lo .158. Como puede observar.1 <<>> centralsoft. .235. .42 .253. . AÜTHORITY: 0. WHEN: Sat Mar 11 18:57:54 2006 . . . seconds Sat Mar 11 18:55:21 2006 . ADDITIONAL: 0 # /etc/init d/bind9 stop . 1N A siguiente: .253. Primero.. arpa. root localhost . Got answer: server2 centralsof t org). QUERY: 1. QUESTION SECTION Entonces esto es todo. ..42 2006012103. global options: printcmd .centralsoft.. { centralsoft. ANSWER SECTION: 42. flags: qr rd ra. . 42 PTR centralsoft. .. seconds ) . global options: printcmd . flags: qr rd ra..1 <<>> -X 70. .org nuestro ejemplo. indicado. . El archivo named conf ya ha . . 5304 IN PTR centralsoft. . Por lo que todos los registros PTR herramienta de línea de comandos dig..org. AÜTHORITY O. SERVER: 81 169 163 104#53 (81 169 163 104) . esta búsqueda devuelve automáticamente la dirección NS server2. Ahora podemos probar nuestra configuración haciendo una búsqueda con la vo define los equipos del dominio 70.. 158.. : ) El sistema de nombres de dominio El sistema de nombres de dominio centralsof t . MSG SIZE revd: 98 indique a BIND que recargue la información de zona (en lugar de reiniciar el servicio entero): La búsqueda directa y la inversa se complementan. QUESTION SECTION: # /etc/init d/bind9 start . . 70.opeode QUERY.

. . Por ejemplo. no obstante. lo usa como herramienta primaria de búsqueda.org y sus subdominios. . .42.root". o { type slave file "sec. #nslookup > Ahora. BINO se divide en server2 centralsof t org. En caso contrario. El sistema de nombres ele dominio El sistema de nombres de dominio Herramientas BINO Ahora. El modo interactivo permite consultar los ser- vidores de nombres para obtener información sobre varios equipos y dominios. por lo que .253.10 Reinicie named en server2 centralsof t org y luego debería encontrar el . dirección IP: . nslookup ofrece una interfaz donde se pueden ejecu- archivo / etc/bind/ sec centralsof t org en su servidor de nombres secun- . asegúrese de que el número de serie se incrementa. de que el servidor primario (serverl centralsof t org) falle. El tipo esclavo. nstookup } : nslookup trabaja de manera similar a dig pero está obsoleto en Linux.1 Address: 68 94 156 1#53 guardar la zona esclava.com secundario. una herra- 1 . quese indica en la sentencia final indica que es una zona #nslookup nsl. . { plemente imprime el nombre y la información solicitada para un equipo o domi- }.org". También echaremos un vistazo a rnde. Non-authorítative answer: Esto es todo lo que tenemos que hacer para configurar el servidor de nombres Ñame: nsl.org” dos: interactivo y no interactivo. nslookup consulta servidores de nombre de dominio de Internet en dos mo- zone "centralsoft. }. El modo no interactivo sim- masters 70. type hint file "db.158. levantaremos nuestro servidor de nombres secundario.pid" mas de DNS debido a su flexibilidad. servidor de nombres primario con algunas diferencias: consulta. Otra alternativa podría // query.94.google. mienta de administración útil que se incluye con BIND.centralsoft. y en la línea maestra especificarnos la dirección IP del . . Enel modo interactivo. Una herramienta que ya ha usado es dig. . .239. tres partes: el demonio named. Address: 216. para imprimir una lista de equipos en un dominio. .32. En la línea del archivo especificamos el nombre del archivo donde se debe Server: 68. nio. Como hemos mencionado anteriormente en este capítulo. options La mayoría delos administradores DNS usan dig para solucionar tos proble- { pid-file "/var/run/bind/run/named.source address * port 53. servidor de nombres primario. ser. . Por ejemplo: dario. { requiere más trabajo. . zone " " { .google. file "db local " . . mientas de búsqueda suelen tener menos funcionalidad. pero debería serle familiar porque Microsoft Windows aún type master. . tar comandos. podría ejecutar la siguiente búsqueda para encontrar información sobre el servidor Google: La diferencia más importante es la que se comentó antes en este mismo capí- tulo. dig hace búsquedas DNS y muestra las El archivo named conf para server2 centralsof t org es parecido al del . Usarlo zone " 0 0 127 in-addr arpa " . . ¿Qué ha ocurrido? El servidor de nombres secundario ha contactado con el servidor de nombres primario que le ha transferido la zona. que los administradores usan para consultar los servidores de nombres DNS. facilidad de uso y claridad. como la de una actualizada no se transferirá al servidor de nombres secundario. la zona Desde la interfaz se pueden hacer varias búsquedas simples. nslookup. respuestas devueltas por los servidores de nombres y las estadísticas sobre la .156. cada vez que actualice una zona en el servidor de nombres primario. Actuará como copia de seguridad en caso . las personas todavía podrán buscar centralsof t . Otras herra- directory "/etc/bind". }.com r esclava. la librería resoluta y algunas herramientas.

com Default server: google. QUERY: 1. . y tanto named como rndc leerán la clave desde esta localiza- ción.com Address: 64 233 167 99#53. ANSWER SECTION: • -s server: Envía el comando al servidor especificado en lugar de al servi- centralsoft.156. qué es el Server: 172. .30.net 1 .253. . rndc Default server: google. > host 68.org" . El archivo rndc key debería haberse creado durante . que los subcomando host ofrece una utilidad simple para realizar búsquedas.conf del equipo que Address: 172 30 1 2#53 realizó la búsqueda.158. .42 bind/rndc . Esta clave está almacenada en el archivo /etc/ centralsoft. Non-authoritative answer: servidor: 42 158 253 70 in-addr .centralsoft.swbell.org deben compartir la misma clave.94.. introducidos mediante línea de comandos al servidor que ejecuta server.org #rndc rndc-options command command-options Trying "centralsoft. He aquí un ejemplo: los comandos en un servidor de nombres. .com Address: 72 14 207 99#53 administrar named usando la línea de comandos. flags: qr rd ra.1. centralsoft. ..opcode QUERY.key. = ns2. . ->>HEADER<<. . . ambos > host centralsoft.net.94. ñame = adsl. 6 -REL-NOESW Tue Feb 1 10:10:48 UTC 2005 buildd@rockhopper /build/buildd/bind.swbell.70-253 -158 -42 dsl rcsntx .org . 29437 IN NS serverl. El script de inicialización de BIND 9 también usa rndc. .156.org. Authoritative answer s can be found frorn: 158 253 70 in-addr arpa nameserver . .org. 156 94 68 in-addr arpa domain ñame pointer dnsrl.42 dor local. Para que rndc ejecute para convertir nombres a direcciones IP y viceversa. .4. . CUESTION SECTION ® -k key-file: Usa el archivo con la clave especificado en lugar del archivo . Introduzca exit para cerrar la sesión de búsqueda interactiva.. host imprime un pequeño resumen en la línea se Para evitar que los usuarios no autorizados accedan a su servidor de nombres.-centralsoft . Puede usar host de nuevo para averiguar el nombre de este . IN A por defecto /etc/bind/ rndc key. = nsl. .8 . id: 43756 : Ahora veremos algunas opciones de rndc comunes que podría necesitar (lea . status: NOERROR. puerto 53. .. . . Por > ejemplo. También puede usar named para arreglar fallos en algunas situaciones. .arpa . La gente lo usa principalmente debería usar una clave secreta para autentificar el acceso. . de comando de los argumentos y las opciones. .4. la instalación de BIND. El comando Iserver produce una salida como la siguiente: named 8. AUTHORITY 1.2 servidor de nombres especificado en el archivo resolv. rndc permite Default server: google.253. La utilidad envía los comandos . : .sbcglobal. . incluso en un equipo local.253. . AUTHORITY SECTION: • -V: Activa el modo de información completo. no dan argumentos u opciones. . 158 253 70 in-addr arpa nameserver . 86400 IN A 70. El sistema de nombres de dominio El sistema de nombres de dominio > 70.6/ src/bin/named : > Iserver google. . server (que usa otro servidor para hacer una búsque.158. incluyendo Iserver (que usa su servidor local para hacer una búsqueda).org.42 Esta información viene de la dirección 1P 68.net. ADDITIONAL: : O las páginas-manual de rndc para ver la lista completa): .1 swbell . . . ANSWER: 1. ># named -v da) y host.. Cuando pone host en modo completo con la opción -v. ofrece información El comando rndc tiene la siguiente forma: similar al comando dig: r- > host -v centralsoft. eje- cute el siguiente comando: Puede ejecutar varios comandos.158. Cuando El procesa.com Address: 64 233 187 99#53. una lista completa de los comandos. BINO ofrece un comando rndc como parte de la instalación. . para averiguar el número de versión de su implementación BÍND. Aquí se muestran algunos de los comandos que rndc suele enviar a named (para Received 71 bytes from 68 94 156 1#53 in 30 ms . .org has address 70.net.1. simplemente introduzca el comando rndc): .

serverl:-# ls -1 /etc/bind/rndc key . rndc. haremos uso del comando del sistema killall. ls: /etc/bind/rndc . query logging is OFF bios afectan a una única zona. . rnde: neither /etc/bind/rndc conf ñor /etc/bind/rndc key was found . Probemos a entrar en el sistema como root y ejecutar ei ® querylog: Activa o desactiva el log de todas las consultas hechas por los comando: clientes a este servidor de nombres. ® retransfer zone: Obliga a volver a transferir la zona especificada sin te. pero en oca- El coge la ruta completa del nombre del programa named. serverl:-# rnde status mos cómo el comando status de rnde muestra el estado actual de ejecución de number of zones. pueden evitar que rnde envíe los comandos. serverl:-# killall -TERM /usr/sbin/named serverl:-# killall -KILL /usr/sbin/named /usr/sbin/named: no process killed serverl:-# /etc/init d/bind9 start . debug level 0 : xfers running: 0 puestas que se almacenaron previamente en caché. problemas comunes que serverl:-# rndc-confgen -a puede encontrar cuando BIND y DNS están funcionando. Para empezar. Anteriormente. puede evitar veces en un intervalo de unos cuantos segundos. 6 . ejecutaremos el comando killall dos crear archivos de zona descritos anteriormente en este capítulo.key No such file or directory : En este punto del capítulo. guardando y actualizando dinámicamente los serverl:-# rnde status datos antes de salir. que lo hace la instalación de BIND: En esta sección. No es un tratado ex. number of zones: 6 ® reload [zone]: Recarga los archivos de zona. serverl ~# : Podemos comprobar que el archivo no existe con este comando: Resolución de problemas en BINO serverl:-# ls -1 /etc/bind/rndc key . Problemas con este archivo s stats: Vuelca las estadísticas actuales de named al archivo named stats . que Nota: diseño del sistema de nombres de dominio es robusto. Siguiendo estrictamente los patrones para Para detener named de manera correcta. pero mantiene todas las res. También debería saber cómo configurar sus archivos cómo corregir pro- y Podemos solucionar el problema regenerando el archivo de la misma forma blemas de sintaxis. veamos un consejo sobre resolución DNS. Starting domain ñame Service: named. pero debería ayudarle a ejecutar DNS en su servidor Linux sí tiene -rw 1 root bind 77 Jul 19 22:38 /etc/bind/rndc key . puede indicar que sólo se recargue esa server is up and running serverl ~# : zona. Es un comando de conmutación: con- serverl -# rnde status : muta al estado activo si estaba desactivado y viceversa. Esto permite hacer xfers deferred: 0 cambios en los archivos de zona y que tengan efectos en sus servidores soa queries in progress: 0 maestros y esclavos sin perder todos los nombres ya resueltos. vi. • stop: Detiene el servidor. status: Muestra Aquí un ejemplo de que deberíamos ver si el archivo de la clave no existiera: • el estado actual del servidor de nombres. debería tener un conocimiento funcional acerca de DNS. haustivo. Debido a que named no tiene esta nueva clave. siones pueden aparecer errores. Para ello. cubriremos algunos aspectos básicos. debemos matar el proceso named y reiniciarlo. : El sistema de nombres de dominio Ei sistema de nombres de dominio a halt: Para el servidor de nombres inmediatamente. serverl cias de zona. . luego remidamos named: problemas que están fuera del alcance de este libro.key para que named acepte sus comandos. como errores tipográficos. nuestro servidor DNS. Si los cam. problemas para que su dominio resuelva nombres de equipos o haga transferen. El comando rnde depende de una clave compartida en el archivo /etc/bind/ ner que comprobar el número de serie.

La mayoría de los pro- -rw-r--r-.0. gurarse de que las consultas acerca de sus equipos se responden de manera ade- Puede comprobar si los archivos están en las localizaciones correctas así: cuada. Si named se inicia bien pero no carga ningún archivo de zona.org/IN: loaded serial 2006062704 Stopping named: rndc: connect failed: connection refused running EOK] Starting named: [OKj # No se reconocen los equipos Este tipo de error también puede suceder como resultado de ejecutar BIND en El siguiente paso es comprobar el correcto funcionamiento de DNS para ase- un entorno chroot. Ya que named se ejecuta en un entorno using I CPU chroot en / var/lib/named. Use la secuencia de comandos kiliall descrita no estén en el directorio aislado. conf sus servidores de nombres con las direcciones correctas. . 70 253 158 42#53 . pri opensourcetoday . 127. Primero. . de zonas que debe cargar.O db.4 -u bind -t /var/lib/named losarchivos de zona se han cargado. soa querías in progress : 0 org query loggir. necesita asegurarse de que el archivo /etc/resolv.127 db.arpa . . . .empty named. buscará todos los archivos relativos del directorio. listening on IPv4 interface ethO. compruebe el archivo /var/log/ syslog para ver si los archivos de running zona se han cargado. in-addr. zone centralsoft. 70. . serverl # named se inicia pero no resuelve nombres Si estos archivos no existen. veamos algunas situaciones donde named no funciona correctamente.0.1 root bind 1611 2006-09-07 12:21 /var/lib/named/etc/bind/ gramas usan las direcciones de este archivo para determinar qué servidores de named conf . conf local • .94 El sistema de nombres de dominio El sistema de nombres de dominio debug leve! 0 : /var/lib/named/etc/bind/ # ls xfers runníng: 0 db. rndc key . nombres deben consultar y en qué orden: . Debería ver algo como esto: log muestra que BIND se ha iniciado. zone supportcall. .org/IN: loaded serial 2006070502 #/etc/init d/ bind9 reload . . 70 253 158 42#53 .pri 156 18 67 in-addr . pri centralsof t org . de zona debe colocarse en la ruta relativa del directorio /var/líb/named. conf.2. local named.4 -u bind -t /var/lib/named serverl:-# kiliall -KILL /usr/sbin/named using 1 CPU /usr/sbin/named: no process killed loading conf iguratíon from /etc/bind/named conf ' . . 127. cuidado para asegurarse de que cada archivo está en su lugar. command channel listening on. el entorno chroot no está configurado adecuada Ahora. 127 0 0 1#953 . ' serverl:-# /etc/init d/bind9 start . o reiniciar el servidor de nombres: r zone 158 253.root named. .1#53 Starting domain ñame Service: named.0. cuando uno o más archivos no está en el directorio aislado. command channel listening on ::1#953 Otro error común es el fallo de una conexión que involucra a rndc al recargar zone 0 0 127 in-addr arpa/IN: loaded serial 1 . 2006070401 . xfers deferred: 0 db. ' Por lo que realmente está leyendo el archivo /var/lib/named/etc/bind/ listening on IPv4 interface lo.255 named. conf pri 156 18 67 in-addr arpa . . . .0. 1#53 named conf para. . es. . command channel listening on ::1#953 Ahora. arpa/IN: loaded serial. Cada uno de estos archivos la lista listening on IPv4 interface ethO. Vuelva al comienzo del capítulo y siga las instrucciones con La localización incorrecta de los archivos BIND a menudo causa problemas.rf cl918 db. conf options . serverl ~# : command channel listening on 127 0 0 1#953 . . pecialmente en entornos chroot donde los archivos BIND están en un directorio Una vez arreglado el problema. . server is up and running zones . pero no incluye líneas indicando que El starting BIND 9. He aquí un ejemplo de log: serverl:-# kiliall -TERM /usr/sbin/named starting BIND 9.2. necesitará parar y reiniciar named para que aislado.g is OPF db. . . Necesitará mirar el archivo /var/log/syslog en la sección previa: para ver si este es el caso. puede que rndc pueda conectar con el servidor. listening on IPv4 interface lo. loading conf iguratíon from /etc/bind/named conf ' . o completamente. conf lista # 1 s -1/var/lib/named/ etc /bind/ named.

: : . : : .. . . )

El sistema de nombres de dominio El sistema de nombres de dominio

serverl:-# cat /etc/resolv. conf www. centralsof t org . 86400 IN A 70.253.158.42
search centralsoft.org
nameserver 70.253.158,42 ; AUTHORITY SECTION:
;

centralsof t org 86400 IN NS serverl centralsof t org
. .

nameserver 70.253.158.45 .

serverl ~# :
centralsof t org . 86400 IN NS server2 centralsof t org
. .

El comando simple búsqueda DNS usando los servidores lista-
host hace 1111a ;; ADDITIONAL SECTION:
serverl centralsof t org . 86400 IN A 70 .253 158 42
. .

dos en el archivo /etc/resolv conf Necesita el equipo a buscar como
.

.
server2 centralsof t org
. . 86400 IN A 70 .253 158 .45
.

parámetro, y un segundo parámetro opcional hace que el comando consulte a
un servidor de nombres específico. ie aquí dos ejemplos del comando host y sus
l ; ;Query time: 1 msec
resultados: ;; SERVER: 70 253 158 42#53 70 253 158 42 . . . ( . . .

;; WHEN Mon Jul 17 23:30:51 2006
:

serverl:-# host iiiww.centralsoft.org ; MSG SIZE rcvd 129
; :

www.centralsoft.org has address 70.253.158.42 serverl
serverl:-# host www.centralsoft.org server2.centraisoft.org
Using domain server: La primera parte de la salida indica varios códigos de estado y banderas. Pres-
Ñame: serverl.centralsoft.org te atención particular al valor del estado de la cuarta línea. Es este ejemplo, el
Address: 70 253 158 45#53
valor es NOERROR. Cualquier otro valor indica algún tipo de problema.
. . .

Aliases
Los datos para la zona actual se dividen en cuatro secciones:
www.centralsoft.org has address 70.253.158.42
serverl ~# :
• QUESTION: Esta sección actualmente detalla una consulta. Se muestra
como un comentario porque no es la información que debería estar en un
Una alternativa a host es el comando dig, que es más complejo pero ofrece archivo de zona.
respuestas más detalladas. También tiene más opciones que le posibilitan realizar 8
ANSWER: Esta sección contiene los resultados actuales solicitados por la
consultas más específicas. La salida de dig está formateada según la sintaxis del consulta. Mostrará los registros específicos solicitados, si están disponi-
archivo de zona. Esto es una ventaja, puesto que una vez que haya aprendido
bles, o todos los registros si se está usando el tipo de consulta especial.
qué formato tienen los registros en un archivo de zona, puede comprender fácil-
• AUTHORITY: Esta sección identifica los servidores de nombres oficiales
mente los detalles de estos registros en la salida de dig. dig también ofrece infor-
mación adicional sobre los resultados de la consulta en los comentarios que para la zona de la que viene la transferencia.

empiezan por el carácter • ADDITIONAL: Esta sección ofrece las direcciones de algunos o de todos los
Echemos un vistazo al resultado del comando dig. Muchas líneas de la salida nombres de las secciones anteriores, para evitar el problema de hacer más
de dig son muy largas y no caben en el diseño de página de este libro. En el consultas para obtener esa información. Ahora, veamos lo que debería
siguiente listado, las hemos divido en líneas. Podrá ver un resultado similar cuando
' hacer si se produjera un error. El ejemplo anterior usaba un nombre de
lo ejecute en su línea de comandos: equipo válido para el servidor Web. Esta vez lanzaremos una consulta
para el nombre de un servidor FTP que no hayamos configurado en nues-
serverl:-# dig www.centralsoft.org a tro archivo de zona:

; <<>> DiG 9.2.4 <<>> www.centralsoft.org a serverl:-# dig ftp.centralsoft.org a

; global options: printcmd
;; Got answer ; <<>> DiG 9.2.4 <<>> ftp.centralsoft.org a
; ; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 1633 ; ;global options: printcmd
;? flags: qr aa ra ra; QUERY: 1, ANSWER: 1, AUTH0R1TY 2, ADDITIONAL: : 2 Got answer
;

;; - > >HEADER< - opcode; QUERY, status: NXDOMAIN, id: 6531
<

;; QUESTION SECTION: flags: qr aa rd ra; QUERY: 1, ANSWER: O, AUTHORITY: 1, ADDITIONAL: O
; ; www centralsof t org
. . . IN A
; QUESTION SECTION:
;

; ; ANSWER SECTION: ; ftp centralsof t org
. . . IN A

El sistema de nombres de dominio El sistema de nombres de dominio

;; AUTHORITY SECTION: encontrar en este capítulo todo lo que necesitan, pero los administradores de
centralsoft.org. 86400 IN SOA serverl.centralsoft.org. admin.
centralsoft.org. 2006070502
sistemas empresariales seguro que se encontrarán con aspectos más complejos
28800 7200 604800 86400
de los que puede tratar un único capítulo de un libro.
;; Query time: 1 msec Hay algunos libros que pueden ofrecer información mucho más detallada para
SERVER: 70 253 158 42#53 (70 253 158 42)
;; . . . . . .
administradores DNS de grandes empresas. Entre estos libros destacan "DNS y
;; WHEN: Mon Jul 17 23:30:59 2006
; ; MSG SIZE rcvd: 87 B1ND" de Cricket Liu y Paul Aíbitz (O'Reilly), "DNS & BINO Cookbook" de Cricket
Liu {O'Reilly), "Pro DNS and BIND" de Ron Aitchison (Apress) y "DNS in Action: A
serverl ~# :
Detailed and Practical Guide to DNS Implementation, Configuraron, and
Administration" de L. Dostalek y A. Kableova (Packtj.
Fíjese en que el estado para la consulta es NXDOMAIN, que en esencia significa
Ahora que ya tiene un nombres respondiendo consultas y un ser-
servidor de
"no existe tal nombre de dominio". Si usted no tiene o introduce mal el nombre de
vidor secundario o esclavo que actúa como copia de seguridad, en el próximo
equipo en el archivo de zona, obtendrá este error.
capítulo podrá aprender a instalar una aplicación de servicios Web. Esta nueva
Otro tipo de error que podría ver con dig es cuando un nombre de dominio
aplicación usará los servicios configurados en el capítulo anterior. Una vez que
ha sido delegado a su servidor de nombres, pero el dominio no está configurado
llamada ISPConfig esté configurada y se esté ejecutando, podrá ver
la aplicación
en el servidor o falla al cargarse. Este error devuelve un estado dcSERVFAIL. Si
un ejemplo de un sitio Web completamente operativo. Podemos empezar explo-
ve este error para alguno de sus dominios, necesita añadir el dominio a su ar-
rando cómo administrar la suite completa de los servicios para Internet que ofre-
chivo named conf y asegurar que existe un archivo de zona válido. Si el error
.

ce Linux.
ocurre después de haber dado estos pasos, compruebe el archivo /var/log/
syslog para ver los mensajes que indican por que no se ha cargado la zona.
Demostraremos el problema con un nombre de dominio que está registrado,
pero que no está en uso:

serverl:-# dig linhelp.org a

; <<>9 DiG 9.2.4 <<>> linhelp.org a
; global options: printcmd
; ; Got answer:
; ;
- >>HEADER<<- opcode QUERY, status: SERVFAIL, id:
: 29949
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL : 0

;; QUESTION SECTION:
; linhelp.org. IN A

;; Query time: 2 ms'ec
; ; SERVER: 70 253 158 42#53 (70 25.3 158 42)
. . . . . .

; ; WHEN: Mon Jul 17 23:47:14 2006
;; MSG SIZE rcvd: 37

serverl ~# :

Por ahora, ya debería estar familiarizado con los aspectos básicos de DNS y
BIND. Los administradores de negocios de pequeño y mediano tamaño deberían

Una de las grandes ventajas de Linux es su flexibilidad. Las compañías comer-
como Cisco han ocultado Linux debajo
ciales de interfaces simples que hacen de
sus routers Linksys productos amigables. Nosotros también podemos hacer esto.
ISPConfig (http://ispconfig.org), un Linux amigable bajo licencia de
software libre (BSD), permite levantar servidores multifuncionales que trabajen
en Internet desde una aplicación disponible para descargar. Una vez que lo he-
mos instalado, dispondremos de una herramienta que nos ayuda a configurar y
mantener fácilmente un servidor que nos permite gestionar sitios Web; ofrecer
servicios de nombres de dominio, realizar transferencias de archivos y de correo,
y añadir usuarios, administradores y otros para que puedan acceder al sistema y
realizar tareas administrativas. Además, ¿hemos mencionado que permite reali-
zar todas estas tareas de administración desde una interfaz gráfica?
Hemos seleccionado ISPConfig principalmente porque nos permite desplegar
servidores de aplicaciones muy potentes sobre Linux sin sacrificar su potencia o
su flexibilidad. Además:
® ISPConfig usa demonios estándar que vienen con las distribuciones Linux.
Usaremos Apache para servir sitios Web. Postfix para el correo electróni-
co. ProFTPD para el FTP, BIND para el DNS y MySQL como gestor de Bases
de datos.
• La instalación de ISPConfig configura de manera automática varios servi-
dores de componentes.
• Los paquetes incluidos en ISPConfig funcionan con la mayoría de las dis-
tribuciones Linux disponibles.
• Pueden usarse paquetes estándar de las distribuciones.

9 Proemail. los requisitos del sistema son: que se describirá más adelante en este capítulo. 6 BINO. Sendmail o Postfix. popa3d o vm-pop3d) • Estadísticas Webalizer.3 y 4.12 o posterior. 4. basados en dominio y basados enlP).0. 9 Red Hat Linux Versión 7.1o posterior.5 o posterior como modulo Apache. trativas de Linux. • Apache web server Versión 1. En su lugar. qpopper. . • Cuotas de correo. 9 Sistema Operativo: Linux (kernel 2. 9 POP3 de autorespuesta. La aplicación fue desarrollada por Till rios varios componentes en el sistema antes de instalar ISPConfig. gnu-pop3d. 9 Escáner de correo (antivirus). ® Cuotas de disco duro. • httpd (equipos virtuales. le permi- te gestionar a través de una interfaz administrativa basada en Web. 9 OpenSSL y mod_ssl para la creación de host virtuales.10. Un entorno inicia! listo para Internet Un entorno inicial listo para In te rn et 9 ® Puede encontrarse soporte en internet para cada componente. Tendrá que ejecutar algunas ór. Esto no supone que tenga que estar atado a ISPConfig. Courier-Imap. Cubriremos estos aspectos en los capítulos posteriores. En este momento. 4. Instalando ISPConfig • Ubuntu desde 5. Estos Brehm y Falko Timme. ipop3d.de. También aprende- ofrecer varios servicios Firewall. El proyecto configura estos servicios: 9 BIND 8 o 9. o el format maildir (por ejemplo. p 0 FTP. pero en las siguientes secciones. 9 Paquetes Linux: Los mantenedores del proyecto aseguran que son necesa- ISPConfig viene del Projektfarm GmbH. 9 Mandrake Linux Versión 8.4 o posterior con la librería glibcó).3 o posterior. nos Las siguientes distribuciones lo permiten: centraremos exclusivamente en la interfaz visual.40 o posterior.4. A medida que avance en el capítulo.2. . Paquete de cuotas. es conveniente que sepa para qué sirve.1. que originalmente la vendieron como una aplicación pro- componentes son: pietaria en http://4 2go. . Acceso a la línea de comandos. 9 9 SSL. 9 MySQL.0 o posterior. SSL 9 0 El equipo de ISPConfig ofrece soporte en línea para la aplicación entera. al configurar ISPConfig puesto que no instala todo secuencialmente.3. rá cómo decidir sí necesita usar un panel administrativo visual en lugar de una interfaz de línea de comandos. 8 PHP 4. Requisitos ISPConfig no ofrece una interfaz de línea de comandos. o 2. denes desde la línea de comandos al principio del capít ulo. pero es importante saber cómo usar las utilidades de línea de 0 Fedora Core de la 1 a la 6 comando para obtener los mismos resultados.04 a la 6. 9 ° Direcciones IP. ® ProFTP como versión independiente o vsftpd como versión inetd/xinetd/ • Límites de tráfico. 9 Mandriva 2006 y 2007. 9 iptables o ipchains. deberíahaciéndose una idea de lo que ir 9 un servidor necesita para y funcionar.0. independiente. demonio que soporta el formato de buzón tradicional de 9 Cliente de MySQJL Unix (por ejemplo. Dovecot). 9 POP3/IMAP. pero si elige trabajar sin él.2 o posterior. • SIISE Linux Versión 7. Ahora puede descargarla desde http:// sourceforge net/proj ects/ispconf ig. panel Web de ISPConfig simplifica la ejecución de muchas tareas adminis- El 9 Debían Versión 3. o un panel. 9 CentOS 4.

gz. es el utilizado normalmente por el servidor Web para ofrecer sitios Web Para Debían 3.6 tar . . tar . HTTP request sent. aquí.160. Puede encontrar las fuentes de estas aplicaciones en el directorio ispconf i g/ compile aps.80K/s ETA 01:32 Bar.633.253¡ :80. Estos servicios redundantes existen Descomprima el archivo con el comando: puede continuar gestionando ÍSPConfig incluso si ios servicios # tar xvfz ISPConf ig* tar gz . algunos lectores harán esto después ispconf ig/ISPConf .-A menos que tenga cierta experiencia en administración Linux y esté fami- junto de archivos comprimidos con la utilidad tar. pero necesita que existan en el sistema.. 209. Un entorno inicial listo para Internet Un entorno inicial listo para Internet :V5¡ Es importante comprender que estos servidores y paquetes deben estar insta. Puede desinstalar ISPConfig y volver al servidor basado en texto --16:20:48-. .dl. simplemente vuelva a Neu installation eines XSPConf ig-Systems .net/sourceforge/ispconfig/ ISPConf ig-2 2.gz de leer este libro. le dirige a uno de los mirrors de SourceForge. La una línea. Resolving superb-west.sistema.160. permite tanto a los servidores públicos como a los internos i que crea un directorio llamado install_ispconf ig.049 ] 252. . para ISPConfig escuc ha en e! puerto 81 en lugar de en el 80.31 dist__runlevei=/etc ## # debian31 El archivo contiene 1 9 valores adicionales para Debían que no están listados Al igual que muchos paquetes Linux y Unix. que valores son apropiados para su servidor Linux.ig-2 . sourceforge net/sourcef orge/ispeonf ig/lSPConf ig-2 . le será más útil copiar la URL y pegarla en una PHP 5 que escuchará en el puerto 81. 200 OK Además de gestionar ¿as aplicaciones que ha instalado en el . respete los valores por defecto.. La ventaja de usar quiere: wget es que un archivo se puede recuperar a pesar de que se haya interrumpido la descarga.n. Puede descargar la distribución ISPConfig con este comando (en ÍSPConfig no viene con estos servicios. ## # debia. pero debido la línea de comandos. . el resultado de ello a menudo se liarizado con ISPConfig. . ¡corno el servidor público Apache) se caen.net.sourceforge. Muévase del directorio usando un puerto no estándar.. En este capítulo supondremos que comienza en un directorio de su sistema lados en sistema como se describió anteriormente.1. . el llamado /root. . Primero.253 Connecting to superb-west di sourceforge. No tiene que compilar estos servicios a partir de las fuentes con opciones específicas # wget -c http://superb-west.59. ISPConfig se ofrece como un con. Puede hacer clic en el enlace Download para descargar el archivo. . Ahora inicie la instalación. el servidor interno /root/ al install_ispconf ig. petando el formato del archivo. tendrá que decidir qué idioma ventana de terminal a la hora de invocar el comando wget. sustituyendo la URL por la versión más reciente ofrecida en el sitio ventaja de esta solución es que puede usar los paquetes por defecto de su distri. => ISPConf ig-2 2 1 tar gz’ 1 . 6 tar gz . Demonios especiales de ISPConfig connected.1. ISPConfig system. . . SourceForge): bución y actualizarlos después usando las herramientas de su distribución.sourceforge. Al hacer clic en el enlace Download dehttp // sourcef orge net/ : . para ISPConfig. El script de instalación empezará a compilar Apache con a que el archivo es muy grande. awaiting response.533. Ejecute el comando de instalación /setup desde . Compruebe el archivo dist txt y vea si los .txt serían: di st_init_scripts=/etc/init d . .490 (25M) [application/x-gzip] ISPCon fig mantiene sus propias versiones de unas cuantas aplicaciones que 24% [========> 6.2. Length: 26. / . antes de instalar ISPConfíg.dl.2. . pre y cuando esté usando una de las distribuciones que se listaban con anterioridad./setup : SuSE 10. aunque res- que normalmente tiene ISPConfig es http://superb-west. Debería funcionar siem- llama tarball.59. puede reanudar la descarga sin server2 ~/install_ispconf ig # .net/sourceforge/ ejecutando /root/ ispconf ig/uninstall. / Installation of a new ejecutar la orden wget y la descarga se retomará por donde se dejó. projeets/ ispconf ig. http: //superb-west .0 tener que volver a empezar: si la descarga se interrumpe. Si usa el comando con la opción ~c. . los paquetes por defecto ya lo hacen..di sourceforge. los valores de dist. Un sitio Los administradores con conocimientos pueden cambiar los valores.dl. ISPConfig configura dos directorios que contienen los archivos y los el panel de aplicación: /root/ispconf ig Su terminal mostrará mensajes parecidos al siguiente: subdirectorios que integran y /home/ admispconf ig.net |209. h»r ejemplo.

verá un certificado SSL compilado. while on SUSE it's /srv/www. named. Seleccione el modo experto: [ca.. the web sites you plan to host. servidor FTP.. which you should read and then accept: El programa de instalación procederá a preguntarle cuestiones acerca de la Do you accept the license? [y/n] y configuración del sistema (p. Durante la primera parte de la instalación.conf. make sure you enabled quotas for that partition There are quite a few fields but you can leave some blank as described in Chapter 2. that are allowed to run Perl/CGI scripts. debería leerla y aceptarla: SSL Certifícate Generation Utility (mkcert. Furthermore if you want to configure What you are about to enter is what is callad a Distinguished Ñame or a DN. you can choose any directory You are about to be asked to enter Information that will be incorporated you like. tendrá que elegir algunas opciones que ISPConfig asigna e is 65537 (0x10001) por defecto en el modo estándar. This can lead to loss of entries in httpd. servidor Web. Select the one you want to use. the directory should be within Whlen Sie Ihre Sprache (deutsch/englisch/spanisch/franzsisch/italienisch/ suExec 'sdocument root On Debian and Fedora/Red Hat. Puede aceptar los valores por Do you want to continué with the installation? [y/n] y defecto o introducir los suyos propios. Francais/Italíen/Nerlandais/Polonais/Sudois) /usr/sbin/httpd OJC 1} de 2) en Checking the syntax of the httpd.) debido a que tiene que tener instalados todos los paquetes en su sistema. . suExec 's default . Do you accept the license? [y/n] y Generating custom certifícate signed by own CA [CUSTOM] The system will display a license.sh) Copyright (c) 1998-2000 Ralf S.csr] When prompted for a default directory. : . Engelschall. Syntax OK 3) es The syntax is ok! 4) fr it Web-Root: /home/www 5) ni Is this correct? [y/n] n 6) Web-Root: /var/www 7) pl 8) se Ihre Wahl / Your Choice: / Votre Choix: Nota: suExec es una mejora de seguridad en un servidor Web que necesita : CGI para poder ejecutarse por parte de ciertos usuarios.509 certifícate signing request for CA [ca. niederlndisch/polnisch/ document root is /var/www.509 certif icates can contain either debería ser capaz de responder a todas las preguntas. Ej. por el MTA. STEP 0: Decide the signature algorithm used for certif icates The generated X. . sorae system files are replaced where En este punto la instalación comienza compilando el servidor Apache que se adjustments were made. logs. El progra- Sendmail conf iguration.keyT STEP 1: Generating RSA prívate key for CA (1024 bit) 1) standard 1698765 semi-random bytes loaded 2) expert Generating RSA prívate key. La pantalla será similar a esta: El sistema mostrará una licencia. el script le preguntará en qué modo Signature Algorithm ((R)SA or (D)SA) [R] quiere ejecutar la instalación. ma de instalación le preguntará varios valores.conf. but make sure it is on a partition with enough disk space for into your certifícate request. : Un entorno inicial listo para Internet Un entorno inicial listo para Internet mam ¡í: Installation d'ISPConfig sur un nouveau systeme. etc. * RSA or DSA based ingredients.##### Anglais/Espagnol/ Checking for program httpd. Cuando el Apa- well as in the che para ISPConfig esté completo.conf as usará para presentar la interfaz Web ISPConfig en el puerto 81. All Rights Reservad. . the document root is a good choice for the directory in schwedisch) / Please choose your ianguage (German/English/Spanish/ : French/Italian/ which to put ISPConfig: Dutch/Polish/Swedish) / Merci de choisir votre langue (Aliemand/ : ########## WEB SERVER ###... scripts Verá una pantalla de advertencia: With the system installation.##. quotas with ISPConfig. If you' re enabling suExec. STEP 2: Generating X. If you want to enable suExec for web sites For some fields there will be a default valué. 1024 bit long modulus Your Choice: 2 ++++++ En modo experto.

key file (the generated prívate key) has to be kept secret. So we strongly recommend you to encrypt the server. Common Ñame {eg. key] with a Triple-DES cipher and a Pass Phrase. 1024 bit long modulus What email address or URL should be used in the suspected-spam report ++++++ text for users ++++++ who want more information on your fllter ínstallatíon? e is 65537 (0x10001) (In particular. naroe@f qdn) [www®snakeoil dom] . key file STEP 4: Generating RSA prívate key for SERVER (1024 bit) [server. Country Ñame (2 letter code) [XYJ : Getting CA Prívate Key 2 State or Province Ñame (full ñame) [Snake Desertj : Verify: matching certifícate signature 3 Local i ty Ñame (e. el proceso de instalación se para y todos ios archivos If you enter the field will be left blank. los archivos de cabecera para un paquete son 2 State or Province Ñame (full ñame) [Snake Desert] los que faltan. 8 Certifícate Validity . revise configuración del servidor y solucione el proble- la 5. Sabiendo la razón. Organizational Unit Ñame (e. 1698765 semi-random bytes loaded Encrypt the prívate key now? (Y/n) n : Generating RSA prívate key. ISPs should change this to a local Postmaster contact) default text: [the administrator of that system] STEP 5: Generating X. Email Address (e. ' . desde el mismo directorio install_íspconf ig después de que haya ocurrido STEP 6: Generating X. Luego. So we strongly recommend you to encrypt the server. descomprima !SP_Conf ig de nuevo y vuelva a comenzar. siempre se le preguntará la into your certifícate request.key file (the generated prívate key) has to be Signature ok kept secret.g. . key file subject=/C=XY/ST=Snake Desert/L=Snake Town/0=Snake Oil.Enter PEM pass phrase: Verify: matching certifícate signature Fine. El mensaje de error que obtenga debería indicar la razón 1 Country Ñame (2 letter code) [XY] : del fallo. city) [Snake Town] . se detendrá. . you' re using an encrypted prívate key. la rutina de instalación los subject=/C=XY/ST=Snake Desert/L=Snake Town/0=Snake Oil. (eg. CA ñame) [Snake Oil CA] quiere encriptar las claves respectivas: 7. the f ield will be left blank.crt/ca. (eg.509 certifícate signed by own CA [server. Ltd/ OU=Certíf icate Authority/CN=Snake Oil CA/emailAddress=ca@snakeoil dom . . Organization Ñame (e. . lo que significa que no What you are about to enter is what is called a Distinguished Ñame or a DN. There are quite a few fields but you can leave sote blank For some fields there will be a default valué. borre el directorio install_ ispeonf ig. STEP 8: Enrypting RSA prívate key of SERVER with a pass phrase for error 18 at O depth lookup:self signed certifícate security [server. writing RSA key Getting Prívate key Enter PEM pass phrase Verify: matching certifícate & key modulus Verifying . . contraseña cuando quiera reiniciar el sistema ISPConfig. . vaya al nuevo directorio . descomprima las fuentes de nuevo. Si la compilación falla. : ) :: :: :: : : : 108 Un entorno inicia! listo para Internet Un entorno inicial listo para Internet if you enter ' .509 certifícate signíng request for SERVER [server. En caso contrario. 7 Email Address . . section) [Webserver Team] ma. company) [Snake Oil Ltd) . Common Ñame (eg. Certifícate Validity (days [365] : STEP 7: Enrypting RSA prívate key of CA with a pass phrase for security STEP 3: Generating X. En la mayoría de los casos. key] OK The contents of the server. Ltd/ el paquete perdido. No puede instalar ISPConfig dos veces .509 certifícate for CA signed by itself [ca. Instale OU=WebserverTeam/CN=www. name@FQDN) [ca@snakeoil. . Organizational Unit Ñame (eg./conf /ssl crt/server crt OK . podrá reiniciarse sin interacción humana. FQDN) [www snakeoil dom] mente. 3 Locality Ñame . .domj : 8. section) [Certifícate Authority] En los pasos 7 y 8 del proceso de creación del cert ificado.g./conf/ssl . (days) [365] : install_ispconf ig y ejecute / setup. company) [Snake Oil Ltd] . Ltd/OU=Certif icate with a Triple-DES cipher and a Pass Phrase. bórrelo manual- 6. Authority/ Encrypt the prívate key now? [Y/n] n : CN=Snake Oil CA/emailAddress=ca@snakeoil dom .key] Certifícate Versión (1 or 3) [3] The contents of the ca.crt] [ca.g. Si el directorio install_ispconf ig no se ha eliminado. se le preguntará si 6 . : 4 . snakeoil dom/emailAddress=www@snakeoil dom . . crt] algún error. (eg. city) [Snake Townj 4 Organization Ñame . Certifícate Versión (1 or 3) [3]: Signature ok Si alguno de paquetes necesarios no está presente.crt: /C=XY/ST=Snake Desert/L=Snake Town/0=Snake Oil. csr] You are about to be asked to enter information that will be incorporated Responda n a estas preguntas. 5 .. compilados se eliminan.g.

) ISPConfig usa Shutting down mail Service (Postfix) done las plantillas para poder escribir los archivos de configuración para los servicios Starting mail Service (Postfix) done que configura. No such file or directory .158.253..warning: "ProFTPD" address/port (70.warning: "ProFTPD" address/port (70.45:21) También encontrará muchas clases PHP que ofrecen funciones para escribir already in use by "ProFTPD Default Installation" en los archivos de configuración del sistema. podrá Shutting down ProFTPD Server: done ver otro conjunto de directorios: Starting ProFTPD Server: . Resumiendo.253. PHP usr/ local /bin /bin: /usr/bin /usr/XHR6/bin /usr/ local /libexec) y OpenSSL. /root /ispconfig done contiene el núcleo de ISPConfig. Echemos un vistazo al directorio /root /ispconfig: Seleccione el 2. Luego el programa de configuración le preguntará qué protocolo quiere usar.oldpath httpd Your Choice: 2 drwxr-xr-x 6 root root 4096 2006-04-26 09:50 openssl drwxr-xr-x 6 root root 4096 2006-04-26 10:00 php Verá que el sistema ejecuta los script finales y reinicia algunos servicios: drwxr-xr-x 4 root root 4096 2006-04-26 12:28 scripts drwxr-xr-x 4 root root 4096 2006-04-26 12:28 standard egis Connected successfully to MySQL server drwxr-xr-x 2 root root 4096 2006-04-26 12:28 sv ls: /etc/apache2/vhosts d/* conf . / - 10 Un entorno inicial listo para Internet Un entorno inicial listo para Internet El scriptde instalación verifica la sintaxis de los archivos de configuración de Llegados a este punto. es decir la interfaz Web. 1 root root 8 2006-04-26 13 : 54 . : -rwx 1 root root 9389 2006-04-26 12:28 uninstall Restarting soma Services. durante la instalación: Please enter your MySQL server: localhost Estructura de directorios de ISPConfig Please enter your MySQL user: root Please enter your MySQL password: Su contraseña para MySQL Como se mencionó previamente.apache. please take the steps described in the installation manual.procmailrc Los desarrolladores finalizan el script de instalación con: Contiene la interfaz de ISPConfig. También puede encontrar otro directorio en /home llamado Please enter the domain: xyz. ClamAV (http //clamav. com).0. . which: no apachectl in /sbin /usr/sbin /usr/local/sbin /root/bin ( : : : : Contiene los diferenntes archivos de configuración de ISPConfig. así como varias plantillas para todos los tipos de archivos de confi- : : : Shutting down mail servíce (Postfix) done Starting mail Service (Postfix) done guración (para Apache. Cada directorio contiene los archivos necesarios para ejecutar ISPConfig independientemente.1 Config se llama ispconfig y está situado en el directorio donde se instaló (/root Please enter the host ñame: www en este capítulo). BINO.forward Starting ISPConfig system.conf ig. . además de algunas herramientas como SpamAssassin (http://spamassassin. Puede configurar estos a través : Otherwise your system is now available without reboot de ISPConfig para protegerse contra el spam y los virus.158. el directorio principal configurado por ISP- Please enter a ñame for the ISPConfig database: ispconfigdb Please enter the IP address of the ISPConfig web: 192.. Postfix. If you had to ! install quota. elektrapro. puede indicar la dirección IP de su servidor y el nombre Apache existentes. necesitará ofrecer los siguientes valores de ISPConfig. Sendmail. En el directorio /home / admi sp conf i g. .de admi sp.168. HTTP: ! Please select the protocol (http or https (SSL encryption) ) to use to -rwxr-xr-x root 1 root 33660 2006-04-26 12:28 cronolog access the -rwxr-xr-x root 1 root 9673 2006-04-26 12:28 cronosplit ISPConfig System: drwxr-xr-x 12 root root 4096 2006-04-26 09:55 httpd 1) HTTPS drwxr-xr-x 12 root root 4096 2006-04-26 12:28 isp 2) HTTP -rw-r. Shutting down ProFTPD Server: done Starting ProFTPD Server: . Un error provocará que la instalación de ISPConfig se detenga.45:21) already in use by "ProFTPD Default Installation" done -rwxr-xr-x 1 admispeonf ig admispeonf ig 242006-04-26 12:28 . proemail.org) y Congratulations Your ISPConfig system is now installed. drwxr-xr-x 8 admispeonf ig admispeonf ig 4096 2006-04-26 13:53 ispconfig /root/ispconfia/httpd/bin/apachectl startssl : httpd started drwxr-xr-x 2 admispeonf ig admispeonf ig 4096 2006-04-2 6 12:28 maiistats ISPConfig system is now up and running! -rwxr-xr-x 1 admispeonf ig admispeonf ig 176 2006-04-26 12:28 . etc. . Apache.-r. de dominio seguido por :81 en su navegador para acceder a la pantalla de login Si todas las condiciones se cumplen.

org Figura 4. http://70.1. localhost webl web3 www.opensourcetoday. En nuestro ejemplo. Figura 4. figura 4.org devshrn 506M 0 S06M 0% /dev/shm Irm 506M 19M 488M 4% /tib/modules/2 6. i 1 usrar Usuarios en linea: nistrador del sistema que gestiona sus propios sitios Web seguros. «Tinhelp ’’ || tadlestein da una mejor idea de la lista de dominios. / «evs>v*tfor J '¿*«99 cumentación de usuario para sitios dedicados al alojamiento Web.com /dev/sdaS 50G 320K 50G 1% /media/sda5 Cuando mire el contenido del directorio /var/www verá cómo ISPConfig con- figura los siguientes dominios: $ ls -a apache2-default sharedip web2 web4 webalizer www.2 le figura 4. 158. introduzca el ID adrnin y la con- traseña admin. Añadiendo dientes y sitios Web Luego.1 0-tjk # admin S'd & Revendedor Cada sitio Web contiene un directorio.58 ISPConfig necesita que configure un diente que tenga uno o más dominios de Filesystem Slze Used Avall Use% Moimted internet. El directorio www cuyos nombres mues. Configurar un sitio Web es uno de ios primeros pasos para conseguir un ser- vidor de Internet completamente funcional. 81 (use : . web2.orqj que el sistema conoce como webl. configuraremos un cliente sencillo (de uno de ios /dev/sda6 35G 3. Tal vez piense que puede ir al sitio Web de ISPConfig y leer los manuales.253.org www. Un entorno inicial listo para Internet Un entorno inicial listo para Internet servidor y usuarios con https:// si seleccionó HTTPS como el protocolo ISPConfig durante la instalación).com m Gestor ISP [ expandir colapsar ¡ Compare el listado de este directorio con la lista de sitios Web de la figura 4. i ¡- -¿5. supondremos que desea usar su servidor con un único admi. el correo y los i Carga de la CPU 1 Minuto: 0. .opensourcetoday.15-26-386/volatile • opensourcetoday. sin m ÍNiusva «fe/engedcr a> Nueve «feote & Ffetevo ‘¿po Pson ©. teclee la dirección IP del servidor seguida del herramientas y seguidamente haga clic en el símbolo de contraseña (véase la puerto para ISPConfig 8 1 En nuestro caso. pasos necesarios. Servidor en lina» desde: Od.2.2 el domino aparece para cada directorio del listado de la línea de co- mandos. Esta sección le mostrará todos los 'Administración Gestor tSP Gestor DMS Web rr? «P Factura . Para poder cambiar la contraseña seleccione Herramientas desde la barra de ISPConfig.4). .org udev S06M 112 K S06M 1% /dev 0 linuxnewswire.org) son enlaces simbólicos Papel era central soft. primero debe entrar en la interfaz de ca. Fíjese que en la ¡ La figura 4.3:35 En caso contrario.35 servidos FTP Carga de la CPU 5 Minutos: 0. & Clientes t-b-U / Sitios tran los dominios (como www. Lista de dominios que gestiona ISP. le recomendamos que lea los manuales de http / /ispconf ig org. tadelstein. . Interfaz ele gestión de ISP. tfs j ^ nasdng Mueva csrpety 9ustar íinstor ISP «xponrfir qo!aj>t>í»r 1 embargo tenga en cuenta que ios desarrolladores de ISPConfig escribieron la do- ( <3'ík / atfmln .centralsoft. 45*. inmediatamente cambie la contraseña por una que sólo usted conoz- Para configurar el diente y los dominios. En la pantalla de autentificación (figura 4.3). etc.28 Carga de la CPU 15 Minutos: 0. En su navegador Web.org /dev/sdal 98G 63G 36G 64% /media/sdal 0 tadelstein. Si esta es su ® »de«* mm mmm intención.3G 30G 10% / autores del libro) que tiene cuatro dominios: varrun 506M 120K S06M 1%/var/run varlock S06M 4 OK 506M 1 % /var/lock • centralsoft. : .linuxnewswire.org www.antas Ayuda í--«iai«Mt .

allí po.i .7. Antes de configurar un sitio Web. Herramientas y Opciones Ahora veamos cómo hemos creado el cliente tadelstein y el sitio Web linhelp. 0«l94 ma**UO* $ Salga del sistema y entre con la nueva contraseña. Figura 4.6. ten Figura 4. ) . La figura 4.org como similar al de la figura 4. Menú Herramientas. A. Introduzca la información relevante del cliente. Formulario de ISPConfig para cambiar contraseñas. Pantalla de autentificación de ISPConfig.8 muestra cómo Seleccione la barra de herramientas Gestión de ISP Verá un menú de navegación hemos rellenado el formulario.5.5 se muestra el cuadro de diálogo Cambiar contraseña.org M.7.x^ A Cl . 13-isD Genera . Titulo: En la figura 4..3. •-"y Papelero •-« conuolsoft.orfl Grupo: admin -i tad-este».4. el nombre de la . i--£) Move Wabsites HD- Wnois f -p Escaneador de puertos j 13 Versión del software Administración Gestor ISP Gestor DMS VVeb-fTP ISP Factura Herramientas Ayuda Finalizar Cji-'iJ Mane|ador de respaldos ej) Respaldo Q tt|J Exportar datos ! H Datos maestros Mjfr/o tyjevo c*tr<« Niwvo PRin a» Nuív» carpeta R«» ‘j castor ISP colopssr 3-a ' 3HJ / normo-!** <3 . Empresa: Título: p Cambiar clave : Nombres: Apellidos: Clave Calle: anterior Codigo postal: Ciudad: Clave nueva: Provincia: Confirmar País: clave: Telefono: fax: Save Cancel Email: Dirección Web: ht íp : // f Abrir) Figura 4. Ordenar: admin drá rellenar el formulario. iadiestein CS/r. compañía. tendrá que crear un propietario del sitio.J / cuento» 9-0 J s*»» Figura 4. diente Numero: Es asignada automáticamente. Nuevo revendedor Nuevo cliente Nuevo sitio Pian de hosting Nueva carpeta Buscar Gestor I5P I expandir colapsar J É¡ -é¡Sg ? admin Revendedor é'di / Clientes ra OJ Sitios -‘M Papelera •*} centralscfi. 3 I Cambiar c lava) | Haga clic en Nuevo Cliente en el menú de gestión de ISP Verá un cuadro de diálo- ! ~® CamBiar1eñgüa|e go similar al de la figura 4. Formulario de información del cliente. Fíjese en que hemos usado Linhelp..

org.10.e. También encontrará algunas otras opciones que le puede dar al administrador de sitio. J1 Apellidos: Webalizer !* Statistics: Codicio postal: Ciudad. Formulario completo para el cliente administrativo.8. Para nuestro (Opcional): sitio. « Titulo: índex phpó .Qttarj País.9 no muestra las opciones de la solapa Base.10. Ahora ya puede Exceso de trafico: Suspender configurar un sitio Web. Acceso Shell: O Fíjese también en las solapas del formulario. Cada una de estas solapas ofrece varias funciones de configuración y gestión. Nombres: Tora Aldelstein índex php4 . Un entorno inicia! listo para Internet Un entorno inicial listo para Internet 117 Sííib S£í© ‘‘aodtffl IM’VB Gestor »SP | expandir colapser { Grupo: admira- ••& . Simplemente seleccione Nuevo sitio desde la barra de Usuarios (Max): . MaiSoset tagln: La figura 4.9. En la parte izquierda del menú de navegación.anqglaL. Figure 4. 31 Cuenta WAP: Paginas de error..J 1/ Sowandedor Titulo: linhelp í'I-v¡^J J Clientes fit-p £ Sitios Ordenar: admin [A Wijif Pajxtfera í-ií§í fstiafsoít. Provincia (.org Grupo. ® Co-Dominios MySQl.-1 $H. Base de datos (Max): i i 8 Estadísticas SSL: ® Opciones FTP anónimo: FTP anónima MB. Email: Dirección Web:http:// (Abrid Ayuda f matizar Administración Gestor ÍSp" Gastor DNS VVfab-FTP ISP Factor* Figura 4.? 3*111.wardar j L. i herramientas y verá el cuadro de la figura 4. como se muestra en la figura 4. Dominios (Max): . hemos ofrecido acceso por línea de comandos. . El formulario usado para crear el sitio Web linhelp. adfflin [’ÍbSosTr!^ Titulo: tadlestein tadles Ordenar: adra ín Servidor malí: Servidor Local de Correo m<js r?v*as!f üü Tama o lo del log: 30% Directorylndex: índex html •-W! ClienteNumero: 251 .9. j Proporcione al sitio web un nombre y la dirección IF^ y cree un registro DNS. en la parte de arriba de área donde Scripts CG1: ü hay que introducir el nombre: CCS estándar: G Scripts de PHPs C 8 Base PHP Safe Mode: SSS: ® Usuario y correo Acceso FTP. impresa: índex . base de datos.ht« y índex php . creación de FTP y opciones de autentificación. verá un nuevo icono represen- tando una persona y acompañado por el nombre del diente. Telefono: fax: Figura 4. J LB.e. Opciones del sitio Web.

bi — • 1 i.1 1. figura 4. Por defecto. i <a href = " . En la figura 4. f 1 dfsMMMWaKiMMSg&M 1 1 i Govefivpent ¡Jsssrs training sessions and course ©1 . ETP i.netbeans 4096 Ijarevaio i adaptaüon of open software Oistrowatch has an exceilent summary SS -qt 4096 Ijarevaio i) standards. Puede obtener en cualquier momento las últimas noticias sobre el grTP de mi página web en http://ww. Linux Help Desk Linhelp provides complete Ycu wl I rvi Leve! 1. En este punto. Usando gftp para transferir archivos al directorio raíz linhelp. sólo necesita saber ISPConfig usa un modelo jerárquico con /var/www/webl/web como el direc.12. debido a que tiene el título por defecto. Por more Commumty Web Puerto-. Interert Bfijjíalfifflte i/home/ljarevalo No conectado' Download Sun's EoSeipnse !"(}" Archivo '¡'amafio Usuario < A flj Archivo Tamaño Usuario Gru Training We offer single or muíti-day Linux Java Desktop System %. ya tiene un sitio Web útil. Apache busca el archivo HTML llamado index.vnc 4096 Ijarevaio Tm Dpskron 1 4096 harpval» l>. <a href =".J oigani2abons spaed their O .12. Select Area of infor mació n.thumbnails 4096 Ijarevaio ii . <a href =" /about us html. por ejemplo. cuando un navegador solicita el directorio. Puede ver dicha página en la figura 4. JOS and SUSE Émpbyrnent Noveíl'sSUSE Oisttibutions SLES9 at the JDS and Federa Core. ar> i i . System 53 .ocai ge moto Marcadores Transferencias informe Herramientas Ayuda We spec/alite in Debian. la gestión de usuarios y sus cuentas.org. Probablemente necesite ofrecerles una base de datos y figura 4. puede tratarse como un gfTP se entrega sin ABSOLUTAMENTE NINGUNA GARANTÍA: para más detalles. el sistema pone por defecto . /support . Leve! 2 and Levei 3 rjumerous new ünux support fot RPMs built speófically for Sun's English-tanguage customers. lina de las tareas más importantes a ia hora de administrar sistemas Linux es vos que están en el directorio raíz. por favor envíemelas. cómo establecer un sitio Web y un dominio de Internet. y usted puede redistribuirlo bajo ciertas condiciones: para más detalles. En caso contrario./produces. Esto permite al sitio ofrecer espado ilimitado para FTP Esto sería útil i. r." >About Us </axbrxbr> . si quisiera ofrecer acceso como mirror de un sitio de descargas. Vranjes <gvranjes@abaconet. Poniendo en un navegador http / /linhelp org ahora podrá ver nuestra .J Figura 4.Mgftp. Apache crea otra rama donde puede poner páginas. Una . .13.org> sectores.html ">Support </axbrxbr> : página index. html ">Products </axbrxbr> <a href = ". Pay-per-incident ferir un sitio que ha sido creado en su escritorio. torio raíz para el puerto 80. se mostrarán los nombres de los archi-. /services html ">Services </axbrxbr> . El código actual con la página de inicio se parece a esto: Gustavo D.el equipo Web al que le dé soporte creará la estructura de di- Ahora ya tenemos un sitio Web simple y funcional.13 ofrece un ejemplo del directorio raíz de un sitio Web.org/ otras páginas del sitio. es mejor definir un límite de manera que nadie pueda subir tan. For saca üM . íea ei archivo COPYING. Puede usar el panel gráfico ISPConfg. La página de inicio semuestra siempre que ei navegador especifique ei nombre del directo- rio. Echemos un vistazo a Ja rectorios páginas Web.com.11 se muestra. Figura 4.html. además. Normalmente. Serrador «serrsdor@gnome.En cada directorio que cree en esta ruta. Linhelp Com mere ia! Suppcrt Canter tos datos como para saturar el espacio en disco necesario para otros servicios. lea el archivo COPVING. Por ahora.meop 409(5 ijarevaio ii (OReiliy Sool. Si no ha creado un archivo índex html. La página de inicio contiene enlaces a ugerencias sobre este programa. Un entorno inicial listo para Internet Un entorno inicial listo para internet Fíjese también en la figura 4. también.10 debajo de FTP Anónimo. El sitio web Linheip. Id Archivo Progreso La figura 4.org.gftp 4036 Ijaravalo ii Sal kde 4096 Ijarevaio ij Expióme sise ©S curricula to heip enterprise.local 4096 Ijarevaio ij unux Besito» govemment and educabonal 63 . Site Repository. Esto es software libre. una Navigation wíiat's Vw forma fácil de añadir páginas usando un cliente FTP gráfico como gftp para trans. El diagrama de ejemplo de la gráfico de Francisco Javier F.13 para comprender lo que estamos configurando. pero esto se tratará en otro capítulo.html para mostrarlo.

Un entorno inicial listo para Internet

vez que haya configurado los dominios, al seleccionar uno de ellos en la sección
de gestión de ISP de la barra de tareas traerá al primer plano la pantalla del sitio
que se mostró en la figura 4.9. Volvamos atrás para verla.

O'KFJUY

Página Web enlazada desde Index.btmí

Figura 4.13. Estructura de un sitio web simple.

El formulario tiene seis solapas. La segunda solapa de la izquierda se llama
Usuario y Correo. Desde esta solapa podrá añadir nuevos usuarios gestionar los
y
existentes. Cuando selecciona Nuevo, podrá ver otro formulario como el de la
figura 4.14.
En este formulario, puede introducir los detalles de nuevos usuarios y esta-
blecer los límites de almacenamiento. Un valor de -1 ofrece espacio ilimitado,
pero puede gestionar las cuotas de la manera que prefiera.
En solapa Opciones Avanzadas (figura 4.15), puede usar una opción para
la
permitir que el correo enviado a un usuario sea redirigido a otra dirección. En
otras palabras, si el usuario tiene una dirección de correo alternativa que desea
usar, puede usar dicha opción para enviarle el correo a esa cuenta.

Un entorno inicial listo para internet Un entorno inicial listo para internet

• Alias de correo: Si no quiere exponer su buzón de correo públicamente, los filtrar spam. Muchos administradores prefieren esta estrategia inicialmente,
el
visitantes del sitio pueden enviar correo a un nombre genérico, tal como hasta que el usuario tenga una base de datos de correo identificado como spam.
info@centralsoft.org o webmaster@centralsoft.org. Puede ha- Después, el usuario puede cambiarse al modo de descarte, donde el correo iden-
un alias de correo.
cer esto ofreciendo tificado como spam se borra del servidor.
® Coger todo el correo: Esta opción redirige al buzón especificado todos los Ahora echemos un vistazo a las opciones para el spam:
correos que se hayan enviado a cuentas de usuarios inexistentes. La gente
® Aciertos de spam: El filtro de spam ejecuta un determinado número de
normalmente escribe a direcciones usadas frecuentemente como editor@
pruebas sobre correos entrantes y asigna puntos a cada prueba. Si la suma
centralsof t org o publicidad@centralsof t org sin verificar que
de los para estas prueba alcanza o supera el valor especificado por los
. .

estas direcciones son válidas. Puede recoger estos mensajes en una cuenta
Aciertos de spam, el correo se clasifica como spam y se maneja de acuerdo
de usuario creada a tal efecto.
con la estrategia definida por el usuario.
• Escanear correo: Si quiere escanear el correo en busca de virus o código
• Reescribir asunto: En el modo aceptar, escoger esta opción significa que la
JavaScript para servidor, use esta opción.
línea que identifica el asunto de cada correo se identificará como spam
• Autoresponder: Esta opción le permite enviar una respuesta automática a añadiendo un prefijo identificativo (por defecto ***SPAM***). Esto permi-
los mensajes enviados a un usuario específico, esto es útil, por ejemplo,
te al usuario ordenar el correo electrónico según el asunto.
cuando el usuario va a estar fuera de la oficina por un período de tiempo.
Para permitir que un usuario haga cambios en su cuenta de correo electróni-
Con respecto a la solapa Filtro de Spam & Antivirus, mostrada en la figura
sí mismo (incluso la contraseña, el filtrado de spam y las
co por opciones de
4.16, puede considerar qué estrategia de spam usar. Activando el filtro de spam para dicho usuario en la so-
spam), debe seleccionar la opción Usuario de correo
para una cuenta, puede especificar el comportamiento del filtro. 4.10). Para hacer cambios, el
lapa Base del formulario del sitio (Véase la figura
usuario de correo puede autentificarse en el sistema a través de la dirección:

http //centralsof t org 81/mailuser sci.
:
. : .

Directorios públicos, de usuario y de inicio

Cada usuario de un dominio gestionado por ISPConfig tiene su propio direc-
torio de inicio en el directorio de usuarios. Si el acceso FTP está permitido, los
usuarios aparecerán en su directorio de inicio al autentificarse vía F R Cada di- i

rectorio de inicio también contiene una carpeta llamada Web a la que los usua-
rios pueden acceder visitando una URL del tipo: http / /www centralsof t
org/ :
. .

-usér o http / / www centralsof t
:
.
org/users/ user. .

La figura 4.1 7 muestra la estructura de un directorio de inicio para el usuario
creado en centralsof t org. .

Configuración del cSienie de correo electrónico

En punto, debería comprender los aspectos básicos a la hora de configu-
este
rar un sitio Web, crear un usuario y manejar el correo. Pero además, tendrá que
Figura 4. 16. La solapa Filtro de spam & Antivirus. ser capaz de ayudar a sus usuarios a configurar sus clientes de correo electróni-
co, especificando los servidores de correo entrante y saliente. En nuestro
sistema,
Si selecciona la estrategia de aceptar spam, permite que el spam entre en el ISPConfig usa serverl.centralsoft.org tanto como servidor SMTP como
buzón del usuario, siendo el agente de correo del usuario (MUA) el encargado de servidor POP3/IMAR

Un entorno inicia! listo para internet Un entorno inicial listo para Internet

Otras veces, no obstante, tendrá que adaptarse a la situación en función del
momento, sin tiempo para la preparación. Esto requiere improvisación. Para ser
completamente adaptable, hay que ser capaz tanto de anticiparse como de im-
provisar.

No importa lo riguroso que sea a
la hora de salvaguardar su servidor de
Internet, por alguna extraña combinación de razones, su sistema podría fallar.
En un mundo perfecto, podría monitorizar cada servicio y el sistema le alertaría
inmediatamente del fallo. Pero, no vivimos en un mundo donde todas nuestras
expectativas puedan verse cumplidas.
Figura 4.1 7. Vista de tipo navegador para el directorio de usuario.
Imagine que aloja su servidor en un ISP a muchos kilómetros de su base de
En los dientes modernos de correo electrónico, existe la opción de elegir la operaciones. Si este servidor se viene abajo, alguien podría llamar al ISP y conse-
capa de transporte seguro (TLS). Seleccione TLS cuando sea posible para configu- guir que personal de servido vuelva a dejarlo funcionando. La persona encar-
el

rar e! servidor de correo saliente. Debido a que la mayoría de los clientes de co- gada puede que no esté disponible inmediatamente, por lo
del soporte técnico

rreo usan su ISP como servidor SMTP, puede seleccionar TLS si su ISP lo usa. En tanto tendrá que esperar un tiempo con una aplicación crítica caída.
la gran mayoría de casos, su ID de usuario
y contraseña viajan sobre las líneas de En una empresa grande, podría sentirse aislado si su servidor está situado a

su ISP en forma de texto plano. muchos kilómetros. Los operadores de los centros de datos no suelen conceder
Para recibir correo, configure el servidor de entrada (nosotros usamos acceso a la sala de ordenadores, ni siquiera a los administradores de sistemas

serven . central soft org) y seleccione o POP3 o 1MAP Use su nombre de
.
independientemente de su ubicación, por lo que es muy importante que un ad-
sistema (por ejemplo: webl_adelstein) y especifique la dirección de correo como ministrador sepa gestionar sus sistemas remotamente.
el alias (por ejemplo: tom@centralsoft.org). Un demonio monitorizador de demonios (DMD) es una utilidad que observa
Si aparece un mensaje de error como "-ERR Unknown AUTHORIZATION state sus servicios y automáticamente intenta reiniciarlos cuando fallan. Si un servi-
command" al intentar obtener el correo vía POP3, probablemente se haya olvida- do falla, normalmente tiene que autentificarse en el servidor y abrir una consola
do de activar la encriptación SSL/TLS. Reconfigure su cliente de correo, active para ejecutar un comando como /etc/init d/mysql restart. Un
- DMD puede,
POP3-sobre~SSL e inténtelo de nuevo. sin embargo, ejecutar este comando sin intervención por su parte.

problema. Si no se reinicia satisfactoriamente,
Si el servicio se reinicia, fin del
el DMD hará un determinado número de intentos (por ejemplo 5) y luego
contactará con usted vía mensaje de texto, correo electrónico u otra forma de
comunicación que pueda alertarle del problema. En este punto, tendrá que inter-
En el entorno actual de los negocios a veces ocurren cosas inesperadas. Algunas venir para averiguar por qué el servicio ha fallado. El DMD se ejecuta como otro
personas escanean direcciones IP en busca de fallos. O usan sofisticados diccionarios servicio de su servidor. Tiene un archivo de configuración para elegir la opción

de contraseñas para intentar conseguir acceso como root a los servidores, de mane- que mejor se ajusta a sus necesidades. Puede hacer que se inicie manual o auto-
ra que puedan usarlos como plataformas de spam, virus o gusanos. Las situaciones máticamente.
que los administradores de sistemas tienen que afrontar tienen su raíz en una com- En la siguiente sección, configuraremos un DMD llamado monit, que tiene
binación de factores con precisión o certeza. Por lo tanto, los administradores tienen una interfaz Web sencilla como se muestra en la figura 4.18.
que aprender a adaptarse rápidamente a las nuevas (y hostiles) situaciones. Fíjese bien en que hay cinco servicios bajo vigilancia. En la figura 4.19, se
Hay dos formas de adaptarse. Primero, si está lo suficientemente concienciado, puede ver claramente cómo el sistema gestiona cada proceso. En este caso, esta-
puede tomar precauciones. Nosotros llamamos a esto anticipación. mos mostrando sshd.

Figura 4. 0.y tjarc aoerei nerra-mentas Eiste'ewia» mente introduzca: moñS í ervke manáqer . a.19. mysql. Inspeccionando sshd. Puede utilizar der autentificarnos como admin.*oO.i lunnjQg on Ijarevaio-tSssktep with uptime.19 el estado de sshd muestra que se está ejecutando y Fíjese que sistema lo está monitonzando.0%wa iValue ¡Ijarevalo -desktop ¡Monltoring mode active ¡Monltoring status © Copyright 2000-2007 by the monlt oro iect oroup. 2 Un entorno inicial listo para Internet Un entorno inicial listo para Internet lf desde http://www.¡ t0.tildeslash.3j) 2.9%us.'lVtc. apache y postfix. Ahora.com/monit.0%wa ’ i Memory usage 35ñs6*kB Í34Í496J Dísá&le rnoníoring O Copyright 2000-2007 by the monlt. El archi- vo creado durante contiene montones de ejemplos y puede encon- la instalación un servicio que ha fallado y envía un men- Esta política simplemente reinicia saje cuando remida satisfactoriamente. edite /etc/monit/monitrc. tildeslash com/monit/ : . prolect CII OUP. ® Crear una interfaz Web basada en Secure Sockets Layer (https) donde po- Para poder instalar monit tiene dos opciones igual de válidas. puede ver las instrucciones que se harán si sshd falla: If failed localhost:22 [SSH] with timeout 5 seconds then restart else Figura 4. 8 Monitorizar los servicios proftpd.3ÍÍ0. veamos cómo funciona el sistema. Orn and monitorlí'-g: Hcrr. Interfaz Web para monit ejecutándose en centraIsoft.e > Load Memory HaíssSaásássfiB ?0.5%us 4 3%sy 0. monit ofrece cuatro botones en la parte de debajo de la página para la intervención manual.Konqturrar Marcadores Her?<v?»enías -prefe/e/ícj O * hítp//IO«a*IO!<: ->! 2í|d-BV. All Rights Resolved. sshd. simple- c‘.php. e Activar la interfaz Web de monit en el Puerto 2812. se más trar ejemplos de configuración en http / /www. doc/examples . .org. En nuestro caso. Si está usando Debían. tanto el gestor de paquetes del sistema como también descargar la distribución a Indicarle a monit que manda alertas de correo a root@localhost. if recovered then alert Después de que haya instalado monit.18. nosotros queremos: Finalmente. que en la figura 4.5%sy. Al! Rights Reserve'! ¡Check Service Data coilected ¡Load average 6.4S. En las fres líneas de la parte de debajo de la el pantalla.

monit/token y escribir una cadena de texto arbitraria: allow admin: test check process proftpd with pidfile /var/run/proftpd.d/postfix stop" commonName = Common Ñame (FQDN of your server) íf failed port 25 protocol sratp then restart commonName_de£ault server monit rao .org/web/monit start program = " /etc/init d/prof tpd start" . verá la sentencia: Ahora cree el certificado: if failed host www.pid i default_bits 1024 = group www encrypt_key yes = start program = " /etc/init d/apache2 start" . distinguished_narae = req_dn stop program = " /etc/init d/apache2 stop" . # echo "helio" > /var/www/www. por lo que monit intentará reiniciarlo. cent ral soft . Debido a que el docu- set log file syslog fácil ifcy log_daemon mento raíz del sitio Web está en /var/www/www centralsoft. centralsoft org/web/monit/ token .org port 80 protocol http # openssl req -new -x509 -days 365 -nodes -config .pem -keyout /var/certs/monit . . monit@serverl.org/web. SSL ENABLS Ahora debemos crear el var/www/www.forma t { from-. Las sentencias y las opciones se describen en la documentación de monit en [ cert_type ] http / /www tildeslash com/monit/doc /manual php.ype if failed host www. if 5 restarts within 5 eyeles then timeout email Address = Email Address emailAddress__def ault = root@monit mo . stop program = "/etc/init . centralsoft org/web/ archivo . if 5 restarts within 5 óyeles then timeout Luego. set maí lserver localhost nombre del archivo se extiende a /var/www/www.pem debería ser como este: start program = " /etc/init d/mysql start" . pid Necesitará un archivo de configuración OpenSSL para crear el certificado.org en set daemon 60 el Puerto 80 e intenta acceder al archivo /monit/token. if failed port 21 protocol ftp then restart Puede seguir un procedimiento similar en su sistema. organizationalünitName_default = Dept of Monitoring Technologies.pem . stop program = "/etc/init d/prof tpd stop" . city) if loadavg (5min) greater than 10 for 8 eyeles then stop local ityName_def ault Monittown if 3 restarts within 5 eyeles then timeout organizationName Organization Ñame {eg. start program "/etc/init d/ssh start" . group mail organizatíonalUnitName Organizational Unit Ñame (eg.centralsoft. stop program = "/etc/init d/mysql stop" .pid # mkdir /var/www/www. En la sección de apache de la configuración de monit.Server if failed host 127. centralsoft org/web/ . .1 port 3306 then restart RANDFILE = /openssl rnd . if 5 restarts within 5 óyeles then timeout l req ] check process apache with pidfile /var/run/apache2 . . # mkdir /var/certs if failed port 22 protocol ssh then restart # cd /var/certs if 5 restarts within 5 eyeles then timeout check process mysql with pidfile /var/run/mysqld/mysqld. El group database resultado /var/certs/monit . # create RSA certs . PEMFILE /var/certs/monit pem .org port 80 protocol http i [req_dn ] and request "/monit/token" then restart countryName = Country Ñame (2 letter code) if epu is greater than 60 % for 2 eyeles then alert countryName_default = MO if epu > 80% for 5 eyeles then restart stateOrProvinceName State or Province Ñame (full ñame) if totalmem > 500 MB for 5 eyeles then restart stateOrProvinceName_default Monitoria if children > 250 then restart localityName Locality Ñame (eg.0. cree un directorio para albergar el archivo de certificado f/var/certs/ check process sshd with pidfile /var/run/sshd.pid organizationName_def ault Monit Inc. section) start program = " /etc/init d/postfix start" .pid monit pem) necesario para interfaz Web SSL de monit: . . enf -out \ and request "/monit/token" then restart /var/certs/monit . significa que Apache no se está ejecutan- set alert root@localh. centralsoft .0. nsCertType = server : . set mail.org } monit/token. stop program "/etc/init d/ssh stop" . x509_extensions = cert_t. Si monit no se ejecuta.ost set httpd port 2812 and do.centralsoft. company) check process postfix with pidfile /var/spool/postf ix/pid/master .centralsoft. el . /monit. Un entorno inicial listo para Internet Un entorno inicial listo para Internet Nuestro archivo de configuración /et c /moni t /moni tro es: Esto significa que monit intenta conectarse con www.

. Hoy en día. res de sistemas Linux tienen otros problemas más importantes que resolver: e Cómo asegurar el correo. los administrado- negocios de pequeño y medio tamaño. El archivo debería que- dar así: # Defaults for monit initscript # sourced by /etc/init d/ monit . tal y como se mostró anteriormente en la figura 4. robusto y seguro.pem # chmod 700 /var/certs/monit pem .130 Un entorno inicial listo para internet # openssl gendh 512 >> /var/certs/monit peni . que acepta correo de otros usuarios e interactúa con otros sitios a través Ahora haga que su navegador apunte a https //your_domain 2812/ (ase-: : de Internet para enviar el correo. cer un sistema de gestión de correo eficiente. d/monit start * El servidor Postfix como agente de transferencia de correo SMTP (MTA). Las grandes instala- Empezamos levantando el servidor y configurándolo de manera que pueda ciones de correo pueden almacenar nombres de cuentas de correo y contraseñas usarse como una plataforma para Internet. # openssl x509 -subject -dates -fingerprint -noout -in /var/certs/ moni t . * La capa Simple Authentication and Security Layer (SASL) sirve para auten- tificar el correo y evitar el spoofing. . inicie monit: un sitio de pequeño o medio tamaño. que puede soportar miles de usuarios. tionar de manera segura y monitorizar sus servicios. Cambie startup a 1 y configure CHECK INTERVALS con el intervalo en segundos que quiere que se compruebe el sistema. CHECK_ I NT ER VALS = 6 0 Este capítulo muestra cómo levantar un servicio de correo electrónico para Finalmente. gúrese de que el puerto 2812 no está bloqueado por su cortafuegos) y * Servidores Post Office Protocol (POP) y el Protocolo interactivo de acceso autentifíquese con el usuario admin y la contraseña test. En el capítulo siguiente. # installed at /etc/default/monit by maintainer scripts # Fredrik Steen <stone@debian org> .18. aprenderá a instalar nas como Wietse Venema (el inventor de Postfix) han conseguido reducir mucho software administrativo que no se instala automáticamente. vamos a profundizar nuestra exploración del siste. Configuraremos la la complejidad de configuración de los sistemas de correo electrónico. Los elementos del servicio son: # /etc/init. una forma de comunicación que no fue diseña- da teniendo en cuenta la seguridad. Las soluciones de este capítulo intentan juntar diversos componentes para ha- En los restantes capítulos. Hemos instalado un servidor basado en bases de datos relaciónales o en directorios LDAP. servidor de correo muy escalable basado en Postfix con autentificación LDAP véase to) y luego hemos configurado interfaces basadas en Web que le permitan ges. ni siquiera contra los ataques de su- plantación de identidad u otros ataques maliciosos. Nosotros hemos elegido 60. : . Para ver un ejemplo de un en texto sin el sistema de X Windows (por razones de seguridad y de rendimien. # You must set this variable to for monit to start startup=l # To change the intervals which monit should run uncomment # and change this variable. Web de monit. Zimbra (http / /www zimbra com). Luego edite /etc/def ault/monit para activar el demonio rnonit. Debería ver la interfaz al correo (IMAP) para entregar el correo a sus usuarios. Configuraremos Postfix para usar el tradicional sistema de autentificación basado en archivos. perso- ma de administración de Linux. En lugar de mayoría de las aplicaciones Linux que la gente usa cada día en la empresa y en vérselas con complejas configuraciones de servidores de correo.

Sendmail. i Los MUAenvían el correo pasándoselo a una MTA y transfiriéndolo sobre SMTP. Sendmail se desarrolló antes que aparecieran el spam y el software dañino. incluyendo la suplantación de direcciones IP. hasta llegar al 40 ocultar su origen. moviendo el correo de un sitio para otro en Internet. los servidores DNS. 100 del tráfico de correo de Internet.) Independientemente del método que el receptor use. Esto provoca que las colas de correo. La mayoría de la gente mantiene listados de las direcciones de sus contactos en su MUA. como Outlook. Aunque los defensores de Sendmail defien- ® Cómo dar acceso a usuarios que están fuera de la red de la compañía. Su servidor de correo podría estar en listas negras para pasare- . por 100 de los servidores de Internet. también conocido como spammers torio LDAP. Este Los agentes de transferencia hacen la parte más dura de la comunicación en i problema de seguridad está ilustrado en la figura 5. ninguna de ellas usa SMTO: puede autentificarse como usuario del sistema y ejecutar el MTA.132 Correo Correo 133 • Cómo proteger datos sensibles para la compañía. Remitentes de correo no solicitado (UBE). la creación de correo basura y su dispersión a través de los servidores SMTP Quizá qué hemos escogido Postfix como MTA en lugar de se pregunte por abiertos. indicarle al MTA una conexión directa (al igual que se le índica al ISP una un túnel en Internet desde un MTA línea telefónica) o a través de remoto. Evolution o Thunderbird. Un montón de usuarios ignoran que pueden encontrar sus contactos o remitentes de correo no deseado (UCE) son los responsables de más del 50 por en los sistemas LDAP. Los usuarios normalmente recuperan su correo usando o POP3 o IMAP4 so- bre TCP/IP Casi todos los MUA modernos soportan tanto POP3 como IMAP4. Sendmail procesa el correo de cualquiera. En entornos empresariales. Internet. por lo tanto tiene algunas debilidades en cuanto a seguridad. de modo que puedan buscar la dirección de correo de la gente.1. den que es flexible y escalable. la capacidad de procesamiento y de almacenamiento y las infraestructuras se resientan. es decir. servidor de correo para Internet original y que fue desarrollado a el Los MTA bien configurados aceptan correo saliente sólo para las direcciones principios de la década 1980 por Eric Aílman en la Universidad de California. pero no estamos seguros de que esto siga siendo así. Los UBE tienen una variedad de técnicas que les permite esconder su identidad real. por defecto. los contactos se suelen almacenar en servidores de direc. Muchos sondeos usa Sendmail y no deshabilita esta opción. el remitente liga su sistema a un MTA. El correo puede mostrarse al usuario a través de un agente de usuario de correo (MUA). esto está normalmente limitado a una Berkeley. que procesa cualquier correo originado por un extraño. que luego usa SMTP i para transferir el correo al MTA responsable de entregar dicho correo a su desti- natario. este recupera su correo a través de un agente de entrega de correo (MDA) como Courier IMAE El MDA habla con el MTA para obtener el correo y ofrece un buzón para almacenar el correo. permite que la pasarela quede abierta. muchos administradores de sistemas lo conside- ran extremadamente complejo y difícil de configurar y mantener. El destinatario tiene distintas formas de recuperar el correo desde un MTA. por defecto. Pero. (Estamos ignorando otros métodos como hacerlo desde una interfaz Web como Gmail o usando un teléfono móvil. Para enviar un s correo electrónico. los UBE pueden usar su MTA para indican que la popularidad de Sendmail ha caído rápidamente. Sendmail estuvo presente en la mayoría de las instalaciones de MTA en subred determinada. que pertenecen a sus usuarios legítimos. Si Internet. Uno de los proble- mas más serios de Sendmail es que.

Free Divide" El instalador de conduce por un script estándar antes de la configu- Debian le (http / /www serverwatch com/ tutorials/article php/3580006): . El MTA por defecto para Debían es Exím 4. que puede desplegarse sobre gran variedad de soft- ción. Su producto estrella. gratuita y la versión de pago de Sendmail en el artículo "The Fee vs. por lo que facilitan las cosas a los UBE. Lo siguiente es una descripción del modelo de negocio de Sendmail Inc (obtenida en http //www. cuando Debian acabe su trabajo. deshabilite algunos Scripts de servido: # update-inetd --remove daytime # update-inetd --remove telnet # update-inetd --remove time Para levantar nuestro servidor. Los productos de Sendmail funcionan en las infraestructuras ma de correo sin configurar?. verá una pantalla agradeciendo el uso de Debian. Postfix se diseñó desdeel principio como un sustituto robusto y seguro para En este punto debería eliminar algunos programas innecesarios usando la utili- Sendmail. saliente e interno. cárguelo de http: / /www. pero los mejores avances de seguridad se consiguen con cada talación de red y asegúrese de que proporciona un nombre de dominio correcto. facilidades para la seguridad. Si decide usar otra distribución. correo. Sendmail es el donde preguntará si quiere configurar Exim (Exim-config). Elija Sin configura- una implementación portable. pero preferimos Postfix dad apt-get. se creó Sendmail Inc. Todo { ) Servidor de archivos ello acompañado de un instalador gráfico y asistentes para tareas. ejecute: tral de gestión y capacidad de carga balanceada. El instalador de Debian procederá a descargar y a insta- entre las que se incluye correo electrónico. Aaron Weiss aclara algunas dudas entre la versión Luego. de correo heterogéneas como Exchange. Sendmail Consortium (responsable de la versión libre del MTA el ( ) Base de datos SQL Sendmail) está patrocinado por Sendmail Inc. Al mismo tiempo. sendmail com/company): : . soporte para SSL. como veremos en la siguiente sección. lo que podría provocar que correo legítimo fuera tratado como spam. Notes. Además.13 Correo Correo las abiertas. de paquetes. SASL ( ) { ) Servidor DNS y directorios LDAP. Bajo Debian. Si todavía no tiene un disco de instalación en red para Debian. que tenga que elegir el tipo de ración. siga la rutina de instalación estándar hasta Para comercializar Sendmail y ofrecer productos de valor añadido que mejor el instalación que desea. Si elige otra distribución. Ofrece módulos anti-spam. Después haga una ins- . clustering y gestión remota. sin Use la última versión estable de Debian y configúrela con el número mínimo parchear y sin documentar. Las lar los paquetes. Sólo presione el fabulador y Sendmail ofrece diferentes soluciones empresariales para mensajería segura haga clic en el botón OK. es fácil migrar de Exim a pppoeconf ppp pppconfig Postfix. Los desa. des- rrolladores de Sendmail son conscientes del problema y trabajan duro para ha. filtros de gestión ( ) Servidor Web Servidor de Impresión de contenidos (incluyendo defensas anti-spam y antivirus). configure Debian como se sugiere en esta sección. cerlo más seguro. : . puede eliminar los paquetes usando porque Exiin tiene algunos problemas de escalabilidad. puede hacer lo mismo que lo que indicamos # update-inetd --remove talk y conseguirá los mismos resultados. soporte técnico. Servidor de correo { ) Además. vamos a hacer uso de una instalación reciente # update-inetd --remove finger de Debían. no va a usar el servidor de correo por defecto (Exim) puesto que en su lugar va a instalar Postfix. versión de pago del producto. Groupwise y otras soluciones de El instalador de Debian continuará descargando y configurando paquetes. Ahora. antivirus ( ) Selección manual de paquetes y para la gestión remota del MTA. Durante las descargas. existen indicios de que los desarrolladores de la distribución Debían van a convertir a Postfix en el MTA # apt-get remove Ipr nfs-common portmap pidentd pcmcia-cs pppoe \ por defecto en un futuro cercano. y capacidades de auditoría. voz y mensajería instantánea. No seleccione ninguna opción. . La pantalla que podrá ver será así: desarrollo. Se asienta en su núcleo e incluye una consola ( ) Entorno de escritorio gráfica de gestión. Carece de una cola cen- otros procedimientos. Luego responda Sí cuando le pregunte ¿De verdad que desea dejar el siste- ware y aplicaciones. mostrará una o más pantallas gráficas soluciones Sendmail controlan correo entrante. us debian org/CD/netinst. puede tener problemas legales si facilita la distribución de correo basura. # update-inetd --remove ntalk . . La base de usuarios de Sendmail a menudo opera con versiones obsoletas. Sendmail Switch está basa- do en la versión libre de Sendmail. En teoría.

What address should I add to /etc/aliases. If this is a mail domain En la parte de abajo de la pantalla encontrará una pregunta que nos interesa: gateway. Done Building Dependency Tree Done . localhost . or their mail may be delivered to /var/mail/nobody i . necesita queel comando hostname devuelva un FQDN como mail centralsof t .centralsoft. hostname en Debían sólo devuelve mail.puede responder <No> aquí. and you are not using a journaled el archivo de configuración de Postfix. . . . por lo que introduciremos NONE <Yes> <No> en la siguiente pantalla. Si ya tiene un servidor en está escribiendo filesystera (such..centralsoft. . redirected via an alias. . Postfix El siguiente comando instala los paquetes necesarios para ejecutar Postfix. Para permitirle # apt-get install postfix postfix-doc postfix-tls libsasl2 \ configurar el FQDN. full domain ñame (FQDN) from which mail will appear to origínate. Where should mail for root go NONE _____ <Ok> <Cancei> La próxima pregunta durante la instalación está relacionada con FQDN. ) } . Debido a que casi todas las distribuciones usan el sistema de archivos ext3 por The user root (and any other users with a uid of 0) must have mai. Fíjese en que le aparecerá un diálogo durante el pro.org. Elija "Internet Site" incluso si planea usar Postfix para correo local. <Ok> <Cancel> ceso que empezará con las siguientes líneas: Responda <Ok> para aceptar el valor por defecto que aparece en el cuadro de Reading Package Lists. mail centralsof t org . . The default is "off".org. single.. producción usando Sendmail. ya tendrá un archivo de alias. then you possibly need to add this entry.. it should be the mismo tiempo. verá una pantalla con mensajes que empieza así: servidor: You have severa! cholees for general conf iguration at this point . Correo Correo # update-inetd --remove ftp This is by design: mail is not delivered to externa! delivery agents as root. Give a comma-separated list of domains that this machine should consider itself the final destination for. then mail is processed more slowly. localhost. # /etc/init d/inetd reload . # update-inetd --remove discard If you already have a /etc/aliases file. Local only La pregunta final está relacionada con los sistemas que tienen sistemas de archivos que no son un estándar: <0k> <Cancel> If synchronous updates are forced. No conf iguration <0k> <Cancel> Internet Site Internet with smarthost Satellite system Lós dominios listados aparecerán en su archivo de configuración main cf . Libsasl2 ya debería estar instalado en el sistema. En este capítulo Forcé synchronous updates on mail queue? supondremos que está empezando desde cero. you probably want to inelude the top-level domain. Debían debe elegir entre instalar libidap2 al This ñame will be used by other programs besides Postfix. el script de instalación ofrece el siguiente diálogo: sasl2-bin libsasl2 -modules Your 'mail ñame' is the hostname portion of the address to be shown on outgoing news and mail messages (following the username and @ sign) Cuando instala estos paquetes. as ext3). if I create the file? y ahora remide el superservidor inetd: (Enter NONE to not add one . . {I will only add it if I am creating a new /etc/aliases . un diálogo de información le indicará que el proceso de instalación system crashes at an inopportune time. then there is a remóte chance of losing some mail if the Luego. En este punto. texto azul. El siguiente diálogo muestra los valores por defecto de los dominios de su Luego.l defecto. Other destinations to accept mail for? (blank for none) General type of conf iguration? server2. Pero por defecto. la utilidad de instalación de Debían empezará a descargar y Mail ñame? configurar varios archivos. If not forced. junto con la seguridad TLS y SASL que permite autentificar a los usuarios: org.

0/8 Postfix no añade el sufijo @centralsoft. Por defecto en Debian append_dot_mydomain = no myhostname = está desactivado. añadir el ínet__ínterf aces = nombre de dominio a una dirección de correo mydestínation = $mydomain. . . El uso de texto como estan- darte es obligatorio según todas las especifica- mínima ciones SMTP. el formato del archivo de datos usado.org. Por defecto se suele usar el nombre de dominio cualificado. biff = no debería desactivarlo. Nosotros so de instalación de Debian. Este valor significa que mynetworks = 127. mensajes del tipo "correo retrasado". . Este ejemplo asigna el valor centralsof t org tanto . Por ello es de apreciar el trabajo que ahorra el proce. i figuración y cambiarlos si fuera necesario.smtpd_banner = Especifica el textoque identifica este servidor $myhostname ESMTP cuando se está comunicando mediante SMTP $mail_name (Debian/GNU) con otro servidor.1 archivo simple y que estos parámetros le de parámetros puede encontrarse en el sistema archivo de ejemplo /usr/share/ indican al sistema dónde está situado y cuál es postf ix/main cf dist. iocalhost . Parámetros claves para la configuración de Postfix. las líneas posteriores del archivo pueden referirse al parámetro siem. es tarea del MUA. .org = $ myhostname se usa como valor por defecto niyorigin = $mydomain para otros muchos parámetros de configuración. al parámetro mydomain alias_maps = Especifica el alias de la base de datos usada por como a myorigin hash: /etc/aliases el agente local de entrega. Los papeles de estos dos parámetros ceso de instalación de Debian también pregunta por dominios. / etc/postf ix/main cf . localhost $mydomain. Si no tiene usuarios locales. Una lista completa usted. El siguiente archivo es un archivo con la configuración de Postfix. Postfix. Esto es por lo que el pro. sólo tenga en cuenta que Postfix El muchos parámetros /etc/postf ix/ gestor de paquetes de Debian configura mantiene una lista con todos los alias en un main cf por . Un archivo básico de configuración realiza reparto local únicamente. capítulo. Espera alias__database = Un alias es simplemente un nombre alternativo que haya receptores de correo que tengan cuentas y directorios locales en el ser. nombres de equi. i myhostname = Especifique el nombre de equipo de Internet i pre que tengan como prefijo el símbolo del dólar: ¡ server2 centralsof t org . lina vez que el parámetro esperan retrasos. Si estuviera configurando Postfix a mano.0. biff = no biff es un pequeño proceso que puede Postfix notificar a los usuarios locales que tienen smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU) correo Nuevo. La tabla 5. no son importantes para comprender este po y dirección de destino. No necesita que el sistema añada el sufijo (que debería @ ejemplo.0. muestra las líneas maestras. Los parámetros y los valores imprimidos no tendrán sentido para usted ?í por el momento. debería especificar el alias admin especificarse con el parámetro append dot mydomain). i mydomain centralsoft. hash /etc/aliases : que alguien usa en lugar del original. tendría que rellenar muchos de #delay_warning_time = 4h Quite el comentario de esta línea para generar estos valores manualmente. : 138 Correo Correo En punto.1. para root. . mydoraain = myorigin =$mydomaín append_dot_mydomain = no En un entorno como el nuestro. está definido. de este sistema de correo. pero tendrá que ser capaz de encontrarlos en el archivo de con. no activaremos esta opción porque empezare- Postfix usa una que cada línea consiste en un parámetro sintaxis simple en la i mos con un volumen bajo de usuarios y no se de configuración seguido por un signo igual y un valor. la instalación finaliza y escribe el archivo de configuración de este Tabla 5. Por vidor de correo.

Message 1 Date: Tue. Puede especificar que el sistema acepte localhost central soft org. 151 164 28 0 / 28 ). Postfix acepta correo mydestinatíon = una lista de equipos y nombres de Especifica destinado a Smyhostname y a localhost. minio entero añadiendo Smydomain a la lista: localhost correo. la esto provocará que Postfix esté abierto para El un ejemplo de dos mensajes de prueba enviado por uno de los siguiente es todos los proveedores de la red. do solamente nuestro equipo local. Aquí. localhost $mydomain.org Esto es muy útil sólo si tiene más de una Tue. No confíe la clase entera en un servidor de acceso telefónico. confiando sólo en el 1P y/o usar su notación de red o de máscara de red (por ejemplo parámetro mynetworks. recciones de correo de los usuarios locales. Nosotros lo nora el parámetro mynetworks style. por ejemplo. . los dominios para los cuales Postfix acepta y procesa el correo.0. etc. Leimos el mensaje desde la línea de comandos usando el proemail -a "$EXTENSION" entregar el correo en el buzón del usuario. blanco. . cf más tarde en también puede especificar el parámetro lugar.com . .org . hemos especifica. : 2 Correo Correo Puede que necesite algunas personalizaciones sencillas pero útiles. el equipo en el que server2 centralsof t org. 0 desactiva la cuota. mailbox_command = Especifica el comando externo que se usa para centralsof t .) Puede ofrecer una o más direcciones hemos dejados en blanco. por cada usuario. usamos una cuenta de Gmail para enviar un mensaje de correo a una cuenta de usuario en el sistema server . dominio. mydestination = $myhostname.centralsoft. (Si establece mynetworks. Subject: Prueba de SMTP recipient_delimiter = +• Especifica el separador usado entre los nom. 11 Jul 2006 17:38:32 -0500 mailbox__size__limit = 0 Define una cuota para el correo almacenado From: "Tom Adelstein" <tadelstein@gmail com> . Primero. En su Haremos algunos otros cambios en /etc/postf ix/maín. .-tadelstein@gmail. mynetworks = 127. SHELL y LOGNAME. en una tabla de búsqueda.0/8 Especifica los equipos que este servidor no Este parámetro es útil cuando desea dirigir correos a equipos que están fuera considera spammers.org. $mydomain relayhost = Especifica un equipo por defecto que este « Puede indicarle a Postfix qué equipos quiere que procesen el correo confi- servidor usará para devolver correo cuando gurando el parámetro mynetworks. To: tadelste@server2 centralsof t . mydestination dominios que aparecen en las di- lista los correos enviados. es decir. autores de este libro. viajantes. Postfix ig- no sepa localizar al receptor. . su do- Postfix se está ejecutando. Estamos enviando este correo para probar la funcionalidad del servidor bres de usuario y las extensiones de dirección de correo a la hora de enviar y recibir correo SMTP simple. Por defecto. ya que Con configuración apropiada. puede recibir y enviar correo desde su cuenta. Received: from server2. Smydomain. .0. este capítulo para añadir autentificación mynetworksstyle = clase donde Postfix debería confiar en todos los clientes SMTP pertenecientes a la misma clase de red (A/B/C) Probando e! correo que la máquina local. separados por comas o espacios en . para ejecutivos que trabajan desde casa. Luego contestamos al correo original y lo recibimos en la cuenta de Gmail: inet_interfaces = all Especifica la interfaz de red (tarjeta de red) a través de la cual el sistema recibe el correo. he aquí algunas de ellas: myorigin = mydomaín Especifica el dominio que aparecerá en los * Normalmente. comando estándar de Linux mail: Este comando se ejecuta cuando el receptor tenga definidas las variables de entorno ~$ mail HOME. Delivered-To tadelstein@gmail com : . y encriptación de contraseñas. para los cuales este servidor aceptará . 11 Jul 2006 16:10:44 -0700 (PDT) tarjeta de red. de su red. To.

Active la el sistema. Cuando instaló los paquetes anteriormente. tesh. usaremos SASL para verificar que las personas necesita un mecanismo de seguridad. Debían incluye SASL con Postfix. Luego.centralsoft. que tiene biar datos. Configurando Postfix con SASL para autentificar usuarios con cuentas La figura 5. este método usa PAM. es proyecto Cyrus de la Universidad de Carnegie Mellon. cuando la IETF escribió un estándar # posteonf -e ' smtpd_sasl _auth_enable = yes' .cf directamente. por ejemplo. ESTMP evita que una gran cantidad de re- . que puede ser una interfaz de comandos (bash. hay que asegurarse de que el usuario es quien dice ser. hemos de remontarnos hasta 1 999. aseguraremos que no enviamos ni ID de usuario ni contraseñas a través de la red Primero. cf. autentificación en Linux para hacer esto.1). que ofrecerle el servicio pedido. /etc/shaclow o Módulos de Autentifica- su cuenta de servicio. servicio que use SASL en un sistema operativo Linux necesita un archivo de parámetros al archivo usando comandos posteonf. ción independientes). autentificación en el servidor SMTP Postfix añadiendo los parámetros smtpd (ser- vidor) a su archivo de configuración main cf con este comando posteonf: . Luego. nos aseguraremos que sólo usuarios con las cre- i denciales adecuadas puedan usar nuestro servidor SMTP Con encriptación. Puede usar las librerías elcorreo a través de un servidor de correo fuere de la red local del servidor.1 representa un grupo de usuarios móviles que necesitan obtener Afortunadamente. archivos independientes. Añadiendo autentificación y encrip faetón configuraremos un método simple que funciona bien en sitios pequeños donde puede dar a cada usuario de correo una cuenta de usuario en el servidor Linux. la autentificación por defecto usada en estos casos. el mecanismo por defecto para la procesado. Ahora ne- autentificación en muchas de las operaciones cliente/servidor. En el siguiente ejemplo. Para distinguir a estos usuarios legítimos de los spammers. mas para almacenar e intercambiar credenciales de usuario. de la red. También ofrece de correo a la hora de enviar y recibir correo SMTP simple seguridad autentificando a los usuarios y sus actividades. Estarnos enviando este correo para probar la funcionalidad del servidor mitentes y/o atacantes usen MTA desconocidos como pasarelas. Iibsasl2. /etc/postf ix/ que no tienen cuentas en el servidor. . incluyó las extensiones y las libre- Nota: Los administradores del sistema pueden usar SASL para añadir rías SASL necesarias (postfix-tls. mostraremos dos formas de usar Postfix con SASL. La capa SASL desarrollada como parte del que están intentando conectarse tienen cuentas válidas en el servidor Linux. Ahora que ya hemos configurado un servidor SM TP por defecto. etc. . main. Una alternativa es mutt. nuestro sistema permitirá conectarse y enviar correo sólo a las personas dio para identificar las fuentes de correo enviadas al servidor y control del correo con cuentas en el servidor. decir. ofrece Postfix con un me.) o una sesión X Window ejecutándose bajo su identidad. Primero. Usaremos PAM. En este capítulo. le mostraremos cómo añadir . ¿Cómo se convirtió SASL en parte de lasolución Postfix? Para encontrar una respuesta. luego. El framework de autentificación SASL permite una variedad de for- una interfaz robusta y bastantes más funcionalidades. sasl2-bin y libsasí2-modules). o servicios externos como LDAP.org (Tom Adelstein) postf ix/main cf (véase Tabla 5. Verá este trabajo con el In-Reply-To acrónimo de ESMTP. Puede usar dría usar algunos de estos agentes de línea de comando cuando reciba correo en contraseñas Linux (/etc/passwd. Este es SASL de Debían para permitir a los usuarios móviles autentificarse desde fuera un escenario común. No puede instalar SASL y configurarlo para todo ternativa consistente en editar /etc/postf ix/maín. ¿qué pode. hay en texto claro. Correo Correo Subject: Re: Prueba de SMTP llamado Extensión del servicio SMTP para autentificación. está en la primera línea de archivo /etc/ tadeIste@server2. Kerberos o sasldb (un directorio creado por el proyecto Cyrus e incluido con SASL). Como administrador. Con autentificación. le mostraremos una al- configuración diferente. nos Nota: La autentificación puede considerarse un proceso de dos etapas. mos hacer con Postfix? En esta sección añadiremos a identificación (usando SASL) configuraremos un sistema más complejo que le permite autentificar usuarios y encriptación (usando TLS) a nuestro archivo de configuración. incluso desde una cuenta local. La IETF basó la exten- sión ESMTP en SASL. ESMTP simplemente añade Usar el comando malí es una manera primitiva de gestionar grandes volúme- un comando llamado AUTH a los comandos del servidor usados para intercam- nes de correo. po. pero cada cesita configurar /etc/postf ix/main cf Primero. zsh. Como parte del protocolo SMTP.

nalmente recargar Postfix. Por defecto. ejecute este comando para crear un archivo de PARAMS=" -m /var/spool /posfcf ix/var/run/saslauthd -r" configuración SASL en el directorio donde Postfix buscará (la -p evita un error si el directorio ya existe): 3. ' Correo Correo E Luego. por lo que alguien que comprometa la seguridad del dominio local de autentificación. Su archivo debe quedar así: # mkdir -p /etc/postf ix/sasl # This needs to be uncommented before saslauthd will be run automatically # cd /etc/postf ix/sasl START=yes j. # postconf -e smtpd recipientrestrictions = ' Las librerías SASL que se distribuyen con Debían solventan esta situación aña- permit_mynetworks parmi t_sasl_authenticated. Nuestro sistema de contraseñas usa PAM. cesan la autentificación SMTP correctamente: pwcheck_method saslauthd : # posfcconf -e 'broken_sasl_ authclients = yes' mech_list: plain login parámetro smtod_sasl__security_options le permite controlar todos El Ahora puede reiniciar Postfix: los mecanismos de autentificación cuando los diversos clientes se conectan a su # postfix reload servidor SMTP. Siga los siguientes pasos: broken_sasl_auth_clients = yes smtpd_sasl_security__options = noanonymous 1 . en Ahora. Esto completa la configuración SASL para Postfix. necesita poner el demonio saslauthd en el mismo smtpd_sasl__auth_enable = yes espacio de nombres. que maneja las peti- ciones por Postfix. De manera alternativa. Las lugar de ejecutar los diferentes comandos postconf anteriores. saslauthd # postconf -e ‘ smtpd_ sasl_local_domain =' necesita las contraseñas actuales porque usa el mismo servido de autentificación que el que usted usar para abrir una sesión de consola en Linux. especifique una cadena nula: demonio es mínimo incluso si se usaran contraseñas en texto claro. # mkdir -p /var/spool/postf ix/var/run/saslauthd smtpd_sasl_local jiomain = 2. Para usar el com- saslauthd no se comunica fuera de nuestra red. Cree el directorio necesario para el demonio: smtpd_recipient__restrictions = permit_sasl_authenticated. tiene la opción de siguientes direcciones corresponden a Debian. máquina como el nombre de dominio local de autentificación. Por consiguiente. Cree el archivo smtpd conf con estas dos líneas: . vamos a configurar saslauthd para ejecutar el servidor de correo. Edite /etc/def ault/ saslauthd para activar saslauthd. hemos especificado saslauthd como nuestro mé- . Antes de comentarios de la línea START=yes y luego añada la línea: vamos a ver los últimos pasos. mismas cosas con los directorios y los comandos de otros sistemas Linux. necesita añadir otro acceso a los archivos de contraseña. ¿Por qué? Postfix no permite el envío de correo sin autorizar por defecto. añada un parámetro para ajustar los clientes no estándar que no pro. no puede autentificar directamente a los usuarios. Por lo que. rejectunauth destination' . pero puede hacer más o menos las editar el archivo /etc/postf ix/main cf añadir las siguientes entradas . Postfix considera el nombre de la servidor de correo no podrá disfrutar de los privilegios de saslauthd. todo para verificar las credenciales del usuario. y fi. Debido a que la cuenta de servicio de Postfix se parámetro (nota: esto debería aparecer en una sola línea): ejecuta con privilegios limitados. permit _mynetworks reject_unauth_destination . el impacto de seguridad del portamiento por defecto. El demonio se ejecuta con privilegios de superusuario en un Finalmente el parámetro smtpd_sasl_loca_domain establece el nombre del proceso separado de Postfix. Elimine la marca Ha terminado de configurar SASL y ahora ya puede empezar a usarlo. . í . y los procesos sin privilegios no tienen para permitir a sus usuarios de correo trabajar en Internet. El siguiente bloque de configuración bloquea completamente la autentificación anónima: El demonio saslauthd # posfcconf -e * smtpd_sasl_security_opfcions = noanonymous En el archivo smtpd conf. diendo un demonio de autentificación llamado saslauthd. El puerto de Postfix en Debian se ejecuta en entorno chroot en /var/spool/ smtpd_sasl_local_domain = $myhostname postfix.

La combinación de # openssl genrsa -des3 -rand /etc/hosts -out smtpd. esta solución carece de escalabilidad requiere aunque con diferentes objetivos. Anteriormente ya discutimos acerca de De no hacerlo así. login. 293 semi-random bytes loaded . Cam- pwcheck_method : saslauthd bie el valor de P1DFILE por lo siguiente: por la siguiente. Usar archivo de contraseñas para la autentificadón en un sistema Linux el requiere que cada persona que recibe el correo a través del servidor tenga una Nota: La sección previa de SASL y la sección actual tratan de la seguridad. Luego. una versión actualizada de la encriptación SSL. para enviar contraseñas configuración. Necesita una clave ñas en texto claro. Para solucionar este problema. Si inconveniente de usar el método auxprop para la validación de usuarios es El directorios y archivos diferentes. con más usuarios. los administradores normal. De todos los mecanismos de autentificadón discutidos en este capítulo. en muchos sistemas la forma que. cuenta de usuario. Empiece por crear un directorio para los certificados SSL. Bar ejemplo. # "shadow'' or "sasldb". pid" pwcheck_method: auxprop 5. las través de su servidor. está limita. " Correo Correo I PARAMS="-m /var/spool/postf ix/var/run/saslauthd -r" En una red de ordenadores pequeña. # MECHANISMS= "pam shadow" El método sasldb y el MySQL necesitan que instale un tipo especial de plugin MECHANI SMS = " pam llamado auxiliary property. Encriptación TLS usa una distribución Linux distinta de Debian. líke this: probablemente MySQL sea la solución más escalable y más fácil de gestionar. Luego ejecute saslauthd: # /etc/init d/saslauthd start . El demonio saslauthd asegura que los intrusos potenciales no pueden leer las credenciales secretas no se ejecuta cuando Postfix usa uno de estos métodos: no se necesita un progra- ' de los usuarios. que determina quién tiene el derecho de enviar correo a el servidor SMTP. Mientras que la sección de SASL maneja la y mucho tiempo administrativo. trabajará con comandos. LDAP es el más robusto y escalable. Necesitará ambos servicios para un correo electrónico seguro. va- Configurando Postfix con SASL para autentificar usuarios sin cuentas mos a extender esa solución para encriptar información de identificación creando un certificado a través de Open SSL. Lo siguiente que tiene que hacer es editar /etc/init d/saslauthd para . but may also inelude . no hay ningún problema. primaria que nadie conoce y una clave pública que le permite a los otros enviarle mente usan la capa TLS para encriptar las contraseñas y transmitirlas desde el credenciales seguras. Comience con la clave del servidor: diente al servidor (como se discutirá en la siguiente sección). CramMD5. que ofrece un framework para el citado plugin: PIDFILE=" /var/spool/postf ix/var/run/ $ {ÑAME} /saslauthd. genere dos certificados y dos claves de encriptación. Cuando usa saslauthd. desde su estación de trabajo a su servidor de correo de manera segura. que opciones más populares son sasldb. Obviamente. ya sea una red local o Internet. cualquiera puede obtener de manera fácil sus credenciales. DigestMD5. ma distinto con privilegios de superusuario porque SASL no necesita acceder al archivo de contraseñas del sistema operativo. tiene que editar el ar- 4. Para soportar usuarios que no tienen cuentas en autentificadón. key 1024 LDAP y TLS actualmente es la mejor opción de seguridad. Postfix también ofrece un método auxprop alternativo. Cuando es usted estándar de iniciar saslauthd por primera vez es el comando: el que entra en su propia estación de trabajo. que soporta # mkdir /etc/postf ix/ssl los métodos de autentificadón de texto plano. cambiar la ubicación del archivo con el ID del proceso de saslauthd. LDAg Kerberos y MySQL. sin protecciones adicionales. # This defaults to "pam" for PAM support válida paraunos cuantos usuarios. Si configura sasldb o MySQL. Para sitios más grandes. Esta sección trata la protección de contraseñas. Por tanto. chivo smtpd conf y cambiar la línea: . SASL le permite usar otras opciones de almacenamiento. OPT # cd /etc/postf ix/ssl/ y NTLM. pero cuando envía un ID de usuario y una contraseña a través de una red en texto # saslauthd -a pam plano para acceder al correo. pero tiene la limitación de que usa contrase. Aquí. usa validación de texto plano. Debian especificará el uso de PAM a través del archivo de usar TLS. sasldb puede ofrecer una solución simple # You must specify the authenticatíon mechanisms you wish to use. Cree un subdirectorio justo debajo de la ubicación de Postfix en Debian: do a la transmisión de contraseñas en texto plano y a la autentificadón vía Iogin.

section) [] Locality Ñame (eg. 1024 bit long modulus writing RSA key # mv -f smtpd. genere otra clave y otro certificado You are about to be asked to enter information that will be incorporated into your certifícate request.org Email Address [] : Organizational Unit Ñame (eg. There are quite a few fields but you can leave some blank Country Ñame (2 letter code) [AU] For some fields there wili be a default valué. YOUR ñame) [} Ahora necesita indicarle a Postfix las claves y los certificados de los siguientes Email Address [J : comandos posteonf: Please enter the followíng 'extra' attributes to be sent with your certifícate request # posteonf -e 'smtpdtls auth_only = no' A challenge password [] : # posteonf -e 'smtp_use_tls = yes' An optional company ñame [] eso: # posteonf -e 'smtpd_use_tls = yes' # posteonf -e 'smtp_tls_note_starttls_of f er = yes' # posteonf -e 'smtpdtls key_file = /etc/postf ix/ssl/smtpd. YOUR ñame) [] : Organization Ñame (eg. adelstein@gmail cora . compahy) (Internet Widgits Pty Ltd] centralsoft. State or Province Ñame (full ñame) [Some-State] If you enter the field will be left blank.Enter PEM pass phrase: Luego.key.csr You are about to be asked to enter Information that will be incorporated There are quite a few fields but you can leave some blank into your certifícate request. city) [] Country Ñame (2 letter code) [AU] Organization Ñame (eg. more complete versión Signature ok smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU) subject=/C=US/ST=Texas/L=Dallas/0=centralsof t org/OU=web/CN=Tom_Adelstein/ . cacert. If you enter the field will be left blank What you are about to enter is what is called a Distinguished Ñame or a DN. section) [] web : Common Ñame (eg.pem -days 3650 Verifying .example. company) [Internet Widgits Pty Ltd] State or Province Ñame (full ñame) [Some-State] Organizational Unit Ñame (eg.crt # See /usr/ share/postf ix/main.csr -signkey smtpd. Locality Ñame (eg.pem' Enter PEM pass phrase: # chmod 600 smtpd. # appending .key e is 65537 (0x10001) # openssl req -new -x509 -extensiosis v3_ca -keyout cakey.key # chmod 600 smtpd.key: # Uncomment the next line to genérate "delayed rtiail" warnings # openssl rsa -in smtpd. key. # openssl req -new -key smtpd.com . key Nota: Existe un debate para dirimir si los certificados que se autogeneran smtpd_tls_cert_f ile = /etc/postf ix/ssl/smtpd. # posteonf -e 'tls random source = dev: /dev/urandom' tentes por las nuevas: El archivo /etc/postf ix/main. biff = no emailAddress=tom. # posteonf -e 'smtpd_tls loglevel ¡= 1' # posteonf -e 'smtpd tls_received_header = yes' # posteonf -e * smtpdtls session_cache_timeout » 3600s' Los siguientes comandos generan un clave de firma y cambian las claves exis. key unencrypted .Enter pass phrase for smtpd.key Verifying . Getting Private key append_dot_mydomain = no Enter pass phrase for smtpd.key: Generating a 1024 bit RSA private key ++++++ Cambie los permisos del archivo resultante que contiene la clave OpenSSL del ++++++ servidor: writing new private key to 'cakey. unencrypted smtpd. Nosotros recomendamos que introduzca # posteonf -e 'smtpd_tls_CAf ile = /etc/postf ix/ssl/cacert .dist for a commented. crt' # posteonf -e ' deberían pedir información o no. cf debería quedar así: # openssl x509 -req -days 3650 -in smtpd. City) (] Common Ñame (eg. : : : : : : : : : : ' Correo Correo Generating RSA prívate key. For some fields there will be a default valué.key: myhostname = serverl.domain is the MUA' s job. cf .pem' la información apropiada para su sitio de producción. What you are about to enter is what is called a Distinguished Ñame or a DN.pem -out \ Enter pass phrase for smtpd.key -out smtpd.key -out smtpd. #delay_warning_time = 4h Enter pass phrase for smtpd.key -out \ smtpd.

Este servicio es fácil de administrar. unauth_destination smtpd_tls_auth_only = no Nota: En nuestra configuración. y prefie- # /etc/init. permite acceder a la vez a una sola aplicación. Además. encriptados y los puertos son POP3S (puerto 995) e IMAPS (puerto 993). Otros servidores IMAP. Algunas personas creen que incluso el bloqueo de archivos es Hemos escogido ipopd-ssl para ofrecer agentes de entrega de correo POP2 y insuficiente para evitar fallos ocasionales en mbox. básicamente configura el mydestínation = serverl. El En esta sección añadiremos agentes de entrega de correo para complementar propósito del bloqueo es evitar actualizaciones conflictivas. lo que implica bloqueos y hace que el sistema vaya más lento. Los ISP aún continúan usando POP3. sin embargo. como Cyrus. smtpd_tls_cert_f ile = /etc/postf ix/ssl/smtpd crt si los usuarios están fuera del dominio. uw-imapd no permite a los usuarios virtuales o a aquellos Ahora ya puede reinidar el demonio Postfix: que no tenga cuenta y directorio de inicio acceder al correo. pero requiere una pasarela (como se discutió en la sección previa) smtpd_tls_key_f ile = /etc/post f ix/ssl/smtpd key . Muchos sistemas de archivos distribuidos carecen de mecanis- mos de bloqueo.0.com. Por una parte. tanto los pa. permite acceso concurrente a múltiples apli- IMAP estándar usa el puerto 143 y POP3 usa el puerto flO. Courier y Dovecot. el paquete ipopd-ssl aiias_database = hash: /etc/aliases myorigin = /etc/mai Iname está mantenido por Debian.pera smtpd_tls__loglevel = 1 uw-imapd tiene ventajas y desventajas. localhost uso del directorio de correo que existe en el servidor de correo al igual que el que relayhost = configuramos en el capítulo anterior.d/postfix restart Stopping mail transport agent Postfix. IMAP es superior a POP porque deja el correo en el servidor y permite a los inet_interfaces = all usuarios ver mensajes desde cualquier ubicación con acceso a Internet y un cliente smtpd_sasl_local _domain = de correo.0/8 las empresas no suelen usarlo. quetes que ofrecen servicios sin encriptar como los que los ofrece encriptados. No se preocupe por el sufijo ssl. smtpd_tls_CAf ile = /etc/postf ix/ssl/cacert . a muchos administradores no les gusta el formato de almacenamiento de rnbox. localhost. a Postfix. mailbox_commaRd = proemail -a "$ EXTENSION" mailbox_size__limit = 0 uw-imapd-ssl ofrece un servidor IMAP Aunque requiere más espacio en dis- recipíent_deii.miter = + co. usan el formato maildir para permitir a los usuarios virtuales . Al ser un formato de archivo único mbox Starting mail transport agent: Postfix. el fallo es posible POP3 y uwimapd-ssl para IMAP.exaraple. usa el estilo Unix para smtpd_tls_received_header = yes el buzón de correo. Sólo necesita instalarlo.com. Correo Correo alias_maps = hash: /etc/aliases Originalmente creado en la Universidad de Washington. smtpd_recipient_restrictions = permit_sasl_authenticated. Use el siguiente comando en Debían para añadir un servidor IMAP y uno POP3. Los protocolos caciones y no necesita bloqueo de archivos. No conocemos ningún cliente de correo actual que no pueda procesar smtpd_sasl_auth_enable = yes smtpd_sasl_security_optíons = noanonymous IMAL por lo que la mayoría de los usuarios pueden usarlo. : Por la otra parte. Muchas personas consideran que el bloqueo de archivos es un problema en el # apt-get install ipopd-ssl uw-imapd-ssl caso del correo. si un proceso de correo falla en medio de la actualización de un buzón.0.ls_note__starttls_of fer = yes dominio. pero mynetworks = 127. los usuarios necesitan cuentas de Linux smtp_use_tls = yes estándar en su servidor de correo. .example. : ren el formato jerárquico de maildir.t_mynet works reject . incluso aunque lean su correo desde un sratpd_use_tls = yes cliente en otro sistema. El Elformato maildir. broken_sasl_auth_clients = yes También puede ofrecer correo Web en su servidor de correo usando SSL (https). lo que mantiene el correo de todos los usuarios en un archivo smtpd_t 1 s_s e s s i on_cache_t imeout = 3600s tls_random_s ource = dev /dev/uran'dom único en su directorio de inicio. Con Linux. permi. permitiendo así que los usuarios accedan a su correo desde un navegador Web. Configurando los agentes de entrega de correo POP3 e IMAP Nota: El bloqueo de archivos es un mecanismo que obliga a que sólo un usuario o proceso pueda acceder al archivo en un momento dado. Postfix normalmente permite entrega local en un smtp_t.

También podrá comprender por qué pagan a una docena o más de y Patrick Katter. configura Postfix para usar encriptación. En la gran mayo- si ría de los casos. deberá usar registros MX para hacer esto. 152 Correo Correo y a los usuarios sin cuenta ni directorio de inicio acceder al correo. En este punto. podrá estudiar los demás componentes de los sistemas de correo avanzados. ha instalado y configurado Postfix y un servicio IMAP y otro Otros servidores IMAP distintos de uw-imapd son difíciles de configurar POP 3. por lo que decida por usted mismo si el tamaño de su organización justifica su uso. ahora podrá comprender como el libro "The Book of Postfix" por Ralf Hildebrandt recursos para informarse. por qué las empresas gastan grandes cantidades de dinero en comprar licencias de sistemas. Des- Configuración del cliente de correo pués de que haya asimilado la información de este libro. Después. En este caso. tionar servicios de directorio. También necesitará aprender a ges- postf ix/main cf dejamos en manos del cliente de correo del usuario la deci- . las cuentas de usuario sólo tienen buzones de correo. . introduciremos la confi- Este es el comportamiento de la mayoría de los clientes. como soporte para . Como breve recordato- rio. además le proporcionaremos cuenta en el campo Para de un mensaje de correo electrónico. El próximo capítulo revisa el ser vicio que mucha gente considera como el más append_dot_mydomain = no crítico deuna organización: un servidor Web. Configurado junto con Postfix.org. Apache. como se mostró anteriormente en Si este capítulo. el usuario de corro también tiene que configurar su MIIA para usar encriptación TES a la hora de enviar correo.centralsoft. Este registro indica claramente que el correo enviado al dominio central sof t org debería ser entregado al serverl centralsof t org (que . como se vio anteriormente. Un registro MX normal sería: MX 10 serverl. debería seleccionar TES su servidor ofrece su uso. De ser así. Ya tiene los componentes esenciales de un sistema de correo que puede y usarse en un entorno corporativo. algunos consejos para resolver problemas. necesitará buscar otros Si esta es su primera toma de contacto con el correo. . es el servidor de correo del dominio). Esta área requiere una experiencia especial. necesitará configurar un servidor entrante con DNS. y procederemos a dominio como @centralsof t org cuando el usuario introduce un nombre de instalar un amplio rango de funcionalidades importantes. Los clientes más modernos soportan esto y ofrecen una interfaz gráfica para activar TES y usarlo con el servidor de correo saliente. Debería saber cómo instalar y configurar un servidor de correo escalable y seguro y cuánto esfuerzo es necesa- En nuestra introducción previa al archivo de configuración de Postfix /etc/ rio para adquirir experiencia en este campo. use el servidor SMTP de correo saliente de su ÍSP. Cuando no está en una red definida por Postfix y es cliente estático (al con- trario que el cliente móvil). Esto permite a los administradores mantener el MTA el MDA si tener que gestionar y cuentas de usuario estándar en el servidor. administradores de sistemas para que gestionen las infraestructuras de comuni- cación por correo electrónico. su IS y su contraseña viajarán en texto claro a través de las líneas de su ISP. . que pueden añadir un guración de uno de los servidores Web más populares. necesitan una buena dosis de experiencia. . como OpenEDAP o Fedora Directory Server. para sión de añadir el nombre de dominio cuando un usuario escribía un correo desde validar una gran cantidad de usuarios y ofrecer un listado de los usuarios de su cuenta de correo: correo de su empresa. Para el servicio de recepción de correo. sitios Web dinámicos y recolección de estadísticas.

un sistema gestor de contenidos que será muy útil en muchos entornos y que usa muchos de estos elementos. Este capítulo describe un entorno con un servidor Web. Dotaremos de seguridad al entorno a medida que avancemos. Al final del capítulo. gráficos. En este capítulo. 8 Instalar Drupal. y el único trabajo del servidor Web es devolverlos cuando el . Aprenderá levantaremos a: 8 Instalar y configurar Apache. un servidor Web Linux desde cero. Para que las explicaciones sean breves y claras. Archivos estáticos y dinámicos Un sitio Web básico está compuesto por archivos: HTML. le mostraremos por qué hemos elegido algunas alternativas en detrimento de otras. 8 Encriptar páginas sensibles con SSL. FHP y MySQJL. • Hacer pruebas de rendimiento y de seguridad. para resaltar que la seguridad es un aspecto que debe tenerse en cuenta desde el principio. podrá encontrar una sección para la solución de errores comunes. no cam- bian en el servidor. veremos cómo configurar un par de servidores Web para balancear el trabajo. JavaScript. hojas de estilos y otros tipos. • Activar tecnologías de servidor y Scripts CGI. en el capítulo siguien- te. 8 Instalar vlogger y Webalizer para ver las estadísticas del sitio. * Gestionar múltiples sitios Web con hosts virtuales. y al configurarlos no está claro cómo o por qué se hacen determinadas cosas. A lo largo del camino. Los servidores Web son grandes y complejos. El contenido de estos archivos es estático. usaremos los procedimientos estándar de Debían.

que inicia el programa CGI como un proceso mente. .41. en este caso http://70. puede usar la dirección IP del servidor. Cuando de nuestro servidor de pruebas . caso de que el CGI falle. PHP y MySQL. pero es muy superior al resto de servidor (SSI). incluso generación auto. Primero consiga el servidor se como parte del propio servidor Web: el intérprete de Perl se convirtió en cargan Apache: m °d_perl o PHP se ha convirtió en mod__php. Si el vea esta URL en los ejemplos. Apuntare- para servir archivos estáticos. aunque todo tiene sus límites. Un servidor Web necesita sólo una pequeña configuración na muy bien y es fácilmente escalable. ni el más seguro. PHÍJ Python y Ruby. prefiere aprender de la experiencia. El método OSO es más fácil y más flexible. control de acceso y almacenamiento en bases de datos. y los módulos tienen tanto ventajas # apt-get install apache2 como desventajas. Estos programas ejecutables pueden escri. pero no para generar contenido HTML. además cera y un pie de página común a todo el sitio. seguidos de Java. Apache (http //news . En esta sección. Administrando Apache Administrando Apache 157 navegador lo solicite. La instalación estándar de LAMP (Linux. vos HTML. : : . . más del 60 por 100 de los sitios Web públicos usan que Apache interpreta para mostrar su valor o incluir contenidos de otros archi. por lo que pueden usarse en varias etapas de la transacción URL en un navegador Web. obteniendo así un programa muy gránele (con ligadura estática) o puede birse en cualquier lenguaje que Linux soporte. manera más fácil para hacer archivos HTML dinámicos es usar la tecnología de ni el más fácil de configurar.253.html). La la My P vendrán la un poco después. usaremos el nombre Web. . de casi todas las versiones de Microsoft Windows. incrementan el tamaño y el uso de la memoria del servidor Web. puede tiene LAMP usar http //localhost o http //127 0 0 1 Si lo está probando desde fuera. La inclusión de archivos SSI es una forma fácil para definir una cabe. Apache puede levantarse con todos sus mas Common Gateway Interface (CGÍ).158. . Apache.netcraft com/ archives/ web_server_survey. El coste de arranque incrementaba el tiempo de respuesta del sistema. instalaremos Apache. por lo que se desarrollaron alternativas. Para los ejemplos de este capítulo. Apache no es el servidor Web más rápido. En la sección siguiente. un protocolo que especifica cómo deben intercambiar las peticiones y las respues. mos algunos de esos límites en este capítulo. No obstante. AI igual que otros programas Unix. Usaremos la instalación por defecto para cada uno de ellos para asegurarnos que se ejecutan correcta- LIn método más rápido es FastCGI. El rendimiento de los programas FastCGI y de los módulos Apache es similar. puesto que le permite añadir módulos una vez que Apache ha sido levantado. ¿Funcionó? Para saberlo. Sin embargo. pero puede saltarse estas secciones Muchos sitios también tienen contenido dinámico. Esta aproximación funcio. introduzca su internas del servidor. si Ya tenemos la L. el estándar CGI no define la implementación. FastCGI tiene un inconveniente: al igual que otros programas CGI. por ejemplo. que empieza así: . no llevará asociada la caída del servidor. : . además la separación del proceso asegura que en el Apache y cómo personalizar nuestra instalación. La gente Instalación a menudo confunde el protocolo CGI con este método de implementación anticua- do y por ello piensan que CGI es lento. Evitando así el coste de recarga. totalmente independientes de los servidores Web. mática de contenido. no puede acceder a los Apache entresijos del servidor Web. que equivale a añadir comentarios formateados mediante HTML servidores. ahora exploraremos las A. Sin embargo. SSI tiene límites. eran instalación de Debían para PHP y para otros módulos usa el método DSO. exploraremos los archivos de configuración de aparte y gestiona dos vías de comunicación entre dicho proceso y el servidor Web. Cuando los primeros CGI aparecieron en la Web. Algunos programas CGI han evolucionado en forma de módulos Apache que Necesita ser usuario root para instalar paquetes. Apache se ejecuta en Linux. PHP/Perl/Python) Introduzca la URL del servidor en un navegador Web y podrá ver una página usa módulos Apache para ejecutar las funciones CGI. los módulos (http : / /serverl centralsof t org). Cada petición provocaba que el servidor Web iniciara un nuevo proceso CGI. Existen métodos más rápidos que siguen el mismo protocolo CGI. aunque una gran mayoría de sitios dinámicos usan progra. Tienen acceso a todas las estructuras de datos y funciones Esto debería instalar Apache e iniciarlo. aunque las opciones más populares trabajar con módulos que se cargan en memoria a medida que se necesitan (obje- son los lenguajes de script como Perl. y un fallo en sustituirla por la URL de su propio servidor. MySQL. La tas el diente y el servidor. CGI es tos dinámicos compartidos o DSO). algo que es necesario en aplicaciones complejas. debe módulo puede provocar la caída del servidor Web. navegador en misma máquina en que está alojado el servidor está ejecutando el la Web y problemas con la resolución DNS de su servidor de nombres. módulos. Mac OS X y otros sistemas basados en UNIX. Según Netcraft.

y la gran librería de módulos PHP ofrece mu. Ahora consiga el módulo PHP para Apache. Para obtener la plataforma LAME obtenga el servidor de base de su sitio y cree un archivo simple de texto: datos MySQL y el módulo PHP para MySQL: # cd /var/www # apt-get install mysql-server # echo probando > test. Sucede que la cuenta de administrador de MySQL también se llama chas funciones útiles. es decir. por lo que 2 rows in set (0. Sin embargo. . de bases de datos MySQL. MySQL # apt-get install php4 almacena los nombres de cuenta y las contraseñas en la propia base de datos. es que la instalación del servidor Web de Apache se Entre tanto. .00 seo) puede borrarlo después de probarlo. : . Type ' he Ip . Ahora tiene que sección de CGO. por ahora. Commands end with or \g. PHP 5. Comience obteniendo el programa PHP las librerías: root. Cree este script PHP de prueba y guárdelo en /var/www/inf o php: . las cuentas y root de MySQL y de Linux no tienen nada que ver la una con la otra. Vaya al directorio que Apache considera el directorio raíz de esta sección. Type '\c' to olear the buffer. sin tener que usar PHP o Apache. <?php phpinf o { ) mysql > show databases. que todavía es más popular que su sucesor. + j ¡ + inf o php) en su navegador. . Administrando Apache Administrando Apache Si puede ver esto. intentará usar el nombre de su cuenta Linux. . échele un vistazo al final de este capítulo. Su . Debería ver una página con tablas de información . http //serverl centralsof t org/ : . y tiene el control completo de la base de datos. nos conformaremos con crear nuestro Si no necesita una base de una plataforma LAP y podrá saltarse datos. root. cutan programas externos y Scripts. usaremos PHP MySQL con opción -u.24_Debian-10sarge2-log .) El navegador debería mostrar que Apache ha redirigido la página que intro- dujo por otra: http / /serverl centralsof t org/apache2-default. hemos accedido como root. Esto es todo lo que necesita para crear Scripts PHP que accedan a un servidor test html) en su navegador. En este capítulo. Este comando instalará mod php y le indicará a Apache que le permite ejecutar archivos con sufijo . ofreceremos más detalles acerca de cómo los servidores Web eje- añadir contenido a este directorio y reemplazar esta página. Esta información ofrece mucha información acer. # apt-get install mysql-client PHP Nota: mysql pero no especifica un nombre de cuenta de Si ejecuta el cliente PHP es el módulo CGI de Apache más popular. . ?> j + + Database Luego introduzca la URL del script (http // serverl centralsof t org/ : . | mysql sobre la configuración de PHP. Si no es capaz de ver nada. Usar PHP es una buena nuestros ejemplos. .php: LIsc este comando para ver si el servidor de la base de datos se está ejecutando: # apt-get install libapache2 -mod-php4 # mysql -u root Welcome to the MySQL monitor. (En la ha instalado de manera satisfactoria en su sistema.html # apt-get install php4-mysql Luego introduzca la URL (por ejemplo. | test + + ca de su equipo y que no tiene que compartir con el resto del mundo. por lo que el nombre sería forma de crear páginas dinámicas. En la 4. pero también instalaremos el cliente estándar de línea servidor Apache se está ejecutando sin restricciones de acceso. mod_php. acaba de escribir su primer script CGI. mysql > quit. tendrá primer archivo Web. Your MySQL connection id is 5 to server versión: 4 0. si usted es novato. Podrá ver la palabra probando en la pantalla. ' or '\h' for help. sirviendo de comandos para MySQL (mysql) para que nos ayude a probar la base de datos cualquier archivo y directorio que exista en /var/www. Explicaremos esto un poco después cuando indaguemos en los archivos de configuración de Apache pero.

Si una directiva se refiere a un módulo que no ha configurado.0. ahora puede pasar a configu.0/255. any port # Shows Apache docs (only to local users) cVirtualHost *> # if you installed apache2-docs # If Apache has problems. </VirtualHost> . mientras que las otras sólo las usan módulos # Maps / to /apache2-def ault the initial welcome . : rar Apache.deny nen directivas Apache (comandos u opciones) y sus valores.htaccess files in subdirectories opciones tienen efecto sobre un directorio en un momento dado.": che fallará al iniciarse y se escribirá un mensaje que indique las líneas incorrec. # page that says "If you can see this. como se puede observar aquí: # Possible valúes inelude: debug.htaccess files: ti Cada archivo de configuración de Apache está divido en secciones que contie. Cuando Apache se esté ejecutando correctamente. Algunas directivas allow from all son parte del núcleo de Apache. Las secciones comienzan y terminan con etiquetas al estilo HTML.. Lo siguiente es el contenido por defecto del archivo de configuración # Error log for a single site: ErrorLog /var/log/apache2/error log . error. deny Allow from all el servidor Web.0 ::1/128 # tets Apache follow symbolic links </Directory> Options FollowSymLinks . Están desactivados por defecto. no los use. # warn. info. or have reason to be: NameVirtualHost * ServerSignature On # Por any virtual host at any address. itDocumentRoot itself <Directory /var/www/ Options Indexes FollowSymLinks MultiViews Forbids . podrá ver las directivas que # Permits CGI Scripts: se están usando si introduce este comando: ScriptAlias /egi-bin/ /usr/lib/cgi-bin/ <Directory " /usr/lib/ egi -bin" # /usr/sbin/apache2 -L AllowOverride None Options ExecCGI -MultiViews +SymLinksIf OwnerMatch Al final de este capítulo encontrará la ayuda para diagnosticar problemas en Order allow. alert.0. ServerAdmin webmaster@localhost # you can comment these lines or delete them: Alias /doc/ "/usr/share/doc/" # Our web site files will be under this directory: <Directory "/usr/share/doc/" DocuraentRoot /var/www/ Options Indexes MultiViews FollowSymLinks AllowOverride None # Overall directives. RedirectMatch */$ /apache2-def ault/ </Directory> tas en el archivo log de errores. Aquí hay una copia del archivo comentado: # Sends Apache and PHP versión information to browsers. crit. allow # or forget to specify something later: Deny from all <Directory /> Allow from 127. lo que hace difícil saber qué f # Disables . whom should it contact? # to suppress showing the documents. in case we move DocuraentRoot Order deny.htaccess.. notice. AllowOverride None Order allow. Answer to any ñame or IP address # # Set to Off if you' re paranoid. específicos. </Directory> Suponiendo que el archivo de prueba funcionó. : : : > : >> . /etc/ apache2/ sites -enabled/ 000-def ault.0. : : T Administrando Apache Administrando Apache configuración de Apache por el sistema de archivos. and emerg <VirtualHost *> LogLevel warn j </VirtualHost> # Access log for a single site: CustomLog /var/log/apache2 /access log combined . Si no necesita f AllowOverride None </l)i rectory> archivos . Apa.0.

Como ejemplo. porque esto restringir el acceso a ciertos visitantes. El archivo de grupo opcional Group www-data contiene los ID de grupo y los ID de usuario en texto plano.html Listen. Algunas partes de su sitio Web estarán abiertas a todos. . Administrando Apache Ad m ¡ nistrando Apache La mayor parte de los cambios que haremos en los archivos de configuración visitante. con algunas excepciones notables que serán ® Leer un archivo. cree un directorio protegido por contraseña y coloque. como la incapacidad de ver Archivos de usuario una página (o la posibilidad de ver algo que no debería verse). pero puede # cd /var/www escuchar en otros puertos. ejemplo. ción /etc/ apache2/apache2 conf contiene muchas opciones de la parte ser- . « Usar tecnología de servidor. muchas personas usan el 81 porque es fácil de recordar porque no se usa # cd secret y para otra cosa. Si va a usar encriptación SSL para algunas páginas. está especificado en /etc/apache2/sites~ Adding password for user jacte enabled/OOO-def ault: Su contraseña no se mostrará cuando la introduzca. además del 80. use una o más directivas Listen: # echo "puedes verme” > file. para crear el archivo. después de que el programa lo modifique). Estas importantes opciones indican a Apache que se ejecute para un ID de le En Apache. El archivo /etc/apache2/apache2 conf . . las que veamos aquí. vidora que no necesitan cambiarse. 81 Puesto que no lo ha protegido todavía. Ei archivo de configura. Es muy común usar otro puerto para # mkdlr secret pruebas. usuario y este grupo. . En la Re-type new password: blackpearl configuración por defecto de Debían.htpasswd. que es el directorio que tienen los archivos de New password: blackpearl contenido y los Scripts. como por de Apache en esta sección se harán sobre este archivo. pero quizás quiera Nota: No use d parámetro -c cuando añada más usuarios. el archivo debería ser visible desde el navegador (http //serverl centralsof t org/secret/f ile html): : . Los permisos de archivo y de directorio incorrectos son una de las causas más comunes de errores en Apache. Es útil para sitios grandes debido a que permite especificar permisos para un grupo entero. Está especificado por la directiva DocumentRoot. El archivo de usuario con- User www-data tiene los ID de usuario y las contraseñas cifradas. ® Ejecutarun programa CGL • Generar un índice para un directorio que carezca de él. un pe- Directiva Listen queño archivo de texto dentro: Apache normalmente responde a las peticiones en Puerto TCP 80. ción es un archivo de usuario en texto plano (a menudo llamado archivo por defecto contiene: . La autorización determina lo que el visitante puede hacer. La autentificación determina quién es un provocará que d archivo se sobrescriba. necesitará incluir esta directiva para usa el puerto seguro estándar: puedes verme Listen 443 Ahora haga un archivo de usuarios: Directiva DocumentRoot # cd / tmp # htpasswd -c /tmp/users jack Cada sitio Web tiene su raíz. el lugar habitual para almacenar la información de autentifica- usuario y un ID de grupo particular. para especificar uno o más puertos. en lu- Cualquier archivo y directorio servido por Apache necesita ser leído por este gar de especificarlos para cada uno de los usuarios individuales. Necesitará incluir el DocumentRoot /var/www/ parámetro -c la primera vez que ejecute el programa htpasswd en el archivo.

intente acceder al archivo (http://www. Cree un archivo /tmp/groups que contenga un nombre de grupo. separados por dos puntos {:).org Username # htpasswd /tmp/users jack Password New password: kraken Re-type new password: kraken Introduzca el nombre y la contraseña (verá los asteriscos cuando introduzca Updating password for user jack la contraseña) y haga clic en O'K. Debería ver: Elarchivo de usuario consiste en una serie de líneas que contienen un nombre puedes verme de usuario y una contraseña encriptada.allow pirates: elizabeth require valid--user </Location> Luego añada una directive AuthGroupFile a OOO-default: AuthName es obligatorio y debe ir seguido por una cadena de texto.centralsoft. dos puntos y uno o Ahora edite el archivo de configuración del sitio Apache /etc/apache2/ más nombres de usuario separados por espacios: sites-enablecl/OOO -def ault y añada (antes del final de la línea </ VirtualHost>): piratee: jack will elizabeth <Location /secret> grupo y cada usuario individualmente: También se puede poner el AuthName "test" AuthType Basic pirates: jack AuthUserFile /tmp/users pirates: will Order deny.com/secret/ file html) desde alguna de las cuentas listadas en el archivo de usuario. o a archivos y Apache debe volver a leer su archivo de configuración para que los cambios Un ejemplo de contenedor se discutió en secciones ante- directorios del servidor. AuthUserFile especifica la ubicación de dicho AuthUserFile /tmp/users archivo. debería poner algo parecido a esto: require jack will Elizabeth Apache aplica restricciones de autorización a los contenedores. Nosotros cLocation /secret> hemos usado "test". La directiva Order indica que Apache debería denegar el acceso por de. Rutas absolutas: Directorio Ahora. Podrá . Order deny al low . Esta directiva especifica un directorio del servidor. la directiva require indica que cualquier usuario del ar. Administrando Apache Administrando Apache Si quiere cambiar la contraseña de jack después.example. AuthType Basic vo de usuario de tipo htpasswd. puede usar "" si quiere. Para permitir que sólo el usuario jack pueda ver el archivo que hemos creado. introduzca: Enter username and password for "test" at serverl. # /etc/ínit d/apache2 reload . Y si quiere permitir más de un usuario. pero por alguna razón no puede AuthName "test" omitir la directiva. como se muestra aquí: jack :OSRBcYQOd/qsI Otra forma de manejar muchos usuarios es usar el archivo de grupo. debería poner: Reinicie Apache como de costumbre para que los cambios surtan efecto: require jack # /etc/init d/apache2 reload . </Locat chivo de usuarios tiene permitido el acceso. Aquí mostramos un ejem- ver un cuadro de diálogo donde pone algo parecido a esto: plo de los contenidos originales del archivo de configuración de Apache: . y permitir el acceso sólo si el usuario está especificado en el archivo de require group pirates usuarios. tengan efecto: riores. AuthGroupFile /tmp/groups fecto. Ahora revisaremos varias directivas de contenedores. Por último. AuthType Basic quiere decir que estamos usando un archi.

salida de programas. el # $ means the end of the f i leñame. # if the referring page (the URL this image was called from) is on this site. para ello comprobamos dónde más peticiones. . MaxRequestsPerChild Máximo de peticiones ser vidas antes 0 (infinito) presiones regulares (patrones) sin marcas de comillas: de que un proceso hijo se reinicie. El directorio puede estar fuera de la raíz. example .2 muestra permite programas CGI situados en /var/www/cgi. Por ejemplo: Límites <Location /cgi> En un servidor ocupado. : . Order Allow. Por ejemplo.means a literal dot character. que permite especificar ex. seguido de la ubicación alias Options Fol lowSymLinks actual del directorio. de la página. Esto puede incrementar la carga media y hacer que </Location> el sistema se vuelva más lento. . primero va el (nombre alternativo).gif estaría accesible desde la URL http:// www. Veremos esto de nuevo cómo puede limitar algunos valores de ejecución de Apache en el archivo de con- figuración del sitio. el ar- AllowOverride None < /Directory> chivo tmp/test/ bu tton. {gif jpg jpeg |png) $" | | todos los contenidos de la página a ' # Set the environment variable local to 1 través de la misma conexión. # Sorae notes on the regular expression: Para evitar pérdidas de memoria. Esta directiva especifica los archivos y los directorios relativos al directorio raíz. Deny # This checks the local variable and # allows access only if the referrer was local. Administrando Apache Administrando Apache <Directory / En la directiva. tt KeepAliveTimeout 15 Segundos que se deben esperar # Set local to 0 if the URL was on another site antes de que otra petición use la # that wants to steal our lovely images SetEnvlfNoCase Referer " A http //serverl centralsof t org/ " local=l misma conexión. Puede que necesite un archivo o un directorio específico basándose en algún Directiva Valor por defecto Uso patrón de texto. para permitir tecnología de servidor en /var/www/ssi. jpeg. incluso aunque no estuviera en /var/ www/test. Tabla 6. # The regular expression will match files with the suffix Incrementa la velocidad de descarga # gif . o contenidos de variables de entorno como parte de un archivo HTML.png. pero no La directiva Alias asigna un nombre a un directorio: otras opciones. se rechazan. puesto que devuelve cFilesMatch ”\. Apache puede crear muchos procesos hijos simultá- Options ExecCGI neos y usar mucha memoria. Directivas de recursos Apache. En este caso. cree un. Se usa la directiva RlesMatcb. descarguen imágenes de su sitio sin autorización. . com/test/button gif . directorio: Alias /test /tmp/test # mkdír /var/www/ssi . | entre diente Web y Apache. Aquí mostramos un ejemplo de cómo evitar que las personas MaxClients 256 Máximo de peticiones simultáneas. La sintaxis para especificar SSI en los archivos de configuración de Apache puede ser confu- sa. en la sección CGI. . # \. La tabla 6. KeepAlive on Reaprovecha las conexiones TCP # (gif jpg] jpeg |png) means any of these four strings. incluso que no responda. jpg. or . . Allow from énv=local </FilesMatch> La SSI puede usarse para incluir archivos de contenido.2. Si llegan se originó la petición.

Tienen la forma: CGI. Ahora ponga en la barra de direcciones del navegador http / . pero los archivos cLocation /ssi> bottom html) no. puede indicarle a Apache que asocie a tipo de archi- vo el sufijo SSI: Otro funcionalidad de SSI mostrar variables de entorno CG1 y otro es la de tipo de variables. shttnl < ! . . . sería: cargado. pero el usuario (normalmente un navegador Web) no puede pa- Options IncludesNoExec sarle ninguna directiva. #printenv. Una forma rápida de imprimir todas estas variables es: AddHandler server-parsed .* > Para que SSI funcione. ejecute /etc/ init d/apache2 .170 Administrando Apache Administrando Apache 171 e indique a Apache que permita esta tecnología: Ahora cree el archivo middle shtml con . o una mezcla de archivos estáticos y Scripts Los comandos SSI parecen comentarios HTML. Si sólo tiene archivos estáticos. CGI Primero vamos a probar la inclusión de archivos. : Options +Includes /serverl centralsof t org/middle shtml y podrá ver: . es más seguro desactivar la ejecución de comandos SSL < ! --#command argument=" valué" -. SSI también puede ejecu- Si la cLocation /ssi> tar comandos. La ejecución de comandos SSÍ se sude usar para hacer </Location> algunas cosas como listado de directorios: fáciles el Si quisiera tener archivos SSI en varios lugares en lugar de tenerlos todos <!--#exec cmd="ls -1 /tmp"--> confinados en este directorio. . Cree dos archivos: CGI es una forma mucho más flexible (y peligrosa) de ejecutar programas en servidores Web. </Location> tra variables de entorno). Apache tiene dos formas de especificar qué programas pueden ejecutarse # echo "bottom stuff” > bottom.html mas.html y ta la extensión. tendremos que teclear lo siguiente: <!--#echo var = " DATE_GMT " . use: . . echo (mues. por lo que abajo para restringir la inclusión de archivos de contenido solamente.html como programas CGI. 01-Aug-2006 02:42:24 GMT # /etc/init d/apache2 force-reload . el módulo de Apache correspondiente tiene que estar Para una variable determinada. pero también puede ejecutar cual- le en el medio quier programa e incluir su salida. exec (incluye la salida de un comando) y config (da formato a las variables de echo). Esto puede no ser muy seguro. puesto que no se carga con la instalación por defecto de Apache o de PHP. cLocation /> Options IncludesNoExec Los posibles valores del comando son indude (incluye archivos).shtml.. use: opción Ineludes está definida corno contenedor.html " --> Fíjese en que el la inclusión (middle shtml) necesi- archivo que está haciendo Para añadir SSÍ a las opciones existentes. que se están incluyendo (top. Tuesday. puesto que los usuarios pueden pasar información a los progra- # cd /var/ww/ssi # echo "top stuff" > top.html 11 Options Ineludes En el medio </Location> < ! --#. force-reload para activarlo. </Location> arriba SSI permite incluir archivos de contenido. este contenido: cLocation /ssi> <!--#include virtual® "top.include virtual® "bottom.- # a2enmod inelude lo que mostraría: Una vez instalado el módulo inelude.

Cualquiera podría ejecutarlos con permisos de usuario y de grupo de Apache.0. a database error: ".php: org/ cgi/: <?PftP $link = mysql_connect "localhost" "root". su script: no se ejecu. ( Options ExecCGI if $result) í ! { </Location> echo "Arggh. nos conectaremos al ser- vidorMySQL. Los autores de sitios Web pueden usar esto para mysql > show databases. ejecutar un script (. ejecutarlos y devolver su salida. centralsof t Guarde este archivo como /var/www/db . El módulo php usa este método para conseguir que Apa- ?> che pase los archivos . Your MySQL cormection id is 2 996 to server versión: 4. .php.phtml . y test). Commands end with or \g .php . Drat. mysql_error { ). .php 10sarge2-log o .phps en lugar de Type 'help.php3 AddType application/x-httpd-php.phps en lugar de .php.phps). .php en su AddType application/x-httpd-php .pho al intérprete de mod php: Introduzca la URL http://serverl. Cuando probamos la instalación PHP anteriormente.org/db. 24__Debian~ La primera línea AddType indica que los archivos que terminen en . "newmysqlpassword" ( ) ScriptAlías /cgi /var/cgi . llamadas mysql <If Module mod_php4 c> . PHP o una shell de Linux en un directorio ¡ | | test CGI. necesitaremos la contraseña del usuario root para MySQL. Database I | tará.php como Scripts PHP: dos. if ( $link) { S echo "Can't connect to database. Si hubiese usado el mismo comando SQL desde el cliente de línea de coman- chivos con el sufijo . habría obtenido los mismos resultados (dos bases de datos. sino que su contenido se mostrará por pantalla. + + Si de manera accidental usa el sufijo . Las directivas PHP deben colocarse en su propio archivo de configuración PHP (/etc/php4/apache2/php ini) o en el archivo de configuración de Apache. 4 + mysql Nunca ponga un intérprete de Perl. De nuevo. ejecutaremos una consulta MySQL e imprimiremos los resultados Las dos siguientes directivas sirven para asociar los programas CGI del direc.1 72 Administrando Apache Administrando Apache 1 73 Location Ahora vamos a intentar hacer algo más interesante.phps $ mysql -u root -p Enter password: </lfModule> Welcome to the MySQL monitor. torio/var/ cgi con la URL que comienza porhttp : / / serverl .' or '\h' for help. como HTML.php navegador y podrá ver: Aquí le mostramos los contenidos del archivo de configuración de Apache Array { [Database] => mysql ) Array { [Database] => test ) para mod__php (/etc/apache2/mods-enabled/php4 conf ).phtml o . que trata los ar. creamos un pequeño 2 rows in set (0. exit ( ) } # print_r prints all of a variable' s contenta El método del sufijo asocia un tipo MIME (nombre estándar para tipos de while ($row = mysql_fetch_assoc ($result) print_r {$row) archivos) con un sufijo. pero con un formato diferente: AddType application/x-httpd-php . La segunda línea AddType le indica a Apache que imprima el contenido de los archivos con sufijo .centralsoft.source .\n". . O exit { ) } <Location /cgi> $result = mysql_query "show databases").php) y permitir que los usuarios vean el código fuente (.phtml se ejecuten como programas CGI.00 sec) programa PHP: <?php phpinf o ( ) . Type '\c' to clear the buffer.

no hay host virtuales indepen. envía la dirección IP de destino y </VirtualHost> (en HTTP 1. /var/www/vhosts/www2.org/index.1. Las directivas ServerName asociadas con el nombre del servidor # echo "test www 2 .org. ubicados en el directorio / NameVirtualHost * etc/apache2/mods~enabled. solo use 960 para obtener el nombre completo y cree un directorio Hosts virtuales basados en nombres para cada host virtual: # cd /var/www/vhosts Con este método. no tendrá que manipularlas. . # echo "test wwwl centralsof t . DocumentRoot “/var/www/vhosts/wwwl example com" .org org. www2 .centralsoft.centralsoft. in. debido a que HTTP 1. www2 centralsof t . puede activar el módulo servidor.org ser hosts virtuales.com "hosts virtuales".centralsoft. podría usar 961 para obtener los directorios /var/www/ .org" > www2. . 2> ServerName "www2" para la segunda parte de la derecha (también centralsoft). supondremos que necesita alojar cada sitio en su # a2enmod vhost_alias propio directorio en /var/www/vhosts. Podríamos . # mkdir www2.centralsoft. </VirtualHost> haber usado 962 para obtener la segunda part e de la izquierda (centralsoft). sustituye ainombre entero del sitio ( server 1 centralsof t org). etc. > wwwl.1. . . y todos los nombres de dominio comparten la misma configuración.centralsoft. Si tiene más de una dirección en su servidor y quiere dedicar ciertas direccio- IP nes a ciertos sitios. DocumentRoot " /var/www/vhosts/www2 example com" . el protocolo Web estándar actual) el nombre de un servidor de esa dirección. Por ahora. la directiva NameVirtualHost define qué direcciones pueden # mkdir wwwl.example. .org.1. Si siempre tiene el mismo nombre base de dominio. Apacheservirá las páginas Web sin importar cuántos nombres tenga el bres de cada uno en los archivos de configuración.html cluyendo localhost. mod_vhost__alías de Apache: En los siguientes ejemplos.0 centralsoft org. 1> S e rve rName " www 1 La directiva VirtualDocumentRoot es muy flexible.org.. te Web contacta con un servidor Web vía http. 6. 962 + para la segunda DocumentRoot " /var/www/vhosts /www2 example com" .centralsoft. con HTTP 1.centralsoft.org/index. parte del nombre (centralsoft org). Estas alternativas son útiles si tiene . 6. Hosís Virtuales </VirtualHost> cVirtualHost *> Aunque un servidor Apache dedicado para un único sitio. Los módulos Apache normales tienen # Accept any site ñame on any port archivos de configuración con una extensión . </VirtualHost> muchos hosts virtuales. El elemento Hosts virtuales basados en IP vhost alias del comando anterior sustituye al archivo /etc/apache2/mods- enabled/vhost alias conf. Apache llama a esta característica ServerAlias backup. y configurar los nombres que se servirán en el archivo designado.0. y hay más de una manera para especificarlos. no tenía forma de especificar qué servidor quería consultar en esa dirección. u otros. y los sitios se llaman wwwl. vhost s/wwwl. Si quiere administrar múltiples equipos sin necesidad de especificar los nom- dientes. . 168. Cuando un dien. ahora. # A virtual host can have múltiple ñames: blemente querrá manejar más de un sitio. Esto era lo más común en los primeros días de la Web. etc. 127.conf. El contenido de ejemplo es: . www. . el alojamiento basado en nombres es más popular. 168.0. proba- podría tener ServerName www2 example com .html . cVirtualHost *> ServerName wwwl example cora . debe usar host virtuales basados en IP (o basados en dirección): UseCanonicalName Off VirtualDocumentRoot /var/www/vhosts /%0 cVirtualHost 192. etc. como centralsoft. En laconfiguración por defecto de Apache.174 Administrando Apache Administrando Apache 1 75 Normalmente. * significa cualquier nombre o dirección de este nombre. org" . El %0 especificado aquí DocumentRoot " /var/www/vhosts/wwwl example com" . 96-2 cVirtualHost 192. a menos que instale un módulo PHP indicado en la petición del navegador con el directorio donde se almacenan los de extensión o quiera modificar dónde se deben buscar las librerías o configurar archivos que se servirán: algunas opciones (como el modo seguro).

continúe haciendo los rv 1 8 0 7 : .centralsoft. hacer. . Por tanto. CustomLog "| /usr/sbin/vlogger -s access. si quiere hacer página) es: esto último. . Puede Todos los % en los archivos de configuración de Apache representan variables. . / etc/apache 2 /apache conf .168. cuánto espacio tenga en disco (los logs pueden común pero incluye el visitante y el agente de usuario (navegador). %h significa nombre de equipo. . . . . .1 - [22/Sep/2006 15 04 05 -0400] "GET / HTTP/1. En lugar de dejando huellas por todos los archivos de configuración de Apa- ir 192. será conveniente dividir los logs # /etc/init d/apache2 reload. : : 200 580 "Mozllla/5 0 (Windows. puede poner en el servidor http / .0. Apache le per- mite conectar el log con algunos programas externos. mente. # The followíng directives define some forma t nicknames for use with # a CustomLog directiva (see below) LogFormat "%h %1 %u %t \"%r\" %>s %b \"%{Referer} i\" \"%{üser-Agent}i\" combined LogFormat "%h %1 %u %t \"%r\" %>s %b" comrnon LogFormat "%{Referer}i -> %U" referer LogFormat "%{üser~agent}i" agent Apache escribe archivos ASCII de log de dos tipos: acceso (peticiones que se hacen al servidor) y error (errores que ocurren durante las peticiones). . # under /var /log /apache 2 4. ) Gecko/20060909 Firef ox/1 5 0 7 . ninguno de los dos formatos incluye el nombre del host: virtual (una Un mensaje de acceso típico (divido en varias líneas para que quepa en la variable %) que necesita para dividir el log por equipos.log /var/log/apache2 " veommon . Añada toda esta información debajo de la línea LogFormat que introdujo 2. Desgraciada- hacerse muy graneles) y qué herramientas de análisis de logs quiera usar. . . . : combinado.0. Crea un nuevo access log y un error log. . html Los logs por defecto son /var/log/apache2/access log y /var/log/ .access log 1 se incrementa a Access log 2 ). dependiendo de lo que quiera saber por ejemplo. . controlar qué se escribe en estos archivos. . # Split log on the fly into virtual host directori.es 3. que es justo lo que quere- 1 . . . ción maestro de Apache. La rotación consiste en: necesitamos escribir tareas cron. 1 y error log a error log 1 . Se estará preguntando si dividir la información de los logs en los archivos de Apache a medida que se va accediendo.org] File does not exist: /var/www/ Índex. (/etc/apache 2 / sites -enabled/ 000-def ault). Si tiene registros DNS que apuntan a wwwl. . apache2 /error log. tendrá que definir un nuevo tipo de log. Windows NT 5. Administrando Apache Administrando Apache Luego reinicie Apache: Por defecto. . .centralsoft. Renombrar access log a access log . Encontrará sus respectivas definiciones en el archivo de configura- wwwl centralsof t org/ índex html y http / /www 2 centralsof t org . Un buen programa es vlogger. Si tiene más de un host. en-US. para ver los contenidos de los archivos índex html de prueba que acaba de . . no obstante. . mos. cambios en el sitio como lo hemos hecho hasta ahora che. para ofrecer análisis diferentes para cada uno. Borra access log 7 y error log 7. Ponga estas líneas encima de sus directivas VirtualHost: Un mensaje de error típico es: [Fri Sep 29 10:13:11 2006] # Define a new virtual host comrnon log format: [error] LogFormat "%v %h %1 %u %t \”%r\" %s %b" veommon [client www. todos sus hosts virtuales comparten los mismos logs de acceso y de error. : . U. Preferimos la prime- ra opción. . El formato combinado es el formato sobre los visitantes de su sitio. y no La configuración por defecto de Apache incluye una tarea diaria que hace rotar los logs de acceso y de errores. . .1" . debido a que coloca las líneas en el log adecuado inmediatamente. o dividir el archivo de acceso una vez al día con una utilidad para dividir los archivos log de Apache. Incrementarel número de la extensión de logs rotados anteriormente (por previamente: ejemplo.org Apache tiene dos formatos estándar para archivos logs de acceso: común y y www2 centralsof t org desde su servidor.

# /etc/init. Este certificado es Al día siguiente (después de que se ejecute la tarea croo de Webalizer /etc/ un archivo encriptado que prueba que el usuario es quien dice ser. por la misma razón. ejecute /etc/init d/apache2 force-reload . 1 root root 984 Aug 3 23:19 08032006-access. De manera alternativa. Piense que el acceso Web (como el correo electrónico estándar) vlogger creará un archivo en el directorio /var/log/apache2 para cada host es una postal en lugar de una carta. añada esta línea: Hay muchos analizadores de logs libres y comerciales: Nosotros pensamos Listen 443 que Webalizer es una buena opción porque es fácil de instalar y genera una sali- da muy útil: Luego active el módulo SSL de Apache e indique a Apache que debe usarlo: Introduzca: # a2enmod ssl # apt-get install webalizer El módulo ssl está instalado. El estándar Secure SocketsLayer fue desarrollado para encriptar el tráfico Web. . : . electrónico en la Web. a menos que quiera cambiar las opciones que proporcionó Pirefox 2. instálelo: aplicación. .org What is the filename of the rotated Webserver log? /var/log/ apache2 /access log Ahora intente acceder a su página de inicio con https / / URL (por ejemplo. navegador en quién debe confiar? Los navegadores Web disponen de listas de su servidor Web. Cuando solicita una página desde un servidor Web con el prefijo http://. que con ligeras modificaciones se conoce como la capa Transport. Encriptar los datos sensibles como los números # apt-get install vlogger de tarjeta de crédito y las contraseñas es esencial. virtualque ha definido. ¿Cómo sabe el cron da i ly/ webalizer) podrá ver páginas con tablas que describen el acceso a . Administrando Apache Ad m i nistrando Apache Ya que vlogger no forma parte del paquete estándar de Debían. Los casi siempre usan CA comerciales. porque el navegador sude aceptar los certifi- ataques en Internet se están incrementando.. Edite /etc/apache2/ports conf y . to- Luego reinicie Apache: dos los datos que circulan desde el servidor hasta el navegador están sin cifrar.log Este cifrado se obtiene cuando accede a un sitio con el prefijo https://. Which directory should webalizer put the output in? para activarlo. y ha sido un factor decisivo en la explosión de sitios comerciales y del comercio # cd /var/log/apache2/wwwl example com . sobre todo los ataques a nivel de cados que expenden. su servidor necesita un certificado. es uíia Herramientas » Opciones — de Internet — Contenido — » > Certificados — Certificado de confianza raíz Encrlptación SSL/ILS Los CA son empresas que venden a las organizaciones un certificado y se en- cargan clel trabajo legal para verificar su identidad.centralsoft. usted puede ser su propio CA y crear . . https //serverl centralsof t org). : . # /etc/init. Imagine lrwxrwxrwx 1 root root 19 Aug 3 23:19 access. La cadena de comandos para ver estas listas es: webalizer .0 durante la instalación. por lo que Internet Explorer 6. Se creará un log de acceso diario con marcas de tiempo.log -> 08032006-access. Vamos a configurar SSL para Apache. -rw-r--r. Apache tiene la capacidad de encriptar el tráfico Web con # ls -1 total 4 SSL. y con un enlace simbólico al archivo access log más reciente: . conf).log que el tráfico Web cifrado es como un sobre sellado. d/apache2 restart Cualquiera con acceso a las redes que intervienen en la comunicación puede cap- turar los contenidos. Herramientas — Avanzadas — Cifrado — * > Ver certificados — Autoridades > Nota: Los spammers tienen formas de manipular los logs Web. Para que SSL funcione.0 buena práctica restringir el acceso a las páginas de salida de Webalizer. Acceda a él a través del URLhttp //serverl centralsof t org/webalizer. Layer Security. No necesita editar el archivo de configuración (/etc/ autoridades de certificación (CA). /var/www/webalizer Enter the title of the reports webalizer will generate. Los sitios Web comerciales WillieSutton dijo que robaba bancos porque era "donde estaba el dinero". : . d/apache2 force-reload Usage Statistics for serverl. .

Total transferred: 1425000 bytes HTML trans f erred 1090000 bytes Requests per second: 357.apache. scripts CGI. ciente al paquete apache2-utüs. queremos asegurarnos que puede Time taken for tests: 2. es muy fácil que estas partes produzcan bloqueo del el Failed requests: 0 sistema. Completad 200 requests sos de root y hace que los Completed 300 requests programas CGI se ejecuten con el ID de usuario y de Completed 400 requests grupo de un usuario específico. pero el navegador Web preguntará al usuario si desea o no aceptar el le to. usando varias combinacio- Benchmarking serverl.org/ de costumbre. con concurrencia 5 (5 peticiones simultáneas): Apache puede servir múltiples sitios al mismo tiempo.centralsoft.997 [ms] (mean) La instalación por defecto de Debían es el modelo tenedor. etc. pertene- .html cuta con los permisos de un determinado usuario y grupo (por defecto www. . Como „ http://viww. Zeus Technology Ltd. PHP y otras herramientas. Cree un archivo llamado /var/www/bench. Puede impresionar pequeño y durante las pruebas de proyectos grandes. SuExecUserGroup www-user 2 www-group 2 Server Software: Apache/2 . usuarios.com.org (be patient) nes de Apache. un programa que se ejecuta con permi. Este suele ser el modelo que mejor Trans fer rate: 496. zeustech.net/ nosotros queremos asegurarnos que sólo los miembros de un sitio determinado Copyright (c) 1998-2002 The Apache Software Foundation.0. Time per request: 13. llamadas modelos. This is ApacheBench. pueden ejecutar los programas de ese sitio y acceder a los datos de ese sitio. Completed 100 requests Un método popular es usar suEXEC. Connection Times (ms) . La Web tiene mu- Complete requests: 1000 chas partes dinámicas. Por ejemplo. Pero http: //www.com y : pegándolo en bench html.799386 seconds soportar la carga de trabajo que suponen nuestros sitios Web. Debido a que Apache se eje. Para evaluar rendimiento de nuestro sistema.org/bench.54 </VirtualHost> Server Hostname: serverl centralsoft.0 Copyright (c) 1996 Adam Twiss. Hagamos suEXEC 1000 peticiones distintas para el mismo archivo.41-dev <$Revision$> apache-2. Los certificados propios son comunes en proyectos de código abierto mente del tamaño que cabe esperar para una página de su sitio.0.example. con la cuenta de usuario www-user 2 y el grupo www.org Server Port 80 Document Path: /bench html . pero hay sitios que tienen páginas distintas. cambiaremos los permisos del host virtual especificando: Completed 800 requests Completed 900 requests cVirtualHost www2 example com> Finished 1000 requests . # ab -n 1000 -c 5 http://serverl. no el usuario y el grupo del usuario que ejecuta Completed 500 requests el servidor Apache. al usar nuestro segundo host virtual Completed 600 requests www2. Debería ser aproximada- certificado. vamos a usar herra- el Write errors: 0 mientas especializadas que simulan cientos de usuarios activos (que por otra par. y debería instalarse junto con Apache. Administrando Apache Admi nistrando Apache un certificado como con certificados comer- propio.89 [Kbytes/sec] received funciona bajo Linux. en el cual varios Time per request: 2.html.centralsoft. a sus amigos generando texto en Latín desde el sitio http / /www lipsum. Document Length: 1090 bytes Nuestro principal objetivo es instalar y configurar nuestro servidor Web de Concurrency Level: 5 manera correcta y segura.799 [ms] (mean. Non-2xx responses: 1000 te es mucho más barato que pagar a cientos de usuarios para hacer las pruebas). Completed 700 requests group2. Versión 2. across all concurrent requests) procesos Apache atienden las peticiones. El programa que evalúa el rendimiento es ab. data). Además de esto.22 [#/sec] (mean) Nota: Apache puede ejecutarse con diferentes versiones. Esto funciona tanto con SSL Como mínimo se necesita un archivo HTML estático para evaluar el rendimien- ciales. el usuario puede escribir y leer el contenido de todos estos sitios. hay más de una forma de hacer esto.

Vamos a visitar por localhost ejemplo http //www drupa! org: : . apt-get: Es lo Drupal nosotros hemos tenido problemas con los paquetes Debían de Drupal. MySQL mercial. así es que inténtelo en primer lugar. Drupal es un software que permite a un individuo o a una comunidad de usuario Database server admínístrator user ñame on host localhost publicar. root Entre estas funcionalidades se incluyen foros. por lo que escogeremos algún producto de código abierto.2 11 22 El primero es el que nosotros queremos. newmysqlpassword Las siguientes dos secciones describen los dos métodos de instalación de Drupal: Drupal database ñame * más fácil. 95% 14 98% 15 consígalos e instálelos. grupos de noticias y otras formas de colaboración basadas en Web."UnConeD" theme for Drupal Total 6 11 2. por lo que vamos a instalarlo de la Percentage of the requests served within a certain time {ms 50% II siguiente manera: 66 % 12 75% -13 # apt-get install drupal 80% 13 90% 14 El proceso de instalación indica que necesita varios paquetes que no tiene. 11 18 drupal -theme-unconed . Sin embargo. la gente quiere ver las peticiones por segundo o su inverso. gestionar y organizar una variedad de contenidos en un sitio Web. gestión de documentos. Automatically create Drupal datábase? Yes Instalando y administrando Drupa! Run database update script? Yes Ahora ya tenemos Apache. Desgraciadamente. Remove former database backups when the package is removed? Yes Web server (s) that should be configured automatically apache más fácil de instalar Drupal es con apt-get.fully-f eatured content management/díscussion engine Processing 6 11 2. pero puede ver qué está ocurrien. Puede ir al sitio Web de La forma [ ] apache. inténtelo de esta forma si el método apt-get falla.1 0 3 drupal . no vamos a pagar por un producto co. gale. Use el fabulador para moverse entre las op- 100 % 22 (longest request) ciones. con la respuesta recomendada: tiempo por petición. instalemos un pa. Estos números le indicarán qué debe mejorar en relación con el hardware del servidor y con la configuración de Apache. PHP y MySQL ejecutándose.ssl [ } Drupal y buscar un paquete listo para descargar o puede ver mediante apt-cache apache -perl [ ] si está en el repositorio de Debían: [*] apache2 . Database engine to be used with Drupal quete para usarlos. No do. el eso sí. Password for database server admínístrator root on localhost rías. Solamente incluiremos la última línea de cada pantalla aquí.2 1 22 drupal -theme-marvinclassic . que represente Database server for Drupal' s database un ejemplo típico de software real y que sea bastante útil. Luego se le preguntará por la configuración de Drupa! a 99% 16 través de una secuencia de menús."Marvin Classic" theme for Drupal Waiting 5 10 2 . Normalmente. Administrando Apache Administrando Apache min mean [+ /-sd] median max # apt-cache search drupal Connect 0 0 0. Remove Drupal database when the package is renoved? 0 Desde las fuentes: Supone más trabajo. la barra espadadora para seleccionar una opción o ¡ntro para ir a la siguiente página.

create the first account. To begin.mysql. ele administración por lo que le permitirá configurar el sitio Web. Será redirigido a una Query OK.7.mysql Enter password: Sí aparece un mensaje parecido a este: # An override for "/var/lib/drupal/f iles” already exista. Será redirigido a la primera página. . UPDATE. DROP. 24_ Debían. Si todo ha ido bien.* to Para empezar. -> IHDEX. vaya a http //serverl centralsof t org/ drupal. En esta segunda página. Administrando Apache Administrando Apache La instalación copiará los archivos de programa. y una contraseña (por favor. donde verá las siguientes opciones: mysql> GRANT SELHCT INSERT.Org/pub/drupal/files/projects/drupal-4.0. Esta cuenta tiene plenos derechos -> n drupal"@"localhost'' identified by "drupalpw". .txt y en INSTALL. tar gz La primera página (en la versión que hemos probado) dice: . Query OK. deny Luego. Commands end with or \g. un usuario administrador administration rights (también drupal. creará una base de datos Query OK. 0 rows affected (0.txt. cargue la definición de la base de datos de Drupal en MySQL: allow from all </Dírectory> # mysql -u root -p drupal < database/ database 4 . mysql > FLUSH PRIVILEGES. nueva cuenta.gz # tar xvzf drupal -4. por: $db_url = 'mysql //drupal : drupalpwOlocalhost /drupal : ' Instalárselo Drupa! desde las fuentes Descargue la última distribución y vaya al directorio raíz de su servidor Web: En su navegador Web.00 sec) página para establecer una contraseña permanente. ALTER. Options +FollowSymLinks Bye AllowOverride All order allow.tar.' or '\h' for help. sáltese la siguiente sección. puede ir a la página de inicio. Después de esto. la línea: specified so lets ignore it. $db url = 'mysql //username :password@localhost/databasename' : puede quebrarse la cabeza buscando una solución. si le ha llegado la contraseña gene- Compruebe su correo electrónico para ver mysql > creafce database drupal. no use drupal también): Haga clic en el enlace Crear la primera cuenta. CREATE. This account will have full remos labase de datos Drupal (la llamaremos drupal).3. CREATE TEMPORARY TABLES.3. cree la primera cuenta. Crea. -> on drupal. . teclee el nombre deseado para su cuenta (o su nombre completo) en el campo de # mysql -u root -p texto Enter password: botón Crear una Username y su correo en el ‘campo E-Mail. : . Type ’\c' to clear the buffer. o instalarlo desde las fuen- tes. Luego presione el Welcome to the MySQL monitor. . rada y autentifíquese en Drupa! en el área "User login". 0 rows affected (0. 7. d/ drupa 1 conf ): . DELETE.7. # mv drupal -4. 3 /var/www/drupal # cd /var/www/drupal Welcome to your new Drupal webs i te! Please follow these steps to set up and start using your website: Create your administrafcor account Seguiremos los pasos indicados en INSTALL. 1 row affected (0. # wget http://ffcp. but -forcé Después edite el archivo def ault/conf ig php y cambie . LOCK TABLEE 1 . Cree su cuenta de administrador. donde en la parte de arriba Your MySQL connection id is 37 to server versión: 4.osuosl.00 sec) Alias /drupal /usr/share/drupal <Directory /usr/share/drupal/ mysql > quit. . puesto que no tenemos mucha imaginación) and will allow you to configure your website.10sarge2-log podrá leer: Type 'help.01 sec) MySQL y creará un archivo de configuración Apache (/etc/apache2/conf . 0 .

Hay HEAD / HTTP/ 1. Ahora ya Si no tiene nmap. Luego vea si el servidor puede alcanzarse desde Internet.0. gina de error en la ventana del navegador.centralsoft. .0. como lo ANSWER SECTION: siguiente: .org/nmap/ ( at 2006-07-25 ) Finalmente. HTTP más simple posible: # telnet sarverl. donde puede personalizar y configurar todos los aspectos de su sitio Web.org/test.centralsoft. Este mensaje des. Pruebe con Para cambiar la apariencia de su sitio Web.0. Configure su sitio Web. o a los libros en línea 80 /tcp open http de Drupal.1 66 Una vez en el sistema.org (192. Personalice el diseño de su sitio Web.org y también.54 (Fedora) Last-Modified: Tue. Si le gusta diagnosticar problemas. Nmap fínished: 1 IP address (1 host up) scanned in 0.0. Comience a publicar contenido.centralsoft. También puede enviar una pregunta al foro o usar un amplio rango de opciones de soporte.centralsoft. # nmap -PO -p 80 serverl. Active la funcionalidad adicional.org. puede crear contenido para su sitio Web.186 seconds Puesto que ya ha creado la primera cuenta (la de administrador).org (192. ports conf . serverl. que puede ver algo muy parecido a esto en el puerto 80. 23:50 CDT Interesting ports on serverl. Connection closed by foreign host. bres público: Listen 80 # dig serverl.34. obtiene una pá. Cuando usa un navegador Web externo http://serverl. en muchos lugares y de muchas formas. visite la sección de administración.34.org 5. 106489 IN A 192.centralsoft. línea está en /etc/apache2 de que serverl centralsof t org tiene entradas DNS en un servidor de nom- . Echemos un vistazo a algunos problemas HTTP/1. Si su cortafuegos 3. aunque los Date: Wed.0.html. Puede encontrar módulos adicionales en la sección de descarga PING serverl.centralsoft. .org específicas.81 http://www. Un mensaje de error del navegador como "Servidor no encontrado" implica un problema DNS. visite la sección de temas. por lo que estaría ocupado durante muchos años. nmap desde una máquina externa: Deberá elegir uno de los temas incluidos o descargar temas adicionales de la sección de descarga de temas de Drupal.centralsoft. (Los mensajes de error del navegador que usa Firefox.0.166): aparecerá una vez que haya publicado por primera vez.A Escape character is ]'. asegúrese de que esta. visite la lista de módulos y actívelos en función de sus necesidades # ping serverl.166): icmp_seq=l ttl=49 de módulos de Drupal.centralsoft.centralsoft.org 80 Trying 192.166) 56(84) bytes of data.html y Connection: cióse Content-Type text/html.34. Primero.1 200 OK Web clásicos.) Server: Apache/2.org (192. su archivo es test. use telnet para conectarse al puerto 80 y haga la petición puede probar todas las funcionalidades.centralsoft. charset=UTF-8 : su servidor es serverl.34. Starting nmap 3. 15 Nov 2005 13:24:10 GMT ETag " 63f f d. . . probablemente le gustará la Web.insecure. Administrando Apache Ad m inistrando Apache 2. time=81.34.centralsoft. permite pings.0 muchas cosas que fallan. 64 bytes from serverl. sondee si el servidor responde a la los pings desde fuera: Luego. Compruebe que el puerto 80 está abierto y no está bloqueado. vaya a la sección de ayuda. Connected to serverl.6 is 4.166. 26 Jul 2006 04:52:13 GMT de Internet Explorer son similares.lb6 .80bf d280 : Accept-Ranges bytes : Content-Length: 438 Supongamos que el directorio raíz es /var/www.org.org. asegúrese Si no funciona. PORT STATE SERVICE Para más información.

. probablemente Si el log : quede poco espado en disco. definitivamente hoy no es su día. Si ve líneas como estas en el log de error {/var/log/apache2 /error log): . 2991 415244 Jull6 ? 00:00:00 Forbidden /usr/sbin/apache2 -k start -DSSL You don't have permission to access /permissions html on this server. SSI -rw-r 1 root adm 1492 Jul 23 06:25 error. pero el usuario Apache no puede leerlo. .log Para comprobar las directivas de host virtual. compruebe que Apache se está ejecutando: Not Found # ps -efl j grep apache2 The requested URL /wrong. -rw-r 1 root adm 306 Jul 23 06:25 error log 2 gz . Confirme que el directorio /var/log/apache2 y /var/log/apache2/error logf ile . Si no tiene permisos para ver este archivo. existen: LIse # ls -1 /var/log/apache 2 # apache2ctl -S total 84 -rw-r 1 root adm 31923 Ju. todavía tiene campo : Si el apache2 20199 www-data 3u IPv6 300791 TCP * www (LIS TEN) : 1 para seguir investigando. Si el log de errores está vacío. Si puede ver: 5 S root 7692 1 0 76 0 .html -rw 1 root root 0 Jul 26 00:01 permissions. mire el # ls ~1 permissions.html log de errores: Los problemas de permisos pueden solucionarse cambiando el propietario del # tail -f /var/log/apache2/error. Ejecute el comprobar esto antes de investigar cosas más esotéricas como los cortafuegos. Si no es así. # /etc/init. 10678 www-data 3u IPv6 300791 TCP * WWW : (LISTEN) / dev/hdal 193406200 4S5292 183126360 1% / apache2 10679 www-data 3u IPv6 300791 TCP * www : (LISTEN) tmpfs 453368 0 453368 0% /dev/shm apache 2 10680 www-data 3u IPv6 300791 TCP * WWW : (LISTEN) apache2 20188 root 3u I Pv6 300791 TCP * www : (LISTEN) Si ha usado una directiva User o Group diferente en la configuración de Apa- apache 2 20190 www-data 3u I Pv6 300791 TCP * www (LISTEN) : che.log. . Administrando Apache Administrando Apache # Isof -i j 8 # df COMMAND PID USER FD TYPE DEVICE SIZE NODE ÑAME Filesystem IK-blocks Used Available Use% Mounted on apache?. -rw-r 1 root adm 32974 Jul 22 20:50 access.log archivo ai proceso que ejecuta Apache. -rw-r 1 root adm 1969 Jul 25 23:09 error. [error] an unknown filter was not added INCLÜDES de errores muestra otra información más antigua.html was not found on this server.log . Apache se está ejecutando. Si la salida contiene líneas como esta: la URL probablemente no existe. compruebe que el usuario y el grupo existen: apache2 20191 www-data 3u IPv6 300791 TCP * WWW : (LISTEN) apache2 20192 www-data 3u IPv6 300791 TCP * www : (LISTEN) # id www-data apache2 20194 www-data 3u I Pv6 300791 TCP * WWW (LISTEN) uid=33 (www-data) gid=33 (www-data) groups=3 3 (www-data) : apache2 20197 www-data 3u IPv6 300791 TCP * www : (LISTEN) apache2 20198 www-data 3u IPv6 300791 TCP * WWW (LISTEN) navegador devolvió un mensaje de error de Apache. Sí lo que se muestra es: Si no ve apache2 en esta salida.d/apache2 start # cd /var/ww Luego ejecute el comando ps de nuevo.l 25 23:09 access. Teclee: # a2enmod inelude . . Si Apache sigue sin aparecer. Es sorprendente el número de veces que olvidamos comando: es que no activó rnod_include. reinícielo: el archivo está ahí. -rw-r 1 root adm 379 Jul 23 06:25 access log 2 gz no funciona .log. quizá tenga los permisos equivocados.

: . Le mostraremos cómo combinar tres ordenadores en un clúster de carga balanceada para el servidor Apache. use chmod. (http //www. pruebe las siguientes soluciones: e ¿Se ha activado el CGI usando alguno de los métodos ya descritos ante- riormente? 8 ¿Está el programa CGI es un directorio CGI como /var/cgi-bin o tiene un sufijo como . Amazon. para predicción meteorológica o renderizado de gráficos).. añádala y reinicie Apache. las personas descubrieron que podían conectar múlti- ples máquinas baratas para realizar tareas de computación que en condiciones Listen 443 normales requerirían un mainframe o un supercomputador.70 http://www. finalmente. puesto que ofre- ( ) 22:38 CDT Interesting ports on . Administrando Apache Un programa CGI Si no consigue que un programa CGI se ejecute. paralelismo o computación distribuida.. en estos campos.org/nmap/ at 2006-08-01 rar la velocidad o la fiabilidad que ofrece un único ordenador.php? ° ¿Se puede leer el archivo? Si no.. En la Wikipedia (http //en wikipedia org/ : . En este capítulo describiremos algunos clusters basados en Linux Virtual Server (http / / www linuxvirtual . pero no siempre. Es más ba- rato y más fácil. sigue sin funcionar. ampliar su negocio horizontalmente (añadiendo más servidores) que verticalmente (comprando máquinas más caras).org ordenador. Hay muchas soluciones Linux para clusters.server org) el : .): cen una relación efectívidad/coste mucho mejor que un único ordenador con las PORT STATE SERVICE mismas prestaciones. /var/log/messages? Compruebe que tiene activado el módulo SSL de Apache (a2enmod ssl) e indi- que a Apache que escuche en el puerto 443 en /etc/apache 2 /ports conf . 0 ¿tXué dice el log de errores de Apache? ® ¿Qué dice el log de error del sistema. Los clusters a menudo. beowulf org). que es libre. Si : . 443/tcp open https Los clusters son una buena solución cuando lo que busca es mejorar la veloci- Nmap run completed -. (. están conectados mediantes redes de área local de alta velocidad. wiki/Computer_cluster) están recogidas algunas de las características prin- Puede comprobarlo con nmap: cipales de un clúster: un clúster es un grupo débilmente acopiado de ordenado- res que trabajan juntos y que en muchos aspectos puede verse como un único # nmap -P0 -p 443 serverl. Yahoo! y Google basan sus negocios en miles de servidores configurados como clusters. Hace más de 10 años. .254 seconds dad. . puede que el puerto 443 esté bloqueado por un cortafuegos. También describiremos sus capacidades y. las alternativas que existen. . tanto libres como comerciales.centralsoft. fiabilidad y escalabilidad a un precio razonable. Los clusters se suelen desplegar para mejo- Starting nmap 3. tanto el hardware como el software están mucho más especializados (por ejemplo. computación en grid. Luego intente acce- de la NASA fue uno de los primeros ejemplos y aún hoy se sigue utilizando der a esta URL desde su navegador: https //serverl centralsof t org. No pretendemos cubrir clusters de alto ren- dimiento. .. 1 IP address (1 host up) scanned in 0. El clúster Beowulf Si la directiva no estuviera ahí.insecure.

44 Balanceador de carga —servicio con dirección ip__VB_WlC ip_vs_wrr pública web! 70.158. ip_vsjnq ip_v s_rir ip_vs_sed Nombre Dirección IP Descripción ip_vs_sh Lb 70. HTTP).253. Al final de este capítulo. edite el archivo múltiples registros A se definen con el mismo nombre. LB consiste en el reenvío de paquetes y en el conocimiento del servicio cuya carga va a balancearse (en este capítulo. # modprobe ip_vs además de sus direcciones IP reales # modprobe lp_vs_lblc # modprobe ip_vs_lblcr VI P es # modprobe ip_vs_lc la dirección que el balanceador de carga expone a los dientes. vamos a concentrarnos en LB. = 1 .158. Esto no funcionaría bien si un servidor falla.253.253. no tiene en cuenta las necesidades específicas net ipv4 ip _forward . donde Para activar el reenvío de paquetes en el núcleo de Linux de Ib.1. La alta disponibilidad (HA) ofrece fiabilidad: mantiene los servicios ejecután. Las instrucciones de instalación están basadas en la distribución de Linux dose. esta línea: servidores esperan su turno para responder a las peticiones. Todas ellas se ip_vs_lblc listan en la tabla 7.42 IP virtual (VIP) compartida por lb. el resultado es que los /etc/sysctl conf y añada . # modprobe ip vs_rr # modprobe ip_vs _sed # modprobe íp_vs_sh # modprobe ípvs wlc # modprobe ip_vs_wrr La forma más simple de balanceo de carga es un round-robín de DNS.253. no necesitamos instalar software. si se necesita mantener una sesión de datos del servicio.1. puesto que los administrado- Ya que IPVS está ya en el núcleo de Linux. webl y web2.192 Ciusters de carga balanceada Ciusters de carga balanceada 193 Con http. ofreceremos varios enlaces útiles para configurar sistemas que combi- En Ib. intercambio de mensajes del tipo "Estoy Debían 3. hay que asegurarse de que el diente siempre se conecta al mismo servidor. ip_vs_dh ejemplo de balanceo de carga que vamos a usar en este capítulo es un ejem- El ip vs_f tp ip_vs plo simple que consiste en tres direcciones públicas y una virtual. y un procedimiento para que en caso de fallos se sustituya el servidor donde se produjo el error por otro. ip_vs_lblcr ip_vs_lc Tabla 7. Se basa en servidores redundantes.158.158. . además. por ejemplo. desde # modprobe ip_vs_nq donde se distribuirán las peticiones a ios servidores Web. decidir dónde se deben enviar los paquetes. sensible dentro de una organización. nan balanceo de carga y alta disponibilidad. vivo".45 Segundo senador web — otra RIP # modprobe ip_vs_dh # modprobe ip_vs_£tp (VI P) 70. Direcciones y roles de los servidores en nuestro clúster. la HA también es necesaria. Para cumplir estas necesidades. añada estas líneas a /etc/modules. En este capítulo.41 Primer servidor web— una de las IP reales (RIP) Luego cargue los módulos en el núcleo: web2 70.1 (Sarge). usaremos dos herra- El balanceo de carga (LB) ofrece escalabilidad: la distribución de las peticiones mientas un poco sofisticadas: en varios servidores. • Idirectord:Una utilidad que monitoriza el estado de los servidores físicos. Se basa en un ® Servidor de 1P virtual (IPVS): Un módulo balanceador de carga de nivel de monitor externo que recoge las estadísticas de carga de los servidores físicos para transporte (TCP) que ahora es un componente estándar de Linux. res tendrán que enfrentarse a ello más a menudo. con autentificación o cookies. Para un sitio que pase a ser pero sí configurarlo.

conf . net ipv4 . ejecutando Idirectord). Se netmask 255. tres formas: net . Por esta razón. conf . ethO arp_announce = . funcionalidades que herramientas antiguas como ifconfig y route): none # apt-get install iproute Nuestra configuración tendrá un servidor virtual (la dirección que ven los 3. all arp_ignore = 1 . Clusters de carga balanceada Clusters de carga balanceada Para cargar esta opción en el núcleo: Vamos a usar DR porque es fácil.253. En la versión 2. # sysctl -p Esto provoca un problema: si todas las máquinas tienen la misma Víg ¿cómo se net ipv4 ip_f orward = 1 asocia dicha VIP a una dirección MAC física? Esto se llama el problema ARP. los necesitará añadir dos líneas a su repositorio de archivos de Debían (/etc/apt/ dispositivos locales no responden a las peticiones ARP. lo obtendre.15. conf . rápido y escalable. edite el archivo /etc/ network/ direcciones Ethernet No es necesario que se pueda hacer ping desde fuera . all arp_announce = 2 .ultramonkey. Añada estas líneas a /etc/sysctl conf . Instale iproute (un paquete de Linux para trabajo en red con más Select a daemon method. una solución muy mos como parte del paquete Ultra Monkey. . conf . .ultramonkey. conf . debi- . la máquina Ib: Esta es la solución que adoptaremos. . actualice el repositorio y obtenga el paquete: En cada servidor real (web I y web2) hay que hacer lo siguiente: # apt-get update # apt-get install ultramonkey 1 . clientes. net ipv4 conf ethO arp_ignore = 1 8 LVS-DR .253.42 Los servidores reales pueden estar en una red distinta de la del director. ipv4 . ipv4 .255. (ejecutando Apache). . . Suponiendo que su servidor real es Debían. asociando la VIP (70. y dos servidores reales net . Configuraremos todos los servidores Web deb http://www. do a que los sistemas de la misma LAN usan el Address Resolution Protocol (ARP) Idirectord para encontrarse. configurar la VIP como alias del bucle local. all arp pignore = 1 . conf . ipv4 . en los HA. ipv4 . 8 LVS-NAT 4. Todas net ipv4 . deb-src http://www. desig- namos una VIP que comparten el balanceador de carga y los servidores reales.15.6 y superiores. conf . to con el núcleo de Linux. auto lo : 8 LVS-TUN iface lo: O inet static address 70.42) con el alias lo:0: de la subred. interfaces. 0 rg/download/ 3 / sarge main primero. Debido a que Ultra Monkey no forma parte de la distribución Debían estándar. y ARP espera que cada sistema tenga una dirección IP única. Muchas soluciones necesitan parches o módulos del núcleo que cambian jun- Aunque podríamos obtener Idirectord de manera independiente.255 comunican mediante técnicas de tunneling IP sobre IP (IPIP). net . . Con este método. puede Do you want to automatlcally load IPVS rules on boot? hacerlo ahora o después de configurar el sistema de balanceo de carga. servidores reales. Actualice los cambios en el núcleo: Los servidores reales están en una subred NAT detrás del director que es el # sysctl -p quien enruta las respuestas. net ipv4 . Los servidores reales pueden conectarse con el director de net . que además incluye software para popular es permitir que el balanceador de carga maneje el ARP de la VIP y. Si el servidor Apache todavía no está instalado.Org/download/3 sarge main luego. que llamaremos director. all arp_announce - .255. ethO arp_announce = 2 . No 2. sources list) en . 2 Los servidores reales envían las respuestas directamente ai cliente. pre-up sysctl -p > /dev/null . 2 las máquinas están en la misma subred y pueden comunicarse mediante 5 . . instalarlo: # apt-get install apache2 El proceso de instalación le hará algunas preguntas: Si todavía no tiene los archivos de contenido para su sitio Web. . ethO arp_ignore = 1 .

158.d/apache2 restart de la dirección VIP (70.196 Clusters de carga balanceada Clusters de carga balanceada 197 6. Para un esquema simple como el nuestro. service=http Starting ldirectord. cf status por lo que los servidores caídos se eliminan de la tabla. /etc/ha d/ . cree el archivo de configuración del balanceador de carga.248 # These should have the same valúes as for ethO: En Ib. Edite /etc/ Los logs de acceso de Apache no deberían mostrar actividad. Ultra Monkcy también instaló Heartbeat. (use -f to forcé) # echo "X'm webl" > /var/www/which html .42). 42:80 Finalmente. y verá si sus contenidos tienen el valor recibir.d: /etc/init d/heartbeat exists duríng rc. inicie los ldirectord en Ib: real=70. . receive="I'm alive!" scheduler=rr Probando el sistema protocol=tcp checktype=negot iate Comprobemos si el balanceador de carga se está ejecutando en Ib: Si quiescent fuera yes. como no lo vamos a usar. . ( "director. ldirectord is stopped for /etc/ha d/ldirectord cf . . Si viera algo como esto: y las peticiones y las respuestas se ignorarían.255. Active dicho alias: Se deberían haber creado archivos de inicio en / etc para ldirectord durante la # ifup lo: instalación.45:80 gate # /etc/init d/ldirectord start . puesto que ib network/ interfaces y añada estas líneas para crear el alias eth0:0: todavía no se ha comunicado con ellos. un peso de 0. 7. . el director hará una petición http a cada 1455 uno de los servidores reales de la URL solicitada. Cree el archivo /var/www/ldirector html con . 253 . . network . . o remídelo si ya se está ejecutando: Puesto que este servidor responderá las peticiones Web que se hagan a través # /etc/init. gateway .158. 158. sólo se haría una comprobación TCP rápida. ldirectord for /etc/ha a/idirectord cf is running with pid: . .255. . pero continuaría en la tabla LVS de routing. Si el valor fuera check. 253. htmf). lo hemos puesto a no. 158. request= "di rector html . html regularmente solicita el archivo que hemos especificado en ldirectord cd request . . 10. 253. checkt imeout = 1 check interva 1=2 Ahora active esta nueva dirección ÍP: autoreload=no logfile="localO” # ifup eth0:0 quiescent=no vi rtua 1=70. # ldirectord ldirectord. auto eth0:0 iface eth0:0 inet static address 70 253 158 42 . para lo que # echo "I'm web2" > /var/www/which. 9. En web 1: update-rc. debemos indicárselo al servidor.253. Inicie Apache. Enweb2: El balanceador de carga monitoriza el estado de los servidores Web. ldirectord. . El peso de un servidor Debería ver algo parecido a esto: reflejasu capacidad en relación con los otros servidores.d heartbeat remove 8. todos ios servidores operativos tienen un peso de 1 y los caídos . cf broadcast . Si checktype es negotiate. netmask 255. succees .d purge . el contenido: lo desinstalamos: ¡Estoy vivo! # update-rc. un servidor real que fallara dejaría de contar para el balanceador. 41:80 gate real=70.

45:80 ( x 70.253.253.41" .158. No necesitará HA para Sep 11 22:59:45 mail ldirectord [8543] Added fallback server: 127. .0.253. pero el segundo no.42:80 : 70.253. puesto que ldirectord los sondea todos cada checkinterval ( x 70.253.41:80 : segundos y ajusta todos los pesos.42/ server=negotiate http tcp 70 253 . El balanceador de carga representa un único punto de fallo.1:80 : los servidores Apache.. . Para instrucciones más detalladas (se usa el paquete Ultra Monkey Sep 11 22:59:45 maii Idirectord [8543] : Added virtual server: que ya hemos instalado) puede consultar http://www.158.1:80 ración -d y ver los errores que se están produciendo: { X 70. DEBUG2 Checking negotiate: real : En su navegador.42:80 -s rr : ) HTTP/1 .253. : : . DEBUG2 Added virtual server: 70. 2.41:80: \/director\ html I\ m\ alive\ : : : .158. 45 80/director html is up Ahora.253. debería ver: (virtual=tcp:70 .158. . # /usr/sbin/idírectord -d /etc/ha.253.198 Ciusters de carga balanceada Ciusters de carga balanceada 199 habría un problema. puede instalar un segundo balanceador de carga en configuración HA # tail /var/log/syslog con el primero.44:80) (Weight set to 1) # /usr/sbin/ldirectord /etc/ha d/ldirectord cf stop .1" Running system /sbin/ipvsadm -A -t 70. LWP UserAgent new : : : : : { ) o: LWP UserAgent request : : : : : { ) LWP: UserAgent send_request GET http ¡//70.0.d/ apache stop Para curiosear.158.41:80 Route 1 1 1 0 2 3 Añadiendo HA a LB Esto muestra que nuestro primer servidor real está activo.158.253. LWP :: UserAgent :__need_proxy Not proxied: : Yo soy web2 LWP: Protocol :: http :: request : : ( ) LWP Protocol collect read 11 bytes : : : : : Si el balanceador de carga no funciona o uno de los servidores Web está caído.253.0 (size=4096) Prot LocalAddress Port Scheduler Flags : Yo soy web2 -> RemoteAddress Port Forward Weight ActiveConn: InActConn TCP 70.158.44:80) (Weíght set to 1) Sep 11 22:59:45 mail ldirectord [8543] Added real server: 70. . podemos ver los mensajes de bajo nivel del servidor de IP virtual: Actualice la página del navegador http://70.0. html.158.158. . : ' which html y.42:80 rr -> 70.158. # ipvsadm -L -n respuesta: Siempre debería obtener la IP Virtual Server versión 1.253. que tienen un efecto muy similar al hearbeat ( x 70.2.howtoforge.253 .44:80) (Weight set to 1) de HA.[ll/Sep/2006 22 49 39 -0500] : : : "GET /director. 77..253.1" DEBUG2 Disabled server=70 253 158 45 : . .253.42:80 HTTP/1 .253.253. 32 with pid: 12984 : Starting Linux Director vi. pare Apache en webl . Puede parar el director y reiniciarlo con la bandera de depu.158.html : .253. director solicita director.158. 2.html Added virtual server: 70. : : Yo soy webl virtualhost= " 70 253 .html DEBUG2 Running system (/sbin/ipvsadm -A -t 70.253. vaya a la URL del sitio virtual http://70.158. 77. La salida será más corta si checktype está definido como check.0.158.44 . . Si falla. Sep 11 22:59:45 mail ldirectord [8543] : Deleted fallback server: 127. 32 with pid: 12984 70. 200 11 "libwww-perl/5 803" . 42 /which. lo servi- También podemos comprobar dores Web que dependen de él dejarán de ser accesibles. El Running exec /usr/sbin/ldirectord -d /etc/ha d/ldirectord cf start) ( .253.com/ 70.44:80 high_availability_loadbalanced_apache _cluster. .45:80 Route -> 70. comprobamos los logs de acceso de Apache. cf start) De regreso a webl y web2.158.44 . LWP :: UserAgent :: request Simple response OK : : siempre obtendrá la respuesta del mismo servidor Web. # /etc/init.42:80 -s rr ( ) 200 11 " libwww-perl/5 803 .158.ll/Sep/2006 22 49 3 7 -0500] f : : : "GET /director.158. . cf start DE3UG2 : Running exec {/usr/sbin/ldirectord -d /etc/ha.158.158.158.42:80) DEBUG2 check_http: url= "http //70 253 158 4 1 80/director .41: 80 /di rector html : : : : .158. DEBUG2 Disabled server=70 253 158 41 : . d/ldirectord.44:80) Sep 11 22:59:46 mail ldirectord [8543] : Added real server: 70. . Para hacer el sistema más los logs del sistema en Ib: seguro.158. d/ldirectord.html cada checkinterval segundos: DEBÜG2 Starting Linux Director vi.253.

así evitan tener que usar tiempo de cómputo en cada acceso a una página. fuerzo e inversión en hardware. La replicación es una forma de LB. lighttpd. Si ya está usando estás técnicas pero no solucionan sus problemas. zeustech. loadbalanced__mysql__cluster__debian para un ejemplo de MySQL. También puede mejorar el rendimiento por otros métodos.net) litespeed : y (http / /litespeedtech com) son más rápidos que Apache y consumen me- : . un producto LB/HA comercial para Linux que usa des picos de actividad? Si no es así. Más detalles sobre el software usado en este capítulo están disponibles en las cios también podrían beneficiarse de LB/HA.php. . puede desactivar los archivos . su credibilidad se vería afectada y muchos LVS. En muchos casos.ha orgS) : . por ejemplo MySQL. y puede echar un vistazo a la Red Hat Cluster Suite(http / /www. Squid (http / / www squidcache org). . y si la estabilidad es crítica incorpore también HA. como la caché de consultas de MySQj guardan los resultados de consul- tas idénticas.howtoforge. ° Ultra Monkey (http: //www. pueden considerarse otras alternativas. Si ofreciera un magnífico servicio.ultramonkey org). que incluyen aceleradores PHP como e-accelerator {http //eaccelerator net): . nos memoria. Hay muchos libros de Apache con trucos de optimización. servidores Web como lighttpd (http / /www. Por ejemplo. verso.net). Una vez que se alcancen los límites del software del servidor Web. Memcached (http:// danga. Zeus (http: //www.net/show/oscon06) indica cómo con- : seguir que una aplicación PIIP que soporta 1 7 llamadas por segundo pueda pa- sar a soportar 1. es un caché de páginas que puede almacenar todo el contenido del servidor Web. Hay otras formas de conseguir un mayor rendimiento del equipo actual.com/ • Linux Virtual Server Project (http : / /www linuxvirtualserver org). o usar mod_expires para evitar llamadas de actualiza- ción de los archivos como imágenes.htaccess en su configuración Apache (AllowOverride None). servidores de siguientes páginas Web: correo o servidoresLDAP Consulte http://www. y APC (http / / apc coramunityconnect com). El mismo software está disponible gratuitamente (pero sin soporte) en visitantesno volverían. no está de más considerar otras posibilidades.100 llamadas por segundo en una única máquina. Caches de código. También tiene otra opción. las mejoras son multiplicativas. Cuando los servidores están separados en varias aplicaciones (por ejemplo MySQL ? PHP ? Apache). redhat com/ : . definitivamente intén- telo con balanceo de carga. Gachés de datos.2 Ciusters de carga balanceada Ciusters de carga balanceada Añadiendo otros servicios LB Otras lectoras Hemos usado servidores Web Apache como ejemplo para este capítulo porque es uno de los servicios que puede necesitar una granja de servidores. . . . cuando se usa como proxy in- : . • í-Ieartbeat/The High-Availabi Jity Linux Proj ect (ht t p / / 1 inux . por ejemplo "Getting Rich with PHP 5 " (http / /talks . ¿sería el servidor capaz de soportar gran- software/rha/cluster). Otros servi.com/memcached) es una forma rápida de almacenar resultados de bús- quedas. guardan PHP como bytecode y : . Pero debido a que LB y HA necesitan un importante es- CentOS.

si acaba de empezar en la administración de sistemas. piense que sucedería si el correo electrónico del directorio no funcionase. En este capítulo. dejando a Fedora en la vanguardia de las distribuciones libres de Linux. Los servicios de correo electrónico local. Red Hat patrocina el proyecto Fedora y normalmente lo usa para probar la próxima distribución empresarial estable. (O'Reilly). Red Hat ofrece paquetes nativos de muchas herramientas para Fedora. necesitará aprender cómo instalar. también están bajo el paraguas de las LAN. pero sí es razonablemente estable y robusta. como si nunca ha oído hablar sobre los temas de este capítulo. que pue- . Jos sistemas de impresión corporativos y la gestión de usuario. Para la primera toma de contacto. Pero ya cubrimos esos aspectos en capítulos anteriores. configurar y mantener los servicios de una red local. puesto que creemos que no presenta ningún desafío. Una red local se puede llevar la mayor parte del tiempo del administrador de sistemas si no sabe manejarla.exploraremos sistemas de archivos distribuidos. como los configurar los servicios de DHCP y de pasarela (incluyendo el routing entre la LAN e Internet). Por lo que. Algunos de nosotros preferimos referirnos a tecnologías de Internet en lugar de a redes de área local. le aseguramos que son muy interesantes. Tanto si posee conocimientos básicos como usuario de Linux. Fedora no es la versión más estable de Red Hat. En este capítulo repasaremos algunas de las destrezas que un administrador de sistemas necesita para gestionar un equipo situado detrás del cortafuegos o la pasarela de una compañía. Usaremos la distri- bución Fedora Core para este capítulo. la red de área local adquiere mucha importancia. una organización o incluso una rpd local. Pero cuando necesitamos configurar o arreglar algo en nuestro entorno de trabajo. eche un vistazo a la edición más reciente del libro "Linux Network Administrator's Cuide Terry Dawson". Por ejemplo.

pueden acceder desde máquinas remotas se les conoce como directorios comparti. se tardó varios años en crear tecnología la populares y que puede usarse tanto desde sistemas Microsoft como otros siste- básica para el como los sistemas de archivos distribuidos. Samba también puede desempeñar un papel de compartidor de archivos en Intente imaginar qué supuso la introducción de la LAN para un grupo de entornos más simples. do a que permitían compartir lo que cada uno tenía en su escritorio. pueden implantarse políti- . Los de archivo e impresoras. Samba combina LDAP con funciones como un servidor de autentifícación robus- dos. existen excelentes libros mainframe le dejara hacer su trabajo. Afortunadamente. La compartición de archivos y de impresoras con SMB evolucionó de la mano Es difícil tiempo en que los PC trabajaban de manera autónoma imaginar el de Microsoft en el protocolo Common Internet File System (CIFS). Algunas funciones principales de las redes CIFS (sobre todo la forma en que chivos. o usaban un con. un que la gente transfería archivos entre equipos con disquetes. Sin embargo. "Una descripción más a fondo de este tema sobrepasa DOS en uno distribuido. necesitará comprender Samba. Estos trabajo en red mas: Samba. impresoras y varías operaciones de control. muchos sitios almacenan sus usuarios en archivos críticos en el material de este capítulo a otras distribuciones de Linux. por lo que servidores que ofrecen archivos. un investigador de IBM. la Los sistemas de archivos distribuidos permiten a los usuarios abrir. Si de- falta rellenar manualmente un formulario para que el operador de un sistema sea profundizar en Samba que tratan (debería hacerlo). CIFS ha sido sin los beneficios del trabajo en red o la conexión a Internet. miten administrar Samba. puede aplicar Hoy en día. Servicios de red de área loca! 205 den usarse para uso comercial. todo el trabajo se almacena en él. Si funciones sensibles como contabilidad financiera o almace- campus o de país. namiento de personal se gestionan en una máquina. En algunos entornos. Samba está llegando a ser muy popular. Los PC se convirtieron en los protagonistas de los negocios a finales de la ta. convirtió un sistema de archivos Para usar una cita común. que controlan los permisos de acceso a los archivos. un único ordenador de altas prestaciones almacena los ar. Le sugerimos que servidores centrales. Samba puede integrar máquinas Linux en redes de Microsoft como servidores chivos en sus PC. evolucionaban y la gente se dio cuenta de que necesitaba compartir sus recursos. y ha creado uno de los proyectos de software libre más Después de introducción del PC. Si no le gusta el modelo de Red Hat. Eran tiempos difíciles. A esta práctica se la suele conocer como trabajo.204 Servicios de red de área loca. puesto que se usa sistemas de archivos distribuidos transformaron el paisaje de los negocios. Puede que recuerde la época en comportamientos secretos que Microsoft sigue desarrollando.org. y los usuarios acceden a ellos a través de una IAN. además no encontrará este material en otro sitio. ba con suficiente detalle para hacer funcional su entorno. mayoría de las distribuciones ofrecen interfaces gráficas muy sencillas que per- cribir archivos que estaban almacenados en otros ordenadores distintos al suyo. y a los directorios (o carpetas) a los que los usuarios La última versión de Samba puede operar con el Active Directory de Microsoft . queremos describir Sam- los ingenieros de red había comenzado. grupo intrépido de desarrolladores ha estado haciendo un trabajo de ingeniería mutador para poder compartir una impresora. el ordenador central los sistemas se buscan unos a otros) tienen lugar en controladores de dominio: puede incluso almacenar los directorios personales de los usuarios. leer y es. debi. publicado como un estándar. La era de los administradores de sistemas y de excelente material que ya está disponible. los compañeros de tos de una gran organización usan redes punto a punto. Actualmente. significativamente en Windows. controladores de dominio o miembros de un grupo de dos entornos pueden combinarse. Barry Feigenbaum. los usuarios almacenan ar. donde los miembros de pequeñas oficinas o departamen- usuarios que nunca antes había trabajado en red. En otros entornos. no tenemos una razón para duplicar el ción Server Message Block (SMB). Ya no hacía Como administrador de sistemas Linux. de su que autentificarse. incluyendo guías de documentación en línea http://samba. en Linux e incluso en Mac OS X. inversa con el protocolo. pero está poco documentado y contiene muchos ron originalmente diseñados para trabajar en red. Sus esfuerzos ayudaron a crear el protocolo de aplica. y las redes de área local se dieron a conocer a medida que los PC los servidores Active Directory. pero permiten a los otros usuarios acceder a estos archivos. compartición de archivos. El trabajo en red se hizo más popular cuando la materia. Sin embargo. Todo esto supuso una verdadera revolución. describiremos algunas de ellas aquí. trabajo. sustituyendo tanto a los controladores de dominio de Microsoft NT como a década de 1980. el ámbito de este libro". Habla- profundice en este material: necesitará ponerlo en práctica en un entorno de remos sobre gestión de usuarios más tarde en este mismo capítulo. imprimir en impresoras que no estaban rio pueden compartir sus impresoras y archivos con otros sin que éstos tengan en su despacho y responder a correos enviados por gente de su oficina. De repente. Los usuarios de escrito- trabajo podían compartir documentos. Pero los PC no fue.

3/ veremos cómo puede configurar Samba para sus usuarios de escritorio.1. . a los otros sistemas. y los otros dos ejecutan Windows 98. puede usar Samba para operar con Windows y Mac OS X.2. que permite a los nodos usar la funcionalidad CIFS. pero si selecciona Carpetas Compartidas (en el menú Figura 8. ahora ya está listo para ser miembro del dominio o del grupo de trabajo. que es un sistema Windows XE También Ahora. ¿Fue difícil configurar la red? Aparte del cableado estándar. .rT'i (ict om/joor :to ejecutando Asistente de Configuración de Red. Uno de varios directorios. (El progra- (Boqutque) (V«Ur-5000682e74) ma ofrecido por Microsoft se llama netsetup. se instala la distribución tal y como muestra la figura 8. mientras usa NFS para operar con otros sistemas Unix/Lmux. Para asegurarse de que se entien- den. l’UBLICO enhoqué Oocurriontos c en MINE ciendo la posibilidad de que XP y Windows 98 puedan comunicarse. Este asistente nos pregunta si el queremos activar la compartición con otros equipos. de administración de Ubuntu 6. echaremos un vistazo a las redes Linux/Windows puede ver el archivo de un procesador de textos llamado xp_network_setup sxw.255). Dell también aloja icono Mis sitios de red. una impresora. tal y como se ve desde un PC con Windows.0. Los siste- mas usan DHCP para obtener sus direcciones 1P. que se ha guardado en el formato nativo del OpenOffice Writer (Versión 1). dar un nombre al equipo. refiriéndose a ordenadores Internet TorertH de red con Windows 98.*# Ayi.168. Ubuntu descargará los archivos necesarios.Hemos seguido los procedimientos estándar para Windows 98.168. ma Windows con la opción Mi entorno de red o Mis sitios de red. Servicios de red de área loca! Servicios de red de área local cas de seguridad que sirvan de escudo para otros usuarios sin comprometer la En la parte derecha de la pantalla en la figura 8. presión y ofrecer acceso compartido a Internet. . junto con haga clic con el botón derecho del ratón sobre el y pueden conectarse a Internet.0. Dallas ofrece una impresora.) (Describiremos La vista de árbol de la parte izquierda de la pantalla muestra cuatro equipos Windows han establecido la configuración de la red Una vez que los sistemas llamados Athlon. active el Simple FileSharing accediendo al Panel de Control de Windows XP y M'. Dallas y Dell. cas por estáticas. DHCP en la siguiente sección. 180) . Configurar sistemas Windows XP es ligeramente más complicado. Los servicios de compartición no se insta- lan por defecto con Ubuntu. las conexiones Ethernet y la instalación del cortafuegos y del modem. el sistema se instala por sí solo. ofre- Luw C-tormol nn < 192 168 i. se Fíjese en que hemos sido capaces de configurar Windows Networking a través del cuadro de diálogo. compartidos del nodo llamado Dallas. El escritorio Linux nos ha permitido activar la compartición de archivos y de impresoras. Ubuntu también da la opción de configurar el NetWork File System (NFS).iiv'tHw MWKrtTiW/tt. El sistema Linux hace lo mismo que un siste. Esto permite a los ordenadores actuar como servidores de im- Linux los agrupa a todos por igual.) Otro* flNios Luego Xandros y se activa el Windows Networking.10). Al responder que sí se permite crear un disquete que podría- mos usar para instalar los protocolos de Windows XP en ordenadores con Windows MAM* 98. Este proceso actualiza los sistemas más viejos a protocolos más nuevos. definir el grupo de trabajo y activar el nivel de seguridad compartida.1 destacan los directorios disponibilidad de los recursos de la red punto a punto. que es un entorno Linux de escritorio adecuado para entor.4 le permite escoger entre ambos sistemas. El cuadro de diálogo de la figura 8. seleccione Propiedades y cambie las direcciones dinámi- los otrosordenadores ejecuta Windows XV.0 hasta 192. Internet usando una red de clase C (desde 192. puesto que XP y Windows 98 son incompatibles entre sí. Atlanta. El router ofrece servicios DHCP y una dirección privada de distribución Xandros. nos corporativos).htvo CtfOM ¥«» P.1 representa una red y puede verse desde un sistema Linux (la hasta la pasarela. Los archivos y los directorios compartidos por un sistema Linux.exe. le un sistema de archivo Unix-a-Unix a muy popular que es incompatible con CIFS. servidores DNS y la dirección La figura 8.

* #gS nistrador de red de esta tarea. Profundizaremos un poco más en aspectos de Samba más adelante en este Para comenzar con DHCIJ primero necesita instalar el servidor DHCP. .. El servidor DHCP asegura que todas las direcciones IP vvíí'JS .pj^«wwM¥<íé coi?l|gfUnKáón 'M • El movimiento frecuente de los usuarios móviles necesita que se reconfigure FtaSfl jjjjj|l«MK. puede instalar el paquete RPM con Yum o . Este servidor gestiona el conjunto de direcciones IP. nistración.. 0 Los cambios de personal significan que alguien tendrá que comprobar cada ordenador y configurar una nueva base de datos de asignaciones de IP.3. Coroomaiio son únicas.y':. •/•' Carpeta compartida . Es Veamos algunos aspectos que debe conocer y prestemos atención a cómo pue- den ayudarnos: • Los PC y las estaciones de trabajo necesitan una dirección 1P única. que este capítulo se basa en Fedora.e Opciones efe la red en los equipos portátiles. El servicio necesita una pequeña intervención humana relativa a la asignación y al mantenimiento de las direcciones IR Los administradores pueden : ' ' :• feciur». Pantalla de configuración de los servicios de compartición de archivos en Ubuntu. . Configurando los recursos compartidos de Ubuntu en un entorno Windows. • • : . Figura 8. Servidos de red de área local Servicios de red de área local Xi Necesita ínstaJar Sarfi&a o NFS p Puede Instalar estas íwramfeBte y Samfes para compartir cárpete :v NFS para compartir carpetas c X giost.’ S ^^aaegi/f í . Oft!«tÍpi:iQ!> üv:} Osa íVíV-. incluyendo problemas de asignación de direcciones 1P y otros aspectos de admi- difícil imaginar una red sin DHCP. Puesto mismo capítulo.4. liberando al admi- •o : Jío i ' Y/. • La resolución de problemas de red (como la duplicación de direcciones) y los cambios de ubicación provocan trabajo innecesario. : : - SMB i:. Úoimmi DHCP soluciona estos problemas asignando direcciones IP a medida que cada :mn¡ sistema de la LAN arranca. 4 &9P P: . • La asignación manual de direcciones IP provoca excesivo trabajo.'{:''| Osai’':osíeí: escribir archivos de configuración y dejar el resto del trabajo al servidor DHCP VRéfriwffi fiavetjfidof ' (dhcpd).*! . infor- mación DNS y conocer la ubicación de las pasarelas. Los servicios de Dynamic Host Configumtion Protocol (DHCP) pueden ayudarle a solucionar un gran número de problemas asociados con entornos de área local.. • La duplicación accidental de una dirección fP crea conflictos en la red.

1. mer paso. nes ÍP estáticas basadas en la dirección MAC de la tarjeta de red del cliente.org". } max. ) option domain-name-servers 192. : # option netbios-node-type 2.1.253.128 192.Selects point-to-point node (default is hybrid) Don't change Chis . # option time-offset -18000. .1.168. Hemos configurado unos cuantos elementos de nuestro archivo de configu.1.253. option subnet-mask 255.1.0.254. hemos usado la red priva- quete dhcp3-server y editar el archivo de configuración /etc/dhcp 3 / da de Clase C 192. default-lease-time 21600.255. mientras que la otra tarjeta (supon- subnet 192.0 que ofrece 254 nodos (desde el 192.255. el mantenimiento será más sencillo max-lease-time 43200.1. de actuar como pasarela/cortafuegos.168. Cuando el reenvío de # default gateway paquetes y el cortafuegos iptables están activados. tiene una dirección en Internet.158. host ns { # --. option subnet -mask 255.lease-time 21600.0. La direc- y el servidor de nombres en la tercera línea (option .server serverl centralsof t .3-28. Esta máscara de red debe coincidir con la máscara de red usada Una vez lo haya instalado. veamos una versión sencilla de /etc/dhcpd.0 netmask 255.42.168.168. conf Como pri-.168.0.1. 192.range dynamic-bootp 192. hardware ethernet 00 16 3E 63 C7 76: : : : . option domain-name-servers 192. ddns-update-style interim. Una tarjeta. Un servidor simple con dos tarjetas de red a menudo actúa como pasarela de ignore client-updates.- subnet 192. f ixed-address 70.168. ración después de haberlo copiado al directorio /etc: option domain-name-servers server. option routers 192.org. f ixed-address 70.42.1.255.lease-time 7200. cualquier servidor Linux pue- option routers 192. te ejemplo es típico.1.server serverl centralsof t org. en modo caché para que funcioné como el servidor DNS de la red. ddns--update-style interim.168. . representada por un nombre de dispositivo como ethO.1. puesto que es una práctica común hacerlo así.255. El siguien. domain-name-servers). Nota: Para servidores DHCP sencillos.0. mantener la dirección.0 { option routers 192.i386.158.168.1.0. también se puede activar BIND option subnet-mask 255. Servicios de red de área íocai Servicios de red de área loca! con el gestor de paquetes /usr/bin/gnome-app-install.1 hasta el dhcpd conf ). } subnet 192.168.1. una red de área local.0 netmask 255. conf sample a / . El software fue creado por Internet Systems Consortium.255. Pero # we want the nameserver to appear at a fixed address antes de hacer eso.255. edite el archivo para que se ajuste a su red. # -.1..2 192. default.255. . . . también hemos añadido una cláu- -- sula para especificar la dirección estática de un servidor DNS corporativo.168.168. copie el archivo /usr/share/doc/dhcp/dhcpd.1.} # -.1. (Los usuarios Debían pueden instalar el pa- para los usuarios de la subred de la LAN. conf host ns { next. En este caso.1. .1.168.0 netmask 255.254). address # we want the nameserver to appear at a fixed # option netbios -ñame -servers 192. # -. se mide en segundos.168. .unless you understand Netbios very well hardware ethernet 00: 16 :3E: 63 :C7 76.255.255. En la próxima sección describiremos cómo usar dhcpd para asignar direccio- max-lease-time 43200. La sintaxis usa almohadillas (#) para los comentarios: ción IP es la misma en las dos líneas. Hemos especificado la dirección de la pasarela en la segunda línea (option router) etc/ dhcpd conf.1.0 { gamos que es ethl) tiene una dirección en una red privada.255.0 { range 192.option domain-name "domain.1.168. default-lease-time 600.168. Luego.254. En nuestro archivo de configuración DHCP. la versión actual La primera línea define el rango del conjunto de direcciones IP disponibles delpaquete es dhcp-3. para definir su LAN. next. server2 centralsof t org .org". En este caso.org.1.255.centralsoft.0.1.168.option nis-domain "domain.255. Las últimas dos líneas especifican la cantidad de tiempo que un cliente puede # -. siomite los comentarios y hace que el archivo de configuración sea pequeño.1 . configure DHCP en / etc /dhcpd.168. # Eastern Standard Time # option ntp-servers 192.

tendrá que reiniciar el A finales de995. que mucha gente duda de IPvó. de una sección de configuración global en la parte de arriba del archivo Algunos administradores de sistemas se han dado cuenta de que ÍPvó y sus dhcpd.1. .168. Por ello. luego sobrescribirla para un cierto y lo que mucha gente ya sabía: que el espacio de direcciones de !Pv4 de 32 bits iba grupo de máquinas e incluso para máquinas individuales. que podrá averiguar usando el comando ifconfig en cada equipo. conf: métodos para asignar direcciones ÍP han empezado a ganar popularidad. optiorx routers 192. Pue- sidad de un nuevo protocolo de direccionamiento para Internet. DHCP .0 2552 636 Ss 09:40 0:00 /usr/sbin/dhcpd f ixed-address 192. se mostrará una línea con las } estadísticas del proceso): hostl. necesitará saber la dirección hardware (a menudo llamada dirección MAC. Primero. direcciones que pueden cambiar periódicamente o después de reiniciar). Aquí mostramos un ejemplo de una sección host: [root@host2 -]# service dhcpd start Starting dhcpd: ethernet MAC address as follows (Host's ñame is " laser-printer" : OK ] [ # > [root@host 2 ~3# host laser-printer { También puede comprobar si el proceso DHCP se está ejecutando con el si- hardware ethernet 08 00 2b 4c 59 23 : : : : : f ixed-address 192.168. Antes de iniciar el servidor DHCP. hay muchas aplicaciones y muchos entornos que están girando en esta dirección. Aquí hay un ejemplo a limitar el crecimiento explosivo de Internet.1. Servicios de red de área local Servidos de red de área local Iniciando el servicio DHCP permite especificar direcciones IP estáticas para sistemas particulares en dhcp.leases. # touch /var/lib/dhcp/dhcpd leases ... guiente comando (si el servido se está ejecutando.10. f rom the list dhcpd 0 off :lsoff 2:on 3:on 4 : on 5 : on 6:off Al igual que sucede con los otros servicios de Linux.centralsoft. Use el comando broadeast y los routers: touch para crear un archivo vacío en el mismo directorio que el archivo dhcpd. direcciones no cambian mientras están atendiendo a un cliente. Aun- option doraain ñame "host2. compruebe que la configuración es correc.) de Para iniciar el servidor. así como pero los servidores normalmente necesitan direcciones estáticas.1.1. configure la subred. Stcve Deering y Robert Hinden se dieron cuenta de la nece- 1 demonio DHCP siempre que haga cambios en los archivos de configuración.5.centralsoft. la dirección de Algunos servicios DHCP necesitan un archivo dhcpd.168. . Para hacer esto. de nuevo. . Deering y Hinden argumentaban una configuración por defecto para su red. Use d comando chkconfíg para conseguir que DHCP se inicie a! arrancar: } Cree una cláusula de configuración como esta para cada servidor que necesite # chkconf ig dhcpd on # chkconf ig --list una dirección IP estática y añádala al archivo de configuración. Las estaciones de trabajo suelen funcionar bien con direcciones dinámicas (es Nota: Una descripción exhaustiva está. para más información sobre el protocolo IPvó y su demonio. en el RFC 2460.0 netmask 255 255 2S5 . Vamos a hacerlo.168. Luego.1. option broadcast-address 192.com { # ps aux grep dhcpd | hardware ethernet 01 0 cO 2 d 8c 33 : : : : root 9028 0. ta.1. introduzca: cada tarjeta de red..conf subnet 192. Esto quiere decir que puede establecer la segunda apareció en 1998.conf. . tendrá que buscar en otros sitios. Su primera espe- de establecer otras opciones en el archivo dhcpd conf de manera global o para cificación de IPvó apareció en 1995.168.0 0.org". en el IETF Request Ror Comments (RFC) 1883. por lo que sus para saber cómo obtener direcciones ÍPvó públicas. añada una sección host por cada máquina de la red. argumentando que es innecesario o que en nun- ca se va a imponer en la práctica real. el cliente de un equipo o para una subred. fuera del alcance de este decir. También sería recomendable configurar que el servidor se inicie al arrancar.255. libro.

253. Para levantar una pasarela necesitará: • Un ordenador dedicado que actúe como pasarela. que es una subred o una red situada entre la red interna e routers por defecto basándose en estos mensajes.46 do una combinación de reenvío de paquetes y reglas de cortafuegos conocidas TYPE=Ethernet . servidores Web o servidores de DNS.253. exponer sus direcciones IP individuales al público.0. Internet. trabajo clientes de forma separada.0. que está en / La gente a veces se refiere a una pasarela como a un bastión host. a ambos. DHCP.0. La asignación automática de direcciones !Pv6 puede hacerse con la ayuda del demonio router-advertising radvd. conf sería este: Las DMZ se usan para contener servidores que necesitan ser accesibles desde interface ethO fuera. que ne- http / /www. IPV6INIT-HO PEERDNS=yes Los administradores de sistemas Linux implantan servidos de pasarela usan- GATEWAY=7 0 . La configuración típica oculta ° iptables instalado. no gastaremos tiempo en la DMZ. Lo correcto etc/sysconf ig/networking/devices/if cfg-ethO para incluir las siguien- es pensar que es una entidad de red que ofrece una única entrada tes líneas: y una única salida hacia Internet.168. Nos USERCTL=no referiremos a los servidos que ofrece como servicios de pasarela.9. A esto se le llama gurar el servicio. También tendrá que configurar el DNS en las estaciones de cortafuegos de subred apantallada. necesitará cambiar el prefijo por uno de su red y confi. a una organización del público usando Linux como router. Los usuarios de Fedora pueden insta. : { Una DMZ se suele situar en el medio de dos pasarelas o cortafuegos y conecta }. Debían. su red privada debería usar una red privada del tipo radvd soporta un protocolo sencillo. en esta configuración. Edite el archivo de configuración para ethO. litech. tales como servidores de correo.1 desde los repositorios Yum. En la parte privada del router. Una DMZ puede evitar fallos de configuración accidentales que po- Si quiere usar radvd. Un 192. Las { conexiones desde Internet a la DMZ suelen controlarse usando la función Port AdvSendAdvert on. direcciones. : cesita mucho equipamiento y esfuerzo.1. El bastión host ayuda a evitar que se comprometa la segu- 0NB00T=yes ridad de una red ofreciendo una barrera entre las áreas pública y privada. una pasarela puede implan- tarse en un único servidor incluyendo seguridad básica. Servicios de red de área local Servicios de red de área local Las direcciones ÍPvó a menudo incluyen la dirección hardware de la tarjeta de como iptables. drían permitir el acceso desde Internet a la red interna. En organizaciones más grandes. Para nuestros propósitos. "Neighbor Discovery for IP Versión 6 (IPvó)".158. un cortafuegos. README. Esta propiedad permite a los usuarios de IPvó obtener la dirección IP estática mascaramiento o el Network Address Translation (NAT). con una tarjeta de red conectada a la red interna y otra conectada a b Internet. • Una conexión a Internet y dos tarjetas de red. En seguridad informática. ejemplo de configuración para el archivo /etc/radvd. Los usuarios Debían pueden están normalmente repartidos por varios servidores. 8 Un pequeño conmutador para que las máquinas clientes se conecten a la Linux ofrece facilidades a los usuarios para que naveguen por Internet sin pasarela. Por ejemplo. Su instalación también es sencilla. radvd escucha las peticiones que se hacen al router y envía mensajes tal y como se describe en el RFC 2461. prefix 0 70 IfOQ 96 : : : : /64 Address Transía tion (PAT). será suficiente con limitar la configuración de la Puede encontrar variada información sobre el proyecto radvd en la página pasarela para el reenvío de paquetes. sin necesitar ninguna configuración en la parte del servidor que soporte estas En organizaciones pequeñas y en redes locales.158. se conoce con el término zona desmilitarizada a Los equipos pueden configurar automáticamente sus direcciones y escoger sus una red perimetral. la DMZ 10. tales servicios lar el paquete radvd-0. las actividades locales no pueden ser detectadas por nadie de la parte Supondremos que ethO es su conexión de Internet y ethl es su pasarela interna pública. DNS caché y servicios de correo.0.0 y el bloque público de Internet 70. También hay disponibles otros servicios de pasarela. con una zona desmilitari- instalar el paquete radvd y leer el archivo /usr/share/doc/radvd/ zada (DMZ) actuando como pasarela.org/radvd. como el en- red.

pero son la literatura 7.168. que encontrará en /usr/share/doc/initscripts.2 192.7. [root®host2 devíces]# rpm -q iptables puede que quiera echarle un vistazo a Shorewall. guiente paquete: [root@host2 ~J # rpm -q firestarter Nota: Fedora 5 instalará iptables usando la aplicación Instalar/Desinstalar firestarter-1 0.168.no range 192.1 cortafuego y que ofrecen conjuntos de múltiples funcionalidades.5) se lanza cuando un administrador inicia el programa por primera vez. Nuestra instalación necesita el si- Si no tiene iptables instalado.0 netmask 255. que puede configurar tarjetas de red duales.43 .168. Puede descargar Firestarter desde los repositorios de Fedora. LAN es como si fueran una única máquina con una única dirección IP para # sysctl -p Internet.1.168. PEERDNS=yes } TYPE=Ethernet DEVICE=ethl HWADDR=00 13 46 e6 e5 83 : : : : : BOOTPROTO=none NETMASK=255 255 255 . instálelo ahora y cargue los módulos.6). desde que usa NAT. por ejemplo. .255. .1.253 158 . en la pantalla de preferencias mostrada en la figura 8.lease-time 600.255. Servicios de red de área local Servicios de red de área loca DEVICE=ethO HWADDR=00 04 61 43 75 ee ddn s .upda t e . subnet 192. . hemos elegido Firestarter.1.100.255. Fíjese en que la descripción del primer dispositivo se refiere a un Finalmente.0. Verá como en archivo sysconfig. Con las tarjetas de red configuradas. necesitará asegurarse de que ha productos comerciales que instalan una distribución Linux entera.Puede relanzar el asistente desde el menú del Luego ejecute: cortafuegos en la interfaz principal.txt.255. Esta sección cubre el uso de productos que son combinación de pasarela y I PADDR= 192. fc5 . comenzando por la pantalla de configuración del dispositivo de red (figura 8. por lo que los PC de una etc/ sysctl conf tecleando: .s t y 1 e interim. así como cambiar las opciones desde la op- ción Preferencias. server2 centralsof t org .1. Para su uso correcto en este capítulo. . ubicado en el directorio por encima del menú Aplicaciones [root@host2 ~]# en el panel GNOME. option routers 192. También carga módulos del kernel como parte del proceso de instalación. # iptables -t nat -A POSTROÜTING ~o ethO -j MASQUERADE # Service iptables save Después de la pantalla de bienvenida inicial. ONBOOT^yes option doraain-name-servers serverl centi'alsof t org . Existen varios La información de estos parámetros de configuración puede encontrarse en el paquetes gratuitos como Firestarter. El asistente para Firestarter (figura 8. . "Dispositivo de red conectado a Internet" y la dor usando una versión sencilla de dhcpd.254. funciona corno una pasarela. Puede hacer que el sistema relea / go. Debería ver el siguiente resultado: nes independientes.255. .93. Sin embar- . cambiando net ipv4 ip_ f orward = 0 La función principal de Firestarter es la de compartir conexiones. NETMASK=25S . si tiene una pequeña organización. . habrá una serie de pantallas de # echo 1 > /proc/sys/net/ipv4/ip_forward configuración.1 3 5-1 . no aplicacio- instalado iptables. por l para mantener esto activo tras reimciar. IPCop.1. [root@host 2 devíces]# para Netfilter (una herramienta de línea de comandos).7. Ahora edite / etc/ sysctl conf.255. Linux también se menciona Smoothwall y ClarkConnect. la configuración para ethl debería ser: option subnet-mask 255. .time 7200. una utilidad de configuración iptables. : : : : ¡ BOOTPROTO=none def ault.168.0 { Asimismo. IPADDR=70 . Netfilter y Shorewall. . Esto es evidente. No obstante. 3-11. Software. puede