tiendalinux.com · 2001. 9. 10. · Índice red hat linux 7.1...

279
R e d H a t L i n u x 7 . 1 Official Red Hat Linux Reference Guide

Upload: others

Post on 26-Sep-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Red Hat Linux 7.1

Official Red Hat Lin ux Reference Guide

Page 2: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

ISBN: N/A

Red Hat, Inc.

2600 Meridian ParkwayDurham , NC 27713 USA

Research Triangle Park, NC 27709 USA

© 2001 Red Hat, Inc.

rhl-rg(ES)-7.1-Print-RHI (2001-02-21T10:50-0500)

Copyright © 2001 por Red Hat, Inc. Este material se distribuye tan sólo bajo los términos y las con-diciones establecidas en la Open Publication License, V1.0 o versión posterior (la última versión estádisponible en http://www.opencontent.org/openpub/).

La distribución de versiones modificadas de este documento está prohibida sin el permiso explícito delpropietario de los derechos de autor.

La distribución del producto o una copia del mismo en forma de libro con fines comerciales está prohi-bida a menos que se obtenga permiso previo del propietario de los derechos de autor.

Red Hat, Red Hat Network, el logo "Shadow Man" de Red Hat, RPM, Maximum RPM, el logo de RPMlogo, Linux Library, PowerTools, Linux Undercover, RHmember, RHmember More, Rough Cuts, Raw-hide y todas las marcas y logos basados en Red Hat son marcas registradas de Red Hat, Inc. en losEstados Unidos y otros países.

Linux es una marca registrada por Linus Torvalds.

Motif y UNIX son marchas registradas de el Open Group.

Compaq y los nombres de los productos Compaq a los que aquí se hace referencia y/o las marcas deservicios o las marcas registradas y/o las marcas de servicios de Compaq.

Netscape es una marca registrada de Netscape Communications Corporation en los Estados Unidosy otros países.

Windows es una marca registrada de Microsoft Corporation.

SSH y Secure Shell son marcas registradas de SSH Communications Security, Inc.

FireWire es una marca registrada de Apple Computer Corporation.

Todas las otras marcas registradas y los derechos de autor a los que se hace referencia son propiedadde sus respectivos propietarios.

Impreso en Canadá, Irlanda y Japón

ii

Page 3: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

ÍndiceRed Hat Linux 7.1

Intr oducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ixCómo encontrar la documentación apropiada .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ixConvenciones del documento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiiiUso del ratón .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xviCopiar y pegar un texto con X .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xviAún hay más.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xviiRegístrese para obtener soporte .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii

Parte I El sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

Capítulo 1 Estructura del sistema de fic heros . . . . . . . . . . . . . . . . . . . . . . 211.1 ¿Por qué compartir una estructura común? .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211.2 Vista preliminar al estándar de jerarquía del sistema de ficheros (FHS) .. . 211.3 /proc y sus" ficheros" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261.4 Directorios especiales de Red Hat Linux .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

Capítulo 2 Usuarios y grupos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292.1 Herramientas para usuarios y gestión de grupos .. . . . . . . . . . . . . . . . . . . . . . . . . . . . 292.2 Usuarios estándar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292.3 Grupos estándar. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302.4 Grupos privados de usuarios. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

Capítulo 3 Proceso de arranque , inicio y cierre delsistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

3.1 Introducción .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353.2 Entre bastidores en el proceso de arranque. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353.3 Información sobre Sysconfig . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443.4 Niveles de ejecución Init . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

iii

Page 4: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

3.5 Utilidades Initscript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 583.6 Ejecutar programas en el inicio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 593.7 Apagar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 593.8 Diferencias en el proceso de arranque en otras arquitecturas .. . . . . . . . . . . . . 60

Capítulo 4 Lightweight Director y Access Protocol (LDAP) . 614.1 ¿Qué es LDAP? .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 614.2 Ventajas y desventajas de LDAP ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 614.3 Uso de LDAP... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 624.4 Terminología LDAP.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 634.5 Mejoras de OpenLDAP 2.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644.6 Ficheros OpenLDAP .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644.7 Demonios y utilidades OpenLDAP... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 664.8 Módulos para añadir funcionalidad a LDAP .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 674.9 LDAP How To: Resumen breve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 684.10 Configurar su sistema para la autentificación mediante OpenLDAP.. . . . . . . 684.11 Recursos adicionales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

Capítulo 5 Sistema de verificación de tarjeta de crédito(CCVS). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

5.1 Usos de CCVS... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 735.2 Proceso de verificación de la tarjeta de crédito . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 755.3 Todo lo que necesita para ejecutar CCVS .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 755.4 Instalación de CCVS .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 785.5 Antes de configurar CCVS ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 785.6 Configuración de CCVS ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 795.7 Cuentas mercantiles múltiples .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 855.8 Inicio de CCVS... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 855.9 Consideraciones especiales sobre el lenguaje.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 865.10 Soporte para CCVS ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 865.11 Recursos adicionales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

Capítulo 6 Sendmail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

iv

Page 5: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

6.1 Introducción a Sendmail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 896.2 La instalación Sendmail por defecto.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 906.3 Cambios comunes de configuración .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 916.4 Detener Spam ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 926.5 Uso de Sendmail con LDAP.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 936.6 Recursos adicionales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

Parte II La seguridad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

Capítulo 7 Elementos básicos de seguridad de Red Hat . . . . 997.1 El dilema de seguridad inevitable. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 997.2 Enfoque activo contra pasivo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1007.3 El desarrollo de políticas de seguridad.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1027.4 Más allá de la protección del root. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1037.5 La importancia de las contraseñas seguras .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1047.6 Seguridad de redes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1057.7 Recursos suplementarios. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106

Capítulo 8 Módulos de autentificación conectab les (PAM) . 1098.1 Las ventajas de PAM.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1098.2 Ficheros de configuración PAM ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1108.3 Contraseñas shadow.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1158.4 El uso de rlogin, rsh, y rexec con PAM ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1158.5 Otros recursos .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116

Capítulo 9 Uso de Kerber os 5 en Red Hat Lin ux . . . . . . . . . . . . . . . . . . 1199.1 ¿Por qué usar Kerberos? .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1199.2 ¿Por qué no usar Kerberos? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1199.3 Terminología Kerberos .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1209.4 Modo en que funciona Kerberos .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1219.5 Configuración de un servidor Kerberos 5 en Red Hat Linux 7.1 .. . . . . . . . . . . 1239.6 Configuración de un cliente Kerberos 5 en Red Hat Linux 7.1 .. . . . . . . . . . . . . 1259.7 Kerberos y Pluggable Authentication Modules (PAM) .. . . . . . . . . . . . . . . . . . . . . . . 126

v

Page 6: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

9.8 Recursos adicionales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127

Capítulo 10 Instalación y configuración de Tripwire . . . . . . . . . . . . . . 12910.1 Cómo usar Tripwire.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12910.2 Instrucciones de instalación .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13110.3 La ubicación de los ficheros.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13410.4 Los componentes de Tripwire .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13410.5 Modificación del fichero de política .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13510.6 La selección de las frases de contraseña.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13610.7 Inicialización de la base de datos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13610.8 Ejecución de un control de integridad .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13710.9 Impresión de informes .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13710.10 Actualización de la base de datos después de un control de integridad .. . 14010.11 Actualización del fichero de política . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14110.12 Tripwire y el correo electrónico.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14210.13 Otros recursos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143

Capítulo 11 Protocolo SSH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14511.1 Introducción .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14511.2 Secuencia de eventos de una conexión SSH ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14611.3 Capas de seguridad SSH... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14811.4 Ficheros de configuración OpenSSH... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15011.5 Más que una shell segura .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15211.6 Requisitos de SSH para conexiones remotas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154

Capítulo 12 Contr ol de acceso y privilegios . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15712.1 Utilidades Shadow... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15712.2 Configuración del acceso de consola .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15812.3 El grupo floppy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162

Parte III Apac he . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163

Capítulo 13 Uso de Apac he como servidor Web segur o . . . . . . . 165

vi

Page 7: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

13.1 Introducción .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16513.2 Reconocimientos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16613.3 Introducción a los paquetes relacionados con la seguridad .. . . . . . . . . . . . . . . . 16613.4 ¿Cómo instalar el servidor seguro? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16913.5 Instalación de un servidor seguro con Red Hat Linux . . . . . . . . . . . . . . . . . . . . . . . . 16913.6 Actualización desde una versión previa de Red Hat Linux. . . . . . . . . . . . . . . . . . . 17013.7 Instalación del servidor seguro después de la instalación de Red Hat

Linux .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17213.8 Actualización desde una versión previa de Apache . . . . . . . . . . . . . . . . . . . . . . . . . . 17313.9 Introducción a certificados y seguridad .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17413.10 Uso de claves pre-existentes y certificados .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17513.11 Tipos de certificados .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17613.12 Generar una clave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17713.13 Generar una petición de certificado para enviar a una CA.. . . . . . . . . . . . . . . . . . 17913.14 Creación de un certificado auto-firmado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18113.15 Prueba de su certificado. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18213.16 Acceso a su servidor seguro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18313.17 Recursos adicionales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184

Capítulo 14 Módulos y directiv as de Apac he . . . . . . . . . . . . . . . . . . . . . . . . . . 18714.1 Arranque y apagado del httpd.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18814.2 Directivas de configuración en el fichero httpd.conf . . . . . . . . . . . . . . . . . . . . . . . . . . 18814.3 Añadir módulos a su servidor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21014.4 Utilización de máquinas virtuales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213

Parte IV Apéndices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217

Apéndice A Parámetr os generales y módulos . . . . . . . . . . . . . . . . . . . . . . . . 219A.1 Especificación de los parámetros del módulo .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220A.2 Parámetros del módulo para el CD-ROM. .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220A.3 Parámetros SCSI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223A.4 Parámetros Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227

vii

Page 8: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Apéndice B Intr oducci ón a la creación de par ticiones . . . . . . . . . . 235B.1 Conceptos básicos sobre el disco duro .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235

Apéndice C Discos de driver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257C.1 ¿Por qué necesito un disco que contenga un driver? .. . . . . . . . . . . . . . . . . . . . . . . 257

Apéndice D RAID (Redundant Arra y of Independent Disks) . 261D.1 ¿Qué es el RAID? .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261

Apéndice E PowerTools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265E.1 ¿Qué son las PowerTools? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265E.2 Paquetes de PowerTools. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265E.3 Instalación de los paquetes PowerTools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267E.4 Desinstalar PowerTools .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268

viii

Page 9: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 0.1:Cómo encontrar la documentación apropiada ix

Intr oducciónBienvenidoa la Official RedHat Linux ReferenceGuide.

La Official RedHat Linux ReferenceGuidecontienela informaciónnecesariasobreel sistemaRedHat Linux. Desdeconceptosfundamentales,talescomola estructuradel sistemadeficherosdeRedHat Linux, al particionamientodediscosy el controldeautentificación.Esperamosqueestemanualseaun recursovaliosoparausted.

Estaguíale ayudará a aprendermássobreel funcionamientode su sistemaRedHat Linux. Podráprofundizaren los siguientestemas:

• Conceptossobrela creacióndeparticiones— Unaintroducciónal particionamientodelosdiscosy técnicasparaubicarmásdeun sistemaoperativo enun solodiscoduro.

• ArranquedeRedHat Linux — Informaciónsobrelos nivelesdeejecución, los directoriosrc.dy el mododeiniciar susaplicacionespreferidasal mismotiempoquearranca.

• Seguridaddelsistemay dela red— Averigüelosmétodosmáscomunesusadosporlosagresoresparacomprometersusistemay cómoprevenir los problemasdeseguridad.

• ConceptossobreRAID— Creacióndevariasunidadesdediscoqueactúancomounaúnicaunidadlógica,consiguiendounamayorejecucióny fiabilidad.

• Instalación deun servidorWebseguro — Añadiendocapacidadesdeencriptación a suservidorWeb Apache.

Antesde leer estaguía,deberíaestarfamiliarizadocon los contenidosde la Official RedHat Linuxx86InstallationGuiderelativosa la instalación,la Official RedHat LinuxGettingStartedGuideparaconceptosbásicossobreLinux y la Official RedHat Linux CustomizationGuideparainstruccionespersonalizadas.La Official RedHat Linux ReferenceGuidecontieneinformación sobretemasmuyespecíficosqueno afectana todoslos usuarios,dependiendodel usoquesele quieredaral sistemaRedHat Linux.

LasversionesenHTML y enPDFdetodoslosmanualesoficialesdeRedHatLinux estándisponiblesen líneaen http://www.redhat.com/support/manuals.

Cómo encontrar la documentaci ón apropiadaNecesitadocumentaciónapropiadaa su nivel de experienciacon Linux. De lo contrario,sesentiráabrumadoo no encontrarála informaciónnecesariapararespondera susdudas.La Official RedHatLinux ReferenceGuide tratade aspectosmástécnicosy de opcionesde su sistemaRedHat Linux.Estasecciónle ayudará a decidir, dependiendodela informaciónquenecesite,si leerestemanualuotrosmanualesRedHat Linux, incluidoslos recursosenlínea.

Page 10: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

x Introducción

PodemosestablecertrescategoríasdepersonasqueusanRedHatLinux, e intentarsermásexplícitosencuantoa la documentacióny fuentesdeinformaciónnecesarias.Podemosempezarviendoel niveldeconocimientoquetieneunomismo.Aquí hacemosreferenciaa lastrescategoríasbásicas:

Nuevo en Linux

NuncahausadoelsistemaoperativoLinux osimilar;o tienemuypocosdatosacercadeél. Tieneonohatenidoexperienciasusandootrossistemasoperativos(comoporejemploWindows). ¿Eséstasusituación? Si esasí,por favor vuelva a la Documentaciónpara usuariosprincipiantesdeLinux.

Alguna experienciacon Linux

HainstaladoconéxitoLinux y lo hausadoconanterioridad(peronoRedHatLinux) O bienhatenidoexperienciasequivalentesconotrossistemasoperativosparecidosaLinux ¿Seencuentraustedentreestetipo depersonas?Si esasí,vuelva a leerla Para los másexperimentados.

Usuario avanzado

Hainstaladoy usadoRedHatLinux conéxitoenotrasocasiones.SiesasílealaDocumentaciónpara gurúsdeLinux

Documentación para usuarios principiantes de Lin uxParaalguiennuevo enLinux, la cantidaddeinformacióndisponiblesobrecadatema,comoimprimir,arrancarel sistemao particionarsudiscoduro,puedeserabrumadora.Esconvenientequeprimeroadquieraunabuenabasedeconocimientoscentradosentornoa cómofuncionaLinux antesdeentraren temasmásavanzados.

Suprimerobjetivo deberíaserel deobtenerdocumentación útil. De lo contrariosesentiríafrustradonadamásempezar.

Tratedeadquirirel siguientetipo dedocumentación:

• UnabrevehistoriadeLinux— MuchosaspectosdeLinux estánligadosaprecedenteshistóricos.Un pocodeculturasobreLinux puedeserútil a la horadesolventarproblemaspotencialesantesdequesurjan.

• ExplicaciónacercadecómofuncionaLinux— Aunquenoesnecesarioprofundizarenla mayoríadelos aspectosdel kernelLinux, esconvenientesaberalgosobrecómohasurgido Linux. Puedeserespecialmenteimportantesi estátrabajandoconotrossistemasoperativos,ya quealgunasdelassuposicionesquetienesobrecómofuncionanlos ordenadorespuedenno cumplirseenLinux.

• Vista preliminar a un comandodeintroducción(conejemplos)— Probablementeestoeslo másimportanteabuscarenla documentaciónlinux. La filosofíadeLinux esqueesmejorusarpeque-ñoscomandosconectadosdediferentesmodos,queutilizar pocoscomandosamplios(y comple-jos)quehagantodoel trabajoporsi mismos.Sinalgunosejemplosqueilustrenel acercamientoa

Page 11: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 0.1:Cómo encontrar la documentación apropiada xi

Linux parahacercosas, sepuedesentirintimidadopor el grannúmerodecomandosdisponiblesenel sistemaRedHat Linux.

TengaencuentaquenotienequememorizartodosloscomandosLinux. Existendiversastécnicasparaayudarlea encontrarel comandoespecífico quenecesitapararealizarun tareadeterminada.Tan sólo necesitasaberel modoen queLinux funciona,lo quenecesitallevar a caboy cómoaccedera la herramientaquele darálasinstruccionesexactasparaejecutarel comando.

La Official RedHat Linux x86InstallationGuideconstituyeunareferenciaexcelentedeayudaparainstalary configurarconéxito susistemaRedHat Linux. La Official RedHat Linux GettingStartedGuidecubrela historiade Linux, los comandosde sistemabásicos,GNOME, KDE, RPM y otrosmuchosconceptosfundamentales.Debería empezarcon estosdos libros y usarlosparaconseguirunabasede conocimientosobresu sistemaRedHat Linux. Verácomodespuéslos conceptosmáscomplicadosempezarána tenersentido,unavezquetengalasconceptosbásicosclaros.

A partedeleer los manualesRedHat Linux, existenotrasfuentesexcelentesdedocumentación dis-poniblespor pocodineroo gratis.

Intr oducción a sitios Web Lin ux• http://www.redhat.com— enel sitio Web,podrá encontrarenlacesdel proyectodedocumenta-

ción Linux (LDP), versionesen líneade las FAQs (preguntasy respuestasmásfrecuentes),unabasededatosquepuedeayudarleen la búsquedadegruposdeusuariosLinux cercanosa usted,informacióntécnicaenla basedeconocimientosdesoportedeRedHat y muchomás.

• http://www.linuxheadquarters.com— El sitio Web de la sedecentralde Linux le ofreceguíasfácilesparaunavariedaddetareasLinux.

Intr oducción a los newsgr oups Lin uxPuedeparticiparennewsgroupsviendolasconversacionesdeotrosintentandosolventarproblemas,obienpuedeparticiparactivamentepreguntandoy contestando.LosusuariosexperimentadosdeLinuxle serándeunagranayuda— especialmentesi suspreguntasvana pararal puntodereuniónjusto.Si no tieneaccesoa unaaplicaciónde lectordenoticias,puedeaccedera estainformaciónvía weben http://www.deja.com.Existendocenasde newsgroupsrelacionadoscon Linux entrelas queseincluyen:

• linux.help— Un buenlugardondeencontrarayudadecompañerosusuariosdeLinux.

• linux.redhat— Estenewsgroupcubreaspectosespecíficosa RedHat Linux.

• linux.redhat.install— Parapreguntassobreinstalacióno paraver cómootroshanresueltopro-blemassimilares.

• linux.redhat.misc— Preguntaso peticionesdeayudaquenoencajanenningunadelascategoríastradicionales.

Page 12: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

xii Introducción

• linux.redhat.rpm— Sitio dondedirigirsesi tieneproblemasconel usodeRPM paraconseguiralgúnpropósitoenparticular.

Libr os sobre Lin ux

• RedHat Linux for Dummies,2* edicióndeJon"maddog"Hall; IDG

• SpecialEdition UsingRedHat LinuxdeAlan Simpson,JohnRayy NealJamison;Que

• RunningLinux deMatt Welshy Lar Kaufman;O’Reilly & Associates

• RedHat Linux 7 UnleasheddeWilliam Ball y David Pitts;Sams

Los librosaquísugeridosconstituyenfuentesexcelentesdeinformaciónparaunconocimientobásicodel sistemaRedHat Linux. Paraunainformaciónmásdetalladasobrelos diversostemasqueapare-cerána travésdel libro, muchosdelos capítuloslistantítulosdelibros específicos,habitualmenteenla partedeRecursosadicionales.

Para los más experimentadosSi ha utilizado otrasdistribucionesLinux, tendráun dominio básicode los comandosusadosmásfrecuentemente.PuedequehayainstaladosupropiosistemaLinux einclusohayadescargadoy creadosoftwarequeha encontradoen Internet. Despuésde instalarLinux, no obstante,los puntossobreconfiguraciónpuedenserconfusos.

La Official RedHat Linux CustomizationGuideestádiseñadaparaayudara explicar los diversosmodosen quesusistemapuedeserconfigurado. Utilice estemanualparaaprenderlasopcionesdeconfiguración y cómoponerlasenpráctica.

Cuandoinstale software que no aparezcaen la Official Red Hat Linux CustomizationGuide, leseráútil ver lo queotra genteen las mismascircunstanciasha hecho. Los documentosHOWTOdel LDP (proyecto de documentaciónde Linux), disponibles en http://www.redhat.com/mi-rrors/LDP/HOWTO/HOWTO-INDEX/howtos.html, documentanaspectosparticularesde Linux,desdecambiosdel kernelhastael usodeLinux enunaestacisndetrabajo"radio amateur".

Documentación para gurús de Lin uxSi esunusarioRedHatLinux desdehacetiempo.sabráprobablementequeunodelosmejoresmodosparaentenderunprogramaenparticularesleyendosucódigofuentey/osusarchivosdeconfiguración.UnagranventajadeRedHat Linux esla disponibilidaddel códigofuenteparacualquiera.

Obviamente,no todoel mundoesprogramadordeC, por lo queel códigofuenteno le puedeserdeayuda.Sinembargo,si tienelosconocimientosy la habilidadnecesariosparaleerlo,el códigofuentealbergatodaslasrespuestas.

Page 13: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 0.2:Convenciones del documento xiii

Convenciones del documentoCuandoleaestemanual,veráquealgunaspalabrasaparecenconfuentes,tamañosy grosoresdiferen-tes. Estemétodode evidenciadoessistemático;palabrasdiferentessonrepresentadasen el mismoestilo paraindicar su inclusiónen unacategoríaespecífica. Los tipos de palabrasrepresentadosdeestemodoincluyen:

commando

LoscomandosLinux (y otroscomandosdelsistemaoperativo, cuandosonusados)serepresen-tandeestemodo.Esteestilodeberíaindicarlequepuedeintroducirla palabrao fraseenla líneadecomandosy pulsar[Intro] parasolicitaruncomando.A veces,uncomandocontienepalabrasqueveráenun estilodiferentecuandoaparezcansolas(por ejemplo,nombresdearchivo). Enestoscasos,sonconsideradascomopartedel comando,demodoquela fraseenteraaparecerácomoun comando.Ejemplo:

Useel comandocat testfile paravisionarloscontenidosdeunarchivo, llamadostest-file , enel directorioenel queseestá trabajando.

nombre de archivo

Los nombresdearchivo, nombresdedirectorio,rutasy nombresdepaquetesdel RPM sepre-sentande estemodo. Esteestilo deberíaindicar queun archivo o un directorioen particularexistenconesenombreensusistemaRedHat Linux. Porejemplo:

El archivo .bashrc del directorioraíz,contienedefinicionesde bashshell y aliasesparasupropiouso.

El archivo /etc/fstab contieneinformaciónsobrelos diversosdispositivos de sistemaysistemade archivos.

El directorio/usr/share/doc contienedocumentaciónparavariosprogramas.

Instaleel RPM de webalizer si quiereutilizar un programade análisisde archivo log delservidorweb.

aplicación

Esteestilo le indica queel programanombradoesunaaplicaciónparael usuariofinal. Porejemplo:

UseNetscapeNavigator paranavegarpor la web.

[tecla]

Unatecladel tecladoapareceenesteestilo. Ejemplo:

Parausarla funcionalidaddecompletarpalabras[Tab], escribauncaráctery pulsela tecla[Tab].Suterminalvisualizará la lista dearchivosenel directorioqueinician conesaletra.

Page 14: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

xiv Introducción

[tecla]-[combinación]

Unacombinacióndeteclasserepresentadel siguientemodo.Porejemplo:

La combinacióndeteclas[Ctrl]-[Alt]-[Atrás] reiniciaráel sistemaX Window.

texto encontrado en una interfaz GUI

Un pequeña palabrao fraseencontradaen unapantallao ventanade interfaz GUI apareceráenesteestilo. Cuandoaparezca,seusaparaidentificar un pantallaGUI o un elementoenunapantallaGUI (por ejemplo,un texto asociadoconunacasilladeverificacióno un campo).Porejemplo:

En la pantalladeGNOME Centr o de contr ol , ustedpuedepersonalizarsugestordeventanasGNOME.

Seleccionela casillade verificacióncontrase ña requerida si deseaquesu salvapantallaslepidaunacontraseñaantesdedeterse.

nivel superior de un menú en una pantalla o ventana GUI

Cuandoveaunapalabraenesteestilo,significa quela palabraestaenel nivel superiordeunmenúdescendente.Si haceclick enla palabradela pantallaGUI, deberíaaparecerel restodelmenú. Ejemplo:

Enun terminalGNOMEbajoConfiguración , verálossiguientescomponentesdelmenú: Pre-ferencias , Terminal de reinicio , Reiniciar y borrar y Selector de color .

SinecesitaseleccionarunasecuenciadecomandosenelmenúGUI, éstosseránmostradoscomoenel siguienteejemplo:

Hagaclick enProgramas =>Aplicaciones =>Emacs Parainiciar el editordetexto Emacs.

botón de una pantalla o ventana GUI

Esteestiloindicael texto queencontraráal hacerclick enunbotóndela pantallaGUI. Ejemplo:

Hagaclick enel botónAtrás paravolver a la última páginawebquehavisto.

salida de datos del ordenador

Cuandoveael texto en esteestilo,significa queel ordenadorvisualizael texto en la líneadecomandos.Verárespuestasa comandosqueustedhaescrito,mensajesdeerrore indicadoresdecomandosinteractivosparasuentradadurantelos scriptso programasvisualizadosdeestemodo. Ejemplo:

Useel comandols paravisualizarel contenidodeun directorio:

$ lsDesktop axhome logs nirvana.gifMail backupfiles mail reports

Page 15: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 0.2:Convenciones del documento xv

La salidaderespuestaal comando(enestecaso,loscontenidosdeldirectorio)aparecenenesteestilo.

indicador de comandos

Un indicadorde comandos,esla forma quetieneel ordenadorde decirlequeestá preparadoparaquela entradadedatos.Ejemplos:

$

#

[truk@bleach truk]$

leopard login:

entrada de datos de usuario

Texto quedebeescribir el usuario,en la líneade comandoso en la casilladel texto en unapantallaGUI. En el siguienteejemplo,el texto apareceenesteestilo:

Paraarrancarsusistemaenunaprogramade instalaciónen modotexto, deberáescribiren elcomandotexto enel indicadordecomandosboot: .

Otro ejemplo,conla palabraroot visualizadaparaqueel usuariodebaescribiralgodentro:

Si necesitaregistrarsecomoroot cuandoseregistrepor primeravezensusistemay va a utili-zar la pantallagráfica de login, escribaroot . Tecleela contraseñaderoot enel indicadordecomandosPassword .

entrada de glosario

Palabraqueapareceenel glosarioy queapareceenel documentoenesteestilo. Ejemplo:

El demonio lpd gestionalaspeticionesdeimpresión.

Enestecaso,el estilodela palabrademoniodebería indicarlequeunadefinición dela palabraestádisponibleenel glosario.

Seusan,además,diferentesestrategiasparacentrarsu atenciónen determinadainformación. Estainformaciónserámarcadaenordendeimportanciaparasusistemacomo:nota,advertenciaoatención.Por ejemplo:

NotaRecuerdequeLinux essensiblea minúsculasy mayúsculas.Esdecir, no eslo mismoescribirrosa,queROSA o rOsA.

Page 16: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

xvi Introducción

ATENCION�

No hagatareasrutinariascomoroot — useunacuentadeusuarionormalamenosquenecesiteusarla cuentaderootparaadministrarsusistema.

ADVERTENCIA

Si escogeno hacerun particionamiento manual, una instalación de tiposervidor borrará todaslas particiones existentesen todoslos discosdu-ros.No escojaestetipo de instalación a menosqueestéseguro dequenotiene datosque necesitesalvar.

Uso del ratónRedHat Linux estádiseñadoparausarun ratón de tresbotones.Si tieneun ratónde dosbotones,deberíahaberseleccionadola emulaciónde tresbotonesduranteel procesode instalación. Si estáutilizandola emulacióndetresbotones,pulsarlosdosbotonesdel ratónal mimo tiempocorrespondea pulsarel tercerbotón(el central).

Enestedocumento,cuandosele indicaquehagaclick conel ratónsobrealgo,significapulsarel botónizquierdo.Detenerqueusarelbotóncentraloderecho,leseráindicadoexplícitamente.(Naturamente,todoestoseráal revéssi suratónhasidoconfiguradoparaunapersonazurda.)

La frase"arrastrary soltar" le debeser familiar. Si se indica arrastrary soltarun elementode suescritorioGUI, hagaclick enesteelementoy mantengael botóndel ratónpulsadomientrasarrastraelelementomoviendoel ratónhaciala nueva ubicación.Cuandohayaalcanzadola ubicacióndeseada,dejedeapretarel botón del ratónparasoltarel elemento.

Copiar y pegar un texto con XCopiary pegarun texto medianteel usodel ratóny del sistemaX Window esfácil. Paracopiaruntexto, hagaclick y arrastreel ratónsobreel texto pararesaltararlo.Paracopiarloenalgúnsitio, hagaclick enel botóncentraldel ratónenel lugarjustodondequierecopiarel texto.

Page 17: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 0.6:Regístrese para obtener soporte xvii

Aún hay másLa Official RedHat Linux ReferenceGuideconstituyepartedel compromisodeRedHat depropor-cionarun soporteútil y oportunoa los usuariosdeRedHat Linux. Lasedicionesfuturasalbergaráninformaciónampliadasobrelos cambiosenla estructuradel sistemay la organización,herramientasdeseguridadpotentesy otrosrecursosquele ayudarána ampliarlasposibilidadesdesusistemaRedHat Linux y suhabilidadparausarlo.

Aquí esdondele pedimossuayuda.

¡Necesitamos saber su opini ón!Si encuentraun errorenla Official RedHat Linux ReferenceGuideo si tieneideasparamejorarestemanual,nosencantaríasaberlo.EnvíeuncomentarioaBugzilla ( http://bugzilla.redhat.com/bugzilla)mencionandola Official RedHat Linux ReferenceGuide.

Asegúresedemencionarel identificadordel manual:

rhl-rg(ES)-7.1-Print-RHI (2001-02-21T10:50-0500)

Si mencionael identificadordel manual,sabremosconexactitudquéversióndela guíatiene.

Si tienealgunasugerenciaparamejorarla documentación,intenteser lo másespecífico posiblealdescribirla.Si haencontradounerror, incluyael númerodeseccióny unapartedel texto dealrededorparaquepodamosencontrarlofácilmente.

Regístrese para obtener sopor teSi tieneunaediciónoficial deRedHatLinux 7.1,noolvideregistrarseparaobtenerlosbeneficiosquele correspondencomoclientedeRedHat.

Tienederechoa todosestosbeneficios, dependiendodel productooficial RedHat Linux quehayacomprado:

• Soporteoficial RedHat— ObtengaayudaconlaspreguntasdeinstalacióndelequipodesoportedeRedHat, Inc..

• RedHat Network — Actualicesuspaquetesconfacilidady recibamensajesdeseguridadperso-nalizadosparasusistema.Vayaa http://www.redhat.com/network paramásdetalles.

• Accesoprioritario FTP— No másvisitasa sitiosespejo.Los propietariosdeRedHat Linux 7.1recibenaccesogratuitoa priority.redhat.com,el servicioFTP preferidopor los clientesde RedHat,queofrececonexionesconelevadoanchodebandanochey día.

• E-Newsletteroficial deRedHat — Cadames,obtengalasúltimasnoticiasinformacionessobreproductosdirectamentedeRedHat.

Page 18: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

xviii Introducción

Pararegistrarseparaobtenersoportetécnico,vayaa http://www.redhat.com/apps/activate.Encontraráel ID desuproductoenunatarjetanegra,roja y blancaenla cajaoficial deRedHat Linux.

Paraleermásacercadel soportetécnicoparaRedHat Linux, remítaseal apéndiceObtencióndeso-portetécnicoenla Official RedHat Linux x86InstallationGuide.

¡Buenasuertey graciaspor haberescogidoRedHat Linux!!

Equipodedocumentación deRedHat

Page 19: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Parte I El sistema

Page 20: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la
Page 21: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 1.2:Vista preliminar al estándar de jerarquía del sistema de ficheros (FHS) 21

1 Estructura del sistema de fic heros1.1 ¿Por qué compar tir una estructura común?Unaestructuradesistemadeficherosdeunsistemaoperativo esel nivel másbásicodeorganización.Casisiempreun sistemaoperativo interactúaconsususuarios,aplicacionesy modelosdeseguridadquedependendelamaneraenquealmacenalosficherosenundispositivodealmacenamientoprimario(normalmenteunaunidaddediscoduro).Porvariosmotivos,esmuy importantequelosusuarios,asícomolosprogramasparala instalacióny demás,seancapacesdereferirseaunaspautascomunesparasaberdondeescribiry leerlos ficherosbinarios,la configuración, registroy otrosficheros.

Un sistemadeficherossepodríaresumirentérminosdedoscategoríasdiferentesdeficheros:

• ficheroscompartiblesvs. no compartibles

• ficherosvariablesvs. estáticos

Los ficheroscompartibles sonaquéllosa los quesepuedeaccederdesdevarioshosts;mientrasquelos ficherosno compartibles no estándisponiblesa todoslos hosts.Los ficherosvariables puedencambiarencualquiermomentosinunaintervencióndelgestordesistemas(activao pasiva); losfiche-rosestáticos, talescomodocumentacióny binarios,nocambiansinunaactuaciónporpartedelgestordesistemaso deunaagentequeel gestordesistemashayaescogidopararealizarestatarea.

El hechodequeestosficherosseanvistosdeestamanerasedebeal tipo depermisosotorgadosporel directorioquelos sostiene.El modoenqueel sistemaoperativo y sususuariosnecesitanutilizarlos ficherosdeterminael directorioenel cualestosficherosdeberíanestarubicados,dependiendodesi el directorioestámontadosóloenmodoescriturao enmodolectura-escritura.El nivel másaltodeestaorganizaciónescrucial,de la mismamaneraqueel accesoa los directoriosmarcadospuedeserrestringidoo sepodríanmanifestarproblemasdeseguridadsiel nivelmásaltosequedadesorganizadoo sin unaestructuraampliamenteutilizada.

No obstante,el hechodetenersimplementeunaestructurano significa muchoa menosqueéstaseaestándar. Lasestructurascompetitivaspuedencausarmásproblemasdelos quesolucionan.Porestarazón,RedHat ha escogidola estructurade sistemade ficherosy la ha extendidoligeramenteparaacomodarlos ficherosespecialesusadosenRedHat Linux.

1.2 Vista preliminar al estándar de jerar quía delsistema de fic heros (FHS)RedHatsehacomprometidoarespetarel Estándar deJerarquía del SistemaFicheros(FHS del in-glésFilesystemHierarchyStandard),undocumentodeconsensoquedefinelosnombresy lasituación

Page 22: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

22 Capítulo 1:Estructura del sistema de ficheros

demuchosficherosy directorios.En el futuro seseguiráel estándarparaasegurarla compatibilidaddeRedHat Linux

El documentoquedefine el FHSesla referenciaautorizadaparacualquiersistemacompatibleFHS,sin embargo el estándardapie a la extensibilidaddeunasáreaso no define otras.En estasecciónseproporcionaunresumendelestándary unadescripcióndeaquellaspartesdel sistemadeficherosqueno cubreel estándar.

El estándarcompletoestá disponibleen:

http://www.pathname.com/fhs

El cumplimientodel estándarsignifica variascosas,los dosaspectosmásimportantessonla compa-tibilidad conotrossistemasquesiguenel estándary la capacidaddepodermontarla partición/usrenmodosólo lecturapuescontieneejecutablescomunesy no está pensadoparaseralteradapor losusuarios.Por estemotivo, /usr puedesermontadodirectamentedesdeel CD-ROM o desdeotroordenadorvía NFSenmodosólo lectura.

1.2.1 Organización de FHSLos directoriosy ficherosaquíanotados,sonsólo un subconjuntode los especificadospor el FHS.Véasela última versión del FHSparaunadescripción detallada.

Directorio /dev

El directorio /dev contienearchivos querepresentandispositivos del sistema.Estosarchivos sonesencialesparael correctofuncionamientodel sistema.

Directorio /etc

El directorio/etc estáreservadoparaarchivosdeconfiguraciónqueafectandirectamenteasuorde-nador. No debencolocarseejecutablesen /etc . Los ejecutablesqueantiguamentesecolocabanen/etc deberíanestaren /sbin o posiblementeen /bin .

Los directoriosX11 y skel debensersubdirectoriosde /etc :

/etc|- X11|- skel

El directorioX11 esparaarchivosdeconfiguracióndeX11 comoXF86Config . El directorioskelesparaarchivos"esqueleto"(delinglés"skeleton")parausuarios,archivosqueseutilizanpararellenarel directorioraízdeun usuariocuandoésteescreado.

Page 23: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 1.2:Vista preliminar al estándar de jerarquía del sistema de ficheros (FHS) 23

Directorio /libEl directorio/lib deberíacontenersólo las libreríasnecesariasparaejecutarlos binariosen /biny /sbin . Estasimágenesdelibreríascompartidassonparticularmenteimportantesparaarrancarelsistemay ejecutarcomandosenel sistemadeficherosderoot.

Directorio /mntEl directorio/mnt serefierea sistemasdeficherosmontadostemporalmente,talescomoCD-ROMsy discosflexibles.

Directorio /optEl directorio/opt proporcionaun áreaparaalmacenarhabitualmentepaquetesdesoftwaredeunaaplicaciónestáticay amplia.

Parapaquetesenlosqueseeviteponerficherosatravésdelsistemadeficheros,proporcionaunsistemadeorganizaciónpredecibley lógicobajoel directoriodepaquetes.Estole aportaal gestordelsistemaun modosencillodedeterminarel rol decadaficheroenun paqueteparticular.

Porejemplo,si sample fueseel nombredeun paquetedesoftwareparticularlocalizadoen /opt ,todos sus ficherospodríanser emplazadosen directoriosdentro de /opt/sample , tales como/opt/sample/bin parabinariosy /opt/sample/man parapáginasdemanual.

Los paquetesgrandesqueabarcandiferentessubpaquetes,cadauno de los cualesdesempeñanunatareaespecifica, tambiénfuncionancon /opt , aportandoa estegranpaqueteun modoestándardeorganizarse.Deestemodo,el paquetesample tendrádiferentesherramientascadaunadelascualesirá a sussubdirectorios,talescomo /opt/sample/tool1 y /opt/sample/tool2 , cadaunodelos cualespuedetenersupropiobin , many otrosdirectoriossimilares.

Directorio /sbinEl directorio/sbin esparaejecutablesusadossólopor el usuarioroot. Los ejecutablesen /sbinsólo seusanparaarrancary montar/usr y ejecutaroperacionesderecuperacióndelsistema.El FHSdice:

"/sbin contienetípicamentearchivosesencialesparaarrancarel sistemaademásdelosbinariosen /bin . Cualquierarchivo ejecutadotras /usr , serámontado(si no surgeningúnproblema)y ubicadoen/usr/sbin . Losbinariosdeadministracióndesistemasólolocal, deberíanserubicadosen /usr/local/sbin .

Los siguientesprogramasdeberíanencontrarse,al menos,en /sbin :

arp, clock, getty, halt, init, fdisk,fsck.*, ifconfig, lilo, mkfs.*, mkswap, reboot,route, shutdown, swapoff, swapon, update

Page 24: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

24 Capítulo 1:Estructura del sistema de ficheros

Directorio /usrEl directorio/usr esparaarchivosquepuedansercompartidosatravésdetodoel sitio. El directorio/usr habitualmentetienesupropiaparticióny deberíasermontableensólo lectura.Los siguientesdirectoriosdeberíansersubdirectorios/usr :

/usr|- bin|- doc|- etc|- games|- include|- kerberos|- lib|- libexec|- local|- man|- sbin|- share|- src|- X11R6

El directoriobin contieneejecutables,doc contienepáginasdedocumentaciónincompatiblesconFHS,etc contieneficherosdeconfiguracióndesistema,games esparajuegos,include contienelos ficherosdecabeceraC, kerberos contienebinariosy muchosmásficherosdeKerberosy libcontieneficherosobjetoy libreríasquenoestándiseñadasparaserdirectamenteutilizadasporusuarioso scriptsdeshell. El directoriolibexec contieneprogramasdepequeñaayudallamadospor otrosprogramas,sbin esparalos binariosde administracióndel sistema(aquéllosqueno pertenecena/sbin ), share contieneficherosqueno sondeunaarquitecturaespecífica, src esparael códigofuentey X11R6 esparael sistemaX Window (XFree86 deRedHat Linux).

Directorio /usr/localEl FHS dice:

"La jerarquía /usr/local esparausodel gestordel sistemaal instalarlocalmenteelsoftware. Necesitaserseguro paraser sobreescritocuandoel software del sistemaescompartibleentreun grupodehosts,perono seencuentraen /usr ."

El directorio/usr/local essimilar enestructuraal directorio/usr . Tienelos siguientessubdi-rectorios,quesonsimilaresa los del directorio/usr :

/usr/local|- bin|- doc|- etc

Page 25: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 1.2:Vista preliminar al estándar de jerarquía del sistema de ficheros (FHS) 25

|- games|- info|- lib|- man|- sbin|- src

Directorio /varYaqueel FHSrequierequeseacapazdemontar/usr ensólolectura,cualquierprogramaqueescribaficheroslog o quenecesitelos directoriosspool o lock deberíaescribirlosenel directorio/var .El FHSconstataque/var espara:

"…ficherosdedatosvariables.Estoincluyeficherosspool,deadministración,deregistroy ficherostemporales."

Los siguientesdirectoriosdeberíansersubdirectoriosde /var :

/var|- arpwatrch|- cache|- db|- ftp|- gdm|- kerberos|- lib|- local|- lock|- log|- named|- nis|- opt|- preserve|- run+- spool

|- anacron|- at|- cron|- fax|- lpd|- mail|- mqueue|- news|- rwho|- samba|- slrnpull

Page 26: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

26 Capítulo 1:Estructura del sistema de ficheros

|- squid|- up2date|- uucp|- uucppublic|- vbox|- voice

|- tmp|- www|- yp

Los ficheroslog desistematalescomomessages y lastlog estanen /var/log . El directorio/var/lib/rpm tambiéncontieneel sistemadedatosRPM.Losficheroslock vanen/var/lock ,habitualmenteen directoriosparticularespara el programaen el uso del fichero. El directorio/var/spool tiene subdirectoriospara varios sistemasque necesitanalmacenarlos ficherosdedatosdealmacenamiento.

1.2.2 /usr/local en Red Hat Lin uxEnRedHatLinux, el usodeldirectorio/usr/local esligeramentediferentedelo especificadoporFHS.El FHSestablecequeen/usr/local deberíamemorizarseel softwarequepermaneceseguroen las actualizacionede softwarede sistemas.Ya que las actualizacionesde sistemasde RedHatsehanrealizadodeformaseguracon /usr/local y Gnome-RPM, no necesitaprotegerarchivosponiéndolosen /usr/local . Le recomendamosqueuse/usr/local parael softwarelocal desumáquina.

Por ejemplo,si ustedha montado/usr mediantesólo lecturade NFSdesdeun hostlocal llamadojake . Si existeunpaqueteo programaquele gustaríainstalar, peronole esposibleescribirenjakedeberíainstalarlobajo /usr/local . Si haconseguidoqueel gestordesistemade jake instaleelprogramaen /usr , puededesinstalarlodesde/usr/local .

1.3 /proc y sus" fic heros"El directorio/proc contiene"ficheros"especialesqueo bienextraeninformacióndel kernelo bienla envíana éste.

No obstante,el directorio/proc esmuchomáspotentede lo queinicialmentesepuedapensar. Atravésdelos diversosficherosenestedirectorio(querealmenteno sonficherossino interfacesenelkernel),ungestordesistemapuedeutilizar /proc comounmétodofácil paraaccedera informaciónsobreelestadodelkernel,losatributosdelamáquina,losestadosdelosprocesosindividualesy muchomás.Al usarcat encombinaciónconlasinterfacesdentrode/proc , puedeaccederimmediatamentea unacantidadenormedeinformaciónsobrecualquiersistema.Veael ejemplo,si deseasabercómoestánasignadoslos registrosdememoriaensuordenador:

[truk@tictactoe /proc]$ cat iomem

Page 27: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 1.4:Directorios especiales de Red Hat Linux 27

00000000-0009fbff : System RAM0009fc00-0009ffff : reserved000a0000-000bffff : Video RAM area000c0000-000c7fff : Video ROM000f0000-000fffff : System ROM00100000-07ffffff : System RAM

00100000-002553d7 : Kernel code002553d8-0026d91b : Kernel data

e0000000-e3ffffff : VIA Technologies, Inc. VT82C597 [Apollo VP3]e4000000-e7ffffff : PCI Bus #01

e4000000-e4003fff : Matrox Graphics, Inc. MGAG200 AGPe5000000-e57fffff : Matrox Graphics, Inc. MGAG200 AGP

e8000000-e8ffffff : PCI Bus #01e8000000-e8ffffff : Matrox Graphics, Inc. MGAG200 AGP

ea000000-ea00007f : Digital Equipment Corporation DECchip 21140ea000000-ea00007f : eth0

ffff0000-ffffffff : reserved[truk@tictactoe /proc]$

Si seconectaraa unamáquinadesconociday quisierasabersu tipo deCPUy velocidad,puedeusarel siguientecomando:

cat /proc/cpuinfo

Sepuedenañadirotrosbits válidosde informaciónsobreel sistemadesdecmdline , meminfo ,partitions y version , entreotros.

Losdirectoriosen/proc simbolizanunainformaciónsobreunaaplicaciónparticularo proceso.Porejemplo,el directorio /proc/sys/kernel estálleno de informaciónsobreel kernel,comoporejemplo,el númeromáximodecadenas(threads-max ) y el númeromáximodemensajes(msg-max).

1.4 Directorios especiales de Red Hat Lin uxAdemásdelosarchivosconcernientesal sistemaRPMqueseencuentranen/var/lib/rpm (véaseel capítuloRPM paraobtenermásinformaciónsobreRPM), hayotrasdoslocalizacionesespecialesqueestánreservadasparala configuracióny el mantenimientodeRedHat Linux.

LasherramientasdeconfiguraciónproporcionadasporRedHatLinux instalanmuchosscripts,mapasdebitsy ficherosdetexto en/usr/lib/rhs . Yaqueestosficherossongeneradosporsoftwaredesusistema,probablementeno desearámodificar ningunodeellos.

Otra de las ubicacionesespeciales(/etc/sysconfig ) almacenala informaciónde la configura-ción. Muchosscriptsqueseejecutanal iniciar el sistema,usanlos ficherosdeestedirectorio. Estos

Page 28: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

28 Capítulo 1:Estructura del sistema de ficheros

ficherospuedensermodificados,perotambiénpuedenserconfigurandosusandoLinuxconf, unahe-rramientadelpaneldecontrolu otraherramientadeconfiguración.ConsultelaOfficial RedHat LinuxCustomizationGuideparainstruccionessobreel usodeLinuxconf.

Page 29: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 2.2:Usuarios estándar 29

2 Usuarios y gruposExistecontroldeusuariosy gruposenel núcleodela administracióndel sistemadeRedHatLinux.

Losusuariospuedensergentereal(cuentasligadasaunusuariofísicoenparticular)ousuarioslógicos(cuentasexistentesparaaplicacionesparticulares).Ambostiposdeusuarios,realeso lógicos,tienenun ID de usuario y un ID de grupo. Los IDs deusuariohabitualmentesonúnicos(perono tienenpor quéserlo).

Losgrupossonsiempreexpresioneslógicasdeorganización. Losusuariosformangruposy losgruposformanfundacionesdeusuariosligadosa losquelesdanpermisosdelectura,escriturao deejecucióndeun archivo determinado.

Cualquierarchivo creadoseasignaaunusuarioy aungrupocuandosecrea,dela mismamaneraqueseasignanla lectura,la escrituray la ejecuciónde permisosparael propietariodel archivo, paraelgrupoasignadoal archivo y paracualquierotrousuarioenunhost.El usuarioy el grupodeunarchivoparticular, asícomolospermisosenesearchivo,puedensercambiadosporunrooto, enmenorgrado,por el creadordeun archivo.

Unadelastareasmásimportantesdecualquieradministradordel sistema,esla deasignary revocarpermisos.Afortunadamente,RedHatLinux haceestetrabajolo mássencilloposibleal mismotiempoquepreserva la seguridadde los archivosenel host.

2.1 Herramientas para usuarios y gestión de gruposLa gestióndeusuariosy gruposhasidotradicionalmentetediosa,peroRedHat Linux poseealgunasherramientasy convencionesquefacilitanel manejodeusuariosy grupos.

De la mismamaneraquepuedeutilizar useradd paracrearunnuevo usuariodesdeun intérpretedecomandosdela shell,unmanerabastanteconocidademanejarusuariosy gruposesatravésdeLinux-conf ( consultela Official RedHat LinuxCustomizationGuideparamásdetallessobreLinuxconf).

2.2 Usuarios estándarEn la Tabla2–1, Usuariosestándar, puedeecontrarsela lista deusuariosestándarcreadapor el pro-cesodeinstalación.(esencialmenteel archivo /etc/passwd ). El ID degrupo(GID) enestatablaesel grupo primario parael usuario. Véasela Sección 2.4, Gruposprivadosde usuariosparamásinformaciónsobrecómoseutilizan los grupos.

Page 30: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

30 Capítulo 2:Usuarios y grupos

Tabla 2–1 Usuarios estándarUsuario UID GID Directorio raíz Shell

root 0 0 /root /bin/bash

bin 1 1 /bin

daemon 2 2 /sbin

adm 3 4 /var/adm

lp 4 7 /var/spool/lpd

sync 5 0 /sbin /bin/sync

shutdown 6 0 /sbin /sbin/shutdown

halt 7 0 /sbin /sbin/halt

mail 8 12 /var/spool/mail

news 9 13 /var/spool/news

uucp 10 14 /var/spool/uucp

operator 11 0 /root

games 12 100 /usr/games

gopher 13 30 /usr/lib/gopher-data

ftp 14 50 /var/ftp

nobody 99 99 /

2.3 Grupos estándarEn la Tabla2–2, Gruposestándar, encontrarálos gruposestándarconfiguradosenel procesodeins-talación (estoesbásicamenteel fichero/etc/group ).

Tabla 2–2 Grupos estándarGrupo GID Miembr os

root 0 root

bin 1 root, bin, daemon

Page 31: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 2.4:Grupos privados de usuarios 31

Grupo GID Miembr os

daemon 2 root, bin, daemon

sys 3 root, bin, adm

adm 4 root, adm,daemon

tty 5

disk 6 root

lp 7 daemon,lp

mem 8

kmem 9

wheel 10 root

mail 12 mail

news 13 news

uucp 14 uucp

man 15

games 20

gopher 30

dip 40

ftp 50

nobody 99

users 100

2.4 Grupos priv ados de usuariosRedHat Linux utiliza un esquemade grupo pri vado de usuario (UPG), quehacequelos gruposUNIX seanmásfácilesdeusar. El esquemaUPGno añadeni cambianadaenel modoestándardeUNIX enel manejodegrupos;simplementeofreceunanuevaconvención.Siemprequecreeunusua-rio nuevo, pordefecto,ésteperteneceaunúnicogrupo.El esquemafuncionadela siguientemanera:

Grupo deusuario privado

Page 32: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

32 Capítulo 2:Usuarios y grupos

Cadausuariotieneun grupoprimario;el usuarioesel únicomiembrodel grupo.

umask= 002

La máscaradepermisosumaskparasistemasUNIX eshabitualmentede022,lo queeliminadela posibilidaddequeotrosusuariosy otrosmiembrosdel grupoprimario del usuarioeliminenficherosdelusuario.Puestoquecadausuariotienesupropiogrupoprivadoenel esquemaUPG,esta"proteccióndegrupo"noesnecesaria.Unaumaskde002prohibiráalosusuariosmodificarficherosprivadosdeotrosusuarios.El valor deumaskseasignaen /etc/profile

activar el bit setgiden un directorio

Si activael bit setgidenun directorio(conchmod g+s directorio), los archivoscreadosenesedirectoriotendránsupropiogrupoenel grupodel directorio.

Enla mayoríadelasorganizacionesdeIT (del inglésInformationTechnologies)secreaungrupoparacadaproyectoy seasignaa la gentea los gruposen los quedebenestar. Gestionarlos archivos hasidotradicionalmentedifícil, porquecuandoalguiencreaunarchivo, ésteperteneceal grupoprimarioal quepertenezcael creador. Cuandounamismapersonatrabajaen múltiplesproyectos,esdifícilasociarungrupoadecuadoconlosficherosadecuados.Conel esquemaUPG,la asignacióndegruposa archivoscreadosenesedirectorioesautomática,lo quepermitegestionargruposdeproyectosdemanerasimple.

Suponiendoqueestemosejecutantoun proyectollamadodevel, conmuchosusuariosquemodificanlos ficherosdevel en un directoriodevel . Creeun grupo llamadodevel , aqadael directoriodevel (chgrp ) y todoslos usuariosdel proyectoa devel .

PuedeañadirunusuarioaungrupousandoLinuxconf (consultela Official RedHat LinuxCustomiza-tion Guide). Si prefiereusarla líneadecomandos,utilice /usr/sbin/groupadd groupnamecommand>paracrearun grupo. El comando/usr/bin/gpasswd -a loginname group-name añadiráun loginnamede usuarioa un grupo. (Consultegroupadd y la páginasde manualgpasswd si necesitamásinformaciónsobresusopciones.)El archivo /etc/group contienelainformacióndegrupoparasusistema.

Si ha creadoel grupodevel , ha añadidousuariosal grupodevel , cambiadoel grupopor el di-rectoriodevel en el grupodevel y activadoel bit de setgidparael directoriodevel , todoslosusuariosdevel seráncapacesdeconservar suestatusdegrupodevel , paraqueotrosusuariosdevelseancapacesdemodificarlos.

Si se tienenmúltiplesproyectoscomodevel y usuariosque trabajanen múltiplesproyectos,estosusuariosnuncatendránquecambiarsuumasko grupocuandocambiendeproyecto. El bit setgidenel directorioprincipaldecadaproyecto"selecciona"el grupoadecuado.

Puestoqueel directorioraízdecadausuarioperteneceal usuarioy asugrupoprivado,essegurodejaractivadoel bit setgidenel directorioraízdelusuario.Sinembargo,pordefecto,losarchivossecreanconel grupoprimariodel usuario,asíqueel bit setgidresultaredundante.

Page 33: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 2.4:Grupos privados de usuarios 33

2.4.1 Concepto de grupo priv ado de usuarioAunqueUPGhaexistidoenRedHatLinux durantealgúntiempo,muchagentetodavía tienepregun-tas,talescomo,por quéesnecesarioUPG.A continuaciónobserve el esquema.

• Paraqueun grupodeusuariostrabajeen un conjuntode ficherosen,por ejemplo,el directorio/usr/lib/emacs/site-lisp . Esrazonablequeunascuantaspersonasaccedanal directo-rio, perono todoel mundo.

• En primer lugarcreeemacs:

/usr/sbin/groupadd emacs

A continuación,teclee:

chown -R root.emacs /usr/lib/emacs/site-lisp

paraasociarlos contenidosdel directoriocon el grupoemacs y añadirusuariosadecuadosalgrupo:

/usr/bin/gpasswd -a <username> emacs

• Parapermitir a los usuarioscreararchivosenel directorioteclee:

chmod 775 /usr/lib/emacs/site-lisp

• Cuandounusuariocreaunnuevo archivo, sele asignael grupodelgrupodelusuariopordefecto(habitualmenteusers ). Paraevitarlo, teclee:

chmod 2775 /usr/lib/emacs/site-lisp

quehacequetodolo quesecreeenel directoriotengael grupo"emacs".

• Paraqueunusuariodelgrupoemacspuedamodificarunarchivo nuevo, esnecesarioqueésteseacreadoconla modalidad664. Paratal propósito,debeutilizar unmaskpor defecto.

• Todoestofuncionabien,salvoquesielgrupopordefectoes"usuarios",todoslosarchivoscreadosenel directorioraízdelusuarioseránsobreescribiblesporcualquiermiembrodelgrupo"usuarios"(habitualmentetodoslos usuarios).

• Parasolucionaresto,sehacequecadausuariotengaun"grupoprivado"comogrupopordefecto.

Llegadosa estepunto,al hacerla umask002pordefectoy dara todoel mundoun grupoprivadopordefecto,sepuedencrearfácilmentegruposdelosquelosusuariospuedensacarprovechosin realizarningúntipo demagia.Simplementesecreael grupoy seañadenlos usuarios,seejecutael comandochown y chmod enlos directoriosdel grupo.

Page 34: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

34 Capítulo 2:Usuarios y grupos

Page 35: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 3.2:Entre bastidores en el proceso de arranque. 35

3 Proceso de arranque , inicio y cierredel sistemaEstecapítulocontieneinformación sobrelo queocurreal arrancaro apagarun sistemabajoRedHatLinux.

3.1 Intr oducciónUnodelosaspectosmásimportantesdeRedHatLinux consisteensumétodoparaencendery apagarel sistemaoperativo,quecuandocargaprogramasespecíficosusandosusconfiguracionesparticulares,permiteel cambiodeesasconfiguracionesparacontrolarel procesodearranquey apagardemaneraordenada.Mientrasotrossistemasoperativosintentancontrolarla maneraenqueelordenadorarrancao le impidenpersonalizarlo quesucedeenel apagado,RedHat Linux le permiteaccedercompleta-mentea cadapasodel proceso.

Ademásdel problemadel control de arranqueo del procesode cierre,RedHat Linux hacequeseamuchomásfácil determinarlacausaprecisadelamayoríadelosproblemasrelacionadosconelencen-didoy el apagadodesusistema.La comprensióndeesteprocesoesdegranayudaparala resolucióndeproblemasbásicos.

3.2 Entre bastidores en el proceso de arranque .

NotaEstaseccióntratadel procesode arranquex86 en particular. Según la ar-quitecturadesusistema,suprocesodearranquepodríaserligeramentedi-ferente.Sin embargo, unavezqueel sistemahayaencontradoy cargadoelnúcleo,el procesodearranquepredeterminadodeRedHatLinux esidénticoparatodaslasarquitecturas.Paramásinformaciónacercadeun procesodearranquediferenteal x86 consultela secciónSección 3.8,Diferenciasenelprocesodearranqueenotrasarquitecturas.

Cuandoelordenadorestáencendido,el procesadorbuscalaBIOS (Entrada/SalidaBásicadelsistema)enla ROM delequipoy lo ejecuta.El programadela BIOSestáescritodentrodela memoriaperma-nentedesólo lectura(ROM) y estásiempredisponibleparael uso. El programadela BIOS proveeel másbajo nivel de interfaz paradispositivos periféricosy controlael primer pasodel procesodearranque.

Page 36: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

36 Capítulo 3:Proceso de arranque, inicio y cierre del sistema

El programadela BIOSpruebael sistema,buscay controlalosperiféricosy despuésbuscaunaunidadenusoparaactivar el sistema.Normalmente,buscaenla disquetera(o enla unidadCD-ROM delossistemasmásnuevos)mediosdearranque,si loshubiera,y luegosedirije alaunidaddeldiscoduro.Elordendelasunidadesusadasparaelarranquesecontrolanormalmentepormediodeunaconfiguraciónespecialdela BIOS enel sistema.UnavezqueRedHat Linux estéinstaladoenla unidaddel discodurodeunsistema,la BIOSintentaráiniciar desdeel Master BootRecord (MBR) enel primersectordela primeraunidaddel discoduro,quecargasuscontenidosenla memoria,y lo controlatodo.

Entonces,estecódigodel programadel MBR buscala primeraparticiónactiva y lee el registro dearranquedela misma.El registrodearranquecontieneinstrucionesacercadecómocargarel gestordearranque,LILO (LInuxLOader).El MBR cargaLILO, quesehacecargodelproceso(siemprequeLILO estéinstaladoenel MBR). En la configuracióndeRedHatLinux predeterminada,LILO usaelMBR paramostraropcionesdearranquey permitirleal usuariola entradaenel sistemaoperativo conel querealmenteiniciará.

La preguntaquesurgees:¿CómosabeLILO, en el MBR, quéhacercuandoel MBR ha sido leído?LILO ya haleídoallí lasinstruccionesa travésdel fichero/etc/lilo.conf .

3.2.1 Opciones de /etc/lilo.confLa mayorpartede las vecesno necesitarácambiarel MasterBoot Recordde su unidaddel discoduroamenosquenecesiteactivarunsistemaoperativo reciéninstaladoo bienestétratandodeusarunnúcleonuevo. Si necesitacrearunnuevo MBR usandoLILO perousando,asuvez,unaconfiguracióndiferente,deberáeditarel fichero/etc/lilo.conf y hacerfuncionarlilo denuevo paraqueseactualicenlos cambios.

ADVERTENCIA�

Si quieremodidif icar /etc/lilo.conf , asegúresede tener una copiade seguridadantesde hacer algún cambio. Asegúresetambién de tenera disposiciónun disquetede arranque funcionando,para poder activarel sistemay hacercambiosenel MBR si hubiera un problema.Para masinformación sobrela creacióndeun disquetedearranque veael manualde mkbootdisk .

El fichero/etc/lilo.conf seusaa travésdel comandolilo paradeterminarqué sistemaope-rativo utilizar o quénúcleoactivar, así comoparasaberdondeauto-instalar( porejemplo/dev/hdaparala primeraunidaddel discoduroIDE). Unamuestradefichero/etc/lilo.conf :

boot=/dev/hdamap=/boot/map

Page 37: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 3.2:Entre bastidores en el proceso de arranque. 37

install=/boot/boot.bprompttimeout=50message=/boot/messagelba32default=linux

image=/boot/vmlinuz-2.4.0-0.43.6label=linuxinitrd=/boot/initrd-2.4.0-0.43.6.imgread-onlyroot=/dev/hda5

other=/dev/hda1label=dos

Este ejemplo muestraun sistemaconfigurado para activar dos sistemasoperativos: Red HatLinux y DOS. He aquíun análisismásprofundode unaspocaslíneasde estearchivo (su fichero/etc/lilo.conf podríaaparecerun pocodiferente):

• boot=/dev/hda , dicea LILO quemire enla primeraunidaddeldiscoduroenel primercon-troladorIDE.

• map=/boot/map , localizael mapadelarchivo. En unautilizaciónnormaldeLILO, estepará-metrono deberíadesermodificado.

• install=/boot/boot.b , dice a LILO queinstaleel archivo especificadocomosectordenuevo arranque.En unautilizaciónnormal,estono deberíadesermodificado. Si la líneains-tall falta,LILO supondrá,por defecto,quequiereutilizar el fichero/boot/boot.b .

• El parámetroprompt hacequeLILO le muestrelo queaparececomoreferenciaen la líneamessage . No seaconsejaquitarla líneaprompt pero,si lo hace,encontrarátodavíaunasalidarápidamanteniendola tecla[Shift] pulsadamientrassumáquinacomienzael arranque.

• timeout=50 , establecela cantidadde tiempoqueLILO esperaráduranteel inicio antesdeprocedercon la activaciónde la líneade entradadefault . Estevalor semide en décimasdesegundo,con50 comovalor predeterminado.

• message=/boot/message , serefierea la pantallaqueLILO muestraparapermitirleselec-cionarel sistemaoperativo o el núcleoquequiereactivar.

• lba32 , describea LILO la geometríadela unidaddeldiscoduro. Otro parámetrohabitualaquíeslinear . No deberíacambiarestalíneaamenosqueestémuysegurodelo queestá haciendo.De lo contrario,podríaponersusistemaensituacióndeno poderarrancarse.

Page 38: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

38 Capítulo 3:Proceso de arranque, inicio y cierre del sistema

• default=linux , serefiere al sistemaoperativo predeterminadocon el queLILO arrancará,partiendode las opcioneslistadasdebajode estalínea. El nombrelinux serefiere a la línealabel encadaunadelasopcionesdeactivación abajocitadas.

• image=/boot/vmlinuz-2.4.0-0.43.6 , especifica el núcleolinux queseactivaráconestaopciónparticular.

• label=linux , esel nombredela opcióndel sistemaoperativo queapareceráenla pantalladeLILO. Enestecaso,esteestambiénel nombreal quesehacereferenciaenla líneadefault .

• initrd=/boot/initrd-2.4.0-0.43.6.img , serefiereala imageninitial ram disk queseusaráenel arranqueparainicializar y ejecutarel procedimientoquehacequela activación delnúcleoseaposible. El discodeRAM inicial estáformadopor unaacumulaciónde lasunidadesespecíficasdela máquinanecesariasparahacerfuncionarla unidaddel discoduroy lo necesarioparacargarel núcleo. Nuncadeberíatratarde usarlos discosRAM de inicio en diferentesmá-quinasamenosqueestostenganunaconfiguraciónhardwareidéntica(y aúnasí,estoesunamalaidea).

• read-only , especifica queestaparticiónraíz (veala líneaabajocitadaroot ) no puedeserescrita,sinosólo leída.

• root=/dev/hda5 , informaa LILO quéparticióndediscousarcomoparticiónderaíz.

A continuación,LILO mostrarála pantallainicial de RedHat Linux y los diferentessistemasope-rativos o núcleoscon los queha sido configuradoparael arranque.Si tan sólo tieneinstaladoRedHatLinux y nohacambiadonadaenel fichero/etc/lilo.conf , sóloverála opciónlinux. Si haconfiguradoLILO paraactivar tambiénotrossistemasoperativos,estapantallale darála oportunidaddeseleccionarel sistemaoperativo conel quearrancará.Utilice la teclade la flechapararesaltarelsistemaoperativo y pulsela tecla[Intro]

Si deseapoderobtenerunalíneadecomandoparadarórdenesaLILO, pulsela combinacióndeteclas[Ctrl]-[X]. LILO mostraráun mensajedeLILO: enla pantalla.LILO esperaráel períododetiempoquesehayapredefinido parala entradadel usuario.(La cantidaddetiempoqueLILO esperasees-tableceenla líneatimeout enel fichero/etc/lilo.conf ). Si sufichero/etc/lilo.confestuvieraconfiguradoparapermitir a LILO la posibilidaddeelegir sistemaoperativo, podríaescribirenla etiquetacualquiersistemaoperativo quedeseeactivar.

Si LILO estáactivandoLinux, cargaráprimeroel núcleoenla memoria,queesun archivo del estilovmlinuz (másel númerodeversión,porejemplo,vmlinuz-2.4.0-xx ), ubicadoenel directorio/boot . Depués,esel núcleoquiencontrolael procesoinit (inicialización)del sistema.

En estemomento,con el núcleocargadoen la memoriay en funcionamiento,Linux ya habrásidoiniciado,aunquea un nivel muy básico. Sin embargo, sin las aplicacionesqueutilicen el núcleoysin la capacidaddel usuarioparadarun significadoal inicio del sistema,no sepuedehacermucho.

Page 39: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 3.2:Entre bastidores en el proceso de arranque. 39

El programadecomandoinit resuelveesteproblemasacandoa relucir los diferentesserviciosquepermitenal sistemadesempeñarsupapel.

3.2.2 InitEl kernelencuentrainit enel directorio/sbin y lo ejecuta.init coordinael restodel procesode arranque.

Cuandoel comandoinit inicia, setransformaen el padre(o en el abuelo) de todoslos procesosqueseproducenautomáticamenteensusistemaRedHat Linux. Primero,poneenfuncionamentoelguiónestablecidoenel fichero/etc/rc.d/rc.sysinit , queestablecela rutaaotrosprogramas,comienzaaintercambiardatos,controlalossistemasdearchivo,etc.Básicamente,el ficherorc.sy-sinit seencargadetodolo quesusistematienequerealizardurantela inicialización. Porejemplo,enun sistemadered,el ficherorc.sysinit utiliza la informacióndel archivo /etc/syscon-fig/network parainiciar la red. La mayorpartede los sistemasusanun reloj, por lo tanto,enellos,el rc.sysinit tendráunareferenciaa /etc/sysconfig/clock parainicializarel reloj.Si tieneprocesosespecialesenel puertoseriequenecesitenserinicializados,el rc.sysinit podríatambiénponerenfuncionamientoel rc.serial .

Entonces,el init ejecutael guión /etc/inittab , quedescribecómodebería de serconfigu-radoel sistemaencadanivel de ejecución y configurael nivel deejecuciónpredeterminado.(vealaSección 3.4,NivelesdeejecuciónInit paraobtenermásinformaciónacercadelosnivelesdeejecuciónenlasdiversasutilidades.)Estearchivoestablece,entreotrascosas,queelcomando/sbin/updatedebería serejecutadosiemprequecomienceun nivel deejecución.El programa update seusaparareenviar al discobufferssucios.

Siemprequeel nivel deejecucióncambia,init utiliza los guionesde /etc/rc.d/init.d parainiciar e interrunpirdiferentesservicios,comopuedansersuservidorde red,suservidorDNS, etc.Primero,el comandoinit establecela libreríadefuncionesdeorigenparael sistema(normalmente/etc/rc.d/init.d/functions ), queexplica cómoiniciar o anularun programay cómoen-contrarel PID deun programa.Luego, el comandoinit determinael nivel deejcución encursoyel precedente.

El comandoinit inicia todoslos procesosdesegundoplanonecesariosparaqueel sistemalos eje-cuteconsiderandoel directoriorc apropiadoparaesenivel deejecución(/etc/rc.d/rc <x>.d ,dondeel <x> senumerade0 a 6). El comandoinit ejecutacadaunode los guionesanulados(elnombredesusarchivoscomienzaconunaK), conun parámetrostop . El comandoinit ejecutaelinicio detodoslosguiones(losnombresdesusarchivoscomienzanconunaS) enel niveldeejecuciónapropiadodel directoriomedianteel comandostart , paraquetodoslos serviciosy aplicacionesseiniciencorrectamente.Dehecho,puedeejecutarlos mismosguionesmanualmentedespuésdequeelsistemahayaterminadodearrancarconuncomandocomo/etc/rc.d/init.d/httpd stop ouncomando service httpd stop , registradocomoroot. Estointerrumpiráel servidorhttpd .

Page 40: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

40 Capítulo 3:Proceso de arranque, inicio y cierre del sistema

NotaCuando se inicien los servicios manualmente,deberíaestar como su-per-usuario. Si apareceun error cuandoejecuteel comandoservicehttpd stop , podríano estaren la ruta /sbin ni en /root/.bashrc(o no tenerel archivo .rc adecuadoparasushellpreferida).Podríaescribirel comandocompleto,como /sbin/service httpd stop o agregarel directorio medianteel comandoexport PATH="$PATH:/sbin" asu archivo de shell .rc . Si editael archivo de configuraciónde su shell,salgadel sistemay entrede nuevo como administradorparahacerque laconfiguración cambiadadel archivo deshellseaefectiva.

Ningunodelosguionesqueinicianeinterrunpenlosserviciosestárealmentelocalizadosenel fichero/etc/rc.d/init.d . Másbién,todoslos archivosde /etc/rc.d/rc <x>.d sonenlacessim-bólicosqueseñalanlos guioneslocalizadosenel /etc/rc.d/init.d . Unaconexión simbólicano esmásqueun archivo queseñalasimplementea otro archivo, y seusaenestecasoporquepuedesercreaday borradasin afectaral guiónrealqueanulao inicia el servicio. Lasconexionessimbóli-casa los diferentesguionesestánnumeradasenun ordenparticularparaqueempieceneneseorden.Podrácambiarel ordenenquelosserviciosiniciano seinterrumpencambiandoel nombredelenlacesimbólicoqueserefiereal guión,y querealmenteesquieninicia o interrumpeel servicio.Puededarun mismonúmeroa diferentesconexionessimbólicassi quierequeeseservicioempieceo termineinmediatamentedespuéso antesdeotro servicio.

Por ejemplo, para el nivel de ejecución 5, el comando init entra en el directorio/etc/rc.d/rc5.d y podría encontrar lo siguiente (la salida que verá por pantalla podríavariarenfuncióndesusistemay desuconfiguración):

K01pppoe -> ../init.d/pppoeK05innd -> ../init.d/inndK10ntpd -> ../init.d/ntpdK15httpd -> ../init.d/httpdK15mysqld -> ../init.d/mysqldK15pvmd -> ../init.d/pvmdK16rarpd -> ../init.d/rarpdK20bootparamd -> ../init.d/bootparamdK20nfs -> ../init.d/nfsK20rstatd -> ../init.d/rstatdK20rusersd -> ../init.d/rusersdK20rwalld -> ../init.d/rwalldK20rwhod -> ../init.d/rwhodK25squid -> ../init.d/squidK28amd -> ../init.d/amd

Page 41: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 3.2:Entre bastidores en el proceso de arranque. 41

K30mcserv -> ../init.d/mcservK34yppasswdd -> ../init.d/yppasswddK35dhcpd -> ../init.d/dhcpdK35smb -> ../init.d/smbK35vncserver -> ../init.d/vncserverK45arpwatch -> ../init.d/arpwatchK45named -> ../init.d/namedK50snmpd -> ../init.d/snmpdK54pxe -> ../init.d/pxeK55routed -> ../init.d/routedK60mars-nwe -> ../init.d/mars-nweK61ldap -> ../init.d/ldapK65kadmin -> ../init.d/kadminK65kprop -> ../init.d/kpropK65krb524 -> ../init.d/krb524K65krb5kdc -> ../init.d/krb5kdcK75gated -> ../init.d/gatedK80nscd -> ../init.d/nscdK84ypserv -> ../init.d/ypservK90ups -> ../init.d/upsK96irda -> ../init.d/irdaS05kudzu -> ../init.d/kudzuS06reconfig -> ../init.d/reconfigS08ipchains -> ../init.d/ipchainsS10network -> ../init.d/networkS12syslog -> ../init.d/syslogS13portmap -> ../init.d/portmapS14nfslock -> ../init.d/nfslockS18autofs -> ../init.d/autofsS20random -> ../init.d/randomS25netfs -> ../init.d/netfsS26apmd -> ../init.d/apmdS35identd -> ../init.d/identdS40atd -> ../init.d/atdS45pcmcia -> ../init.d/pcmciaS55sshd -> ../init.d/sshdS56rawdevices -> ../init.d/rawdevicesS56xinetd -> ../init.d/xinetdS60lpd -> ../init.d/lpdS75keytable -> ../init.d/keytableS80isdn -> ../init.d/isdnS80sendmail -> ../init.d/sendmailS85gpm -> ../init.d/gpmS90canna -> ../init.d/cannaS90crond -> ../init.d/crond

Page 42: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

42 Capítulo 3:Proceso de arranque, inicio y cierre del sistema

S90FreeWnn -> ../init.d/FreeWnnS90xfs -> ../init.d/xfsS95anacron -> ../init.d/anacronS97rhnsd -> ../init.d/rhnsdS99linuxconf -> ../init.d/linuxconfS99local -> ../rc.local

Estosenlacessimbólicosinformana init de quenecesitaeliminar los comandospppoe , innd ,ntpd , httpd , mysqld , pvmd, rarpd , bootparamd , nfs , rstatd , rusersd , rwalld ,rwhod , squid , amd, mcserv , yppasswdd , dhcpd , smb, vncserver , arpwatch , named,snmpd, pxe , routed , mars-nwe , ldap , kadmin , kprop , krb524 , krb5kdc , gated ,nscd , ypserv , ups , y irda . Despuésdequetodoslosprocesoshayansidoeliminados,el procesoinit mira en el mismo directorio y encuentracomienzosde guión para los comandoskudzu ,reconfig , ipchains , portmap , nfslock , autofs , random , netfs , apmd, identd ,atd , pcmcia , sshd , rawdevices , xinetd , lpd , keytable , isdn , sendmail , gpm,canna , crond , FreeWnn , xfs , anacron , rhnsd , y linuxconf . La última cosaque initejecutaes /etc/rc.d/rc.local para hacer funcionar cualquierade los guionesespecialesconfiguradosparael host. En estemomento,seconsideraqueel sistemaestá operandoen el nivelde ejecución5.

Despuésde que el init haya pasadoa través de todos los niveles de ejecución,el guión de/etc/inittab ejecutaun procesogetty paracadaconsolavirtual (login prompts)paracadanivel de ejecución(los nivelesde ejecución 2-5 empleaseisconsolas;el nivel de ejecución1, quefuncionaen el modode usuarioúnico, sólo empleauna; los nivelesde ejecución 0 y 6 no tienenconsolasvirtuales). Basicamente,el getty abrelas líneastty, establecesusmodos,imprime elindicadorde comandosde inicio de sesión,toma el nombredel usuarioy luego comienzacon elprocesodeinicio desesión paraeseusuario.Estopermitea los usuariosautentificarseenel sistemay comenzara usarlo.

También,el fichero/etc/inittab indicaal init cómodeberíamanejarel queun usuariopulse[Ctrl]-[Alt]-[Suprimir] enla consola.ComoRedHat Linux deberíasercerradoe inmediatamentereini-ciado,sedala ordena init deejecutarel comando/sbin/shutdown -t3 -r now cuandounusuarioejecutaestacombinacióndeteclas.Además,en/etc/inittab seestablecequécomandoinit deberíafuncionarencasodefallar la energía, si susistematieneunaunidadSAI (SistemadeAlimentaciónIninterrumpida)conectado.

En el nivel deejecución5, el /etc/inittab ejecutaun guiónllamado/etc/X11/prefdm . Elguiónprefdm hacefuncionarsugestordepantallaparaX preferido(gdmsi utiliza GNOME,kdmsiutiliza KDE, oxdmsi utiliza otro,basándoseenloscontenidosdelarchivo deldirectorio/etc/sys-config/desktop

Ahora,deberíaestarviendounindicadordecomandosdeinicio desesiónparpadeandoensupantalla.Todoestono duramásqueunospocossegundos.

Page 43: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 3.2:Entre bastidores en el proceso de arranque. 43

3.2.3 SysV InitComohemosvisto,el programainit seponeenfuncionamentoa travésdel núcleoenel momentodel arranque.Ésteseencargadeiniciar todoslos procesosnormalesquesenecesitainiciar junto conel sistema.Éstosincluyenlos procesospreparadosquele permitenel registrodeusuarios,demoniosdeNFS,demoniosdeFTPy cualquierotracosaquenecesiteejecutarcuandosumáquinaarranque.

SysVinit esel procesoinit estáandaren el mundolinux paracontrolarel inicio del softwareen elarranquedel sistema,porqueesmásfácil deusar, máspotentey flexible queel comandotradicionalBSD init .

SysVinit sediferenciatambiéndeBSDinit enquelosarchivosdeconfiguraciónestánen/etc/rc.denvezdeencontrarsedirectamenteen/etc . En /etc/rc.d , encontraráel ficherorc , el rc.lo-cal , el rc.sysinit y los siguientesdirectorios:

init.drc0.drc1.drc2.drc3.drc4.drc5.drc6.d

SysVinit representacadaunodelos nivelesdeejecucióndeinit conun directorioseparado,usandoel init y enlacessimbólicosencadaunodelos directoriosparainterrumpire iniciar los diferentesserviciosmientrasqueel sistemacambiadeun nivel deejecucióna otro.

Resumiendo,lo queocurreenel arranquedeun SysVinit eslo siguiente:

• El núcleoentraenel /sbin enbuscade init

• init ejecutael guión /etc/rc.d/rc.sysinit

• rc.sysinit manejala mayoría delos procesosdearranquedel cargadory despuésejecutaelrc.serial (si existe)

• init ejecutatodoslos guionesparael nivel deejecuciónpredeterminado.

• init ejecuta/etc/rc.d/rc.local

El nivel de ejecuciónpredeterminadosedecideen el fichero /etc/inittab . Deberíahaberunalíneaen la partesuperiorcomola siguiente:

id:3:initdefault:

El nivel de ejecuciónpredeterminadoes3 en esteejemplo,el númeroinmediatamentedespuésdelosprimerosdospuntos.Si deseacambiarlo,puedeeditarel fichero/etc/inittab manualmente.

Page 44: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

44 Capítulo 3:Proceso de arranque, inicio y cierre del sistema

Tengamuchocuidadocuandoestémodificandoel archivo inittab . Si seequivoca,puedesolu-cionarloreiniciandoel equipo,accediendoal indicadordecomandosboot: conla combinación deteclas[Cntl]-[X] y tecleando

boot: linux single

Estodeberíapermitirle arrancaren el modode usuarioúnico paraquepuedavolver a modificar elficheroinittab ensuvalor precedente.

A continuaciónhablaremosdeinformacióndentrodelos archivosde /etc/sysconfig , quedefi-nenlos parámetrosusadospor los serviciosdediferentessistemascuandoseinicia el sistema.

3.3 Información sobre SysconfigLa informaciónsiguienteperfila algunosde los diferentesarchivosde /etc/sysconfig , su fun-ción y suscontenidos.Estainformaciónno pretendesercompletaya quemuchosdeestosarchivospermitenunavariedaddeopcionesqueseusansóloencircunstanciasmuyespecíficaso raras.

3.3.1 Archiv os de /etc/sysconfigLos siguientesarchivosseencuentrannormalmenteen /etc/sysconfig :

• y

• apmd

• authconfig

• cipe

• clock

• desktop

• firewall

• harddisks

• hwconf

• i18n

• init

• irda

• keyboard

• kudzu

• mouse

Page 45: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 3.3:Información sobre Sysconfig 45

• network

• pcmcia

• rawdevices

• sendmail

• soundcard

• ups

• vncservers

Esposiblequea susistemale faltenalgunosdeellossi el programaquenecesitaesearchivo no estáinstalado.

Veamosunoa unocadaunodeestosficheros.

/etc/sysconfig/amdEl archivo /etc/sysconfig/amd contienevariosparámetrosusadospor el comandoamd quepermitenmontary desmontarautomáticamentelos sistemasdearchivo.

/etc/sysconfig/apmdEl archivo /etc/sysconfig/apmd seusapormediodeapmdcomounaconfiguraciónparadeci-dir quéiniciar/interrumpir/cambiarenel momentodesuspendero reanudarel sistema.Seestablecesisevaaencendero apagarel ordenadormedianteel comandoapmdduranteel inicio, dependiendodequesi suhardwareseapoya o no enAdvancedPower Management(APM ) o dequedecidausarloo no. apmesun demoniodesupervisiónquetrabajaconel codigodegestióndeenergíadentrodelnúcleoLinux. Puedeavisarlesobreunabatería descargadasi estáusandoRedHat Linux sobreunportátil, entreotrascosas.

/etc/sysconfig/authconfigEl archivo /etc/sysconfig/authconfig estableceel tipo de autorizaciónquetienequeserusadaenel host. Contieneunao másdelassiguienteslíneas:

• USEMD5=<value>, donde<value> puedeser:

– yes — si seusaMD5 parala autentificación.

– no — si no seusaMD5 parala autentificación.

• USEKERBEROS=<value>, donde<value> puedeser:

– yes — si seusaKerberosparala autentificación.

Page 46: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

46 Capítulo 3:Proceso de arranque, inicio y cierre del sistema

– no — si no seusaKerberosparala autentificación.

• USELDAPAUTH=<value>, donde<value> esunodelos siguientesvalores:

– yes — si LDAP seusaparaautentificación.

– no — si LDAP no seusaparaautentificación.

/etc/sysconfig/cipe

El archivo /etc/sysconfig/cipe configurael comandocipe enel inicio.

Éstepodríacontenerlos siguientesvaloresdemuestra:

• DEVICE=eth0 , especifica el adaptadorderedquecipe utilizará.

• PORT=9999, designael númerode puertoUDP quedebeserusadopor el procesocipe enambosextremosdela conexión.

• PEER=0.0.0.0 , especifica la direcciónreal remotadel extremode cipe . Puedeestablecerdinámicamenteestadirecciónponiendoestevalor a 0.0.0.0.

• IPADDR=0.0.0.0 , especifica la direcciónvirtual enel extremolocaldel túnelcipe .

• PTPADDR=0.0.0.0 , especifica la direcciónvirtual enel extremoremotodel túnelcipe .

/etc/sysconfig/reloj

El archivo /etc/sysconfig/clock controlala interpretación devaloresleídapor el sistemadereloj. AnterioresversionesdeRedHat Linux usabanlossiguientesvalores( queestánanticuados):

• CLOCKMODE=<value>, donde<value> puedeser:

– GMT— indicaqueel reloj estáreguladoconla HoraUniversal(GreenwichMeanTime).

– ARC— indicaqueel períodode 42 añosde la consolaABC estáen funcionamiento( sóloparalos sistemasbasadosenAlpha).

Normalmente,los valorescorrectosson:

• UTC=<value>, donde<value> puedeser:

– true — indicaqueel reloj estáreguladoconla horauniversal.Cualquierotro valor indicaqueestáreguladocon la horalocal.

• ARC=<value>, donde<value> puedeser:

Page 47: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 3.3:Información sobre Sysconfig 47

– true — indicaqueel períodode tiempode42 añosde la consolaARC estáen funciones.CualquierotrovalorindicaqueseadoptalanormaUNIX epoch(sóloparalossistemasbasadosen Alpha).

• ZONE=<filename> — indicael archivo del husohorarioen/usr/share/zoneinfo delque/etc/localtime esunacopia,como:

ZONE="America/New York"

/etc/sysconfig/desktopEl archivo /etc/sysconfig/desktop especifica el gestordeescritorioqueva a serejecutado,como:

DESKTOP="GNOME"

/etc/sysconfig/firewallEl archivo /etc/sysconfig/firewall contienediferentesconfiguracionesdefirewall. Porde-fectoestearchivo estácreado,perovacío.

/etc/sysconfig/harddisksEl archivo /etc/sysconfig/harddisks le permitiráconfigurarsu(s)unidad(es)dediscoduro.

ADVERTENCIA�

No hagacambiosenestearchivo. Si cambialosvalorespredeterminadoscargadosaquí, podría dañar toda la información de susdiscosduros.

El archivo /etc/sysconfig/harddisks podríacontenerlo siguiente:

• USE_DMA=1, si estevalorestáa1,sehabilitael DMA. Sinembargo,conalgunosgruposdechipsy algunascombinacionesdel discoduro,el DMA puedecausarcorrupcióndedatos.Verifiqueladocumentacióndesudiscoduro o consultesufabricanteantesdehabilitar estaopción..

• Multiple_IO=16 , si estevalor estáa 16,permitela interrupcióndeE/Sa múltiplessectores.Cuandoestáhabilitado,sereducela sobrecargadel sistemaoperativo enun 30-50%Useestaop-ción conprecaución.

• EIDE_32BIT=3 , permiteel soportedeunatarjetadeE/Stipo (E)IDE 32-bit.

Page 48: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

48 Capítulo 3:Proceso de arranque, inicio y cierre del sistema

• LOOKAHEAD=1, permiteunalecturaavanzadadela unidad.

• EXTRA_PARAMS=, especifica parámetrosextra.

/etc/sysconfig/hwconf

El archivo /etc/sysconfig/hwconf haceun listadodetodoel hardwarequekudzu detectóensusistema,comotambiéndelosdriversqueseutilizany dela informaciónrelativaal ID delvendedory a la de los dispositivos. El programakudzu detectay configurael hardwarenuevo y/o cambiadodeun sistema.El archivo /etc/sysconfig/hwconf no sepuedemodificar manualmente.Si lomodifica, los dispositivospodríanaparecerderepentecomosi hubieransidocambiadoso anulados.

/etc/sysconfig/i18n

El archivo /etc/sysconfig/i18n estableceel idiomapredeterminado,como:

LANG="es_ES"

/etc/sysconfig/init

El archivo /etc/sysconfig/init controlael modoen queel sistemaaparecerá y funcionaráduranteel arranque.

Podríanusarselos siguientesvalores:

• BOOTUP=<value>, donde<value> puedeser:

– BOOTUP=color , significaqueactivaremosla pantallaestándarencolorduranteel arranque;dondesemuestra,condiversoscolores,si secargansatisfactoriamenteo no losdispositivosylos serviciosduranteel inicio.

– BOOTUP=verbose, significaqueactivaremosunmododeinicio al modoantiguo,quepro-porcionamuchamásinformaciónqueel meromensajedeéxito o fracaso.

– Cualquierotrovalorsetraducirácomoquequeremosutilizar el mododepantallanormal,sinel juego decaracteresANSI.

• RES_COL=<value>, donde<value> esel númerode la columnaenla pantallaparainiciaretiquetasdestatus.Estápredeterminadoa 60.

• MOVE_TO_COL=<value>, donde <value> mueve el cursor hacia el valor de la líneaRES_COL. Sepredeterminael ecodesalidadelassecuenciasANSI con-e .

• SETCOLOR_SUCCESS=<value>, donde<value> configurael color del indicadordeéxito.Sepredeterminael ecodesalidadelassecuenciasANSI con-e , estableciendoel colora verde.

Page 49: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 3.3:Información sobre Sysconfig 49

• SETCOLOR_FAILURE=<value>, donde<value> configura el color utilizado paraindicarun fallo. Sepredeterminael ecodesalidadelassecuenciasANSI con-e , estableciendoel colora rojo.

• SETCOLOR_WARNING=<value>, donde<value> configura el color utilizado paraindicaratención.Sepredeterminael ecodesalidadelassecuenciasANSI con-e , estableciendoel colora amarillo.

• SETCOLOR_NORMAL=<value>, donde<value> configura el color ’normal’. Sepredeter-minael ecodesalidadelassecuenciasANSI con -e .

• LOGLEVEL=<value>, donde<value> configuraelnivel inicial deidentificacióndelaconsolaparael kernel. El valor por defectoes7; 8 significa todo(inclusoel depurado);1 significa todoexpectoel kernel. syslogd ignorará estounavezseejecute.

• PROMPT=<value>, donde<value> puedetenerunodelos siguientes:

– yes — Activa la verificacióndetecladoparael modointeractivo.

– no — Desactiva la verificacióndetecladoparael modointeractivo.

/etc/sysconfig/irda

El fichero/etc/sysconfig/irda controlacómoestánconfiguradoslos dispositivosinfrarrojosal arranquedel sistema.

Sepuedenutilizar los siguientesvalores:

• IRDA=<value>, donde<value> puedetomarunodelos siguientevaloresbooleanos:

– yes — irattach deberáestaren ejecución,parachequearperiódicamentesi hay algúndispositivo intentandoconectarseal puertoinfrarrojos,comopodríaserel casodeun portátilrealizandounaconexión dered. Si vaautilizar dispositivosinfrarrojosensusistema,deberíausarestevalor.

– no — el programairattach no seejecutará,evitandola comunicación por infrarrojos.

• DEVICE=<value>, donde<value> serefiereal dispositivo (normalmenteel puertoserie)quemanejalascomunicacionesinfrarrojas.

• DONGLE=<value>, donde<value> el tipo de "dongle"queseutiliza parala comunicacióneninfrarrojos.Estaconfiguraciónexisteparala gentequeutilice "dongles"serieenlugardepuer-tosinfrarrojosreales.Un "dongle"esun dispositivo queseponeenun puertoserieestanardparacomunicarmedianteinfrarrojos. Estalíneaestácomentadapor defectoporquelos ordenadores

Page 50: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

50 Capítulo 3:Proceso de arranque, inicio y cierre del sistema

portátilesconpuertoinfrarrojossonmenoscomunesquelos ordenadoresquedisponende"don-gles"parasimularlo.

• DISCOVERY=<value>, donde<value> puedetomarunodelossiguientesvaloresbooleanos:

– yes — Inicia irattach enmododiscovery, queesel modoquechequeaenbuscadeotrosdispositivos infrarrojos. Estaopciónsetienequeactivar paraqueunamáquinabusqueacti-vamenteconexionesinfrarrojas(teniendoencuentaqueel otrodispositivo no puedeiniciar laconexión).

– no — No inicia irattach enmododiscovery.

/etc/sysconfig/keyboardEl fichero/etc/sysconfig/keyboard controlael comportamientodel teclado.Sepuedenuti-lizar los siguientevalores:

• KEYBOARDTYPE=sun|pc, queseutiliza sóloenestacionesSPARC. sun quieredecirqueuntecladodeSunestáconectadoen/dev/kbd , y pc quieredecirqueun tecladodelestiloPCestáenel puertoPS/2.

• KEYTABLE=<file>, donde<file> esel nombredeun ficherode páginadecódigosde te-clado. Por ejemplo: KEYTABLE="es" . Los ficherosquesepuedenutilizar comopáginasdecódigosdetecladoestánen/usr/lib/kbd/keymaps/i386 y seramificanendiferentescon-figuracionesapartirdeaquíy estánnombradoscomo<file>.kmap.gz . El primerficheroqueseencuentreen/usr/lib/kbd/keymaps/i386 y quecorrespondaal valorKEYTABLEseráel queseutilice.

/etc/sysconfig/kudzuEl fichero /etc/sysconfig/kuzdu le permitirárealizarunapruebaseguradel hardwarede susistemaconkudzu enel arranque.Unapruebaseguradesactivael puertoseriey la pruebademonitorDDC.

• SAFE=<value>, donde<value> puedetomarunodelos siguientesvalores:

– yes — kuzdu realizaunapruebasegura.

– no — kuzdu realizaunapruebanormal.

/etc/sysconfig/mouseEl fichero/etc/sysconfig/mouse seutiliza paraespecificar informaciónsobreel ratón dispo-nible. Sepuedenusarlos siguientesvalores:

Page 51: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 3.3:Información sobre Sysconfig 51

• FULLNAME=<value>, donde<value> serefiere al nombrecompletodel ratónqueseestáutilizando.

• MOUSETYPE=<value>, donde<value> puedetenerunodelos siguientesvalores:

– microsoft — Un ratónMicrosoft™.

– mouseman— Un ratónMouseMan™.

– mousesystems — Un ratónMouseSystems™ mouse.

– ps/2 — Un ratónPS/2.

– msbm— Un ratóntipo busdeMicrosoft™.

– logibm — Un ratóntipo busdeLogitech™.

– atibm — Un ratóntipo busdeATI™.

– logitech — Un ratón Logitech™.

– mmseries — Un viejo ratón MouseMan™mouse.

– mmhittab — Un ratónmmhittab.

• XEMU3=<value>, donde<value> puedetenerunodelos siguientesvaloresbooleanos:

– yes — Si el ratóntienetansólodosbotonesy sequierenemulartres.

– no — Si el ratónya tienedosbotones.

• XMOUSETYPE=<value>, donde<value> serefiereal tipo deratónqueseutilizarámientrasseejecuteX. EstasopcionessonlasmismasquelasdeMOUSETYPEenestemismofichero.

Además,existe un enlacedinámico,/dev/mouse , queapuntaal dispositivo de ratónqueseestáutilizandoactualmente.

/etc/sysconfig/networkEl fichero/etc/sysconfig/network seutiliza paraespecificar informaciónsobrela configu-raciónderedquedeseamostener. Sepuedentenerlos siguientesvalores:

• NETWORKING=<value>, donde<value> puedetenerlos siguientesvaloresbooleanos:

– yes — Sedeberíaconfigurar la red.

– no — No sedeberíaconfigurar la red.

Page 52: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

52 Capítulo 3:Proceso de arranque, inicio y cierre del sistema

• HOSTNAME=<value>, donde<value> deberíaser un Nombre de Dominio Cualif icado(FQDN), comopudieraserhostname.domain.com , aunquepudierasercualquieraqueusteddesee.

NotaParamantenerla compatibilidadcon el softwareantiguoquesepuedatenerinstalado(comopuedierasertrn ), el fichero/etc/HOSTNAMEdeberíatenerel mismovalor queaquí.

• GATEWAY=<value>, donde<value> esla direcciónIP dela puertadeenlacedela red.

• GATEWAYDEV=<value>, donde<value> esel dispositivo de la puertadeenlace,comoporejemploeth0 .

• NISDOMAIN=<value>, donde<value> esel nombredel dominioNIS.

/etc/sysconfig/pcmciaEl fichero /etc/sysconfig/pcmcia seutiliza paraespecificar la configuraciónPCMCIA. Sepuedenutilizar los siguientesvalores:

• PCMCIA=<value>, donde<value> secorrespondea unodelos siguientesvalores:

– yes — si activamosel soportedePCMCIA.

– no — si no activamosel soportePCMCIA.

• PCIC=<value>, donde<value> secorrespondea unodelos siguientesvalores:

– i82365 — El ordenadortieneun juego dechipsPCMCIA deestiloi82365.

– tcic — El ordenadortieneun juego dechipsPCMCIA deestilotcic.

• PCIC_OPTS=<value>, donde<value> correspondea los parámetrosde temporización deldriver del socket (i82365o tcic).

• CORE_OPTS=<value>, donde<value> esla lista delasopcionespcmcia_core .

• CARDMGR_OPTS=<value>, donde<value> enla listadelasopcionesdelcomandoPCMCIAcardmgr (como,por ejemplo,-q parael modosilencioso;-m parabuscarmódulosdel kernelcargablesdesdeun directorio,y demás).Consultela páginademanualsobrecardmgr paraob-tenermásinformación.

Page 53: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 3.3:Información sobre Sysconfig 53

/etc/sysconfig/rawdevices

El fichero/etc/sysconfig/rawdevices seutiliza paraconfigurarel mapeodelosdispositivos"raw":

/dev/raw/raw1 /dev/sda1/dev/raw/raw2 8 5

/etc/sysconfig/sendmail

El fichero /etc/sysconfig/sendmail permiteque sepuedanenviar mensajesa uno o másreceptores,enrutandoel mensajesobretantasredescomoseanecesario.Esteficheroconfigura losvalorespordefectoqueel programaSendmail necesitaparaejecutarse.Estosvalorespordefectosonparaejecutarlocomoun demonioensegundoplanoy paraverificar la colaunavezcadahora.

Sepuedenutilizar los siguientesvalores:

• DAEMON=<value>, donde<value> correspondea unodelossiguientesvaloresbooleanos:

– yes — Sendmail deberíaconfigurarseparaescucharenel puerto25 a la escuchadecorreodeentrada.La opciónyes implica la utilizacióndela opción -bd deSendmail.

– no — Sendmail nodeberídeserconfiguradoparaescucharla llegadadecorreoporel puerto25.

• QUEUE=1hseenvía a Sendmail como -q$QUEUE. La opción -q no sepasaa Sendmail siexiste/etc/sysconfig/sendmail el parámetroQUEUEestávacíoo incompleto.

/etc/sysconfig/soundcard

El fichero/etc/sysconfig/soundcard esgeneradoporel comandosndconfig y nodeberíadesermodificado. El únicousodeesteficheroesdeterminarqué tarjetaaparecerápor defectoenelmenúdeseleccióndesndconfig la próximavezqueseejecute.La configuraciónde la tarjetadesonidoselocalizaenel fichero/etc/modules.conf .

Esteficheropuedecontenerlo siguiente:

• CARDTYPE=<value>, donde<value> seconfigura,por ejemplo,comoSB16 enel casodeunatarjetadesonidoSoundblaster16.

Page 54: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

54 Capítulo 3:Proceso de arranque, inicio y cierre del sistema

/etc/sysconfig/upsEl fichero/etc/sysconfig/ups seutiliza paraespecificar informaciónsobrecualquierSistemadeAlimentación Ininterrumpida (SAI) conectadoasusistema.Un SAI puedeserunabuenaopciónparaunsistemaRedHatLinux yaquele proporcionarátel tiemponecesarioparaapagarel sistemaco-rrectamenteenel casodela interrupció delservicioelétrico.Sepuedenutilizar lossiguientesvalores:

• SERVER=<value>, donde<value> puedetomarlos siguientesvalores:

– yes — Si sehainstaladoun SAI ensusistema.

– no — Si no seha instaladoningún SAI ensusistema.

• MODEL=<value>, donde<value> debeestarseleccionadoa unode los siguientesvaloresobiena NONEsi no hayningúSAI instaladoensusistema:

– apcsmart — Paraun dispositivo APC SmartUPS™o similar.

– fentonups — Paraun dispositivo FentonUPS™.

– optiups — Paraun dispositivo OPTI-UPS™.

– bestups — Paraun SAI BestPower™.

– genericups — Paraun SAI genérico.

– ups-trust425+625 — Paraun SAI Trust™.

• DEVICE=<value>, donde<value> especifica dóndeestá conectadoel SAI, comopuedaser/dev/ttyS0 .

• OPTIONS=<value>, donde<value> esun comandoespecialquehayquepasarleal SAI.

/etc/sysconfig/vncserversEl fichero /etc/sysconfig/vncservers configura cómo el servidor de Virtual NetworkComputing (VNC) se inicia. VNC es un sistemade visualizació remotoque permitevisualizarescritoriosremotosen otrasmáquinasdiferentesde dondelo estamosejecutando,peroa travésdediferentesredes,(desdeunaLAN a Internet)usandounavariedaddeparámetrosconsiderable.

Puedecontenerlo siguiente:

• VNCSERVERS=<value>, donde<value> sesueleponercomalgoparecidoa "1:root" .

Page 55: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 3.3:Información sobre Sysconfig 55

3.3.2 Ficheros de /etc/sysconfig/network-scripts/

Los siguientesficherossesuelenencontraren /etc/sysconfig/network-scripts , donde<if-name> correspondea la interfazdered:

• /etc/sysconfig/network-scripts/ifup

• /etc/sysconfig/network-scripts/ifdown

• /etc/sysconfig/network-scripts/network-functions

• /etc/sysconfig/network-scripts/ifcfg- <if-name>

• /etc/sysconfig/network-scripts/ifcfg- <if-name>- <clone-name>

• /etc/sysconfig/network-scripts/chat- <if-name>

• /etc/sysconfig/network-scripts/dip- <if-name>

• /etc/sysconfig/network-scripts/ifup-post

Miremoscadaunodeellos.

/etc/sysconfig/network-scripts/ifup y/etc/sysconfig/network-scripts/ifdown

Setratadeenlacessimbólicosa /sbin/ifup y a /sbin/ifdown , respectivamente.Sonlos dosúnicosscriptsdeestedirectorioquedeberíanpoderserllamadosdirectamente;estosdosscriptslla-mana los demásenfuncióndesi los necesitano no. Estosenlacessimbólicosestánaquípor moti-vos prácticos— seguramenteseborraránen próximasversiones,asíquesolamentesedeberíausar/sbin/ifup y /sbin/ifdown .

Estosscriptstomanunargumento:el nombredeldispositivo (comoeth0 ). Sellamanconunsegundoargumentoboot durantela secuenciade arranque,de tal forma quelos dispositvos queno tienenpor quéestaren funcionamiento(ONBOOT=no, [mire másabajo])puedenserignoradosduranteelarranque.

/etc/sysconfig/network-scripts/network-functions

Realmenteno setratade un ficheropúblico. Contienefuncionescon las quelos scriptspuedenle-vantary bajarlasinterfaces.Particularmente,contienela mayoríadel códigodemanejodeinterfacesalternativasasícomonotificacióndecambiodeinterfacesconnetreport , queesel programaquedicealosscriptsdeadministraciónqueenvienunaseñalprocesollamadonetreport cuandoocurracualquiertipo decambiosenlas interfacesdered.

Page 56: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

56 Capítulo 3:Proceso de arranque, inicio y cierre del sistema

/etc/sysconfig/network-scripts/ifcfg- <if-name> y/etc/sysconfig/network-scripts/ifcfg- <if-name>: <clone-name>

El primerodelosdosficherosdefine la interfaz,mientrasqueel segundocontienetansólo lasdefini-cionesquesondiferentesenunainterfaz"alias"(o alternativa). Ambosrequierenqueseepecifiqueun<if-name> (nombredela interfazdered). Porejemplo,los númerosderedpuedenserdiferentesperotodolo demásdebería estarenun clon del ficheromientrasquetodala configuracióndeldispo-sitivo deberíaestarenel fichero ifcfg .

Los objetosquepuedenserdefinidosenun ficheroifcfg dependendel tipo deinterfaz.

Los siguientesvaloressuelenserhabituales:

• DEVICE=<name>, donde<name> esel nombredeldispositivo físico(exceptoenel casodelosdispositivosPPPasignadosdinámicamente,dóndeestaríael "nombrelógico").

• IPADDR=<addr>, donde<addr> esla direcciónIP.

• NETMASK=<mask>, donde<mask> esel valor dela máscaradered.

• NETWORK=<addr>, donde<addr> esla direccióndered.

• BROADCAST=<addr>, donde<addr> esla direccióndebroadcast.

• GATEWAY=<addr>, donde<addr> esla direccióndela puertadeenlace.

• ONBOOT=<answer>, done<answer> puedeser:

– yes — si queremosiniciar el dispositivo enel momentodel arranque.

– no — si no queremosiniciar el dispositivo enel momentodel arranque.

• USERCTL=<answer>, donde<answer> puedeser:

– yes — si cualquierusuariopuedecontrolarestedispostivo.

– no — si los usuariosno-administradoresno puedencotnrolarestedispositivo.

• BOOTPROTO=<proto>, donde<proto> puedeser:

– none — No seusaráningúnprotocoloenel momentodel arranque.

– bootp — Seusaráel protocoloBOOTP.

– dhcp — Seusará el protocoloDHCP.

Los siguientesvaloressoncomunesa todoslos ficherosSLIP:

• PERSIST=<answer>, donde<answer> puedeser:

Page 57: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 3.4:Niveles de ejecución Init 57

– yes — Si estedispositivo sedebemanteneractivo todoel tiempo,inclusodespuésdehabersidodesactivadounavezhayacolgadoel módem.

– no — Estedispositivo no deberámantenerseactivo todoel tiempo.

• MODEMPORT=<port>, donde<port> esel nombredeldispositivo delpuertodelmódem(porejemplo,"/dev/modem ").

• LINESPEED=<baud>, donde<baud> esla velocidaddel modem(porejemplo,"115200 ").

• DEFABORT=<answer>, donde<answer> puedeser:

– yes — Parainsertarlascadenaspordefectoal crear/modificar un scriptparaestainterfaz.

– no — Parano insertarlascadenaspor defectoal crear/modificar un scriptparaestainterfaz.

/etc/sysconfig/network-scripts/chat- <if-name>Esteficheroesun script dechatparaconexionesSLIP y pretendeserquienestablezcala conexión.ParadispositivosSLIP, seescribeun scriptDIP desdeel scriptdechat.

/etc/sysconfig/network-scripts/ifup-postEsteficherosellamarácuandoun dispositivo dered(exceptoun dispositivo SLIP)seinicie. Llamaa/etc/sysconfig/network-scripts/ifup-routes paraproporcionarrutasestáticasquedependendeesedispositivo, proporcionaraliasparaesedispositivo, y configurarun nombredehost,si todavía no ha sido configurado— y el nombrede hostsepuedeencontrarmediantela IP de esedispositivo. ifup-post envía SIGIO a cualquierprogramaquehayasolicitadonotificacionesdeeventosde red.

Sepuedeextenderesteficheroparaqueconfigure el serviciode nombrado,llamadasarbitrariasascriptsy muchomás,enfuncióndesusnecesidades.

3.4 Niveles de ejecución InitLa ideaqueseescondedetrásdel funcionamientodediferentesserviciosendiferentesnivelesdeeje-cuciónradicaesencialmenteenelhechodequediferentessistemassepuedenusardediferentesformasdeinicio. Algunosserviciosno sepuedenutilizar hastaqueel sistemaseencuentreenun estadopar-ticular, o modo, comopuedeserpreparadoparamásdeun usuario,o conla reddisponible.Existensituacionesen las quepuedequenosintereseoperaren un nivel de ejecución másbajo, comoporejemplosi queremosverificar erroresderedenel nivel deejecución 2, o queremosdejarel nivel deejecuciónen3 sinqueseejecuteningunasesióndeX. Enestoscasos,ejecutarserviciosquerequierende un modode sistemamásalto no tienesentido,ya queno funcionaráncorrectamentede ninguna

Page 58: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

58 Capítulo 3:Proceso de arranque, inicio y cierre del sistema

manera.Configurandocadaservicioparaqueseinicie cuandoestemosenun nivel deejecuciónpar-ticular, aseguraremosquelos procesosseiniciaránenordeny quepodremoscambiarrápidamenteelmododela máquinasin molestarnosdequé serviciostenemosqueiniciar o pararmanualmente.

Normalmente,RedHat Linux operaenel nivel deejecución3 — modomultiusuariocompleto.EnRedHat Linux secontemplanlos siguientesnivelesdeejecución:

• 0 — Halt (Parada)

• 1 — Single-usermode(Modo monousuario)

• 2 — Multi-usermode(Modo multiusuario),sin soportedered

• 3 — Full multi-usermode(Modo multiusuariocompleto)

• 4 — No seutiliza

• 5 — Full multi-usermode(Modo multiusuariocompleto)(conlogin gráfico basadoen X)

• 6 — Reboot(Reiniciar)

El nivel de ejecuciónparael inicio y paradadeun sistemaseconfigura en /etc/inittab . Paramásinformaciónsobre/etc/inittab , consultela Sección 3.2.3,SysVInit.

Si su máquinase quedaen un estadoen el que no arranca,debidoa una mala configuración de/etc/inittab o nole dejahacerlogin ensusistemaportenercorruptoel fichero/etc/passwd(o simplementeha olvidado su contraseña),arranqueel sistemaen modo monousuariotecleandolinux single en la líneaboot: de LILO. Seiniciaráel sistemaen modobásicoy tendráunashellparapoderarreglar los problemasquetenga.

3.5 Utilidades InitscriptLa utilidad chkconfig queseencuentraen /sbin proporcionaun comandode mantenimientoparala jerarquíadeficheros/etc/rc.d/init.d . Ali via un pocoa los administradoresdesiste-masde tenerquemanipulardirectamentela mayoríade los enlacessimbólicosen los directoriosde/etc/rc.d .

Además,existe la utilidad ntsysv en /usr/sbin queproporcionaunainterfaz de pantalla,quepuederesultarmuchomásfácil deutilizarquechkconfig . Ambasutilidadesdebenejecutarsecomoroot.

Mire laspáginasdemandechkconfig y ntsysv paraobtenermásinformación.

Page 59: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 3.7:Apagar 59

3.6 Ejecutar programas en el inicioEl script /etc/rc.d/rc.local esejecutadoenel inicio del sistemapor el comandoinit , unavezqueel restodela inicializaciónsehacompletado,y siemprequecambiemosdenivel deejecución.Podráañadircomandosadicionalesde inicializaciónaquí. Por ejemplo,si deseainiciar demoniosadicionaleso inicializar unaimpresoradeterminada.

Además,si requiereconfigurarlospuertosserie,puedecreary editarel fichero/etc/rc.serial ,queseráejecutadoautomáticamenteenel inicio. Estescriptpuedeejecutarun númerodecomandossetserial paraconfigurarlospuertosseriedelsistema.Mire la páginademanualdesetserialparaobtenermásinformación.

El /etc/rc.d/rc.local por defectocreaun bannerde login conel nombredela máquinay laversióndel kernelquetengainstalada.

3.7 ApagarParaapagarRed Hat Linux, ejecuteel comandoshutdown . Puedeleer la páginade manualdeshutdown paraobtenermásdetalles,perolos parámetrosmásusualesson:

/sbin/shutdown -h now/sbin/shutdown -r now

Deberáejecutarshutdown comoroot. Unavezquehayaapagadotodo,la opción-h pararála má-quinay la opción-r la reiniciará.

Aunqueel comandoreboot y el comandohalt puedaninvocarshutdown , mientrasel sistemaseejecuteenlosnivelesdeejecución1-5,esunamalacostumbre,yaqueno todoslossistemasLinuxsoportanestaopción.

ADVERTENCIA

Si su ordenador no seapagapor sí solo,no deberáapagarlo hastaqueno veaun mensajeen la pantalla indicándolequepuedehacerlo.

Siseproduceun fallo mientrasqueesperaestemensaje,estoquieredecirque lo mismo está intentando apagar su máquina antesde que las par-ticionesde discohayan sido desmontadas.Esto puedeprovocar erroresen el sistemade ficheros,incluso hastael punto de no permitirle arran-car el sistemala próxima vezque intente iniciarlo. Tengapacienciaa lahora de apagar su sistema.

Page 60: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

60 Capítulo 3:Proceso de arranque, inicio y cierre del sistema

3.8 Diferencias en el proceso de arranque en otrasarquitecturasCadaunadelasarquitecturassoprtadasporRedHatLinux arrancael sistemaoperativo deunaforma.Sin embargo, unavez queel kernelde RedHat Linux seempiezaa iniciar y transfiere el procesode inicio a init , aparecenlos mismoseventosencadaarquitecturade la mismamanera.La únicadiferenciaesla formaenla queRedHatLinux encuentrael kernely lo cargaparapoderiniciar init .

Consultela información deinstalaciónparacadatipo dearquitecturaparaobtenerinformacióndeta-lladasobrelos diferentesmétodosde inicio.

Page 61: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 4.2:Ventajas y desventajas de LDAP 61

4 Lightweight Director y Access Protocol(LDAP)4.1 ¿Qué es LDAP?LDAP (Lightweight Dir ectory AccessProtocol) esun estándarabiertoparalos serviciosglobaleso localesenunaredy/o en Internet. Un directorio,gestionadodesdeel LDAP separecea unaguíatelefónica.LDAP puedegestionarmuchaotrainformación,peroenla actualidadseutiliza principal-menteparaasociarnombresa númerosde teléfonoy a direccionese-mail. Los directoriossoportanun granvolumendetráfico, perolos datosenlos directoriosdespuésno cambiantana menudo.

LDAP esmuchomásútil queunaguía telefónicade papel,dadoqueel diseño de LDAP ha sidopensadoparasoportarla difusión a travésde los servidoresLDAP en Internet,un pococomoparael Domain Name Service (DNS). El DNS funcionacomounaagendateniendorastrode la copianombre_dominio/IP. El servidorDNSinformaa lasmáquinasdela reddedondeenviar los paquetes.Enel futuro,LDAP proporcionaráel mismotipo deaccesoglobalparamuchostiposdeinformaciónalos directorios:enla actualidad,LDAP seusahabitualmenteenel interiordedeterminadasempresasgrandes,comouniversidadeso sociedades,paragestionarlos serviciosa los directorios.

LDAP esun sistemacliente-servidor. Un clienteLDAP seconectaa unservidorLDAP y requieredeinformacióno proporcionalos datosnecesariosparaaccedera un directorio. El servidorrespondeala solicitud,envía la consultaa otroservidoro aceptala información paraincorporarlaal directorio.

LDAP seconoceavecescomoX.500Lite . X.500tieneunestándarinternacionalparalosdirectorios.X.500incluyemuchascaracterísticasinteresantesperoesmuchomáscomplejoy requieredegrandesrecursosy unaestructuraOSI totalmentecompatible.LDAP, porel contrario,funcionademaneraco-rrectaencualquierPCy escompatibleconel protocoloTCP/IP. LDAP puedeaccederalosdirectoriosX.500perono soportatodaslasfuncionesdeX.500.

En estecapítuloharemosreferenciaa la configuracióny usode OpenLDAP, una implementaciónopen-sourcede LDAP. OpenLDAP incluye slapd , que es un servidor independienteLDAP;slurpd , un servidor independientecon propagaciónde LDAP; librerías que implementanelprotocoloLDAP utilidades;instrumentosy clientesdemuestra.

4.2 Ventajas y desventajas de LDAPLa ventajaprincipaldeusarLDAP esla consolidación deciertotipo deinformación enel interior desuempresa.Porejemplo,todaslasdiferenteslistasdeusuariosenel interiordesuempresapuedenserfusionadasen un solo directorioLDAP. Estedirectorio,a continuación,podrá serconsultadodesdecualquieraplicaciónhabilitadaparaLDAP a la que le sirva la información. El directorio tambiénpodrá serutilizadopor los usuariosquenecesiteninformación sobreéste.

Page 62: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

62 Capítulo 4:Lightweight Directory Access Protocol (LDAP)

OtrasventajasdeLDAP sonqueincluyeentreotrascosasgranfacilidadde implementar(si lo com-paramosconX.500)y la coherenciadesusAPI. Lo cualsignificaqueel númerodeaplicacionesy depuertasdeenlacedequedistrutaLDAP puedecrecerenel futuro.

El ladonegativo esquesi deseautilizar LDAP, debeusarunclientehabilitadoparaLDAP o bienpasara travésdeunapuertadeenlaceLDAP. Comoya hemosmencionadoanteriormente,la presenciadeLDAP creceráenel futuro,peroporahora,nohaymuchasaplicacionesdelasquedisfrutar. Además,si bienLDAP soportaalgunoscontrolesenel acceso,no soportatodoslos aspectosde la seguridadincluidosen X.500.

4.3 Uso de LDAPMuchasaplicacionesdeNetscape,incluidoNetscapeRoaming Access estánhabilitadasparaLDAP.Sendmail puedeusarLDAP parabuscarunadirección. Suempresapuedeutilizar LDAP comoundirectoriocompartidopor todala empresay/o unservidordenombres(enel lugardel NIS o ficherosplanos).Tambiénpuedeusarun servidorLDAP personalparallevar suagendaprivada(consultelaSección 4.11,Recursosadicionales)

Ya queLDAP esun protocoloconfigurable,sepuedeutilizar paraguardarcasicualquiertipo de in-formaciónrelativa a unaestructuradeorganizaciónparticular.

4.3.1 Aplicaciones LDAPMuchasaplicacionesclientedisponiblesvisionany cambianla informaciónLDAP:

• Navegador/Editor LDAP — Herramientaescritaal 100%Java parael desarrolloa travésdediferentesplataformas,disponiblesen http://www.iit.edu/~gawojar/ldap

• GQ — ClienteLADP quesoportaGTK, disponiblecon la distribucióndeRedHat Linux 7.1 oen http://biot.com/gq

• kldap — Clienteparael proyectoKDE, disponibleen http://www.mountpoint.ch/oliver/kldap

4.3.2 LDAP y PAMLDAP puedeserusadocomounserviciodeautenticacióna travésdelmódulopam_ldap . LDAP seusahabitualmentecomoservidorcentralizadodemaneratal quelos usuariostenganun login unifi-cadoquecubralosterminales,losservidoresPOP, losservidoresIMAP, máquinasconectadasala redqueutilizanSAMBA y tambiénlasmáquinasWindowsNT/2000.TodasestassituacionespuedensergestionadasatravésdelmismoID delusuarioy sucontraseña,usandoLDAP. El módulopam_ldapestáincluido enel paquetenss_ldap .

Page 63: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 4.4:Terminología LDAP 63

4.4 Terminología LDAPUnaentrada esunaunidadenun directorioLDAP. UnaentradaesidentificadadesdeDistinguishedName (DN).

Cadaentradatieneatributos;losatributossonfragmentosdeinformacióndirectamenteasociadosconla entrada.Por ejemplo,unaempresapodría serunaentradaLDAP. Los atributosasociadosa unaempresapodrían serel númerode fax, la dirección,etc. Las personaspodríanserotra entradadeldirectorioLDAP. Atributoscomunesa las personassonel númerode teléfonoy susdireccionesdee-mail.

Ciertosatributossonnecesarios,mientrasqueotrossonopcionales.Un objectclassdiscriminalosatributosnecesariosde los queno lo son. La definición de objectclassla encuentraen el directorioetc/openldap/schema .

El LDAP Data Inter changeFormat (LDIF) esunficheroconformatotexto ASCII paralasentradasLDAP. LosficherosqueexportaneimportandatosdeunservidorLDAP debenestarenformatoLDIF.UnaentradaLDIF separecea:

[< id>]dn: <distinguished name><attrtype>: <attrvalue><attrtype>: <attrvalue><attrtype>: <attrvalue>

Unaentradapuedecontenertantaslíneasemparejadas<attrtype>: <attrvalue> comoseannecesarias.Una líneavacíaindica quela entradaha terminadoy queotra entradaestáa puntodecomenzar.

ATENCION�

Lasparejas<attrtype> y <attrvalue> debenserdefinidasenun es-quemaantesdequepuedanserusadas.No puededefinirlas simplementeenun ficheroLDIF y esperarun servidorLDAP sin datoscorrespondientesenel esquemaparasercapacesdeusarestainformación.

Cualquiercosacomprendidaentre< > esvariabley puedeserconfiguradapor usdedcuandoañadaunaentradaLDAP, a excepciónde<id>. El <id> esun númeronormalmenteconfiguradopor lashe-rramientasLDAP cuandoañadeunanuevaentraday probablementenonecesitaránuncaconfigurarlamanualmente.

Page 64: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

64 Capítulo 4:Lightweight Directory Access Protocol (LDAP)

4.5 Mejoras de OpenLDAP 2.0OpenLDAP 2.0 representaunamayoractualización parala aplicación,incluyendo:

• SoporteLDAPv3— Actulamentefuncionacon SASL, TLS, andSSL,entreotros,con soportecompletoparaRFC2251-2256;muchosdeloscambiosdesdeLDAPv2tienencomoobjetivo ayu-dara hacerun protocolomássegurodeLDAP.

• SoporteIPv6 — Actualmentesoportala siguientegeneracióndeprotocolosdeInternet.

• IPC sobreLDAP— OpenLDAP puedecomunicarsedentrodeunsistemaparticularsintenerquepasara travésdeunared,demaneraqueseamásseguro.

• API deC actualizada— Mejorael modoenquelos programadoressepuedenconectary usarlaaplicación.

• SoporteLDIFv1 — Compatiblecompletamentecon la versión1 del formatode intercambiodedatos(LDIF)de LADP.

• Sevidor LDAP independientemejorado— Incluyeel sistemade control de accesoactualizado,herramientasmejoradasy muchomás.

4.6 Ficheros OpenLDAPLos archivosdeconfiguraciónOpenLDAP estáninstaladosenel directorio/etc/openldap . Sihaceun ls en /etc/openldap , veráalgoparecidoa:

ldap.conf ldapsearchprefs.conf schemaldapfilter.conf ldaptemplates.conf slapd.conf

4.6.1 Modificar /etc/openldap/slapd.confEl archivo slapd.conf , localizadoen /etc/openldap , contienela informacióndela configu-raciónnecesariaparasuservidorslapd LDAP. Necesitarámodificarestearchivo parahacerloespe-cífico a sudominioy suservidor.

La líneasuffix asignael dominioparael queel servidorLDAP proporcionará información.La líneasuffix deberíasercambiada:

suffix "dc=your-domain, dc=com"

paraquereflejeel nombrededominio. Porejemplo:

suffix "dc=acmewidgets, dc=com"

o

suffix "dc=acmeuniversity, dc=edu"

Page 65: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 4.6:Ficheros OpenLDAP 65

La entradarootdnesel DN paraun usuarioqueno estálimitado por el control de accesoo por losparámetrosadministrativos limitadosparalas operacionesen el directorioLDAP. El usuariorootdnpuedeservistocomoelusuariorootparaeldirectorioLDAP. La línearootdndebesercambiadadesde:

rootdn "cn=root, dc=your-domain, dc=com"

a algocomo:

rootdn "cn=root, dc=redhat, dc=com"

o

rootdn "cn=ldapmanager, dc=my_organization, dc=org"

Cambiela línearootpw:

rootpw secret

a algocomo:

rootpw {crypt}s4L9sOIJo4kBM

En esteejemplo,seusaunacontraseña de root encriptada,mejor soluciónqueusarcontraseñasderootentexto planoenel ficheroslapd.conf . Parahacerestacadenaencriptada,deberáo copiarlodesdeun ficheropasswd , o usarPerl:

perl -e "print crypt(’ passwd’,’ a_salt_string’);"

Enla líneaPerlprecedente,sehautilizadouncriteriodedoscaracteres,y passwd esla versióntextode la contraseña.

Tambiénpuedecopiarunaentradapasswd desde/etc/passwd , peroestonofuncionasi laentradapasswd esunacontraseñaMD5 (por defectoenRedHat Linux 7.1).

4.6.2 El directorio schemaNuevo enla versión 2 deOpenLDAP, el directorioschema sostienevariasdefinicionesdeLDAP,previamentelocalizadasenlosficherosslapd.at.conf y slapd.oc.conf . Todaslasdefinicio-nesde sintaxisdeatrib utos y definicionesobjectclassestánlocalizadasenarchivosdeun esquemadiferente.Los archivosconesquemasdiferentesen /etc/openldap/slapd.conf usanlíneasinclude , comosemuestranenel ejemplo:

include /etc/openldap/schema/core.schemainclude /etc/openldap/schema/cosine.schemainclude /etc/openldap/schema/inetorgperson.schemainclude /etc/openldap/schema/nis.schemainclude /etc/openldap/schema/rfc822-MailMember.schemainclude /etc/openldap/schema/autofs.schemainclude /etc/openldap/schema/kerberosobject.schema

Page 66: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

66 Capítulo 4:Lightweight Directory Access Protocol (LDAP)

ATENCION�

No deberíamodificar ningúnartículodel esquemadefinido en los archivosdeesquemainstaladospor OpenLDAP.

Puedeextenderel esquemautilizadopor OpenLDAP parasoportartipos de atributosadicionalesyclasesde objetosusandolos ficherosde esquemacomo guía. Para hacerlo,creeun archivo lo-cal.schema en el directorio /etc/openldap/schema . Refíerasea estenuevo esquemaenslapd.conf añandiendolasiguientelíneaenlaslíneaspredeterminadasdelesquemadeinclude :

include /etc/openldap/schema/local.schema

Definalostiposdeatributosy lasclasesdeobjetosenel archivo local.schema . Muchasorganiza-cionesutilizantiposdeatributosy clasesdeobjetosdelos ficherosdeesquemainstaladospordefectoy modificadosparasuusoenel archivo local.schema . Estorepresentaunaayudaparala sintaxisdelesquemaal mismotiempoqueseencuentralasnecesidadesimmediatasdesuorganización.

El objetivo de estecapítuloesel de ampliaresquemasparaunir ciertosrequisitosespecíficos. Veahttp://www.openldap.org/doc/admin/schema.htmlparainformarsesobrecómoescribirnuevos fiche-ros deesquema.

4.7 Demonios y utilidades OpenLDAPEl paqueteOpenLDAP incluyedosdemonios:slapd y slurpd .

El demonioslapd esel demonioestándardeLDAP, quenecesitaráparaejecutarLDAP.

El demonioslurpd controlala réplicadelosdirectoriosLDAP enunared.Slurpd envia loscam-biosdel directoriomaestroLDAP al directorioesclavo LDAP. No necesitará usarslurpd a no serquetengamásdeun servidorLDAP en su red. Si tienemásde un servidorLDAP, tendráqueusarslurpd paratenerel directorioLDAP sincronizado.

OpenLDAP tambiénincluye algunasutilidadesparaañadir, modificar y borrar las entradasen undirectorioLDAP:

• El dispositivo ldapmodify se usaparamodificar las entradasen unabasede datosLDAP,aceptandola entradamedianteun ficheroo entradaestándar.

• La utilidad ldapadd seusaparaañadirentradasal directorio(ldapadd esun enlacefijo paraldapmodify -a ).

• Ldapsearch seusaparabuscarentradasenel directorioLDAP usandoel indicadordecoman-dosde la shell.

Page 67: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 4.8:Módulos para añadir funcionalidad a LDAP 67

• ldapdelete — borralasentradasdel directorioLDAP, aceptandoentradasa travésdeun ar-chivo o del indicadordecomandosde la shell.

A excepciónde ldapsearch , cadaunadeestasutilidadesesmuchomásfácil deusarrefiriéndosea un ficheroconlos cambiospor realizarquea escribirlos comandosunotrasotro. Cadaunadelaspáginasdemanualrespectivascubrela sintaxisdeestosficheros.

Paraimportaro exportarbloquesdeinformaciónconun directorioslapd o paraejecutartareasad-ministrativassimilaresserequierendiferentesutilidades,localizadasen /usr/sbin :

• slapadd — añadeentradasdesdeun ficheroLDIF a un directorioLDAP. Porejemplo,ejecuteldif dondeldif esel nombredel ficheroLDIF quecontienenuevasentradas.

• slapcat — dejafueradeldirectorioLAPD entradasy lasguardaenel ficheroLDIF. Porejem-plo, ejecute/usr/sbin/slapcat -l ldif dondeldif esel nombredeun archivo LDIFquecontienela entradadeun directorioLDAP.

• slapindex — vuelve a ponerenun índicela basededatosslapd basadaenel contenidodela basededatosactual.Ejecute/usr/sbin/slapindex paraempezarconel índice.

• slappasswd — generaunvalordecontraseñadeusuarioparausarconel valor ldapmodifyo rootpw en /etc/openldap/slapd.conf . Ejecute/usr/sbin/slappasswd paracrearunacontraseña.

ADVERTENCIA

Asegúresededetenerslapd antesdeusar slapadd , slapcat o sla-pindex . De lo contrario, la consistenciade su basede datosLDAP co-rr erá riesgo.

Lealaspáginasdemanual(manpages)paraobtenermásinformación sobreestasutilidades.

4.8 Módulos para añadir funcionalidad a LDAPRedHat Linux incluyevariospaquetesqueañadenfuncionalidada LDAP.

El módulonss_ldap esun móduloLDAP parael Solaris Nameservice Switch (NSS).NSSesunconjuntoparalas libreríasC, necesariasparaaccedera la informacióndel directorioLDAP, junto alNetwork Inf ormation Service (NIS). El módulonss_ldap esnecesarioparausarLDAP comounserviciodenombresnativo.

El módulopam_ldap esnecesarioparaintegrar la autenticaciónde LDAP en los módulosde au-tentificaciónconectables(PAM) API. Si usapam_ldap , losusuariospuedenverificary cambiarsus

Page 68: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

68 Capítulo 4:Lightweight Directory Access Protocol (LDAP)

contraseñasusandoel directorioLDAP. Losmódulosnss_ldap y pam_ldap formanpartedelpa-quetenss_ldap .

Red Hat Linux también incluye los módulosLDAP para el servidor web Apache. El móduloauth_ldap sirve paraautentificar los clientesHTTP paralasentradasdel usuarioenel directorioLDAP. El módulophp-ldap añadesoporteLDAP al lenguajeescritoPHP4HTML-embedded.Losmódulosauth_ldap y php-ldap deberánser compiladosen Apachecomo Dynamic SharedObjects(DSOs)

4.9 LDAP How To: Resumen breveEsteapartadopermitedarunrepasoa los pasosnecesariosparahacerfuncionarun directorioLDAP.

1. Asegúresede queRPM openldap y cualquierotro RPM relativo a LDAP quenecesiteesténinstalados.

2. Lea la Guía Quick Start en el sitio OpenLDAP ( http://www.openldap.org/faq/data/ca-che/172.html; comiencepor "Modificar la configuración de los ficheros para slapd", vistoque los ficheros LDAP estánya instalados), o el Linux-LDAP HOWTO ( http://www.li-nuxdoc.org/HOWTO/LDAP-HOWTO.html) para las instruccionesde como usarLDAP en susistema.Ambosexplicanel restodelos pasosa seguir.

3. Modifiqueel fichero/etc/openldap/slapd.conf paraadaptarloa susistema.(ConsultelaSección4.6.1,Modificar /etc/openldap/slapd.conf paramásinformaciónsobrecomomodificar slapd.conf .)

4. Comienceslapd tecleando/etc/rc.d/init.d/ldap start . TrashaberconfiguradoLDAP correctamente,deberíausarLinuxconf o ntsysv paraconfigurarLDAP e iniciar el sis-tema.

5. CreesudirectorioLDAP (ejemplosdeentradasLDAP, lasencontraráenel sitio PADL Softwareen http://www.padl.com/ldap_examples.html).

6. Añadalasentradasa sudirectorioLDAP con ldapadd o conun script.

7. Useldapsearch paraverificar queslapd funcione.

8. Llegadosa estepunto su directorio LDAP debehabersido ya creado. EL siguientepasoesconfigurarlasaplicacioneshabilitadasparaLDAP demaneraquepuedanusarel directorioLDAP.

4.10 Configurar su sistema para la autentificaciónmediante OpenLDAPEsteapartadoofreceunasupervisióndecómoconfigurarsusistemaRedHatLinux paraautentificarseconel usodeOpenLDAP OpenLDAP. A menosqueustedseaunexpertodeOpenLDAP, necesitará

Page 69: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 4.10:Configurar su sistema para la autentificación mediante OpenLDAP 69

másdocumentaciónquela proporcionada.Paraobtenerlaremítasea la Sección 4.11,Recursosadi-cionales

4.10.1 Instalación de los paquetes LDAP necesariosEn primer lugarasegúresedequelos paquetesapropiadossoninstaladostantoenel servidorLDAPcomoenlasmáquinasclienteLDAP. El servidorLDAP necesitadelpaqueteopenldap .

Las máquinascliente LDAP necesitande la instalaciónde los siguientespaquetes:openldap ,auth_ldap y nss_ldap .

4.10.2 Modificar los fic heros de configuraciónModificar /etc/openldap/slapd.confA continuación,modifiqueel ficheroslapd.conf paraasegurarsedequeseadaptaalasnecesidadesdesuorganización.

Remítasea la Sección 4.6.1,Modificar /etc/openldap/slapd.conf paraulterior informaciónsobremodificar slapd.conf .

Modificar ldap.confModifique los ficherosldap.conf en /etc y en /etc/openldap sobreel servidorLDAP ysobrelos clientes.

Modifique /etc/ldap.conf , el fichero de configuraciónparanss_ldap y pam_ldap , parareflejarsubasedeorganizacióny búsqueda.El fichero/etc/openldap/ldap.conf esel ficherodeconfiguraciónparalasherramientasenlíneadecomandoscomoldapsearch , ldapadd , etcydeberásermodificadoparala configuracióndesuLDAP. Lasmáquinasclientenecesitaránqueambosficherosesténmodificadosparasusistema.

Modificar /etc/nsswitch.confParausarnss_ldap , debeañadirldap en los camposapropiadosen /etc/nsswitch.conf .(Pongamuchaatencióncuandocambieestefichero;aseguresédelo queestáhaciendo).Porejemplo:

passwd: files ldapshadow: files ldapgroup: files ldap

PAM y LDAPParatenerlasaplicacionesestándarPAM, ejecuteauthconfig y seleccioneUsar LDAP. (PAM vamásallá de realizarestasupervisiónde LDAP, por lo quesi necesitaayudaconsultela Capítulo 8,Módulosdeautentificaciónconectables(PAM) y/o laspáginasdemanualdePAM.

Page 70: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

70 Capítulo 4:Lightweight Directory Access Protocol (LDAP)

4.10.3 Migrar su viejo método de autentificación al formatoLDAPEl directorio /usr/share/openldap/migration contieneun conjuntode scriptsde shell yPerlparacambiarsusmétodosantiguosdeautentificaciónal formatoLDAP. Deberá haberinstaladoPerlensusistemaparausarestosscripts.

Enprimerlugardeberámodificarel ficheromigrate_common.ph demaneraquereflejesudomi-nio. El dominioDNS por defectodeberíacambiarsede:

$DEFAULT_MAIL_DOMAIN= "padl.com";

a algoparecidoa:

$DEFAULT_MAIL_DOMAIN= " your_company.com";

Tambiénla basepor defectodeberíasercambiada,de:

$DEFAULT_BASE= "dc=padl,dc=com";

a algoparecidoa:

$DEFAULT_BASE= "dc= your_company,dc= com";

Después,debedecidirquéscriptutilizar. La siguientetabladeberíaservirledeayuda:

Tabla 4–1 Scripts de migración a LDAPNombre actual delservicio ¿LDAP está activ ado? Utilice este script:

/etc flat files sí migrate_all_on-line.sh

/etc flat files no migrate_all_of-fline.sh

NetInfo sí migrate_all_ne-tinfo_online.sh

NetInfo no migrate_all_ne-tinfo_offline.sh

NIS (YP) sí migrate_all_nis_on-line.sh

NIS (YP) no migrate_all_nis_of-fline.sh

Page 71: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 4.11:Recursos adicionales 71

Ejecuteel scriptadecuadobasándoseensunombredeservicioactual.

Los ficherosREADMEy migration-tools.txt en /usr/share/openldap/migrationproporcionanmásdetalles.

4.11 Recur sos adicionalesEn la web puedeencontrarmásinformaciónútil referentea LDAP. Useestosrecursos,en especialvisiteel sitio webOpenLDAP y el LDAP HOWTO,antesdeiniciar e introducirLDAP ensusistema.

4.11.1 Documentación instalada• La páginademanualldap esunbuenlugardondeempezaradocumentarsesobreLDAP. Existen

tambiénpáginasdemanualparalosdemoniosy lasutilidadesLDAP. Reviselaspáginasdemanualsi necesitamásinformaciónsobreldapmodify , ldapsearch , etc.

• /usr/share/docs/openldap- versionnumber — contiene un documentogeneralREADMEe informaciónvariada.

4.11.2 Sitios Web útiles• http://www.openldap.org — Sitio del proyectoOpenLDAP, intentode desarrollarun paquete

opensourceLDAP deherramientasdedesarrolloy aplicaciones.

• http://www.redhat.com/mirrors/LDP/HOWTO/LDAP-HOWTO.html — DocumentoLDAP Li-nux HOWTO, quecubrela instalacióna travésdela autentificacióny el registro.

• http://www.padl.com— Desarrolladoresdenss_ldap andpam_ldap , entreotrasherramien-tasútilesde LDAP.

• http://www.innosoft.com/ldapworld — Contieneinformaciónreferentea las versionesLDAPRFCsy LDAP.

• http://www.kingsmountain.com/ldapRoadmap.shtml— El RoadMap deLDAP deJeff Hodgescontieneenlacesa diversasFAQsútilesy emitenoticiasreferentesa LDAP.

• http://www.rudedog.org/auth_ldap— Sitio del módulo de autentificación auth_ldap paraApache.

• http://www.stanford.edu/~bbense/Inst.html— HabladelusodeLDAP conSendmail.

• http://www.webtechniques.com/archives/2000/05/wilcox— Vistapreliminarútil paragestionaragruposenLDAP.

• http://www.ldapman.org/articles— Artículosqueofrecenunabuenaintroduccióna LDAP, in-cluyendométodosparadiseñarun árboldedirectorioy estructurasdedirectoriopersonalizadas.

Page 72: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

72 Capítulo 4:Lightweight Directory Access Protocol (LDAP)

4.11.3 Libr os relacionados• ImplementingLDAP deMark Wilcox; Wrox Press,Inc.

• UnderstandingandDeployingLDAP DirectoryServicesdeTim Howeset al.; MacmillanTech-nical Publishing

Page 73: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 5.1:Usos de CCVS 73

5 Sistema de verificaci ón de tarjeta decrédito (CCVS)El sistemadeverificacióndetarjetasdecrédito(CCVS) usasuordenadory módemparasimularunatarjetadecrédito(tambiénconocidocomoPunto deventa (POS). CCVS incluyevariasinterfacesdeprogramacióndeaplicaciones(APIs) quefacilitan la personalizacióne integraciónconaplicacionessoftwareo productosde la basededatos.

CCVS esseguroy fácil deusar. EscritoenANSI C y ajustadoa estándaresPOSIX,CCVS esporta-ble y defácil integraciónen los sitemasoperativosmodernos,lenguajesdeprogramacióne Internet.CCVS puedeserusadoparaautomatizarprocesosdeloteso mejorarcualquieraplicaciónquerequieraprocesartarjetasdecrédito.

CCVS puedeserusadoenotrospaísessi subancopuedesoportarunade los protocolossoportadospor CCVS. Si estáenCanadá,CCVS soportael protocoloNDC, quepuedeserusadopor cualquierbancoenCanadáparaconfigurarsucuentamercantil.Si estáenunpaísquenoseaEstadosUnidosoCanadá,necesitarverificarlo consubanco.El protocolosoportadopor CCVS quetienemásoportu-nidadesdesersoportadopor unainstitución financierafueradeEstadosUnidosesel protocoloVisa2ndgeneration“K Format” (VITAL).

Una versiónde muestrade CCVS está incluida con RedHat Linux. La versióndemoescomple-tamentefuncionaly puedeserusadaparaCCVS y susistema.La versióndemoharátodoexceptocontactarconsuinstituciónfinanciera.Si eligecomprarCCVS necesitarácontactarconRedHatparacomprarunalicencia.Vayaa http://www.redhat.com/products/ccvs/,paramásinformacióndecomoactivar CCVS.

5.1 Usos de CCVSCCVS destacaenla creacióndeconexionesentreunaaplicacióne-commercey unapuertadeenlacedepagocontarjetadecrédito.Mientrasquelosmodosenquepuedeutilizar CCVS dependendelpro-tocoloqueutiliza supuertadeenlacedepago,enmuchoscasos,CCVS puedeserutilizadaconmuypocoscambiosenun sistemaya existente.Vayaa http://www.redhat.com/products/software/ecom-merce/ccvs/support/docs/protocol-specific.html,parainformaciónespecíficasobrelosdiferentespro-tocolossoportadospor CCVS.

Observe los siguientesejemplosdecómosepuedeusarCCVS:

• CCVS puedesoportarun sistemaparaoperadoresdeteléfonoquetomaórdenesdecatálogoporteléfono.LasextensionesTcl deCCVS puedenserusadasparacrearun GUI (interfazgráfica deusuario)Tcl/Tk quepresentaunainterfazsencillaparalosoperadoresdeteléfono.LosoperadorespuedenentoncesusarlosterminalessimplesX y todoelsoftwareseejecutaráenelservidorcentral.

Page 74: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

74 Capítulo 5:Sistema de verificación de tarjeta de crédito (CCVS)

CCVS solamentenecesitaserinstaladoenun ordenadory losoperadoresno tienenqueesperaratenerunalíneadisponible— todasesastransaccionesiránsobrela mismallamadadeteléfono.

• CCVS puedeserusadoparaayudaraautomatizarla facturación.Porejemplo,el servidordeser-viciosdeinternet(ISP)puedetenerunabasededatosdeclientesenunabasededatosdelservidor.El administradordebasededatosISPpuedeescribirunscriptPerl,combinandoel móduloPerldeCCVS conunmóduloparael sistemadela basededatosISP. El scriptleeríalosdatosdelcliente,procesarála facturación mensualmentey actualizaríael registrode la basededatosparaindicarqueel pagohasido realizado.

• CCVS puedeutilizarseparaagilizarlosprocesosdepagodeunescaparatedetambiénutiliza unacentralitaparagestionarlos pedidospor teléfono.De estemodo,los pedidosprocesadosa travésdela web,medianteel usodeunaaplicaciónestándarCGI o medianteunagentedeventasqueusael programadepersonalizaciónJava y ejecutándoloa travésde la LAN, puedenhacersea travésdela mismaconexión. Además,el sistemadeverificacióndedirecciones(AVS) deCCVS puedeutilizarseparaprevenirel fraudeenlosdosmétodosdepedidosin tenerquepreocuparsesobrelaimplementacióndeestacaracterísticapor separadoencadaunadelasaplicaciones,por lo tanto,ahorrode tiempodedesarrollo.

Aquí encontraráalgunosejemplosdelo queescapazdehacerCCVS. Sepuedeutilizar paramejorarcualquieraspectode susoperacionesquerequierael tratamientode la tarjetade crédito. Entre lasmuchascaracterísticasdeCCVS seincluyen:

• UnalibreríaC conun API documentadoautorizaa los usuariosa integrarCCVS conlasaplica-cionesexistentes.

• UnaextensiónTcl habilitael usodeCCVS conun ladodel servidorTcl como NeoWebScript.

• Un móduloPerl5.0permiteaCCVS trabajarconel lenguajedeprogramaciónCGI máspopularusadohoy endía.

• LacapacidaddeconstruirrápidamenteGUIspersonalizadosusando— Tcl/Tk — tiempoestimadodedesarrollo,menosdeun día.

• Los módulosPython,PHP3y Java permitena CCVS funcionarconotroslenguajesde progra-macióncomunes.

• Los programasCommandLine Interface(CLI) deusointeractivo — llamana programasdesdecualquiershellUNIX y programaenel lenguajeUNIX queprefiera.

• La proteccióncontrael fraudeAVS , permitea loscomerciantescomprobarlastarjetasdecréditorobadas.Muchosbancosdecompensaciónofrecenun mejorcambio(rate)a los comerciantesqueusanAVS, inclusoenpedidoshechospor teléfono.

• Soportamúltiples cuentasmercantiles,permitiendoa los usuariosabrir suspropiastiendasvir-tualesconescaparatesilimitados.Unacuentamercatil esuntipo especialdecuentabancariaque

Page 75: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 5.3:Todo lo que necesita para ejecutar CCVS 75

permitealoscompradoresaceptarpagoscontarjetasdecréditodelosclientes.La cuentamercan-til mantienelos procedimientosdesdelastransaccionesdelastarjetasdecrédito.

• La habilidaddedirigir mútiplestransaccionesenunaúnicasesión,(dossegundosportransacción)sin costeextra o complejidad.

• La seguridaddesercapazdecomprobary crearprogramasdedesarrollodel productosin cargartarjetasdecréditoreales.

5.2 Proceso de verificaci ón de la tarjeta de crédito¿Cómosele dicea la gentecorrientequeconunpequeñotrozodeplásticopuedepermitirseel lujo decomprarunaTV depantallagrande?

En primer lugar, un consumidordala informacióndesutarjetadecréditoal comerciante.El comer-ciantetransmiteesosdatos,conel códigoID delcomerciante,aunbancodecompensación.Istapuedeserel bancoquehaemitidoal comerciantesucuentade la tarjetadecrédito,peroesmásparecidoaunaempresaquehapactadoconel bancodel comerciantecompensarcobrosa cambiodeunacuotafija y un porcentajedecadacobroprocesado.

Losdatossetransmitenleyendola tarjetay losnúmerosdelcomercianteatravésdel teléfono,usandoun terminalPOS,o usandoCCVS u otro tipo desotfwareparatransmitirinformacióndesdeunorde-nador

El bancodecompensaciónseponeencontactoconel bancoqueemitela tarjetadecréditodelclientey verifica queésteaceptael cobro. Si esaceptado,el bancodecompensación mandaun mensajedeconfirmaciónalcomerciante.Al mismotiempo,el créditodisponibledela tarjetadecréditodelclientesele descuentala cantidadde la transacción.

Al final de un día de compras,el comerciante(de hecho,el ordenadordel comercianteo terminaldelas tarjetasdecrédito)llamaráal bancodecompensacióny verificarátodaslastransacciontesdeldíaparagarantizarqueel sistemadel comerciantey al bancodecompensaciónestándeacuerdoconlastransaccionesquesehanproducidoa lo largo del día. A continuaciónel bancodecompensacióninicia el procesode transferirel dinerodesdeel bancode tarjetade créditoa la cuentabancariadelcomerciante.

5.3 Todo lo que necesita para ejecutar CCVSParaejecutarCCVS, necesitará un módemy unacuentamercantil. Tambiénnecesitará seguir unaspautasparaejecutarcorrectamenteCCVS.

Page 76: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

76 Capítulo 5:Sistema de verificación de tarjeta de crédito (CCVS)

5.3.1 MódemsNecesitarácomomínimo un módemdedicadoal usode CCVS. Los protocolosde las tarjetasdecréditono soportancompresióno correcciónde erroresdurantela conexión del módem. Podemosproporcionarleinformaciónacercadelascaracterísticasdelos siguientemódems:

• HayesOptima

• US RoboticsCourier

• US RoboticsSportster

• ChaseResearchPCI-RAS

NotaPorfavor useun módemo los módemsdela lista anterior.

Si usaun módemqueno sesoporte,puedesermuy difícil hacerqueéstefuncioneconCCVS. Tambiéndebecomprobarla listadecompatibilidaddelhardware de Red Hat Linux en http://www.redhat.com/support/hardware/paraestarseguroquesumódemfuncionará conRedHat Linux

Si el módemqueusanoapareceenla lista,consulteel manualdelmódemparaencontrarel stringquedesactiva todaslascompresionesy correccionesdeerroresy el stringquereiniciasumódemparausonormal.NecesitaráproporcionarestosdosstringscuandoconfigureCCVS.

5.3.2 Cuentas mercantilesSi estáconfigurandounacuentamercantilo estámodificandounacuentamercantilexistenteparausarCCVS, el proveedorde la cuentamercantilquerrácomprobarqueCCVS puedefuncionarconel protocoloqueusa. Las cartasde certificación paraprotocolosespecíficos estándisponiblesenhttp://www.redhat.com/certifications.html.Imprimatodaslaspáginasdela cartacorrespondientesalprotocoloqueusaráy muéstrelasa suproveedordecuentamercantil.

El proveedordebeusarunodelos protocolossoportadospor CCVS:

• ProtocoloFirst DataCorporation’sETC PLUS (conocidotambiéncomoFDR7, ETC+, ETC7,Omaha)

• ProtocoloFirst DataCorporation’s SouthPlatform(conocidotambiéncomoNabanco)

• ProtocoloGlobalPaymentSystems’ MAPP (conocidotambiéncomoSt. Louis)

• ProtocoloGlobalPaymentSystems’ NDC (conocidotambiéncomoAtlanta)

Page 77: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 5.3:Todo lo que necesita para ejecutar CCVS 77

• ProtocoloVisaInternational’s VITAL (conocidotambiéncomoVisaNet,Visa2ndgeneration,Kformat)

• ProtocoloPaymentech’s UTF (conocidotambiéncomoGENSAR)

• ProtocoloNOVA InformationSystemsprotocol

Si suproveedordecuentamercantilposeeunodeestosprotocolos,podráusarCCVS.

Una vez hayaidentificadoquéprotocolousará,revise la informaciónaplicablea eseprotocoloenhttp://www.redhat.com/CCVS3.3docs/protocol-specific.htmlantesdeiniciar el procesodeconfigura-cióndeCCVS. La GuíadelprotocoloCCVSdescribela funcionalidadessoportadasporlosdiferentesprotocolos.

5.3.3 Pautas para usar CCVS en su sistemaLos siguientesrequisitospermitenejecutarCCVS fácilmentey eficazmente.Porfavor asegúresedeseguir todaslaspautasantesdeintentarejecutarCCVS.

Uso exclusiv o del módem mientras que se ejecuta CCVSNo ejecuteotrasaplicacionesde softwarequenecesitenaccesoal módemmientrasestéejecutandoCCVS. Istaspuedeninterferir enlasoperacióncorrectadeCCVS haciendoqueel módemseainac-cesibley evitandoquelos nuacute;merosdetarjetadecréditoseanprocesados.

Permisos, privilegios y accesos al módemLamayoríadelospermisosnecesariosparaCCVS sonconfiguradosduranteelprocesodeinstalación,a travésde la creaciónde un grupoespecialllamado"ccvs". Sin embargo, deberá estaral tantodeciertascuestionesreferentesalospermisosdesistemay aCCVS. Dichascuestionesvienendetalladasenestasección.

Todaslasoperacionesparaun configuraciónparticulardeCCVS debenrealizarsedesdeunacuentadeusuariosimple. Unacuentaesrequeridaparaquetodoslos ficherospropiosy permisosseanco-rrectamentefijadosy protegidos(porustedo porsuadministradordelsistema).Estacuentadeusuariodebeserañadidaal grupoccvsantesdeejecutarel programadeconfiguración.

Despuésde queel usuariohayasido añadidoal grupoccvs,ejecutael programade configuraciónCCVS (ccvs_configure ) comoeseusuario.Trashaberejecutadoel programadeconfiguración,el mismousuarioejecutalos comandosdeCCVS paraesaconfiguración.

Si quiereejecutarCCVS conun módem,los usuariosenel grupoccvsdebenserañadidostambiénal grupouucp. Los permisosdel grupouucppuedenno sersuficientesparaejecutarlos módems.Siésteesel casodesusistema,asegúresedequelos miembrosdelgrupoccvstambiéntienenaccesoalpuertoserieparalos módemsqueCCVS necesitausar.

Page 78: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

78 Capítulo 5:Sistema de verificación de tarjeta de crédito (CCVS)

Si estáusandoPHPconCCVS, habiliteel servidorWebparaejecutarlos comandosdeCCVS. Paralograresto,tienequehacerdel usuariodel servidorWebun miembrodel grupoccvs.Normalmente,el usuariotambiénnecesitasermiembrodel grupouucp.

Si noestáusandoPHP, peroquierehacerqueel servidorWebseacapazdeejecutarCCVS, tieneotraopción(porejemplo,suexec , setuid ) haciendoal usuariodelservidorWebunmiembrodelgrupoccvs. Puedeconfigurarlocomoquiera,menossi estáusandoPHP.

Versiones de softwareCCVS requierela versiónTcl 7.6o superiorparaejecutarel GUI incluidoo parausarlasAPIsTcl/Tkincluidasparadesarrollarsupropioescaparategráfico. La versiónTcl 8.3 estáincluidaenRedHatLinux 7.1.

CCVS requierela versiónPerl5.0o superiorparausarlasAPIsdePerlincluidas.La versióndePerl5.6 estáincluidaenRedHat Linux7.1.

5.4 Instalación de CCVSLos RPMsdeCCVS estándisponiblesenel CD Linux ApplicationsLibrary Workstation.

PuedeusarRPM,Gnome-RPM o Kpackage parainstalarlos paquetesdeCCVS:

• CCVS— El núcleode los programasCCVS

• CCVS-devel — El kit dedesarrolloenC

• CCVS-perl — La interfazPerl interfaceparaCCVS

• CCVS-python — La interfazPythonparaCCVS

• CCVS-php3 — La interfazPHP3paraCCVS

• CCVS-tcl — La interfazTcl CCVS

• CCVS-java — La interfazJava paraCCVS (incluidacomocódigofuente)

• CCVS-examples — Ejemplodecódigofuente,necesarioparael desarrollo

5.5 Antes de configurar CCVSAntesdeconfigurarCCVS, esnecesarioquerespondaciertaspreguntassobresusistemay sobrecomoquiereconfigurarCCVS. Paraprepararel procesodeconfiguración,asegúresedeseguir estospasos:

1. Leaatentamentetodala documentacióny errataquevieneconel programa.Consultela Sección5.11,Recursosadicionalesparala localizacióndeladocumentacióninstaladaoenlíneadeCCVS.

2. Compilesetup.txt . El ficherosetup.txt explica lasdiferentesinformacionesnecesariascuando se configura CCVS para usar protocolos particulares. Si compila setup.txt ,

Page 79: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 5.6:Configuración de CCVS 79

tendrántoda la información necesariapara el procesode configuración, evitando, de estemodo, cualquier sorpresaal ejecutar el programa de instalación Puede encontralo en eldirectorio/usr/share/doc/CCVS- <version>. setup.txt estatambiéndisponibleenhttp://www.redhat.com/products/ccvs/support/CCVS3.3docs/setup.txt.

NotaEn la configuracióndela hojadetrabajo,sele pedirá informaciónespe-cíficasobreunprotocolo.Sólo necesitaráproporcionarinformació sobreel protocoloqueva a usar, no esnecesarioquelo hagaparaotrosproto-colos.

3. El programadeinstalacióndeCCVS le preguntarávariascosasacercadelmódem,tengaamanola informaciónnecesaria.Los siguientesinit stringspuedenserusadoscon los módemsquesonsoportados:

HayesOptima or ACCURA

\r~~~\rAT &D3 X4 E0 &K0 &Q0

U.S.RoboticsSportster or Courier

\r~~~\rAT E0 L0 M1 V1 X4 &K0 &M0 +FCLASS=0

ChaseResearch PCI-RAS

\r~~~\rAT E0 %C0 \\N0

Si usaunode los módemssoportados,el programade configuracióntan sólo le preguntaráqueconfirme el string init. Si sumódemno apareceen la lista, consulteel manualdel módemparaencontrarel stringqueanulala compresióny correcióndeerrores,asícomo,el stringquereiniciael módemparausonormal.Necesitará fijar esosdosstringsduranteel procesodeconfiguración.

5.6 Configuración de CCVSDebeconfigurarCCVS parasusistema,si estáejecutandoCCVS enmododepruebao paraprocesarlos datosreales.

Usesu paracambiarla cuentadeusuarioquecreó(unmiembrodelgrupoccvs)paraestaconfigura-ción.

Ejecuteel programadeconfiguracióndeCCVS conel siguientecomando:

/usr/sbin/ccvs_configure

Page 80: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

80 Capítulo 5:Sistema de verificación de tarjeta de crédito (CCVS)

El restodeestasecciónhablarádelprogramadeconfiguraciónCCVS. Deberíaleerla pantallainicial"splash".Pulse[Intro] paraleer la licenciadesoftwaredeCCVS. Puedeusarlos comandosestándardebarrasdedesplazamietoy paginación demore (o el programadepaginaciónconfiguradopor suvariabledeentorno$PAGER)paraleer la licencia.

Cuandohayaleídola licenciay salidode la página,verá

Type "accept" to accept this license, or anything else to exit.

Tecleelapalabraaccept paraaceptarlascondicionesdela licenciay continuarconfigurandoCCVS.Cualquierotraentradale harásalir del programa.

Le apareceráestapantalla:

This program creates the configuration file for CCVS functions.To do this, you will require the following information:

1: The clearing protocol you will be using. This may be MAPP,ETC+, or any of the other protocols which CCVS supports. Thereis also a demo protocol; if you have downloaded the free demo ofCCVS, you will be using the demo protocol.

2: The unique number which identifies you to the clearinghouse. This may be your merchant account number or a terminal idnumber, depending on what protocol you will be using. This numberwill be supplied when you set up your merchant account.

3: Your modem type, and the serial port your modem is attachedto. You will also need modem configuration strings. (We cansupply modem configuration strings for many popular modems.)

4: The location of your data directory. This is where theconfiguration file and data directories will be placed.

5: Other information as needed for particular protocols. Thisinformation will generally be supplied when you set up yourmerchant account.

We supply a worksheet which you can use to organize all thisinformation, including the details for each protocol. See thefile "setup.txt" in /usr/share/doc/CCVS- <version>.

The configuration program is running as user " <username>".It is important that this be the same user which the actual CCVSsoftware will run as. (We recommend creating a special useraccount for just this purpose.)

Do you wish to continue configuring CCVS as user " <username>"?

[Enter Y to continue, or N to stop here:]

Page 81: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 5.6:Configuración de CCVS 81

Presione[Y] paracontinuar. Si ejecutasu comoroot, le apareceráel siguienteerror. Si estoocurredebería ejecutarsu parael usuariodeCCVS y volver a ejecutarccvs_configure .)

The configuration program may not be run as root. You must runthis as the same user which the actual CCVS software will run as.(We recommend creating a special user account for just thispurpose.)

Cuandocontinúe,el programale solicitaráinfomación. En cualquiermomento,puedevolver atrástecleando. y presionando[Intro].

Do you want to configure CCVS for the free demo, or a workingmerchant account? (If you have not purchased a license for CCVS,only the demo configuration is available.)

[Enter Y to use the demo configuration, N for a real configuration,or . to exit:]

A menosquehayacompradounaclavedesoftwarey unalicenciaparaCCVS, teclee[Y]. Estoinstalaunaconfiguración demo,queno marcael númerodemódemni usaunacuentamercantilreal. Si hacompradounalicenciay estápreparadoparainstalarunaconfiguraciónqueya funciona,teclee[N].

Where do you want to place the CCVS configuration files andtransaction queues? This should be a directory name which iswritable by the current user.The default is "/var/ccvs".Enter directory, or Return for default value, or . by itself toback up.>

A menosquetengarazonesespecíficasparatrasladarlos ficherosde configuraciónde CCVS y lascolasdetransacciones,déjelosensu localizaciónpor defecto.Si necesitatrasladarlos,recuerdequetambiénnecesitafijar unavariabledeentorno.

What do you want to name this configuration? This should be ashort filename.The default is "ccvs".Enter name, or Return for default value, or . by itself to backup.>

Porejemplo,puedetenerunaconfiguraciónllamadacamiseta paraun comerciantequevendeca-misetasy otrallamadamúsica paraun vendedoral por menordepartituras.El nombreintroducidoserviráparadistinguirentrelasdosconfiguraciones.

La versión demodeCCVS no requiereotrainformación.A continuaciónverá:

Writing "/var/ccvs/ccvs.conf"...

Page 82: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

82 Capítulo 5:Sistema de verificación de tarjeta de crédito (CCVS)

The CCVS system is now configured.

Puedeempezarcomprobandoel softwaredemo.El softwaredemoesigual al softwarecompletodeCCVS, con la excepción de queno marcael nuacute;merode módemo hablacon un procesadormercantilreal.

Si tieneunalicenciadela versióncompletadeCCVS y eligeinstalarunconfiguración real,veráalgocomoesto:

Which protocol and merchant processor will you be using?

Credit card clearing protocols:1: ETC PLUS (FDR7/ETC7/FDR "Omaha"): First Data Corporation2: South Platform (FDR "Nabanco"): First Data Corporation3: MAPP: Global Payment Systems "St. Louis"4: NDC: Global Payment Systems "Atlanta" / NDC5: VITAL (Visa 2nd generation, K format): Visa/Total System Services6: UTF: Paymentech Inc.7: NOVA: NOVA Information Systems

[Enter a number, or . by itself to back up:]

SeleccionedelprotocoloparaquetengaunalicenciadeCCVS y unacuentamercantilválida.

What is the number of your merchant account?Enter number, or . by itself to back up.>

Estenúmerodeberíahabersidoproporcionadoconsucuentamercantil.

What is your CCVS software customer number?Enter number, or . by itself to back up.>

EstenúmerohabrásidoproporcionadoconsulicenciaCCVS.

What is your CCVS software license key?Enter number, or . by itself to back up.>

EstenúmerotambiénhabrásidoproporcionadoconsulicenciaCCVS.

What is the phone number of your merchant processor?Enter number, or . by itself to back up.>

Page 83: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 5.6:Configuración de CCVS 83

Puedenaparecerpreguntasadicionales,yaquealgunosprotocolosenparticularrequiereninformacióndiferente.Si hacompiladola hojadetrabajodesetup.txt parasuprotocolo,deberáestarprepa-radoparaestaspreguntas.Porejemplo,VITAL continuaconvariascomoel nombredel comprador,dirección,banco,etc.Deberíatenerlocalizadatodaestainformación cuandoestablezcaunacuentamercantilVITAL. Ésteesel objetivo delarchivo dela hojadetrabajosetup.txt , quedeberíahabercompletadoantesdeejecutarel programadeconfiguraciónCCVS. Consultela Sección 5.5,Antesdeconfigurar CCVS paramásinformaciónreferenteal usodesetup.txt .

A continuaciónintroduzcala informaciónacercadecómocomunicarseconsumódem.La informa-ción de configuracióndel módemesmuy importante. Asegúresede que introducela informacióncorrectaparala configuracióndesusistema;CCVS no funcionarási el módemestáconfiguradoin-correctamente.

Do you want to configure a pool of several modems? (If you answeryes, all the modems must be exactly the same make and model. Ifyou want to use just one modem, answer no.)

[Enter Y or N, or . to back up:]

Si tienevariosmódemsidénticos,puedeconfigurarCCVS parausarlostodos,comopool. Cadapro-cesode CCVS quenecesiteusarun módemdibujaráunodel pool, asumiendoquehay algunodis-ponible. VariasconfiguracionesCCVS puedencompartirun conjuntode módemsde estamanera.Puedeconfigurar tambiénunaconfiguraciónsimplecondosmódems,paraquelasautorizacionesysettlementbatchpuedaocurrir al mismotiempo.

What serial port is your modem connected to? (Do not include the"/dev/" prefix.) The default is ttyS0. The modem should beconnected and ready now, so that the serial port can be tested.

Enter port name, or Return for default value, or . by itself toback up.>

El programacomprobaráel puertoseriequeutilizará. Si configura másde uno, comprobarácadaunodeellos. No incluya /dev/ . Estepasopuedellegarhastalos treintasegundossi el módemnoresponde.

What type of modem do you have? This information makes itpossible to suggest modem configuration strings. If your modemis not listed, you can choose "none of the above"; but you willthen have to create your own configuration strings, which is adifficult process.

1: USR Sportster/Courier2: Hayes Optima3: Chase Research PCI-RAS

Page 84: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

84 Capítulo 5:Sistema de verificación de tarjeta de crédito (CCVS)

4: None of the above

[Enter a number, or . by itself to back up:]

Seráintroducidoa la inicializacióndel módem,a la accióndemarcary a los stringsde la accióndecolgar. (Si configura un pool de módems,todosdeberían ser idénticos,de maneraqueutilicen losmimsosstrings.)Si CCVS conocestringsapropiadosparael módem,seránsugeridosy ustedtendrásimplementequepulsar[Intro].

The modem initialization string should set the modem to do noprotocolnegotiation. What string do you want to use?A string which works for your modem is:

\r~~~\rAT E0 L0 M1 V1 X4 &K0 &M0 +FCLASS=0Enter string, or Return for suggested value.>

The modem dial string should dial the modem. (Do not include aphone number.)What string do you want to use?A string which works for your modem is:

ATDTEnter string, or Return for suggested value.>

The modem hang-up string should hang the modem up if it ’sconnected. What string do you want to use?A string which works for your modem is:

~~~+++~~~~~~~~~\rATH0\r~~~Enter string, or Return for suggested value.>

Initialize: \r~~~\rAT E0 L0 M1 V1 X4 &K0 &M0 +FCLASS=0Dial: ATDTHang up: ~~~+++~~~~~~~~~\rATH0\r~~~Are these the values you want?

[Enter Y to accept, N to change, . to back up.]

Puedequeno veaexactamentela mismapantallaporquelos valorespor defectovaríandependiendodel módemselecionado.

La siguientepreguntahacereferenciaa la frecuenciaenbaudiosqueutilice el módem:.

What baud rate do you want to use? You should use thedefault unless you have explicit information that another

Page 85: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 5.8:Inicio de CCVS 85

value is appropriate.The default baud rate is 1200.

Enter rate, or Return for default value, or . by itself toback up.>

Cuandohayafinalizadodeintroducir la informacióndela configuraciónverá:

Writing "/var/ccvs/ccvs.conf"...

The CCVS system is now configured.

5.7 Cuentas mercantiles múltiplesSi necesitasoportarmáscuentasmercantiles,simplementesigael procesodeconfiguracióndenuevo.Useun nombredeconfiguración diferenteparacadacuentamercantil.

Diferentesconfiguracionespuedencompartirel mismopuertoserieo el mismopooldepuertosserie.Los módemsseránusadosdemeneraqueel primeroenllegar, será el primeroensalir.

5.8 Inicio de CCVSParaejecutarCCVS paraunaaplicación enparticular, deberáhaberseregistradocomola cuentadeusuarioquehacreadoesaconfiguración. Si estáusandounacuentadeusuarioccvsconestepropósitoy ya seha registradoen el sistemacomoun usuariodiferente,escribasu ccvs paracambiaralusuarioadecuado.

Cuandose hayaregistradocomo la configuracíónde usuarioparaejecutarlos programasCCVS,necesitaráiniciar el demonioccvsd paracadacuentamercantily necesitaráejecutarel programacvupload en unabaseregular. Usarcron paraejecutarcvupload todo los díasesbuenaidea(consultelaspáginasdemanualparalasinstruccionesreferentesa procesosautomáticos).

5.8.1 Demonio ccvsdParaejecutarCCVS, debeejecutarel demonioccvsd . El demonioccvsd , dehecho,hacelasllama-dasdeteléfonoy dirige lastransacciones.Al comandoccvsd le debeseguir el nombredela cuentaespecificadocuandoconfiguró la cuenta.

Porejemplo,si quiereempezarprocesandolastransaccionesdel ejemplodel vendedoral por menordepartiturasmencionadoduranteel programadeconfiguracióneinstalael softwareenla localizaciónpor defectode /usr/sbin , deberáteclearel siguientecomandoparainiciar ccvsd :

/usr/sbin/ccvsd music

Page 86: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

86 Capítulo 5:Sistema de verificación de tarjeta de crédito (CCVS)

Cadavezqueañadaunacuentamercantil,necesitaempezarccvsd poresacuenta,si quiereprocesarlas transaccionesparaesacuenta.

Paramásinformación deccvsd , consultela páginademanualdeccvsd .

5.8.2 Comando cvuploadAlgunastransacciones(comoautorizaciones)ocurrenal mismotiempoquesepresentala tarjetadecrédito.Otrastransacciones(comocompraso devoluciones)songrabadasy nosonprocesadasinme-diatamente.Esastransaccionessonagrupadasprocesadascomogrupo.

CCVS usael programacvupload pararealizarel procesobatch. Le recomendamosqueejecutecvupload comounatareadiariacron , paraquecvupload seejecuteautomáticamentetodoslosdís,sin ningunaintervenciónpor suparte.

Por ejemplo,el comandoutilizado parael procesoperiódicodel vendedorde partiturasseráel si-guiente:

/usr/sbin/cvupload music

Paramásinformaciónacercadecvupload , consultela páginademanualcvupload .

5.9 Consideraciones especiales sobre el lenguaje• C — La libreríaC CCVS estáincluidaenel paqueteCCVS-devel . Al compilarun programa

C queusaCCVS, añadael indicador-lccvs enla líneademontaje.

• Vayaa http://www.redhat.com/CCVS3.3docs/AdminJava.html,paramásinformaciónsobrelaconstrucióndela interfazJava deCCVS. El códigofuentedela interfazJava estáincluido enelpaqueteCCVS-java .

• Perl— La interfazPerl incluidaenel paqueteCCVS-perl .

• Python— La interfazPythoninterfaceincluidaenel paqueteCCVS-python .

• PHP— La interfazPHP3incluidaenel paqueteCCVS-php3.

• Tcl — La interfazTcl incluidaenel paqueteCCVS-tcl .

5.10 Sopor te para CCVSEl soporteparaCCVS puedecomprarseaRedHat. Cuandocomprela claveparaactivarCCVS, ase-gúresederepasarlasopcionesdesoportedisponibles.Vayaa http://www.redhat.com/products/ccvs/paramásinformaciónsobrela compradeunaclavey la obtencióndesoporteparaCCVS.

Si necesitasoporte,asegúresede tenerla siguienteinformacióna mano,antesde contactarcon elsoporte:

Page 87: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 5.11:Recursos adicionales 87

• Nombredesuempresa.

• La versióndeCCVS queestáusando.

• Sunúmeromercantil.

• SunúmerodeclienteCCVS.

• Susistemaoperativo y la versión.

La asistenciatécnicaRedHat intentará resolvercualquierproblemarelativo aCCVS. No soportamosproductosdeterceros,a excepción deproblemasreferentesa la integraciónconCCVS.

5.11 Recur sos adicionalesInformaciónadicionalrelativa a CCVS.

5.11.1 Documentación instalada• /usr/share/doc/CCVS— <version-number> — contienelos ficherosCHANGES, LI-

CENSEy README, másla hojadetrabajoparaayudara recopilarla informaciónnecesariaantesdeejecutarel programadeinstalación.

• Tecleeman ccvs paraobtenerunadescripcióndelosdiferentesestadosdela transacción,códi-gosdeerroresCCVS y más.Laspáginasdemanualparaccvsd , cvreport sepuedenutilizarconestoscomandos.

5.11.2 Sitios Web útiles• http://www.redhat.com/products/software/ecommerce/ccvs— desdeestalocalización,puedeco-

nectarconrecursosmuy diversosCCVS, incluyedolasFAQs,especificacionestécnicase infor-macióngeneralsobreCCVS.

• http://www.redhat.com/products/software/ecommerce/ccvs/support/documentation.html— con-tieneenlacesadiversasguías,escritasespecíficamenteparaexplicartodaslasposibilidadesdeusodeCCVS. Estosmanualesenlíneacubrentodo,desdela instalacióny la configuracióndeCCVSa la descripcióndelos APIs paralos diversosidiomasquesepuedenusar.

Page 88: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

88 Capítulo 5:Sistema de verificación de tarjeta de crédito (CCVS)

Page 89: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 6.1:Introducción a Sendmail 89

6 Sendmail6.1 Intr oducción a SendmailSendmail esun conocidoagentede transferenciade correo(MTA) usadoenInternet,quemanejaunamplioporcentajedetodosloscorreosruteadosenInternetalavezquesetrasladadeunhostaotro.Existenotrosagentesdetransferenciadecorreo(quepuedenserutilizadosconRedHatLinux), perolamayoríadeadministradoreseligenutilizar Sendmail comoMTA debidoa supotencia,escalabilidady compatibilidadconlos estándaresdeInternet.

El deberprincipal de Sendmail, comootrosMTAs, esel de trasladarcon seguridademailsentrehosts,habitualmenteusandoel SimpleMail Transfer Protocol (SMTP). No obstante,Sendmail esaltamenteconfigurable,permitiendocontrolarcadaaspectodecómosegestionaun correo.

Los iniciosdeSendmail puedensertrazadosdesdeel nacimientodelemailqueocurrióenel décadaantesdel nacimientodeARPANET, el precursordeInternet.En aqueltiempo,cadabuzóndecorreodeusuarioeraunarchivo quesólo teníanderechoaleerel usuarioy lasaplicacionesdecorreoañadíansimplementetexto a aquelarchivo. Cadausuarioteníaque franquearsusarchivos de correoparapoderencontrarun correoantiguoy sercapazde leercorreonuevo eratodoun trabajo. La primeratransmisiónde un mensajede correodesdeun hosta otro, no tuvo lugar hastael 1972,cuandoelcorreoelectrónico(email)seempezóa transferirmedianteFTPsobreel protocoloderedNCP. Estesencillométodode comunicaciónsehizo popularrápidamente,hastallegar al puntode realizarlamayoríadetráfico deARPANET enmenosdeun año.No obstante,la faltadeestandarizaciónentreprotocoloshizoqueel correoelectrónicofueradifícil deenviar desdealgunossistemas,problemaqueseprolongó hastala llegadaen1982dedeARPANET estandarizado.Sehizo posibleconSMTP, unnuevo protocoloparael transportedemensajes.Estosavances,combinadosconarchivosdeHOSTSsiendoreemplazadosconDNS,permitieronrealizarunMTA sólido.Sendmail, surgió deunsistemaanteriordeentregadecorreoelectrónicollamadoDelivermail y seconvirtió rápidamenteenestándarcuandoInternetempezóa serampliamenteutilizada.

Es importanteserconscientede lo queSendmail representay de lo quele puedeayudar, asícomode lo queno escapaz.Actualmente,con lasaplicacionesmonolíticasquecumplendiferentesroles,podríapensarinicialmenteen la necesidadde ejecutarun servidorde correodentrodesuorganiza-ción. Tecnicamente,Sendmail puedeponeren esperael correoa los directoriosde sususuariosyaceptanuevoscorreoselectrónicosa travésdela líneadecomandos.Pero,los usuariosdehoy endíanecesitanbastantemásqueunasencillaentregadecorreoelectrónico.Casisiempredeseaninterac-tuarconsucorreoelectrónicomedianteel usodel agentede usuario de correo (MUA) queutilizael ProtocoloPost Office (POP), el Protocolode accesoa mensajesde Inter net (IMAP )o inclusola Web. Estosotrosprotocolospuedentrabajarconjuntamentea Sendmail y SMTP, perode hechoexistenpor razonesdiversasy puedenoperarpor separado.

Page 90: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

90 Capítulo 6:Sendmail

El objetivo de estecapítuloesel de mostrarletodo lo queescapazde hacerSendmail. Consultelas fuentesde informaciónen líneay fueradeéstaenSendmail parapodersehacerunaideadesusnecesidades.No obstante,debería saberquéarchivos hansido instaladosen su sistemapor Send-mail por defecto,sabercomorealizarcambiosbásicosdeconfiguración,sercapazdedetenercorreoelectróniconodeseado(spam)enviadoa travésdeSendmail y sabercomoampliarSendmail conelLightweight Dir ectory AccessProtocol (LDAP).

6.2 La instalación Sendmail por defectoMientrasquedescargael códigofuenteparaSendmail y construirsupropiacopia,muchosusuariosprefieren instalarSendmail medianteRPM desdeel CD-ROM (durantela instalación de RedHatLinux o posteriormente).

La aplicación Sendmail estáubicadaen /usr/sbin .

La longituddeSendmail y el archivo deconfiguracióndetalladasendmail.cf soninstaladosen/etc . No deberíamodificar el archivo sendmail.cf sin usarel macroprocesadorm4paracrearun nuevo /etc/sendmail.cf (obviamentetrashaberhechoun copiade seguridaddel antiguo/etc/sendmail.cf ). Paramásinformaciónsobrela configuracióndeSendmail, remítasea laSección 6.3,Cambioscomunesdeconfiguración.

VariosarchivosdeconfiguraciónSendmail estáninstaladosen /etc/mail incluyendo:

• access — especifica quésistemaspuedenusarSendmail paratransferirun email.

• domaintable — le permiteproporcionarun mapeodel nombrededominio.

• local-host-names — el lugardondeseincluyentodoslos aliasesparasumáquina.

• mailertable — especifica las instruccionesquesobreescribenel ruteodedominiosparticu-lares.parasobreescribir.

• virtusertable — lepermiterealizarunaformadedominioespecíficodealias,permitiéndoledominiosvirtualesmúltiplesparaserhostenunamáquina.

Algunosde los ficherosde configuraciónen /etc/mail , talescomoaccess , domaintable ,mailertable y virtusertable , debenalmacenarsuinformaciónenarchivosdebasededatosantesdequeSendmail puedacambiardeconfiguración. Paraincluir cualquiercambioquehagaenesaconfiguraciónensusarchivosdebasededatos,debeejecutaruncomandoconla sintaxismake-maphash /etc/mail/ name < /etc/mail/ name dondenameesel nombredel archivo deconfiguracióna convertir.

Porejemplo,si deseaquetodoslosemailsdirigidosacualquiercuentadomain.com seanentregadosa [email protected] , necesitaráañadirunalíneaal archivo virtusertable :

@domain.com [email protected]

Page 91: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 6.3:Cambios comunes de configuración 91

Para añadirestanueva informaciónal archivo virtusertable.db , ejecutemakemap hash/etc/mail/virtusertable < /etc/mail/virtusertable comoroot. Estocrearáunnuevo virtusertable.db quecontienela nueva configuración.

6.3 Cambios com unes de configuraciónUn archivo predeterminadosendmail.cf seráinstaladoen /etc . La configuraciónpor defectodeberíafuncionarenla mayoríadelossitiosSMTP. No funcionaráensitiosUUCP(copiadeUNIX aUNIX); necesitarágenerarun nuevo sendmail.cf si debetransferircorreoconUUCP.

NotaAunquelos servidoresSMTP estánsoportadosautomáticamente,no eselcasode los servidoresIMAP (InternetMessageAccessProtocol). Si suISPprefiereunservidorIMAP aunservidorSMTP, debeinstalarel paqueteIMAP o recuperarsucorreo.

Si necesitagenerarun archivo nuevo /etc/sendmail.cf paraconfigurar Sendmail, deberíautilizar el macroprocesadorm4. Si algunavezmodifica /etc/mail/sendmail.mc paraañadirfuncionalmenteSendmail, hagaunacopiadesegurid de suarchivo actual/etc/sendmail.cf ,genereuno nuevo ejecutandoel comandom4 /etc/mail/sendmail.mc > /etc/send-mail.cf y añadiendocualquiercambioprevio desdeel archivo /etc/sendmail.cf del quehizo la copiade seguridadal nuevo. Trasla creaciónde un nuevo /etc/sendmail.cf , deberíareiniciar Sendmail parallegar a su propósito. El modo mássencillo de hacerloes tecleandoelcomando/sbin/service sendmail restart comoroot.

Por defecto,el macroprocesadorm4estáinstaladocon Sendmail. El macroprocesadorm4vieneincluidoconel paquetesendmail-cf , queestá instaladoen/usr/lib/sendmail-cf .

Deberíaconsultarel archivo /usr/lib/sendmail-cf/README antesdemodificarcualquierar-chivo en los directoriosbajo el directorio /usr/lib/sendmail-cf , ya quepuedenafectara laconfiguracióndearchivos /etc/sendmail.cf futuros.

ADVERTENCIA

¡No utilice Lin uxconf para configurar Sendmail ! El módulo mail-conf , diseñadopara modificar /etc/sendmail.cf másfácilmente,no funciona y contieneinformación antigua sobre los grupos de reglasusadasen la configuración de Sendmail .

Page 92: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

92 Capítulo 6:Sendmail

UnaconfiguracióncomúnSendmail esla detenerunasolamáquinaqueactuecomounapuertadeenlacedecorreoparatodoslasmáquinasdesured.Porejemplo,unacompañíapuedequerertenerunamáquinallamadamail.bigcorp.com querealicetodosucorreo.En estamáquina,simplementesenecesitaañadirlosnombresdemáquinasparalascualesmail.bigcorp.com realizaráel correopara/etc/mail/local-host-names . Aquí tieneun ejemplo:

# sendmail.cw - incluye todos los aliases para su máquina# here.torgo.bigcorp.compoodle.bigcorp.comdevel.bigcorp.com

En lasotrasmáquinas,torgo , poodle y devel , esnecesariomodificar /etc/sendmail.cfparaenmascararcomomail.bigcorp.com al enviar unemaily al adelantarcualquiercorreolocalprocesándoseenbigcorp.com . EncuentrelaslíneasDHy DMen /etc/sendmail.cf y modi-fíquelascomo:

# who I send unqualified names to# (null means deliver locally)DRmail.bigcorp.com

# who gets all local email trafficDHmail.bigcorp.com

# who I masquerade as (null for no masquerading)DMbigcorp.com

Conestetipo deconfiguración,todoslos mailsenviadosaparecerancomosi fueranenviadosdesdebigcorp.com y cualquiercorreorenviado atorgo.bigcorp.com o a los otroshostsseráen-viadoa mail.bigcorp.com .

Si configura su sistemaparaenmascararlocomo otro, cualquieremail enviado de su sistemaa susistemaseráenviadoalamáquinadelaqueestáenmascarando.Porejemplo,enla ilustraciónsuperior,seregistranlos archivosqueperiódicamenteseenvíana [email protected] .

6.4 Detener SpamEl spamdecorreoelectrónicosepuededefinir comoel correoinnecesarioy nodeseadoqueserecibeun usuarioqueprobablemteno conoceal remitenteni hapedidoesainformación.Escostoso,perju-dicial y abusadelos estándaresdecomunicación deInternet.

Afortunadamente,paraSendmail esrelativamentefácil bloquearlas nuevastécnicasde publicidadno deseadaqueseempleanparaenviar correobasura.Bloqueainclusomuchosde los métodosmáscomunesde spampor defecto,de maneraquenecesitaríaactivarlosconscientementecambiandosuarchivo /etc/mail/sendmail.cf deunamaneraparticularparaquesusistemaseasusceptible.

Page 93: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 6.5:Uso de Sendmail con LDAP 93

Porejemplo,el envío demensajesSMTP, tambiénconocidocomotransferenciade SMTP, hasidodeshabilitadopor defectodesdeestaversión de Sendmail. Antesde queestoocurra,Sendmail leindicaráa suhostdecorreo(x.org ) queaceptemensajesdesdepartícipe(y.com ) y quelos envíea un partícipediferente(z.net ). Sin embargo, tienequeespecificar Sendmail parapermitir a undominiotransmitircorreoatravésdesudominio.Modifique/etc/mail/relay-domains y rei-nicie Sendmail tecleandoel comando/sbin/service sendmail restart comoroot paraactivar los cambios.

Muchasveces,sususuariospuedenser bombardeadosde spamdesdeotrosservidoresa través deInternetbajosucontrol. En estoscasos,puedever lascaracterísticasdecontroldeSendmail dispo-niblesa travésdelarchivo /etc/mail/access . Comoroot,añadasimplementelosdominiosquele gustaríabloquearo permitir el acceso,talescomo:

badspammer.com 550 Go away and don’t spam us anymoretux.badspammer.com OK10.0 RELAY

Yaque/etc/mail/access esunabasededatos,necesitausarmakemap paraactivarsuscambiosrecreandoel mapadela basededatos.Estosesolucionafácilmenteal ejecutarel comandomakemaphash /etc/mail/access < /etc/mail/access comoroot.

Esteejemplomuestraquecualquieremailenviadodesdebadspammer.com a ustedsebloquearíaconel códigodeerror550RFC821y el mensajesereenvíaal remitente,exceptolosemailsenviadosdesdeel sub-dominiotux.badspammer.com , queseríanaceptados.La úlitma líneamuestraquecualquieremailenviadodesdela red10.0.*.* puedetransmitirsea travésdesuservidordecorreo.

Comoesdeesperar, esteejemploessólounamuestrade lo queSendmail puedehacera la horadepermitir o bloquearel acceso.Consulte/usr/share/doc/sendmail/README.cf paramásinformacióny ejemplos.

6.5 Uso de Sendmail con LDAPComoya sehavisto enel Capítulo 4, LightweightDirectoryAccessProtocol(LDAP), el (LDAP) esun métodorápidoy potentedeencontrarinformaciónespecífica sobreun usuarioparticulardesdeungrupomuchomásamplio. Porejemplo,podríausarun servidorLDAP parabuscarunadireccióndeemailparticulardesdeun directoriocomúnporel apellidodeunusuario.Enestaclasedeimplemen-tación,LDAP difiere bastantede Sendmail, con LDAP sealmacenala informaciónjerárquicadelusuarioy aSendmail sólole vienedadoel resultadodelasconsultasLDAP enlosmensajesdeemailcondirecciónprevia.

No obstante,Sendmail soportaunaintegraciónmayorconLDAP, yaquelo usaparasustituirarchivosmantenidospor separado,talescomoaliases y virtusertables , endiferentesservidoresdecorreoquetrabajanjuntosparasoportarunaorganizacióna nivel deempresamedia.Esdecir, puede

Page 94: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

94 Capítulo 6:Sendmail

utilizar LDAP paraabstraerel nivel del ruteadodelcorreodesdeSendmail y losarchivosdeconfigu-ración a un grupoLDAP potentequeinfluye enSendmail por otrasmuchasaplicaciones.

La versiónactualdeSendmail contieneel soporteparaLDAP. ParaextendersuservidorSendmailmedianteel usodeLDAP, obtengaun servidorLDAP, comoOpenLDAP, debidamenteconfigurado.Necesitarámodificar su /etc/mail/sendmail.mc paraincluir:

LDAPROUTE_DOMAIN(’yourdomain.com’)dnlFEATURE(’ldap_routing’)dnl

NotaEstosirve sólo paraunaconfiguración básicade Sendmail conLDAP. Suconfiguracióndeberíadiferir deéstadependiendode la implementacióndeLDAP, especialmentesi deseaconfigurar variasmáquinasSendmail parausarun servidorcomúnLDAP.

Consulte/usr/share/doc/sendmail/README.cf paramásinfor-macióny ejemplossobreel ruteadodeLDAP.

A continuación,vuelvaacrearsuarchivo /etc/sendmail.cf ejecutandom4y reiniciandoSend-mail. Consultela Sección 6.3,Cambioscomunesdeconfiguraciónparamásinformación.

Parainformaciónulterior sobreLDAP, consulteCapítulo 4, LightweightDirectoryAccessProtocol(LDAP).

6.6 Recur sos adicionalesMuchosusuariosencuentraninicialmenteSendmail difícil deconfigurar, enprimer lugardebidoalamplionúmerodeopcionesdisponibles.El accesoa la documentaciónadicionaldeSendmail puedeserlemuy útil, especialmentelasopcionesdeconfiguración.

6.6.1 Documentación instaladaLasmejoresfuentesdeinformaciónsorbrecómoconfigurarSendmail estánincluidasenlospaquetessendmail y sendmail-cf .

• /usr/share/doc/sendmail/README.cf — contieneinformaciónsobrem4, localizacio-nesdearchivosparaSendmail, mailerssoportados,elmododeaccederacaracterísticasavanzadasy muchomás

• /usr/share/doc/sendmail/README — contieneinformaciónsobrela estructuradel di-rectorioSendmail, el soportedel protocoloIDENT, detallesenlos permisosdel directorioy losproblemasmáscomunesqueestospermisospuedencausarsi sedesconfiguran.

Page 95: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 6.6:Recursos adicionales 95

6.6.2 Sitios Web útiles• http://www.sendmail.net— noticias,entrevistasy artículosreferentesa Sendmail, queofrecen

unavisión ampliademuchasopcionesdisponibles.

• http://www.sendmail.org — ofreceunacompletainterrupcióntécnicade las característicasyejemplosdeconfiguracióndeSendmail.

6.6.3 Libr os relacionados• SendmaildeBryanCostalesconEricAllman etal; O’Reilly & Associates— unabuenareferencia

deSendmail escritaconla ayudadel creadororiginal deDelivermail y Sendmail.

Page 96: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

96 Capítulo 6:Sendmail

Page 97: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Parte II La seguridad

Page 98: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la
Page 99: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 7.1:El dilema de seguridad inevitable 99

7 Elementos básicos de seguridad deRed HatAdemásde la instalación y configuraciónapropiadasde su sistemaRedHat Linux, esde extremaimportanciaqueasegureel sistemaa un nivel aceptablederiesgosegúnsupapel,importancia,y usoprevisto. La seguridadesun temaincreíblementecomplejoquetienequeenfrentarseconstantementetantoa problemasemergentescomoa problemaspotenciales.

Dadasunaturalezaamorfa e complicada,muchosadministradoresdesistemasy usuarioscometenelerror de ocuparsede problemaspequeñosy aisladosmientraspermitenquecuestionesmuchomásgrandesy peligrosasquedensin resolver. La verdaderaseguridadde un sistemava másallá de lainstalacióndela actualización másreciente,la configuracióndeun ciertofichero,o la cuidadosaad-ministracióndelaccesodelosusuariosa los recursosdesistema.Esunamaneradever lasdiferentesamenazasqueacechansusistemay lo queestádispuestoa hacerparaevitarlas.

Ningúnsistemaestotalmenteseguroamenosqueestéapagado(y aúnasí,esposiblequeselo roben).Cadavezqueel sistemaestéencendidopuedeseratacado,desdeunabromainocuaa un virus capazdedestruirel hardware,a la posibilidadquelos datosseanborrados.Perono todoestáperdido.Conunaactitudapropiadaademásde algunasbuenasherramientas,podrá gozarde un sistemasanosinproblemaalgunodeseguridad.Lassiguientesseccionesfueronideadasparaperfilar unamaneraparatratarel temadelaseguridaddesistemay amenazaspotencialesuncontextobajoel cualhayquetomarenconsideraciónvariasherramientasdeseguridad,costosy beneficioscuandoejecutaRedHatLinux.

7.1 El dilema de seguridad inevitab leTodousuariodecualquiersistemaoperativo seenfrentaa un dilemaencomúnal construirun para-digmadeseguridadparasusistema.Porunlado,intentaevitar hacerel sistematanseguroquenadaenél funcionarácorrectamente.Peropor otro lado,tambiéntratadeevitar dejarel sistemataninseguroquecualquierapodría(y lo haríaseguramente)hacerlelo quesele antoje,incluido borrarel trabajodeotroso cosasmuchopeores.

No existe unamaneraexactapararesolver estedilema. Algunossistemas,ya seapor la naturalezadesuutilidad o la importanciade los datosqueprotegen,caenpor un ladodel dilemamientrasqueotrossistemas,ya seapor la ampliavariedaddeusuariosquelos utilizan o el hechodesermáquinasdeprueba,caenpor el otro lado.

La cosamásimportantequepuedehaceral configurarla seguridaddesusistemaesdeterminardóndeenla gamadeldilemadeseguridadseencuentrasusistema.Estopuedellevarseacaboporsupolíticadecompañía. O esun investigadorconunsistemaquenuncaconectaa redespúblicas,y nadieapartede ustedtieneaccesofísico a la máquina,o ustedesun usuarioqueseconectadesdesucasaa una

Page 100: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

100 Capítulo 7:Elementos básicos de seguridad de Red Hat

conexión debandaanchay (contodarazón)estépreocupadopor lasmanerasenquealgunosusuariosmal intencionadosmuy lejosdedondeestáustedpodríanarreglárselasparadañarsusdatos.

Prescindiendodelasinnumerablesposiblessituacionesquelo definan,ustedtienela responsabilidaddeestablecersuexposiciónadecuadaal riesgocontralasmetasquesusistemadebealcanzar. Luego,unavezquelo defina,useesteconocimientocomoguíaaseguir paraconfigurary mantenerlaspautasdeseguridadensusistema.

7.2 Enfoque activ o contra pasiv oLos enfoquesrelativos a la seguridadsepuedensiempresepararen dos tipos diferentes:activo opasivo. Un enfoqueactivo haciala seguridadcubretodaslasactividadesideadasparaprevenir queseabraunabrechaenel modelodeseguridaddesusistema.Un enfoquepasivo haciala seguridadserefierea lasactividadesdesempeñadasparasupervisarla seguridaddesusistemabasándoseenesemodelodeseguridad.

Todoslos usuariosdeberíanemplearenfoquesya seaactivoscomopasivoshaciala seguridad.Cadaunodeestosenfoquesrefuerzael otro. El hechoquesepapor mediodelos registrosdeservidorqueundeterminadousuarioestáintentandoviolar suseguridad(enfoquepasivo haciala seguridad)podríaimpulsarleainstalarunaaplicaciónquelosbloqueehastaparaqueobtenganunindicadordeinicio desesión(enfoqueactivo haciala seguridad).De la mismamanera,el hechodeustedno estéutilizandocontraseñasshadow paraprotegersusistema(activo) podríaimpulsarlea fijarsedetenidamenteporsihaycambiosenlosficherosmásimportantesensusistemautilizandounaherramientacomoTripwire(pasivo). (ParaobtenermásinformaciónsobreTripwire, consulteel Capítulo 10, Instalacióny confi-guracióndeTripwire.)

RedHatLinux contieneunavariedaddeherramientasquele ayudaráaemplearambosenfoqueshacialaseguridad.Sinembargo,el usoapropiadodelosmétodosconcadaenfoqueesesencialparaprevenirun excesodedependenciadeherramientasqueprotejansusistema.

7.2.1 Herramientas y métodos para un enfoque activ o haciala seguridadLa granmayoríadelasherramientasdeseguridadparaRedHat Linux trabajanparaprotegeractiva-mentesusistema.Estassonalgunasdelasmáscomunesy útilesherramientasdeopensource:

• UtilidadesShadow— Unacoleccióndeherramientasanormaindustrialparaadministrarusuarioslocalesy gruposenun sistemaqueutiliza contraseñasencriptadas.

• Kerberos5 — Un sistemaseguroqueproporcionaserviciosdeautentificaciónderedes.No per-mitequecontraseñasdetexto comúnpasensobreunaredparaobteneraccesoalosservicios.(Veael Capítulo 9, UsodeKerberos5 enRedHat LinuxparaobtenermásinformaciónsobreKerberos5.)

Page 101: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 7.2:Enfoque activo contra pasivo 101

• OpenSSL— Le ayudaa protegerunaampliagamadeserviciosquesoportanoperacionessobreunacapadeencriptación.(Veala Official RedHat Linux CustomizationGuideparaobtenermásinformación sobreOpenSSL.)

• OpenSSH— Unconjuntodeutilidadesquepuedefácilmentesustituirherramientasomnipresentesperoinsegurascomotelnet y ftp conlaspotentesy segurasssh y scp . (Veala Official RedHat LinuxCustomizationGuideparaobtenermásinformaciónsobreOpenSSH.)

Los siguientessonmétodosquesoportanel enfoqueactivo haciala seguridad:

• Limitar el número de usuariosquepuedenejecutarcomandoscomoroot — Ya seaintencio-nalmentequeaccidentalmente,un granporcentajedelos problemasdeseguridadsurgeal menosindirectamentede alguienqueconocela contraseñade root o a quienha sido dadopermisopormediodesudo paraejecutarun comandoenel ámbitoderoot.

• Saberquépaquetesdesoftwaresehaninstaladoensusistemay permaneceralertapara detectarbrechasdeseguridadrecientementedescubiertas— No sabráquépaqueteshayquesupervisarsino esconscientedecuálesestán instaladosensusistemay no sabráquehayqueactualizarlosamenosquesuperviselasfuentesdeinformación,comoRedHat Network.

• Limitar los serviciosqueseejecutanen el sistemasólo a aquellosqueen realidadnecesita—Fundamentalmente,mientrasmásprogramasseejecuten,másposibilidadeshayquesequebran-ten o proporcionenel accesono autorizado.Conserve los recursosdel sistema(y de estemodoahórresela molestiademantenercosasqueno utiliza) y desinstalepaquetesqueno usa. Comomínimoejecuteunaherramientacomontsysv paraevitar queserviciosinnecesariosinicienconel sistemaa la horadelarranque.(Consulteel Control deaccesoa losserviciosenla Official RedHat Linux CustomizationGuide.)

• Requerirquelos usuarioscreencontraseñassegurasy cambiarlasa menudo— La mayoríadelos problemasdeseguridadempiezanconel accesono autorizadoal sistema.Esteriesgopuedeminimizarseimponiendoasususuariosquetambiénellospractiquenmétodosdeseguridadactivosprotegiendolasclavesqueabrensupuerta.

• Asegurarsequelospermisosdefichero noesténabiertossinqueestoseanecesario— la mayoríade los ficherosno deberíanserescribibles.

7.2.2 Herramientas y métodos para un enfoque pasiv o haciala seguridadMientrasla mayoríade las herramientasde seguridadparaRedHat Linux fueron ideadasparaunenfoqueactivo haciala seguridad,hayalgunasherramientasqueayudanaquela seguridadpasivaseaunacargaadministrativa muchomenospesada:

Page 102: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

102 Capítulo 7:Elementos básicos de seguridad de Red Hat

• Tripwire— unaaplicaciónideadaparadarla alertasi directoriosy ficherosdesistemaespecíficossonmodificados.De estamanerapor lo menossabrási hayusuariosno autorizadosqueestánte-niendoaccesoasusistemao si usuariosautorizadosestánhaciendocambiosindeseadosaficherosimportantes.(Consulteel Capítulo 10, Instalacióny configuración deTripwire paraobtenermásinformación sobreTripwire.)

• COPS— unacolección deherramientasdeseguridadideadasparadesempeñarunacantidaddecosasdiferentes,desdeel controldepuertosabiertosenun determinadohostaestaratentoacon-traseñasdeusuarioincorrectas.

Otrosmétodosquesoportanel enfoquepasivo haciala seguridadson:

• Convertir enunarutina la actividaddesupervisióndelosregistrosdesistema— Poromisión,RedHatLinux atrapaunacantidadenormededatosútilesenlosregistrosdesistemasituadosenel di-rectorio/var/log , especialmenteenel ficheromessages . Unatareasencillaejecutadacomoroot,comoel comandogrep "session opened for user root" /var/log/mes-sages | less , le permitedesempeñarunapotenterevisión parcialdesusistemay supervisarquiénestáenel sistemaa la root. Estole permitiría,por ejemplo,reducirrápidamenteel númerodeposiblesusuariosquepodríanhabercambiadoundeterminadoficheroquesepuedesóloescri-bir comoroot,simplementecomparandola horaenqueel ficheroencuestiónfuecambiadoconlahoradelos inicios desesiónenel fichero/var/log/messages . Sin embargo,considerequeestenoesunmétodoapruebadefallos,porquealguienconel poderdeescriturasobreun ficherodesistemaimportantetambiénpodríatenerel derechodemodificarel fichero/var/log/mes-sages paraborrarsu rastro.

7.3 El desarr ollo de políticas de seguridadTodosistema,desdeunamáquinausadasólopor unapersonaa un servidorenel ámbitoempresarialutilizadopormilesdeusuarios,deberíatenerpolíticasdeseguridad.Laspolíticasdeseguridadsonunconjuntodepautasutilizadasparamedirsi unadeterminadaactividado aplicacióndebieseo no serdesempeñadao utilizadaenun sistema,basándoseenlos particularesobjetivosparaesesistema.

Laspolíticasdeseguridadentresistemasdiferentespuedenvariarmucho,perola cosamásimportanteesqueexistaunaparasusistemano importasi estáescritaenel manualdepolíticasdela empresaosimplementeserecuerda.

Cualquierpolíticadeseguridaddeberíaestarconstruidaconestascaracterísticascomopautas:

• Queseasencillaenvezdecompleja— mientrasmássencillay clarala políticadeseguridad,másfácil seráquelaspautasseanrespetadasy el sistemapermanezcaseguro.

• Queseafácil demantenerenvezdedifícil — comotodo,los métodosy herramientasdeseguri-dadpuedencambiardependiendodenecesidadesy retosnuevos.Supolíticadeseguridaddebería

Page 103: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 7.4:Más allá de la protección del root 103

construirseconun enfoquehaciala minimizacióndel impactoquelos cambiostendránensusis-temay ensususuarios.

• La promociónde la libertad a travésde la confianzaen la integridad del sistemaenvezdeunasofocanteutilizacióndesistema— evite métodosy herramientasdeseguridadquelimiten innece-sariamentela utilidad desusistemacuandoestéhaciendomásseguroel sistema.Los métodosyherramientasdeseguridaddecalidadsoncasisiempreunaventajaseguray ofrecenmáseleccionesa los usuarioscadavezqueseaposible.

• El reconocimientode la falibilidad en vezde una falsa sensación de seguridad — unade lasmanerasmásexitosasdeatraerunproblemadeseguridadesatravésdela creenciaquesusistemanopodríatenerun problemacomoese.Envezdedormirseenlos laureles,hayqueestarsiemprealerta.

• El enfoquedeberíaestaren los problemasrealesen vezde en problemasteóricos— Empleesu tiempoy esfuerzoocupándosede los problemasrealesmásgrandesy luego prosigacon losmenores.Dé la prioridadde susesfuerzosa los problemasmayoresy resuélvaloscuantoantes.Para ayudarlea determinarcontraqué deberíaestaralertaprincipalmente,considereconsultarhttp://www.sans.org/topten.htmo sitios web parecidosquedandescripcionesdetalladasde pro-blemasde seguridadqueconstituyenunaverdaderaamenazay exactamentequéhay quehacerparaeliminarlos.

• La inmediatezenvezdela desidia— resuelva losproblemascomovayansurgiendoy determinequeequivalenaunriesgo.No piensequeesposibleocuparsedelproblemamástarde.Enrealidadno hay mejor momentoqueahoramismo,especialmentecuandose tratade unaamenazaa laincolumidaddesusistema.

Si consideraquesupolítica de seguridadestan restrictiva queno permitequeel sistemaseausadoenel modoenquefue destinada,entoncespodríapensarenmodificar la política lo suficientecomoparaaflojar el accesoal sistema.De la mismamanera,si consideraquela seguridadde su sistemaestácontinuamentebajoamenaza,deberíacambiaralgunosaspectosdesupolíticadeseguridadparalimitar el acceso.Lo másimportanteesquerecuerdequeunapolíticadeseguridadno esunaideaoun documentoestático.Debesermodificadosegúncambienlas necesidadesde los objetivos de susistemay desususuarios.Revisecontinuamentesupolíticadeseguridadactualparaquerefleje losrequisitosreales.

7.4 Más allá de la protección del rootMuchosusuariosponenla mayoríadesusesfuerzosdeseguridadenlimitar el númerodeusuariosquepuedanobteneraccesoderootasusistema.Estoesobviamenteunacosamuybuenay unprimerpasoimportante,perosedebehacermuchomásparamantenerseguroun sistema.Hay querecalcarquela seguridadessólounapartede la cuestión deestabilidaddesistema.Lascuestionesdeseguridada menudoseentrelazancon las cuestionesmásgrandesquetienenquever con la estabilidady un

Page 104: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

104 Capítulo 7:Elementos básicos de seguridad de Red Hat

sistemaexitosoequilibralasherramientasy métodosusadosparala proteccióndeseguridadconunconocimientodemanerasalternativasenquetal daño puedeserinfligido.

Antesquenada,si susistemaesusadopormuchosusuariosy esosusuarioscambian,asegúresedebo-rrar lascuentasdelosusuariosantiguosinmediatamentedespuésdequeesascuentasdejendeusarse.Mejor aún,desarrolleunalista claray concisade lo quesedebehacercuandoya no seutiliza unacuentadeusuarioo degrupo.

Limite el accesofísico a susistema.Si tieneficherosvaliososensusistemaseguro,alguienqueestétratandodeteneraccesoaellospodríaencontrarsutareafacilitadasi puedenrobarla unidaddediscoduroparaluego intentarentrarconcalma.Lascosassepodríancomplicarparaun agresorsi no selepermiteestaral tantodelos aspectosfísicosdela máquinaquedeseanmanipular.

Ante todopiensemásallá de lasmanerasmáselementalesdesobrepasarsusmétodosdeseguridad.Considerequeno hay queprotegerun posiblemodode accesoal sistemasólo paradejarlibre otrocaminomuchomásfrágil. Porsupuestoquela maneraenqueseocupadeestodependedeustedo delasnecesidadesdesususuarios.Sóloasegúresedenoponerdemasiadoénfasisenunasolamaneraenquesusistemapuedeseratacado.

7.5 La impor tancia de las contraseñas segurasLascontraseñassonlasllavesdesusistema.Estádemásdecirquedeberíanserlo mássegurasposi-blesparaevitar inicios desesión no autorizados,queesel primerpasohaciaproblemasdeseguridadmayores.El usodecontraseñaslo suficientementefuertescomoparaamortizarun ataqueesun pasodecisivo y a la vezsencilloquele ahorrarámuchosproblemasenel futuro.

Muchascontraseñasutilizadaspor usuariossonbastantefácilesdeadivinar. RedHat Linux propor-cionaunacantidaddemanerasdiferentesdeproveerautentificaciónalsistema,incluyendocontraseñasencriptadasconel comandocrypt , lascontraseñasshadow (tratadasdetalladamenteen la Sección12.1,UtilidadesShadow), Kerberos5 y más.Encualquiersituaciónenla cualseelija unacontraseñacomopartedeun esquemadeautentificación,la seguridaddeeseesquemaestarápor lo menospar-cialmentea la merceddela complejidaddela contraseñaelegida.

¿Porquéelegir siemprecontraseñassegurasdifíciles deadivinar?En fin, los preciosdel hardwaredeinformáticasiguendisminuyendomientrasquela cantidaddeherramientasy métodosdecalidady alibre disposiciónparadescifrarcontraseñascontinúaaaumentar. Porla maneraenquelascontraseñasseguardanenmuchosdelosesquemasdeautentificación,si unatacanteobtieneaccesoal ficheroquecontienelascontraseñasdelosusuariosdesusistema,normalmentelograadivinarunodeellosenunlapsodetiemporelativamentecortoprobandolascontraseñasencriptadasfrenteunalistadepalabrasde diccionario. Mientraslos esquemasde autenticaciónestánconscientesde estetipo de ataqueeintentanvariosmétodosparaqueseanmenosplausibles,ningunode estosmétodosesa pruebadefallas. Así esquedeberíaponerleatenciónal tipo de contraseña queelige y quétan a menudolacambia,especialmentecuandosetratadecuentasderoot.

Page 105: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 7.6:Seguridad de redes 105

Unabuenacontraseñadebetenerlassiguientescualidades:

• Tenerpor lo menosocho caracteres— mientrasmásbreve seaunacontraseña,generalmenteesmásfácil descifrarla.

• Estarhechadecaracteres,númerosysímbolos— losnúmerosy lossímbolosescondidosentrelasletras(o viceversa)alarganel posiblenúmerodeopcionesparaundadocarácter, cosaquerefuerzala contraseñaen sí.

• Serúnica— elija contraseñasdiferentesdeotrascontraseñasquetal vezestéusando.Si todassuscontraseñassonigualeso muy parecidas,la magnituddeun fallo deseguridadpuedesermayor.

Deberíaevitar contraseñasque

• seanpalabrasqueseencuentran enel diccionario— si usapalabrasdediccionariocomocon-traseñas,estácontribuyendoa quesu sistemade seguridadfalle. No lo haga,y no ignore losesquemasdeautentificaciónquenole permitenel usodepalabrasdediccionarioparapermitirquesususuarioslo hagan.

• tenganquever consusdatospersonales— si usacontraseñascomola fechadesucumpleaños,el nombredesuesposo/a,o la marcadesucoche,estásólobuscandoproblemas.Pienseentodaslascontraseñasqueusay determinesi alguienqueustedconocepodríaadivinarlas.Si hayaunqueseaunamínimaposibilidaddequepuedanhacerlo,no useesacontraseña.

• no puedaserescritarápidamente— si sucontraseñaestancomplicadaquedeberbuscarlos ca-racterescadavezquetienequeteclearla,ojos indiscretospodrían fácilmenteobservar susdedosy adivinar la contraseña.Practiquepor lo menosteclearsucontraseñacuandoestésoloparaau-mentarla velocidadenquela teclea.

7.6 Seguridad de redesSi usasusistemaRedHat Linux enunared(comounareddeárealocal, reddeáreaampliao Inter-net),deberá serconscientedequesusistemaestaráa un nivel másalto deriesgoquesi no estuvieseconectadoaunared.Ademásdeatentadosbrutalesalosficherosdecontraseñasy usuariossinaccesoapropiado,la presenciadesusistemaenunaredmásgrandeaumentala oportunidaddequeocurraunproblemadeseguridady la formaposibleenquepuedaocurrir.

SehacreadoenRedHat Linux unaciertacantidaddemedidasdeseguridaddered,y muchasherra-mientasde seguridadopensourcetambiénestánincluidascon la distribuciónbásica.Sin embargo,a pesardesuestadodepreparación,puedenocurrir problemasdeseguridaddered,debidosparcial-mentea su topología de red o a unadocenade otrosfactores.Paraayudarlea determinarla fuentey métodode un problemade seguridaddered, tomeen cuentalas manerasmásverosímilesen quepodría ocurrir:

• Búsquedaentre los datosdeautenticación — muchosmétodosdeautenticaciónpor defectoenLinux y enotrossistemasoperativosdependendeenviarle suinformación deautentificación"en

Page 106: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

106 Capítulo 7:Elementos básicos de seguridad de Red Hat

abierto"dondesunombredeusuarioy contraseñasele envíanpormediodela redentexto comúno sinencriptar. Existenherramientasadisposiciónparaquienestenganaccesosasured(oInternet,si obtieneaccesoa susistemamientrasla usa)para"husmear"o detectarsucontraseñagrabandotodoslosdatostransferidospormediodela redy examinarlosparaencontrardeclaracionesdeini-ciosdesesióncomunes.Estemétodosepuedeusarparaencontrarcualquierinformaciónenviadasinencriptar, hastasucontraseñaderoot. Esesencialqueutilice herramientascomoKerberos5 yOpenSSH paraevitar quecontraseñasy otrosdatosdelicadosseenvíensin encriptación.Si porcualquiermotivo no esposibleutilizar estasherramientasconsusistema,entoncesasegúresedeno iniciar nuncasesionescomoroot a menosqueno estépresentedelantedela consola.

• Ataquefrontal— ataquesdedenegacióndeservicio(DoS)y sutipopuedendañarhastaunsistemaseguro inundándolocon peticionesinapropiadaso mal formuladasqueaplastaríansu sistemaocrearíanprocesosquepondríanen peligrosusistemao susdatos,ademásde otrossistemasquecomuniquencon él. Existeunacantidadde proteccionesdiferentesa disposición paraayudaradetenerelataquey minimizarel daño,comolosfirewallsquefiltran lospaquetes.Sinembargo,losataquesfrontalesseencaranconunamiradaexhaustivaalasmanerasenquelossistemasnofiablessecomunicanconsussistemasfiables,erigiendobarrerasprotectorasentrelosdosy desarrollandounamaneradereaccionarvelozmenteantecualquiereventoparaquela irrupción y los posiblesdañosseanlimitados.

• Aprovechándosedeun bug deseguridado deun loophole(rendija)— devezencuandoseen-cuentranerroresenel softwareque,si sonexplotados,podríancausargravesdañosa un sistemanoprotegido. Porestemotivo tratedeejecutarprocedimientosdesdeel root lo menosposible.Usetodaslasherramientasqueesténasudisposición,comoRedHatNetwork, paraactualizacionesdepaquetey alertasdeseguridad,pararesolver problemasdeseguridadtanprontocomoseandes-cubiertos.Porúltimo, asegúresequesusistemano tengaprogramasinnecesariosqueinicien a lahoradel arranque.Mientrasmenosprogramasseejecuten,menosprobabilidadeshayqueun bugo errordeseguridadle afecte.

7.7 Recur sos suplementariosLa informaciónsobrela seguridadestáconstantementecambiando,y algunossitioswebproveenunamaneraconvenientedeobtenerlasnoticiasmásrecientes.Paraestarsiempreal díacon los másre-cientesavisosde seguridado parasabermássobrevariascuestionesde seguridadrelacionadasconRedHat Linux, visite a menudolos sitios webde Linux y los deseguridaden general.Además,sinecesitaayudaparaconstruirunapolíticadeseguridadsólidaparalasnecesidadesespecíficasdesusistema,useun buenlibro sobrela seguridadparaquele déideas.

Page 107: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 7.7:Recursos suplementarios 107

7.7.1 Sitios web útiles• http://www.redhat.com/support/errata— Vayaa la seccióndesoportedel sitio webdeRedHat

paraobtenerlasasesoríasdeseguridademitidasy lasactualizacionespublicadasparacadaversióndeRedHat Linux por RedHat.

• http://www.cert.org — El sitio webdeCERT ofreceunalista actualizadadeincidentesy vulne-ralibilidadesdeseguridaddegranimpacto,ademásdeinformación detalladasobrecadaaviso deseguridady sobrecómorestablecerun sistemadespuésdequehayasidocomprometido.

• http://www.sans.org — El sitio webdelInstitutodeSeguridad,Redesy AdministracióndeSiste-mas(SANS)proporcionaalertasdeseguridadenformaderesumen,eincluyeenlacesconvenienteshaciaRPMsactualizados(cuandoestándisponibles).

• http://www.linuxsecurity.com— El sitio webdeLinux-Specific Security(Seguridadespecífica)tieneunacoleccióndeenlacesLinux relacionadoscon la seguridad,la documentacióny muchomás.

• http://www.securityportal.com— El sitio webdeSecurityPortalcontieneunamezcladenoticiasde seguridadrecientes,reparacionesespecíficas paraLinux, y documentosqueexplican cómoconstruirmejoresmodelosy políticasdeseguridad.

7.7.2 Libr os sobre el tema• SecuringandOptimizingLinux: RedHat Edition(Asegurandoy optimizandoLinux: EdiciónRed

Hat) deGerhardMourani;OpenNA — Estelibro tambiénseencuentraa sudisposición a travésdel sitio http://www.openna.comcomoficheroPDFquesepuedecargargratuitamente.

• Secrets& Lies(Secretosy mentiras)deBruceSchneier;JohnWiley & Sons,Inc. — Un examencompletoy pragmáticodelasmásrecientescuestionesdeseguridadinformática.

Page 108: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

108 Capítulo 7:Elementos básicos de seguridad de Red Hat

Page 109: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 8.1:Las ventajas de PAM 109

8 Módulos de autentificaci ónconectab les (PAM)Los programasqueofrecenprivilegios a los usuariosdebenautentificar (verificar la identidadde)adecuadamentecadausuario.Al iniciar unasesiónenun sistema,el usuarioproporcionasunombredeusuarioy contraseñay elprocedimientodeinicio desesiónusaelnombredeusuarioy lacontraseñaparaautentificarel inicio desesión— paraverificarqueelusuarioesquiendiceser. Sonposiblesotrasformasdeautentificaciónademásdelascontraseñasy lascontraseñassepuedenalmacenarenmodosdiferentes.

Los PluggableAuthenticationModules(PAM) sonunamanerade permitir queel administradordesistemaestablezcaunapolíticadeautentificaciónsin tenerquerecompilarprogramasdeautentifica-ción. ConPAM, secontrolacómodeterminadosmódulosdeautentificaciónseconectanaunprogramaeditandoel ficherodeconfiguración PAM deeseprogramaen /etc/pam.d .

La mayoría delos usuariosdeRedHat Linux nuncanecesitaránmodificar los ficherosdeconfigura-cióndePAM paraningunodesusprogramas.CuandousaRPM parainstalarprogramasquerequierenautentificación,hacenautomáticamenteloscambiosnecesariosparallevaracaboautentificacionesdecontraseñasnormalespormediodePAM. Sinembargo,si deseapersonalizarsuconfiguración,deberáconocerla estructuradeun ficherodeconfiguraciónPAM. Haymásinformaciónasudisposiciónso-breel temaenla Sección 8.2.2,LosmódulosdePAM.

8.1 Las ventajas de PAMCuandoseusacorrectamente,PAM proveemuchasventajasparaun administradordesistema,comolassiguientes:

• Un esquemadeautentificacióncomúnquesepuedeusarconunagranvariedaddeaplicaciones.

• PAM puedeserejecutadoconvariasaplicacionessin tenerquerecompilarlasaplicacionesparasoportarPAM específicamente.

• Granflexibilidad y controlsobrela autentificaciónparael administradory parael desarrolladordeaplicaciones.

• Los desarrolladoresdeaplicacionesno necesitandesarrollarsuprogramaparausarun determi-nadoesquemadeautentificación. En sulugar, puedenconcentrarsepuramenteenlos detallesdesuprograma.

Page 110: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

110 Capítulo 8:Módulos de autentificación conectables (PAM)

8.2 Ficheros de configuración PAMEl directorio /etc/pam.d contienelos ficherosde configuración de PAM. En versionesantiguasde PAM seutilizaba /etc/pam.conf . El ficheropam.conf todavía selee si no seencuentranentradas/etc/pam.d/ , perosedesapruebasuuso.

Cadaaplicación(o servicio, comoseconocencomúnmentelasaplicacionesproyectadasparaserusa-daspor muchosusuarios)tienesupropio fichero. Cadaficherotienecincoelementosdiferentes:elnombre de servicio , el tipo de módulo, el indicador de control , la ruta de módulo y los argu-mentos.

8.2.1 Nombres de servicio de PAMEl nombredeserviciodetodaslasaplicacioneshabilitadasparaPAM esel nombredesu ficherodeconfiguraciónen/etc/pam.d . CadaprogramaqueusaPAM define supropionombredeservicio.

Por ejemplo,el programalogin define el nombrede servicio login , ftpd define el nombredeservicioftp , etc.

Generalmente,el nombredeservicioeselnombredelprogramausadoparaobteneraccesoal servicio,no del programausadoparaproporcionar el servicio.

8.2.2 Los módulos de PAMPAM contienecuatrotiposdiferentesdemódulosparacontrolarel accesoa determinadosservicios:

• Los módulosauth proporcionanla autentificaciónen sí (tal vez pidiendoy controlandounacontraseña)y establecenlascredenciales,comola afiliación degrupoo losbilletesdeKerberos.

• Los módulosaccount controlanquela autentificaciónseapermitida(que la cuentano hayacaducado,queel usuariotengapermisodeiniciar sesionesa esahoradel día,etc.).

• Los módulospassword seusanparaestablecercontraseñas.

• Los módulossession seusandespuésdequeun usuariohasidoautentificado. Los módulossession permitenquealguienusesu cuenta(paraarmarel directoriode inicio del usuariooponera disposición subuzónelectrónico,por ejemplo).

Estosmódulossepuedenapilar, o colocarunosobreotro paraquesepuedanusarlos módulosmúl-tiples. El ordende unapila de módulosesmuy importanteen el procedimientode autentificación,porquefacilitamuchoal trabajodelunadministradorel requerirqueexistanvariascondicionesantesdepermitir queselleve a cabola autentificacióndel usuario.

Por ejemplo,rlogin normalmenteusapor lo menoscuatrométodosde autentificaciónapilados,comosepuedever ensuficherodeconfiguración PAM:

Page 111: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 8.2:Ficheros de configuración PAM 111

auth required /lib/security/pam_nologin.soauth required /lib/security/pam_securetty.soauth required /lib/security/pam_env.soauth sufficient /lib/security/pam_rhosts_auth.soauth required /lib/security/pam_stack.so service=system-authaccount required /lib/security/pam_stack.so service=system-authpassword required /lib/security/pam_stack.so service=system-authsession required /lib/security/pam_stack.so service=system-auth

Antesdequeaalguienselepermitallevaracaboel rlogin , PAM verificaqueel fichero/etc/no-login noexista,quenoestéintentandoiniciar unasesiónenmodoremotocomorooty quesepuedacargarcualquiervariablede entorno.Entoncesselleva a cabounaautentificaciónrhosts exitosaantesquesepermitala conexión. Si falla la autentificaciónrhosts , entoncesselleva a cabounaautentificacióndecontraseñaestándar.

SepuedenañadirmódulosPAM nuevosencualquiermomentoy despuéssepuedencrearaplicacionesquesepuedanusarconlosmódulosdePAM. Si porejemploustedcreaunmétododecreacióndecon-traseñasparausarseunasolavezy escribeunmóduloPAM quelo soporte,losprogramasconscientesdePAM puedenusarel módulonuevo y el métodoparacontraseñasinmediatamentesin tenerqueserrecompiladoso modificados.Comopodráimaginar, estoesmuy positivo, porquele permitecombi-nary emparejar, ademásdeprobar, los métodosdeautentificaciónmuy rápidamenteconprogramasdiferentessin tenerquerecompilarlos programas.

La documentaciónsobre la escritura de módulos contenida en el sistema se encuentraen/usr/share/doc/pam— <version-number>.

8.2.3 Los indicadores de contr ol PAMTodoslos módulosPAM generanun resultadodeéxito o fracasocuandoseleshaceun control. Losindicadoresdecontrolle dicenaPAM quéhacerconel resultado.Comolosmódulospuedenapilarseenundeterminadoorden,los indicadoresdecontrolle danla posibilidaddefijar la importanciadeunmóduloconrespectoa los módulosquelo siguen.

Unavezmás,considereel ficherodeconfiguraciónPAM rlogin :

auth required /lib/security/pam_nologin.soauth required /lib/security/pam_securetty.soauth required /lib/security/pam_env.soauth sufficient /lib/security/pam_rhosts_auth.soauth required /lib/security/pam_stack.so service=system-authaccount required /lib/security/pam_stack.so service=system-authpassword required /lib/security/pam_stack.so service=system-authsession required /lib/security/pam_stack.so service=system-auth

Page 112: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

112 Capítulo 8:Módulos de autentificación conectables (PAM)

Antesdequeseespecifiqueel tipo demódulo,los indicadoresdecontroldecidenla importanciaconla quedeberíaserconsideradoesedeterminadotipo de módulo en cuantoal propósitogeneraldepermitirlea eseusuarioel accesoa eseprograma.

El estándarPAM define cuatrotiposdeindicadoresdecontrol:

• Losmódulosrequired indicadosdebensercontroladosconéxitoparaquesepermitala auten-tif icación. Si fracasael controldeun módulorequired , el usuariono recibiráun aviso hastaqueno hayansidocontroladoslos demásmódulosdel mismotipo.

• Losmódulosrequisite indicadostambiéndebensercontroladosconéxitoparaquelaautenti-ficaciónseaexitosa.Sinembargo,si fracasauncontroldemódulorequisite , el usuariorecibeunavisoinmediatamenteconunmensajequereflejaelprimermódulorequired o requisitefracasado.

• Si fracasanlos controlesa módulossufficient indicados,se ignoran. Perosi un módulosufficient indicadopasael controlconéxitoy ningúnmódulorequired indicadoantesdeeseha fracasado,entoncesningúnotro módulode estetipo secontrolaráy estetipo de móduloseráconsideradocomocontroladoexitosamentepor entero.

• los módulosoptional indicadosno sonesencialesparael éxito o fracasogeneraldela auten-tif icaciónparaesetipo demódulo.Desempeñanunpapelsólocuandoningúnotromódulodeesetipohatenidoéxitoo hafallado.Enestecasoeléxitoo fracasodeunmódulooptional indicadodeterminala autentificaciónPAM generalparaesetipo demódulo.

YaestáadisposiciónparaPAM unasintaxisdeindicadordecontrolmásnuevaquepermitemáscon-trol. Consultela documentacióndePAM ubicadaen/usr/share/doc/pam— <version-num-ber> paraobtenermásinformaciónsobreestasintaxisnueva.

8.2.4 Rutas de módulos PAM

Lasrutasde los módulosle indicana PAM dóndeencontrarel móduloconectablequehayqueusarconel tipo demóduloespecificado. Generalmente,seproporcionacomounarutaenterademódulo,como/lib/security/pam_stack.so . Sinembargo,si no seproporcionala rutaentera(o seaquela rutano inicia con / ), entoncessesuponequeel móduloindicadoestáen /lib/security ,la ubicaciónpor defectoparalos módulosPAM.

8.2.5 Argumentos PAM

PAM utilizaargumentosparatransmitirinformaciónaunmóduloconectabledurantelaautentificaciónparaesedeterminadotipo demódulo. Estosargumentospermitenquelos ficherosdeconfiguraciónPAM paradeterminadosprogramasutilicen un móduloPAM comúnperoenmanerasdiferentes.

Page 113: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 8.2:Ficheros de configuración PAM 113

Porejemplo,el módulopam_userdb.so utiliza los secretosalmacenadosenun ficheroBerkeleyDB paraautentificar al usuario.(Berkeley DB esunsistemadebasededatosdeopensourceproyec-tadoparaserincrustadoenmuchasaplicacionespararastreardeterminadostiposdeinformación.)Elmódulotomaunargumentodb , especificandoel nombredeficheroBerkeley DB quehayqueusar, elcualpuedevariarsegúnel servicio.

La líneapam_userdb.so enun ficherodeconfiguraciónPAM seríamáso menosasí:

auth required /lib/security/pam_userdb.so db=path/ to/ file

Losargumentosinválidosseignorany noafectanenningúnmodoel éxitoo fracasodelmóduloPAM.Cuandopasaun argumentoinválido, el error normalmenteseescribeen /var/log/messages .Sin embargo, comoel métodode informeestá controladopor el móduloPAM, dependedel móduloregistrarel errorcorrectamente.

8.2.6 Muestras de fic heros de configuración PAMUn ficherodemuestradeconfiguracióndela aplicaciónPAM tieneesteaspecto:

#%PAM-1.0auth required /lib/security/pam_securetty.soauth required /lib/security/pam_unix.so shadow nullokauth required /lib/security/pam_nologin.soaccount required /lib/security/pam_unix.sopassword required /lib/security/pam_cracklib.sopassword required /lib/security/pam_unix.so shadow nullok use_authtoksession required /lib/security/pam_unix.so

La primeralíneaesuncomentario(cualquierlíneaqueinicie conel carácter# esuncomentario).Laslíneasdos,tresy cuatroapilantresmódulosa usarparaautentificacionesdeinicio desesión.

auth required /lib/security/pam_securetty.so

La segundalíneaseaseguradesi el usuarioestá intentandoel registrocomoroot, el tty enel queseestánregistrandoestálistadoenel fichero/etc/securetty , si ésteexiste.

auth required /lib/security/pam_unix.so shadow nullok

La líneatrescausaquesele pidala contraseñaal usuarioy quela contraseñaseacontrolada.

auth required /lib/security/pam_nologin.so

La líneacuatrocontrolasi existeel fichero/etc/nologin . Si /etc/nologin existey el usuariono esderoot, la autentificación falla.

Notequesecontrolanlos tresmódulosauth , no importasi falla el primer móduloauth. Estaes-trategianopermitequeel usuariosedécuentadeporquénosehapermitidosuautentificación. Si sesabeporquéfallaunaautentificacióntal vezal próximointentoserámásfácil pasela autentificación.

Page 114: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

114 Capítulo 8:Módulos de autentificación conectables (PAM)

Estecomportamientosepuedemodificarcambiandorequired arequisite . Si fracasacualquiermódulorequisite PAM falla inmediatamentesin llamarningúnotro módulo.

account required /lib/security/pam_unix.so

Laquintalíneahacequeseefectúecualquierverificacióndecuentaquefuesenecesaria.Siporejemplosehanhabilitadocontraseñasshadow, el módulopam_unix.so controlarási la cuentahacaducadoo si el usuariono hacambiadosucontraseñadentrodel plazopermitido.

password required /lib/security/pam_cracklib.so

Laquintalíneapruebalacontraseñareciéncambiadacontrolandosi lacontraseñapuedeserfácilmentedescubiertapor un programadedescubrimientodecontraseñasbasadoendiccionarios.

password required /lib/security/pam_unix.so shadow nullok use_authtok

La séptimalíneaespecificaquesi el programalogin cambiala contraseñadelusuario,deberíautili-zarel módulopam_unix.so parahacerlo.(Estosucederásólosi unmóduloauth hadeterminadoquedebecambiarsela contraseña— enel casoquehayacaducadounacontraseñashadow, porejem-plo.)

session required /lib/security/pam_unix.so

La octava y final líneaespecifica queel módulopam_unix.so debería usarseparaadministrarlasesión.Actualmenteesemódulonohacenada;podríaserreemplazadoporcualquiermódulonecesa-rio o suplementadopor mediodeunapila.

Notequeel ordenenqueestánlaslíneasdentrodecadaficherotieneimportancia.Mientrasel ordenenquelos módulosrequired vanllamadosno tienemuchaimportancia,hayotrosindicadoresdecontroladisposición.Mientrasoptional seutilizararamente,sufficient y requisite hacenqueel ordentengaimportancia.

Comosiguienteejemplorepasaremosla configuración auth parael rlogin :

#%PAM-1.0auth required /lib/security/pam_nologin.soauth required /lib/security/pam_securetty.soauth required /lib/security/pam_env.soauth sufficient /lib/security/pam_rhosts_auth.soauth required /lib/security/pam_stack.so service=system-auth

Primero,pam_nologin.so controlaparaver si /etc/nologin existe. Si existe,nadiepuedeiniciar unasesiónexceptoa nivel deroot.

auth required /lib/security/pam_securetty.so

Segundo,pam_securetty.so no permitequelos inicios desesióna nivel deroot ocurranenter-minalesinseguras.Estorechazaeficazmentecualquierintentode rlogin a nivel deroot. Si desea

Page 115: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 8.4:El uso de r l ogi n, r sh, y r exec con PAM 115

permitirles(ental casodeberíaencontrarsedetrásdeunbuencortafuegoo noestarconectadoa Inter-net)haceresto,consultela Sección 8.4,El usoderlogin, rsh, y rexec conPAM.

auth required /lib/security/pam_env.so

Tercero,el módulo pam_env.so carga las variablesde entornoespecificadasen /etc/secu-rity/pam_env.conf .

auth sufficient /lib/security/pam_rhosts_auth.so

Cuarto,sepam_rhosts_auth.so autentifica al usuariopor mediode .rhosts enel directoriodeinicio del usuario,PAM inmediatamenteautentifica el rlogin sin proseguir conunaautentifica-ción decontraseñanormalconpam_stack.so . Si pam_rhosts_auth.so no lograautenticaral usuario,seignoraesaautentificación fracasada.

auth required /lib/security/pam_stack.so service=system-auth

Quinto, si pam_rhosts_auth.so no ha logrado autentificar al usuario, el módulopam_stack.so ejecutaunaautentificaciónde contraseñanormaly sepasaal service=sys-tem-auth argumento.

NotaSi no deseaquesepida la contraseña cuandoel control securetty fra-casay determinaqueel usuarioestá intentandoiniciar unasesión a nivel deroot enmodoremoto,puedecambiarel módulopam_securetty.so derequired a requisite . Comoalternativa, si deseapermitir inicios desesióna nivel deroot remotos(queno esmuy buenaidea),puedeconvertirestalíneaencomentario.

8.3 Contraseñas shado wSi estáempleandocontraseñasshadow, pam_unix.so automáticamentedetectaráque se estánusandoy lasusará paraautenticarusuarios.

ConsulteSección 12.1,UtilidadesShadowparaobtenermásinformación sobrecontraseñasshadow.

8.4 El uso de rlogin , rsh , y rexec con PAMPormotivosdeseguridadrexec , rsh , y rlogin noestánhabilitadospordefectoenRedHatLinux7.1. Deberíautilizar el grupodeprogramasdeherramientasOpenSSHensulugar. Informaciónsobrelas herramientasOpenSSHseencuentraen el Capítulo 11, ProtocoloSSHy en la Official RedHatLinux CustomizationGuide.

Page 116: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

116 Capítulo 8:Módulos de autentificación conectables (PAM)

Si debeutilizar rexec , rsh , y rlogin y si necesitausarlosa nivel de root, necesitaráefectuaralgunasmodificacionesal fichero /etc/securetty . Las tres herramientastienenficherosdeconfiguraciónPAM querequierenel módulo PAM pam_securetty.so , asíquedebemodificar/etc/securetty parapermitir el accesoa nivel deroot por via remota.

Antesde iniciar unasesióna nivel deroot utilizandoestasherramientas,primerodebeconfigurarlasadecuadamente.PrimeroinstaleRPM rsh-server incluido conRedHat Linux 7.1. ConsulteOf-ficial RedHat Linux CustomizationGuidesi necesitaayudaparael usodeRPM.

Luego ejecutentsysv y habilite rexec , rsh y rlogin . Consultela páginademanualntsysvsi necesitaayudaparausarestaherramienta.

Porúltimo, reiniciexinetd con /sbin/service xinetd restart paraactivar los cambiosenntsysv . Ahoratodoslos usuariosexceptoroot podránusarrexec , rsh y rlogin .

Parapermitir queroot utilice estasherramientas,añadalos nombresde las herramientasquedeseapermitir a /etc/securetty . Si deseabahabilitarel inicio desesióna nivel de root con rexec ,rsh y rlogin , añadalassiguienteslíneasa /etc/securetty :

rexecrshrlogin

Parapermitirqueroot inicie unasesiónusandoestasherramientaspor telnet (unaideatodavíapeorperonecesariaenalgunosentornos),añadaalgunaslíneasmás:

pts/0pts/1

8.5 Otros recur sosHay muchamásinformaciónsobrePAM a disposiciónde la quecubreestecapítulo. Existenvariasfuentesdeinformacióndegranvalor paraayudarlea configurary utilizar PAM ensusistema.

8.5.1 Documentación instalada• páginasdemanualpam— buenainformaciónintroductoriasobrePAM, incluyendola estructura

y propósitode los ficherosdeconfiguraciónPAM.

• /usr/share/doc/pam —<version-number> — contiene excelente documentaciónen HTML sobrePAM, ademásde la Guía para administradores de sistema, un Manual paraescritoresde módulosy un Manual para desarrolladores de aplicaciones. Tambiéncontieneunacopiadel estándarPAM, DCE-RFC86.0.

Page 117: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 8.5:Otros recursos 117

8.5.2 Sitios web útiles• http://www.kernel.org/pub/linux/libs/pam— el sitio web principal de distribución parael pro-

yectoLinux-PAM, contieneinformaciónsobrevariosmódulosy aplicacionesPAM actualmenteenusoo enfasededesarrollo,un FAQ, y documentación PAM suplemental.

Ademásdeestosrecursosrecomendamosqueleala mayorcantidaddeejemplosdeficherodeconfi-guraciónposiblecuandoempieceatrabajarconPAM. Muchossitioswebofrecenejemplosdecódigo,ya seaparaadministradoresquedeseancambiarlos ficherosde configuraciónpredeterminadosqueparadesarrolladoresdeaplicacionesquedeseanutilizar PAM consusprogramas.

Page 118: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

118 Capítulo 8:Módulos de autentificación conectables (PAM)

Page 119: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 9.2:¿Por qué no usar Kerberos? 119

9 Uso de Kerber os 5 en Red Hat Lin uxKerberosesun sistemadeseguridadpararealizarserviciosdeautentificaciónenla red. La autentifi-caciónsignifica:

• La verificación dela identidaddelasentidadesenla red.

• El tráfico enla redesde la fuentequelo haenviado.

Kerberosusacontraseñasparaverificar la identificacióndelosusuarios,peroestascontraseñassiem-preseenvíanencriptadasa travésde la red.

9.1 ¿Por qué usar Kerber os?La mayoríadelasredesusanesquemasdeautentificaciónbasadosencontraseñas.Cuandounusuarionecesitaunaautentificaciónde un servicioejecutadoenun servidorde red,sucontraseñaesescritaparacadaservicioquerequiereautentificación.Sucontraseñaesenviadaatravésdela redy elservidorverifica su identidadmedianteel usodela contraseña.

La transmisión decontraseñasen texto sin retocarmedianteel usodeestemétodo,aunquehechoamenudo,representaun riesgodeseguridadtremendo.Cualquierchifladodel sistemaconaccesoa laredy un analizadordepaquetesquepuedeinterceptarcualquiercontraseñaenviadadeestemodo.

El primerobjetivo deKerberosesel deasegurarquelascontraseñasnuncaseanenviadasdesencrip-tadasa travésde la red. Un usocorrectoKerberoserradicala amenazadeanalizadoresdepaquetesqueinterceptencontraseñasensured.

9.2 ¿Por qué no usar Kerber os?Kerberoseliminaunaamenazadeseguridadcomún.¿Porquénoseusaentodaslasredes?Porvariasrazones,kerberospuedeserdifícil deimplementar:

• No existeningunasoluciónrápidaparamigrarcontraseñasdeusuariosdesdeunabasededatosdecontraseñasUNIX (talescomo/etc/passwd o /etc/shadow ) aunabasededatosdecontr-señasKerberos.La migraciónestécnicamenteposible,peroesuntemaqueseescapadeldominiodeestecapítulo.Paradecidirsi unamigracióndecontraseñastienesentidoensuintalaciónKerbe-ros,vealasFAQ deKerberos>Question2.23o la informaciónrelativaenla Sección9.8,Recursosadicionalesparaunainformaciónmásdetallada.

• Kerberosessólo compatibleprácticamentecon los PluggableAuthenticationModules(PAM)usadospor la mayoríadelos servidoresenRedHat Linux. Paramásinformación veala Sección9.7,Kerberosy PluggableAuthenticationModules(PAM).

Page 120: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

120 Capítulo 9:Uso de Kerberos 5 en Red Hat Linux

• ParaunaaplicaciónuseKerberos,el códigodebesermodificadoparahacerlasllamadasapropia-dasalaslibreríasdeKerberos.Paraalgunasaplicaciones,estopuedesuponerunesfuerzoexcesivodeprogramación.Paraotrasaplicaciones,loscambiossedebenrealizarenel protocolousadoen-tre el servidorde red y susclientes;de nuevo, estopuedesuponerunaprogramación excesiva.Además,resultaráimposiblehacerqueciertasaplicacionesclosed-sourcefuncionencon Kerbe-ros.

• Kerberospresuponequeustedestáutilizandohostsfiablesenunarednofiable.Suprimerobjetivoesel de prevenir que las contraseñasde texto sin retocarseanenviadasa travésde la red. Sinembargo,sicualquierotroapartedelusuarioadecuadotieneaccesofísicoacualquieradeloshosts,especialmenteel queemiteticketsusadosparala autentificación,todosistemadeautentificacióndeKerberoscorreel riesgodetransigir.

• Finalmente,si decideusarKerberosensured,debedarsecuentadequeesunaeleccióndetodoo nada.Si algunode los serviciosquetransmitelascontraseñasde texto sin retocarpermaneceenuso,lascontraseñaspuedentodavía estarcomprometidasy suredno sebeneficiará del usodeKerberos.ParaasegurarsuredconKerberos,debekerberizar (hacertrabajarconKerberos)todaslasaplicacionesquemandanlascontraseñasentexto sinretocaro pararel usodeestaaplicacionesen la red.

9.3 Terminología Kerber osComoalgunosotrossistemas,Kerberostienesupropiaterminología. Aquí hayunalista detérminosquenecesitará paraestarfamiliarizado:

cachécredencialo archivo de tickets

Un ficheroquecontienelasclavesparaencriptarlascomunicacionesentreel usurarioy variosserviciosdered. Kerberos5 proporcionaun framework parausarotrostiposdecaché(comolamemoriacompartida),perolos archivosestánmejorsoportados.

Centro de distrib ución de claves(KDC)

Un servicioqueemiteticketsKerberos,quehabitualmenteseejecutanenel mismohostcomoun Ticket GrantingServer.

clave

Datosusadosparaencriptaro desencriptarotrosdatos. Los datosencriptadosno puedenserdesencriptadossin unaclave correcta.

cliente

Unaentidadenla red( unusuario,unhosto unaaplicación)quepuedeobtenerun ticketdesdeKerberos

dominio

Page 121: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 9.4:Modo en que funciona Kerberos 121

RedqueusaKerberos,compuestodeunoo variosservidores(tambiénconocidoscomoKDCs)y un númeropotencialdeclientes.

keytab

Un ficheroqueincluyeunalistadesencriptadade"principals"y susclaves.Losservidoresrecu-peranlasclavesquenecesitandel ficherokeytabenlugardeusarkinit . /etc/krb5.key-tab esel ficherokeytabpordefecto.El comandokadmind esel únicoservicioqueusacual-quierotro archivo ( /var/kerberos/krb5kdc/kadm5.keytab )

principal

Usuarioo servicioquepuedeautentificarmedianteel usodeKerberos.Un nombredeprincipalestáenel formato"root[/instance]@REALM". Paraunusuariotípico,el rootesigualasuID delogin. El instanceesopcional.Si el principaltieneuninstance,seseparadelrootcon("/"). Unacadenavacia("") esun instanceválido(quedifieredel instancepordefectoNULL), perousarlopuedeserconfuso.Todoslos principalsdeun dominiotienensupropiaclave,quesederiva desucontraseña(parausuarios)o aleatoriamente(paraservicios)

servicio

Programau ordenadoral queseaccedeenla red.

texto cifrado

datosencriptados

texto sin retocar

Datosno encriptados.

ticket

Grupotemporaldecredencialeselectrónicasqueverifica la identidaddeunclienteparaunser-vicio particular.

Ticket Granting Service (TGS)

Emiteticketsparaunserviciodeseadoqueusael usuarioparaganaraccesoal servicio.El TGSseejecutaenel mismohostqueKDC.

Ticket Granting Ticket (TGT)

Ticket especialquepermiteal clienteobtenerticketsadicionalessin aplicarlosdesdeKDC.

9.4 Modo en que funciona Kerber osAhora queya conocealgunosde los términosqueutiliza Kerberos,aquí tieneunaexplicacióndelfuncionamientodel sistemadeautentificaciónKerberos:

Page 122: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

122 Capítulo 9:Uso de Kerberos 5 en Red Hat Linux

En unared"normal" queusacontraseñasparaautentificar usuarios,cuandoun usuariodemandaunserviciodela redquerequiereautentificación,elusuariotienequeteclearsucontraseña.Sucontraseñaestrasmitidaentexto sin retocary seconcedeel accesoa un serviciodela red.

El principalproblemaparaKerberosconsisteencómousarcontraseñasparaautentificarlassinenviar-lasala red.Enunaredkerberizada,la basededatosdeKerberoscontienesuclaves(paralosusuarios,susclavesderivandesuscontraseñas).La basededatosKerberostambiéncontieneclavesparatodoslos serviciosde la red.

Cuandoun usuarioenunaredkerberizadaseregistraensuestacióndetrabajo,suprincipalseenvíaal Key Distribution Center(KDC) comounademandaparaun Ticket GrantingTicket (TGT). Estademandapuedeserenviadapor el programalogin (paraqueseatransparenteal usuario)o puedeserenviadapor el programakinit despuésdequeel usuarioseregistre.

El KDC verifica el principalensubasededatos.Si lo encuentra,el KDC creaun TGT, lo encriptausandolasclavesdel usuarioy lo devuelve al usuario.

El programalogin o kinit desencriptael TGPusandolasclavesdel usuario.El TGT, quecaducadespuésdeunciertoperíododetiempo,esalmacenadoensucachédecredenciales.Sólosepuedeusarunciertoperíiododetiempoquesueleserdeochohoras(adiferenciadeunacontraseñacomprometida,quepuedeserusadahastaquesecambie).El usuariono tienequeintroducirsucontraseñaotravezhastaqueel TGT caducao sedesconectay vuelve a conectarse.

Cuandoel usuarionecesitaaccederaunserviciodered,el clienteusael TGT parapedirunticketparael serviciodeTicket GrantingService(TGS),queseejecutaenel KDC. El TGSemiteun ticket porel serviciodeseado,queseusaparaautentificar el usuario.

Comoesdesuponerla explicación esdemasiadosimplificada.Si necesitaunaexplicaciónmásdeta-lladasobreel funcionamientodekerberos,veala Sección 9.8,Recursosadicionales.

Nota

Kerberosdependedeciertosserviciosdela redparatrabajarcorrectamente.Primero,Kerberosnecesitaunasicronizacióndereloj entrelos ordenadoresy sured. Si no haconfiguradoun programadesincronizacióndereloj parasured,deberáhacerlo.Ya queciertosaspectosdekerberosseapoyanenelDomainNameSystem(DNS),debedeasegurarsedequelasentradasDNSy los hostsensuredestánconfiguradascorrectamente.Veala Guía del ad-ministrador kerberos V5, proporcionadaen formatosPostScripty HTML,en/usr/share/doc/krb5-server- versionnumber/ , si necesitamásinformaciónsobreestostemas.

Page 123: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 9.5:Configuración de un servidor Kerberos 5 en Red Hat Linux 7.1 123

9.5 Configuración de un servidor Kerber os 5 en RedHat Lin ux 7.1CuandoconfigureKerberos,instaleprimeroel servidor(es)enprimerlugar. Si necesitaservidoreses-clavos,encontrarálosdetallesdela configuraciónentreel servidormaestroy el esclavo enla GuíadeinstalacióndeKerberos 5 (enel directorio/usr/share/doc/krb5-server- versionnum-ber/ ).

Parainstalarun servidorKerberos:

1. Asegúresede que tieneunasincronizaciónde reloj y DNS funcionandoen su servidorantesde instalarKerberos5. Pongaespecialatencióna la sincronizacióndel tiempoentreel servidorKerberosy susdiversosclientes. Si los relojesde servidory clientedifierenmásde 5 minutos(estacantidadpor defectopuedeserconfiguradaen Kerberos5), a los clientesKerberosno lesseráposibleautentificarseenel servidor. Estasincronizacióndereloj esnecesariaparaevitar queun agresoruseun atentificadorantiguoparahacersepasarpor un usuarioválido.

Deberíaconfigurar un Network Time Protocol(NTP) compatiblecon una red cliente/servidorusandoRedHat Linux, aunqueno utilice Kerberos.RedHat Linux 7.1 incluye el paquetentpparaunainstalaciónfácil. Vayaa http://www.eecis.udel.edu/~ntpparainformaciónadicionalso-breNTP.

2. Instalelos paqueteskrb5-libs , krb5-server y krb5-workstation en el ordenadorqueejecutarásuKDC. Esteordenadordebeserseguro— si esposible,nodeberíaejecutarningúnservicioapartedeKDC.

Si quiereusarla utilidad GraphicalUserInterface(GUI) paraadministrarKerberos,deberíains-talar tambiénel paquetegnome-kerberos . gnome-kerberos contienekrb5 , unaherra-mientaGUI paraadministrarticketsy gkadmin , unaherramientaGUI paraadministrardominiosKerberos.

3. Modifique los ficheros de configuración /etc/krb5.conf y /var/kerbe-ros/krb5kdc/kdc.conf para reflejar su nombre de entorno y sus mapasde entornoa dominio. Un entornosencillo puedeser construidopara reemplazarinstancesde EXAM-PLE.COMy example.comcon su nombredel dominio (asegúresede mantenerlos nombresenmayúsculasy minúsculasen el formato correcto)y cambiandoel KDC desdekerberos.exam-ple.comporel nombredesuservidorKerberos.Porconvenio,todoslosnombresdeentornossonenmayúsculasy todoslosnombresdehostDNSy nombresdedominiossonenminúsculas.Paramásdetallessobreel formatodeestosficheros,lealaspáginasdemanualcorrespondientes.

4. Creela basededatosusandola utilidadkdb5_util desdeel intérpretedecomandosdela shell:

/usr/kerberos/sbin/kdb5_util create -s

Page 124: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

124 Capítulo 9:Uso de Kerberos 5 en Red Hat Linux

El comandocreate creala basede datosqueseráusadaparaguardarlas clavesde su entor-nosKerberos.La opción-s fuerzala creacióndeun ficherostashenel queseguardala clavedel servidormaestro.Si no existeningúnficherostashdel queleerla clave,el servidorKerberos(krb5kdc ) pediráal usuariola contraseñadel servidormaestro( quepuedeserusadapararege-nerarla clave) cadavezqueinicie.

5. Modifiqueel fichero /var/kerberos/krb5kdc/kadm5.acl . kadmind usaesteficheroparadeterminarquéprincipalstienenaccesoa la basededatosKerberosy sunivel deacceso.Lamayoríadelasorganizacionespodránestarenunasolalínea:

*/[email protected] *

La mayoríade usuariosestánrepresentadosen la basede datospor un sólo principal (con unNULL, o vacío,instance,[email protected]). Conestaconfiguración,los usuariosconun segundoprincipalconun instancedeadmin(por ejemplo,joe/[email protected]) po-dránejercerun dominiocompletosobrela basededatosdel entornoKerberos.

Unavezquekadmind estéiniciadoenun servidor, algunosusuariospodránaccedera susservi-ciosejecutandokadmin o gkadmin encualquieradelosclienteso servidoresenel entorno.Sinembargo,sólo los usuarioslistadosenel ficherokadm5.acl podránmodificar la basededatosdecualquiermodo,exceptoparacambiarsuspropiascontraseñas.

NotaLautilidadeskadmin y gkadmin comunicanconelservidorkadmindsobrela red.Naturalmente,necesitacrearelprimerprincipalantesdequepuedaconectarseal servidorsobrela redparaadministarlo.Creeel pri-merprincipalconel comandokadmin.local , queestáespecialmentediseñadoenel mismohostqueel KDC y no usaKerberosparala auten-tif icación.

Tecleeel siguientecomandokadmin.local enel terminalKDC paracrearel primerprincipal:

/usr/kerberos/sbin/kadmin.local -q "addprinc username/admin"

6. Inicie Kerberosutilizandolos siguientescomandos:

/sbin/service krb5kdc start/sbin/service kadmin start/sbin/service krb524 start

7. Añadaprincipalsparasususuariosutilizandoel comandoaddprinc conkadmin o usandolaopcióndelmenú Principal => Añadir engkadmin . kadmin (y kadmin.local enel maestroKCD) esunainterfazdelíneadecomandosparael sistemadeadministracióndeKerberos.Como

Page 125: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 9.6:Configuración de un cliente Kerberos 5 en Red Hat Linux 7.1 125

tales,muchoscomandosestándisponiblestrasla puestaenmarchadelprogramakadmin . Vealapáginademanualkadmin paramásinformación.

8. Verifiquequesuservidoremitelostickets.Enprimerlugar, ejecutekinit paraobteneruntickety guardarloen un ficherode cachécredencial.A continuación useklist paraver la lista decredencialesensucachéy usekdestroy paradestruirel cachéy loscredencialesquecontiene.

NotaPordefecto,kinit intentaautentificarleusandoel nombredelogin deusuariode la cuentaqueha usadocuandoseregistróen susistemaporprimeravez (no enel servidorKerberos). Si el nombrede usuariodelsistemanocorrespondeconunabasededatosprincipaldeKerberos,ob-tendráunmensajedeerror. Si estosucede,déa kinit el nombredesuprincipalcomoun argumentoenla líneadecomandos(kinit prin-cipal).

Unavezquesehayancompletadolospasosanteriores,suservidorKerberosdeberíaestarfuncionando.A continuación,necesitaráconfigurarsusclientesKerberos.

9.6 Configuración de un cliente Kerber os 5 en RedHat Lin ux 7.1ConfigurarunclienteKerberos5 esmenoscomplicadoqueconfigurarunservidor. Necesitaráinstalarlospaquetesdeclientesy proveerasusclientesconunficherodeconfiguraciónválidokrb5.conf .LasversionesKerberizadasde rsh y rlogin tambiénrequierenalgunoscambiosen la configura-ción.

1. Asegúresedequela sincronización del tiemposeencuentraentreel clientedeKerberosy KDC.Consultela Sección 9.5,ConfiguracióndeunservidorKerberos5 enRedHat Linux7.1paramásinformación. DNS deberíafuncionarcorrectamenteen el clienteKerberosantesde instalarlosporgramasdeclienteKerberos.

2. Instalelos paqueteskrb5-libs y krb5-workstation entodoslos clientesdesuentorno.Deberáproporcionarsuversiónde/etc/krb5.conf parasusestacionesdetrabajodeclientes;normalmenteestopuedeserel mismokrb5.conf usadopor el KDC.

3. Antesde queunaestaciónde trabajode suentornoen particularpuedapermitir a los usuariosconectarrsh y rlogin , la estacióndetrabajonecesitarátenerinstaladoel paquetexinetd ytenersupropiohostprincipalen la basededatosKerberos.Los programasdeservidorkshd yklogind tambiénnecesitanlasclavesparael principaldesusservicios.

Page 126: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

126 Capítulo 9:Uso de Kerberos 5 en Red Hat Linux

El usodekadmin , añadeunhostprincipalparalaestacióndetrabajo.El instanceenestecasoseráelnombredelhostdelaestacióndetrabajo.Paranotenerqueteclearnuncamáslacontraseñaparaesteprincipal,puedeusarla opción-randkey parael comandoaddprinc dekadmin,creandoel principaly asignándoleunaclave aleatoria.

addprinc -randkey host/ blah.example.com

Ahoraquehacreadoel principal,puedeextraerlasclavesparala estacióndetrabajomediantelaejecucióndekadmin enla propiaestacióndetrabajoy el usodelcomandoktadd enkadmin :

ktadd -k /etc/krb5.keytab host/ blah.example.com

Parausarlasversioneskerberizadasde rsh y rlogin , deberáhabilitarklogin , eklogin ykshell , realizadohabitualmentemedianteel usodentsysv o chkconfig .

4. Es necesarioiniciar otrosserviciosde red kerberizados.Parausartelnet kerberizado,debehabilitarkrb5-telnet . Uselosprogramasntsysv o chkconfig paraconfigurarel serviciokrb5-telnet parainiciar susistema.

ParaproporcionaraccesoFTP, creey extraigaunaclave paraun principal con un root de ftp yel instancefijado parael nombredel hostdel servidorFTP. Usentsysv o chkconfig parahabilitargssftp .

El servidorIMAP incluidoenel paqueteimap usarála autentificaciónGSS-APIusandoKerberos5 si encuentrala clavecorrectaen/etc/krb5.keytab . El rootparael principalseráimap.Elgserver CVS usaun principal con un root de cvs y espor otra parteidénticoa un pserver .pserver.

Conestodeberíabastarparahacerqueseconfigureun entornoKerberossencillo.

9.7 Kerber os y Plug gable Authentication Modules(PAM)Actualmente,losserviciosKerberizadosnohacenusodePAM — unservidorkerberizadoomitePAMcompletamente.LasaplicacionesqueusanPAM puedenhacerusodeKerberosparacomprobarlascontraseñassi el módulopam_krb5 pam_krb5module(proporcionadoen el pam_krb5 ) esinsta-lado.El paquetepam_krb5 contieneunejemplodeficherosdeconfiguraciónquepermitenservicioscomologin y gdmparaautentificar usuariosy obtenercredencialesinicialesusandosuscontrase-ñas.Si el accesoaserviciosderedsiempreserealizamedianteservicioskerberizados(o serviciosqueusanGSS-API,comoIMAP), la redpuedeserconsideradarazonablementesegura.

Los administradoresde sistemascuidadososno añadenverificación de contraseñasKerberosa losserviciosde la red, porquela mayoría de los protocolosusadospor estosserviciosno encriptanlacontraseñaantesdeenviarla a travésdela red— obviamenteestoesalgoa evitar.

Page 127: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 9.8:Recursos adicionales 127

9.8 Recur sos adicionalesKerberosrepresentaun desafíoparalos nuevos usuariosa la horade entenderlo,implementarloyconfigurarlo.Remítasealassiguientesfuentesdeinformación,si deseatenermásejemploseinstruc-cionessobreel usodeKerberos:

9.8.1 Documentación instalada• /usr/share/doc/krb5-server- <version-number> — La Guía de instalaciónde

KerberosV5y la GuíadeladministradordelsistemaKerberosV5, enformatoPostScripty HTMLformats,instaladospor el RPM krb5-server .

• /usr/share/doc/krb5-workstation- <version-number> — La Guíadel usuarioUNIX deKerberosV5, enformatoPostScripty HTML, instaladaporel RPMkrb5-worksta-tion .

9.8.2 Sitios Web útiles• http://web.mit.edu/kerberos/www— Páginainicial deKerberosenel sito WebMIT.

• http://www.nrl.navy.mil/CCS/people/kenh/kerberos-faq.html— PreguntasmásfrecuentessobreKerberos(FAQ).

• ftp://athena-dist.mit.edu/pub/kerberos/doc/usenix.PS— EnlaceaunaversiónPostScriptdeKer-beros: AnAuthenticationServicefor OpenNetworkSystemsdeJenniferG. Steiner, Clif ford Neu-many Jeffrey I. Schiller. Documentooriginal quedescribeKerberos.

• http://web.mit.edu/kerberos/www/dialogue.html— DesigninganAuthenticationSystem:a Dia-loguein Four ScenesoriginariamentedeBill Bryanten1988,modificadopor TheodoreTs’o en1997.Estedocumentoesunaconversaciónentredosdiseñadoresqueestánpensandola creacióndeunsistemadeautentificaciónKerberos.El estilodesenfadadodeestaconversaciónlo convierteenun buenmaterialparaaquéllosqueno tienenningún tipo defamiliaridadconKerberos.

• http://www.ornl.gov/~jar/HowToKerb.html — Consejoprácticoparakerberizarsured.

Page 128: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

128 Capítulo 9:Uso de Kerberos 5 en Red Hat Linux

Page 129: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 10.1:Cómo usar Tripwire 129

10 Instalación y configuraci ón deTripwireEl softwareTripwire puedeayudarleaasegurarla integridaddeficherosy directoriosdesistemaesen-cialesidentificandotodoslos cambioshechosa ellos. Las opcionesde configuraciónde Tripwireincluyenla capacidadde recibir alertaspor mediode correoelectrónicosi hay ficherosespecíficosquehansidomodificadosy el controldeintegridadautomatizadoatravésdeuntrabajocron . El usodeTripwire paradetectarintrusionesy fijar dañosle ayudaa mantenerloal tantode los cambiosdelsistemay puedeagilizarel restablecimientodeunaentradaforzadareduciendoel númerodeficherosquehayquerestablecerpararepararel sistema.

Tripwire comparalos ficherosy directoriosconunabasededatosdela ubicacióndelos ficheros,lasfechasenquehansidomodificadosy otrosdatos.Tripwire generala basetomandounainstantáneadeficherosy directoriosespecíficosenestadoconocidocomoseguro. (Paramáximaseguridad,Trip-wire deberíaserinstaladoy la basedeberíasercreadaantesqueel sistemaseaexpuestoal riesgodeintrusión.)Despuésdehabercreadola basededatosdebase,Tripwire comparael sistemaactualconla basey proporcionainformaciónsobrecualquiermodificación,añadidura,o supresión.

10.1 Cómo usar TripwireEl siguientediagramadeflujo ilustracómodeberíausarseTripwire:

Page 130: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

130 Capítulo 10:Instalación y configuración de Tripwire

Gráfico 10–1 Cómo usar Tripwire

Los pasosa tomarparainstalar, usary mantenerTripwire adecuadamentesonlos siguientes:

Page 131: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 10.2:Instrucciones de instalación 131

1. InstaleTripwire y personaliceel fichero de política — si no lo ha hechoya, instaleel RPMde tripwire (vea la Sección 10.2.1,Instruccionespara la instalación de RPM). Luego per-sonalicela configuraciónde muestra(/etc/tripwire/twcfg.txt ) y los ficherosde po-lítica (/etc/tripwire/twpol.txt ) y ejecutela secuenciade comandos(/etc/trip-wire/twinstall.sh ). Consultela Sección 10.2.2, Instruccionesde post-instalaciónparaobtenermásinformación.

2. Inicialice la basededatosdeTripwire — construyaunabasededatosdelos ficherosdesistemaesencialesparasupervisarlosbasándoseenel contenidodel ficherodepolíticaTripwire nuevo yfirmado(/etc/tripwire/tw.pol ). Consultela Sección 10.7, Inicializaciónde la basededatosparaobtenermásinformación.

3. Ejecuteun control de integridad Tripwire — comparela basede datosTripwire reciéncreadaconlos ficherosdesistemarealesenbuscadeficherosmodificadoso desaparecidos.ConsultelaSección 10.8,Ejecucióndeun control deintegridad paraobtenermásinformación.

4. Examineel fichero de informesTripwire — Examineel ficherode informesTripwire con tw-print paradistinguir las violacionesa la integridad. Consultela Sección 10.9, Impresióndeinformesparaobtenermásinformación.

5. Tomelasmedidasdeseguridadadecuadas— si los ficherosbajosupervisiónhansidomodifica-dosenmodoinadecuado,lospuedereemplazarconlosoriginalessalvadosencopiasdeseguridado reinstalarel programa.

6. Actualiceel fichero dela basededatosdeTripwire — si lasviolacionesala integridadsoninten-cionalesy válidas,comosi ustedhubieseintencionalmentemodificadoun ficheroo reemplazadoundeterminadoprograma,deberíaavisarleal ficherodebasededatosdeTripwire queno lo indi-quecomoviolacióneninformesfuturos.Consultela Sección 10.10,Actualizacióndela basededatosdespuésdeun control deintegridad paraobtenermásinformación.

7. Actualice el fichero de política Tripwire — si necesitacambiar la lista de ficheros queTripwire supervisa,o la maneraenquetratalasviolacionesa la integridad,deberíaactualizarsuficherodemuestrade política (/etc/tripwire/twpol.txt ), regenerarunacopiafirmada(/etc/tripwire/tw.pol ), y actualizarsu basede datosde Tripwire. ConsulteSección10.11,Actualizacióndel fichero depolítica paraobtenermásinformación.

Consultelas seccionesadecuadasen estecapítuloparaobtenerinstruccionesdetalladassobreestospasos.

10.2 Instrucciones de instalaci ónUnavezinstalado,Tripwire debeademássercorrectamenteinicializadoparapodermantenerunasu-pervisión cuidadosade susficheros. Estasseccionesproporcionandetallessobrecómo instalarel

Page 132: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

132 Capítulo 10:Instalación y configuración de Tripwire

programa,si no estáyapresenteensusistemay luegocómoinicializar posteriormentela basededa-tosdeTripwire.

10.2.1 Instrucciones para la instalación de RPMLa formamásfácil deinstalarTripwire esinstalandoel RPMdetripwire duranteel procedimientode instalacióndeRedHat Linux 7.1. Sin embargo, si ya habíainstaladoRedHat Linux 7.1, puedeusarRPM, Gnome-RPM, o Kpackage parainstalarel RPMdeTripwire conlos CD-ROMsdeRedHat Linux 7.1. Los siguientespasosperfilan esteprocedimientoconel usodeRPM:

1. Localiceel directorioRedHat/RPMS enel CD-ROM deRedHat Linux 7.1.

2. Localiceel RPMbinariode tripwire tecleandols -l tripwire* enel directorioRed-Hat/RPMS.

3. Tecleerpm -Uvh <name> (donde<name> esel nombredelRPMdeTripwire queseencuen-tra en el paso2)

4. Despuésde haberinstaladoel RPM de tripwire , sigalas instruccionesde post-instalaciónabajo.

Nota

Las notas de versión y el fichero LIAME se encuentran en/usr/share/doc/tripwire- <version-number>. Estosdocumentoscontieneninformaciónimportantesobreel ficherode políticapredeterminadoy otrascuestiones.

10.2.2 Instrucciones de post-instalaci ónEl RPMdetripwire instalalosficherosdeprogramanecesariosparaejecutarel software.DespuésdehaberinstaladoTripwire, debeconfigurarloparasusistematal y comosedescribeenlossiguientespasos:

1. Si yasabedevarioscambiosquedeberíanefectuarseal ficherodeconfiguración(/etc/trip-wire/twcfg.txt ) o al fichero de política (/etc/tripwire/twpol.txt ), modifiqueahoraesosficheros.

Page 133: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 10.2:Instrucciones de instalación 133

NotaComosetienenquemodificar los ficherosdeconfiguracióny depolíticaparapersonalizarTripwire asusituaciónespecífica,paraello noesnece-sariousarTripwire. Si tieneintencionesdemodificarel ficherodeconfi-guraciónoeldepolítica,deberáefectuaresoscambiosantesdeejecutarlasecuenciadecomandosdeconfiguración(/etc/tripwire/twins-tall.sh ). Si modifica el ficherodeconfiguracióno el depolíticades-puésdehaberejecutadola secuenciadecomandosdeconfiguración,de-berávolver a ejecutarla secuenciadecomandosdeconfiguraciónantesde inicializar el ficherode la basededatos.Recuerdequepuedemodi-ficar los ficherosdeconfiguracióny depolíticadespuésdeinicializar elficherodela basededatosy dehaberejecutadouncontroldeintegridad.

2. Teclee/etc/tripwire/twinstall.sh enla líneadecomandoscomoroot y pulse[Intro]paraejecutarla secuenciade comandosde configuración. La secuenciade comandostwins-tall.sh le acompañaa travésdelosprocedimientosparafijar frasesdecontraseña,generarlasclavescriptográficasqueprotegenlosficherosdeconfiguracióny depolíticadeTripwire, y firmarestosficheros.ConsultelaSección 10.6,La seleccióndelasfrasesdecontraseñaparaobtenermásinformación sobrecómofijar frasesdecontraseña.

NotaUnavezcifradosy firmados,el ficherodeconfiguración(/etc/trip-wire/tw.cfg ) y eldepolítica(/etc/tripwire/tw.pol ) genera-dosal ejecutarla secuenciadecomandos/etc/tripwire/twins-tall.sh no deberíansermovidosni selesdebecambiardenombre.

3. Inicialice el ficherodela basededatosdeTripwire lanzandoel comando/usr/sbin/trip-wire --init desdela líneadecomandos.

4. Ejecuteel primercontroldeintegridadcomparandosubasededatosdeTripwire nuevo consusficherosdesistemalanzandoel comando/usr/sbin/tripwire --check desdela líneadecomandosy buscandoerroresenel informegenerado.

Una vez que termineestospasosexitosamente,Tripwire tiene la instantáneade líneade basedesu sistemade ficherosque necesitapararevisar si hay cambioshechosa los ficherosesenciales.

Page 134: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

134 Capítulo 10:Instalación y configuración de Tripwire

Además,el RPM de tripwire añadeun fichero llamado tripwire-check en el directorio/etc/cron.daily queejecutaráun controldeintegridadautomáticamenteunavezal día.

10.3 La ubicación de los fic herosAntesde trabajarcon Tripwire deberíasaberdóndeseencuentranlos ficherosquesonimportantesparala aplicación. Tripwire almacenasusficherosenvariossitiossegúnel papelquedesempeñan:

• El directorio/usr/sbin almacenalos programastripwire , twadmin y twprint .

• El directorio/etc/tripwire contienelasclaveslocalesy desitio (*.key files)y lasecuenciadecomandosdeinicialización(twinstall.sh ), ademásdelos ficherosdeconfiguración y depolíticademuestray reales.

• El directorio/var/lib/tripwire contienela basede datosdeTripwire de los ficherosdesusistema(*.twd ) y un directorioreport dondesealmacenanlos informesdeTripwire. LosinformesdeTripwire, llamadoshost_name- date_of_report- time_of_report.twr ,proporcionandetallesdelasdiferenciasentrelabasededatosdeTripwire y susficherosdesistemareales.

10.4 Los componentes de TripwireEl ficherodepolíticadeTripwire esunficherodetexto quecontienecomentarios,reglas,directivasyvariables.Esteficherodictala maneraenqueTripwire controlasusistema.Cadaregla enel ficherodepolíticaespecificaunobjetodesistemaquehayquesupervisar. Lasreglastambiéndescribensobrequécambioshayqueinformary cuálesignorar.

Los objetosdesistemasonlos ficherosy directoriosquedeseasupervisar. Cadaobjetoseidentificaconun nombredeobjeto.Unapropiedadserefierea unasolacaracterísticadeun objetoqueel soft-wareTripwire puedesupervisar. Lasdirectivascontrolanelprocesamientocondicionaldeconjuntosdereglasenun ficherodepolítica. Durantela instalación,el ficherodepolíticadetexto (/etc/trip-wire/twpol.txt ) secifray seledaotronombre,convirtiéndoseasíenunficherodepolíticaactivo(/etc/tripwire/tw.pol ).

Cuandoseacabade inicializar, Tripwire usalas reglasdel ficherode política firmadoparacrearelficherodebasededatos(/var/lib/tripwire/ host_name.twd ). El ficherodebasededatosesunainstantáneadelíneadebasedelsistemaenestadoseguroconocido.Tripwire comparaestalíneadebaseconel sistemaactualparadeterminarloscambiosquehanocurrido.A estacomparaciónselellamacontrol de integridad.

Tripwire produceficherosdeinformeenel directorio/var/lib/tripwire/report cuandoseejecutauncontroldeintegridad.Losficherosdeinformeresumencualquiercambioalosficherosquehayavioladolasreglasdel ficherodepolíticaduranteel controldeintegridad.

Page 135: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 10.5:Modificación del fichero de política 135

El ficherodeconfiguracióndeTripwire (/etc/tripwire/tw.cfg ) almacenainformaciónespecí-ficaal sistema,comolaubicacióndelosficherosdedatosdeTripwire. Tripwire generala informacióndel ficherodeconfiguraciónnecesariadurantela instalación,peroel administradordel sistemapuedecambiarlos parámetrosen el ficherodeconfiguraciónen cualquiermomentodespuésde eso. Notequeel ficherodeconfiguraciónmodificadodebedeestarfirmadodela mismamaneraqueel ficherodepolíticaparaquesepuedausarpor defecto.

Las variablesdel ficherode configuraciónPOLFILE , DBFILE , REPORTFILE, SITEKEYFILE y LO-CALKEYFILE especificanla ubicacióndelficherodepolítica,el debasededatos,losdeinformey losdeclave localy desitio. Estasvariablessedefinenpordefectoa la horadela instalación. Si modificael ficherodeconfiguracióny dejalasvariablessindefinir, Tripwire consideraráel ficherodeconfigu-ración inválido. Estocausaráunerrorenla ejecucióndetripwire , haciendoqueel programasalgadel sistema.

Notequeel ficherodeconfiguraciónmodificadodebeserfirmadodela mismamaneraqueel ficherode política paraqueTripwire lo puedausar. Consultela Sección 10.11.1,La firma del fichero deconfiguraciónparaobtenerinstruccionessobrecómofirmar el ficherodeconfiguración.

10.5 Modificación del fic hero de políticaUstedpuedeespecificar cómoTripwire debecontrolarsusistemamodificandoel ficherodepolíticade Tripwire (twpol.txt ). La modificacióndel ficherode política adaptándoloa su determinadoconfiguraciónde sistemaaumentala utilidad de los informesde Tripwire minimizandolos alertasfalsospor ficheroso programasqueustedno estáusandoperosobrelos cualesTripwire todavía estádandoinformescomomodificadoso desaparecidos.

Localiceel ficherodepolíticapredeterminadoen /etc/tripwire/twpol.txt . Hayun ficherodepolíticadeejemplo(ubicadoen/usr/share/doc/tripwire- <version-number>/po-licyguide.txt ) incluidoparaayudarleaaprenderel lenguajedepolítica.Leael ficherodepolíticadeejemploparaobtenerlasinstruccionessobrecómomodificarel ficherodepolíticapredeterminado.

Si modificael ficherodepolíticainmediatamentedespuésdehaberinstaladoel paquetetripwire ,no olvide teclear/etc/tripwire/twinstall.sh paraejecutarla secuenciade comandosdeconfiguración.Estasecuenciadecomandosfirmael ficherodepolíticamodificadoy ledaotronombrea tw.pol . Esteesel ficherodepolíticaactivo usadoporel programatripwire cuandoseejecuta.

Si modifica el ficherode políticade muestradespuésde haberejecutadola secuenciadecomandosde configuración,consultela Sección 10.11,Actualizacióndel fichero de política paraobtenerlasinstruccionessobrecómofirmarlo paraqueseconviertaenel ficherotw.pol requerido.

Page 136: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

136 Capítulo 10:Instalación y configuración de Tripwire

NotaSi modifica el fichero de política de muestra,Tripwire no lo utilizaráhastaque seafirmado, cifrado y convertido en el fichero /etc/trip-wire/tw.pol nuevo (vea Sección 10.11, Actualizacióndel fichero depolítica).

10.6 La selección de las frases de contraseñaLos ficherosdeTripwire sefirmano secifran usandoclaveslocaleso desitio queprotegenlos fiche-ros de configuración,de política, de la basede datos,y de los informesevitandoqueseanvistosomodificadosporusuariosquenoposeenlasfrasesdecontraseñadesitio o locales.Estosignificaqueaunqueunintrusolograseobteneraccesocormorootasusistema,noseríacapazdealterarlosficherosdeTripwire paraborrarsupropiapistaa menosquetambiénconozcalas frasesdecontraseña. A lahoradeseleccionarlasfrasesdecontraseña,debeusarpor lo menosochocaracteresalfanuméricosysimbólicospor cadafrasede contraseña.El tamañomáximode unafrasedecontraseñaesde1023caracteres.No deberíanusarsecitascomocaracteresdefrasesdecontraseña.Además,asegúresequesusfrasesdecontraseñaseancompletamentediferentesdela contraseñaderoot parael sistema.

Debería asignarfrasesdecontraseñaúnicasya seaparala clave desitio comoparala clave local. Lafrasedecontraseñadela clavedesitio protegela clavedesitio, la cualseusaparafirmar los ficherosdeconfiguracióny depolíticadeTripwire. La clave local firma los ficherosdela basededatosy delos informesdeTripwire.

ATENCION

Almacenelasfrasesdecontraseñaenunaubicaciónsegura.No haymaneradedescifrar unfichero firmadosi olvidasufrasedecontraseña.Si olvidalasfrasesdecontraseña, los ficherosno sepodránutilizar y deberá ejecutardenuevo la secuenciadecomandosdeconfiguración,quetambiénreinicializala basededatosdeTripwire.

10.7 Inicialización de la base de datosCuandoTripwire inicializa su basede datos,creaunacolecciónde objetosde sistemade ficherosbasadaen las reglasen el ficherode política. Estabasede datosfuncionacomola líneabaseparacontrolesde integridad.

Page 137: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 10.9:Impresión de informes 137

Utilice el siguientecomandoparainicializar la basededatosdeTripwire:

/usr/sbin/tripwire --init

Estecomandopuedetardarvariosminutosenejecutarse.

10.8 Ejecución de un contr ol de integridadCuandoejecutauncontroldeintegridad,Tripwire comparalosobjetosdesistemadeficherosactualesy realesconsuspropiedadescomohansidoindicadasensubasededatos.Lasviolacionesseimpri-mena unasalidaestándary seguardanen un ficherode informeal cualsepuedateneraccesomástardemediantetwprint . Paraobtenermásinformaciónsobrela lecturade informesTripwire, veala Sección 10.9,Impresiónde informes.

Unaopcióndeconfiguracióndecorreoelectrónicoenel ficherodepolíticapermiteademásquede-terminadasdireccionesde correoelectrónicorecibanavisoscuandoocurrenciertasviolacionesa laintegridad.ConsulteSección 10.12,Tripwire y el correoelectrónicoparaobtenerinstruccionessobrecómoconfigurarestaopción.

Utilice el siguientecomandoparaejecutarun controldeintegridad:

/usr/sbin/tripwire --check

Estecomandorequierealgodetiempoparaejecutarenla mayoríadelassituaciones,segúnel númerode ficherosquehayquecontrolar.

10.9 Impresión de inf ormesEl comandotwprint -m r muestrael contenidodeun informeTripwire entexto sincifrar. Usteddebedecirlea twprint cuál informeponerenpantalla.

Un comandotwprint paraimprimir informesTripwire seríasemejantea lo siguiente(todoenunalínea):

/usr/sbin/twprint -m r --twrfile/var/lib/tripwire/report/ <name>.twr

La opción -m r enel comandole ordenaa twprint quedescifreel informeTripwire. La opción--twrfile le ordenaa twprint queuseun ficherodeinformeTripwire específico.

El nombredel informeTripwire quedeseavercontieneel nombredelhostqueTripwire hacontroladoparagenerarel informe,ademásdela fechay horadelacreación.Ustedpuedeconsultarinformesguar-dadospreviamenteen cualquiermomento.Simplementetecleels /var/lib/tripwire/re-port paraver unalista de informesTripwire.

Los informesTripwire puedenseralgolargos,segúnla cantidaddeviolacionesencontradao loserro-resgenerados.Un informedemuestraempiezaasí:

Page 138: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

138 Capítulo 10:Instalación y configuración de Tripwire

Tripwire(R) 2.3.0 Integrity Check Report

Report generated by: rootReport created on: Fri Jan 12 04:04:42 2001Database last updated on: Tue Jan 9 16:19:34 2001

==================================================================== ===Report Summary:==================================================================== ===Host name: some.host.comHost IP address: 10.0.0.1Host ID: NonePolicy file used: /etc/tripwire/tw.polConfiguration file used: /etc/tripwire/tw.cfgDatabase file used: /var/lib/tripwire/some.host.com.twdCommand line used: /usr/sbin/tripwire --check

==================================================================== ===Rule Summary:==================================================================== ===-------------------------------------------------------------------- ---Section: Unix File System-------------------------------------------------------------------- ---

Rule Name Severity Level Added Removed Modified--------- -------------- ----- ------- --------Invariant Directories 69 0 0 0Temporary directories 33 0 0 0

* Tripwire Data Files 100 1 0 0Critical devices 100 0 0 0User binaries 69 0 0 0Tripwire Binaries 100 0 0 0

10.9.1 El uso de twprint para ver la base de datos deTripwireTambiénpuedeusartwprint paraver la basede datosenterao informaciónsobredeterminadosficherosenla basededatosTripwire. Estoesútil paraverquétantainformaciónTripwire estásuper-visandoensusistema.

Tecleeestecomandoparaver la basededatosTripwire entera:

/usr/sbin/twprint -m d --print-dbfile | less

Estecomandogeneraunagrancantidaddesalida,conlasprimeraslíneaparecidasa esto:

Tripwire(R) 2.3.0 Database

Page 139: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 10.9:Impresión de informes 139

Database generated by: rootDatabase generated on: Tue Jan 9 13:56:42 2001Database last updated on: Tue Jan 9 16:19:34 2001

=================================================================Database Summary:=================================================================Host name: some.host.comHost IP address: 10.0.0.1Host ID: NonePolicy file used: /etc/tripwire/tw.polConfiguration file used: /etc/tripwire/tw.cfgDatabase file used: /var/lib/tripwire/some.host.com.twdCommand line used: /usr/sbin/tripwire --init

=================================================================Object Summary:=================================================================-----------------------------------------------------------------# Section: Unix File System-----------------------------------------------------------------

Mode UID Size Modify Time------ ---------- ---------- ----------

/drwxr-xr-x root (0) XXX XXXXXXXXXXXXXXXXX

/bindrwxr-xr-x root (0) 4096 Mon Jan 8 08:20:45 2001

/bin/arch-rwxr-xr-x root (0) 2844 Tue Dec 12 05:51:35 2000

/bin/ash-rwxr-xr-x root (0) 64860 Thu Dec 7 22:35:05 2000

/bin/ash.static-rwxr-xr-x root (0) 405576 Thu Dec 7 22:35:05 2000

Para ver información sobre un determinadofichero que Tripwire está supervisando,como/etc/hosts , tecleeotro comandotwprint :

/usr/sbin/twprint -m d --print-dbfile /etc/hosts

El resultadoserá algoparecidoa esto:

Object name: /etc/hosts

Property: Value:------------- -----------

Page 140: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

140 Capítulo 10:Instalación y configuración de Tripwire

Object Type Regular FileDevice Number 773Inode Number 216991Mode -rw-r--r--Num Links 1UID root (0)GID root (0)

Consultela páginademanualde twprint paraconocerotrasopciones.

10.10 Actualización de la base de datos después deun contr ol de integridadSi ejecutauncontroldeintegridady Tripwire encuentraviolaciones,primerohabráquedeterminarsilasviolacionesdetectadassonrealmentebrechasenlaseguridadoelproductodemodificacionesauto-rizadas.Si hainstaladorecientementeunaaplicacióno hamodificadoficherosdesistemaesenciales,Tripwire le informará(debidamente)deviolacionesa la integridad.EnestecasodeberíaactualizarsubasededatosTripwire paraqueesoscambiosno vuelvana apareceren los informescomoviolacio-nes.Sinembargo,si seefectúancambiosnoautorizadosaficherosdesistema,generandoviolacionesal controlde integridad,entoncesdeberíarestablecerel ficherooriginal deunacopiadeseguridadoreinstalarel programa.

Paraactualizarsu basede datosde Tripwire de modoqueaceptelas violacionesencontradasen uninforme,debeespecificar el informequedeseausarparaactualizarsubasededatos.Cuandoinicieun comandoparaintegraresasviolacionesválidasensubasededatos,asegúresedeusarel informemásreciente.Tecleeel siguientecomando(todoenunalínea),dondenameesel nombredel informequedeberusarse:

/usr/sbin/tripwire --update --twrfile/var/lib/tripwire/report/ <name>.twr

Tripwire lemostraráel informeespecíficopormediodeleditordetextospredeterminado(especificadoenel ficherodeconfiguraciónTripwire enla líneaEDITOR). Estaessuoportunidadparaquitardelaselecciónficherosqueno deseaqueseactualicenenla basededatosdeTripwire. Esimportantequepermitaquesólosecambienlasviolacionesautorizadasa la integridadenla basededatos.

Todaslas actualizacionespropuestasa la basede datosde Tripwire inician con una [x] antesdelnombredel fichero. Si deseaexcluir específicamentequeunaviolación válidaseaañadidaa la basededatosdeTripwire, quitela x dela casilla.Paraaceptarcomocambiocualquierficheroconla x allado,escribael ficheroenel editory salgadeleditordetextos.EstodalaseñalaTripwire demodificarsubasededatosy no incluir estosficheroscomoviolacionesenel informe.

Porejemplo,el editordetexto predeterminadoparaTripwire esvi . Paraescribirunficheroconvi yefectuarloscambiosala basededatosdeTripwire cuandoactualiceconun informeespecífico, teclee

Page 141: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 10.11:Actualización del fichero de política 141

:wq enel mododecomandodevi y pulse[Intro]. Sele pediráquetecleesufrasedecontraseñalocal.Posteriormenteseescribiráun ficheronuevo debasededatosqueincluyalasviolacionesválidas.

Despuésdequesehayaescritaunanueva basededatosdeTripwire, lasviolacionesa la integridadreciénintegradasno volverána aparecercomoadvertenciascuandoseejecuteel siguientecontroldeintegridad.

10.11 Actualización del fic hero de políticaSi en realidaddeseamodificar los ficherosqueTripwire escribeen su basede datoso modificar laseveridadconla cualseinformanlasviolaciones,necesitamodificar suficherodepolíticaTripwire.

Primero hagatodos los cambiosnecesariosen el fichero de política de muestra(/etc/trip-wire/twpol.txt ). Un cambio común a estefichero de política es convertir en comentariocualquierfichero que no existe en su sistemaparaque no genereun mensajede error de filenot found en los informes de Tripwire. Si por ejemplo su sistemano contieneun fichero/etc/smb.conf , puededecirlea Tripwire queno intentebuscarloa travésde la conversióndesu líneaencomentarioen twpol.txt :

# /etc/smb.conf -> $(SEC_CONFIG) ;

Luego debedecirlea Tripwire quegenereun ficheronuevo /etc/tripwire/tw.pol firmadoydespuésquegenereun ficherode basededatosactualizadobasadoenestainformación depolítica.Suponiendoque/etc/tripwire/twpol.txt esel ficherodepolíticamodificado,useesteco-mando:

/usr/sbin/twadmin --create-polfile -S site.key /etc/tripwire/twpol.txt

Sele pedirála frasedecontraseñadesitio. Luegoel ficherotwpol.txt seanalizarásintácticamentey sefirmará.

Es importante actualizar la base de datos de Tripwire después de haber creado un fichero/etc/tripwire/tw.pol nuevo. La forma másconfiable parallevarlo a caboesborrandosubasededatosdeTripwire actualy creandounabasededatosnuevaconel ficherodepolíticanuevo.

Si su ficherode basede datosde Tripwire sellama wilbur.domain.com.twd , tecleeesteco-mando:

rm /var/lib/tripwire/wilbur.domain.com.twd

Luego tecleeel comandoparacrearunabasededatosnueva:

/usr/sbin/tripwire --init

Secrearáunabasededatosnuevasegúnlasinstruccionesenel ficherodepolíticanuevo. Paraasegu-rarsequela basededatoshayasidomodificadacorrectamente,ejecutemanualmenteel primercontroldeintegridady veael contenidodel informeconsiguiente.Consultela Sección 10.8,Ejecucióndeun

Page 142: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

142 Capítulo 10:Instalación y configuración de Tripwire

control deintegridady la Sección 10.9,Impresióndeinformesparaobtenerinstruccionesespecíficassobreestascuestiones.

10.11.1 La firma del fic hero de configuraciónEl fichero de texto con los cambiosal fichero de configuración (comúnmente/etc/trip-wire/twcfg.txt ) debefirmarseparaque reemplace/etc/tripwire/tw.cfg y paraqueTripwire lo utilice al ejecutarsu control de integridad. Tripwire no reconocerálos cambiosen laconfiguraciónhastaque el fichero de texto de la configuraciónestécorrectamentefirmado y seausadoparareemplazarel fichero/etc/tripwire/tw.pol .

Si suficherodetexto deconfiguraciónmodificadoes/etc/tripwire/twcfg.txt , tecleeestecomandoparafirmarlo, reemplazandoel actualfichero/etc/tripwire/tw.pol :

/usr/sbin/twadmin --create-cfgfile -S site.key /etc/tripwire/twcfg.txt

Comoel ficherode configuraciónno alteraningunade las políticasde Tripwire ni ningunode losficherossupervisadospor la aplicación,no esnecesarioregenerarla basededatosdelos ficherosdesistemasupervisados.

10.12 Tripwire y el correo electrónicoTripwire puedeenviar un mensajedecorreoelectrónicoa alguiensi sehavioladoun tipo específicodereglaenel ficherodepolítica. ParaconfigurarTripwire demaneraquehagaesto,primerohayquesaberla direccióndecorreoelectrónicodela personaquerecibiráel mensajesi ocurreundeterminadotipo deviolacióna la integridad,ademásdel nombredela regla quedeseasupervisar. Nótesequeensistemasgrandesconadministradoresmúltiples,puedeavisar diferentesconjuntosdepersonasparadeterminadasviolacionesy no avisarlea nadiesi ocurrensóloviolacionesmenores.

Unavezquesesabea quiénavisary sobrequéavisar, añadala líneaemailto= a la sección dedirec-tivasdereglasdecadaregla. Hágaloañadiendounacomadespuésde la líneaseverity= y poniendoemailto= enla líneasiguiente,seguidapor lasdireccionesdecorreoelectrónicoa lascualesenviar losinformesdeviolacionesa esaregla. Seenviaránmensajesdecorreoelectrónicomúltiplessi másdeunadireccióndecorreoelectrónicohasidoespecificaday si estánseparadaspor un puntoy coma.

Si porejemploustedquisieraqueadosadministradores,Samy Bob,selesavisequesehamodificadoel programadered,cambiela directiva de la regla deProgramasdeRedenel ficherodepolíticadeestamanera:

(rulename = "Networking Programs",severity = $(SIG_HI),emailto = [email protected];[email protected]

)

Page 143: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 10.13:Otros recursos 143

Cuandose haya generadoun fichero de política firmado nuevo desdeel fichero /etc/trip-wire/twpol.txt , las direccionesde correoelectrónico especificadasrecibiránun aviso cuandoocurranviolacionesa esadeterminadaregla. Paraobtenerlas instruccionessobrecómo firmar suficherodepolítica,consultela Sección 10.11,Actualizacióndel fichero depolítica.

10.12.1 Envío de mensajes de correo electrónico de pruebaParaasegurarsequela configuraciónparalos avisosdecorreoelectrónicoporpartedeTripwire real-menteseacapazdeenviar mensajesdecorreoelectrónicocorrectamente,useel siguientecomando:

/usr/sbin/tripwire --test --email [email protected]

Seenviaráinmediatamenteun mensajedecorreoelectrónicodepruebaa la direccióndecorreoelec-trónicopor mediodel programatripwire .

10.13 Otros recur sosTripwire escapazdehacermásdelo quesecubreenestecapítulo. Consulteestasfuentesde infor-maciónadicionalesparasabermássobreTripwire.

10.13.1 Documentación instalada• /usr/share/doc/tripwire- <version-number> — un excelentepunto de inicio

paraaprendersobrecómopersonalizarlos ficherosdeconfiguracióny depolíticaenel directorio/etc/tripwire .

• Consulteademáslaspáginasdemanualparatripwire , twadmin y twprint dondeencon-traráayudaparael usodeestasutilidades.

10.13.2 Sitios web útiles• http://www.tripwire.org — La sededel Tripwire OpenSourceProject(proyectodeopensource

deTripwire), dondepodráencontrarlasmásrecientesnoticiassobreel programa,incluyendounalista de FAQ.

Page 144: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

144 Capítulo 10:Instalación y configuración de Tripwire

Page 145: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 11.1:Introducción 145

11 Protocolo SSHEstecapítulocubrelos beneficios del protocoloSSH™, la secuenciade eventosqueocurrecuandoseefectúaunaconexión seguraa un sistemaremoto,lasdiferentescapasdeSSH,y los métodosparaasegurarsequelos usuariosqueseconectana susistemausenSSH.

Los métodoscomunesparainiciar sesionesen otro sistemaen modoremotoa travésde unashell(telnet , rlogin , o rsh ) o copiarficherosentrehosts(ftp o rcp ) resultaninsegurosy deberíanserevitados.En sulugar, debería sóloconectarsea un hostremotopor mediodeunashell seguraounaredprivadavirtual cifrada.Si usamétodossegurosparainiciar sesionesenotrossistemasremo-tamente,disminuirá los riesgosdeseguridadya seaparasusistemacomoparael sistemaremoto.

11.1 Intr oducciónSSH(o SecureSHell) esunprotocoloparacrearconexionessegurasentredossistemas.UsandoSSH,la máquinadelclienteinicia unaconexión conunamáquinadeservidor. SSHproporcionalossiguien-testiposdeprotección:

• Despuésdelaconexión inicial, el clientepuedeverificarqueseestáconectandoalmismoservidordurantesesionesulteriores.

• El clientepuedetransmitirsuinformacióndeautentificaciónal servidor, comoel nombredeusua-rio y la contraseña,enformatocifrado.

• Todoslosdatosenviadosy recibidosdurantela conexión setransfierenpormediodeencriptaciónfuerte,lo cual los hacenextremamentedifícil dedescifrary leer.

• El clientetienela posibilidaddeusarX111aplicacioneslanzadasdesdeel indicadordecomandosdela shell. Estatécnicaproporcionaunainterfazgráfica segura(llamadareenvío por X11).

El servidortambiénobtienebeneficiosporpartedeSSH,especialmentesi desempeñaunaciertacanti-daddeservicios.Si usael reenvío por puerto, losprotocolosqueenotroscasosseríanconsideradosinseguros(POP, por ejemplo)sepuedencifrar paragarantizarcomunicación seguracon máquinasremotas.SSHhacerelativamentesencillala tareadecifrar tiposdiferentesdecomunicaciónquenor-malmenteseenvía enmodoinseguroa travésderedespúblicas.

RedHat Linux 7.1 contienelos paquetesde servidor(openssh-server ) y cliente(openssh-clients ) OpenSSH,al igual queel paqueteOpenSSHgeneral(openssh ) quedebeserinstaladoparaquecualquieradelos dosfuncione.ConsulteOfficial RedHat Linux CustomizationGuideparaobtenerlasinstruccionesparainstalary desplegarOpenSSHensusistemaRedHat Linux.

1 X11 serefiereal sistemadevisiónporventanasX11R6,tradicionalmentellamadoX. RedHatLinux contieneXFree86, un sistemaX Window open-sourcemuy conocido,quesebasaenX11R6.

Page 146: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

146 Capítulo 11:Protocolo SSH

LospaquetesOpenSSHrequierendelpaqueteOpenSSL(openssl ). OpenSSLinstalavariasbiblio-tecascriptográficasimportantesquesirvenparaqueOpenSSHproporcionecomunicacionescifradas.Debeinstalarel paqueteopenssl antesdeinstalarcualquieradelos paquetesOpenSSH.

Unagrancantidaddeprogramasdeclientey servidorpuedeusarelprotocoloSSH,incluyendomuchasaplicacionesopensourcea disposición gratuita. Hay variasversionesde clientediferentesde SSHa disposición paracasi todoslos sistemasoperativos másimportantesen usoactualmente.Aún silos usuariosqueseconectana su sistemano ejecutanRedHat Linux, de cualquiermanerapuedenencontrary usarun clientedeSSHnativo parasusistemaoperativo.

11.1.1 ¿Porqué usar SSH?Entrelasamenazasal tráfico deredestánincluidosel husmeodepaquetey la falsificacióndeDNS eIP2y la promulgacióndeinformaciónderuteofalso.Entérminosgenerales,estasamenazassepuedencatalogardel siguientemodo:

• Interceptaciónde la comunicaciónentre dossistemas— bajo estahipótesis,existe un terceroenalgúnlugarde la redentreentidadesen comunicaciónquehaceunacopiade la informaciónquepasaentreellas. La parteinterceptorapuedeinterceptary conservar la información,o puedemodificar la informacióny luego enviarlaal recipienteal cualestabadestinada.

• Personificacióndeundeterminadohost— conestaestrategia,unsistemainterceptorfingeserelrecipientea quienestádestinadoun mensaje.Si funcionala estrategia,el clienteno sedacuentadel engañoy continúaa comunicarcon el interceptorcomosi su mensajehubiesellegadoa sudestinaciónexitosamente.

Ambastécnicascausanqueseintercepteinformación, posiblementeconpropósitoshostiles. El re-sultadopuedesercatastrófico, ya seaqueesepropósitosealcancepor mediode escuchartodoslospaquetesenun LAN o por un servidorDNS sometidoa un hackqueapuntahaciaun hostduplicadointencionalmente.

Si seutiliza SSHparainiciosdesesióndeshellremotay paracopiarficheros,estasamenazasa la se-guridadsepuedendisminuirnotablemente.La firmadigital deunservidorproporcionala verificaciónparasu identidad. No esposibleutilizar la comunicaciónenteraentrelos sistemassi ha sido inter-ceptada,porquecadaunodelos paquetesestácifrado. No servirándenadalos intentosdefalsificarla identidaddecualquierade los dosladosde la comunicaciónya quecadapaqueteestácifradopormediodeunaclave conocidasólopor el sistemalocal y el remoto.

11.2 Secuencia de eventos de una cone xión SSHUnaciertaseriedeeventosayudaa protegerla integridaddeunacomunicaciónSSHentredoshosts.

2 La falsificacióncomúnmentesignificaaparecerantelos demáscomoun determinadosistemacuandoenrea-lidad no seesesesistema

Page 147: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 11.2:Secuencia de eventos de una conexión SSH 147

Primero,secreaunacapade transporte seguraparaqueel clientesepaqueestáefectivamenteco-municandoconel servidorcorrecto.Luego secifra la comunicación entreel clientey el servidorpormediodeun códigosimétrico.

Después,con la conexión seguraal servidorensu lugar, el clienteseautentifica anteel servidorsinpreocuparsedequela informacióndeautentificaciónpudieseexponersea peligro. OpenSSHenRedHatLinux usaclavesDSA o RSAy la versión2.0delprotocoloSSHparaautentificacionespredeter-minadas.

Por último, con el clienteautentificadoanteel servidor, sepuedenusarvariosserviciosdiferentesconseguridada travésdela conexión, comounasesiónshell interactiva,aplicacionesX11 y túnelesTCP/IP.

El procedimientodeconexión entotal selleva a cabosin grandesesfuerzossuplementalespor partedelsistemalocal. Dehecho,bajomuchosaspectos,SSHtrabajabienporquelesesfamiliarausuariosacostumbradosa métodosdeconexión menosseguros.

Enel siguienteejemplouser1enel sistemadel clienteestáiniciandounaconexión SSHconunservi-dor. La direcciónIP del servidores10.0.0.2,perosepodríausarsunombrededominioensulugar.El nombredeinicio desesióndeuser1enel servidoresuser2.El comandossh seescribeasí:

[user1@machine1 user1]$ ssh [email protected]

El clienteOpenSSHpedirála frasedecontraseñadela claveprivadadelusuarioparadescifrarla claveprivada,queseutiliza parallevar a cabola autentificación.Sin embargo, la frasedecontraseñadelaclave privadano seenvía a travésde la ya seguraconexión entreel clientey el servidor. En vezdeeso,seusala frasedecontraseñaparaabrir el ficheroid_dsa y generarunafirma, queluego envíaal servidor. El usuarioseráautentificadosi el servidortieneunacopiadela clavepúblicadel usuarioquesepuedausarparaverificar la firma.

Enesteejemploel usuariousaunaclaveDSA (tambiénsepuedenusarlasclavesRSA,entremuchasotras)y ve el siguienteindicadordecomandos:

Enter passphrase for DSA key ’/home/user1/.ssh/id_dsa ’:

Si por cualquiermotivo llegasea fallar la autentificacióndela clave pública(tal vezla frasedecon-traseñahasidotecleadaerróneamenteo la informacióndeautentificaciónno existetodavíaenel ser-vidor), por lo generalseintentaotro tipo deautentificación.Ennuestroejemploel servidorOpenSSHpermitequeuser1seautentifique a sí mismocon el usode la contraseña de user2porquela firmaenviadano correspondía conla clave públicaalmacenadapor user2:

user2@machine2’s password:

Al usuariosele ofreceunindicadordecomandosdeshellcuandotecleala contraseñacorrecta.User2debería ya tenerunacuentaenla máquina10.0.0.2paraquefuncionela autentificacióndela contra-seña,por supuesto.

Page 148: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

148 Capítulo 11:Protocolo SSH

Last login: Mon Apr 15 13:27:43 2001 from machine1[user2@machine2 user2]$

Llegadoaestepunto,elusuariopuedeinteraccionarconlashelldelmismomodoenquepodríahacerlocon telnet o rsh , exceptoquela comunicaciónestácifrada.

OtrasherramientasSSHcomoscp y sftp trabajandemaneraparecidaa lasherramientasinsegurasrcp y ftp , respectivamente.ConsulteOfficial RedHat LinuxCustomizationGuideparaobtenerlasinstruccionesy los ejemplosparausarestosy otroscomandosSSH.

11.3 Capas de seguridad SSHEl protocoloSSHpermitequecualquierprogramadeclientey servidorconstruidosegún los planesdetalladosdel protocolocomuniquenconseguridady seusendemaneraintercambiable.

ActualmenteexistendosvariedadesdiferentesdeSSH.La versión1 deSSHcontienevariosalgorit-mosdeencriptaciónpatentados(sin embargovariosdeestaspatenteshancaducado)y un agujerodeseguridadquepotencialmentepermitiríaquedatosseinsertenenel flujo dedatos.Serecomiendaelusodeservidoresy clientescompatiblesconla versión2 deSSH,si esposible.

OpenSSHincluye el soporteparala versión2 (y clavesde encriptaciónDSA a disposicióngratis).CombinadoconlasbibliotecasdeencriptaciónOpenSSL,OpenSSHproporcionaunagamacompletadeserviciosdeseguridad.

Ambasversionesdel protocoloSSH(1 y 2) usancapasde seguridadparecidasparareforzarla in-tegridadde la comunicacióndesdevariospuntosdevista. Cadacapaproporcionasupropio tipo deprotecciónquecuandoseusaenconjuntoconlasotrasrefuerzala seguridadtotaldela comunicacióny la hacemásfácil deusar.

11.3.1 Capa de transpor teEl papelprincipaldela capadetransporteesel defacilitar unacomunicación seguraentredoshostsa la horadey despuésde la autentificación. Normalmenteejecutadoa travésdeTCP/IP, la capadetransportelogra hacerestoocupándosede la encriptacióny descifradode datos,verificandoqueelservidorseala máquinacorrectaparala autentificación,y proporcionandoproteccióna la integridadde los paquetesde datosal momentode serenviadosy recibidos. Además,la capade transportetambiénpuedeproveerla compresióndelosdatos,acelerandoasí la transmisióndela información.

Al contactarun clientea un servidorpor mediodelprotocoloSSH,senegocianvariospuntosimpor-tantesparaqueambossistemaspuedanconstruirla capadetransportecorrectamente:

• Intercambiodeclaves

• El algoritmodela clave públicaquehayqueusar

• El algoritmodela encriptación simétricaquehayqueusar

Page 149: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 11.3:Capas de seguridad SSH 149

• El algoritmodela autentificacióndemensajesquehayqueusar

• El algoritmodehashquehayqueusar

El servidorseidentifica anteel clienteconunaclave de host duranteel intercambiodeclaves. Ob-viamentesi esteclientenuncahabía comunicadoantescon estedeterminadoservidor, la clave delservidorle resultarádesconocidaal cliente.OpenSSHevita esteproblemapermitiendoqueel clienteaceptela clave de hostdel servidorla primeravezqueselleva a cabounaconexión SSH.Luego laclave de hostdel servidorsepuedeverificar con la versiónguardadaen el clienteen las siguientesconexiones,proporcionandola confianzaqueel clienteestárealmentecomunicandoconel servidordeseado.

ATENCION�

El métododeverificaciónde la clave dehostutilizadopor OpenSSHno esperfecto.Un agresorpodríafingir serel servidorduranteel contactoinicial,porqueel sistemalocal no necesariamentereconoceríala diferenciaentreelservidordeseadoy el agresora esepunto. Perohastaqueno seencuentreadisposiciónun métodomejordedistribucióndeclavesdehost,estemétodoinicialmenteinseguroesmejorquenada.

SSHfue ideadoparafuncionarcon casicualquiertipo de algoritmode clave públicao formatodecodificación.Despuésdequeel intercambiodeclavesinicial creadosvalores(unvalordehashusadoparaintercambiosy un valor de secretocompartido),los dossistemasempiezaninmediatamenteacalcularclavesy algoritmosnuevosparaprotegerla autentificacióny losdatosqueseenviaránatravésde la conexión enel futuro.

11.3.2 AutentificaciónCuandolacapadetransportehayaconstruidountúnelseguroparatransmitirinformaciónentrelosdossistemas,el servidorle dirá al clientedelos diferentesmétodosdeautentificaciónsoportados,comoel usodefirmasprivadascodificadasconclaveso la insercióndeunacontraseña.El clienteentoncesintentaráautentificarseanteel servidormedianteel usodecualquieradelos métodossoportados.

Ya quelos servidoressepuedenconfigurar paraqueconcedanvarios tipos de autentificación, estemétodoproporcionaa cadaparteun controlóptimo. Luego el servidorpodrádecidirquémétodosdeencriptaciónsoportará basadoensupautadeseguridad,y el clientepuedeelegir el ordenenquein-tentaráutilizar losmétodosdeautentificaciónentrelasopcionesadisposición.Graciasala naturalezaseguradela capadetransportedeSSH,hastamétodosdeautentificaciónquepareceninseguros,comola autentificaciónbasadaenel host,sonenrealidadseguros.

Page 150: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

150 Capítulo 11:Protocolo SSH

La mayoríadelosusuariosquerequierendeunashellseguraseautentificaránpormediodeunacon-traseña.Encontrasteconotrosesquemasdeseguridadpormediodeautentificación,la contraseñasetransmiteal servidorentexto sin cifrar. Sin embargo,ya quela contraseñaenterava cifradaal pasarpor la capadetransporte,puedeserenviadaa travésdecualquierredsin problemasdeseguridad.

11.3.3 ConexiónDespuésdeunaautentificaciónexitosasobreunacapadetransporteSSH,seabrencanalesmúltiplespor mediode la multiplexión3la conexión individual entredossistemas.Cadacanalseocupade lacomunicaciónparasesionesentreterminalesdiferentes,el reenvíodeinformaciónporX11ocualquierservicioapartequeintenteusarla conexión SSH.

Ya sealos clientescomo los servidorespuedencrearun canalnuevo, con cadacanalasignadounnúmerodiferenteen cadaorilla. Cuandounaparteintentaabrir un canalnuevo, el númeroparaelcanaldeesaparteseenvía junto conla petición.Estainformación sealmacenapor la otrapartey seusaparadirigir undeterminadotipo decomunicacióndeservicioaesecanal.Estosellevaacaboparaquediferentestiposdesesionesnoseafectenlosunospor losotrosy queloscanalespuedancerrarsesin interrumpirla conexión SSHprincipalentrelos dossistemas.

Los canalestambiénsoportanel controldeflujo, el cual lespermiteenviar y recibir datosordenada-mente.De estamanera,los datosno seenvíana travésdel canalsinohastaqueel hosthayarecibidoun mensajeavisandoqueel canalpuederecibirlos.

Loscanalessonespecialmenteútilesconel reenvío porX11 y el reenvío porpuertoTCP/IPconSSH.Sepuedenconfigurarcanalesaparteenmododiferente,talvezparausaruntamañodepaquetemáximodiferenteo paratransferirun determinadotipo de datos. EstopermitequeSSHseaflexible en sumododeencargarsedelosdiferentestiposdeconexionesremotas,comoel accesotelefónicoenredespúblicasoenlacesLAN dealtavelocidad,sintenerquecambiarla infraestructurabásicadelprotocolo.El clientey el servidorseponende acuerdoautomáticamentesobrela configuraciónde cadacanaldentrode la conexión SSHparael usuario.

11.4 Ficheros de configuración OpenSSHOpenSSHtienedosconjuntosdiferentesde ficherosde configuración,uno paralos programasdelcliente(ssh , scp , y sftp ) y el otro paralos serviciosdel servidor(sshd ), ubicadosendossitiosdiferentes.

La información de configuración SSH para todo el sistemaestá almacenadaen el directorio/etc/ssh :

3 Unaconexión multiplexadaconsisteenvariasseñalesenviadassimultáneamentepor un mediocompartido.ConSSH,seenvíanvarioscanalesenunaconexión encomún segura.

Page 151: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 11.4:Ficheros de configuración OpenSSH 151

• primes — contienegruposDiffie-Hellmanquesirvenparael intercambiodeclavesDiffie-Hell-man. Fundamentalmente,esteintercambiode claves creaun valor de secretocompartidoqueningunadelaspartespuededeterminarsolay seusaparaproporcionarla autentificacióndelhost.Esteficheroesesencialparala construccióndeunacapadetransportesegura.

• ssh_config — el ficherode configuraciónde clienteSSHparatodo el sistemaseusaparadirigir al clienteSSH.Si un usuariotienesupropioficherodeconfiguracióna disposiciónensudirectoriodeinicio (~/.ssh/config ), susvalorespredominaránsobrelosvaloresalmacenadosen /etc/ssh/ssh_config .

• sshd_config — el ficherodeconfiguraciónparasshd .

• ssh_host_dsa_key — la clave privadaDSA usadapor sshd .

• ssh_host_dsa_key.pub — la clave públicaDSA usadapor sshd .

• ssh_host_key — la claveprivadaRSAusadaporsshd parala versión1 delprotocoloSSH.

• ssh_host_key.pub — la clavepúblicaRSAusadaporsshd parala versión1 delprotocoloSSH.

• ssh_host_rsa_key — la claveprivadaRSAusadaporsshd parala versión2 delprotocoloSSH.

• ssh_host_rsa_key.pub — la clave pública RSA usadapor sshd parala versión2 delprotocoloSSH.

La informaciónparala configuraciónSSHespecíficaparael usuarioestáalmacenadaenel directoriode inicio del usuariodentrodel subdirectorio.ssh :

• authorized_keys2 — el ficheroquecontieneunalista declavespúblicas"autorizadas".Siun usuarioqueseconectapuedecomprobarqueconocela clave privadaquecorrespondea cual-quierade las clavespúblicas,entoncesseráautentificada. Note queestoessólo un métododeautentificaciónopcional.

• id_dsa — contienela identidaddeautentificación DSA del usuario.

• id_dsa.pub — la clave públicaDSA del usuario.

• known_hosts2 — almacenalasclavesdehostDSA delosservidoresa loscualeslosusuariosdaninicio a unasesiónpor mediodeSSHcuandoel usuariodecideguardarlas.Si a un servidorsele modificanlasclavesdehostenmodolegítimo, tal veza la horadereinstalarRedHat Linuxel usuariorecibiráun aviso quela clave dehostalmacenadaenel ficheroknown_hosts2 quedeberíacorrespondercon estehostno corresponde.Entoncesel usuariodebeborraresaclavede hosten known_hosts parapoderalmacenarla clave de hostnueva paraesesistema. Elficheroknown_hosts2 esmuy importanteparaasegurarqueel clienteseestéconectandoconel servidorcorrecto.Si hacambiadounaclave dehost,y ustedno estáperfectamenteseguroel

Page 152: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

152 Capítulo 11:Protocolo SSH

motivo por el queha sido cambiada,entoncesdeberíacontactarel administradorde sistemadelhostparaasegurarsequeel hostno hayasidoexpuestoa peligro.

Consultelaspáginasdemanualssh y sshd paraobtenerinformaciónacercadelasdirectivasdispo-niblesen los ficherosdeconfiguraciónSSH.

11.5 Más que una shell seguraUnainterfazdelíneadecomandosseguraessóloel inicio delasmuchasmanerasdeusarSSH.Dadaunacantidadapropiadadeanchodebanda,lassesionesX11 sepuedendirigir por un canalSSH.OsepuedenasignarconexionesdepuertoentresistemasquepreviamenteeraninsegurasacanalesSSHespecíficosusandoel reenvío por TCP/IP.

11.5.1 Reenvío por X11Abrir unasesiónX11atravésdeunaconexión SSHestablecidaestanfácil comoejecutarunprogramaX mientrasseestá ya ejecutandoun clienteX en suhost. Cuandoun programaX seejecutadesdeun indicadordecomandosdeshellsegura,el clientey el servidorSSHcreanun nuevo canalsegurodentrode la conexión SSHactual,y los datosdel programaX seenvían a travésde esecanala lamáquinadeclientecomosi ustedestuvieseconectadoal servidorX pormediodeunaterminallocal.

Comopodráimaginar, el reenvío por X11 puedesermuy útil. Porejemplo,sepuedeusarel reenvíopor X11 paracrearunasesiónsegurae interactiva conel GUI up2date en el servidorparaactua-lizar paquetesenmodoselectivo (si poseelos paquetesRedHat Network necesariosinstaladosenelservidor).Parahacerestosimplementehayqueconectarseal servidormediantessh y teclear:

up2date

Sele pediráproporcionarla contraseñaderootparael servidor. Luegoapareceráel Red Hat UpdateAgent y ustedpodráactualizarsuspaquetesen el servidorcomosi estuviesesentadodelantede lamáquina.

Sin embargo, los gastosgeneralesdeprocesamientorequeridosparacifrar y descifrarla informaciónseguraqueseenvía a travésdel canal,ademásdel anchodebandaextra necesarioparaenviar datosdeaplicacionesX encriptadospuedensercuantiosos.Esnecesariollevar a cabopruebasadecuadasparaasegurarsequeel programaX todavía esutilizable,dadassuscondicionesdehardwarey anchodebandaparticulares.

11.5.2 Reevío por TCP/IPEl reenvío por TCP/IPtrabajacon el clienteSSHy pide queun determinadopuertoen el lado delclienteo del servidorseaasignadoa la conexión SSHexistente.

Page 153: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 11.5:Más que una shell segura 153

Paraasignarun puertolocal del clientea un puertoremotodel servidor, primerohay quesaberlosnúmerosdepuertodeambasmáquinas.Hastaesposibleasignardospuertosno estándar, diferentesel unodel otro.

Useel siguientecomando(todo en la mismalínea)paracrearun canalde reenvío por TCP/IPqueescuchelasconexionesenel hostlocal:

ssh -L <local-port>: <remote-hostname>: <remote-port><username>@<hostname>

NotaConfigurar un reenvío por TCP/IPparaqueescucheen puertosinferioresa 1024requiereaccesoa la raíz del mismomodoqueiniciar serviciosqueescuchanenpuertosbajo1024.

Si porejemplodeseacontrolarsucorreoelectrónicoenunservidorllamadomail.domain.comusandoPOPy SSHestáadisposicióneneseservidor, puedeusarestecomandoparaconfigurarel reenvío porTCP/IP:

ssh -L 1100:mail.domain.com:110 mail.domain.com

Despuésdequeel reenvío porTCP/IPestésituadoentrelasdosmáquinaspuedeindicarleasuclientedecorreoPOPqueuselocalhostcomoservidorPOPy 1100comopuertoparacontrolarsi haycorres-pondencianueva. Cualquierpeticiónenviadaal puerto1100en su sistemaseráreenviadaen modoseguroal servidormail.domain.com.

Si mail.domain.comnoestáejecutandoundemoniodeservidorSSHperoesposibleiniciar unasesiónpor mediodeSSHa unamáquinacercana,quizása travésdeun cortafuego, puedede todosmodosusarSSHparaasegurarla partedela conexión POPqueocurrea travésderedespúblicas.Paraestoesnecesarioun comandoligeramentediferente:

ssh -L 1100:mail.domain.com:110 other.domain.com

En esteejemplo,ustedestáreenviandosupeticiónPOPdesdeel puerto1100ensumáquinaa travésdela conexión SSHenel puerto22 haciaother.domain.com.Luego other.domain.comseconectaalpuerto110enmail.domain.comparapermitirlecontrolarsucorrespondencia.Sólola conexiónentresusistemay other.domain.comesseguro,peroenmuchassituacionesestobastaparateneraccesoasuinformaciónconseguridadatravésderedespúblicasproporcionandomásseguridaddela queteníaanteriormente.

Por supuestoqueen esteejemploy en el precedentehay quesercapacesde autentificarseanteelservidorSSHparadesempeñarel reenvío por TCP/IP. Asegúresede poderejecutarcomandosSSHnormalesantesdeintentarconfigurarel reenvío por TCP/IP.

Page 154: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

154 Capítulo 11:Protocolo SSH

El reenvío por TCP/IPpuedeserespecialmenteútil paraobtenerinformaciónenmodoseguroa tra-vésdecortafuegosdered. Si el cortafuego estáconfiguradoparapermitir el tráfico SSHa travésdesu puertoestándar(22) perobloqueael accesoa travésde otrospuertos,siguesiendoposibleunaconexión entredoshostsusandolos puertosbloqueadosdesviandosucomunicacióna travésdeunaconexión SSHestablecidaentreellos.

NotaSin embargo, estopuedesermuy peligroso.El usodel reenvío por TCP/IPparareenviar conexionesdeestamanerapermitequecualquierusuarioenelsistemadel clienteseconecteal servicioal cualustedestáreenviandocone-xiones,quepodríaserpeligrososi susistemade clienteseconvierteen unsistemaexpuesto.

Controleconel administradordesistemaqueadministrasucortafuegoantesde usarel reenvío por TCP/IPparasuperarlo.Los administradoresde sis-temasa quieneslespreocupael reenvío por TCP/IPpuedeninhabilitarestafunciónenelservidorespecificandounparámetroNoparala líneaAllo wTcp-Forwar ding en/etc/ssh/sshd_config y luegoreiniciandoel serviciosshd .

11.6 Requisitos de SSH para cone xiones remotasParaqueSSHsearealmenteeficazparaprotegersusconexionesdered,deberádejardeusarprotoco-los deconexión inseguros,comopor ejemplotelnet y rsh . De otramanera,la contraseñadeunusuariopodríaserprotegidaun díasi seusassh y luegosercapturadaal díasiguientecuandoiniciaunasesiónpor mediode telnet .

Parainhabilitarmétodosdeconexión insegurosasusistemausentsysv o chkconfig paraasegu-rarsequeestosserviciosno inicien juntoconel sistema.Escribael siguientecomandoparahacerquentsysv configurelos serviciosqueinician a nivelesdeejecución 2, 3, y 5:

/usr/sbin/ntsysv 235

Dentrodentsysv sepuedeninhabilitarel inicio deserviciosanulandolaselección. Lateclade[espa-cio] cambialosserviciosdeactivosainactivos.Comomínimodeberíadesactivar telnet , rsh , ftpy rlogin . Cuandotermine,seleccioneel botón OK paraconservarsuscambiosntsysv . Consultela páginademanualquecorrespondea ntsysv paraobtenermásayudaenel usodeestautilidad.

Loscambioshechosconntsysv nosurtiránefectosinohastaquesereinicieel sistemao cambialosnivelesdeejecución.Si hadesactivadoserviciosqueseusanconxinetd , deberáreiniciarxinetd .Pordefecto,rlogin , rsh y telnet soncontroladosporxinetd . Parareiniciarxinetd teclee:

Page 155: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 11.6:Requisitos de SSH para conexiones remotas 155

/sbin/service xinetd restart

Deberáinhabilitarmanualmentelosserviciosquenoseusanconxinetd amenosquedeseereiniciarsu sistemadespuésde haberusadontsysv . Para inhabilitar un servicioprobablementeusaráuncomandocomo:

/sbin/service <service-name> stop

Despuésde haberreiniciadoxinetd e inhabilitadocualquierservicioquehayaconfiguradoparaqueno inicie automáticamente,los métodosdeconexión inhabilitadosya no seránaceptadospor susistema.Si inhabilita todoslos métodosdeconexión remotosapartedel demoniodeserviciosshd ,los usuariosdeberánusarunaaplicacióndeclienteSSHparaconectarseal servidor.

Page 156: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

156 Capítulo 11:Protocolo SSH

Page 157: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 12.1:Utilidades Shadow 157

12 Contr ol de acceso y privilegiosEl sistemadeseguridadseconfíaausuarioso gruposquenosoncapacesdehacermásdelo quedebe-rían,deacuerdoconunapolíticadeseguridad.La mayoríadelos cambiosdel díaa díarelacionadosconel controldeaccesoy privilegiosserefierenal usoadecuadodeusuariosy grupos.(ConsulteelCapítulo 2, Usuariosy gruposparamásinformaciónsobrela creacióny configuracióndeusuariosygrupos.)

No obstante,muchasorganizacionesqueusanRedHatLinux tienenpautaso entornosdetrabajopar-ticularesquerequierenunaseguridadmásestrictao configuracionesespecialesparaaccesosestrictosaaplicacioneso dispositivosdesistema.Estasecciónle muestradiferentesmanerasdeabordarsusis-temaparaqueproporcioneunnivel apropiadodeaccesoy privilegiosparalosusuariosensusituación.

12.1 Utilidades Shado wSi estáen un entornomultiusuarioy no utiliza ni PAM ni Kerberos,debería considerarel uso deutilidadesShadow (tambiénconocidascomocontraseñasshadow) parala protecciónincrementadaofrecidapor los ficherosdeautentificaciónde susistema.Durantela instalaciónde RedHat Linuxla proteccióndela contraseñashadow parasusistemasehabilitapor defecto,asícomocontraseñasMD5 (métodoalternativo paraencriptarcontraseñasparael almacenamientoensusistema).

Lascontraseñasshadow ofrecenventajasrespectoa losalmacenamientosdecontraseñasestándaran-terioresdeUNIX y LINUX queincluyen:

• Seguridaddel sistemamejoradaal trasladarlascontraseñasencriptadas(queseencuentrannor-malmenteen /etc/passwd ) a /etc/shadow quetansólopuedeserleídopor root.

• Informaciónreferentea la antigüedaddela contraseña(tiempotranscurridodesdela última vezquesecambióla contraseña)

• Controlsobreel tiempoquepuedepermanecerunacontraseñaantesdequeal usuariosele pidaquela cambie.

• Habilidadparausarel fichero/etc/login.defs parareforzarla políticadeseguridad,espe-cialmenteenlo referentea la antig|edadde la contraseña.

El paqueteshadow-utils contieneun númerodeutilidadesquesoportan:

• Conversióndecontraseñasnormalesa shadow y viceversa(pwconv , pwunconv )

• Verificacióndela contraseña,grupoy ficherosshadow asociados(pwck , grpck )

• Métodosestándardeindustriaparaañadir, borrary modificar lascuentasdeusuario(useradd ,usermod , y userdel )

Page 158: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

158 Capítulo 12:Control de acceso y privilegios

• Métodosestándardeindustriaparaañadir, borrary modificar losgruposdeusuario(groupadd ,groupmod , y groupdel )

• Métodoestándardeindustriaparaadminstrarel fichero/etc/group utilizandogpasswd

NotaPuntosadicionalesquehacenreferenciaa estasutilidades:

• Lasutilidadesfuncionarándependiendodesi sepermiteo no el shado-wing.

• Lasutilidadessehanmodificadoligeramenteparasoportarel esquemadegrupodelusuarioprivadodeRedHat. Paraverunadescripcióndelasmodificaciones,lea la páginade manualuseradd Paraulterior infor-maciónsobrelos gruposprivadosde usuarioremítasea la Sección 2.4,Gruposprivadosdeusuarios.

• El script adduser ha sido sustituidopor un enlacesimbólico en/usr/sbin/useradd .

• Lasherramientasenel paqueteshadow-utils noestánhabilitadasniporKerberosni porLDAP. Losusuariosnuevosseránsólolocales.Paramásinformaciónconsulteel Capítulo 9, UsodeKerberos5 enRedHatLinuxy el Capítulo 4, LightweightDirectoryAccessProtocol(LDAP).

12.2 Configuración del acceso de consolaCuandolosusuariosnormales(quenosonroot)seconectanaunordenadorlocalmente,selesdandostiposde permisos:

1. Puedenejecutarciertosprogramasquedeotramanerano seríancapacesdeejecutar.

2. Puedenaccedera ciertosficheros(generalmenteficherosdedispositivosespecialesusadosparaaccedera diskettes,CD-ROMS,etc)a los que,delo contrario,no lesseríaposibleacceder.

Ya queexistenmúltiples consolasen un solo ordenadory múltiplesusuariospuedenconectarsealordenadorlocalmenteal mismotiempo,unodelosusuariostieneque"ganar"la carreraparaaccedera los ficheros. El primer usuarioqueseconectea la consolaposeeesosficheros. Una vez queelprimerusuariosedesconecta,el siguienteusuarioqueseconectetendráesosarchivos.

Porel contrario,acadausuarioqueseconecteala consolasele permitiráejecutarprogramasquerea-licen tareasrestringidasnormalmenteal usuarioroot. Si seestáejecutandoX, estasaccionespueden

Page 159: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 12.2:Configuración del acceso de consola 159

incluirsecomomenúdeitemsenla interfazgráfica deusuario.Los programasaccesiblesa consolasincluyenhalt y reboot .

12.2.1 Deshabilitar el apagado a través de Ctrl-Alt-SuprPordefecto,/etc/inittab especifica quesusistemaestáconfiguradoparaapagarsey rearrancarel sistemacomorespuestaa la combinacióndeteclasusadasenla consola[Ctrl]-[Alt]-[Supr]. Si quieredeshabilitarestahabilidad,necesitaráañadirla siguientelíneaen /etc/inittab :

ca::ctrlaltdel:/sbin/shutdown -t3 -r now

Otra alternativa, esla de concedera ciertosusuariosno queno sonroot, el derechoa shutdown elsistemadesdela consolamediante[Ctrl]-[Alt]-[Supr]. Puederestringiresteprivilegio aciertosusuarios,siguiendolos siguientespasos:

1. Añadaunaopción-a a la línea/etc/inittab mostradaanteriormente,demaneraquequedeasí:

ca::ctrlaltdel:/sbin/shutdown -a -t3 -r now

El indicador-a le pide a shutdown quebusqueel fichero /etc/shutdown.allow , quecrearáenel siguientepaso.

2. Creeun ficherollamadoshutdown.allow en/etc . El ficheroshutdown.allow deberíalistar los nombresdeusuariodecualquierusuarioal quesele permitaapagarel sistemausando[Ctrl]-[Alt]-[Supr]. El formatodel fichero/etc/shutdown.allow esunalista denombresdeusuarios,unopor línea,comosiguea continuación:

stephenjacksophie

Deacuerdoconesteejemplodeficheroshutdown.allow , stephen,jacky sophieestánautorizadosa apagarel sistemadesdela consolausando[Ctrl]-[Alt]-[Supr]. Cuandoseusaesacombinacióndeclaves,el shutdown -a compruebaquecualquieradelosusuariosen/etc/shutdown.allow(o root)estánconectadosaunaconsolavirtual. Si esunodeellos,el apagadodelsistemacontinuará;delo contrario,apareceráun mensajedeerrorescritoenla consoladel sistema.

Parainformaciónulterior sobreshutdown.allow consultela páginademanualshutdown .

12.2.2 Deshabilitar el acceso desde la consola a programasParadeshabilitarel accesodeusuarioa programasdeconsola,deberíaejecutarel siguientecomandocomoroot:

rm -f /etc/security/console.apps/*

Page 160: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

160 Capítulo 12:Control de acceso y privilegios

En entornosdondela consolaseencuentraasegurada( BIOS y LILO tienencontraseña,[Ctrl]-[Alt]-[Suprimir] estádeshabilitado,los interruptoresdeencendidoy reinicioestándesactivados,etc.),puedequenodeseepermitiraningúnusuarioqueejecuteenla consolapoweroff , halt , y reboot , quesonaccesiblesdesdela consolapor defecto.

Paradesactivar estashabilidades,hayqueejecutarlos siguientescomandoscomoroot:

rm -f /etc/security/console.apps/poweroffrm -f /etc/security/console.apps/haltrm -f /etc/security/console.apps/reboot

12.2.3 Deshabilitar el acceso a la consola totalmenteEl móduloPAM pam_console.so gestionalospermisosy laautentificacióndelosarchivosdecon-sola.(ConsulteelCapítulo8,Módulosdeautentificaciónconectables(PAM)paraulteriorinformaciónsobrela configuracióndePAM.) Si quieredeshabilitarel accesoa la consolatotalmente,incluido elaccesoaprogramasy ficheros,añadatodaslaslíneasquehacenreferenciapam_console.so eneldirectorio/etc/pam.d . El siguientescript lo harátodo:

cd /etc/pam.dfor i in * ; dosed ’/[^#].*pam_console.so/s/^/#/’ < $i > foo && mv foo $idone

12.2.4 Definición de la consolaEl módulopam_console.so utiliza el fichero/etc/security/console.perms paradeter-minarlospermisosdelosusuariosparala consoladelsistema.La sintaxisdel ficheroesmuyflexible;puedemodificarel ficherodemaneraquelasinstruccionesnoseapliquennuncamás.No obstante,elficheropredeterminadotieneunalíneaqueseparecea la siguiente:

<console>=tty[0-9][0-9]* :[0-9]\.[0-9] :[0-9]

Cuandolos usuariosseconectan,están conectadosa algúntipo de terminalcon nombre,ya seaunservidorde X con un nombrecomo :0 o mymachine.example.com:1.0 ; o a un dispositivocomo/dev/ttyS0 o /dev/pts/2 . Pordefectosedefine quelasconsolaslocalesvirtualesy losservidoreslocalesde X seconsideranlocales,perosi sequieresepuedeconsiderarlocal un puertoseriecomo/dev/ttyS1 , cambiandoesalíneaa:

<console>=tty[0-9][0-9]* :[0-9]\.[0-9] :[0-9] /dev/ttyS1

12.2.5 Creación de archiv os accesib les desde la consolaEn /etc/security/console.perms , hayunasecciónconlíneascomo:

<floppy>=/dev/fd[0-1]* \

Page 161: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 12.2:Configuración del acceso de consola 161

/dev/floppy/*<sound>=/dev/dsp* /dev/audio* /dev/midi* \

/dev/mixer* /dev/sequencer \/dev/sound/*

<cdrom>=/dev/cdrom* /dev/cdwriter*

Puedeañadirsuspropiaslíneasa estasección, si lo consideranecesario.Asegúresedequelaslíneasqueañadaserefierena un dispositivo apropiado.Porejemplo,puedeañadirla siguientelínea:

<scanner>=/dev/sga

(Naturalmente,asegúresedeque/dev/sga esrealmentesuescánery no sudiscoduro.)

Ésteesel primerpaso.El segundoesdefinir lo quesehahechoconestosarchivos.Mire enla secciónanteriorde /etc/security/console.perms paraver líneassimilaresa:

<console> 0660 <floppy> 0660 root.floppy<console> 0600 <sound> 0640 root<console> 0600 <cdrom> 0600 root.disk

y añadaunalíneacomo:

<console> 0600 <scanner> 0600 root

Cuandoseconectea la consola,sele daráun dispositivo de pertenenciay los permisosserán0600(quesólopodráleerusted).Cuandosedesconecte,el dispositivo perteneceráa root y todavía tendrápermisos0600(queenestecasosólo podráleery escribirroot).

12.2.6 Habilitar el acceso de consola para otras aplicacionesSi deseaqueotrasaplicacionessseanaccesiblesalosusuariosdeconsolas,tendráquehacerunúltimoesfuerzo.

Lo primerodetodo,el accesodeconsolasólofuncionaparaaplicacionesqueesténenlos directorios/sbin o /usr/sbin , asíquela aplicacióna ejecutardebeestarahí. Unavezverificado,sigalossiguientespasos:

1. Creeun enlacepartiendodel nombrede la aplicación,comoen nuestroprogramade ejemplofoo, parala aplicación /usr/bin/consolehelper :

cd /usr/binln -s consolehelper foo

2. Creeel archivo /etc/security/console.apps/ foo:

touch /etc/security/console.apps/ foo

Page 162: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

162 Capítulo 12:Control de acceso y privilegios

3. Creeun archivo deconfiguracióndePAM parael serviciofoo en /etc/pam.d/ . Unaformafácil derealizarloesempezarconunacopiadelarchivo deconfiguraciónPAM delservicioparaday modificar el archivo si quierecambiarel entorno:

cp /etc/pam.d/halt /etc/pam.d/foo

A partir deahora,cuandoejecute/usr/bin/ foo, sepondráencontactoconconsolehelper ,queautentificaráal usuarioconla ayudade /usr/sbin/userhelper . Paraautentificar el usua-rio, consolehelper le pedirála contraseñade usuariosi /etc/pam.d/ foo esunacopiade/etc/pam.d/halt (delo contrario,harálo queestáespecificadoen /etc/pam.d/ foo) y, porconsiguiente,ejecutará /usr/sbin/ foo conpermisosderoot.

12.3 El grupo floppySi, por cualquierrazón,el accesodesdeconsolano esapropiado,y senecesitadaraccesoa usuariosnormalesa la disqueteradel sistema,sepuedehacerusandoel grupo floppy . Simplementehayqueañadira los usuariosal grupofloppy utilizandocualquierherramientaapropiada.Aquí hayunejemploquemuestracomogpasswd puedeusarseparaañadirel usuariofredal grupofloppy :

[root@bigdog root]# gpasswd -a fred floppyAdding user fred to group floppy[root@bigdog root]#

En estemomento,el usuariofred puedeaccedera la disqueteradel sistema.

Page 163: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Parte III Apac he

Page 164: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la
Page 165: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 13.1:Introducción 165

13 Uso de Apac he como servidor Websegur o13.1 Intr oducciónEstecapítuloproporcionainformación básicasobrecómo instalarel servidorApacheWorld WideWeb(WWW or Web)conel módulodeseguridadmod_ssly conlaslibreríasy el kit deherramientasOpenSSL.La combinación deestostrescomponentes,proporcionadospor RedHatLinux, apareceráenestemanualcomosecureWebserver o simplementecomoservidorseguro.

Los ServidoresWeb suministranpáginasweb a los navegadores(comopor ejemplo,NetscapeNa-vigator, Internet Explorer deMicrosoft) quelo solicitan. En términosmástécnicos,los servidoresWebsoportanel ProtocolodeTransferenciadeHypertexto conocidocomoHTTP (HyperText Trans-fer Protocol),el estándardeInternetparacomunicacionesweb. UsandoHTTP, unservidorwebenvíapáginaswebenHTML y CGI, asícomootrostiposdescriptsa los navegadoreso browserscuandoéstoslo requieren.Cuandoun usuariohaceclick sobreun enlace(link) a unapáginaweb,seenvíaunasolicitud al servidorWeb paralocalizar los datosnombradospor eseenlace. El servidorWebrecibeestasolicitudy suministralos datosquele hansidosolicitados(unapáginaHTML, un scriptinteractivo, unapáginawebgeneradadinámicamentedesdeun basededatos,...),o biendevuelve unmensajedeerror. Apache,el servidorWebsuministradoconesteproducto,eselmásusadoenInternetactualmente(vayaa http://www.netcraft.net/survey/).

El servidorWeb Apacheestádiseñadode forma modular;consisteen muchasporcionesde códigoquehacenreferenciaa diferentesaspectoso funcionalidadesdel servidorWeb. Estamodularidadesintencionada,con lo cual,cadadesarrolladorpuedeescribirsupropiaporcióndecódigoparacubrirunanecesidaden particular. Su código, llamadomódulo,puedeser integradoen el servidorWebApacheconrelativa facilidad.

El módulomod_sslesunmódulodeseguridadparael ServidorWebApache. El módulomod_sslusalasherramientassuministradasporel OpenSSLProjectparaañadirunacaracterísticamuyimportanteal Apache —, la posibilidadde encriptarlas comunicaciones.A diferenciade las comunicacionesentreun navegadory un servidorweb usandoHTTP "normal", en la queseenvía el texto íntegro,pudiendoserinterceptadoy leído a lo largo del caminoentreservidory navegador.

El OpenSSLProjectincluyeunkit deherramientasqueimplementalosprotocolosSSL(SecureSoc-kets Layer) y TLS (TransportLayer Security),así como una librería de codificación de propósitogeneral.El protocoloSSLseusaactualmenteparala transmisióndedatossegurasobreInternet;ElprotocoloTLS esunestándardeInternetparacomunicacionesprivadas(seguras)y fiablesatravésdeInternet.LasherramientasOpenSSLsonusadasporel módulomod_sslparaaportarseguridadenlascomunicacionesWeb.

Page 166: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

166 Capítulo 13:Uso de Apache como servidor Web seguro

Estecapítulonoesunadocumentacióncompletani exclusivadecadaunodeestosprogramas.Cuandoseaposible,estaguía le citará los lugaresapropiadosdondepodráencontrarinformaciónquetratesobretemasparticularesconmásdetalle.

Estecapítulole mostrarácómoinstalarlos programasincluidos,asícomolos pasosnecesariosparagenerarunaclave privaday unapeticióncertificada. Tambiénsele enseñaránlos pasosadecuadosparagenerarsupropiocertificadofirmadoy comoinstalarun certificadoparausarloconel servidorWeb seguro.

13.2 Reconocimientosel secureWebserver incluye lo siguiente:

• Softwaredesarrolladopor el grupoApacheparausaren proyectodel servidorApacheHTTP (http://httpd.apache.org)

• El módulodeseguridadmod_ssl,desarrolladoporRalf S.Engelschall( http://www.modssl.org/)

• El kit deherramientasOpenSSL,desarolladopor Mark J.Cox,Ralf S.Engelschall,Dr. StephenHensony BenLaurie ( http://www.openssl.org/)

• Softwarebasadoen el proyectode servidorHTTP Apache-SSLdesarrolladopor Ben Laurie (http://www.apache-ssl.org/)

• Softwarebasadoenel softwaredeencriptaciónSSLeayescritopor Eric Youngy Tim Hudson.

RedHat agradeceestascontribucionesparala consecución deesteproducto.

13.3 Intr oducción a los paquetes relacionados conla seguridadParainstalarun servidorseguro,necesitaráinstalarcomomínimotrespaquetes:

apache

El paqueteapache contieneel demoniohttpd y utilidadesrelacionadas,ficherosdeconfigu-ración,iconos,módulosApache,páginasdemanualy otrosficherosusadosporel servidorWebApache.

mod_ssl

El paquetemod_ssl incluyeelmódulomod_ssl,queproporcionaunapotentecriptografíaparaelservidorWebApacheatravésdelosprotocolosSSL(SecureSocketsLayer)y TLS(TransportLayerSecurity).

openssl

Page 167: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 13.3:Introducción a los paquetes relacionados con la seguridad 167

El paqueteopenssl contieneel kit de herramientasOpenSSL.Estekit de herramientasim-plementalos protocolosSSLy TLS, del mismomodoqueincluyeunalibreríadecriptografíadepropósitogeneral.

Además,otrospaquetessoftwareincluidosconRedHat Linux puedenañadirfuncionesdeseguridad(sin serimprescindiblesparael correctofuncionamientodel servidor):

apache-devel

El paqueteapache-devel contienelos ficherosincluidosenApache,ficherosdecabecerayla utilidadAPXS.Losnecesitarási intentacargarmódulosextra,distintosdelossuministradosconesteproducto.Consultela Sección 14.3,Añadir módulosa suservidorparamásinforma-ción sobrecargademódulosensusecureWebserver usandola funciónDSOdeApache.

Si no tienela intencióndecargarotrosmódulosensusecureWebserver, nonecesitará instalarestepaquete.

apache-manual

El paqueteapache-manual contienela Guía deusuarioApache1.3delProyectoApacheenformatoHTML. Estemanualtambiénestádisponibleenel Web http://www.apache.org/docs/.

PaquetesOpenSSH

Los paquetesOpenSSHproporcionanun setdeherramientasdeconectividadderedesparare-gistrarsey ejecutarcomandosenunamáquinaremota. LasherramientasOpenSSHencriptantodoel tráfico (incluyendolascontraseñas),paraevitar el espionaje,secuestrodeconexionesyotrosataquesenlascomunicacionesentresuordenadory unamáquinaremota.

El paqueteopenssh incluyelos achivosdenúcleonecesariosparaambos,tantoel programacliente,comoel servidorOpenSSH.El paqueteopenssh tambiéncontienelientesOpenSSH:scp , un sustitutoseguro pararcp (parala copiade ficherosentremáquinas)y ftp (paralatransferenciadeficherosentremáquinas).

El paqueteopenssh-askpass soportala visualizacióndela ventanadediálogoenla quesele invita a introducirunaclaveduranteel usodelagenteOpenSSHconautentificaciónRSA.

El paqueteopenssh-askpass-gnome contieneunaventanadediálogoparael entornodeescritorioGNOME GUI quesepresentacuandoel OpenSSHle indica la introducción deunacontraseña.Si estáejecutandoGNOMEy estáusandoutilidadesOpenSSH,deberíainstalarestepaquete.

El paqueteopenssh-server contieneel demoniodela shelldeseguridadsshd y archivosrelacionados.El demoniodela shelldeseguridadesel lugardondeseacomodael OpenSSHydebeserinstaladoensuhostsi quierepermitir a los clientesSSHconectarsea suhost.

El paqueteopenssh-clients contienelos programasclientenecesariosparahacercone-xionesencriptadasa los servidoresSSH,un sustitutoseguro pararsh ;y slogin , asícomo

Page 168: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

168 Capítulo 13:Uso de Apache como servidor Web seguro

pararlogin (paraun login remoto)y telnet (paracomunicarcon otro hosta travésdelprotocoloTELNET).

ParaobtenermásinformaciónsobreOpenSSH,veael Capítulo 11,ProtocoloSSHy el sitio webOpenSSHen http://www.openssh.com.

openssl-devel

El paqueteopenssl-devel contienelas librerías estáticasy los ficherosnecesariosparacompilaraplicacionescon soporteparavariosalgoritmoscodificadoresy protocolos.Tendráqueinstalarestepaquetesólo si estáutilizandoaplicacionesqueincluyensoporteSSL — nonecesitará estepaqueteparausarSSL.

stunnel

El paquetestunnel suministrala wrapperSSLStunnel.Stunnelsoportala codificaciónSSLdeconexionesTCP, asípodrádarla capacidaddecodificar a demoniosqueno sonSSLy pro-tocolos(comoPOP, IMAP, LDAP) sin tenerquecambiarel códigodelos demonios.

La Tabla13–1, Paquetesseguros visualizala localizaciónde los paquetesde servidorseguro y lospaquetesadicionalesrelacionadosconla seguridaddentrodelos gruposdepaquetesproporcionadospor RedHat Linux. Estatablatambiénle dicesi cadapaqueteesopcionalo no parala instalacióndeun servidorWebseguro.

Tabla 13–1 Paquetes segur os

Nombre del paquete Localizada en grupo ¿Opcional?

apache Entornodel sistema/Demonios no

mod_ssl Entornodel sistema/Demonios no

openssl Entornodel sistema/Librerías no

apache-devel Desarrollo/Librerías sí

apache-manual Documentación sí

openssh Aplicaciones/Internet sí

openssh-askpass Aplicaciones/Internet sí

openssh-askpass-gnome

Aplicaciones/Internet sí

openssh-clients Aplicaciones/Internet sí

openssh-server Entornodel sistema/Demonios sí

Page 169: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 13.5:Instalación de un servidor seguro con Red Hat Linux 169

Nombre del paquete Localizada en grupo ¿Opcional?

openssl-devel Desarrollo/Librerías sí

stunnel Aplicaciones/Internet sí

13.4 ¿Cómo instalar el servidor segur o?Puedeinstalarel secureWebserver delos siguientesmodos:

• Duranteunainstalaciónnueva deRedHat Linux — Ya queel secureWebserver vieneincluidocon el sistemaoperativo RedHat Linux, el métodomásfácil durantela instalación de RedHatLinux. Si estáa puntodecompletarla instalacióndeRedHat Linux, deberíainstalarel servidorsegurodeestamanera.Veala Sección 13.5,Instalacióndeunservidorseguro conRedHat Linuxparaulterior informaciónsobreestemétodo.

• Al actualizarRedHatLinuxmedianteelusodelprogramadeinstalación— siyatieneunaversiónprevia deRedHat Linux ensusistemalo estáactualizandoa RedHat Linux 7.1,puedeinstalarlospaquetesdeservidorseguroduranteel procesodeactualización. Veala Sección 13.6,Actuali-zacióndesdeunaversiónprevia deRedHat Linuxparaulterior informaciónsobreestemétodo.

• Instalar el servidorseguro despuésde la instalación de RedHat Linux 7.1 — Si ha instaladopreviamenteRedHatLinux 7.1y untiempodespuésdecidequequiereproveersedelasfuncionesdel servidorseguro, podrá usarel RPM, Gnome-RPM o Kpackage parainstalarlos paquetesdel servidorseguro desdeun CD de RedHat Linux. Consultela Sección 13.7, Instalacióndelservidorseguro despuésdela instalacióndeRedHat Linuxparainstruccionessobrecomoinstalarel servidorsegurodespuésdehaberinstaladoRedHat Linux.

Actualización de Apac heCuandoinstaleelsecureWebserver, si ustedestáactualizandodesdeunaver-sióndeApache(incluyendocualquierversiónprevia desecureWebserver),necesitaráconocerciertosprocedimientosrelativosal procesodeactualiza-ción. Veala Sección13.8,ActualizacióndesdeunaversiónpreviadeApacheantesdecomenzarel procesodeinstalación,si estáactualizandoApache.

13.5 Instalación de un servidor segur o con Red HatLin uxSi estáinstalandoRedHatLinux y secureWebserveral mismotiemposigalasinstruccionespropor-cionaddasporel manualdeinstalacióndesuarquitectura.Si quiereutilizar susistemaRedHatLinux

Page 170: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

170 Capítulo 13:Uso de Apache como servidor Web seguro

comoservidorseguro,deberárealizarunainstalacióndetipo servidoro personalizado.Losdiferentestiposdeinstalaciónentrelos quepuedeescogersonlos quesiguena continuación:

• Si elige unainstalaciónde tipo servidor, los paquetesde servidorseguro (apache , mod_ssly openssl ) seránseleccionadosautomáticamente.Los paquetesstunnel y openssh , queotorganfuncionesdeseguridad,tambiénseránseleccionados.

• Si elige unainstalaciónde tipo estaciónde trabajo,los paquetesde servidorseguro y paquetesrelativosaseguridadnoseránseleccionadosparala instalaciónautomáticamente,peropodráelegirinstalarlosduranteel procesodepersonalización dela seleccióndepaquetes.

• Si elige unainstalaciónde clasepersonalizada,unavez quehayarevisadoquépaquetesseráninstalados,tendráqueseleccionarlospaquetesdeservidorseguroy lospaquetesdeseguridadquedesea.

Unavezquehayaelegidountipo edinstalación,sigalasinstruccionesdeinstalaciónparaconfiguraryparticionarsusistema.Cuandolleguealaseccióndeseleccióndegruposdepaquetes,o componentes,seleccioneel grupode paquetesServidor Web. El Servidor Web incluye los paquetesapache ymod_ssl quedebeinstalarparainiciar el servidorseguro. Ya quemod_ssl esdependientedelpaqueteopenssl , openssl deberáelegirseparala instalación.

Si deseainstalarcualquierpaqueteadicionalrelativo a seguridaddescritoen la Sección 13.3, Intro-duccióna lospaquetesrelacionadosconla seguridad, deberáidentificaresospaquetesconprogramade instalación.Parahacerlo,elija Selección individual de paquetes en la mismapantallaqueSe-lección de paquetes en grupo .

Seleccionelos paquetesrelativosa seguridadquequierainstalarsegún las instruccionesdadasenelmanualdeinstalación.Paraayudarleaencontrarlossesuministraunatablaconsuslocalizacionesenla Tabla13–1, Paquetesseguros.

Despuésdeasegurarsedequelos paquetesquenecesitasonseleccionados,continúeconel procesodeinstalación.CuandohayaacabadodeinstalarRedHat Linux y el servidorseguro,veala Sección13.9,Introduccióna certificadosy seguridad.

13.6 Actualización desde una versión previa de RedHat Lin uxSi ya estáejecutandounaversiónprevia de RedHat Linux en su sistema,puedeescogeractualizarRedHatLinux 7.1(enlugarderealizarunainstalacióncompleta).Si decideactualizarlo,debeescogerActualización en vez de escogerun tipo de instalación.Sigalas instruccionessobrecomoactuali-zarsusistemaproporcionadaspor el manualapropiadoparasuarquitectura.Durantela instalación,necesitaráasegurarsede quelos paquetesde servidorseguro sonseleccionadospor el programadeinstalación.

Page 171: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 13.6:Actualización desde una versión previa de Red Hat Linux 171

CuandoejecuteunaactualizacióndesusistemaRedHatLinux, el programadeinstalacióncompruebalos paquetesqueya estáninstalados.Éstos,vendránactualizadosautomáticamenteen lasversionesincluídasenRedHatLinux 7.1duranteelprocesodeactualización.Noobstante,si notieneunpaqueteenparticularinstalado,el programadeinstalaciónnoinstalarálanuevaversióndelpaquete— amenosquepersonalicesuactualización.

Si estáactualizandodesdeRedHat Linux 7.0 o posteriory tienelos paquetesdesecureWebserverinstalados,el procesode actualizaciónactualizará los paquetesde servidorseguro. Si estáactuali-zandodesdeRedHat Linux 7.0o posterior, perono tieneinstaladoslos paquetessecureWebserver,necesitaráseleccionarlos paquetesapache , mod_ssl y openssl duranteel procesodepersona-lizacióndepaquetes.Paraindicacionessobrela localizacióndelos paquetesquenecesitará escoger,consultela Sección 13.6.1,Personalizarsuactualización para instalarel servidorseguro.

Si estáactualizandodesdela versiónUS/CanadadeRedHat Linux Professional,necesitarápersona-lizar suactualizacióny elegir lospaquetesdeseguridadparael servidorainstalar. Puedequeyatengainstaladoapache , peromod_ssl y openssl no seráninstalados(ya queno estánincluidosenversionesdeRedHatLinux anterioresaRedHatLinux 7.1). Necesitarápersonalizarla actualizaciónparaelegir al menosmod_ssl y openssl . Veala Sección 13.6.1,Personalizarsu actualizaciónpara instalar el servidorseguro paraconsultarinstruccionessobrela localizaciónde paquetesquenecesitaelegir.

Si estáactualizandodesdeunaversióninternacionaldeRedHatLinux Professionaly tenía lospaque-tesapache , mod_ssl y openssl instalados,el programadeinstalaciónseleccionaráy actualizaráestosprogramasautomáticamente.

Si seencuentraactualizandodesdeunaversióndeRedHat Linux Professional,perono tenía instala-doslos paquetesapache , mod_ssl o openssl , necesitarápersonalizarsuactualizacióny elegirinstalarestospaquetes.Veala Sección 13.6.1,Personalizarsuactualizaciónpara instalarel servidorseguro paraconsultarinstruccionessobrela localizacióndepaquetesquenecesitaelegir.

13.6.1 Personalizar su actualización para instalar el servidorsegur oSi necesitapersonalizarel procesodeactualización,sigalas instruccionesdeactualización conteni-dasenla Official RedHat Linux InstallationGuide;, básicamente,elija Actualización comoTipo deInstalación y seleccionedespuésPersonalizaci ón de paquetes para que sean actualizados . Nece-sitaráseleccionarlospaquetesaactualizar, comosedescribeenOfficial RedHatLinux x86InstallationGuide. Pararecibir ayudaensuselección, la Tabla13–1, Paquetesseguros le aportala localizacióndecadapaqueteenrelaciónconel servidorseguroy si estepaqueteesopcional.

Cuandohayaacabado,si tambiénestáactualizandocualquierversióndeApache,veala Sección 13.8,Actualizacióndesdeuna versión previa de Apache. Si no estáactualizandoApache,continúeen laSección 13.9,Introduccióna certificadosy seguridad.

Page 172: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

172 Capítulo 13:Uso de Apache como servidor Web seguro

13.7 Instalación del servidor segur o después de lainstalación de Red Hat Lin uxSi ha instaladoRedHat Linux 7.1 sin los paquetesrelacionadoscon la seguridaddel servidory untiempodespuésdecidequequiereinstalarun servidorseguro,lo podráhacer. La formamásfácil dellevarlo a caboesusarRPM, Gnome-RPM, o Kpackage parainstalarlos paquetesRPM incluidosenel CD deRedHat Linux.

13.7.1 Detener procesos del servidor WebAntesdeiniciar esteproceso,si estáfuncionandoalgúnservidorWebsobresusistema,deberádetenerelprocesoel servidorantesdeinstalarsecureWebserver. Si esunservidorWebApache elqueseestáejecutando,detengael procesodelservidorprocediendoconunoo ambosdelossiguientescomandos:

/etc/rc.d/init.d/httpsd stop/etc/rc.d/init.d/httpd stop

13.7.2 Uso de Gnome-RPM o Kpac kageSiestáejecutandoGNOMEoKDE, podráusarunprogramagráficoGUI comoGnome-RPM oKpac-kage parainstalarlos paquetesdeservidorseguro.

Encontrarámásinformaciónsobreel usodeGnome-RPM enel Gnome-RPM y en la Official RedHat LinuxGettingStartedGuide. Lasinstruccionesparael usodeKpackage seincluyenenla páginawebdelKpackage Handbookqueencontraráen http://www.general.uwa.edu.au/u/toivo/kpackage/.

Unavezquehayainstaladolospaquetesnecesarios,el siguientepasoesel decrearunaclavey obtenerun certificado.ContinÚE leyendola Sección 13.9,Introduccióna certificadosy seguridad.

13.7.3 Uso de RPMLospaquetessecureWebservervienenproporcionadosenformatoRPMformat,demaneraquepuedeinstalarlospaquetesmedianteelusodeRPM. VealaOfficial RedHat LinuxCustomizationGuideparamásinformaciónsobrela aplicaciónRPM. Consultela Tabla13–1,Paquetessegurossi noestásegurodequépaquetesdeseainstalar.

Despuésde haberinstaladolos paquetesde servidorseguro,si estáacutualizandocualquierversióndeApache,consultela Sección 13.8,Actualizacióndesdeunaversiónprevia deApache. Si no estáactualizandoApache,continúeconla Sección 13.9,Introduccióna certificadosy seguridad.

Page 173: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 13.8:Actualización desde una versión previa de Apache 173

13.8 Actualización desde una versión previa deApac heDurantela instalacióndepaquetesdeservidorseguro,si estáactualizandoApache,necesitarátenerencuentadoscosas:

• En la versión de Apacheincluida en Red Hat Linux 7.1, el comandoDocumentRoot es/var/www/html .

• Si ha personalizadoel archivo de configuraciónde Apache(httpd.conf ), querrásaberquésucederáconsuspersonalizacionesduranteel procesodeactualización.

13.8.1 ¿Dónde está el DocumentRoot?Básicamente,el DocumentRoot esel directoriodesusistemaquemantienela mayoríadelaspági-naswebatendidasporsuservidorWebApache. El DocumentRoot esconvertidoporunadirectivadeconfiguraciónenficherodeconfiguracióndeApache, httpd.conf . Sinoestáfamiliarizadoconla directiva deconfiguracióndeDocumentRoot , consultela Sección 14.2.28,DocumentRoot ,paraunaexplicación másdetallada.

En versionesprevias a Red Hat Linux 7.0, el servidorde Apacheproporcionadopor Red Hat Li-nux, usaba/home/httpd/html comoDocumentRoot . En la versión por defecto(sin-seguri-dad)del ficherodeconfiguracióndeApache,el DocumentRoot es/usr/local/apache/ht-docs . Tambiénesposiblequeusted(o alguien,previamente)usaraun DocumentRoot comple-tamentediferente.El puntoimportantees— enRedHat Linux 7.1 el DocumentRoot seráahora/var/www/html .

¿Estoesdesuincumbencia?Porsupuesto,si usóunaversiónprevia deApacheparaatenderpáginasweb. Cualesquierapáginaswebqueseanservidaspreviamentedesdeun DocumentRoot diferente,noseránencontradas(o servidas)porApachelanzadoconRedHatLinux 7.1ensuconfiguraciónpordefecto.Necesitaráseguir unodelos siguientespasos:

Mueva todos los archivos del antiguo DocumentRoot (/home/httpd/html , /usr/lo-cal/apache/htdocs , o dondeseencuentre)haciael nuevo (/var/www/html ).

o

modifiqueel ficherodeconfiguracióndeApachey cambietodaslasreferenciasal DocumentRootquellevana la rutadel directorioanterior.

La soluciónqueelija dependerádela configuracióndesusistema.Generalmente,si ustedhamontado/home ensusistema,noquerrátenerel DocumentRoot en/home . Porotraparte,si nodisponedemuchoespacioen /var , probablementetampocoquerráel DocumentRoot en /var . Usted,o eladministradordesistema,tendráquedecidircualserálamejorsoluciónbasándoseenla configuracióndesusistemay lasnecesidadesdesuservidorWeb. LaconfiguraciónpordefectodesecureWebserver

Page 174: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

174 Capítulo 13:Uso de Apache como servidor Web seguro

intentarádireccionarala mayoríadelosWebmasters;desafortunadamente,nopodremosconfigurarloparacadasituación.

13.8.2 ¿Qué le ocurrir á a mi antiguo fic hero?SiustedtieneotraversióndeApacheinstaladaconsusficherosdeconfiguraciónpersonalizadosporus-tedmismo,losficherosdeconfiguraciónseránsalvadosensusdirectoriosconla extensiónde.rpm-save durantela instalaciónde Apache.Si disponede otraversión de Apacheinstaladaperoustednuncaalterólosficherosdeconfiguración,estosseránsobreescritosdurantela instalacióndeestepro-ducto.

DespuésdeinstalarApache,podrácortary pegarsusconfiguracionespersonalizadasdesdesuantiguoficherodeconfiguracióndeApache(httpd.conf.rpmsave ) ensunuevo ficherodeconfiguraciónhttpd.conf parala seguridaddesuservidor. Observequesi vaautilizar la herramienta de con-figuración de Apache, no deberíamodificar httpd.conf a mano. Consultela Official RedHatLinuxCustomizationGuideparamásinformaciónsobrela herramienta de configuración Apache.

13.9 Intr oducción a cer tificados y seguridadSu secureWeb server le proporcionaseguridadmedianteel usode unacombinación del protocoloSSL(SecureSocketsLayer)y (enla mayoríadecasos)un certificadodigital deunaCA (CertificateAuthority). SSlgestionalascomunicacionesencriptadasy la autentificaciónmutuaentrenavegadoresy susecureWebserver. El certificadodigital aprovadopor la CA proporcionaautentificaciónparasusecureWebserver (la CA posponela reputacióna la certificacióndela identidaddesuorganización).Cuandosu navegadorseestécomunicandomedianteel usode la encriptaciónSSL,veráel prefijohttps://al inicio del Uniform ResourceLocator(URL) enla barradenavegación.

La encriptación dependedel usode lasclaves(pienseenellascomoanillosdecodificador/descodi-ficadorsecretoen formatodata). En la criptografíaconvencionalo simétrica,ambosfinalesde latransacción tienenla mismaclave,queusanparadescodificarcadaunadelasotrastransmisiones.Enla criptografíapúblicao asimétrica,coexistendosclaves:unaclavepúblicay unaclaveprivada.Unapersonao unaorganizaciónmantienesuclaveprivadaensecretoy publicasuclavepública.Losdatoscodificadosconla clave públicasólopuedenserdescodificadosconunaclave privada;mientrasquelos datoscodificadosconla claveprivadapuedensólo serdescodificadosconla clavepública.

Paraconfigurarsuservidorseguro,utilizarácriptografía públicaparacrearunaclave parapúblicayprivada.En la mayoríadelos casos,enviarásupeticióndecertificado(incluyendosuclave pública),la pruebadela identidaddela compañíay el pagoaCA. La CA verificarála peticióndecertificadoysuidentidady le devolveráun certificadoa susecureWebserver.

Un servidorsegurousaun certificadoparaidentificarseconlos navegadoresdeWeb. Puedegenerarsupropiocertificado(conocidocomocertificado"auto-firmado")o puedeobtenerun certificadode

Page 175: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 13.10:Uso de claves pre-existentes y certificados 175

unaAutoridaddeCertificadoo CA. Un certificadodeunaCA conbuenareputaciónle garantizaqueun sitio webestáasociadoconunacompañíaenparticularo unaorganización.

Alternativamente,puedecrearsu propio certificado "auto-firmado". Observe que los certificadosauto-firmadosnosedeberíanusarenla mayoríadeentornosdeproducción.Loscertificadosauto-fir-madosnoseránautomáticamenteaceptadosporelnavegadordelusuario— elnavegadorpreguntaráalusuariosi quiereaceptarel certificadoy crearunaconexión segura.Consultela Sección 13.11,Tiposdecertificadosparamásinformaciónsobrelasdiferenciasentrecertificadosauto-firmadosy firmadospor CA.

Unavezquetengaun certificadoauto-firmadoo un certificadofirmadopor la CA quehayaelegido,necesitaráinstalarloensusecureWebserver.

13.10 Uso de claves pre-existentes y cer tificadosSi ya tieneunaclave y un certificadoexistente(por ejemplo,si estáinstalandoel secureWebserverparareemplazarun productodel servidorde Web segurode otracompañía),podrá utilizar su claveexistentey certificarlaconel secureWebserver. En lasdossituacionessiguientes,no podráusarsuclave y el certificadoexistente:

• Si está cambiandosudirecciónIP o nombre dedominio— No puedeusarsuclave y certificadoantiguos.Los certificadossonparaunadirecciónIP y nombrededominioparenparticular. Ne-cesitaráobtenerun certificadonuevo si estácambiandosudirección IP o nombrededominio.

• Si tieneun certificadodeVeriSigny estácambiandoel software del servidor— VeriSignesunaCA ampliamenteusada.Si ya tieneun certificadoVeriSignqueutiliza paraotro propósito,estaráconsiderandola posibilidaddeutilizar sucertificadoVeriSignexistenteconsunuevo secureWebserver. No obstante,no sele permitirá, porqueVeriSignemitecertificadosparaun softwaredeservidorparticulary unacombinacióndedirecciónIP/nombrededominio.

Si cambiaalgunode esoparámetros(por ejemplo,si usapreviamenteotro productodeservidorWeb seguroy enestemomentodeseautilizar el secureWebserver), el certificadoVeriSignqueobtuvo parausarloconla configuraciónanteriorno funcionaráconla nuevaconfiguración. Nece-sitaráobtenerun certificadonuevo.

Si tieneunaclave y un certificadoya existente,no tendrá quegenerarunaclave nueva y obteneruncertificadonuevo. Sin embargo,necesitará cambiary renombrarlos archivosquecontienensuclavey certificado.

Trasladeel archivo declave existentea:

/etc/httpd/conf/ssl.key/server.key

Trasladeel archivo decertificadoa:

/etc/httpd/conf/ssl.crt/server.crt

Page 176: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

176 Capítulo 13:Uso de Apache como servidor Web seguro

Trashabertrasladadosuclavey certificado,consultela Sección 13.15,Pruebadesucertificado.

Si estáactualizandodesdelas versiones1.0 y 2.0 del servidorWeb seguro de Red Hat, Su clave(httpsd.key ) y certificado(httpsd.crt ) antiguosestaránubicadosen/etc/httpd/conf/ .Necesitarátrasladary renombrarsuclave y sucertificado,paraqueel secureWebserver puedauti-lizarlos. Utilice los doscomandossiguientesparatrasladary renombrarsusarchivos de clave y decertificado:

mv /etc/httpd/conf/httpsd.key /etc/httpd/conf/ssl.key/server.keymv /etc/httpd/conf/httpsd.crt /etc/httpd/conf/ssl.crt/server.crt

Inicie susecureWeb server comosedescribeen la Sección 14.1,Arranquey apagadodel httpd.No deberíanecesitarobtenerun nuevo certificado,si estáactualizandodesdeunaversión anterioralsecureWeb server.

13.11 Tipos de cer tificadosSi hainstaladosusecureWebserver medianteel usodel programadeinstalacióndeRedHat Linux,unaclave deaccesoy un certificadodepruebasongeneradosy ubicadosdendirectoriosapropiados.Sin embargo, antesde queempiecea usarsu servidorseguro, necesitará generarsu propiaclave yobtenerun certificadoqueidentifiquesuservidorcorrectamente.

Necesitaunaclave y un certificadoparaejecutarsusecureWebserver — lo quesignifica quepuedegenerarun certificadoauto-firmadoo comprarun certificadofirmadopor CA desdeunaCA. ¿Quédiferenciasexistenentreambos?

Un certificadofirmadopor CA le proporcionaa suservidordoscapacidadesimportantes:

• Losnavegadoresreconoceran(habitualmente)deformaautomáticael certificadoy permitiránqueserealiceunaconexión segura,sin avisaral usuario.

• CuandounaCA emiteun certificadofirmado,segarantizala identidaddela organizaciónqueleproporcionalaspáginasWebal navegador.

Si el públicoenmasapuedeaccederasuservidorseguro,susecureWebservernecesitauncertificadofirmadoporunaCA, paraquela gentequevisitasusitio web,puedaconfiar enqueel sitio perteneceala organizaciónquediceposeerlo.Antesdefirmaruncertificado,unaCA verificaquela organizaciónquepideel certificadoes,dehecho,la quedicenser.

La mayoríadenavegadoresWebquesoportanSSLtienenunalistadeCAscuyoscertificadosacepta-ránautomáticamente.Si unnavegadorencuentrauncertificadocuyaCA deautorizaciónnoestáenlalista,el navegadorle pediráal usuarioqueescojasi aceptao no la conexión.

Puedegenerarun certificadoauto-firmadoparasu secureWeb server, perosepaqueun certificadoauto-firmadono le proporcionarála mismafuncionalidadqueuncertificadofirmadoporunaCA. Uncertificadoauto-firmadono seráreconocidoautomáticamentereconocidopor los navegadoresdelos

Page 177: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 13.12:Generar una clave 177

usuariosy noproporcionaningunagarantíareferenteala identidaddelaorganizaciónqueproporcionael sitio. Un certificadofirmadoporunaCA proveeaunservidorsegurodeambascapacidades.Si uti-liza suservidorseguroenunentornodeproducción,probablementenecesitaráuncertificadofirmadopor unaCA.

El procesodeobtención deun certificadodesdeunaCA esbastantefácil. A continuaciónsigueunavistapreliminar:

1. Creacióndeun pardeclavespúblicasy privadasencriptadas.

2. Creacióndeunapeticióndecertifif icadobasadoenunaclavepública.La peticióndecertificadocontieneinformación sobresuservidory la compañíaquelo albergue.

3. Envío deunapeticióndecertificadoa unaCA, junto a los documentosquedemuestransuiden-tidad. No le podemosdecir quéautoridadde certificadoescoger. Su elecciónsebasaráen susexperienciaspasadas,o en las experienciasde susamigosy colegas,o simplementeen factoreseconómicos.

Paraver unalista deCAs,pulseel botónSeguridad ensubarradeherramientasNavigator o enel iconodecandadoen la parteizquierdade abajode la pantalla.A continuación hagaclick enSeñaladores paraverunalistadeseñaladoresdecertificadodesdeloscualessunavegadoracep-tarácertificados.Tambiénpuedebuscarel WebparalasCAs. UnavezquesehayadecididoporunCA, necesitaráseguir conlasinstruccionesproporcionadassobrecómoobteneruncertificado.

4. Cuandola CA compruebaqueustedesquiendiceser, sele enviaráun certificadodigital.

5. InstaleestecertificaddoensuservidorWeby empiecea realizartransaccionesseguras.

Si obtieneun certificadode unaCA o generasu propio certificadoauto-firmado,el primer pasoesgenerarunaclave. Consultela Sección 13.12,Generar unaclaveparamásinstruccionessobrecómogenerarunaclave.

13.12 Generar una claveEn primer lugar, tecleecd enel directorio/etc/httpd/conf . Sustituyala clave y el certificadofalsosquesehangeneradodurantela instalaciónconlos siguientescomandos:

rm ssl.key/server.keyrm ssl.crt/server.crt

A continuación,necesitacrearsupropiaclave deacceso.Tecleeel siguientecomando:

make genkey

Susistemavisualizaráun mensajesimilar al siguiente:

umask 77 ; \/usr/bin/openssl genrsa -des3 1024 > /etc/httpd/conf/ssl.key/server.key

Page 178: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

178 Capítulo 13:Uso de Apache como servidor Web seguro

Generating RSA private key, 1024 bit long modulus.......++++++................................................................++++ ++e is 65537 (0x10001)Enter PEM pass phrase:

Introduzcaunacontraseña.Paramásseguridad,su contraseñadeberíaconteneral menosochoca-racteres,incluyanúmerosy/o puntuación,no puedeserunapalabradediccionario.Recuerdequesucontraseñaessensiblea mayúsculasy minúsculas.

NotaNecesitarárecordareintroducirestacontraseñacadavezqueinicie sesecureWebserver, demaneraqueno la olvide.

Sele pediráre-escribirla contraseña,paraverificarqueescorrecta.Unavezquehayala hayaescritocorrectamente,secrearáun archivo llamadoserver.key quecontienesuclave.

Si no deseaintroducir la contraseña cadavez que inicie su secureWeb server, necesitaráusarlossiguientesdoscomandosenlugardecrear genkey . Ambosdeberíanescribirseenla mismalínea.

Utilice el siguientecomando:

/usr/bin/openssl genrsa 1024 > /etc/httpd/conf/ssl.key/server.key

paracrearsuclave. Utilice ahoraesteotro comando:

chmod go-rwx /etc/httpd/conf/ssl.key/server.key

paraasegurarasequelos permisosestánconfiguradoscorrectamenteensuclave.

Despuésdehaberusadoloscomandosprecedentesparacrearsuclave,nonecesitaráusarunacontra-señaparainiciar susecureWebserver.

ATENCION

Deshabilitarla característicade la contraseñadesuservidorWebseguroesun resgoparala seguridad.NO le recomendamosquelo haga.

Los problemasrelacionadosconel hechodeno usarunacontraseñasedebenal mantenimientodelaseguridaddelamáquinahost.Porejemplo,sialguiencomprometelaseguridadhabitualdeUNIX enlamáquinahost,esapersonapodríaobtenersuclaveprivada(el contenidodesuarchivoserver.key ).La clave podría serusadaparaservirpáginasWebquepareceránserdesuservidorWeb.

Page 179: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 13.13:Generar una petición de certificado para enviar a una CA 179

Si lasprácticasdeseguridadUNIX semantienenrigurosamenteenel ordenadorhost(todoslos par-chesy actualizacionesdel sistemaoperativo soninstaladostanprontocomoestándisponibles,no seejecutanserviciosinnecesarioso deriesgo,etc),la contraseñadesuthesecureWebserver le pareceráinnecesaria.No obstante,ya quesusecureWeb server no deberíanecesitarserre-arrancadomuy amenudo,la seguridadextra proporcionadapor el hechode tenerqueintroducir la contraseñaesunesfuerzoquevale la penaenla mayoríade los casos.

El archivo server.key deberíaserposeídopor el usuarioroot ensusistemay no deberíaserac-cesiblea ningúnotro usuario.Hagaunacopiadeseguridaddeestearchivo y guardedichacopiaenun lugarseguro. Necesitaunacopiadeseguridadpor si pierdealgunavezel archivo server.keytrasusarloparacrearsupeticiónde certificado,sucertificadono funcionarámásy la CA no podráayudarle.Suúnicaopción serápedir(y pagar)un nuevo certificado.

Si vaacompraraunaCA, vayaa la Sección 13.13,Generar unapeticióndecertificadopara enviar aunaCA. Si hageneradosupropiocertificadoauto-firmado,vayaa la Sección 13.14,Creacióndeuncertificadoauto-firmado.

13.13 Generar una petici ón de cer tificado para enviara una CAUnavezquehayacreadounaclave,el siguientepasoesel degenerarunapeticióndecertificadoquenecesitaráenviar a la CA quehayaescogido.Introduzcael siguientecomando:

make certreq

Susistemavisualizarála siguientesaliday le pedirásucontraseña(a menosquehayadeshabilitadola opción decontraseña)

umask 77 ; \/usr/bin/openssl req -new -key /etc/httpd/conf/ssl.key/server.key-out /etc/httpd/conf/ssl.csr/server.csrUsing configuration from /usr/share/ssl/openssl.cnfEnter PEM pass phrase:

Introduzcala contraseñaquehaescogidoal generarla clave. Susistemavisualizaráalgunasinstruc-cionesy le pediráunaseriederespuestas.Susentradasseincorporarána la peticióndecertificado.La visualización,conrepuestasdeejemplo,separecerána esto:

You are about to be asked to enter information that will be incorporatedinto your certificate request.What you are about to enter is what is called a Distinguished Name or aDN.There are quite a few fields but you can leave some blankFor some fields there will be a default value,

Page 180: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

180 Capítulo 13:Uso de Apache como servidor Web seguro

If you enter ’.’, the field will be left blank.-----Country Name (2 letter code) [AU]: USState or Province Name (full name) [Some-State]: North CarolinaLocality Name (eg, city) []: DurhamOrganization Name (eg, company) [Internet Widgits]: Test CompanyOrganizational Unit Name (eg, section) []: TestingCommon Name (your name or server ’s hostname) []: test.mydomain.comEmail Address []: [email protected] enter the following ’extra’ attributesto be sent with your certificate requestA challenge password []:An optional company name []:

Lasrespuestaspredeterminadasaparecenentreparéntesis[] inmediatamentedespuésdecadapeti-cióndeentrada.Porejemplo,laprimerainformaciónrequeridaeselnombredelpaísdondeseutilizaráel certificado,queaparecerádela siguientemanera:

Country Name (2 letter code) [AU]:

La entradapordefecto,entreparéntesis,esAU. Paraaceptarla,pulse[Intro], o compileel códigodesupaíscondosletras.

Deberá teclearen el restode entradasel (Estado o provincia , el Nombre de la loca-lidad , el Nombre de la organizaci ón , el Nombre del la unidad de orgniza-ci ón , el Nombre común, y la dirección de email ). Conestobastaría,peronecesitaseguirunaspautas:

• No abrevie la localidado el estado.Escríbalosenteros(porejemplo,St. LouisdeberíaserescritocomoSaintLouis).

• Si envia esteCRSala CA, asegúresedeproporcionarla informacióncorrectaparatodosloscam-pos,peroespecialmenteenel Nombre de organización y el Nombre común. LasCAspruebanla informaciónproporcionadaenel CSRparadeterminarsi suorganizaciónsehaceres-ponsabledelo queustedhaescritocomoNombre común. CAs rechazalosCSRsqueincluyeninformaciónquepercibencomoincorrecta.

• Parael Nombre común, asegúresedequeescribeel nombrereal desusecureWebserver (unnombreDNS válido) y ningúnaliasquepuedatenerel servidor.

• La dirección de email deberíaserla dirección deemailde la webmastero del adminis-tradordel sistema.

• Evite caracteresespecialescomo@, #, &, !, etc. AlgunasCAs rechazaránunapetición decerti-ficadoquecontengaun carácterespecial.Si el nombredesucompañíaincluyeunae comercial,deletréelacomo"y", en lugarde"&".

Page 181: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 13.14:Creación de un certificado auto-firmado 181

• No utilice ningunodelosdatosextra(Una contraseña por desaf ío y Un nombre decompañía opcional ). Paracontinuarsin introducirestoscampos,pulse[Intro] paraaceptaramboscamposenblancopor defecto.

Cuandohayafinalizadode introducir su información, secrearáun archivo llamadoserver.csr .Estearchivo essupeticióndecertificado,preparadaparaserenviadaa suCA.

Cuandosehayadecididopor unaCA, sigalasinstruccionesproporcionadasenel sitio web. Éstasledicencómoenviar supeticióndecertificadoy cualquierotradocumentaciónquerequieran, asícomoel pago.

Despuésde haber cumplido con todos los requisitos, le enviarán un certificado (habitual-mente vía email). Guarde (o haga copiar y pegar) el certificado que le han enviado como/etc/httpd/conf/ssl.crt/server.crt .

13.14 Creación de un cer tificado auto-firmadoPuedecrearsupropiocertificadoauto-firmado. Observe queun certificadoauto-firmadono le pro-porcionarálasgarantíasdeseguridadquele proporcionauncertificadofirmadoporunaCA. Consultela Sección 13.11,Tiposdecertificadosparamásinformaciónsobrecertificados.

Si deseacrearsu propio certificadoauto-firmado, necesitarácrearunaclave de accesousandolasinstruccionesproporcionadasenla Sección 13.12,Generar unaclave. Unavezquetengaunaclave,utilice el siguientecomando:

make testcert

Verá lo siguientey sele pedirásucontraseña(amenosquegenereunaclavesin unacontraseña):

umask 77 ; \/usr/bin/openssl req -new -key /etc/httpd/conf/ssl.key/server.key-x509 -days 365 -out /etc/httpd/conf/ssl.crt/server.crtUso de la configuración desde /usr/share/ssl/openssl.cnfIntroduzca la frase del pase PEM:

Despuésdeintroducirsucontraseña,sele pedirámásinformación.La informaciónserádel tipo delaqueencontraráa continuación(deberáproporcionarla información correctadesuorganización y desuhost):

You are about to be asked to enter information that will be incorporatedinto your certificate request.What you are about to enter is what is called a Distinguished Name or aDN.There are quite a few fields but you can leave some blankFor some fields there will be a default value,If you enter ’.’, the field will be left blank.

Page 182: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

182 Capítulo 13:Uso de Apache como servidor Web seguro

-----Country Name (2 letter code) [AU]: USState or Province Name (full name) [Some-State]: North CarolinaLocality Name (eg, city) []: DurhamOrganization Name (eg, company) [Internet Widgits]: Test CompanyOrganizational Unit Name (eg, section) []: TestingCommon Name (your name or server ’s hostname) []: test.mydomain.comEmail Address []: [email protected] enter the following ’extra’ attributesto be sent with your certificate requestA challenge password []:An optional company name []:

Después de haber proporcionado la información correcta, será creado y ubicado en/etc/httpd/conf/ssl.crt/server.crt un certificado auto-firmado. Necesitaráreiniciarsuservidorsegurodespuésdegenerarel certificado. Consultela Sección 14.1,Arranqueyapagadodelhttpd paramásinstruccionessobreel reinicio desuservidorWebseguro.

13.15 Prueba de su cer tificadoCuandoel programadeinstalación RedHat Linux instalael servidorseguro,creatambiénunaclavede accesoy un certificadogenéricodeprueba.Paracualquierotro propósito,necesitaráobteneruncertificadodesdeunaCA o generarun certificadoauto-firmado.Consultela Sección 13.11,Tiposdecertificadossi necesitamásinformación sobrelos tiposdiferentesdecertificadosdisponibles.

Si ha compradoun certificadodesdeunaCA o generadoun certificadoauto-firmado,deberíatenerunarchivo llamado/etc/httpd/conf/ssl.key/server.key quecontengasuclavey unar-chivo /etc/httpd/conf/ssl.crt/server.crt quecontengasu certificado. Si suclave ycertificadoestánenotroenalgúnotrositio, trasládelasaestosdirectorios.Si hacambiadocualquieradelaslocalizacionespor defecto,deberíaintroducirestosdosarchivosenel directorioadecuado,ba-sándoseensusmodificaciones.

Detengay reiniciesuservidorcomosedescribeenla Sección 14.1,Arranquey apagadodelhttpd.Si suarchivo clave estáencriptado,sele pedirála contraseña.Introduzcasucontraseñay suservidordebería empezar.

IndiquesunavegadorWeba la páginainicial. El URL paraaccederasusecureWebserverserápare-cido a lo quesiguea continuación:

https://your_domain

Page 183: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 13.16:Acceso a su servidor seguro 183

NotaObserve la "s" despuésde"http." Los https: el prefijo seusaparaasegurarlas transaccionessegurasHTTP.

Si estáutilizandoun certificadofirmadopor CA deunaCA conocida,sunavegadoraceptaráproba-blementedeformaautomáticael certificado(sin indicarsuentrada)y crearunaconexión segura.Sunavegadorno reconoceráunapruebao un certificadoauto-firmado,porqueel certificadono estáfir-madoporunaCA, sigalasinstruccionesproporcionadasporsunavegadorparaaceptarel certificado.Si pulsaSiguiente hastaquefinalicenlos diálogos,aceptará por defecto.

Unavezquesunavegadoracepteel certificado,susecureWebserver le mostraráunapáginainicialpor defectocomosemuestraenel Gráfico 13–1, Páginainicial predeterminada.

Gráfico 13–1 Página inicial predeterminada

13.16 Acceso a su servidor segur oParaaccedera suservidorseguro,utilice unaURL comoel siguiente:

https://your_domain

Page 184: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

184 Capítulo 13:Uso de Apache como servidor Web seguro

ObservequelasURLsqueestánpensadosparaconectarsea susecureWebserver, deberíanempezarconel indicadordeprotocolohttps:enlugardeun indicadordeprotocolohttp:.

Sepuedeaccedera un servidorno segurousandounaURL del género:

http://your_domain

El puertoestándarparaun transmisorWebseguroesel puerto443. El puertoestándarparacomuni-cacionesWebinsegurasesel puerto80. La configuraciónpor defectodesecureWebserver escuchalos dospuertosestándar. Por lo tanto,no necesitaráespecificar el númerodepuertoenunaURL (seasumeel nombredel puerto).

No obstante,si configurasuservidorparaescucharun puertono estándar(p.e.,cualquiercosaalre-dedorde 80 o 443),necesitaráespecificar el númerode puertoencadaURL queestépensadaparaconectarseal servidorenun puertono-estándar.

Porejemplo,si haconfiguradosuservidordemaneraquetengaunhostvirtual inseguroejecutándoseen un puerto12331. CualquierURLs pensadaparaconectarsea un hostvirtual debeespecificar elnúmerodepuertoin la URL. El siguienteejemplodeURL intentaráconectarseconun servidorWebinseguroescuchandoun puerto12331:

http://your_domain:12331

Algunosde los ejemplosdeURLs usadosenestemanualpuedennecesitarun cambio,dependiendodesi ustedaccedea susecureWebserverexplícitasquefuncionaránencualquiercircunstancia.

13.17 Recur sos adicionalesSi haseguidolos pasosindicadosenel Capítulo 13, UsodeApachecomoservidorWebseguro perohasurgido algún problema,lo primeroquedeberíahaceresconsultarla la seccióndeErratasdeRedHat enel sito webdeRedHat en http://www.redhat.com/support/errata.

Si hacompradoun productooficial RedHat consoporte,disponedesoportetécnico. Asegúresedevisitarel sitio webdesoportedeRedHaten http://www.redhat.com/supportpararegistrarsey, deestamanera,obtenersoportetécnico.

Siquieresuscribirseala listadecorreodeservidor-seguro-redhat,vayaa http://www.redhat.com/mai-ling-lists.

Tambiénse puedesuscribira dicha lista enviando un email a [email protected] eincluyendola palabra"suscripción"(sin lascomillas)enla líneadeObjeto.

13.17.1 Documentación instaladaSi instalóelpaqueteapache-manual , podráaccederaladocumentaciónApacheenformatoHTMLensumáquinadesdela siguienteURL: http://localhost/manual/.

Page 185: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 13.17:Recursos adicionales 185

La documentaciónmod_sslla encontraráenel siguienteURL: http://localhost/manual/mod/mod_ssl/.

13.17.2 Sitios Web útilesLasadvertencias,lasFAQsy los documentosHOWTO los encontraráenel sitio WebdeRedHat enhttp://www.redhat.com/support/docs/howto.

La basecentralizadadeconocimientoApachedeRedHat Linux está disponibleen http://www.red-hat.com/support/docs/faqs/RH-apache-FAQ/book1.html.

El sitio Web Apacheproporcionauna documentacióncompletaparael servidorWeb Apacheenhttp://httpd.apache.org/docs.

El sitio Web mod_sslwebsite( http://www.modssl.org) esla fuentedefinitiva de informaciónsobremod_ssl.Incluyedocumentaciónabundantey unManualdelusuarioen http://www.modssl.org/docs.

13.17.3 Libr os relacionadosApache: TheDefinitive Guide, secundaedición,deBenLauriey PeterLaurie,O’Reilly & Associates,Inc.

Page 186: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

186 Capítulo 13:Uso de Apache como servidor Web seguro

Page 187: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Módulos y directivas de Apache 187

14 Módulos y directiv as de Apac hePodemosdecirquela configuraciónpredeterminadadeApacheseadaptaa los sistemasdetodoslostiposdeusuarios.Porello no esnecesarioquecambielasdirectivasdela configuracióndeApache.Si deseacambiaralgunasde las opcionespredeterminadasde la configuración necesitaconcerlasysaberdóndeseencuentran.Paraello leaatentamenteestecapítulo.

ADVERTENCIA�

Si deseautilizar la Herramienta de configuración Apac he, utilidadGUI que seencuentraen el paquetede Red Hat Linux no cambieel fi-chero httpd.conf fichero de configuración del servidor web Apache.Por el contrario, si deseacambiar el httpd.conf a mano, no use laHerramienta de configuración Apac he.

Si deseamás información sobre la Herramienta de configuraci ónApac he, consulte la versión españolade la Official Red Hat LinuxCustomizationGuide.

Trashaberinstaladoel paqueteapache podráencontrarla documentaciónsobreel servidordewebApacheenel sitio http://your_domain/manual/o via webenel sitio http://httpd.apache.org/docs/.Ladocumentacióndel servidordewebApachecontienedescripcionescompletasy detalladasde todaslasopcionesdeconfiguración.Parafacilitarlela tarea,estecapítulocontienepequeñasdescripcionesde lasdirectivasdeconfiguraciónutilizadasen la versiónApachequeseencuentraenel paquetedeRedHat Linux.

Cuandolea el ficherode configuración del servidorde Web, tengaen cuentaquela configuraciónpredeterminadaincluye tantoel servidorde web seguro comoel no seguro. El servidorseguro seejecutacomounamáquinavirtual, queaparececonfiguradaenel ficherohttpd.conf . Paramásinformaciónsobremáquinasvirtuales,veala Sección 14.4,Utilización demáquinasvirtuales.

Nota

No se incluyen extensionesFrontPageporquela licencia Microsoft (TM)prohibela inclusióndeextensionesenproductosdeotrascompañías.

Page 188: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

188 Capítulo 14:Módulos y directivas de Apache

14.1 Arranque y apagado del httpdDuranteel procesode instalación,en el /etc/rc.d/init.d seha salvadoun script de la shell"bourne"con el nombrehttpd . Paraarrancary apagarsu servidormanualmente,ejecutehttpdtantoconel argumentoapagar comoconarrancar .

Paraarrancarsuservidor, tecleeel comando:

/etc/rc.d/init.d/httpd start

Si estáejecutandoApachecomoservidorseguro,sele pediráqueintroduzcala contraseña.Después,suservidorarrancará.

Paraapagarsuservidor, tecleeel comando:

/etc/rc.d/init.d/httpd stop

El comandoreanudar esunamaneramáscortaparaapagary luego reanudarsuservidor. El co-mandoreanudar apagay reanudasuservidordemaneraqueselepedirásucontraseñasi suservidorApacheesun servidorseguro. El comandoreanudar tieneel siguienteaspecto:

/etc/rc.d/init.d/httpd restart

Si haterminadodemodificaralgunacosaenel ficherohttpd.conf , no necesitaapagary reanudarsuservidor.Simplemente,utilice el comandorecargar . Cuandouseel comandorecargar , notendrá queteclearsucontraseñala cualsenecesitaenel casoestéusandoel servidorApachecomoun servidorseguro.Durantelasrecargassemantendrásucontraseñaperono ocurrirácuandoapaguey arranqueel servidor. El comandorecargar tieneel siguienteaspecto:

/etc/rc.d/init.d/httpd reload

El procesodeejecucióndel comandohttpd comienzaautomáticamentecuandosearrancael orde-nadorya queestápredeterminado.Si estáusandoel servidorApachecomoun servidorseguroselepedirála contraseñadespuédequearranqueel ordenadora no serquehayageneradounaclave parasuservidorsegurosin crearla contraseñadeprotección.

14.2 Directiv as de configuraci ón en el fic herohttpd.confEl archivo deconfiguracióndel servidorWebApachees/etc/httpd/conf/httpd.conf . Elarchivo httpd.conf estábien comentadoy esbastanteautoexplicativo. La configuraciónprede-terminadadesecureWebserver funcionaparalos ordenadoresdela mayoríadelos usuarios,asíqueprobablementeno necesitarácambiarningunadelasdirectivasenel ficherohttpd.conf . Sin em-bargo,quizásquieraconocerel restodelasopcionesdeconfiguraciónmásimportantes.

Page 189: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 14.2:Directivas de configuración en el fichero ht t pd. conf 189

Los ficheros vacíos srm.conf y access.conf se encuentran en el directorio/etc/httpd/conf . Precisamenteestosficherosjunto conel ficherohttpd.conf seutilizaronanteriormentecomoficherosdeconfiguracióndeApache.

Si necesitaconfigurarApachesólotienequemodificarel ficherohttpd.conf y despuésrecargarobienapagary arrancarel procesodel comandohttpd . Paramayorinformaciónconsultela Sección14.1,Arranquey apagadodel httpd.

Antesdemodificarel ficherohttpd.conf debedecopiarel ficherooriginaldándoleporejemplo,elnombrehttpd.confold u otrocualquiera.Si cometeunerrormientrasestámodificandoel ficherodeconfiguración,no sepreocupeporquesiempredisponedeunacopiadeseguridad.

Si cometeunerrory suservidordewebno funcionacorrectamente,el primersitio dondeacudiresloqueacabademodificar enhttpd.conf . Asegúresedeno habercometidoningúngazapo.Despuésconsulteel ficherodeconexión deerror(/var/log/httpd/error_log ). Estepuedeserdifícilde interpretar, tododependedel nivel deexperiencia.Si acabadetenerproblemas,detodasformas,lasúltimasentradasdeberíandeayudarlea saberlo quehapasado.

Las siguientesseccionesdan breves descripcionesde las directivas incluídas en el ficherohttpd.conf , ordenadassegún se encuentranen él. Las descripcionesno son exhaustivas. Sinecesitamásinformación,consulteladocumentacióndeApacheenformatoHTML enhttp://your_do-main/manual/o en la documentación del grupo Apacheen http://www.apache.org/docs/. Paramás información sobre las directivas mod_ssl, consulte la documentaciónincluída en formatoHTML enhttp://your_domain/manual/mod/mod_ssl/,o veael mod_sslenel Manualdel usuarioenhttp://www.modssl.org/docs/2.7/.

14.2.1 ServerTypeEl comandoServerType puedesertanto inetd comostandalone . El servidordeweb tienecomocomandopredeterminadoel ServerType standalone .

Dichocomando,elServerType standalone significaqueel servidorarrancacuandosehanlle-vadoacabotodaslasconexiones.Porotro lado,elcomandoServerType inetd quieredecirquearrancaunanuevainstanciacadavezqueseproduzcaunaconexión HTTP. Cadaunadelasinstanciasdelservidorcontienela conexión y aunqueacabeconexión sigueexistiendo.Comopuedeimaginarse,la utilizacióndel comandoinetd no sirve paramucho.Otro problemaquesepresentaconesteco-mandoesquepuedeno funcionarcorrectamentesegúnel grupoApache. Por último, debidoa quetantoRedHatLinux y 7.1utilizandichocomandosenecesitaríaañadirotraconfiguraciónparaqueelcomandoxinetd arrancaseel servidor. Porello, paraevitar estosproblemasle aconsejamosqueelcomandoServerType seastandalone .

Page 190: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

190 Capítulo 14:Módulos y directivas de Apache

14.2.2 ServerRootEl comandoServerRoot es el directorio principal dondese encuentrantodos los ficherosdelservidor. Tanto el servidor seguro como el no seguro utilizan un comandoServerRoot del/etc/httpd .

14.2.3 LockFileEl comandoLockFile configura el path al fichero de bloqueoutilizado por el servidorApachecuando se compila con USE_FCNTL_SERIALIZED_ACCEPTo USE_FLOCK_SERIALI-ZED_ACCEPT. No sedeberíadecambiarel valorpredeterminadodel comandoLockFile .

14.2.4 PidFileEl comandoPidFile nombrael archivo enel queel servidorgrabasuID deproceso(pid). secureWebserver estáconfiguradoparagrabarsupid en /var/run/httpd.pid .

14.2.5 ScoreBoardFileEl comandoScoreBoardFile almacenainformacióninternasobreel procesodel servidorqueseutiliza paracomunicarel procesopadreconlosprocesoshijos. secureWebserver’sEl comandoSco-reBoardFile seencuentraen /var/run/httpd.scoreboard ..

14.2.6 ResourceConfigLa directiva ResourceConfig instruyeal servidora queleael ficheroResourceConfig parabuscarmásdirectivasdeconfiguración.La directiva ResourceConfig está comentadaporqueelservidorsólousahttpd.conf paradirectivasdeconfiguración.

14.2.7 AccessConfigLa directivaAccessConfig instruyeal servidoraleerel ficheroAccessConfig parabuscarmásdirectivasdeconfiguración,trashaberleído el ficheroResourceConfig . Dichadirectiva estáco-mentadaporqueel servidorsólousahttpd.conf paradirectivasdeconfiguración.

14.2.8 TimeoutEl comandoTimeout define, ensegundos,el tiempoqueel servidoresperará pararecibir y enviarpeticionesdurantela comunicación. Específicamente,el comandoTimeout define cuántoesperaráel servidorpararecibir peticionesGET, cuántoesperarápararecibir paquetesTCP en unapeticiónPOSTo PUT y cuántoesperaráentreunaACK y otra respondiendoa paquetesTCP. El comandoTimeout estáajustadoa300segundos,queesel tiempoapropiadoparalamayoríadelassituaciones.

Page 191: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 14.2:Directivas de configuración en el fichero ht t pd. conf 191

14.2.9 KeepAliveEl comandoKeepAlive determinasi el servidorpermitirávariasconexionesa la vez(p.e.,másdeunapeticiónporconexión). KeepAlive puedeusarseparaimpedirqueunclienteconsumamuchosrecursosdel servidor. El comandoKeepAlive apareceya enon por defecto,lo quesignifica quesepermitenvariasconexionesa la vez. Puedeponerseenoff paradesactivarlas.ConsulteSección14.2.10,MaxKeepAliveRequests paraconocerunmétodoalternativo paralimitar laspeticiones.

14.2.10 MaxKeepAliveRequestsEstadirectiva estableceel númeromáximode peticionespermitidaspor cadaconexión quesepro-duzcaa la vez. El GrupoApacherecomiendaun valoralto, lo quemejoraría el rendimiento.El valorpredeterminadodel comandoMaxKeepAliveRequests esde 100 quedeberíabastaren la ma-yoríade los casos.

14.2.11 KeepAliveTimeoutLa directivaKeepAliveTimeout estableceel númerodesegundosqueel servidoresperaráa la si-guientepetición,trashaberdadoservicioaunapetición,antesdecerrarla conexión. Unavezrecibidala petición, aplicala directiva Timeout ensulugar.

14.2.12 MinSpareServers y MaxSpareServersEl servidorWebApacheseadaptadinámicamentea la cargapercibidamanteniendounnúmeroapro-piadodeservidoreslibres basadoenel tráfico. El servidorcompruebael númerodeservidoresqueesperanpeticionesy eliminaalgunossi el númeroesmásaltoqueMaxSpareServers o creaalgu-nossi el númerodeservidoresesmenorqueMinSpareServers .

El valor predeterminadode MinSpareServers es5 y el de MaxSpareServers es20 . Estosvalorespredeterminadossonsuficientesenla mayoríadelos casos.El númerodeMinSpareSer-vers no deberíadeserelevadoya quecrearáunagrancargainclusocuandoel tráfico fuesebajo.

14.2.13 StartServersStartServers establececuántosprocesosseráncreadosal arrancar. Ya queel servidorWebcreay elimina dinámicamenteservidoressegún el tráfico, no senecesitarácambiaresteparámetro.Elservidorestáconfiguradoparaarrancarochoprocesosal arrancar.

14.2.14 MaxClientsEl comandoMaxClients estableceun límite al totaldelos procesosdel servidor(esdecir, clientesconectadossimultáneamente)queseejecutana la vez. Debemantenerel comandoMaxClients aun valor alto (el valor por defectoes150),porqueno sepermitiránnuevasconexionesunavez que

Page 192: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

192 Capítulo 14:Módulos y directivas de Apache

sealcanceel númeromáximodeclientessimultáneamenteconectados.El valor del comandoMax-Clients no puedesuperarel 256sin quesehayarecompiladoApache.La principalrazóndetenerel parámetroMaxClients esevitar queunservidorerráticovuelva inestableal sistemaoperativo.

14.2.15 MaxRequestsPerChildEl comandoMaxRequestsPerChild estableceel númeromáximodepeticionesquecadaprocesohijo procesaantesdemorir. La principalrazónparatenerel comandoMaxRequestsPerChild esevitar queprocesosdelargavidapierdanmemoria.El valorpredeterminadodeMaxRequestsPer-Child parael servidoresde100 .

14.2.16 ListenEl comandoListen establecelospuertosenlosquesecureWebserveraceptalaspeticionesentran-tes.secureWebserverestáconfiguradoparaescucharenel puerto80paracomunicacionesnosegurasy (enmáquinasvirtualesquedefineel servidorseguro)enel puerto443paracomunicacionesseguras.

Parapuertospor debajode1024,el comandohttpd deberáserejecutadocomoroot. Parael puerto1024y superiores,el comandohttpd puedeserejecutadocomosi sefueraun usuariocualquiera.

El comandoListen tambiénsepuedeusarparaespecificar direccionesIP específicasenlascualesaceptaráconexionesel servidor.

14.2.17 BindAddressBindAddress esunmododeespecificarenquédireccionesIPelservidorescuchará. Deberíausarsela directiva Listen en su lugar si senecesitaestafuncionalidad. El servidorno usael comandoBindAddress el cualya aparececomentadoenhttpd.conf .

14.2.18 LoadModuleEl comandoLoadModule seusaparacargarmódulosDynamicSharedObject(DSO).Paramásin-formaciónsobreel soprtedelosDSOsdeApachey cómousarla directivaLoadModule , leaSección14.3,Añadirmódulosa suservidor. Nótesequeel ordendelosmódulosesimportante,asíquemejorno tocarlo.

14.2.19 IfDefineLasetiquetas<IfDefine> y </IfDefine> rodeanadirectivasdeconfiguraciónquesonaplicadassi el testaplicadoa la etiqueta<IfDefine> resultaverdadero;lasdirectivasno setienenencuentasi el testesfalso.

Dicho testaplicadoa la etiqueta<IfDefine> esun nombredeun parámetro(p.ej.,HAVE_PERL).Si el parámetroestá definido,esdecir, si sedacomoargumentoal comandodearranquedel servidor,

Page 193: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 14.2:Directivas de configuración en el fichero ht t pd. conf 193

entoncesel testesverdadero.Enestecaso,cuandosearrancael secureWebserverel testesverdaderoy seaplicanlasdirectivascontenidasenlasetiquetasIfDefine .

Pordefecto,lasetiquetas<IfDefine HAVE_SSL>rodeanlasetiquetasde la máquinavirtual delservidorseguro.Lasetiquetas<IfDefine HAVE_SSL>tambiénrodeanalasdirectivasLoadMo-dule y a lasAddModule parassl_module .

14.2.20 ClearModuleListEl comandoClearModuleList seencuentrajusto antesde la larga lista de directivasAddMo-dule . ClearModuleList borra la lista internade módulosdel servidor. La lista de directivasAddModule recreala lista, justodespuésdeClearModuleList .

14.2.21 AddModuleAddModule esla directiva usadaparacrearunalista completade módulosdisponibles.Seusaladirectiva AddModule paraañadirmóduloscomoDSO. ParamásinformaciónsobrecómousarelcomandoAddModule parael soporteDSO,veaSección 14.3,Añadirmódulosa suservidor.

14.2.22 ExtendedStatusLa directiva ExtendedStatus controlasi Apachegenerainformaciónde estadobásico(off ) odetallada(on), cuandosellamaal gestorserver-status . Sellamaal gestorServer-statusutilizandola etiquetaLocation ; Paramayorinformaciónsobrecómollamaral server-statusconsultela Sección 14.2.71,Location

14.2.23 PortNormalmente,el comandoPort define el puertoenel queescuchael servidor. secureWebserver,sin embargo, escuchaenmásdeun puertopor defecto,ya quela directiva Listen tambiénseusa.Cuandola directivaListen estáenuso,el servidorescuchaentodosesospuertos.Consultela des-cripcióndeListen paramásinformaciónsobreel comandoListen .

El comandoPort tambiénseusaparaespecificar el númerodepuertousadoparacrearel nombrecanónicoparael servidor. Consultela Sección14.2.39,UseCanonicalName paramásinformaciónsobreel nombrecanónicodel servidor.

14.2.24 UserLa directiva User estableceel useridusadopor el servidorpararespondera peticiones.El valor deUser determinael accesoal servidor. Cualquierficheroal queno puedaaccederesteusuarioserátambiéninaccesibleal visitantedela web. El comandopredeterminadoparaUser esapache .

User deberíasólotenerprivilegiosdetal maneraquesólopuedieraaccedera ficherosquesesuponequetodoel mundopuedever. El comandoUser tambiénesdueñodel cualquierprocesoCGI que

Page 194: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

194 Capítulo 14:Módulos y directivas de Apache

arranqueel servidor.Al comandoUser no sele debería permitir ejecutarningúncódigoqueno estépensadopararesponderpeticionesHTTP.

NotaA menosquesepaexactamentelo queestáhaciendo,no utilice el comandoUser comosi fueseroot. UsarrootparaUser crearágrandesproblemasdeseguridadensecureWebserver.

El procesohttpd padreseejecutacomoroot duranteoperacionesnormales,peropasaal usuarioapacheinmediatamente.El servidordebearrancarcomoroot porquenecesitaun puertopor debajode 1024(El puertopredeterminadoparacomunicacionessegurases443; el puertopor defectoparacomunicacionesnosegurasesel puerto80). Lospuertospor debajode1024estánreservadosparaelsistema,asíquesólo sepuedenusarsi seesroot. Unavezqueel servidorsehaconectadoal puerto,pasael procesoa User antesdeaceptarpeticiones.

14.2.25 GroupEl comandoGroup essimilaraUser . Group estableceel grupoenel queel servidorrespondealaspeticiones.El valor predeterminadodel comandoGroup tambiénesapache .

14.2.26 ServerAdminServerAdmin deberíaser la direcciónde correodel administradordel secureWeb server. Estadireccióndecorreoapareceráenlosmensajesdeerrorgeneradosporel servidorparapáginasweb,detal maneraquelosusuariospuedencomunicarerroresenviandocorreoal administrador. El comandoServerAdmin ya seencuentraenla direcciónroot@localhost .

Una forma buena y típica de configurar ServerAdmin es situarlo en la dirección webmas-ter@your_domain.com . Despuéscreeun aliasdel webmaster parala personaresponsabledel servidoren /etc/aliases . Finalmente,ejecute/usr/bin/newaliases paraañadirelnuevo alias.

14.2.27 ServerNameEl comandoServerName puedeusarseparaestablecerel nombrede la máquinadel servidordife-renteal nombrerealdemáquinacomopor ejemplo,usarwww.your_domain.comaunqueel nombrerealdel servidorseafoo.your_domain.com.NótesequeServerName debeserunnombre"DomainNameService"(DNS) válido quesetengaderechoa usar(no bastaconinventaruno).

Si seespecifica ServerName , hay queasegurarsede incluir la parejanombre-direcciónIP en elfichero/etc/hosts .

Page 195: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 14.2:Directivas de configuración en el fichero ht t pd. conf 195

14.2.28 DocumentRootDocumentRoot esel directorioquecontienela mayoríadelosarchivosHTML queseentregaránenrespuestaa peticiones.El directoriopredeterminadoDocumentRoot paraservidoressegurosy noseguroses/var/www/html . Porejemplo,el servidorpuederecibir unapetición parael siguientedocumento:

http:// your_domain/foo.html

El servidorbuscaráel ficheroenel siguientedirectoriopor defecto:

/var/www/html/foo.html

Si sequierecambiarDocumentRoot paraquenolo compartanlosservidoressegurosy noseguros,veaSección 14.4,Utilización demáquinasvirtuales.

14.2.29 DirectoryLasetiquetas<Directory /path/to/directory> y </Directory> seusanparaagrupardirectivasdeconfiguración quesóloseaplicanaesedirectorioy sussubdirectorios.Cualquierdirec-tiva aplicablea un directoriopuedeusarseen lasetiquetas<Directory> . Lasetiquetas<File>puedenaplicarsede la mismaformaa un ficheroespecífico.

Por defecto,seaplicanparámetrosmuy restrictivos al directorio raíz, utilizandoOptions (vea laSección 14.2.30,Options ) y AllowOverride (vea la Sección 14.2.31,AllowOverride ).Conestaconfiguración,cualquierdirectoriodelsistemaquenecesitevaloresmáspermisivoshadeserconfiguradoexplícitamente.

La utilizaciónde las etiquetasLocation , permiteal comandoDocumentRoot (referidoa "/" )tenerparámetrosmenosrígidosparaqueel servidorsirva laspeticionesHTTP.

El directorio cgi-bin estáconfiguradoparapermitir la ejecuciónde scriptsCGI, con la opciónExecCGI . Si senecesitaejecutarun script CGI en cualquierotro directorio,habráqueconfigurarExecCGI paraesedirectorio. Porejemplo,si cgi-bin es/var/www/cgi-bin , perosequiereejecutarscriptsCGI desde/home/my_cgi_directory , añadiráunadirectivaExecCGI aunpardedirectivasDirectory comolassiguientesal ficherohttpd.conf :

<Directory /home/my_cgi_directory>Options +ExecCGI

</Directory>

Parapermitir la ejecucióndescriptsCGI en/home/my_cgi_directory , habráquellevaracabopasosextra apartedeconfigurarExecCGI . También necesitaráanularel comentariode la directivaAddHandler paraidentificarficherosconextensión.cgi comoscriptsCGI.VealaSección14.2.65,AddHandler parasabercómoconfigurarel comandoAddHandler . El valordelospermisospara

Page 196: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

196 Capítulo 14:Módulos y directivas de Apache

scriptsCGI y el recorridoenteroa los scripts,debeserde 0755. Además,el dueñodel script y deldirectoriodebenserel mismo.

14.2.30 OptionsLa directiva Options controlacaracterísticasdel servidorqueestándisponiblesenun directorioenparticular. Porejemplo,enlosparámetrosrestrictivosespecificadosparaeldirectorioraíz,el comandoOptions sólopermiteFollowSymLinks . No haycaracterísticaspermitidas,salvo queel servidorpuedaseguir enlacessimbólicosenel directorioraíz.

Pordefecto,enel directorioDocumentRoot , Options estáconfiguradoparaincluir loscomandosIndexes , Includes y FollowSymLinks . Indexes permiteal servidorgenerarun listadodeun directoriosi no seespecifica el DirectoryIndex (index.html, etc. ). Includes im-plicaquesepermiteninclusionesenel servidory el comandoFollowSymLinks permiteal servidorseguir enlacessimbólicosenesedirectorio.

También setienenqueincluir declaracionesdel comandoOptions paralos directoriosqueesténdentrodedirectivasdemáquinasvirtuales,si sequierequeéstasreconozcanesasOptions .

Porejemplo,la inclusiónenel servidorestáactivadaenel directorio/var/www/html en la líneaOptions Includes dentrodelasecciónLocation "/" . Sinembargo,si sequierequeunamá-quinavirtual reconozcaquesepermiterealizarla inclusióndesdeel servidoren /var/www/html ,habráqueincluir unaseccióncomola siguientedesdedentrodelasetiquetasdelasmáqinasvirtuales:

<Directory /var/www/html>Options Includes</Directory>

14.2.31 AllowOverrideAllowOverride establecequédirectivasOptions puedeobviar un archivo .htaccess . Pordefecto,tantoel directorioraízcomoDocumentRoot estánconfiguradosparanopermitir la preva-lenciade .htaccess .

14.2.32 OrderOrder simplementecontrolaelordenenqueallow y deny seevaluan.El servidorestáconfiguradoparaevaluarAllow antesquedeny parael directorioDocumentRoot .

14.2.33 AllowAllow especifica quépeticionariopuedeaccederun directoriodado.El peticionariopuedeserall ,un nombrededominio,unadirección IP, unadirecciónIP parcial,un parred/máscaradered,etc. EldirectorioDocumentRoot estáconfiguradoparapermitir peticionesdeall (cualquiera).

Page 197: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 14.2:Directivas de configuración en el fichero ht t pd. conf 197

14.2.34 DenyDeny funcionacomoallow , peroespecifica a quiénseniegael acceso.DocumentRoot no estáconfiguradopararechazar peticionesdenadie.

14.2.35 UserDirUserDir esel nombredel subdirectoriodentrodel directoriodecadausuariodóndeestaránlos ar-chivosHTML queseránservidos.Pordefecto,el subdirectorioespublic_html . Porejemplo,elservidorpodría recibir la siguientepetición:

http:// your_domain/~ username/foo.html

El servidorbuscaría el fichero:

/home/username/public_html/foo.html

En el ejemplo,/home/username esel directoriodel usuario(nótesequela rutapredeterminadaalos directoriosdelos usuariospuedevariarentresistemas).

Hay queasegurarseque los permisosde los directoriosde usuarioseancorrectos. El valor de lospermisosdebenserde0755.Losbitsdelectura(r) y ejecución(x) debenestaractivadoseneldirectoriodel usuariopublic_html (0755valdrá). El valor delos permisosconqueseserviránlos ficherosdesdepublic_html debeser0644por lo menos.

14.2.36 DirectoryIndexDirectoryIndex eslapáginapordefectoqueentregaelservidorcuandohayunapeticióndeíndicedeun directorioespecificadoconunabarra(/) al final del nombredel directorio.

Por ejemplo,cuandoun usuariopide la páginahttp://your_domain/this_directory/, recibela páginaDirectoryIndex si existe,o un listadogeneradopor el servidor. El valor por defectoparaDi-rectoryIndex esindex.html , index.htm index.shtml e index.cgi . El servidorin-tentaráencontrarcualquierade estoscuatro,y entregará el primeroqueencuentre.Si no encuentraningunoy si Options Indexes seencuentraenel directorio,el servidorgeneraráun listado,enformatoHTML, delos subdirectoriosy archivosdel directorio.

14.2.37 AccessFileNameAccessFileName denominael archivo queel servidorutilizará paracontrolarel accesoen cadadirectorio. Pordefecto,el servidorutilizará .htaccess , si existe,paracontrolarel accesoencadadirectorio.

Page 198: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

198 Capítulo 14:Módulos y directivas de Apache

JustotrasAccessFileName ,elcomandoFiles controlaelaccesoacualquierarchivoqueempiececon .ht . Estasdirectivasnieganaccesoa todo tipo de archivo .htaccess (u otrosarchivos queempiecen.ht ) por razonesdeseguridad.

14.2.38 CacheNegotiatedDocsPordefecto,secureWebserver requierea los "proxies"quenohagancachédelosdocumentosquesenegocianenbaseal contenido( puedencambiarenel tiempoo segúnlosdatosdelpeticionario).Si seanulael comentariodelcomandoCacheNegotiatedDocs , sedesactiva la funcióny los"proxies"podránhacercaché de los documentos.

14.2.39 UseCanonicalNameUseCanonicalName yaapareceenon . El comandoUseCanonicalName permitequelosURLscontengansuspropiasreferenciasutilizandolos comandosServerName y Port . Cuandoel servi-dorserefiereasi mismoenrespuestaapeticionesdeclientes,usaesteURL. Si el UseCanonical-Nameestáenoff , el servidorutilizará el valor quevino enla peticióndel clienteparareferirsea simismo.

14.2.40 TypesConfigTypesConfig denominael fichero que establecela lista predeterminadade mapeadode tiposMIME (extensionesde ficherosa tipos de contenido). El ficheropredeterminadoTypesConfiges /etc/mime.types . En vez de modificar el /etc/mime.types , se recomiendaañadirmapeadosdetiposMIMEs conAddType .

14.2.41 DefaultTypeDefaultType estableceel contenidopor defectoqueel servidorutilizaráparadocumentoscuyostiposMIME no puedanserdeterminados.El servidorpredisponeel texto paracualquierficheroconun tipo decontenidoindeterminado.

14.2.42 IfModule<IfModule> y </IfModule> envuelvena directivasquesoncondicionales.Lasdirectivascon-tenidasdentrodeIfModule sonprocesadassi secumpleunadelasdoscondiciones.Lasdirectivassonprocesadassi el módulo contenidoen la etiqueta<IfModule> estácompiladoen el servidorApache.O, si una"!" (exclamación)apareceantesdel nombre;lasdirectivassonprocesadassólosiel móduloen la etiqueta<IfModule> no estácompilado.

El ficheromod_mime_magic.c estáincluídoenIfModule . El módulomod_mime_magicpuedecompararseal comandoUNIX file , queexaminalos primerosbytesdeun fichero,y usa"númerosmágicos"y otrostrucosparadecidirel tipo MIME del fichero.

Page 199: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 14.2:Directivas de configuración en el fichero ht t pd. conf 199

Si el módulomod_mime_magicestácompiladoen Apache,estasetiquetasIfModule le dicenalmódulomod_mime_magicmoduledondeestáel ficherodelos trucos:share/magic enestecaso.

El módulomod_mime_magicmodulenoestácompiladopordefecto.Si sequierusar, veala Sección14.3,Añadir módulosa suservidor, parasabercómoañadirmódulosal servidor.

14.2.43 HostnameLookupsHostnameLookups puedeapareceren on o en off . Si el servidorpermitela directiva Host-nameLookups (poniéndoloenon), el servidorresolveráautomáticamentela direcciónIP decadaconexión quepidaun documentodel servidor. Resolver la direcciónIP implica queel servidorharáunao másconexionesal DNS paraaveriguarquénombredemáquinasecorrespondeconunadirec-ción IP.

Generalmente,deberíadejarseHostnameLookups enoff porquelaspeticionesdeDNSañandencargaal servidory puedenralentizarlo.Siel servidortienecarga,losefectosdeHostnameLookupspuedenserconsiderables.

HostnameLookups influye tambiénenInternetengeneral.Cadaconexión individualprovocaunasobrecargaenel servidor. Porello, porbeneficio delservidory deInternetengeneral,deberíadejarseHostnameLookups enoff .

14.2.44 ErrorLogErrorLog nombrael ficherodondeseguardanlos erroresdel servidor.Comovieneindicado,el fi-cherodeerrordel servidores/var/log/httpd/error_log .

El log deerroresesunbuensitio paraversi el servidorgeneraerroresy nosesabemuybienquépasó.

14.2.45 LogLevelLogLevel establececómoserándeabundantesloslogsdeerror. LosnivelesdeerrordelLogLevel(de menora mayor)sonemerg , alert , crit , error , warn , notice , info or debug . ElLogLevel desecureWebserver estáenwarn (nivel medio).

14.2.46 LogFormatLogFormat poneel formatoparalosmensajesenel log deacceso;afortunadamente,el formatoharáqueel log deaccesoseamáslegible.

Page 200: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

200 Capítulo 14:Módulos y directivas de Apache

14.2.47 CustomLogCustomLog identifica el log y el formatodelog. La configuraciónpor defectodeCustomLog desecureWebserver, defineel logenelqueseguardanlosaccesosalservidor/var/log/httpd/ac-cess_log . Habráquesaberla localizacióndeestearchivo si sequierengenerarestadísticasderen-dimientodel servidor.

CustomLog poneel formatocomúnparael archivo. El formatocomúnde log esde la siguienteforma:

remotehost rfc931 authuser [date] "request" status bytes

remotehost

El nombredelamáquina:Siel nombrenoestádisponibleenelDNS,osíHostnameLookupsestáenOff , entoncesremotehost serála dirección IP dela máquinaremota.

rfc931

No utilizado: Severáun - enel log ensulugar.

authuser

Si serequirió la autenticación, esteesel usuarioconel queel usuarioseidentificó. General-mente,no seusa,asíqueseveráun - ensulugar.

[date]

Fechay horade la petición.

"request"

Cadenadetexto dela peticiónsegún vino del cliente.

status

CódigodeestadoHTTP quesedevolvió al cliente.

bytes

Tamañodel documento.

El comandoCustomLog puedeutilizarseparaconfigurarlogsespecíficospararegistrarreferencias(elURL quehizo el enlaceal servidor)y/o agentes(navegadoresutilizadosparapedirpáginasal servi-dor). Las líneasrelevantesdel CustomLog estáncomentadas,comosemuestra,perosedeberíadeanularel comentariosi sequierenlos dosarchivosdelog:

#CustomLog /var/log/httpd/referer_log referer#CustomLog /var/log/httpd/agent_log agent

Page 201: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 14.2:Directivas de configuración en el fichero ht t pd. conf 201

Alternativamente,sepuedeponerla directiva CommonLogparaqueuseun log combinado sin elcomentarioen la siguientelínea:

#CustomLog /var/log/httpd/access_log combined

Un ficherode log combined añadirálos camposagentey refereral final de cadalínea. Si deseautilizar un ficherodelog combined elimineel comentarioqueapareceenCustomLog .

14.2.48 ServerSignatureEl comandoServerSignature añadeuna líneaquecontienela versióndel servidorApacheyel ServerName dela máquinaa los documentosgeneradospor el servidor(p.ej,mensajesdeerrordevueltosaclientes).ServerSignature yaapareceenon . Sepuedecambiaraoff paranoañadirnada,o sepuedecambiara EMail . EMail añadiráunaetiquetaHTML mailto:ServerAdmina la líneade firma.

14.2.49 AliasEl comandoAlias permitequehayadirectoriosfueradelDocumentRoot a losquepuedeaccederel servidor. CualquierURL quetermineenun aliasserá automáticamentetraducidopor el recorridodel alias.Pordefecto,ya existeun aliasconfigurado.El servidorpuedeaccederal directorioiconsperoel directorionoestáenDocumentRoot . icons , unalias,estáen/var/www/icons/ , y noen /var/www/html/icons/ .

14.2.50 ScriptAliasEl comandoScriptAlias define dóndepuedenencontrarselosscriptsCGI (u otrosscripts).Nor-malmente,noseponenlosscriptsCGI dentrodeDocumentRoot . Si losscriptsCGI seencontrasenenDocumentRoot , podrían, potencialmente,serconsideradoscomodocumentosdetexto. Inclusosi no preocupaquela gentevea(y use)los scriptsCGI, mostrarcómofuncionancreaoportunidadesa la gentesinescrúpulosquequieraexplotardichosagujerosenel script,y puedecrearunagujerodeseguridadenel servidor. Pordefecto,el directoriocgi-bin esunScriptAlias de/cgi-bin/ ,y seencuentrasituado/var/www/cgi-bin/ .

El directorio/var/www/cgi-bin tieneactivadala directivaOptions ExecCGI , lo queimplicaquesepermitela ejecucióndescriptsCGI enel directorio.

Veala Sección 14.2.65,AddHandler y la Sección 14.2.29,Directory parasabercómoejecutarscriptsCGI enotrosdirectoriosapartedecgi-bin .

14.2.51 RedirectCuandosecambiaunapáginadesitio,el comandoRedirect sepuedeusarparapasardelviejoURLal nuevo URL. El formatoescomosigue:

Page 202: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

202 Capítulo 14:Módulos y directivas de Apache

Redirect / path/foo.html http:// new_domain/ path/foo.html

Así que si se recibe una petición HTTP para un página que solía estar en http://your_do-main/path/foo.html, el servidor devolverá el nuevo URL (http://new_domain/path/foo.html) alcliente,quetratarádecogerel documentodesdeel nuevo URL.

14.2.52 IndexOptions

El comandoIndexOptions controlalaaparienciadeloslistadosgeneradosporelservidor, alañadiriconosy texto descriptivo, etc. Si Options Indexes aparececomoen (véaseSección 14.2.30,Options ),el servidorpodrágenerarel listadodeun directorioal recibir unapetición HTTP comola quesigue:

http://your_domain/this_directory/

Primeroel servidorbuscaenel directorioun ficherode los dela lista deDirectoryIndex (p.ej.,index.html ). Si el servidorno encuentraningunodelos ficheros,generaun listadodel directorioenHTML. Sepuedemodificar la aparienciadellistadoutilizandociertasdirectivasenhttpd.conf ,entrelasqueseencuentraIndexOptions .

La configuración predeterminadaactiva esFancyIndexing . Si seactiva FancyIndexing , alhacerclick en la cabecerade lascolumnasdel listado,el listadoseordenasegúnesacolumna.Otroclick enla mismacabeceracambiaráel ordendeascendentea descendentey viceversa.FancyIn-dexing tambiénmuestradistintosiconosparadistintosficheros,según la extensión. Si seusaladirectivaAddDescription y seactivaFancyIndexing , seañadeunapequeñadescripciónparael ficheroenel listadogenerado.

IndexOptions tieneotrosparámetrosquepuedenactivarseparacontrolarla aparienciadelos lis-tados. Los parámetrosincluyen IconHeight e IconWidth , parahacerqueel servidorincluyaetiquetasHEIGHT y WIDTHparalos iconos;el comandoIconsAreLinks , hacequelos iconosformenpartedel enlaceHTML junto conel nombredel fichero,y otros.

14.2.53 AddIconByEncoding

Estadirectiva denominaqué iconossemostraráncon los archivos segúnsu codificaciónMIME, enlos listadosdedirectorio.Porejemplo,pordefecto,el servidormuestrael iconocompressed.gifjunto a archivosconcodificaciónMIME x-compressy x-gzip enlos listadosdedirectorio.

14.2.54 AddIconByType

Estadirectiva denominaqué iconossemostraráncon los archivos segúnsu codificaciónMIME, enlos listadosdel directorio.Porejemplo,por defecto,el servidormuestrael iconotext.gif junto aarchivoscontipo MIME "text" enlos listadosdel directorio.

Page 203: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 14.2:Directivas de configuración en el fichero ht t pd. conf 203

14.2.55 AddIconAddIcon diceal servidorquéiconomostrarenlos listadosdeldirectorioparaciertostiposdearchi-vossegún la extensión. Porejemplo,el servidormuestrael iconobinary.gif paraarchivosconextensiones.bin o .exe .

14.2.56 DefaultIconEl comandoDefaultIcon nombrael iconodelos listadosdeldirectorioquerecibiránlos ficherossin un iconoespecífico. El ficherodeimagenpredeterminadoparaesosficherosunknown.gif esDefaultIcon .

14.2.57 AddDescriptionSepuedeusarAddDescription paramostrardescripcionesespecíficasde ficherossen los lista-dosdelosdirectorios(habráqueactivar tambiénel FancyIndexing comounaIndexOptions ).Puedeaplicarsea ficherosindividuales,expresionesdenombreo extensionesparaespecificar los fi-cherosa los queaplicarestadirectiva. Porejemplo,podría usarselo siguiente:

AddDescription "A file that ends in .ni" .ni

En los listadosdel directorio,todoslos ficherosconextensión.ni tendránla descripciónUn ar-chivo queterminaen .ni trasel nombre.Nótesequenecesitaactivarseel FancyIndexing .

14.2.58 ReadmeNameLa directivaReadmeNamedeterminael fichero(si existedentrodeldirectorio)queseadjuntaráaloslistadosde los directorios. El servidorintentaráprimeroincluirlo comodocumentoHTML y luegocomotexto. El valor predeterminadodeReadmeNameesREADME.

14.2.59 HeaderNameLa directiva HeaderName dictael fichero(si existedentrodel directorio)queseantepondráal co-mienzode los listadosde los directorios. Al igual queconReadmeName, el servidorintentará in-cluirlo comodocumentoHTML si esposible,o comotexto.

14.2.60 IndexIgnoreEl comandoIndexIgnore lista las extensiones,los nombresde los ficherosparciales,las expre-sionesregulareso los nombrescompletos.El servidorno incluirá los ficherosqueencajenenestospatronesen los listadosdedirectorios.

Page 204: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

204 Capítulo 14:Módulos y directivas de Apache

14.2.61 AddEncodingEl comandoAddEncoding dicequéextensionesespecificanuntipo particulardecodificación.Ad-dEncoding sepuedeusarparadecirlea los navegadores(no a todos)quedescomprimanciertosficherosmientraslos descargan.

14.2.62 AddLanguageLa directiva AddLanguage asociaextensionesa contenidosespecíficosde idiomas. Estadirectivaesútil parala negociacióndecontenidos,cuandoel servidordevuelveunodeentrevariosdocumentossegúnlaspreferenciasde idiomasdel cliente.

14.2.63 LanguagePriorityLa directiva LanguagePriority permitedar la prioridada ciertosficherosendistintosidiomas,queentraránenvigor si el clienteno especifica la preferenciadeidioma.

14.2.64 AddTypeUsela directivaAddType paradefinir parejasdetiposMIME y susextensiones.Porejemplo,si usael PHP4,el servidorestáusandoAddType paraquesereconozcanficheroscon extensionesPHP(.php4 , .php3 , .phtml .php ) comotiposMIME PHP.

La siguientelíneaAddType permiteal servidorreconocerlasextensiones.shtml (parala inclusiónen el servidor):

AddType text/html .shtml

Senecesitarála líneadearribadentrode lasetiquetasdemáquinavirtual paracuandosepermitalainclusióndesdeel servidor.

14.2.65 AddHandlerLa directiva AddHandler mapea y amplia gestoresespecíficos. Por ejemplo, el gestorcgi-script puedeusarsepara hacerque la extensión .cgi automáticamentesea manejadacomoun scriptCGI. Estofunciona,inclusoparaficherosfuerade ScriptAlias , si sesiguenlasinstruccionesdadas.

Hay unalíneaAddHandler CGI enhttpd.conf comola siguiente:

AddHandler cgi-script .cgi

Habráqueanularel comentariodela línea. Así ApacheejecutarácomoscriptsCGI los ficherosqueterminenen .cgi , inclusosi estánfueradeScriptAlias , quepor defectoseencuentraenel di-rectorio/cgi-bin/ en /var/www/cgi-bin/ .

Page 205: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 14.2:Directivas de configuración en el fichero ht t pd. conf 205

TambiénhabráqueactivarExecCGI comoOptions paracualquierdirectorioquecontengascriptsCGI.VeaSección14.2.29,Directory paramásinformaciónsobrecómoconfigurarExecCGI paraundirectorio.Además,habráqueasegurarsequelospermisosseanlosadecuadosparalosscriptsCGIy los subdirectoriosquecontenganscripts. Los scriptsCGI y todoel recorridoqueconducea ellosdebentenerun valorde0755.Finalmente,el dueñodeldirectorioy el del scriptdebenserel mismo.

Habrá queañadirla mismalíneaAddHandler a la configuraciónde VirtualHost , si seusanmáquinasvirtualesy sequierequesereconozcanlos scriptsCGI fueradeScriptAlias .

El servidortambiénusaAddHandler paraprocesarmapasdeimágenesenHTML.

14.2.66 ActionLa directiva Action permiteespecificar un pardetiposdecontenidoMIME y un scriptCGI, detalformaquecuandosepidaun ficherodeestetipo, seejecuteun scriptenparticular.

14.2.67 MetaDirMetaDir especifica el nombredel directoriodondeel servidordeberíabuscarlos ficherosquecon-tenganinformaciónmeta(cabecerasextradeHTTP) quesedebaincluir al entregarlos documentos.

14.2.68 MetaSuffixMetaSuffix especifica el sufijo paralos ficherosquecontieneninformaciónmeta(cabecerasextradeHTTP),queestaránenel directorioMetaDir .

14.2.69 ErrorDocumentPordefecto,encasodeerror, el servidormuestraun mensajedeerror(generalmentecríptico)paraelcliente.Envezdeusarestaopciónyapredeterminada,puedeusarseErrorDocument paradevolverunmensajedeerrorpersonalizadoo redireccionaral clienteaunURL localo remoto.ErrorDocu-ment simplementeasociaun códigoderespuestaHTTP conun mensajeo un URL quesedevolveráal cliente.

14.2.70 BrowserMatchLa directiva BrowserMatch permiteal servidordefinir variablesde entornoy/o tomaraccionessegún seael campode cabeceraUser-Agent,queidentifica al cliente. Por defecto,el servidorusaBrowserMatch paradenegarla conexión anavegadoresconproblemasconocidosy paradesactivar"keepalives"y vaciadosdecabeceradeHTTPparanavegadoresconproblemasdeesascaracterísticas.

14.2.71 LocationLasetiquetas<Location> y </Location> permitencontrolarel accesoespecífico a cadaURL.

Page 206: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

206 Capítulo 14:Módulos y directivas de Apache

El primer usode Location esconfigurar Options y proporcionarguíasextra de configuraciónparaDocumentRoot . Estasdirectivasdeconfiguración,queseencuentrandentrode lasetiquetas<Location "/"> y </Location> , sonnecesariasparapermitirel accesoadocumentosenDo-cumentRoot .

El siguienteusodeLocation esen lasetiquetasIfModule mod_perl.c . Estasdirectivasdeconfiguraciónfuncionansi el DSOmod_perl.so está cargado.Consultela Sección 14.3,Añadirmódulosa suservidorparamásinformaciónsobrecómoañadirmódulosa Apache.

La etiquetaLocation nombrael directorio/var/www/perl (un Alias para/perl ) comoeldirectoriodesdeel cualsesirvenscriptsdePerl. Si sepideun documentoconun URL quecontenga/perl enel recorrido,el servidorbuscará en/var/www/perl/ el scriptdePerlapropiado.

Loscomentariosdeotrasopcionesde<Location> estánenhttpd.conf . Si sequiereactivarsufuncionalidad,senecesitaráanularel comentariodela secciónapropiadadelasdirectivas.

JustotraslasdirectivasdePerldiscutidasanteriormente,httpd.conf incluyeunaseccióndedirec-tivasparaactivarHTTPPUT(p.ej.,publicacióndeNetscapeGold,quepermiteponerpáginaswebenun servidor).Si sequierepermitirHTTPPUT, habráqueanularel comentariodela secciónentera:

#LoadModule put_module modules/mod_put.so#AddModule mod_put.c##Alias /upload /tmp#<Location /upload># EnablePut On# AuthType Basic# AuthName Temporary# AuthUserFile /etc/httpd/conf/passwd# EnableDelete Off# umask 007# <Limit PUT># require valid-user# </Limit>#</Location>

Si sequierequelas conexionesdesdedentrodel mismodominio tenganaccesoa los informesdeestado,sedebeanularel comentariodela siguientesección dedirectivas:

#<Location /server-status># SetHandler server-status# Order deny,allow# Deny from all# Allow from .your_domain.com#</Location>

Page 207: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 14.2:Directivas de configuración en el fichero ht t pd. conf 207

Hay queponerel segundonivel del nombrededominioenvezde .your_domain.com .

Si sequieredarinformesdeconfiguracióndelservidor(incluyendomódulosinstaladosy directivasdeconfiguración)o peticionesdesdedentrodeldominio,habráqueanularel comentariodelassiguienteslíneas:

#<Location /server-info># SetHandler server-info# Order deny,allow# Deny from all# Allow from .your_domain.com#</Location>

Hay, por supuesto,querellenar.your_domain.com .

LasiguienteseccióndedirectivasusalasetiquetasLocation parapermitirelaccesoaladocumenta-ción en /usr/share/doc (p.ej,conun URL comohttp://your_domain/doc/whatever.html). Estasdirectivassólopermitenel accesoa peticionesdesdela mismamáquina.

Otro usodelasetiquetasLocation esunaseccióncomentada,pensadapararastrearataquesal ser-vidor explotandoun viejo fallo delos díasdepre-Apache1.1. Si sequierenrastrearestaspeticiones,anuleel comentariode lassiguienteslíneas:

#<Location /cgi-bin/phf*># Deny from all# ErrorDocument 403 http://phf.apache.org/phf_abuse_log.cgi#</Location>

Si estaslíneasno estáncomentadas,el servidormandarácualquierpeticiónquetermineen /cgi-bin/phf* a un CGI quehacelog del GrupoApache.

14.2.72 ProxyRequests

Si seanulael comentariode la directiva IfModule alrededordel ProxyRequests , el servidorApachetambiénfuncionarácomoproxy. Tambiénhabrá quecargar el módulo mod_proxy . Paramásinformaciónsobrecómocargarmódulos,veala Sección 14.3,Añadir módulosa suservidor.

14.2.73 ProxyVia

La directiva ProxyVia controlasi seenvía HTTP Via: junto conpeticioneso respuestasquevayanvía el servidorproxy Apache.Via: headermostraráel nombredela máquinasi ProxyVia apareceenOn, el nombredemáquinay la versióndeApacheparaFull , y cualquierlíneaVia: seenviarásincambiarsi estáProxyVia estáenOff , y laslíneasVia: seráneliminadassi estáenBlock .

Page 208: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

208 Capítulo 14:Módulos y directivas de Apache

14.2.74 Directiv as de cachéHay variasdirectivasde cachéen las etiquetasde proxy IfModule mencionadasantes.Si seusala funcionalidadproxy y sequierehabilitar el cachéproxy, habráqueanularel comentariode lasdirectivassegúnsedescribe.Los valorespredeterminadode lasdirectivasde cachédeberíanbastarparala mayoríade lasconfiguraciones.

CacheRoot poneel nombredeldirectorioquecontieneficherosdecaché.El valor predeterminadodeCacheRoot es/var/cache/httpd .

CacheSize establececuántoespaciopuedeusarel caché,enKB. El valor predeterminadodeCa-cheSize es5 KB.

CacheGcInterval estableceel númerode horas. Trasesenúmeroseborraránlos ficherosdecachési ocupanmásdelo permitidoporCacheSize . El valorpordefectodeCacheGcIntervalescuatrohoras.

LosdocumentosHTML encachéseguardarán(sinunarecargadesdeel servidordeorigen)duranteelnúmeromáximodehorasestablecidoporCacheMaxExpire . El valorpredeterminadoes24 horas.

CacheLastModifiedFactor afectaa la fechadecaducidadparadocumentosquenoveníanconcaducidaddesdeel servidordeorigen.El valorpredeterminadodeCacheLastModifiedFactores0.1 , lo quesignifica quela caducidaddel documentoserá un décimodel tiempototal desdequesemodificó el documentopor última vez.

CacheDefaultExpire esla caducidadenhorasparadocumentosrecibidosvíaprotocolosquenosoportanla caducidad.El valor predeterminadoesdeunahora.

Tododocumentoqueprovengadeunamáquinay/o deundominioqueencajeenNoCache nosepon-dráencaché.Si conocemáquinaso dominiosenlosquenosequierahacercachédesusdocumentos,anuleel comentariodela directiva NoCache e introduzcadominiosy nombresaquí.

14.2.75 NameVirtualHostNecesitaráusarla directiva NameVirtualHost parala direcciónIP (y númerodepuertosi esne-cesario)dealgúnnombredemáquinasvirtualesqueestéestableciendo.La configuraciónbasadaenmáquinasvirtualesseusaparaestablecermáquinasvirtualesparadiferentesdominios,peronotiene(onousa)diferentesdireccionesIP paratodoslosdominiosaloscualessuWebServersirvedocumentos

Page 209: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 14.2:Directivas de configuración en el fichero ht t pd. conf 209

NotaNo puedeusarnombresbasadosen máquinasvirtualescon su servidorse-guro.Algunosnombresbasadosenmáquinasvirtualesqueestablezcatraba-jaránsóloconconexionesHTTP no segurasy no conconexionesSSL.

No puedeusarnombresbasadosen máquinasvirtualescon su servidorse-guro porqueel acuerdoSSL (cuandoel navegadoraceptael certificadodeautenticación de Web seguro) vieneantesde la peticionHTTP con la cualidentificael nombrecorrectodelasmáquinasvirtuales.Enotraspalabras,laautenticaciónvieneantesde la identificaciónde lasmáquinasvirtuales. Siquiereusarmáquinasvirtualesconsuservidorseguronecesitaráusardirec-cionesIP basadasenmáquinasvirtuales.

Si estáusandonombresbasadosenmáquinasvirtuales,comentela directivaNameVirtualHost yañadala direcciónIP correctaparasuservidordespuésdel NameVirtualHost . Entoncesañadamásinformación sobrelos diferentesdominiosusandoel comandoVirtualMachine el cualen-vuelveel ServerName paracadamáquinavirtual,másalgunasotrasdirectivasdeconfiguraciónquesonsóloaplicablesa la máquinavirtual.

14.2.76 VirtualHost<VirtualHost> y </VirtualHost> envuelvendirectivasdeconfiguraciónqueseaplicanamá-quinasvirtuales.La mayoríadelasdirectivasdeconfiguraciónpuedenusarseenetiquetasdemáquinavirtual, y sóloseaplicarána esamáquinavirtual.

ExistenvariasetiquetasVirtualHost querodeanaalgunosmodelosdedirectivasdeconfiguraciónasícomodeespaciosenblancoquetendrá querellenarconinformación paraconfigurar la máquinavirtual. Consultela Sección 14.4,Utilización demáquinasvirtuales, parasabermássobremáquinasvirtuales.

14.2.77 SetEnvIfLadirectivadeconfiguracióndeApacheSetEnvIf seusaparadesactivarHTTPkeepalivey permitira SSLcerrarlasconexionessin avisardesdeel cliente.Esteparámetroesnecesarioparaclientesqueno cierranbien la conexión SSL.

14.2.78 Directiv as de configuraci ón SSLSehanincluídolasdirectivasSSLensuficherodeservidoreshttpd.conf parapermitir comuni-cacionessegurasWebusandolasdirectivasSSLy TLS.

Page 210: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

210 Capítulo 14:Módulos y directivas de Apache

Para más información sobredirectivas SSl consulte: http://your_domain/manual/mod/mod_ssl/otambién: http://www.modssl.org/docs/2.6/ssl_reference.html/,uncapítuloen un documentoWebsobremod_sslpor Ralf Engelschall. El mismo documento,el mod_sslUser Manual, comienzaen http://www.modssl.org/docs/2.7/y es una estupendareferenciapara mod_ssl (of course)yparacriptografíaweb en general. Estemanualda información generalsobresu servidorseguro seencuentraenCapítulo 13, UsodeApachecomoservidorWebseguro.

NotaNo modifiquesusdirectivasSSla menosqueestécompletamentesegurodelo queestáhaciendo.Parala mayoríadelossecureWebserver, lasdirectivasSSLestánconfiguradase instaladasapropiadamente.

14.3 Añadir módulos a su servidorDebidoa queApache1.3 soportaDSOs,puedefácilmentecargar módulosApacheo compilarsuspropiosmódulosparasu secureWeb server. DSO significa quesepuedencargar los módulosentiempodeejecución.Debidoaquelosmódulossecargansólocuandoesnecesarionousanlamemoriahastaquela necesitan.

El grupoApacheda informacióncompletaen http://www.apache.org/docs/dso.html.Despuésde lainstalaciónconsultetambiénhttp://your_domain/manual/mod/dondeencontrarála documentaciónenformatoHTML (si hainstaladoelpaqueteapache-manual ). Sedaunarápidadescripcióndecómocargarlos módulos,perosi necesitamásdetalles,consultelos URLs dados.

Paraquesu secureWeb server useun módulodinámicamentecompartido,estemódulodebetenerunalíneaLoadModule y otraAddModule enhttpd.conf . Muchosmódulostienenyaestasdoslíneasqueestán incluídasen httpd.conf , peroalgunosde los menoscomunmenteusadosestáncomentadosfuera.Los móduloscomentadosfuera,seincluyerondurantela compilación,perono secargaron.

Si necesitausarunodeestosmódulosno cargados,mire enel ficherohttpd.conf paraver todoslosmódulosposibles.CadaunodeestosmódulostieneunalíneaLoadModule . Paraverunejemplo,la secciónLoadModule comienzaconestassietelíneas:

#LoadModule mmap_static_module modules/mod_mmap_static.soLoadModule vhost_alias_module modules/mod_vhost_alias.soLoadModule env_module modules/mod_env.soLoadModule config_log_module modules/mod_log_config.soLoadModule agent_log_module modules/mod_log_agent.soLoadModule referer_log_module modules/mod_log_referer.so#LoadModule mime_magic_module modules/mod_mime_magic.so

Page 211: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 14.3:Añadir módulos a su servidor 211

Muchasdeestaslíneasno estáncomentadaslo quequieredecirquecadamóduloasociadoestácom-piladodentroy cargadopordefecto.La primeralíneaestácomentada,lo cualsignificaquesecompilóperono secargó el correspondientemódulo(mmap_static_module ).

Paraquesu secureWeb server cargueun módulo no cargado,primeroescribano-comentadaen lacorrespondientelínea LoadModule . Por ejemplo,si quierequesu secureWeb server cargue elmime_magic_module , cambiela líneaLoadModule del original:

#LoadModule mime_magic_module modules/mod_mime_magic.so

No comentela líneaprevia paraquesepuedaleer:

LoadModule mime_magic_module modules/mod_mime_magic.so

Después,elimine el comentariode la correspondientelínea desdela secciónAddModule en elhttpd.conf . Paracontinuarconnuestroejemplo,quiteel comentariodela líneamod_mime_ma-gic . La líneaoriginal separeceráa la siguiente:

#AddModule mod_mime_magic.c

La líneasin comentarioserá así:

AddModule mod_mime_magic.c

Una vez queha anuladoel comentariode las líneasLoadModule y AddModule parael móduloquequierecargar, parey reinicialicesuWeb Server, consultela Sección 14.1,Arranquey apagadodelhttpd. Despuésdearrancar, el módulosecargaráensusecureWebserver.

Si tienesupropiomódulo,puedeañadirloal ficherohttpd.conf y asísecompilay secargacomounDSO.Siquierellevaracaboestaoperación,necesitainstalarelpaqueteapache-devel , consulteel Capítulo 13, UsodeApachecomoservidorWebseguro. Necesitaestepaqueteapache-develporqueinstalael ficheroinclude,los ficheroscabecerasy el soportedeherramientasAPacheeXten-Sion(APXS). APXS usalos ficherosincludey los ficheroscabeceraparacompilarsumóduloy asípodertrabajarconApache.

Page 212: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

212 Capítulo 14:Módulos y directivas de Apache

ADVERTENCIA�

Si deseausar la Herramienta de configuración de Apac he, una util-dad GUI queseincluye en el paqueteRed Hat Linux, no debecompilarsuspropios módulos con su servidor Apacheo modificar el fichero deconfiguración del servidor httpd.conf . Si deseaañadir módulos omodificar el fichero httpd.conf a mano, no usela Herramienta deconfiguración de Apac he. Si necesitamás información sobre dichaherramienta consulte la versión españolade la Official RedHat LinuxCustomizationGuide.

Sihaescritosupropiomódulooharevisadoalgunosmás,podráusarAPXSparacompilarsusmódulosfuentesfueradel árbol fuenteApache,sin necesitarningúnindicadordel compiladory/o del creadordeenlaces.Si necesitamásinformaciónsobreAPXSconsultela documentaciónen http://www.apa-che.org/docs/dso.html.

UnavezcompiladossusmódulossusandoAPXS,situélosdentrode/usr/lib/apache . EntoncessumódulonecesitaambaslíneasLoadModule , AddModule enel ficherohttpd.conf , comosedescribeparalosmódulosdeApache.Despuésenla listaLoadModule enel httpd.conf , añadaunalíneaparael ficheroobjetocompartidoparael módulocomola siguiente:

LoadModule foo_module modules/mod_foo.so

Observe quenecesitarácambiarel nombredel móduloy el nombredesu ficheroobjetocompartidoapropiadamente.

Al final dela lista, la directivaAddModule enhttpd.conf , añadeunalíneaal ficherodel códigofuenteparasumódulocomola siguiente:

AddModule mod_foo.c

Observe quenecesitarácambiarel nombredel ficherodel códigofuenteapropiadamente.

Unavezquehayacompletadolos pasosprevios, parey reinicialicesuservidorWebcomoseindicaen la Sección 14.1,Arranquey apagadodel httpd. Si ha hechotodocorrectamente,y sumóduloestácorrectamentecodificado,suservidorWebencontrará sumóduloy lo cargará.

Page 213: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 14.4:Utilización de máquinas virtuales 213

14.3.1 El módulo de segur didad mod_sslLa porción de seguridadmod_ssldel secureWeb server se consideraun Dynamic SharedObject(DSO).Estoquieredecir quelos usuariosopuedenrecompilarel servidorWeb Apachesi la exten-siónEAPI corregidadesdeel módulodeseguridadmod_sslseaplicaa Apache.Sigualasinstruccio-nesparaconstruirel mod_sslenel servidorApachequeseencuentranenla documentaciónsobreelmod_sslperodebeañadirel siguienteindicador:

--with-eapi-only

La líneadecomandoscompletadebeparecersea esto:

./configure [userflags] --with-eapi-only

Entoncesconstruyae instaleApache.

NotaRedHat no soportalas versionesrecompiladasdel servidorWeb Apache.Sesoportala instalaciónde lasversionesenviadas,perosi deciderecompi-lar ustedmismoel servidorApache,lo tendráquehacersolo,sin el soportetécnico.Serecomiendaqueno recompileApachea menosquesepaexacta-mentelo queestáhaciendo.

14.4 Utilización de máquinas vir tuales

ADVERTENCIA

Si deseausar la Herramienta de configuración Apac he, una utilidadGUI que incluye el paquetede Red Hat Linux, no cambieel fichero deconfiguración httpd.conf de suservidor Apache.Por el contrario, silo deseahacer a mano,no utilice dicha herramienta.

Si deseamás información sobre la Herramienta de configuraciónApac he, consulte la versión españolade la Official Red Hat LinuxCustomizationGuide.

Page 214: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

214 Capítulo 14:Módulos y directivas de Apache

Sepuedeutilizar lacapacidaddelasmáquinasvirtualesdeApacheparaejecutarservidoresendistintasdireccionesIP, diferentesnombreso diferentespuertosen la mismamáquina.Si estáinteresadoenutilizar máquinasvirtuales,puedeencontrartodala informaciónenla documentacióndeApacheenelsitio http://www.apache.org/docs/vhosts/.

Nota

El secureWebservernoadmiteusarmáquinasvirtualesqueesténbasadasenelnombreporqueelacuerdoSSL(cuandoel clienteaceptael certificadoSSLdel servidor)ocurreantesdela peticiónHTTP queidentifica por el nombrea la máquinavirtual apropiada.Si sequierenutilizar estetipo demáquinasvirtuales,lo podrá hacersóloconservidoresno seguros.

Lasmáquinasvirtualesseconfiguranenhttpd.conf , segúnsedescribeenSección14.2,Directivasdeconfiguraciónenel fichero httpd.conf. Porfavor, leaestasecciónantesdeempezaracambiarla configuracióndelasmáquinasvirtualesdel servidor.

14.4.1 Máquina vir tual de secure Web serverLa configuraciónpredeterminadadesecureWebserverseejecutaenservidoressegurosy noseguros.Ambosservidoresusanla mismadirecciónIP y nombre,perodiferentespuertos,y el servidorseguroesunamáquinavirtual. Estaconfiguraciónpermiteentregardocumentossegurosy no segurosde lamaneramáseficienteposible.Comoyasabrá lastransferenciassegurasHTTPllevanmástiempoquelas no seguras,ya quesepasamuchainformaciónextra durantelas transaccionesseguras. Así queutilizar el servidorseguroparatráfico no segurono esunabuenaidea.

Las directivasde configuracióndel servidorseguro estánen las etiquetasde la máquinavirtual enhttpd.conf . Si senecesitacambiarla configuracióndel servidorseguro,habráquecambiarlasdirectivasqueseencuentranen las etiquetasde la máquinavirtual en httpd.conf . Si sequiereactivarciertascaracterísticas(porejemplo,inclusiónenel servidor)parael servidorseguro,habráqueactivarlasenlasetiquetasdela máquinavirtual quedefinenel servidorseguro.

El servidorno seguroestáconfiguradocomola máquina"no virtual" enhttpd.conf . Enotraspa-labras,lasopcionesdeconfiguracióndelservidornoseguroestánfueradelasetiquetasdela máquinavirtual. Si sequierecambiarla configuracióndelservidornoseguro,habráquecambiarlasdirectivasdeconfiguraciónenhttpd.conf .

Pordefecto,los servidoressegurosy no seguroscompartenel mismoDocumentRoot , directiva deconfiguraciónespecificadaenhttpd.conf . En otraspalabras,los servidoresbuscanenel mismositio los ficherosqueproporcionancomorespuestaa laspeticiones.El valor predeterminadodeDo-cumentRoot es/var/www/html .

Page 215: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección 14.4:Utilización de máquinas virtuales 215

ParacambiarDocumentRoot , detal formaqueno lo compartanel servidorseguroy el no seguro,cambieuna de las directivas DocumentRoot en httpd.conf . La directiva DocumentRootfuerade lasetiquetasde la máquinavirtual define la directiva DocumentRoot parael servidornoseguro. Así mismola directiva DocumentRoot dentrodelasetiquetasdela máquinavirtual la de-fine parael servidorseguro.

Si poralgunarazónsequieredesactivarel servidornoseguro,puedehacerlo.El servidorsegurousaelpuerto443,puertopor defectoparacomunicacioneswebseguras,mientrasqueel servidorno segurousael puerto80, el puertopredeterminadoparalascomunicacionesweb. Paraevitar queel servidorno seguroacepteconexiones,busquela líneasiguienteenhttpd.conf :

Port 80

Cambiela línea:

Port 443

Anule el comentariodela líneaListen 80 , paraqueenvezde:

Listen 80

diga:

#Listen 80

Trasestosdospasos,secureWebserver aceptarálasconexionesenel puerto443,el puertopredeter-minadoparalascomunicacionessegurasy noenel puerto80,queesparacomunicacionesnoseguras,detal formaqueel servidorno seguroestarádesactivado.

14.4.2 Configuración de las máquinas vir tualesLa mayoríadelosusuariosutilizarásecureWebserver tal y comovieneconfigurado.Porello, usaránla capacidadintrínsecadelasmáquinasvirtuales,perono tocaránlasdirectivasdelasmáquinasvir-tualesqueseencuentranenel ficherodeconfiguraciónhttpd.conf . Sinembargo,si quiereusarlacapacidaddelasmáquinasvirtualespor algunaotrarazón, lo puedehacer.

Paracrearunamáquinavirtual, habráquealterarlaslíneasdela máquinavirtual dadascomoejemploenhttpd.conf , o crearunaseccióndemáquinasvirtuales.(Recuérdesequelasmáquinasvirtualesbasadasen el nombreno funcionanconel servidorseguro— habráqueutilizar máquinasvirtualesbasadasen la direcciónIP si sequierenobtenermáquinasvirtualescon SSL activo. El servidornoseguro,sin embargo,soportamáquinasvirtualesbasadasenel nombrey enla direcciónIP.)

Laslíneaswuesirvendeejemplodeunamáquinavirtual sonlassiguientes:

#<VirtualHost ip.address.of.host.some_domain.com># ServerAdmin [email protected]_domain.com# DocumentRoot /www/docs/host.some_domain.com# ServerName host.some_domain.com

Page 216: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

216 Capítulo 14:Módulos y directivas de Apache

# ErrorLog logs/host.some_domain.com-error_log# CustomLog logs/host.some_domain.com-access_log common#</VirtualHost>

Anule el comentariodelas líneas(elimínese# al comienzodecadalínea). Añadaentoncesla infor-macióncorrectaparala máquinay/o máquinavirtual a cadalínea.

En la primeralínea,cambieip.address.of.host.some_domain.com por la direcciónIPdel servidor. CambieServerName por un nombreDNS válido parala máquinavirtual. (En otraspalabras,no bastaconinventaralgo. Pregunteal administradorderedsi no sabecómoconseguir unnombrededominioválido.)

Tambiénhabráqueanularel comentariodelaslíneasNameVirtualHost enhttpd.conf :

#NameVirtualHost 12.34.56.78:80#NameVirtualHost 12.34.56.78

Anule el comentariode unade las líneasy cambiela direcciónIP por la dirección(y puertosi esnecesario)paraesamáquinavirtual.

Sepuedenponerenlasetiquetasotrasdirectivasdeconfiguraciónparalamáquinavirtual, segúncómoseconfigure ésta.

Si seconfiguraunamáquinavirtual paraescucharenun puertono habitual(80 esel valor predeter-minadoparacomunicacionesnosegurasy 443esel defectoparacomunicacionesseguras),habráqueconfigurarunamáquinavirtual parael puertoy añadirla directiva Listen httpd.conf , corres-pondientea esepuerto.

Paratenerunamáquinavirtual específica paraesepuerto,añadael puertoa la primeralíneade laconfiguración dela máquinavirtual. La primeralíneadeberíaparecersea lo siguiente:

<VirtualHost ip_address_of_your_server:12331>

Estalíneacrearíaunamáquinavirtual enel puerto12331.Sustituya12331 por el puertoquedeseausarenel ejemploanterior.

En laslíneasListen dehttpd.conf , añadalo siguienteparaqueel servidorescucheenel puerto12331:

Listen 12331

Hay querearrancarel servidorparainiciar unanueva máquinavirtual.

Podrá encontrarinformaciónmuchomáscompletasobrecómocreary configurarmáquinasvirtualessegúnel nombrey la direcciónIP enla páginaweben http://www.apache.org/docs/vhosts/index.html.Veala páginadelGrupoApachesobremáquinasvirtualesparamásdetallessobreel usodemáquinasvirtuales.

Page 217: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Parte IV Apéndices

Page 218: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la
Page 219: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Parámetros generales y módulos 219

A Parámetr os generales y módulosEsteapéndiceilustraalgunosde los posiblesparámetrosquepodríansernecesariosparaconfiguraralgunoscontroladores1paradeterminadosdispositivoshardware.En la mayoríadecasos,estospará-metrosadicionalessoninnecesarios,si el kernelescapazdeusarel dispositivo por sucuenta.Utilicelasconfiguracionesproporcionadasen esteapéndicesi tieneproblemasparahacerqueRedHat Li-nuxutilice undispositivo determinadoo si necesitasobreescribirlosparámetrospredeterminadosdelsistemaparael dispositivo.

Durantela instalacióndeRedHatLinux, seestablecendeterminadoslímitesal sistemadeficherosy aotroscontroladoressoportadosporel kernel.Sinembargo,despuésdela instalaciónseproporcionaelsoportea todoslos sistemasdeficherosaccesiblesdesdeLinux. Durantela instalaciónel kernelmo-dularproporcionasoportea losdispositivos(E)IDE (incluidoslosCDROMsATAPI), losadaptadoresSCSIy tarjetasdered.

Nota

DadoqueRedHatLinux soportala instalaciónendiversasplataformashard-ware,algunoscontroladores(incluyendoaquéllosparalosadaptadoresSCSI,tarjetasderedy algunosCDROMs)nosoncompiladosenel interiordelker-nel deLinux utilizadodurantela fasedeinstalación, peroestándisponiblescomomódulosy sondescargadoscuandohacenfalta. Si fuesenecesario,tienela posibilidaddeespecificar lasopcionesparaestosmódulosenel mo-mentoenquesecarguen.

Paraespecificar los parámetrosdemóduloscuandosecargaun controlador, tecleelinux experten el indicadorde comandosboot: e inserteel discode controladorescuandosele indiqueen elprogramade instalación. Trashaberleído el discode controladores,el programade instalaciónlepediráqueseleccioneel tipo de dispositivo queestáconfigurando.A continuación,el programadeinstalaciónvisualizaráunapantalladondepuedeescribirlos parámetroscorrectosbasadosenel tipodeterminadodedispositivo queestáconfigurando.

Unavezcompletadala instalaciónpodríaquerervolveracompilarel kernelparaincluir el soporteasuconfiguraciónhardwareespecífica. Observequeenla mayoríadeloscasos,noesnecesariounkernelpersonalizado.Consultela Official RedHat Linux CustomizationGuideparaobtenerinformaciónsobrecómoconstruirun kernelpersonalizado.

1 Un controlador/dri ver esun tipo desoftwarequeayudaa susistemausarun determinadodispositivo hard-ware.Sin el controlador, el kernelno sabríacómoutilizar estedispositivo correctamente.

Page 220: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

220 Apéndice A:Parámetros generales y módulos

A.1 Especificación de los parámetr os del móduloSi ha proporcionadoparámetrosla descarga de un módulo,podráespecificarlosusandouno o dosmétodosdiferentes:

• Especifique un set completo de parámetrosen una frase. Por ejemplo, el parámetrocdu31=0x340,0 podríaserutilizadoconun CDU 31 deSony enel puerto340sin IRQ.

• Especifique los parámetrosindividualmente.Estemétodoseusacuandono sonnecesariosunoo másparámetrosen el primer grupo. Por ejemplo,cdu31_port=0x340 cdu31a_irq=0puedeserusadocomoelparámetroparaelmismoCD-ROM usadocomounejemploparaelprimermétodo.El OK seusaenlastablasdeCD-ROM, SCSIy Ethernetenesteapéndiceparamostrarel puntoenel queel primermétododeparámetrossedetieney el segundométodoempieza.

NotaUtilice sólounmétodoy noambos,cuandocargueunmóduloconparámetrosen particular.

ATENCION�

Cuandoun parámetrotienecomas,asegúresedequeno dejaun espaciotrasunacoma.

A.2 Parámetr os del módulo para el CD-ROM

NotaNo todaslas unidadesde CD-ROM listadassonsoportadas.Controleparamásseguridadla listadelascompatibilidadesenel sitio WebdeRedHat enla dirección http://hardware.redhat.comparaasegurarsedequela unidaddeCD-ROM essoportada.

Aunquelos parámetrossonespecificadostrascargar el discode controladoresy especificar el dis-positivo, unodelos parámetrosmáscomunmenteusados(hdX=cdrom ) puedeserintroducidoenelindicadordecomandosdearranque(boot: ) durantela instalación.Estaexcepcióna la reglaesper-mitida porquetrataconel soporteparalos CD-ROMs IDE/ATAPI, queformanpartedel kernel.

Page 221: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección A.2:Parámetros del módulo para el CD-ROM 221

En las tablasquesedetallanmásabajo,muchosmódulossonenumeradossin parámetrosporque,osoncapacesdeefectuarautomáticamenteun controlo bienle pidenquemodifiquemanualmentelosparámetrosenel códigofuentedel móduloy quedespuésrecompile.

Tabla A–1 Parámetr os Hardware

Hardware Módulo Parámetr os

Unidadesde CD-ROMATAPI/IDE

hdX=cdrom

AztechCD268-01A,OrchidCD-3110,Okano/WearnesCDD110, ConradTXC,CyCDROM CR520,CyCDROM CR540(non-IDE)

aztcd.o aztcd=io_port

Sony CDU-31A CD-ROM cdu31a.o cdu31a=io_port,IRQ ORcdu31a_port=base_addrcdu31a_irq=irq

Unidad de CDROMPhilips/LMS CDROM 206contarjetadeadaptadorhostcm260

cm206.o cm206=io_port,IRQ

GoldstarR420CD-ROM gscd.o gscd=io_port

InterfazCD-ROM detarjetade sonidoISP16,MAD16,o Mozart (OPTi 82C928yOPTi 82C929)con lectorSanyo/Panasonic,Sony oMitsumi

isp16.o isp16=io_port,IRQ,dma, drive_typeOR isp16_cdrom_base=io_portisp16_cdrom_irq=IRQisp16_cdrom_dma=dmaisp16_cdrom_type=drive_type

CD-ROM Mitsumi, estándar mcd.o mcd=io_port,IRQ

CD-ROM Mitsumi,experimental

mcdx.o mcdx=io_port_1,IRQ_1,io_port_n,IRQ_n

Lector de CD-ROM dememorizaciónóptica8000AT "Dolphin", LasermateCR328A

optcd.o

Page 222: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

222 Apéndice A:Parámetros generales y módulos

Hardware Módulo Parámetr os

CD-ROM IDE de puertaparalela

pcd.o

Tarjetaaudiocompatible16Compatible

sbpcd.o sbpcd=io_port

CDR-H94ASanyo sjcd.o sjcd=io_port ORsjcd_base=io_port

Sony CDU-535 & 531(unidadesProcomm)

sonycd535.o sonycd535=io_port

A continuaciónle mostramosalgunosejemplos:

Tabla A–2 Ejemplo de configuración para los parámetr os hardware

Configuraci ón Ejemplo

CD-ROM deATAPI, puenteadocomomaestroenel segundocanalIDE

hdc=cdrom

CD-ROM Mitsumi no IDE enel puerto340,IRQ 11

mcd=0x340,11

TreslectoresdeCD-ROM Mitsumi no IDEqueutilizan el controladorexperimental,enlospuertos300,304y 320conIRQs5, 10 y 11

mcdx=0x300,5,0x304,10,0x320,11

CDU Sony 31 o 33 enel puerto340,no IRQ cdu31=0x340,0OR cdu31_port=0x340cdu31a_irq=0

CD-ROM Aztechenel puerto220 aztcd=0x220

CD-ROM detipo PanasonicenunainterfazSoundBlasterenel puerto230

sbpcd=0x230,1

Phillips/LMS cm206andcm260at IO 340andIRQ 11

cm206=0x340,11

GoldstarR420at IO 300 gscd=0x300

Lector Mitsumi en unatarjetade sonidoMAD16 enIOAddr 330y IRQ 1, probingDMA

isp16=0x330,11,0,Mitsumi

Sony CDU 531enla dirección IO 320 sonycd535=0x320

Page 223: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección A.3:Parámetros SCSI 223

Nota

La mayoríadetarjetasSoundBlastertienenunainterfazIDE. Paraestastar-jetas,noesnecesarioutilizar losparámetrossbpcd , utilice sólolosparáme-tros hdx .

A.3 Parámetr os SCSITabla A–3 Parámetr os SCSI

Hardware Módulo Parámetr os

Controladordealmacenamientode3ware

3w-xxxx.o

NCR53c810/820/720,NCR53c700/710/700-66

53c7,8xx.o

Driver AM53/79C974(PC-SCSI)Driver

AM53C974.o

CasitodaslastarjetasBuslogic(actualmenteMylex) connúmero"BT"

BusLogic.o BusLogic_Options=op-tion,option,…

ControladorRAID MylexDAC960

DAC960.o

SCSIbasadoenMCR53c406a NCR53c406a.o

Initio INI-9100UW a100u2w.o a100u2w=io,IRQ,scsi_id

AdaptecAACRAID aacraid.o

TarjetasSCSI advansys.o

AdaptecAHA-152x aha152x.o aha152x=io,IRQ,scsi_id

AdaptecAHA 154x amd631x-based

aha1542.o

AdaptecAHA 1740 aha1740.o

Page 224: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

224 Apéndice A:Parámetros generales y módulos

Hardware Módulo Parámetr os

AdaptecAHA-274x,AHA-284x, AHA-29xx,AHA-394x, AHA-398x,AHA-274x, AHA-274xT,AHA-2842, AHA-2910B,AHA-2920C,AHA-2930/U/U2,AHA-2940/W/U/UW/AU/,U2W/U2/U2B/, U2BOEM,AHA-2944D/WD/UD/UWD,AHA-2950U2/W/B,AHA-3940/U/W/UW/,AUW/U2W/U2B, AHA-3950U2D,AHA-3985/U/W/UW,AIC-777x, AIC-785x,AIC-786x,AIC-787x,AIC-788x, AIC-789x,AIC-3860

aic7xxx.o aic7xxx=string

ControladorSCSIACARDATP870UPCI

atp870u.o

ControladorCompaqSmartArray 5300

cciss.o

ControladorRAID CompaqSmart/2

cpqarray.o

ControladorCompaqFibreChannel

cpqfc.o

Domex DMX3191D dmx3191d.o

Data TechnologyCorpDTC3180/3280

dtc.o

Page 225: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección A.3:Parámetros SCSI 225

Hardware Módulo Parámetr os

DTP SCSI hostadapters(EATA/DMA) PM2011B/9XISA, PM2021A/9X ISA,PM2012A, PM2012B,PM2022A/9X EISA,PM2122A/9X,PM2322A/9X,SmartRAIDPM3021,PM3222,PM3224

eata.o eata=port0,port1,port2,…options OR eataio_port=port0,port1,port2,…option=value

DTP SCSIAdaptersPM2011,PM2021,PM2041,PM3021,PM2012B,PM2022,PM2122,PM2322,PM2042,PM3122,PM3222,PM3332,PM2024,PM2124,PM2044,PM2144,PM3224,PM3334

eata_dma.o

DTP EATA-PIO boards eata_pio.o

SunEnterpriseNetwork Array(FC-AL)

fcal.o

FutureDomainTMC-16xxSCSI fdomain.o

NCR5380(genericdriver) g_NCR5380.o

ControladorRAID ICP gdth.o

ControladordebloqueI2O i2o_block.o

AdaptadorSCSIen puertoparaleloIOMEGA MatchMaker

imm.o

TarjetaSCSI ISA AlwaysIN2000

in2000.o in2000=setup_string:valueOin2000setup_string=value

AdaptadoresdehostSCSIInitioINI-9X00U/UW

initio.o

ServeRAID IBM ips.o

AMI MegaRAID 418,428,438,466,762

megaraid.o

Page 226: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

226 Apéndice A:Parámetros generales y módulos

Hardware Módulo Parámetr os

ControladoresSCSIINCRcon chipsets810/810A/815/825/825A/860/875/876/895

ncr53c8xx.o ncr53c8xx=option1:va-lue1,option2:value2,… ORncr53c8xx="option1:value1option2:value2…"

ProAudio Spectrum/Studio16 pas16.o

PCI-2000IntelliCache pci2000.o

RAID PCI-2220IEIDE pci2220i.o

Array SparcSTORAGE pluto.o

Adaptadorde hostSCSIenpuertoparaleloIOMEGA PPA3

ppa.o

Perceptive SolutionsPSI-240IEIDE

psi240i.o

Qlogic 1280 qla1280.o

Qlogic 2x00 qla2x00.o

QLogic FastSCSIFASXXXISA/VLB/PCMCIA

qlogicfas.o

QLogic ISP2100SCSI-FCP qlogicfc.o

TarjetasSCSIQLogic ISP1020Intelligent IQ-PCI, IQ-PCI-10,IQ-PCI-D

qlogicisp.o

Qlogic ISP1020SCSISBUS qlogicpti.o

SeagateST-01/02,FutureDomainTMC-8xx

seagate.o

FutureDomainTMC-885,TMC-950

seagate.o controller_type=2base_address=base_addrirq=IRQ

Tarjetascon el chipsetsym53c416

sym53c416.o sym53c416=PORTBASE,[IRQ]ORsym53c416io=PORTBASEirq=IRQ

Page 227: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección A.4:Parámetros Ethernet 227

Hardware Módulo Parámetr os

AdaptadordehostSCSITrantorT128/T128F/T228

t128.o

TekramDC-390(T)PCI tmscsim.o

UltraStor14F/34F(not 24F) u14-34f.o

UltraStor14F, 24Fy 34F ultrastor.o

SeriesWD7000 wd7000.o

Le mostramosalgunosejemplossobrela utilizacióndeestosparámetros:

Tabla A–4 Ejemplos de configuración de parámetr os SCSIConfiguración Ejemplo

AdaptecAHA1522 at port 330,IRQ 11,SCSIID 7

aha152x=0x330,11,7

AdaptecAHA1542 enel puerto330 bases=0x330

FutureDomainTMC-800at CA000,IRQ 10 controller_type=2base_address=0xca000irq=10

A.4 Parámetr os EthernetTabla A–5 Parámetr os del módulo EthernetEthernetHardware Módulo Parámetr os

3Com3c501 3c501.o 3c501=io_port,IRQ

3Com3c503and3c503/16 3c503.o 3c503=io_port,IRQ OR3c503io=io_port_1,io_port_nirq=IRQ_1,IRQ_n

3ComEtherLink Plus(3c505)

3c505.o 3c505=io_port,IRQ OR3c505io=io_port_1,io_port_nirq=IRQ_1,IRQ_2

3ComEtherLink16 3c507.o 3c507=io_port,IRQOR3c507io=io_port irq=IRQ

3ComEtherLinkIII 3c509.o 3c509=IRQ

Page 228: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

228 Apéndice A:Parámetros generales y módulos

Hardware Módulo Parámetr os

3ComISA EtherLinkXL"Corkscrew"

3c515.o

3ComEtherLink PCIIII/XL Vortex (3c590,3c592,3c595,3c597)Boomerang(3c900,3c905,3c595)

3c59x.o

RTL8139,SMC EZ CardFastEthernet

8139too.o

Apricot 82596 82596.o

Ansel CommunicationsModel 3200

ac3200.o ac3200=io_port,IRQ O ac3200io=io_port_1,io_port_nirq=IRQ_1,IRQ_n

Alteon AceNIC Gigabit acenic.o

Aironet Arlan 655 arlan.o

Aironet 4500PCI-ASI-i365inalámbrico

aironet4500_card.o

Allied TelesisAT1700 at1700.o at1700=io_port,IRQ O at1700io=io_port irq=IRQ

TangentATB-II, NovelNL-10000,DaystarDigitalLT-200,DaynaDL2000,DaynaTalk PC (HL),COPSLT-95, FarallonPhoneNETPCII, III

cops.o cops=io_port,IRQ OR copsio=io_port irq=IRQ

Controladormodularparala tarjetaseriesincrónicaCOSAo SRP

cosa.o cosa=io_port,IRQ,dma

CrystalSemiconductorCS89[02]0

cs89x0.o

Page 229: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección A.4:Parámetros Ethernet 229

Hardware Módulo Parámetr os

EtherWORKS DE425TP/COAX EISA, DE434TP PCI, DE435/450TP/COAX/AUI PCIDE500 10/100PCIKingston, LinkSys,SMC8432,SMC9332,tarjetasZnyx31[45], andZnyx346 10/100conchipsetsDC21040(noSROM), DC21041[A],DC21140[A],DC21142,DC21143

de4x5.o de4x5=io_port ORde4x5 io=io_portde4x5args=’ethX[fdx]autosense=MEDIA_STRING’

Adaptadorde bolsilloEthernetD-Link DE-600

de600.o

Adaptadorde bolsilloEthernetD-Link DE-620

de620.o

DIGITAL DEPCA &EtherWORKS DEPCA,DE100,DE101,DE200Turbo, DE201TurboDE202Turbo TP/BNC,DE210,DE422EISA

depca.o depca=io_port,IRQ ORdepcaio=io_port irq=IRQ

Digi Intl. RightSwitchSE-X EISA y PCI

dgrs.o

DavicomDM9102(A)/DM9132/DM9801FastEthernet

dmfe.o

Intel EtherExpress/1000Gigabit

e1000.o

CabletronE2100 e2100.o e2100=io_port,IRQ,memORe2100io=io_port irq=IRQmem=mem

Page 230: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

230 Apéndice A:Parámetros generales y módulos

Hardware Módulo Parámetr os

Intel EtherExpressPro10 eepro.o eepro=io_port,IRQ OReeproio=io_port irq=IRQ

Intel i82557/i82558PCIEtherExpressProdriver

eepro100.o

Intel EtherExpress16(i82586)

eexpress.o eexpress=io_port,IRQ Oeexpressio=io_port irq=IRQ

SMC EtherPower II 9432PCI (83c170/175EPICseries)

epic100.o

Racal-InterlanES3210EISA

es3210.o

ICL EtherTeam16i/32EISA

eth16i.o eth16i=io_port,IRQ OReth16iioaddr=io_port IRQ=IRQ

EtherWORKS3 (DE203,DE204andDE205)

ewrk3.o ewrk=io_port,IRQ O ewrkio=io_port irq=IRQ

Fujitsu FMV-181/182/183/184

fmv18x.o fmv18x=io_port,IRQ O fmv18xio=io_port irq=IRQ

PaqueteEnginesGNIC-IIGigabit

hamachi.o

Driver modularparaelComtrolHostessSV11

hostess_sv11.o hostess_sv11=io_port,IRQ,DMABIT OR hostess_sv11io=io_port irq=IRQdma=DMABIT

HP PCLAN/plus hp-plus.o hp-plus=io_port,IRQORhp-plusio=io_port irq=IRQ

HP LAN Ethernet hp.o hp=io_port,IRQ OR hpio=io_port irq=IRQ

Page 231: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección A.4:Parámetros Ethernet 231

Hardware Módulo Parámetr os

Adaptadorde red100VG-AnyLan HPJ2585B,J2585A,J2970,J2973,J2573Compex ReadyLinkENET100-VG4,FreedomLine100/VG

hp100.o hp100=io_port,nameOhp100hp100_port=io_porthp100_name=name

IBM TokenRing 16/4 ibmtr.o ibmtr=io_port,IRQ,memORibmtr io=io_port irq=IRQmem=mem

AT1500,HP J2405A,lamayoríadeNE2100/clone

lance.o

Mylex LNE390EISA lne390.o

ltpc.o ltpc=io_port,IRQ OR ltpcio=io_port irq=IRQ

MyriCOM MyriNETSBUS

myri_sbus.o

NatSemiDP83815FastEthernet

natsemi.o

NE1000/ NE2000(non-pci)

ne.o ne=io_port,IRQ O neio=io_portirq=IRQ

PCI NE2000cardsRealTEkRTL-8029,Winbond89C940,CompexRL2000,KTI ET32P2,NetVin, NV5000SC,Via82C926,SureComNE34

ne2k-pci.o

Novell NE3210EISA ne3210.o

MiCom-InterlanNI5010 ni5010.o

TarjetaNI5210 (chipi82586Ethernet)

ni52.o ni52=io_port,IRQ OR ni52io=io_port irq=IRQ

NI6510Ethernet ni65.o

Page 232: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

232 Apéndice A:Parámetros generales y módulos

Hardware Módulo Parámetr os

OlderDEC 21040,most21*40 Ethernet

old_tulip.o old_tulip=io_port ORold_tulipio=io_port

AMD PCnet32y AMDPCnetPCI

pcnet32.o

ComunicacionesPCIRedCreek

rcpci.o

TarjetasRealTek queusanRTL8129 o RTL8139chipsetsEthernetrápidos

rtl8139.o

SangomaS502/S508multi-protocolFR

sdla.o

SangomaS502A,ES502A,S502E,S503,S507,S508,S509

sdladrv.o

SysKonnectSK-98XXGigabit

sk98lin.o

AdaptadorISA/PCISysKonnectToken Ring, TR4/16(+)ISA o PCI,TR4/16PCI yantiguastarjetasSK NETTR4/16ISA

sktr.o sktr=io_port,IRQ,memO sktrio=io_port irq=IRQ mem=mem

TarjetasetherSMC Ultray SMC EtherEZISA (8K,83c790)

smc-ultra.o smc-ultra=io_port,IRQ Osmc-ultraio=io_port irq=IRQ

TarjetaEthernetSMCUltra32EISA (32K)

smc-ultra32.o

SeriesdetarjetasEthernetSMC 9000

smc9194.o smc9194=io_port,IRQ Osmc9194io=io_port irq=IRQifport=[0,1,2]

SunBigMac Ethernet sunbmac.o

SundanceST201Alta sundance.o

Page 233: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección A.4:Parámetros Ethernet 233

Hardware Módulo Parámetr os

SunHappy Meal Ethernet sunhme.o

SunQuadEthernet sunqe.o

ThunderLAN tlan.o

Digital 21x4x TulipPCI EthernetcardsSMC EtherPower 10PCI(8432T/8432BT)SMC EtherPower 10/100PCI(9332DST)DECEtherWorks 100/10PCI(DE500-XA)DEC EtherWorks 10PCI(DE450)DECQSILVER’s, Znyx 312etherarrayAllied TelesisLA100PCI-T DanpexEN-9400,CogentEM110

tulip.o

TarjetasEthernetrápidasPCI VIA RhineconVIAVT86c100ARhine-II PCIo 3043Rhine-I D-LinkDFE-930-TXPCI 10/100

via-rhine.o

TarjetaISA AT&T GIS(neeNCR) WaveLan

wavelan.o wavelan=[IRQ,0],io_port,NWID

TarjetasEthernetcompatiblesconWD8003andWD8013

wd.o wd=io_port,IRQ,mem, mem_endOR wd io=io_port irq=IRQmem=memmem_end=end

Compex RL100ATX-PCI winbond.o

Packet EnginesYellowfin yellowfin.o

TarjetasHDLCZ basadasen8530paraAX.25

z85230.o

A continuaciónle ponemosalgunosejemplosdeestosmódulos.

Page 234: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

234 Apéndice A:Parámetros generales y módulos

Tabla A–6 Ejemplos de configuración de parámetr os Ethernet

Configuración Ejemplo

TarjetaISA NE2000endirecciónIO 300yIRQ11

ne=0x300,11ether=0x300,11,eth0

TarjetaWavelanenIO 390,autopruebaparaIRQ y usodel NWID para0x4321

wavelan=0,0x390,0x4321et-her=0,0x390,0x4321,eth0

A.4.1 Utilización de múltiples tarjetas EthernetPuedeusarmásde una tarjetaEtherneten unamáquina. Si cadatarjetautiliza un controladordi-ferente(por ejemplo,un 3c509y un DE425),deberásencillamenteañadiralias (y posiblementeopciones ) a cadaunadelastarjetasen/etc/conf.modules . Consultela Official RedHat Li-nuxCustomizationGuideparamásinformaciónal respecto.

Si dostarjetasEthernetutilizan el mismocontrolador(por ejemplo,dos3c509o una3c595y una3c905),necesitaráespecificar en la líneade las opcionesdel controladorlas direccionesde ambastarjetas( enel casodelas tarjetasISA) o ( enel casode lastarjetasPCI) deberáañadirunalíneadealias paracadaunadelas tarjetas.

Paraulterior informaciónsobreel usode másde una tarjetaEthernet,consultela Linux Ethernet-HOWTO en http://www.redhat.com/mirrors/LDP/HOWTO/Ethernet-HOWTO.html.

Page 235: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección B.1:Conceptos básicos sobre el disco duro 235

B Intr oducción a la creación depar ticionesLasparticionesenel discosonpartesestándardelos entornosdeun ordenadory lo hansidodurantebastantetiempo. De todasformas,con tantaspersonasquecompranun ordenadorcon un sistemaoperativo preinstalado,pocasentiendenel funcionamientode las particiones.Estecapítulotratadeexplicar cómofuncionanlas particionesde maneraquepuedaencontrarla instalaciónde RedHatLinux lo mássencillaposible.

Si yaconocecómofuncionanlasparticionesdelosdiscos,deberíaseguir másadelanteconla SecciónB.1.4,Crearespaciopara RedHat Linuxparaobtenermásinformación relativa al procesodeliberarespacioenel discoparaefectuarunainstalacióndeRedHat Linux. Estasección,además,le muestrael esquemautilizadoenLinux paraasignarlos nombresa lasparticiones,paracompartirel espaciodel discoconotrossistemasoperativosy otrostemasrelacionadosconello.

B.1 Conceptos básicos sobre el disco dur oLosdiscosduroscumplenunafunciónmuysencilla-- puedencontenerdatosy recuperarlosdemanerasegurasi selo pedimos.

Paracrearparticionesenel disco,esimportantesaberalgodelhardware;desafortunadamente,esfácilconfundirse.Porlo queutilizaremosun gráfico sencillodel ordenadordeun discoduroparaquenosayudeenla explicación quelo quehay"detrásdela caja"del ordenador. El Gráfico B–1, Unidadnoutilizadamuestraunaunidaddiscoqueno estáutilizada.

Page 236: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

236 Apéndice B:Introducción a la creación de particiones

Gráfico B–1 Unidad no utilizada

… No haymuchoqueañadir. Sinembargosi hablamosdediscosdurosanivel básico,el asuntocam-bia. Supongamosquequeremosguardarunosdatosenundisco.Segúnestánlascosas,nofuncionará.Tenemosquehaceralgoantes….

B.1.1 No se trata de lo que escribe , sino de cómo lo escribeAquéllosqueya hanutilizado RedHat Linux, probablementeya hanejecutadoestasoperaciones.Tendráqueformatear el disco.El formateo( es"la creacióndeunsistemadearchivos") queescribeinformacionesenel disco,ordenandoel espaciovacíoenun discono formateado.

Page 237: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección B.1:Conceptos básicos sobre el disco duro 237

Gráfico B–2 Unidad de disco con un sistema de archivos

Comoenel Gráfico B–2, Unidaddediscoconunsistemadearchivos, el ordenseguidoenunsistemadearchivospresuponeunasconcesiones.

• Un pequeñoporcentajedel espaciodisponibleenel discoesutilizadoparagrabarlos datosrela-tivosal sistemadearchivosy puedeserconsideradocomosobrecarga.

• Un sistemadearchivosparteel espacioquequedaenpequeñossegmentosdetamañoconsistente.En el mundodeLinux, estossegmentossonconocidoscomobloques. 1

Puestoquelos sistemasdeficheroshacenposiblescosascomola creacióndeficherosy directorios,estasconcesionessonaceptadascomopequeñospreciosquehayquepagar.

Tambiénesverdadquenohayunúnicoy universalsistemadearchivos;comomuestrael Gráfico B–3,Unidaddediscoduroconunsistemadearchivosdiferente, undiscopuedetenerunoomássistemasdearchivosdistintos.Comopuedeimaginar, distintossistemasdearchivostiendenanosercompatiblesentreellos;estoquieredecirqueun sistemaoperativo quesoportaun tipo desistemadearchivos(omás)no tendránecesariamentequesoportarotro sistemadearchivos diferente.Estoqueacabamos

1 Los bloquessondeun tamañoconsistente,distintode las imágenes.Pongaatenciónenel hechodequeundiscodurocontienemilesdebloques.Sinembargo,vistoelobjetivodenuestraexplicación,ignoreestaspequeñasdiferencias.

Page 238: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

238 Apéndice B:Introducción a la creación de particiones

dedecirno esunaley exacta.Porejemplo,RedHat Linux soportaunagranvariedaddesistemasdearchivos(incluidoslosmáscomunessoportadosporotrossistemasoperativos)haciendomássencilloel intercambiodedatos.

Gráfico B–3 Unidad de disco dur o con un sistema de archivos dif erente

Escribir un sistemade archivos essólo el principio. El objetivo de esteprocesoesrealmenteel dealmacenary recuperar datos.Observecomoquedasuunidadtrasla escrituradealgunosarchivos.

Page 239: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección B.1:Conceptos básicos sobre el disco duro 239

Gráfico B–4 Unidad de disco dur o con datos escritos

Comomuestrael Gráfico B–4, Unidaddediscoduro condatosescritos, 14 delos bloquesqueantesestabanvacíos,ahoracontienendatos.No podemosestablecercuántosficherosseencuentranenestedisco;podríaserunoo 14puestoquetodoslos ficherosutilizanpor lo menosunbloque.Otroaspectoimportantea observar esquelos bloquesutilizadosno tienennecesariamenteunaregión continua;los bloquesutilizadospuedenencontrarseen posicionesseparadas.Esteconceptoseconocecomofragmentación. La fragmentaciónpuederealizarunpapelmuy importantecuandosetratadereducirunapartición existente.

Con el pasodel tiempo y el avancede las tecnologías relacionadascon el ordenador, tambiénlasunidadesdediscohancambiado.Enconcreto,hancambiadodeunaformaespecífica-- losdiscossonmásgrandes.No grandespor tamaño,sinoporcapacidad.Y hasidoestacapacidadla quehallevadoa un cambioenla maneraenqueseutilizan los discos.

B.1.2 Particiones: Cover tir un disco en muchos otr osComolasunidadesdediscoaumentansucapacidad,algunaspersonasllegadasaestepuntosepregun-tansi esconvenientetenertodoeseespacioformateadojunto. Estaformadepensarhasidodebatidapor diversastesis,algunasfilosóficas,otrastécnicas.Bajo el puntodevista filosófico, parecequeelespacioañadidoenundiscodetamañomásgrande,creasóloconfusión.Bajoel puntodevistatécnicosedefiendequealgunossistemasdearchivosnuncahansidoproyectadosparasoportardiscosdeeste

Page 240: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

240 Apéndice B:Introducción a la creación de particiones

tamaño.O bien,quelossistemasdearchivospodíansoportardiscosmásgrandes,peroel tamañoqueocuparíael sistemadeficherosesexcesivo.

La soluciónaesteproblemahasidola departir losdiscoscreandomásparticiones. Sepuedeaccedera cadaparticióncomosi fueseundiscoaparte.Estosehacepormediodeunatabla de particiones.

Nota

Cuandolos diagramasde estecapítulomuestranla tablade las particionesseparadade la restantepartedel disco, estono es exacto. En realidadlatabladeparticionesseguardaal comienzodeldisco,antesdecualquierdatoo sistemade archivos. Sin embargo, parasermásclarosla mantendremosseparada.

Gráfico B–5 Disco dur o con la tabla de par ticiones

Comosemuestraenel Gráfico B–5, Discoduro conla tabladeparticiones, la tabladelasparticionesestárepartidaencuatrosecciones.Cadasecciónpuedecontenerla informaciónnecesariaparadefinirunapartición,estoquieredecirquela tabladelasparticionespuededefinir nomásdecuatroparticio-nes.

Page 241: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección B.1:Conceptos básicos sobre el disco duro 241

Cadaelementode la tablade lasparticionescontieneimportantescaracterísticasrelativasa la parti-ción:

• Puntosenel discodondela partición empiezay termina.

• Si la particiónestá"activa".

• Tipo de partición.

Observe detenidamentecadacaracterística.Los puntosde comienzoy de fin realmentedefinen eltamañodelasparticionesy suposición enel disco.La opción "activa" esutilizadaenel arranquedealgunossistemasoperativos. De todasformas,el sistemaoperativo queseencuentraconla particióndefinida como"activa" esdondearrancaráel ordenador.

El tipo departiciónpuedecrearconfusión.El tipo esun númeroquedefine previamenteel usoqueseharádela partición. Si estole pareceun pocoextrañoesporqueinclusoel significadodel tipo departición esun pocovago.Algunossistemasoperativosutilizan un tipo departición paradetectaruntipo específico desistemadearchivos,paraasociarla particióna un sistemaoperativo, paraindicarquela particióncontieneunsistemaoperativo quepuedeserarrancadoo paraunacombinacióndelostres.

La TablaB–1, Tiposdeparticionescontieneunalista dealgunostiposdeparticionesdelasmásco-nocidas(y oscuras),junto a susvaloresnuméricos.

Tabla B–1 Tipos de par ticiones

Tipos de par ticiones Valor Tipo de par tición Valor

Vacío 00 Novell Netware386 65

DOS12-bit FAT 01 PIC/IX 75

XENIX root 02 Old MINIX 80

XENIX usr 03 Linux/MINUX 81

DOS16-bit <=32M 04 Linux swap 82

Extended 05 Linux native 83

DOS16-bit >=32 06 Linux extendido 85

OS/2HPFS 07 Amoeba 93

AIX 08 AmoebaBBT 94

AIX dearranque 09 BSD/386 a5

GestordearranqueOS/2 0a OpenBSD a6

Page 242: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

242 Apéndice B:Introducción a la creación de particiones

Tipos de par ticiones Valor Tipo de par tición Valor

Win95 FAT32 0b NEXTSTEP a7

Win95 FAT32 (LBA) 0c BSDI fs b7

Win95 FAT16 (LBA) 0e BSDI swap b8

Win95 extendido(LBA) 0f Syrinx c7

Venix 80286 40 CP/M db

Novell 51 DOSaccess e1

Microport 52 DOSR/O e3

GNU HURD 63 DOSsecundario f2

Novell Netware286 64 BBT ff

Ahoraestarápreguntándosecomoseutiliza estacomplejidadañadida.Véaseel Gráfico B–6, Discoduro conunasolapartición paratenerun ejemplo.

Gráfico B–6 Disco dur o con una sola par tición

Page 243: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección B.1:Conceptos básicos sobre el disco duro 243

Enmuchoscasoshayunaúnicaparticiónqueocupatodoel disco.La tabladelasparticionesenestecasomuestrasóloun elementoy seencuentraal comienzodela partición.

Hemosllamadoa estaparticióncomosi fueradetipo "DOS", también,comopuedever en la TablaB–1, Tiposdeparticiones, estoesun pocosimplista,peroútil paranuestraexplicación. Estaesunaconfiguracióntípicade lasparticionesen la mayorpartede los ordenadoresenquehayunaversiónpre-instaladadeWindows.

B.1.3 Particiones en el interior de par ticiones – Unaintr oducci ón a las par ticiones extendidas.El pasodel tiempohaevidenciadoel hechodequecuatroparticionesno bastan.Al crecerlasdimen-sionesde los discosduros,sehavueltosiempremáscomúnla utilizacióndeparticionesde tamañoconsiderabley a pesarde ello esnormalquequedeespaciolibre en el disco. Era necesariobuscarsolucionesnuevasparacrearmásparticiones.

De estemodonacenlas particionesextendidas.Comohabrávisto en la TablaB–1, Tipos de parti-ciones, hayunaparticióndetipo "extendida".Esun tipo departiciónquerepresentael núcleodelasparticionesextendidas.

Cuandosecreaunaparticióny esseleccionadacomotipo "extendida",secreaunatabladelasparticio-nesextendidas.Dehecho,unaparticiónextendidaesunaunidaddiscocontodassuscaracterísticas--Tieneinclusounatabladelasparticionesqueseñalaunao másparticiones(ahorallamadasParticio-nesLógicas, envezdelasprimerascuatroParticionesPrimarias) contenidasporenteroenel interiordela mismaparticiónextendida.El Gráfico B–7, Unidaddiscoconpartición extendidamuestraunaunidaddiscocon unaparticiónprimariaquecontienedosparticioneslógicas(junto con el espaciolibre no utilizado).

Page 244: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

244 Apéndice B:Introducción a la creación de particiones

Gráfico B–7 Unidad disco con par tición extendida

Comopuedeverseenestafigura,haydiferenciaentreparticioneslógicasy primarias-- sólo sepuedencrearcuatroparticionesprimarias,sin embargo no hay ningúnlímite parael númerode particioneslógicas. )(De todasformas,no esunabuenaideaintentarcrearmásde 12 particionesen la mismaunidad).

Ahoraquehemostratadodeformageneralel asuntosobrelasparticiones,podemosaplicarestosco-nocimientosen la instalacióndeRedHat Linux.

B.1.4 Crear espacio para Red Hat Lin uxHay tresposiblescasosquesepuedeencontrardurantela creacióndeparticionesenel disco:

• Hay espaciolibre disponiblesin particiones

• Partición inusualdisponible

• Hay espaciolibre disponibleenunaparticiónutilizada

Veamosestoscasospor orden.

Page 245: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección B.1:Conceptos básicos sobre el disco duro 245

NotaTienequeconsiderarquelas imágenesquesemuestrana continuaciónhansido simplificadasparaquequedenmásclarasy no muestranla estructurageneralde lasparticionesqueencontrarádurantela instalacióndeRedHatLinux.

Uso del espacio libre no par ticionadoEn estecaso,lasparticionesya definidasno ocupanel discopor entero,dejandoespaciono ocupadoqueno formapartedeningunaparticióndefinida. El Gráfico B–8, Unidaddediscoconespaciolibreno utilizadopara particionesmuestraun ejemplodeestasituación.

Gráfico B–8 Unidad de disco con espacio libre no utilizado para par ticiones

Si sefija, un discoqueno hasidoutilizadopuedetambiénincluirseenestacategoría;la únicadife-renciaesquetodoel espacioestá libre y no pertenecea ningunaparticióndefinida.

De todasformas,podrá simplementecrearlasparticionesnecesariasdel espaciono utilizado. Desa-fortunadamente,estasituación,tansencilla,noescomún(amenosquehayacompradoundisconuevosólo paraRedHat Linux). La mayoríade los sistemasoperativospre-instaladosestánconfiguradosparaocupartodoel espaciodisponibledela unidaddedisco(veael Usodelespaciolibredeunapar-tición activaen la sección B.1.4).

Page 246: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

246 Apéndice B:Introducción a la creación de particiones

Veamosunasituaciónun pocomáshabitual.

Uso del espacio de una par tición no utilizadaEn estecaso,puedeserquetengaunao másparticionesqueno utiliza; quizáshabíautilizado otrosistemaoperativo y las particiones(o la partición) que le habíadedicadono seutilizaránmás. ElGráfico B–9, Discoduro conunapartición no utilizadamuestraunasituaciónparecida.

Gráfico B–9 Disco dur o con una par tición no utilizada

Si seencuentraenestasituación,puedeutilizar el espaciousadopor la particiónnoutilizada.Tendráen primer lugar queborrar la particióny luego crearlas particionesnecesariasparaLinux. Podráborrarla particiónutilizandoel comandofdisk deDOS,tendrá la posibilidadde hacerlotambiéndurantela instalación declasepersonalizada.

Uso del espacio libre de una par tición activ aÉstaeslasituaciónmáscomún.Desafortunadamenteestambiénla másdifícil degestionar. Dehecho,el problemaesque,aunquetengabastanteespaciolibre, ésteesocupadopor unaparticiónqueyahasidoutilizada. Si hacompradoun ordenadorconunosprogramas(incluido el sistemaoperativo)preinstalados,el discoduroprobablementetieneunagranpartición quecontienetodoslos datosy elsistemaoperativo.

Apartedeañadirun nuevo discoduroa susistema,tendrádossolucionesposibles:

Creacióndestructivadeparticiones

Page 247: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección B.1:Conceptos básicos sobre el disco duro 247

Hagalo siguiente:borrela particiónúnicay creeparticionesmáspequeñas.Comopuedeima-ginar, todoslos datosquetenía enla particiónoriginal serándestruidos.Estoquieredecirqueesprecisohacerunacopiadeseguridadantesdecomenzar. Porsuseguridadhagadoscopias,utilice la verificación(si lo permitesuprogramadehacercopiasdeseguridad)e intenteleerlosdatosdeesascopiasantesdeempezarel procesodecreacióndeparticiones.

ATENCION�

Si habíaunsistemaoperativo instaladoenla partición,deberávolverainstalarlo.Sepaquealgunosordenadoresvendidosconsistemasope-rativospreinstalados,noincluyenCD-ROM(s)parareinstalarelsitemaoperativo inicial. Esconvenientequecompruebesi esésteel casodesusistemaantesdedestruirsuparticiónoriginal y la instalacióndesusistemaoperativo.

Despuésdehabercreadounaparticiónmáspequeñaparael softwareexistente,podráreinstalarcualquiersoftware,recuperarsusdatosy seguir conla instalacióndeRedHatLinux. El GráficoB–10,Discoduro particionadodeformano destructivamuestraestaoperación.

Gráfico B–10 Disco dur o par ticionado de forma no destructiv a

Page 248: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

248 Apéndice B:Introducción a la creación de particiones

ATENCION�

Comosemuestraenla figuradel Gráfico B–10,Discoduro particio-nadodeformanodestructiva, ¡todoslosdatospresentesenlaparticiónoriginal seperderánsin la posibilidadderecuperarlos!

Reparticionamientono destructivo

Podráejecutarun programaquehacelo quepareceimposible:creaunaparticiónmáspequeñasin perderningunode los ficheroscontenidosen la particiónprimaria. Muchosusuarioshanencontradoestemétodosegurosin queplanteedemasiadosproblemas.¿Quésoftwaredeberíausarparacumplir conestatarea?Hay variosprogramasdegestióndel discodurodisponiblesenel mercado;tendráquebuscarlo quemejorseadaptea susituación.

Aunqueel procesodere-particionamientonodestructivo esbastantefácil, haysiemprealgunospasosqueseguir:

• Comprimir los datosexistentes

• Reducirla partición

• Crearnuevasparticiones

Veamoscadapasoconmásdetalle.

Comprimir los datos existentes

Como semuestraen el Gráfico B–11, Disco duro durante la compresión, el primer pasoesel decomprimirlosdatosdela particiónexistente.La razóndeestaoperaciónesla dereorganizarlosdatosparamaximizarel espaciolibre disponibleal final dela partición.

Page 249: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección B.1:Conceptos básicos sobre el disco duro 249

Gráfico B–11 Disco dur o durante la compresión

Estepasoescrucial; sin ello, esposibleque la posiciónde susdatosimpida que la partición seareducidade forma deseada.Pongatambiénatención en que,por unau otra razón,podríanno serdesplazados.Si ésteessucaso(y esimposiblela creacióndesunueva partición),severáforzadoarealizarun particionamientodestructivo.

Cambiar el tamaño de una par tición

El Gráfico B–12,Discoduro conla particióndetamañocambiadamuestrael procesodel cambiodetamaño.El resultadofinal de la operación decambiopuedevariarsegúnel softwareutilizado,peroenmuchoscasosel espacioquehaquedadolibre esutilizadoparacrearunapartición no formateadadel mismoestilode la particiónoriginal.

Page 250: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

250 Apéndice B:Introducción a la creación de particiones

Gráfico B–12 Disco dur o con la par tición de tamaño cambiada

Esimportantecomprendercómotrabajael softwareparacambiarel tamañodelasparticionesquehautilizadoy dejarespaciolibre enel disco,así quehayqueseguir los pasosadecuados.Enel casoquele hemosmostrado,seríamejorborrarla nueva particiónDOSy crearlasparticionesparaLinux.

Creación de nuevas par ticiones

Comoindicael pasoanterior, puederesultarnecesarioo no crearnuevasparticiones.Sin embargo amenosquesusoftwaretengaencuentala existenciadeLinux, eseseráelprocesoquesedeberáseguir.Veáseel Gráfico B–13,Discoduro conunaconfiguracióndeparticionesfinales.

Page 251: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección B.1:Conceptos básicos sobre el disco duro 251

Gráfico B–13 Disco dur o con una configuración de par ticiones finales

NotaLa siguienteinformaciónesespecífica sóloparaordenadoresbasadosen latecnologíaIntel.

Ésteesun programadistribuido librementequepuedecambiarel tamañode particionesFAT (FileAllocation Table).

ADVERTENCIA

Muchas personashan utilizado con éxito fips para crear particionesen susdiscosduros. Sin embargo, a causade la clasede operacionesque fips debehacer y las diferenciasentre las distintas configuracio-neshardware en las que debería ejecutarse,Red Hat no puedegaranti-zar que fips funcione correctamenteen su sistema.No hay disponibleningún soportepara la instalaciónde fips ; utilícelo teniendoencuentaquelo hacebajo su responsabilidad.

Page 252: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

252 Apéndice B:Introducción a la creación de particiones

Si eligecrearparticionesenel discodurocon fips , esmuyimportantequehagadoscosas:

• Efectúeunacopiadeseguridad— Hagadoscopiasdetodoslos datosimportantespresentesensuordenador. Estascopiastendráquehacerlasendispositivosextraibles(comocintasmagnéticaso disquetes)y antesdeempezartendráqueaveriguarsi puedenserlegibles.

• Lectura de la Documentación— -- Leacompletamentela documentación de fips , queseen-cuentraenel subdirectorio/dosutils/fipsdocs enel primerCD deRedHat Linux/x86.

Si eligeutilizar fips , tengacuidadoyaquedespuésdehaberlanzadofips obtendrádosparticiones:la quehacambiadodetamañoy la quefips hacreadoenel espacioquela primerahadejadolibre.Si suobjetivo esel deutilizar esteespacioparainstalarRedHat Linux, tendráqueborrarla particiónqueacabadecrear, utilizandofdisk bajoel sistemaoperativo actualy configurandolasparticionesdurantela instalación declasepersonalizada.

B.1.5 Ficha de los nombres para las par ticionesLinux hacereferenciaa lasparticionesdeldiscoduroutilizandoun conjuntodenúmerosy letrasquele puedeconfundir, especialmentesi estáacostumbradoal métododereferencia"unidadC" paralosdiscosy lasparticiones.En el mundoDOS/Windows, lasparticionessonllamadasasí

• Cadatipo departición escontroladaparadeterminarsi puedeserleídaporDOS/Windows.

• Si el tipo departición escompatible,sele asignaunaletra.Lasletrasdelosdiscosempiezanporla C" y vanpasandoa letrassucesivasdependiendodeel númerodeparticionesa etiquetar.

• La letradeldiscopuede,entonces,serutilizadaparareferirsetantoaestaparticióncomoalsistemadeficheroscontenidoenestapartición.

RedHat Linux utiliza un esquemade nombresqueesmuchomásflexible y contienemuchamásinformaciónqueel queusanotrossistemasoperativos.Esteesquematienenombresdeficherosdelasiguientemanera:

/dev/ xxyN

Aquí tieneel métodoparaentenderel esquemadel nombredela partición:

/dev/

Estacadenaesel nombredeundirectorioenla queestántodoslos ficherosdelosdispositivos.Puestoquelasparticionesresidenenel discoy los discosdurossondispositivos, los ficherosquerepresentantodaslasposiblesparticionesestáncontenidosen /dev/ .

xx

Lasdosprimerasletrasdel nombredela particiónserefierenal tipo deperiféricoenel queseencuentrala mismapartición. Engeneral,encontraráo hd (paradiscosIDE), o sd (paradiscosSCSI).

Page 253: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección B.1:Conceptos básicos sobre el disco duro 253

y

Estaletraindicaenquéperiféricoseencuentralapartición.Porejemplo,/dev/hda (El primerdiscoduroIDE) o /dev/sdb (el segundodiscoduroSCSI).

N

El númeroqueapareceal final indica la partición. Las cuatroprimeras(primariaso extendi-das)seenumerana partir de1 hasta4. Lasparticioneslógicasempiezanen 5. Porejemplo,/dev/hda3 esla terceraparticiónprimariao extendidaenel primerdiscoIDE; /dev/sdb6esla segundaparticiónlógicaenel segundodiscoSCSI.

NotaNohayningunapartedeestaconvenciónquesebaseenuntipodepartición;adiferenciadeDOS/Windows, todaslasparticionespuedenidentificarsebajoRedHatLinux. Porsupuesto,estonoquieredecirqueRedHatLinux puedeaccedera los datosencualquiertipo departición,peroenmuchoscasosesposibleaccedera los datosdeparticionesdedicadasa otrossistemasopera-tivos.

Considerarestainformaciónle hará mássencillaslas cosasa la horade configurar las particionesrequeridaspor RedHat Linux.

B.1.6 Particiones y otr os sistemas operativ osAunquelasparticionesde RedHat Linux dividirán el discoduroen particionesutilizadaspor otrossistemasoperativos,engeneralno tendráningúnproblema.De todasformas,hayalgunascombina-cionesentreLinux y otrossistemasoperativos quele pedirán másprecauciones.Más informaciónsobrela creacióndeparticionesdeldiscocompatiblesconotrossistemasoperativosestándisponiblesenmuchosHOWTO y Mini-HOWTO quepodráencontrarenel CD deRedHat Linux enlos direc-toriosdoc/HOWTOy doc/HOWTO/mini . Resultanmuy útiles los Mini-HOWTO cuyosnombresempiezanpor Linux+ .

NotaParaqueRedHat Linux/x86 puedacoexistir en su máquinacon OS/2,de-berácrearlasparticionesconel softwareparala gestióndelasparticionesdeOS/2-- sinoOS/2podríano reconocerlasparticionesenel disco. Durantela instalaciónno intentecrearningunanueva partición,creelas justasparti-cionesdeLinux utilizandoel comandofdisk deLinux.

Page 254: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

254 Apéndice B:Introducción a la creación de particiones

B.1.7 Particiones en el disco y punto de montajeUnapartedondemuchosnuevosusuariosdeLinux encuentranproblemasesla formaenqueseutilizanlas particionesbajo Linux. En DOS/Windows el asuntoesbastantesencillo: si tiene másde unapartición,cadaparticiónutiliza una"letradeunidad".Entoncespodráutilizar estaletraparareferirseúnicamentea estapartición.

El métodoconel queRedHatLinux gestionalasparticionesy, por tanto,lasunidadesdediscoenge-neral,estotalmentediferente.La diferenciaengeneralestáenel hechoquecadaparticiónesutilizadacomoparteintegrantedel arboldel sistemadeficherosdeLinux. Estosehaceasociandoa cadapar-tición un directoriodistintopor mediodeun procesollamadomontaje. Montarunapartición quieredecirhacersucontenidodisponiblea partir del directorioespecificado(al cualnosreferimosconelnombredepunto de montaje).

Por ejemplo, si se monta la partición /dev/hda5 en /usr , esto quiere decir que todos losficherosy los directoriosbajo /usr estaríanfísicamenteen /dev/hda5 . Por eso, el fichero/usr/share/doc/FAQ/txt/Linux-FAQ estaría en /dev/hda5 , pero no el fichero/etc/X11/gdm/Sessions/Gnome .

Siguiendocon esteejemplo,sería posiblequeuno o másdirectoriosde /usr fueranlos puntosdemontajeparaotrasparticiones.Porejemplo,unaparticióncomo/dev/hda7 podríasermontadaen /usr/local , que quiere decir que, por ejemplo, /usr/local/man/whatis estaría en/dev/hda7 y no en /dev/hda5 .

B.1.8 ¿Cuántas par ticiones?Llegadosa estepuntoen el procesode preparaciónde la instalaciónde RedHat Linux, tendrá queconsiderarelnúmeroy el tamañodelasparticionesqueseránutilizadasporelnuevosistemaoperativo.La pregunta"¿Cuántasparticiones?"siguedividiendoen dosel mundode Linux y, sin quererporello acabarestadiscusión,esposiblequehayamuchasposibilidadesdecreartantasparticionescomopersonashablandeello.

Teniendoestoencuenta,le aconsejamoscrear, amenosquenotengaunarazónparahacerlodeformadistinta,lasparticionessiguientes:

• Partición swap— Las particionesswap sonutilizadasparasoportarla memoriavirtual. Conotraspalabras,los datossonescritosenla swapcuandono haybastantememoriadisponibleparacontenerlos datosquesuordenadorestáprocesando.Si suordenadortiene16 MegasdeRAM oinclusomenos,tienequecrearunaparticiónswap.Tambiénsi tienemásmemoria,serecomiendala utilizacióndeunaparticiónswap.El tamañomínimoparaunaparticióndeswaptendríaqueserigual a la cantidaddememoriaRAM presenteensuordenador, o por lo menos16MB (entrelasdosseaconsejaeligir la cantidadmayor).

Page 255: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección B.1:Conceptos básicos sobre el disco duro 255

• Una /boot partición — La particiónquesecreabajo /boot contieneel kerneldel sistemaoperativo (quepermiteel arranquedesusistemaconRedHat Linux), junto conalgunosficherosutilizadosduranteel procesodearranque.

ATENCION�

Asegúresede leer la Sección B.1.9,UsodeLILO -- la informaciónqueaquíencontraráestárelacionadaconla partición/boot .

Debidoa laslimitacionesdela mayoría deBIOSesdePCs,esunabuenaideacrearunaparticiónpequeñaparaestosficheros.Estaparticiónno deberíasuperarlos 32 MG.

• Partición root (/) — La particiónroot esdondeseencuentra/ (el directorioderoot). En estaconfiguracióndelasparticiones,todoslos ficheros(exceptolos queresidenen /boot ) estánenla particiónderoot. Porello seríaunabuenaelecciónhacerlo másgrandeposibleel tamañodesu partición de root. Una particiónroot de 1.2 GB esequivalentea la queesinstaladapor unainstalacióndeclaseestación detrabajo(conpoquísimoespaciolibre), mientrasqueunaparticiónroot de2.4 GB le permitiráinstalartodoslos paquetes.Esobvio quecuantomásespaciopuedadarlea la particiónroot mejor.

Puedeencontrarrecomendacionesespecíficassobreel tamañoadecuadodealgunasparticionesRedHat Linux enla Official RedHat Linux x86InstallationGuide.

B.1.9 Uso de LILOLILO (el LInux LOader)esel métodomásnormaldearrancarRedHatLinux ensistemasbasadosentecnologíaIntel. Comocargadordel sistemaoperativo, el LILO operaexternamentea cualquiersis-temaoperativo,utilizandosóloel el sistemabásicodeentrada/salida(o BIOS) incluidoenel hardwaredel mismosistema.Estaseccióndescribela interacción entreLILO y la BIOS delos ordenadoresyesespecifícaparaordenadoresIntel.

Limitaciones relativ as a la BIOS y al LILOLILO estáafectadoporalgunaslimitacionespuestaspor el BIOS enmuchosordenadoresbasadosenIntel. Deformaespecífica, la mayorpartedelasBIOSnopuedenaccederamásdedosdiscosdurosynopuedenaccederalosdatoslocalizadosmásalládelcilidro 1023decualquierunidad.AlgunosBIOSnuevosno tienenestaslimitaciones,sin embargo,estono quieredecirqueel problemaseanormal.

TodoslosdatosqueLILO necesitaalarranquedelamáquina(incluidoel kerneldeLinux) estánconte-nidosenel directorio/boot . Si siguela configuraciónparalasparticionesqueacabamosdeexplicaro si estáefectuandounainstalacióndeclaseestación detrabajoo servidor, el directorio/boot serácreadoenunapequeñaparticiónseparada.Deotromodo,residiráenla particiónderoot. Encualquier

Page 256: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

256 Apéndice B:Introducción a la creación de particiones

casola particiónen la quereside/boot debeseguir las reglasqueseexponena continuaciónparaqueLILO funcionecorrectamenteensusistemaRedHat Linux:

En los dosprimer osdiscosIDE

Si tienedosdiscosIDE (o EIDE), /boot debeestarenunodeestos.Observe queestelímitede dosunidadestambiénincluye cualquierCD-ROM IDE en su controladoraprimaria IDE.Portanto,si tieneun discoduroIDE, y un CD-ROM IDE ensucontroladoraprimaria,/bootdebeestardebeestarlocalizadosóloenel primerdiscoduro,inclusosi tienediscosdurosensucontroladoraIDE secundaria.

En el primer disco IDE o SCSI

Si tieneunaunidadIDE (o EIDE) y unao másunidadesSCSI,/boot tienequeestaro eneldiscoIDE o enla SCSIenel ID 0. OtrosID SCSIno funcionarán.

En los dosprimer osdiscosSCSI

Si tienesólo discosSCSI,/boot debeencontrarseen un discoen el ID 0 o ID 1. OtrosIDSCSIno funcionarán.

Partición completamentedentro del Cilindr o 1023

Noimportaquéconfiguracióndescritautilice, laparticiónquecontendrá/boot debesercreadaantesdel cilidro 1023. Si la particiónquecontiene/boot superael cilindro 1023,podríaen-contrarseensituacionesenqueLILO funcionaráinicialmente(porquetodaslasinformacionesnecesariasseencuentranantesdel cilidro 1023),sinembargo,no funcionarási tienequecargarun kernelnuevo y ésteseencuentramásallá deestecilindro

Comoyasedijo, esposiblequealgunasBIOSnuevaspermitanaLILO funcionarconconfiguracionesquenocorrespondenalasqueacabamosdedescribir. Dela mismamanera,sepuedenutilizar algunasformasmás"esotéricas"deLILO paraarrancarel sistematambiénconconfiguracionesdistintasdelasquehemosvisto. Detodasformas,anteel númerodevariablesposiblesexistentes,RedHatLinuxno puedesoportarotrosmétodosextraordinariosrelacionadosconesteasunto.

Nota

Disk Druid, asícomolasinstalacionesdeclaseestacióndetrabajoy servidortienenencuentaestaslimitacionesdebidasa la BIOS.

Page 257: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección C.1:¿Por qué necesito un disco que contenga un driver? 257

C Discos de driverC.1 ¿Por qué necesito un disco que contenga undriver?Mientrassecargael programadeinstalaciónRedHat Linux podríaaparecerunapantallaquele pideque introduzcaun discoquecontengaun driver. Se le pedirá el discode driversen los trescasossiguientes:

• Si está ejecutandounainstalaciónenmodoexpert mode

• Si ejecutael programadeinstalación tecleandolinux dd enel promptboot :

• Si ejecutael programadeinstalaciónenun ordenadorsin dispositivosPCI

C.1.1 ¿Qué es un disco de driver s?Un disquetede driversañadeel soporteparala gestiónde determinadosperiféricoshardware quedeotro modono seríansoportadospor el programadeinstalación.El disquetededriverspodríasercreadopor RedHat,podría crearloustedo podríaserun disquetequele hasidoproporcionadojuntoal hardwarepor suvendedor.

No deberíanecesitarundisquetededriversamenosquetenganecesidaddelsoportedeundispositivoenconcretoparainstalarRedHatLinux. El disquetededriversesutilizadonormalmenteporunidadesde CD-ROM muy nuevaso queno sonestándar, adaptadoresSCSIo NICs. Éstosson los únicosdispositivos usadosdurantela instalación querequierendriversno incluidosen los CD-ROMs RedHat Linux (o disco,si esquehacreadoun discodearranqueparainiciar el sistemadeinstalación).

NotaSi undispositivo noesrequeridoparala instalacióndeRedHatLinux, conti-núeconla instalaciónestándary añadala gestióndelnuevo hardwarecuandohayacompletadola instalación.

C.1.2 ¿Cómo obtener un disquete de driver s?El CD-ROM 1 deRedHat Linux incluyeunaimagendediscodedriver (images/drivers.img )quecontienedriversutilizadosraramente.Si creequesusistemanecesitaráunodeestosdrivers,sería

Page 258: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

258 Apéndice C:Discos de driver

unabuenaideaproseguir conla creacióndeundiscodedriverantesdeempezarla instalacióndeRedHat Linux.

Otra opciónparaencontrarinformaciónsobreun discode driver especializadoesvisitandoel sitioweb de RedHat en http://www.redhat.com/support/errataen unasección llamadaBug Fixes. Enocasiones,trasuna"release"deRedHat Linux, tendrá a sudisposiciónhardwaremuy conocido,queno funcionaráconlos driversqueya tieneenel programadeinstalación o conaquéllosincluidosenla imagendeldiscodedriverenel CD-ROM 1 deRedHatLinux. Enestoscasos,el sitio webdeRedHat suelecontenerun enlacea unaimagendediscodedriver quepuedeutilizar al instalarRedHatLinux conesehardware.

Creación de un disco de driver desde una imagen de fic heroSi tieneunaimagendediscodedriverquenecesitaparaescribirel disco,puedehacerlodesdedentrodeDOSo RedHat Linux.

Paracrearun discodedriverdesdeunaimagendediscodedrivermedianteel usodeRedHat Linux:

1. Inserteun disquetevacíoformateadoenla primeradisquetera.

2. Escribacat dd.img > /dev/fd0 comoroot,desdeel directorioquecontienela imagendeldiscodedriverdd.img. root.

Paracrearun discodedriver desdeunaimagendediscodedriver:

1. Inserteun disquetevacíoformateadoenla unidada:.

2. Escribarawrite dd.img a: enla líneadecomandos,desdeel mismodirectorioquecontienela imagendediscodedriver.

C.1.3 Uso de un disco de driver durante la instalaciónNo essuficientetenerun discodedriver. Debeespecificarleal programade instalacióndeRedHatLinux quecargueel discodedriver y quelo utilice parael procesodeinstalación.

Page 259: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección C.1:¿Por qué necesito un disco que contenga un driver? 259

Note

Un discodedriver difieredeun discodearranque.Si necesitaun discodearranqueparainiciar la instalación deRedHat Linux ensusistema,deberácrearloy arrancardesdeésteantesdeutilizar el discodedriver.

Si no poseeun discodeinstalacióny susistemano puedearrancardesdeelCD-ROM, creeun discode instalaciónmedianteel usode el ficheroade-cuadofilename.img (comoboot.img )en el CD-ROM 1 de RedHatLinux en el directorio images . Para las instruccionesde cómocrearundiscodearranque,consultela Official RedHat Linuxx86InstallationGuideenla secciónllamadaCreacióndediscosdeinstalación.

Cuandohayacreadoel disquetededrivers,efectúeel arranquedesdeel CD-ROM 1 (o desdeel discode instalación quehacreadosi no puedearrancardesdeel CD-ROM por cualquiermotivo). Tecleelinux expert o linux dd enel indicadordecomandosboot: .

El programade instalaciónde RedHat Linux le pedirá queintroduzcael discode driver. Una vezqueel discodedriver hasido leído por el instalador, estosdriverssonaplicablesal hardwarequeseencuentreensusistematrasel procesode instalación.

Page 260: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

260 Apéndice C:Discos de driver

Page 261: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección D.1:¿Qué es el RAID? 261

D RAID (Redundant Arra y of IndependentDisks)D.1 ¿Qué es el RAID?La ideabásicadel RAID esla decombinardiscosdemodestasdimensionesy decostereducidoenunaseriedediscosquesuperenenprestacioneslasdeunúnicodiscograndey costoso.Esteconjuntodediscosesconsideradopor el ordenadorcomoun solodisco.

RAID esun métodoenel quela informaciónsedivide envariosdiscos,usandotécnicascomodiskstriping (RAID Level 0) y doble escritura en disco (RAID level 1) y disk striping con paridad(RAID nivel 5) paraañadirredundancia,bajalatenciay/o altavelocidaddelecturay/o escritura,ma-ximizandotambiénla recuperabilidaddelos datosencasodefallo del sistema.

El conceptobásicodel RAID esquelos datospuedenserdistribuidosentrelos discosdel grupodemaneraconsistente.Parahaceresto,losdatosdebenserprimerodivididosen"chunks"(amenudode32k o 64k, aunquetambiénsepuedenusarotrostamaños). Cadachunkesescritoen los discosporturno.Cuandolosdatossonleidos,el procesosucedeal contrario,dandola impresióndequemuchosdiscossoncombinadosenunosolo.

D.1.1 ¿Quién deber ía usar RAID?Aquéllosquenecesitencontrolargrandescantidadesdedatos(comolosadministradoresdesistemas),sebenificiaríandel usodela tecnologíaRAID. Los motivosparautilizar RAID son:

• Aumentode la velocidad

• Aumentodela capacidaddearchivo medianteel usodeun discovirtual

• Graneficaciaenrecuperarsedeun fallo del sistema

D.1.2 RAID: Hardware vs. SoftwareExistendosposibilidadesde realizarun sistemabasadoen la tecnologíaRAID: RAID HardwareoSoftware.

Hardware RAIDLassolucioneshardwaregestionanel subsistemaRAID independientementedel host,presentándolea esteun solodisco.

Un ejemplodehardwareRAID podríaserel conectadoal controladorSCSIquepresentaal sistemaunúnicodiscoSCSI.Un sistemaRAID externoseencargadela gestióndelRAID conel controlador

Page 262: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

262 Apéndice D:RAID (Redundant Array of Independent Disks)

localizadoenel subsistemaexternodelosdiscos.Todoel subsistemaestáconectadoaunhostatravésdeun controladorSCSInormaly sele presentaal hostcomoun solodisco.

ExistentambiéncontroladoresRAID enformadetarjetasquesecomportancomouncontroladorSCSIconel sistemaoperativo, perogestionantodaslascomunicacionesrealesentrelos discosdemaneraautónoma.En estoscasos,bastacon conectarlos discosa un controladorRAID comolo haría conun controladorSCSI,perodespuéspodráconfigurarlocomoun controladorRAID sin queel sistemaoperativo apreciela diferencia.

Software RAIDEl SoftwareRAID Softwareimplementalos diferentesnivelesdeRAID enel códigodel kernelquetienenquever conla gestióndel disco(block device). Ofreceademásla soluciónmenoscostosa,yaquelas tarjetascarasde controladoresde discoo chasishot swap 1no sonrequeridas.El softwareRAID funcionacondiscosIDE menoscostososasícomocondiscosSCSI.Con lasrápidasCPUdehoy endía,lasprestacionesdelsoftwareRAID softwarepuedencompetirconlasdelhardwareRAID.

El controladorMD del kernelde Linux esun ejemplode quela soluciónRAID escompletamenteindependientedel hardware. Las prestacionesde un RAID basadoen el softwaredependende lasprestacionesy de la cargadel CPU.

Remítasea la Official RedHat Linux CustomizationGuide, paraulterior informaciónsobrela confi-guracióndel softwareRAID enel programadeinstalacióndeRedHat Linux.

Paraaquéllosqueesténinteresadosensaberlo queel softwareRAID ofrece,aquítieneunabrevelistadealgunasdesuscaracterísticasmásimportantes.

• Procesodereconstrucción entrelazado.

• Configuración basadacompletamenteenel kernel.

• La portabilidaddeRAID entreordenadoresLinux sin reconstruir.

• Reconstruccióndel arrayensegundoplanousandorecursosno utilizadosdel sistema.

• Soporteparadiscoshot-swappable.

• Reconocimientoautomáticodela CPUparadisfrutardealgunasdesusventajas.

D.1.3 Niveles de RAID Levels y sopor te linealRAID soportavariasconfiguraciones,incluyendolosniveles0, 1, 4, 5 y el soportelineal. EstostiposdeRAID sedefinende la siguientemanera:

• Nivel0 — El RAID nivel 0, amenudollamado"striping,"esunatécnicaorientadaalasprestacio-nesdeconversióndedatos"striped". Estoquieredecirquelos datosquesonescritosenel array,

1 Un chasishot-swaple permiteeliminarun discorígido sin tenerqueapagarel ordenador.

Page 263: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección D.1:¿Qué es el RAID? 263

sondivididosenlíneasy escritosendiscosmiembrosdelarray. EstopermitealtasprestacionesdeI/O conun bajocosteperono proporcionaredundancia.La capacidaddememorizardel arrayesigual a la capacidadtotal delos discosmiembrosenun hardwareRAID o a la capacidadtotal delasparticionesmiembrosenun softwareRAID.

• Nivel1 — El RAID nivel 1, o "mirroring," sevieneutilizandodesdehacemuchomástiempoconcualquierotra forma de RAID. El nivel 1 proporcionaredundanciaescribiendodatosidénticosen cadadiscomiembrosdel array, dejandounacopia"idéntica"en cadauno de los discos. Elmirroring esmuy populara causade su simplicidady el alto nivel de disponibilidadde datosquetiene. El nivel 1 operacon doso másdiscosquepuedenutilizar unamodalidadde accesoparaleloparatransferirdemanerarápidadatosdelectura,peromáscomunmenteoperademaneraindependienteparaocuparsede valoresaltosde transaccionesI/O. El nivel 1 proporcionaunaaltafiabilidady mejoralasprestacionesdelasaplicacionesdelecturadedatosperoconun costerelativamenteelevado.2. La capacidaddearchivo del nivel l del arrayesigual a la capacidaddeundiscoduroespejoenunahardwareRAID o la delasparticionesespepoenun softwareRAID.

• Nivel 4 — El RAID nivel 4 utiliza la paridad3concentradoen un solo discoparala protecciónde los datos. Estámásorientadoa la transacciónde I/O queparala transferenciade grandesficheros.Yaqueel discodedicadoala paridadrepresentaun inherentecuellodebotella,el nivel 4seutiliza raramentesinusarla tecnologíawrite-backcaching.A pesardequeel RAID denivel 4esunaopciónenalgunosesquemasdereparticionamientoRAID, noesunaopciónpermitidaenlainstalación RAID RedHat Linux4. La capacidaddearchivo del hardwareRAID nivel 4 equivalea la delos discosmiembrosmenosla capacidaddeun discomiembros.La capacidaddearchivodel softwareRAID nivel 4 equivalea la capacidaddelasparticionesmiembros,menosel tamañodeunadelasparticionessi éstassondel mismotamaño.

• Nivel 5 — Esel tipo máscomún de RAID. Distribuyendola paridadentrealgunoso todoslosdiscosmiembros,el RAID nivel 5 eliminael cuellodebotellainherenteal nivel 4. El únicocuellode botellaesel procesodel cálculode la paridad. Con las modernasCPU y el softwareRAID,estono representaun grancuellodebotella.Comoconel nivel 4, los resultadossonprestacionesmuy elevadas,conlaslecturasquesustancialmentesonmásrápidasquelasescrituras.El nivel 5

2 El RAID nivel 1 tieneun alto costeya queescribela mismainformación entodoslos discosdel array, mal-gastandode estemodoel espaciodel disco. Por ejemplo: Ha configuradoel RAID nivel 1 de maneraquesupartición"/" (root)seexpandaa travesdedosdiscosde40G.Tieneun totalde80Gperosólopuedeaccedera40delos 80G.Los otros40Gsecomportancomoun espejodelos primeros40G.

3 La informaciónsobrela paridadescalculadaenbaseal contenidodel restodelos discosmiembrosdelarray.Estainformaciónpuedeserutilizadaparala reconstrucción dedatoscuandounodelos discosdel arraysedaña.Los datosreconstruidospueden,por tanto,serutilizadosparasatisfacerlaspeticionesdeI/O deldiscocorregidoy paravolver a escribiresediscodespuésdehabersidoreparadoo sustituido.

4 El RAID nivel 4 requiereel mismoespacioquerequiereel nivel 5, peroel nivel 5 tienemuchasventajasconrespectoal nivel 4. Porestemotivo, el nivel 4 no está soportado.

Page 264: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

264 Apéndice D:RAID (Redundant Array of Independent Disks)

seutiliza a menudoconel write-backcachingparareducirla asimetría.La capacidaddearchivodel hardwareRAID nivel 4 equivalea la delos discosmiembrosmenosla capacidaddeun discomiembro.La capacidaddearchivo del softwareRAID nivel 4 equivalea la capacidaddelaspar-ticionesmiembro,menosel tamaño deunadelasparticionessi éstassondelmismotamaño.

• RAIDlineal — El RAID linealesunasimpleagrupacióndediscosdemaneraquesecreaundiscovirtual másgrande.En el RAID lineal, los chunkestándispuestossecuencialmentey sepasadeun discomiembroal discosiguiente,tan solo unavez queel primer discoha sido completadoen su totalidad. Esteagrupamientono tieneningunaventajaen cuantoa prestaciones,puesesimprobablequealgunaoperacióndeI/O seadividaentrelosdiscosmiembros.El RAID linealnoofreceredundanciay dehechola fiabilidaddisminuye-- si unodelosdiscossedaña,el RAID ensutotalidadno puedeserutilizado. La capacidadesel total detodoslos discosmiembros.

Page 265: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección E.2:Paquetes de PowerTools 265

E PowerToolsE.1 ¿Qué son las PowerTools?PowertoolsdeRedHatsonunacoleccióndepaquetessoftwarecreadosparael sistemaoperativo RedHat Linux 7.1. PowerTools incluyelasúltimasversiones(desdela fechadeentregadel producto)decentenaresdeprogramas.Porello le resultarásencilloencontraralgunostiposdeaplicaciones.

Estegrupodesoftwarecontieneaplicacionesaudio,información en línea,herramientaparael desa-rrollo, editor, administradordeficheros, simuladores,juegos,programasparagráficos,productividad,paquetesmatemático/estadísticos,administracióndesistemay herramientasparala gestióndela redy administradordeventanas.

¿Esustedadministradorde sistema?PowerTools comprendeun arrayde herramientasquepuedenfacilitar suarchivo y reemplazarvariasutilidadesconunaaplicacióncomún.Echeun vistazoa apli-cacionescomoEthereal paraanalizarlosportocolosdered,PortSentry paradetenerlosescánersdepuertoo Postfix comounaalternativa a Sendmail.

¿Legustajugar?PowerToolscontieneunnúmerodejuegosbásicos,divertidos,talescomoSpeedX,XFrisk, y Amphetamine.

Comola instalacióny la desinstalación de paquetesde softwareen RedHat Linux esfácil usandoRPM o Gnome-RPM, puedeintentaraplicacionesdiferentesquehaganlo mismoantesde decidircuál le convienemás.

E.2 Paquetes de PowerToolsSi ya conoceel paquetedePowerToolsquele gustaríainstalar, consultela Sección E.3, Instalacióndelos paquetesPowerToolsparamásinformaciónsobrela instalación.

No obstante,debidoa un grannúmerodepaquetesdePowerTools,resultaútil buscara travésdelasdescripcionesdel paqueteparaencontraraquéllasquecumplennuestrosrequisitos.

E.2.1 Lectura del contenido del CD-ROMPuedeaccederal contenidodelosCD-ROM PowerToolsdesdeel el indicadordecomandosdela shell(enunaventanaterminalo enmodoconsola).Previamentedebemontarla unidaddeCD-ROM.

Montaje del CD-ROM de PowerToolsSi su sistemano estáconfiguradopara automontarla unidadde CD-ROM cuandose inserteunCD-ROM, metael CD dePowerToolsensuunidaddeCD-ROM. Tecleelo siguiente,comoroot:

mount -t iso9660 /dev/cdrom /mnt/cdrom

Page 266: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

266 Apéndice E:PowerTools

NotaUstedo el administradordel sistemapodríanpermitir a los demásusuariosefectuarla operacióndel montajede la unidadde CD-ROM. Los usuariospuedenbeneficiarsedeestaventajasólosi la opciónuser estáincluidaenla línea /dev/cdrom enel archivo /etc/fstab . Solamenteel usuarioroot puedeinstalarlos paquetesRPM PowerTools.

Navegar por el fic hero CONTENTSDespuésdemontarla unidad,cd enel directoriodelCD-ROM montadoconel siguientecomando:

cd /mnt/cdrom

Finalmente,tecleeless CONTENTSparavisionar las aplicacionesdisponibles.El ficheroCON-TENTScontienecadaprogramaenel CD-ROM PowerTools,listadasenordenalfabético.

Leerel archivo CONTENTSen el CD-ROM dePowerTools puedeserunatareadesalentadora,con-siderandoel complejodeaplicacionesdisponibles.Aquí tienealgunostrucosparaencontrarun tipoparticulardeprogramasin tenerqueleera travésdetodaslasdescripciones:

• Useelnombredelgrupo— A cadaaplicaciónlevieneasignadoungrupo.Porejemplo,lautilidadparaenviar faxesFaxMail seencuentraen el grupoAplicaciones/Comunicacionesy el sistemabroadcastingde InternetMP3, estáenel grupoAplicaciones/Multimedia.Si ve los nombresdelos grupos,seahorrarátenerqueleerlasdescripcionesdecadapaquete.

• Búsquedamedianteel usode claves— El comandols soportala búsquedafácil. Si sabequeestábuscandounclienteIRC, escribacless CONTENTSparaverCONTENTS; escribaentonces/IRC y pulse[Intro]. Daráconel primer clienteIRC en la lista. Si estono le interesa,pulselatecla [n] repetidamentehastaquevayaa pararal archivo CONTENTS, en buscade los paquetesrelacionadosconIRC.

Si tieneproblemaenel usodel comandoless , tecleeman less enel indicadordecomandosdeayuda.

Desmontar el CDD-ROM de PowerToolsCuandoacabede usarel CD-ROM de PowerTools parainstalarlos paquetes,puedeeliminarlosdesuunidaddeCD-ROM. Si tieneunCD-ROM montadoenel directorio/mnt/cdrom , procedadelasiguientemanera:

1. Cambie los directorios usandocd /mnt para estar en un nivel superior al directorio/mnt/cdrom .

2. Tecleeumount /mnt/cdrom paradesmontarel CD-ROM.

Page 267: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Sección E.3:Instalación de los paquetes PowerTools 267

3. Tecleeeject /dev/cdrom y la unidaddeCD-ROM seabriráparaquepuedasacarel CD.

E.3 Instalación de los paquetes PowerToolsE.3.1 Instalación de PowerTools en un entorno GUISi estáutilizandola interfazgráfica GNOME o KDE, introduzcael CD ensulectorCD-ROM. Selepedirálacontraseñaderootafin dequepuedainstalarlosnuevospaquetes.Despuésdehabertecleadola contraseñaderoot,seráejecutadoautomáticamenteel programaGnome-RPM o Kpackage segúnel entornográfico queutilice.

Consultela Official RedHat Linux GettingStartedGuideparamásinformaciónsobrecomoutilizarGnome-RPM. Vayaa http://www.general.uwa.edu.au/u/toivo/kpackageparamásinformaciónsobrecómoutilizar Kpackage.

Si no estáutilizandoGNOME o KDE, debería utilizar la el indicadorde comandosde la shell parainstalarPowerTools.

E.3.2 Instalación de PowerTools desde el indicador decomandos de la shellEn primer lugar, monteel CD-ROM de PowerTools en su lectorde CD-ROM y utilice ls paraversuscontenidos.Si necesitasabercomomontarun CD-ROM, consulteel Montajedel CD-ROM dePowerToolsen la sección E.2.1.

Verálos siguientesdirectorios:SRPMSy RedHat . El directorioSRPMScontienela fuenteRPMsdePowerTools. El directorioRedHat/RPMS contienelos RPMsparalasarquitecturasdetressistemasoperativosespecíficos.

La rutaRedHat/RPMS seusacomounejemplogeneral.Deberíasustituirel directoriocorrectoparaRedHat/RPMS, dependiendodesuarquitecturay del paquetequeestáinstalando.

cd al directorioRedHat/RPMS:

cd RedHat/RPMS

Liste los ficherosRPM en el directoriocon ls paraver la lista completade paquetesRPM por lossistemasIntel-compatibles.

Probablementedeseetenermásinformaciónsobreunpaqueteespecífico antesdequedecidasi quiereinstalarlo.Puedeutilizar la capacidaddeconsultadeRPM paraencontrarmásinformación sobrelospaquetes,talescomofuncionesde paquetesy origen. Veala Official RedHat Linux CustomizationGuideparaunainformaciónmásdetalladasobrecomoconsultarpaquetesusandoRPM.

Page 268: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

268 Apéndice E:PowerTools

Alternativamente,puedebuscara travésdel ficheroCONTENTSparaencontrarpaquetesquele intere-sen.LeaNavegar por el fichero CONTENTS enla sección E.2.1paramásinformación.

Puedeinstalarlos paquetesseleccionadosconRPM. RPM esun sistemadegestióndel programadeun comandoquesepuedegestionardesdela líneadecomandos.Leala Official RedHat Linux Cus-tomizationGuideparamásinformación sobrecomousarRPM parainstalary gestionarlos paquetesPowerTools.

Unavezquehayaacabadodeinstalarsuspaquetes,deberíadesmontarsuCD-ROM. Sinosabetodavíacomodesmontarel lectorCD-ROM, consulteDesmontarel CDD-ROM dePowerToolsenla secciónE.2.1.

E.4 Desinstalar PowerToolsParadesinstalarlos paquetesPowerTools de susistema,simplementedebeeliminarlosde la mismamaneraenqueeliminaríacualquierotro paqueteRPM instalado.

En primer lugar, debesaberel nombredel paquetequele gustaríadesinstalar. Porejemplo,si sabequequiereeliminar thrust-0.83c-11 desusistema,tecleecomoroot:

rpm -e thrust

Engeneral,rpm -e <packagename> eliminaráel paquetey losarchivosrelacionadosconsusis-tema.El CD-ROM PowerToolsno esnecesarioparaestaoperación.

Paramásinformaciónreferenteal usode RPM, consultela Official RedHat Linux CustomizationGuide.

Page 269: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Índice temático 269

Índice temáticoA

accesocontrol................ ................. ....157

accesoa la consoladefinición ............ ................. ....160deshabilitar.......... ................. ....159deshabilitartotalmente............... ....160

accesodeconsolaconfiguración........ ................. ....158habilitar.............. ................. ....161

AccessConfigdirectivadeconfiguración deApache..190

AccessFileNamedirectivadeconfiguración deApache..197

Actiondirectivadeconfiguración deApache..205

actualizaciónApache............... ................. ....173

ficherosdeantiguaconfiguración....174desdeun servidorseguro1.0o 2.0 .....176parainstalarun servidorseguro.. .......170servidorseguros

nuevo DocumentRoot .......... ....173AddDescription

directivadeconfiguración deApache..203AddEncoding

directivadeconfiguración deApache..204AddHandler

directivadeconfiguración deApache..204AddIcon

directivadeconfiguración deApache..203AddIconByEncoding

directivadeconfiguración deApache..202AddIconByType

directivadeconfiguración deApache..202AddLanguage

directivadeconfiguración deApache..204AddModule

directivadeconfiguración deApache..193AddType

directivadeconfiguración deApache..204Alias

directivadeconfiguración deApache..201Allow

directivadeconfiguración deApache..196AllowOverride

directivadeconfiguración deApache..196Apache

actualizacióndesdeunaversión previade............... ................. ....173

apagado.............. ................. ....188arranque.............. ................. ....188configuración........ ................. ....188ejecutarsinseguridad................ ....213informesdeestadodel servidor.........206reanudar.............. ................. ....188recargar .............. ................. ....188recompilación........................ ....213seguridad............. ................. ....174

apagadoApache............... ................. ....188deshabilitar[Ctrl]-[Alt]-[Supr] ........ ....159

apagar................... ................. ..... 59APXS................... ............... 167, 211arranque

Apache............... ................. ....188mododeusuarioúnico............... ..... 44servidorseguro....................... ....188

autentificaciónKerberos............. ................. ....119

B

BindAddress

Page 270: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

270 Índice temático

directivadeconfiguracióndeApache..192BIOS,cuestionesrelacionadascon........ 255/boot partición

( Ver partición,/boot )BrowserMatch

directivadeconfiguración deApache..205

C

CA( Ver autoridadesdecertificado)

CacheNegotiatedDocsdirectivadeconfiguración deApache..198

CCVSantesdeconfigurar................... ..... 78características........................ ..... 74configuración......................... ..... 79cuentasmercantiles.................. ..... 76cuentasmercantilesmuacute;ltiples..... 85cvupload ......... .................. ..... 86inicio ................ .................. ..... 85inicio deldemonioccvsd .......... ..... 85instalación.......... .................. ..... 78lenguajesdeprogramación.......... ..... 86módems............. .................. ..... 76pautas............... .................. ..... 77procesobatch......................... ..... 86recursosadicionales.................. ..... 87

installeddocumentation.......... ..... 87sitiosWebuacute;tiles............ ..... 87

requisitos............ .................. ..... 75soportepara......... .................. ..... 86usointernacionalde.................. ..... 73usosde.............. .................. ..... 73vistapreliminar....................... ..... 73

ccvsd . ................ .................. ..... 85CD-ROM

desmontar........... .................. .... 266montaje............. .................. .... 265parámetrosparael módulo.......... .... 220

certificado

auto-firmado......... ................. ....181autoridades

elección........... ................. ....177comprobarvs. firmado vs.

auto-firmado.................... ....176creacióndeunapetición............. ....179instalación........... ................. ....182petición

creaciónde........ ................. ....179pre-existente......... ................. ....175prueba................ ................. ....182trasladotrasunaactualización..........176

chkconfig ........... ................. ..... 58ClearModuleList

directivadeconfiguración deApache..193configuración

accesodeconsola.................... ....158Apache............... ................. ....188máquinasvirtuales................... ....213servidorseguro....................... ....187SSL................... ................. ....209

consolacreacióndearchivosaccesiblesdesde..160

contraseñashadow ............... ................. ....115

creacióndeparticionesenumeracióndelasparticiones.........252introduccióna la ..................... ....239nombredelasparticiones........... ....252particionesextendidas............... ....243usodeparticionesno utilizadas.........246usodel espaciolibre de unapartición

activa ........... ................. ....246Creacióndeparticiones

destructiva ........... ................. ....246OtrosSistemasOperativos .......... ....253

[Ctrl]-[Alt]-[Supr]apagado,deshabilitar................ ....159

CustomLogdirectivadeconfiguración deApache..200

Page 271: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Índice temático 271

D

DefaultIcondirectivadeconfiguracióndeApache..203

DefaultTypedirectivadeconfiguración deApache..198

Denydirectivadeconfiguración deApache..197

desinstalarPowerTools.......... ................. ....268

desmontarunidaddeCD-ROM ................. ....266

directivasdecachéparaApache...........208directivasdeconfiguracióndirectives,Apache

MaxRequestsPerChild ........ ....192directivasdeconfiguración,Apache......189

AccessConfig ... ................. ....190AccessFileName ................. ....197Action ............. ................. ....205AddDescription ................. ....203AddEncoding ..... ................. ....204AddHandler ....... ................. ....204AddIcon ............ ................. ....203AddIconByEncoding ............ ....202AddIconByType . ................. ....202AddLanguage ..... ................. ....204AddModule ........ ................. ....193AddType ............ ................. ....204Alias ............... ................. ....201Allow ............... ................. ....196AllowOverride . ................. ....196BindAddress ..... ................. ....192BrowserMatch ... ................. ....205CacheNegotiatedDocs ........ ....198ClearModuleList . .............. ....193CustomLog ........ ................. ....200DefaultIcon ..... ................. ....203DefaultType ..... ................. ....198deny . ................ ................. ....197Directory ........ ................. ....195DirectoryIndex ................. ....197

DocumentRoot ... ................. ....195ErrorDocument . ................. ....205ErrorLog .......... ................. ....199ExtendedStatus ................. ....193Group ............... ................. ....194HeaderName....... ................. ....203HostnameLookups . .............. ....199IfDefine .......... ................. ....192IfModule .......... ................. ....198IndexIgnore ..... ................. ....203IndexOptions ... ................. ....202KeepAlive ........ ................. ....191KeepAliveTimeout ............. ....191LanguagePriority ............. ....204Listen ............. ................. ....192LoadModule ....... ................. ....192Location .......... ................. ....205LogFormat ........ ................. ....199LogLevel .......... ................. ....199MaxClients ....... ................. ....191MaxKeepAliveRequests ...... ....191MaxSpareServers . .............. ....191MetaDir ............ ................. ....205MetaSuffix ....... ................. ....205MinSpareServers . .............. ....191NameVirtualHost . .............. ....208Options ............ ................. ....196Order ............... ................. ....196parafuncionalidaddecaché......... ....208parafuncionalidadSSL.............. ....209PidFile ............ ................. ....190Port . ................ ................. ....193ProxyRequests . ................. ....207ProxyVia .......... ................. ....207ReadmeName....... ................. ....203Redirect .......... ................. ....201ResourceConfig ................. ....190ScoreBoardFile ................. ....190ScriptAlias ..... ................. ....201ServerAdmin ..... ................. ....194

Page 272: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

272 Índice temático

ServerName ...... .................. .... 194ServerRoot ...... .................. .... 190ServerSignature . .............. .... 201ServerType ...... .................. .... 189SetEnvIf ......... .................. .... 209StartServers .. .................. .... 191Timeout ........... .................. .... 190TypesConfig .... .................. .... 198UseCanonicalName ............. .... 198User . ............... .................. .... 193UserDir ........... .................. .... 197VirtualHost .... .................. .... 209

directivasdeconfiguracuión,ApacheLockFile ......... .................. .... 190

directivasSSL......... .................. .... 209directories

/lib . ............... .................. ..... 23/usr . ............... .................. ..... 24

directorio/mnt ....... .................. ..... 23directorio/proc ..... .................. ..... 26Directorio/sbin .... .................. ..... 23directorio/usr ....... .................. ..... 24directorio/usr/local ............... ..... 26directorio/dev ........ .................. ..... 22directorio/etc ........ .................. ..... 22directorio/opt ........ .................. ..... 23directorio/usr/local ............... ..... 24directorio/var directory............... ..... 25directorios

/dev . ............... .................. ..... 22/etc . ............... .................. ..... 22/mnt . ............... .................. ..... 23/opt . ............... .................. ..... 23/proc .............. .................. ..... 26/sbin .............. .................. ..... 23/usr/local ...... .................. . 24, 26/var . ............... .................. ..... 25

Directorydirectivadeconfiguración deApache..195

DirectoryIndexdirectivadeconfiguración deApache..197

discodriver................. ................. ....257

discodedriver.......... ................. ....257creardesdeunaimagen.............. ....258producidopor otros.................. ....258uso.................... ................. ....258

discoduroconceptosbásicos.................... ....235introduccióna la creaciónde las

particiones...................... ....239particionamientode.................. ....235particionesextendidas............... ....243tiposdeparticiones.................. ....241tiposdesistemasdearchivos........ ....236

disquetededriverproducidopor RedHat .............. ....257

DocumentRoot ...... ................. ....173cambiar.............. ................. ....213cambiarlasopcionescompartidas......214directivadeconfiguración deApache..195

DSOscarga.................. ................. ....167cargar................. ................. ....210

E

eleccióndeunaCA ..................... ....177ErrorDocument

directivadeconfiguración deApache..205ErrorLog

directivadeconfiguración deApache..199estándar

grupos................ ................. ..... 30usuarios.............. ................. ..... 29

estructuracomún................ ................. ..... 21

estructura,sistemadeficheros......... ..... 21/etc/lilo.conf , configuración....... 36/etc/pam.conf .... ................. ....110/etc/pam.d ......... ................. ....110/etc/sysconfig

Page 273: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Índice temático 273

amd. .................. ................. ..... 45apmd. ................ ................. ..... 45authconfig ....... ................. ..... 45cipe . ................ ................. ..... 46clock ............... ................. ..... 46desktop ............ ................. ..... 47firewall .......... ................. ..... 47harddisks ........ ................. ..... 47hwconf ............. ................. ..... 48init . ................ ................. ..... 48irda . ................ ................. ..... 49keyboard .......... ................. ..... 50kudzu ............... ................. ..... 50mouse ............... ................. ..... 50network ............ ................. ..... 51pcmcia ............. ................. ..... 52rawdevices ....... ................. ..... 53sendmail .......... ................. ..... 53soundcard ........ ................. ..... 53ups ................... ................. ..... 54vncservers ....... ................. ..... 54

/etc/sysconfig , archivosen.......... 44Ethernet

parámetrosdelmódulo.............. ....227soportedemúltiplestarjetas......... ....234

ExtendedStatusdirectivadeconfiguración deApache..193

F

FHS..................... ................. . 21–22ficherosdeconexión.................... ....189ficherosde log

agente................ ................. ....200combinados.......... ................. ....201referente............. ................. ....200

formatocomúndel ficherodelogfile .....200FrontPage............... ................. ....187

G

Group

directivadeconfiguración deApache..194grupofloppy, usode.................... ....162grupos................... ................. ..... 29

estándar.............. ................. ..... 30floppy, usode........ ................. ....162privadosdeusuario.................. ..... 31

concepto.......... ................. ..... 33privadosdeusuarios................. ..... 29

gruposprivadosdeusuario............. ..... 31concepto............. ................. ..... 33

gruposprivadosdeusuarios............ ..... 29

H

halt ...................... ................. ..... 59HardwareRAID

( Ver RAID )HeaderName

directivadeconfiguración deApache..203HostnameLookups

directivadeconfiguración deApache..199HTTPput............... ................. ....206httpd.conf

( Verdirectivasdeconfiguración,Apache)

I

IfDefinedirectivadeconfiguración deApache..192

IfModuledirectivadeconfiguración deApache..198

inclusiónenel servidor............... 196, 204máquinasvirtuales................... ....196

IndexIgnoredirectivadeconfiguración deApache..203

IndexOptionsdirectivadeconfiguración deApache..202

init ..... .................. ................. ..... 39init, al estiloSysV ...................... ..... 43instalación

Page 274: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

274 Índice temático

servidorseguro....................... .... 165despuésde la instalacióndeRedHat

Linux ......................... .... 172durantela instalaciónde RedHat

Linux ......................... .... 169duranteunaactualizacióndeRedHat

Linux ......................... .... 170interrupción

servidorseguro....................... .... 188

J

jerarquía,sistemadeficheros.......... ..... 21

K

KeepAlivedirectivadeconfiguración deApache..191

KeepAliveTimeoutdirectivadeconfiguración deApache..191

Kerberos............... .................. .... 119configuracióndeclientes............ .... 125configuracióndel servidor........... .... 123modoenquefunciona............... .... 121razonesparael uso................... .... 119razonesparano usarlo............... .... 119recursosadicionales.................. .... 127

documentacióninstalada......... .... 127sitiosWebútiles................... .... 127

terminología........ .................. .... 120y PAM............... .................. .... 126

kernel.................. .................. .... 219controladores......................... .... 219

L

LanguagePrioritydirectivadeconfiguración deApache..204

LDAPaplicaciones......... .................. ..... 62archivos

slapd.conf ... .................. ..... 64

autentificaciónmediante............. ..... 68demoniosy utilidades................ ..... 66ficheros.............. ................. ..... 64

directorioschema ................ ..... 65mejoras............... ................. ..... 64módulosparaañadirfuncionalidad...... 67recursosadicionales.................. ..... 71

documentacióninstalada......... ..... 71libros relacionados................ ..... 72sitiosWebútiles................... ..... 71

terminología......... ................. ..... 63usoconPAM ......................... ..... 62usospara............. ................. ..... 62ventajasy desventajas............... ..... 61vistapreliminar....................... ..... 61

/lib directory......... ................. ..... 23LILO

cuestionesrelacionadasconBIOS......255cuestionesrelacionadascon el

particionamiento................ ....255Listen

directivadeconfiguración deApache..192LoadModule

directivadeconfiguración deApache..192Location

directivadeconfiguración deApache..205LockFile

directivadecoonfiguración deApache.190log files

formatocomúndel ficherodelog ......200LogFormat

directivadeconfiguración deApache..199LogLevel

directivadeconfiguración deApache..199

M

máquinavirtualListen command.................. ....216

máquinasvirtualesbasadasenel nombre................ ....214

Page 275: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Índice temático 275

configurar............ ................. ....213inclusiónenel servidor............ 196, 204Options ............ ................. ....196

MaxClientsdirectivadeconfiguración deApache..191

MaxKeepAliveRequestsdirectivadeconfiguración deApache..191

MaxRequestsPerChilddirectivadeconfiguración deApache..192

MaxSpareServersdirectivadeconfiguración deApache..191

MetaDirdirectivadeconfiguración deApache..205

MetaSuffixdirectivadeconfiguración deApache..205

MinSpareServersdirectivadeconfiguración deApache..191

mod_ssldadocomoDSO...................... ....213

modulósApache

supropio.......... ................. ....211módulos

Apachecargar.............. ................. ....210

módulosparámetros.................... ....219montaje

unidaddeCD-ROM ................. ....265mtoolsy el grupofloppy ............... ....162

N

NameVirtualHostdirectivadeconfiguración deApache..208

NetscapeNavigatorcaracterísticasdepublicación...........206

nivelesdeejecución.................... ..... 57ntsysv ................ ................. ..... 58Númerosdepuerto...................... ....183

O

objetosdinámicamentecompartidos( Ver DSOs)

OpenLDAP ............ ................. ..... 61OpenSSH............... ................. ....145

ficherosdeconfiguración............ ....150Options

directivadeconfiguración deApache..196Order

directivadeconfiguración deApache..196OS/2..................... ................. ....253

P

PAM..................... ................. ....109accesopormedioderexec ........ ....115accesopormedioderlogin ....... ....115accesopormediodersh ............ ....115argumentos.......... ................. ....112ficherosdeconfiguración............ ....110indicadoresdecontrol ............... ....111módulos.............. ................. ....110muestras............. ................. ....113nombresdeservicio.................. ....110otrosrecursos........ ................. ....116

documentacióninstalada......... ....116sitioswebútiles ................... ....117

rutasdemódulos..................... ....112ventajas.............. ................. ....109y Kerberos........... ................. ....126

paquetedevel........... ................. ....167paquetes

servidorseguroelegir parainstalar................. ....166

parámetrosmódulos.............. ................. ....219módulosEthernet.................... ....227módulosparael CD-ROM .......... ....220

parámetrosdel móduloespecificación........................ ....220

Page 276: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

276 Índice temático

partición/boot .............. .................. .... 255extendida............ .................. .... 243root.................. .................. .... 255swap................. .................. .... 254

particiónroot( Ver partición,root )

particiónswap( Ver partición,swap)

particionamentono destructivo......................... .... 248

particionamientocrearespacioparaparticiones........... 244cuántasparticiones................... .... 254CuestionesdeLILO relacionadascon..255puntodemontajey................... .... 254tiposdeparticiones.................. .... 241usodelespacioLibre ................ .... 245

particionesconceptosbásicos.................... .... 235

particionesextendidas.................. .... 243PidFile

directivadeconfiguración deApache..190PluggableAuthenticationModules

( Ver PAM )Port

directivadeconfiguración deApache..193PowerTools............ .................. .... 265

desinstalar.......... .................. .... 268instalación

enun entornoGUI ................ .... 267GNOMEo KDE................... .... 267indicadordecomandosdela shell... 267

lecturadel ficheroCONTENTS..... .... 265paquetes............. .................. .... 265

privilegioscontrol............... .................. .... 157

problemasdespuésde modificar el fichero

httpd.conf . ................. .... 189procesodearranque.................... ..... 35

init .................... ................. ..... 39procesodearranque.

x86 ................... ................. ..... 35programas

ejecutarenel inicio .................. ..... 59ProxyRequests

directivadeconfiguración deApache..207ProxyVia

directivadeconfiguración deApache..207pruebadecertificados.................. ....182public_html directories............ ....197puntodemontaje

partitionsand........ ................. ....254

R

RAID.................... ................. ....261explicacióndel ....................... ....261HardwareRAID...................... ....261motivosparael uso.................. ....261nivel 0................ ................. ....262nivel 1................ ................. ....262nivel 4................ ................. ....262nivel 5................ ................. ....262niveles................ ................. ....262SoftwareRAID....................... ....261

rc.localmodificar............. ................. ..... 59

ReadmeNamedirectivadeconfiguración deApache..203

Redirectdirectivadeconfiguración deApache..201

ResourceConfigdirectivadeconfiguración deApache..190

rexecconPAM ............. ................. ....115

rloginconPAM ............. ................. ....115

rshconPAM ............. ................. ....115

Page 277: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Índice temático 277

S

ScoreBoardFiledirectivadeconfiguracióndeApache..190

ScriptAliasdirectivadeconfiguración deApache..201

scriptsCGIfueradeScriptAlias . ........... ....204permitir ejecucionesexternas

cgi-bin ...... ................. ....195SCSI.................... ................. ....219seguridad............... ................. ..... 99

configuración........ ................. ....209contraseñas.......... ................. ....104dilema................ ................. ..... 99ejecutarApachesin.................. ....213enfoques............. ................. ....100explicaciónde........................ ....174Kerberos............. ................. ....119másalládel root...................... ....103políticas.............. ................. ....102recursossuplementarios............. ....106

libros sobreel tema............... ....107sitioswebútiles ................... ....107

redes.................. ................. ....105Sendmail............... ................. ..... 89

aliases................ ................. ..... 91cambioscomunesdeconfiguración ..... 91conIMAP............ ................. ..... 91conUUCP........... ................. ..... 91enmascaramiento..................... ..... 92instalaciónpordefecto............... ..... 90introducción......... ................. ..... 89LDAP y .............. ................. ..... 93recursosadicionales.................. ..... 94

documentacióninstalada......... ..... 94libros relacionados................ ..... 95sitiosWebútiles................... ..... 95

spam.................. ................. ..... 92ServerAdmin

directivadeconfiguración deApache..194

ServerNamedirectivadeconfiguración deApache..194

ServerRootdirectivadeconfiguración deApache..190

ServerSignaturedirectivadeconfiguración deApache..201

ServerTypedirectivadeconfiguración deApache..189

serviciossistema

iniciandoconchkconfig ...... ..... 58iniciandoconntsysv ........... ..... 58

servidorno segurodesactivar ............ ................. ....215

servidorproxy.......... ............... 207–208servidorseguro......... ................. ....185

acceso................ ................. ....183apagado.............. ................. ....188arranque.............. ................. ....188clave

generar............ ................. ....177conexión a ........... ................. ....183configuración........ ................. ....187documentación

instalada........... ................. ....184encontrarayudacon ................. ....184explicacióndeseguridad............ ....174instalación........... ................. ....165

conRPM.......... ................. ....172problemasdurantela instalación........184proporcionaruncertificadopara........174reanudar.............. ................. ....188recargar .............. ................. ....188reconocimientos...................... ....166sitiosweb............ ................. ....185URLspara........... ................. ....183

SetEnvIfdirectivadeconfiguración deApache..209

shadowcontraseña........... ................. ....115

Page 278: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

278 Índice temático

utilidades............ .................. .... 157sistema

apagar............... .................. ..... 59sistemadeficheros

estándar............. .................. ..... 22estructura

libros ............. .................. ..... 21jerarquía............ .................. ..... 21organización........ .................. ..... 22

sistemasdearchivostipos,vistazoa........................ .... 236

SoftwareRAID( Ver RAID )

SSH.................... .................. .... 145capas................ .................. .... 148ficherosdeconfiguración............ .... 150introducción........ ................ 145–146porquéusar......... .................. .... 146protocolo............ ................ 145, 148

autentificación..................... .... 149capadetransporte................. .... 148conexión ......... .................. .... 150

reenvío por TCP/IP.................. .... 152reenvío por X11...................... .... 152requisitos............ .................. .... 154SesionesX11......................... .... 152

StartServersdirectivadeconfiguración deApache..191

stripingFundamentosdelRAID ............. .... 261

SysVinit ............... .................. ..... 43directoriosusadospor ............... ..... 43nivelesdeejecuciónusadospor.......... 57

T

Timeoutdirectivadeconfiguración deApache..190

Tripwire................ .................. .... 129basededatos

actualización....................... .... 140

inicialización...................... ....136componentes......... ................. ....134configuraciónde ..................... ....132controldeintegridad

ejecución.......... ................. ....137ficherodeconfiguración

la firma............ ................. ....142ficherodepolítica

actualización....................... ....141modificación....................... ....135

frasesdecontraseñaselección.......... ................. ....136

funcionesdecorreoelectrónico.........142pruebas............ ................. ....143

impresióndeinformes............... ....137instalaciónde........ ................. ....131instalacióndeRPM.................. ....132la ubicacióndelos ficheros......... ....134otrosrecursos........ ................. ....143

documentacióninstalada......... ....143sitioswebútiles ................... ....143

twprint y la basededatos........ ....138usode................ ................. ....129

troubleshootingerrorlog.............. ................. ....199

TypesConfigdirectivadeconfiguración deApache..198

U

ubicacióndelosficherosdeRedHatLinux 27URLs

parasuservidorseguro.............. ....183UseCanonicalName

directivadeconfiguración deApache..198User

directivadeconfiguración deApache..193UserDir

directivadeconfiguración deApache..197users

Page 279: TiendaLinux.com · 2001. 9. 10. · Índice Red Hat Linux 7.1 Introducción.................................................................................. ix Cómo encontrar la

Índice temático 279

directoriosHTML personales...........197usuarios................. ................. ..... 29

estádar................ ................. ..... 29utilidaddeparticionamientofips ..........251utilidades

shadow ............... ................. ....157utilidadesinitscript...................... ..... 58

V

VeriSignusodeun certificadoexistente..........175

VirtualHostdirectivadeconfiguración deApache..209

W

webmasterdireccióndee-mailpara............. ....194