red hat enterprise linux 6 rh200 es es
TRANSCRIPT
Curso acelerado de RHCSALibro de trabajo del estudianteRed Hat Enterprise Linux 6Versión es-2-20110115
CURSO ACELERADODE RHCSA
RH200
Red Hat Enterprise Linux 6 RH200Curso acelerado de RHCSAEdición 2
Autor Bowe StricklandAutor George HackerAutor Joshua HoffmanAutor Robert LockeAutor Brad SmithAutor Forrest TaylorEditor Steven BonnevilleEditor Mark Howson
Copyright © 2010 Red Hat, Inc.
The contents of this course and all its modules and related materials, including handouts toaudience members, are Copyright © 2010 Red Hat, Inc.
No part of this publication may be stored in a retrieval system, transmitted or reproduced inany way, including, but not limited to, photocopy, photograph, magnetic, electronic or otherrecord, without the prior written permission of Red Hat, Inc.
This instructional program, including all material provided herein, is supplied without anyguarantees from Red Hat, Inc. Red Hat, Inc. assumes no liability for damages or legal actionarising from the use or misuse of contents or details contained herein.
If you believe Red Hat training materials are being used, copied, or otherwise improperlydistributed please e-mail [email protected] or phone toll-free (USA) +1 (866) 626-2994or +1 (919) 754-3700.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, JBoss, Hibernate, Fedora, theInfinity Logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States andother countries.
Linux® is the registered trademark of Linus Torvalds in the United States and othercountries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a registered trademark of Silicon Graphics International Corp. or its subsidiaries inthe United States and/or other countries.
All other trademarks are the property of their respective owners.
Colaboradores: Brian Butler, Victor Costea y Andrew Dingman, Chris Negus
RH200-6-es-2-20110115 iii
Convenciones del documento viiNotas y advertencias ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii
Introducción ixBienvenido a clase. .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ixAcerca de Red Hat Enterprise Linux ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ixSoftware adicional de Red Hat Enterprise Linux ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xContacto con la Asistencia técnica de Red Hat ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xii
Acerca de este curso xvCurso acelerado de RHCSA .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvEstructura del curso ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvOrientación sobre la red del salón de clases ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvi
Internacionalización xixSoporte de idioma ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xixIdioma predeterminado de todo el sistema ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xixSelección de idioma por usuario ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xixMétodos de entrada ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxReferencia de códigos de idioma ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xx
1. Configuración de red y solución de problemas 1Comprensión de los archivos de configuración de red ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2Proceso de solución de problemas básico ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8Kit de herramientas para la solución de problemas de red ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10Prueba de criterios ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2. Administración de usuarios y grupos 17Administración de usuarios y grupos locales ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18Administración de contraseñas .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24Autenticación de red mediante el uso de un servidor LDAP ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27Montaje en red de directorios hogar ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31Prueba de criterios ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3. Administración de procesos de línea de comando 39Inicio de herramientas gráficas desde BASH .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40Control de procesos ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43Finalización y control de procesos ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44Administración de tareas periódicas ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48Prueba de criterios .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4. Obtener ayuda de Red Hat 55Buscar en la documentación en línea ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56Obtención de lo mejor de Red Hat Global Support Services (GSS) ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
5. Administrar recursos del sistema 63Determinar destinos de registros .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64Buscar y analizar un informe de resumen de registro ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68Cambiar la dirección de correo electrónico de resumen de registro ... . . . . . . . . . . . . . . . . . . . . . . . . . . 70Prueba de criterios ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
6. Instalación y administración de software 77Registrar el sistema con Red Hat Network (RHN) ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78Uso de yum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81Manipulación de software de terceros .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
RH200
iv RH200-6-es-2-20110115
Uso de repositorios de terceros .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88Prueba de criterios ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
7. Administrar sistemas remotos 95Acceso a un intérprete de comandos remoto ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96Transferencias remotas de archivos ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98Uso de llaves de SSH ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101Protección del acceso a SSH ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104Archivadores y compresión ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106Prueba de criterios ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
8. Implementar y proteger servicios 113Administrar el reloj del sistema ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114Administrar servicios ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116Configuración de un servidor VNC ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118Proteger acceso a un escritorio GNOME remoto ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120Implementar un servidor FTP ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122Configuración de un servidor FTP ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124Implementar un servidor web ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126Proteger servicios con un cortafuego ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128Prueba de criterios ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
9. Administración de SELinux 135Conceptos básicos de seguridad de SELinux ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136Modos de SELinux ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138Visualizar y modificar los modos de SELinux ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140Mostrar y modificar contextos de archivo de SELinux .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142Administración de booleanos de SELinux .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145Control de violaciones de SELinux ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146Prueba de criterios ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
10. Administración de particiones simples y sistemas de archivos 153Particiones simples y sistemas de archivos .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154Habilitación de la privacidad de datos con encriptación de partición ... . . . . . . . . . . . . . . . . . . . . . . . . 159Administración de espacio de intercambio ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163Prueba de criterios ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
11. Control de acceso a los archivos 169Administración de listas de control de acceso de sistemas de archivos .. . . . . . . . . . . . . . . . . . . . . 170Prueba de criterios ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
12. Administración de almacenamiento flexible con el administrador de volúmeneslógicos 179
Reconocer los componentes del LVM .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180Implementar el almacenamiento de LVM con herramientas de la línea de comando ... . . . . 184Extender un volumen lógico y el sistema de archivos ext4 ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187Extensión y reducción de un grupo de volúmenes ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191Crear una instantánea para facilitar la copia de seguridad de datos ... . . . . . . . . . . . . . . . . . . . . . . . . . 194Prueba de criterios ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
13. Controlar el proceso de arranque 201Arranque de un kernel alternativo ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202Arranque en un nivel de ejecución diferente ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204Resolver problemas de GRUB .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
RH200-6-es-2-20110115 v
Convertir los cambios en GRUB en persistentes ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209Paso de argumentos de kernel .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211Cambio del nivel de ejecución predeterminado ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213Reparación de problemas de arranque .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215Prueba de criterios ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
14. Ajuste y mantenimiento del kernel 223Arquitecturas compatibles e identificación del kernel .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224Administración de los módulos del kernel .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227Actualización del kernel .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
15. Administrar máquinas virtuales 235Introducción a la virtualización de KVM .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236Instalación de guest virtual .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239Configuración de guests para su inicio durante el proceso de arranque ... . . . . . . . . . . . . . . . . . . . . 241Prueba de criterios ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
16. Instalación automatizada de Red Hat Enterprise Linux 247Generalidades de introducción ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248Crear un archivo kickstart con system-config-kickstart .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249Poner el archivo kickstart a disposición de los instaladores ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251Crear medios de arranque ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253Apuntar el instalador al archivo kickstart .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254Modificar un archivo kickstart .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257Prueba de criterios ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
A. Soluciones 263Configuración de red y solución de problemas .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263Administración de usuarios y grupos ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267Administración de procesos de línea de comando ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273Obtener ayuda de Red Hat ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277Administrar recursos del sistema ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278Instalación y administración de software ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281Administrar sistemas remotos ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285Implementar y proteger servicios ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292Administración de SELinux ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299Administración de particiones simples y sistemas de archivos .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304Control de acceso a los archivos .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312Administración de almacenamiento flexible con el administrador de volúmeneslógicos .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315Controlar el proceso de arranque ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323Ajuste y mantenimiento del kernel .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331Administrar máquinas virtuales ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333Instalación automática de Red Hat Enterprise Linux ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
vi
RH200-6-es-2-20110115 vii
Convenciones del documento
Notas y advertencias
NotaLas "notas" son consejos, atajos o enfoques alternativos para una tarea determinada.Ignorar una nota no debería tener consecuencias negativas, pero podría pasarse por altoalgún truco que puede simplificar una tarea.
ComparaciónLas "comparaciones" buscan similitudes y diferencias entre la tecnología o el tema que seestá tratado y tecnologías o temas similares de otros sistemas operativos o entornos.
ReferenciasEn las "referencias", se describe el lugar donde se puede encontrar documentación externarelevante para un tema.
ImportanteEn los cuadros "importantes", se detallan cosas que se olvidan con facilidad: cambiosde configuración que sólo se aplican a la sesión actual o servicios que se deben reiniciarpara poder aplicar una actualización. Ignorar un cuadro con la etiqueta "Importante" noprovocará pérdida de datos, pero puede causar irritación y frustración.
AdvertenciaNo se deben ignorar las "advertencias". Es muy probable que ignorar las advertenciasprovoque pérdida de datos.
viii
RH200-6-es-2-20110115 ix
Introducción
Bienvenido a clase.Muchas gracias por asistir a esta clase de capacitación de Red Hat. Infórmenos si tiene algunanecesidad especial mientras se encuentra en nuestro centro de capacitación.
Pregúntele al instructor si tiene alguna duda sobre el centro, como los horarios de atención delcentro y cuándo tendrá acceso al salón de clases, las ubicaciones de los baños y las salas dedescanso, la disponibilidad de teléfonos y conectividad de red, e información sobre el área local.
Como cortesía a los otros estudiantes, coloque su buscapersonas o teléfono celular en vibracióno silencio, o bien apague sus dispositivos durante la clase. Le solicitamos que realice llamadassólo durante los períodos de descanso.
Si tiene una emergencia personal y no puede asistir o completar la clase, infórmenos al respecto.Muchas gracias.
Acerca de Red Hat Enterprise LinuxEste curso se dicta con Red Hat Enterprise Linux, una distribución de Linux para empresasque se centra en software de código abierto desarrollado, diseñada específicamente paraorganizaciones que usan Linux en la configuración de producción.
Red Hat Enterprise Linux se vende mediante una suscripción, donde la suscripción le otorgaacceso continuo a todas las versiones compatibles del sistema operativo en forma de fuente ybinario, no sólo la última, lo cual incluye todas las actualizaciones y correcciones. Se incluyenservicios de asistencia extendida: se incluyen un contrato de asistencia y derecho al Módulo deactualización de Red Hat Network durante el período de suscripción. Se encuentran disponiblesdiversos contratos de nivel de servicios (SLA) que pueden proporcionar una cobertura máximadurante las 24 horas, todos los días de la semana, con un tiempo de respuesta garantizadode una hora para problemas de gravedad 1. La asistencia estará disponible por hasta sieteaños después de una versión principal en particular (diez años con el complemento opcional"Asistencia de actualización extendida").
Red Hat Enterprise Linux se lanza en un ciclo de varios años entre versiones principales. Lasactualizaciones secundarias de versiones principales se lanzan aproximadamente cada seismeses durante el ciclo de vida del producto. Los sistemas certificados en una actualizaciónsecundaria de una versión principal seguirán siendo certificados para actualizacionessecundarias futuras de la versión principal. Un conjunto principal de bibliotecas compartidastienen API y ABI, lo cual se preservará entre las versiones principales. Se proporcionan muchasotras bibliotecas compartidas, que tienen API y ABI, y que se garantizan dentro de una versiónprincipal (para todas las actualizaciones secundarias), pero que no se garantizan que seránestables entre las versiones principales.
Red Hat Enterprise Linux se basa en un código desarrollado por la comunidad de código abierto,que se presenta generalmente primero a través de la distribución de Fedora disponible de
Introducción
x RH200-6-es-2-20110115
forma gratuita y con el patrocinio de Red Hat (http://fedoraproject.org/). Red Hatdespués agrega mejoras de rendimiento, pruebas intensivas y certificaciones de productosproducidos por los principales proveedores de hardware y software independientes. Red HatEnterprise Linux proporciona un alto nivel de estandarización mediante su soporte para cuatroarquitecturas de procesador (Intel de 32 bits compatible con x86, AMD64/Intel 64 (x86-64),IBM POWER y mainframe IBM en System z). Además, admitimos más de 4000 certificacionesISV de Red Hat Enterprise Linux, independientemente si el sistema operativo RHEL que esténusando esas aplicaciones se esté ejecutando en “un sistema vacío”, en una máquina virtual,como aparato de software, o en la nube con tecnologías como Amazon EC2.
Actualmente, la familia de productos Red Hat Enterprise Linux incluye:
• Red Hat Enterprise Linux para Servidores: la plataforma de centro de datos para servidorescríticos que ejecutan Red Hat Enterprise Linux. Este producto incluye soporte para losservidores compatibles con x86 y x86-64 más grandes y los niveles más altos de asistenciatécnica, que se puede implementar en un sistema vacío, como guest en los hipervisoresprincipales, o en la nube. Las suscripciones están disponibles con derechos a guests flexiblesde uno, cuatro o un número ilimitado de guests por host físico. Los precios se basan en lacantidad de pares de sockets usados en la placa madre del sistema, la cantidad de guestsadmitidos, el nivel de asistencia deseado y la duración de la suscripción que se desee.
Red Hat Enterprise Linux para IBM POWER y Red Hat Enterprise Linux para IBM en System zson variantes similares diseñadas para esas arquitecturas de sistema.
• Red Hat Enterprise Linux Desktop: creado para el administrador y el usuario final, el productoRed Hat Enterprise Linux Desktop proporciona un entorno atractivo y muy productivo paratrabajadores especializados que se desempeñan en escritorios y equipos portátiles. Lasinstalaciones de cliente se pueden personalizar especialmente y se las puede bloquear paralograr simplicidad y seguridad en cualquiera tarea de estación de trabajo.
La variante básica Desktop (Escritorio) se diseñó para trabajadores operativos que tienenun control administrativo limitado del sistema, que usan principalmente aplicaciones deproductividad como Firefox, Evolution/Thunderbird, OpenOffice.org y Planner/TaskJuggler.La variante más sofisticada Workstation (Estación de trabajo) se diseñó para usuarios deLinux avanzados que necesitan un entorno de desarrollo independiente y que esperan tenerprivilegios de superusuario local o privilegios de superusuario selecto.
Además, hay otras variantes como Red Hat Enterprise Linux para HPC Head Node y RedHat Enterprise Linux para HPC Compute Node (dirigidas a clústeres informáticos de altorendimiento), y Red Hat Enterprise Linux para SAP Business Applications. Si desea obtener másinformación, visite http://www.redhat.com/.
Software adicional de Red Hat Enterprise LinuxSe proporcionan dos canales de actualización de software adicionales con Red Hat EnterpriseLinux, además de los paquetes de software principales que se envían:
• Complementario: el canal "Complementario" proporciona paquetes de código cerradoselectos, creados para Red Hat Enterprise Linux para la conveniencia del cliente. Esto incluyeaplicaciones como Adobe Flash o Java JVM de marca registrada.
Software adicional de Red Hat Enterprise Linux
RH200-6-es-2-20110115 xi
• Opcional: el canal "Opcional" proporciona paquetes de código abierto selectos para laconveniencia del usuario únicamente. Generalmente, se incluyen en otra variante de Red HatEnterprise Linux como un paquete totalmente compatible o son un requisito de creación parala distribución. Estos paquetes están disponibles sólo a través de un canal secundario de RedHat Network.
ImportanteLos paquetes Complementarios y Opcionales se proporcionan con asistencia limitada para laconveniencia del cliente únicamente.
Red Hat también ofrece una cartera de Complementos para Red Hat Enterprise Linux totalmentecompatibles que extienden las características de su suscripción de Red Hat Enterprise Linux.Estos complementos le permiten agregar capacidades y personalizar su entorno informáticosegún sus necesidades particulares. Estos complementos incluyen compatibilidad con clústeresde aplicaciones de alta disponibilidad, sistemas de archivos de clústeres y sistemas de archivosmuy grandes, administración de sistemas mejorada con Red Hat Network, asistencia deactualización extendida y mucho más.
NotaVisite http://www.redhat.com/rhel/add-ons/ para obtener más información sobrelos Complementos para Red Hat Enterprise Linux disponibles.
Si desea información sobre otros productos que ofrece Red Hat, como Red Hat EnterpriseVirtualization, JBoss Enterprise Middleware, Red Hat Enterprise MRG y varios servicios deconsultoría e ingeniería personalizados, http://www.redhat.com/products/ tambiéntiene datos útiles.
El Proyecto Fedora también suministra paquetes adicionales para Red Hat Enterprise Linux através de EPEL (Paquetes extras para Enterprise Linux). EPEL surge de un esfuerzo comunitarioy voluntario para crear un repositorio de paquetes complementarios de alta calidad que puedanutilizarse con Red Hat Enterprise Linux y derivados compatibles. Acepta software de códigoabierto y gratuito no gravado legalmente, que no crea conflicto con los paquetes en Red HatEnterprise Linux o los productos complementarios de Red Hat. Los paquetes EPEL se crean parauna versión principal en particular de Red Hat Enterprise Linux y EPEL los actualizará durante elperíodo de asistencia estándar de esa versión principal.
Red Hat no proporciona contratos de nivel de servicios ni asistencia comercial para los paquetesEPEL. Dado que Red Hat no ofrece asistencia oficial para estos paquetes, EPEL proporciona unaforma útil de reducir los costos de asistencia para los paquetes sin asistencia que su empresadesee usar con Red Hat Enterprise Linux. EPEL le permite distribuir el trabajo de asistencia queusted debería hacer por sí solo a través de otras organizaciones que comparten su deseo de usareste software de código abierto en RHEL. Los paquetes de software en sí atraviesan el mismoproceso de revisión que los paquetes de Fedora, lo que significa que los desarrolladores de Linuxexperimentados han examinado los paquetes en busca de problemas. Como EPEL no sustituye
Introducción
xii RH200-6-es-2-20110115
ni crea conflicto con los paquetes de software enviados en RHEL, usted puede usar EPEL conconfianza de que no causará problemas con sus paquetes de software normales.
Para los desarrolladores que desean que su software de código abierto se convierta en partede Red Hat Enterprise Linux, usualmente la primera etapa es patrocinarlo en EPEL paraque los usuarios de RHEL tengan la oportunidad de usarlo; así, se obtiene experiencia en laadministración del paquete para una distribución de Red Hat.
Visite http://fedoraproject.org/wiki/EPEL/ para obtener más información sobre EPEL.
ImportanteEPEL es respaldado por el Proyecto Fedora administrado por la comunidad y no por laAsistencia de Red Hat.
Contacto con la Asistencia técnica de Red HatUno de los beneficios de su suscripción de Red Hat Enterprise Linux es el acceso a la asistenciatécnica a través del portal de clientes de Red Hat en http://access.redhat.com/. Si notiene una cuenta de Red Hat en el portal de clientes o no puede iniciar sesión, puede visitarhttps://access.redhat.com/support/faq/LoginAssistance.html o comunicarse conAtención al cliente para obtener asistencia.
Es posible que pueda solucionar un problema sin asistencia técnica formal al buscar en la Basede conocimiento (https://access.redhat.com/kb/knowledgebase/). O bien, puedecomunicarse con la Asistencia de Red Hat a través de un formulario web o telefónicamente,según el nivel de asistencia. Los números de teléfono y los horarios de atención paradiferentes regiones varían; consulte https://access.redhat.com/support/contact/technicalSupport.html para obtener la información actual. La información sobre elproceso de asistencia está disponible en https://access.redhat.com/support/policy/support_process.html.
Algunos consejos sobre la preparación de su informe de errores para una participación máseficaz de la Asistencia de Red Hat:
• Defina el problema. Asegúrese de que pueda expresar el problema y sus síntomas antes decomunicarse con Red Hat. Sea tan específico como pueda y describa con detalles los pasos quepuede usar (si corresponde) para reproducir el problema.
• Reúna información básica. ¿Qué versión de nuestro software está ejecutando? ¿Está usandola última actualización? ¿Qué pasos lo llevaron al error? ¿Se puede recrear el problema y quépasos son necesarios? ¿Se ha realizado algún cambio reciente que podría haber disparado elproblema? ¿Se emitieron mensajes u otras notas de diagnóstico? ¿Qué decían exactamente (laredacción exacta puede ser fundamental)?
• Reúna información de diagnóstico relevante. Esté preparado para suministrar toda lainformación relevante que sea posible; registros, volcados principales, seguimientos, resultados
Contacto con la Asistencia técnica de Red Hat
RH200-6-es-2-20110115 xiii
de sosreport, etc. La Asistencia técnica podrá ayudarlo a determinar qué datos sonrelevantes.
• Determine el nivel de gravedad de su problema. Red Hat usa una escala de cuatro nivelespara indicar la gravedad de los problemas; los criterios se pueden encontrar en https://access.redhat.com/support/policy/GSS_severity.html.
AdvertenciaBugzilla no es una herramienta de asistencia. Para los problemas de asistencia que afectanRed Hat Enterprise Linux, los clientes deben registrar sus errores a través de los canalesde asistencia analizados anteriormente para poder asegurarse de que Red Hat comprendapor completo su problema y pueda responder según los términos de su contrato de nivel deservicios. Los clientes no deben registrar errores directamente en la interfaz web http://bugzilla.redhat.com/.
Para Red Hat Enterprise Linux, el Departamento de ingeniería usa Bugzilla para hacer unseguimiento de errores y cambios, y para comunicarse en un nivel técnico con los socios delDepartamento de ingeniería y otras partes externas. Todos, incluso personas que no seanclientes, pueden registrar problemas en Bugzilla, y Red Hat los controla y revisa para la inclusiónen la fe de erratas.
Sin embargo, Red Hat no garantiza ningún SLA por errores registrados directamente en Bugzilla(omitiendo los canales de asistencia normales). Puede ocurrir una revisión inmediatamente odespués de un período de tiempo de cualquier duración. Los problemas que llegan a Red Hata través de la Asistencia siempre tienen prioridad sobre los problemas de impacto y gravedadsimilares que se registran directamente en Bugzilla. Además, se les pueden proporcionar alos clientes soluciones alternativas y revisiones (si son posibles y adecuadas) a través de laAsistencia, incluso antes de que se emita una solución permanente a través de Red Hat Network.
Red Hat considera los problemas que se ingresan directamente en Bugzilla comentariosimportantes y esto nos permite ofrecer una interacción eficaz con la comunidad de desarrollo decódigo abierto y ser tan transparentes como sea posible con los clientes mientras se procesan losproblemas. No obstante, para los clientes que encuentren problemas de producción en Red HatEnterprise Linux, Bugzilla no es el canal correcto.
xiv
RH200-6-es-2-20110115 xv
Acerca de este curso
Curso acelerado de RHCSAEl Curso acelerado de RHCSA (RH200) está diseñado para estudiantes que ya poseen unaexperiencia significativa con la administración de sistemas Linux. El Curso acelerado de RHCSAabarca una revisión de las tareas tratadas en Administración de sistemas Red Hat I (RH124) yAdministración de sistemas Red Hat II (RH135) a un ritmo acelerado. Este curso se basa en elentendimiento existente del estudiante sobre la administración de sistemas Linux basada en lalínea de comando. Las alternativas basadas en interfaces gráficas del usuario no constituyen unacaracterística principal de este curso.
Los estudiantes deben ser capaces de ejecutar comandos comunes como cp, grep, sort,mkdir, tar, mkfs, ssh y yum desde la señal del intérprete de comandos. Además, deben estarfamiliarizados con opciones de comando comunes y con el acceso a las páginas del manual y sulectura para obtener ayuda. Se recomienda a los estudiantes que no posean estos conocimientosque realicen el curso Administración de sistemas Red Hat I (RH124).
Objetivos• Proporcionar a los estudiantes con una cierta experiencia en administración de sistemas Linux
un entorno de aprendizaje acelerado para redondear su conjunto de habilidades
• Preparar a los estudiantes para que validen sus habilidades en el examen de RHCSA
Audiencia y requisitos previos• Estudiantes que tengan de un año a tres años de experiencia en administración de sistemas
Linux de tiempo completo
Estructura del cursoLos cursos de capacitación de Red Hat son clases del mundo real, basadas en el rendimiento,prácticas e interactivas que tienen como propósito fomentar la participación activa yproporcionar la oportunidad de usar sistemas reales para desarrollar habilidades reales.Alentamos a los estudiantes a participar en clase y a hacer preguntas para obtener el máximoprovecho de sus sesiones de capacitación.
Este curso se divide en varias unidades, que están organizadas por tema. Cada unidad se divideen varias secciones, que se centran en una tarea o habilidad específica. La unidad comenzarácon una introducción al material y después se pasará a la primera sección.
En cada sección, habrá una presentación guiada por el instructor. Durante la presentación,se recomienda que tome nota en su libro de trabajo del estudiante (este libro); es posibleque el instructor le recuerde hacerlo. Después de la presentación, habrá una actividad breveo una evaluación para ofrecerle la oportunidad de practicar con el material o de revisar losprocedimientos. Después de la revisión de la evaluación, el instructor pasará a la siguientesección. Al final de la unidad, normalmente habrá un tipo de ejercicio de laboratorio práctico(una "prueba de criterios") que le dará la oportunidad de aprender mientras ejercita y de revisar
Acerca de este curso
xvi RH200-6-es-2-20110115
su comprensión del contenido de la unidad. No dude en hacer preguntas en clase o en solicitar elasesoramiento o la ayuda del instructor durante el ejercicio de final de la unidad. Deseamos queel entorno del salón de clases sea un lugar de "bajo riesgo", donde usted se sienta cómodo parahacer preguntas y aprender de las cosas que funcionen y de las que no funcionen inicialmente.
Orientación sobre la red del salón de clasesEs posible que se usen dos subredes en este curso. La red principal del salón de clases es192.168.0.0/24 y pertenece a los hosts del dominio DNS "example.com". Esta red se usará parala mayoría de las actividades del salón de clases. Algunos cursos usan una segunda subred,192.168.1.0/24, que pertenece a los hosts del dominio DNS "remote.test". Se puede acceder aesta red de los hosts de example.com y se usa en los ejercicios de laboratorio que requierenservicios de pruebas o configuración de seguridad de máquinas (teóricamente) fuera de sucontrol administrativo.
A cada estudiante se le asigna una máquina física (desktopX.example.com en 192.168.0.X)que puede alojar dos o más máquinas virtuales para los actividades de laboratorio,serverX.example.com y hostX.example.com.
En algunos cursos, es posible que los estudiantes también usen una cuenta que no sea de usuarioroot en una máquina de prueba en el dominio remote.test, remoteX.example.com (192.168.1.X),para probar el acceso a servicios de red en sus máquinas example.com durante las actividades delaboratorio.
El instructor controla varias máquinas que los estudiantes también pueden ver. La máquinainstructor.example.com (también conocida como instructor.remote.test) es el servidor deutilidades del salón de clases, que proporciona los servicios de enrutamiento predeterminados,DHCP, servicio de nombre DNS, uno o más repositorios de software YUM que usa la clase yotros servicios de red. También se conecta al proyector de video para permitir que el instructormuestre diapositivas y demostraciones. Proporciona una máquina virtual para el instructor,demo.example.com, que este usará para las demostraciones en clase.
Nombre de la máquina Dirección IP Función
desktopX.example.com 192.168.0.X Estación de trabajo física delestudiante
serverX.example.com 192.168.0.(X+100) Máquina virtual principal delestudiante
hostX.example.com 192.168.0.(X+200) Máquina virtual secundariadel estudiante
remoteX.remote.test 192.168.1.X Máquina de prueba delestudiante en el dominioremote.test (uso compartido)
instructor.example.com 192.168.0.254 Máquina física del instructor yservidor de utilidades
instructor.remote.test 192.168.1.254 Identidad deinstructor.example.com en lared remote.test
Orientación sobre la red del salón de clases
RH200-6-es-2-20110115 xvii
Nombre de la máquina Dirección IP Función
demo.example.com 192.168.0.250 Máquina virtual parademostraciones del instructor
Tabla 1. Máquinas del salón de clases
xviii
RH200-6-es-2-20110115 xix
Internacionalización
Soporte de idiomaRed Hat Enterprise Linux 6 admite oficialmente veintidós idiomas: inglés, asamés, bengalí, chino(simplificado), chino (tradicional), francés, alemán, guyaratí, hindi, italiano, japonés, canarés,coreano, malayalam, maratí, oriya, portugués (brasileño), panyabí, ruso, español, tamil y telugú.Los soportes para maithili, nepalés y cingalés se proporcionan como vistas previas de tecnología.
Idioma predeterminado de todo el sistemaEl idioma predeterminado del sistema operativo se configura normalmente en inglés de EE. UU.(en_US.UTF-8), pero esto se puede modificar durante o después de la instalación.
Para utilizar otros idiomas, es posible que deba instalar grupos de paquetes adicionales paraproporcionar las fuentes, las traducciones, los diccionarios y otras aplicaciones correspondientes.Por convención, estos grupos de paquetes siempre tienen el nombre language-support.Estos grupos de paquetes se pueden seleccionar durante la instalación, o bien después de la
instalación con PackageKit (System → Administration → Add/Remove Software) o yum.
El idioma predeterminado de un sistema se puede cambiar con system-config-language
(System → Administration → Language), que afecta el archivo /etc/sysconfig/i18n.
Selección de idioma por usuarioLos usuarios pueden preferir usar un idioma diferente para su propio entorno de escritorio ointérpretes de comandos interactivos a utilizar el idioma configurado como predeterminado delsistema. Esto se le indica al sistema a través de la variable de entorno LANG.
Esto se puede configurar de forma automática para el entorno de escritorio GNOME alseleccionar un idioma en la pantalla de inicio de sesión gráfica al hacer clic en el elementoLanguage, ubicado en la esquina inferior izquierda de la pantalla de inicio de sesión gráfica,inmediatamente antes de iniciar sesión. Se le preguntará al usuario si el idioma seleccionado sedebe usar sólo para el inicio de sesión en cuestión o como valor predeterminado para el usuariode aquí en adelante. GDM guarda la configuración en el archivo ~/.dmrc del usuario.
Si un usuario desea que su entorno de intérprete de comandos use la misma configuraciónLANG que su entorno gráfico incluso cuando inicie sesión a través de una consola de texto ossh, puede configurar un código similar al siguiente en su archivo ~/.bashrc. Este códigoconfigurará su idioma preferido si se guarda uno en ~/.dmrc o usará el predeterminado delsistema si no se guarda ninguno:
i=$(grep 'Language=' ${HOME}/.dmrc | sed 's/Language=//')if [ "$i" != "" ]; then export LANG=$i
Internacionalización
xx RH200-6-es-2-20110115
fi
Los idiomas con caracteres no ASCII pueden tener problemas para visualizarse en algunosentornos. Es posible que los caracteres kanji, por ejemplo, no se visualicen como deberían enuna consola virtual. Se pueden crear comandos individuales para utilizar otro idioma mediante laconfiguración de LANG en la línea de comando:
[user@host ~]$ LANG=fr_FR.UTF-8 datelun. oct. 24 10:37:53 CDT 2011
Los comandos subsiguientes se revertirán y utilizarán el idioma de salida predeterminado delsistema. El comando locale se puede usar para comprobar el valor actual de LANG y otrasvariables de entorno relacionadas.
Métodos de entradaSi los paquetes de soporte de idioma adecuados están instalados, se puede utilizar IBus (un busde entrada inteligente) para ingresar texto en diferentes idiomas en X. Puede habilitar IBus con el
comando im-chooser (System → Preferences → Input Method).
Referencia de códigos de idioma
Idioma Valor $LANG Grupo de paquetes de idioma
Inglés (EE. UU.) en_US.UTF-8 (predeterminado)
Asamés as_IN.UTF-8 assamese-support
Bengalí bn_IN.UTF-8 bengali-support
Chino (simplificado) zh_CN.UTF-8 chinese-support
Chino (tradicional) zh_TW.UTF-8 chinese-support
Francés fr_FR.UTF-8 french-support
Alemán de_DE.UTF-8 german-support
Guyaratí gu_IN.UTF-8 gujarati-support
Hindi hi_IN.UTF-8 hindi-support
Italiano it_IT.UTF-8 italian-support
Japonés ja_JP.UTF-8 japanese-support
Canarés kn_IN.UTF-8 kannada-support
Coreano ko_KR.UTF-8 korean-support
Malayalam ml_IN.UTF-8 malayalam-support
Maratí mr_IN.UTF-8 marathi-support
Oriya or_IN.UTF-8 oriya-support
Portugués (brasileño) pt_BR.UTF-8 brazilian-support
Referencia de códigos de idioma
RH200-6-es-2-20110115 xxi
Idioma Valor $LANG Grupo de paquetes de idioma
Panyabí pa_IN.UTF-8 punjabi-support
Ruso ru_RU.UTF-8 russian-support
Español es_ES.UTF-8 spanish-support
Tamil ta_IN.UTF-8 tamil-support
Telugú te_IN.UTF-8 telugu-support
Vistas previas de tecnología
Maithili mai_IN.UTF-8 maithili-support
Nepalés ne_NP.UTF-8 nepali-support
Cingalés si_LK.UTF-8 sinhala-support
Tabla 2. Códigos de idioma
xxii
RH200-6-es-2-20110115 1
UNIDAD UNO
CONFIGURACIÓN DE RED YSOLUCIÓN DE PROBLEMAS
IntroducciónTemas tratados en esta unidad:
• Archivos de configuración de red
• Proceso de solución de problemas básico
• Kit de herramientas para la solución de problemas de red
Capítulo 1. Configuración de red y solución de problemas
2 RH200-6-es-2-20110115
Comprensión de los archivos de configuración dered
Nombres de interfaz de redEl kernel de Linux designa las interfaces con un prefijo específico en función del tipo deinterfaz. Por ejemplo, todas las interfaces Ethernet comienzan con eth, independientementedel proveedor de hardware específico. Después del prefijo, cada interfaz está numerada,comenzando desde cero. Por ejemplo, eth0, eth1 y eth2 haría referencia a la primera, segunday tercera interfaz Ethernet. Otros nombres de interfaz incluyen wlan0 para el primer dispositivoinalámbrico, virbr0 para el puente interno configurado para los hosts virtuales, bond0 para elprimer dispositivo de red asociado, y así sucesivamente.
Configuración de interfaces de red/sbin/ip se utiliza para mostrar o modificar temporalmente dispositivos, enrutamiento,enrutamiento de políticas y túneles.
[root@demo ~]# ip addr show eth02: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 52:54:00:00:00:fa brd ff:ff:ff:ff:ff:ff inet 192.168.0.250/24 brd 192.168.0.255 scope global eth0 inet6 fe80::5054:ff:fe00:fa/64 scope link valid_lft forever preferred_lft forever[root@demo ~]# ip -s link show eth02: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 52:54:00:00:00:fa brd ff:ff:ff:ff:ff:ff RX: bytes packets errors dropped overrun mcast 91449 520 0 0 0 0 TX: bytes packets errors dropped carrier collsns 14020 99 0 0 0 0 [root@demo ~]# ip route192.168.0.0/24 dev eth0 proto kernel scope link src 192.168.0.250 metric 1 default via 192.168.0.254 dev eth0 proto static
notaip -6 route muestra la tabla de enrutamiento de IPv6.
Resolución del nombre del hostEl comando hostname muestra o modifica temporalmente el nombre de host completo delsistema.
[root@demo ~]# hostnamedemo.example.com
El sistema de resolución de nombres interno se utiliza para convertir nombres de host endirecciones IP o a la inversa. El contenido del archivo /etc/hosts se verifica en primer lugar.
Resolución del nombre del host
RH200-6-es-2-20110115 3
[root@demo ~]# cat /etc/hosts192.168.0.250 demo.example.com demo # Added by NetworkManager127.0.0.1 localhost.localdomain localhost::1 demo.example.com demo localhost6.localdomain6 localhost6
Si no se encuentra una entrada en ese archivo, el sistema de resolución de nombres internobusca la información en un servidor de nombres DNS. El archivo /etc/resolv.conf controla laforma en que se realiza esta consulta:
• nameserver: la dirección IP de un servidor de nombres que se consultará. Se puedenproporcionar hasta tres directivas de servidor de nombres para proporcionar respaldos encaso de que una no funcione.
• search: una lista de nombres de dominio para probar con un nombre de host corto. Tanto estecomo domain no deben configurarse en el mismo archivo; si lo están, la última instancia gana.Vea resolv.conf(5) para obtener más detalles.
[root@demo ~]# cat /etc/resolv.conf# Generated by NetworkManagerdomain example.comsearch example.comnameserver 192.168.0.254
El comando getent hosts hostname puede utilizarse para probar la resolución de nombresde host.
Capítulo 1. Configuración de red y solución de problemas
4 RH200-6-es-2-20110115
Modificación de la configuración de redNetworkManager puede instalarse en Red Hat Enterprise Linux 6. Consiste en un demoniobásico, una miniaplicación del área de notificaciones de GNOME que proporciona informaciónsobre el estado de la red, y herramientas de configuración gráficas que pueden crear, editar yquitar conexiones e interfaces.
Para que una interfaz eth0 administrada por NetworkManager utilice una dirección IP estática envez de DHCP:
1. Haga clic con el botón secundario del ratón en el icono de NetworkManager en el panelsuperior y seleccione Edit connections....
2. En la pestaña Wired, seleccione System eth0 y haga clic en el botón Edit....
3. Seleccione la pestaña IPv4 Settings.
4. En el menú desplegable Method, cambie Automatic (DHCP) por Manual.
5. En Addresses, haga clic en Add e ingrese la dirección IPv4, la máscara de red (en notaciónVLSN o CIDR), el enrutador de puerta de enlace y el servidor DNS que desea usar.
6. IMPORTANTE: Asegúrese de que la opción Connect automatically esté seleccionada paraque la interfaz se inicie durante el proceso de arranque (en lugar de cuando inicie sesión elusuario), y que la opción Available to all users esté seleccionada para que esté disponible entodo el sistema.
7. Haga clic en Apply para aplicar los cambios.
También se puede configurar la red editando los archivos de configuración de interfaz. Losarchivos de configuración de interfaz controlan las interfaces de software para dispositivos dered individuales. En general, estos archivos se llaman /etc/sysconfig/network-scripts/ifcfg-<name>, donde <name> se refiere al nombre del dispositivo que controla el archivo deconfiguración. A continuación, se detallan las variables estándar que se encuentran en el archivoutilizado para la configuración estática o dinámica.
Estática DHCP Cualquiera
BOOTPROTO=static
IPADDR=192.168.0.250
PREFIX=24
GATEWAY=192.168.0.254
DNS1=192.168.0.254
BOOTPROTO=dhcp DEVICE=eth0
ONBOOT=yes
HWADDR=52:54:00:00:00:FA
NM_CONTROLLED=yes
Tabla 1.1. Opciones de configuración para el archivo ifcfg
Modificación de la configuración de red
RH200-6-es-2-20110115 5
notaSi NetworkManager está funcionando, los cambios realizados en los archivos ifcfg-* seaplican inmediatamente.
notaSi necesita configurar rutas estáticas, la configuración se almacena por interfaz en /etc/sysconfig/network-scripts/route-<name>. Se pueden encontrar detalles en la Guíade implementación de Red Hat Enterprise Linux; consulte a continuación.
ImportanteNetworkManager se ejecuta de manera predeterminada en Red Hat Enterprise Linux 6 ypuede causar conflictos con su configuración de red. Si desea administrar manualmentela configuración de red en forma permanente, agregue NM_CONTROLLED=no al archivoifcfg-* para cada interfaz de red.
/etc/sysconfig/network se utiliza para especificar el nombre de host completo y puedeespecificar una ruta estática predeterminada si no se usa DHCP:
[root@demo ~]# cat /etc/sysconfig/networkNETWORKING=yesHOSTNAME=demo.example.comGATEWAY=192.168.0.254
Tal como vimos arriba, /etc/resolv.conf especifica las direcciones IP de los servidores DNS yel dominio de búsqueda.
ImportanteSi se usa DHCP, /etc/resolv.conf se reescribe automáticamente a medida que se inicianlas interfaces, a menos que especifique PEERDNS=no en los archivos de configuración deinterfaz relevantes.
Las interfaces de red pueden desactivarse con el comando ifdown eth0 y volver a activarsecon el comando ifup eth0, ya sea que estén administradas por NetworkManager o porarchivos de configuración no administrados.
Al modificar la configuración del sistema, debe recordar:
Capítulo 1. Configuración de red y solución de problemas
6 RH200-6-es-2-20110115
1. Modificar un archivo de configuración
2. Reiniciar un servicio
3. Verificar el cambio
ReferenciasRed Hat Enterprise Linux Deployment Guide
• Sección 4.1: Archivos de configuración de red
Red Hat Enterprise Linux Deployment Guide
• Sección 4.2: Archivos de configuración de interfaz
Red Hat Enterprise Linux Deployment Guide
• Sección 4.4: Configuración de rutas estáticas
Red Hat Enterprise Linux Deployment Guide
• Capítulo 5: Configuración de red
/usr/share/doc/initscripts-*/sysconfig.txt
Modificación de la configuración de red
RH200-6-es-2-20110115 7
Práctica Cuestionario
Visualización y modificación de la configuración dered1. Complete la tabla a continuación con comandos, utilidades y nombres de archivo.
Categoría deconfiguración Ver configuración actual Cambiar configuración
Dirección IP y máscara desubred
Enrutamiento o puerta deenlace predeterminada
Nombre de host delsistema
Resolución de nombres
Tabla 1.2. Configuración de red desde la línea de comando
2. ¿Qué contiene un ifcfg-eth0 dinámico?
3. ¿Qué contiene un ifcfg-eth0 estático?
Capítulo 1. Configuración de red y solución de problemas
8 RH200-6-es-2-20110115
Proceso de solución de problemas básico
Pasos para la solución de problemas1. PROBAR
• Reproducir, verificar o caracterizar el problema
• Supervisar el problema
• Recopilar información general (versión de software o hardware, etc.)
• Recopilar información de diagnóstico (registros, mensajes de errores, etc.)
• Determinar el nivel de gravedad
2. VERIFICAR
• Revisar la configuración para ver si hay un error de configuración
• Comparar la configuración prevista con la configuración deseada
• Verificar el correcto funcionamiento y la correspondiente conexión del hardware local y delos recursos externos
3. REPARAR
• Modificar y activar la configuración
• Verificar al volver a ejecutar la fase de prueba para asegurarse de que se haya solucionadoel problema
4. DOCUMENTAR
• El paso final de ajuste general que también debe ejecutarse
Modificación de la configuración de red
RH200-6-es-2-20110115 9
Práctica Ejercicio
Documentar la configuración de red
Realice los siguientes pasos con cuidado. Si tiene algún problema o alguna duda, consulte con suinstructor.
Antes de dividir la configuración de red, documentemos la configuración actual en el sistema deserverX.
1. Inicie sesión en serverX como usuario root.
2. a. ¿Cuál es la dirección IP actual?
b. ¿Cuál es la máscara de subred CIDR actual?
c. ¿Cuál es la puerta de enlace predeterminada actual?
d. ¿Cuál es el nombre de host actual?
e. ¿Cuáles son los servidores DNS actuales?
Capítulo 1. Configuración de red y solución de problemas
10 RH200-6-es-2-20110115
Kit de herramientas para la solución de problemasde red
La tabla siguiente muestra como PROBAR, VERIFICAR y REPARAR cada una de las categorías desolución de problemas de red:
Categoría PROBAR VERIFICAR REPARAR
Dirección IP ymáscara de subred
ping, acceder a unservicio
ip addr /etc/sysconfig/network-scripts/ifcfg-*
Enrutamiento opuerta de enlacepredeterminada traceroute ip route /etc/sysconfig/
network-scripts/ifcfg-* o provisto através de DHCP
Resolución denombres
host /etc/hosts y /etc/resolv.conf
/etc/sysconfig/network-scripts/ifcfg-*
Tabla 1.3. Solución de problemas de red desde la línea de comando
Comandos y archivos útiles• ping
[root@demo ~]# ping -c 2 instructor.example.comPING instructor.example.com (192.168.0.254) 56(84) bytes of data.64 bytes from instructor.example.com (192.168.0.254): icmp_seq=1 ttl=64 time=0.697 ms64 bytes from instructor.example.com (192.168.0.254): icmp_seq=2 ttl=64 time=0.538 ms
--- instructor.example.com ping statistics ---2 packets transmitted, 2 received, 0% packet loss, time 1003msrtt min/avg/max/mdev = 0.538/0.617/0.697/0.083 ms
• ip addr show eth0
[root@demo ~]# ip addr show eth02: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
Kit de herramientas para la solución de problemas de red
RH200-6-es-2-20110115 11
link/ether 52:54:00:00:00:fa brd ff:ff:ff:ff:ff:ff inet 192.168.0.250/24 brd 192.168.0.255 scope global eth0 inet6 fe80::5054:ff:fe00:fa/64 scope link valid_lft forever preferred_lft forever
• /etc/sysconfig/network-scripts/ifcfg-<name>
[root@demo ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0DEVICE="eth0"BOOTPROTO="dhcp"HWADDR="52:54:00:00:00:FA"NM_CONTROLLED="yes"ONBOOT="yes"
• traceroute
[root@demo ~]# traceroute -Tn www.redhat.comtraceroute to www.redhat.com (184.85.80.112), 30 hops max, 60 byte packets 1 192.168.0.254 0.641 ms 0.606 ms 0.590 ms 2 172.31.35.1 9.829 ms 9.531 ms 9.237 ms 3 204.60.4.40 27.954 ms 27.726 ms 27.385 ms 4 66.159.184.226 27.128 ms 49.156 ms 48.291 ms 5 151.164.92.147 43.256 ms 42.995 ms 42.155 ms 6 12.122.81.57 60.897 ms 60.041 ms 54.531 ms 7 75.149.230.169 54.143 ms 75.149.231.45 46.412 ms 192.205.37.34 40.208 ms 8 68.86.86.45 67.587 ms 54.599 ms 53.381 ms 9 68.86.86.234 65.540 ms 62.189 ms 53.777 ms10 68.86.87.166 57.084 ms 55.752 ms 57.154 ms11 184.85.80.112 55.707 ms 58.702 ms 57.996 ms
• ip route
[root@demo ~]# ip route192.168.0.0/24 dev eth0 proto kernel scope link src 192.168.0.250 metric 1 default via 192.168.0.254 dev eth0 proto static
• host
[root@demo ~]# host ii.example.com is an alias for instructor.example.com.instructor.example.com has address 192.168.0.254
• dig
[root@demo ~]# dig i.example.com
; <<>> DiG 9.7.0-P2-RedHat-9.7.0-5.P2.el6 <<>> i.example.com;; global options: +cmd;; Got answer:;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 17644;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:;i.example.com. IN A
;; ANSWER SECTION:
Capítulo 1. Configuración de red y solución de problemas
12 RH200-6-es-2-20110115
i.example.com. 86400 IN CNAME instructor.example.com.instructor.example.com. 86400 IN A 192.168.0.254
;; AUTHORITY SECTION:example.com. 86400 IN NS instructor.example.com.
;; Query time: 2 msec;; SERVER: 192.168.0.254#53(192.168.0.254);; WHEN: Mon Dec 13 15:50:21 2010;; MSG SIZE rcvd: 86
• /etc/hosts
[root@demo ~]# cat /etc/hosts192.168.0.250 demo.example.com demo # Added by NetworkManager127.0.0.1 localhost.localdomain localhost::1 demo.example.com demo localhost6.localdomain6 localhost6
• /etc/resolv.conf
[root@demo ~]# cat /etc/resolv.conf# Generated by NetworkManagerdomain example.comsearch example.comnameserver 192.168.0.254
ReferenciasRed Hat Enterprise Linux Deployment Guide
• Capítulo 4: Interfaces de red
Red Hat Enterprise Linux Deployment Guide
• Capítulo 5: Configuración de red
Prueba de criterios
RH200-6-es-2-20110115 13
Prueba
Prueba de criterios
Ejercicio
Solución de problemas de configuración de red desdela línea de comando
Realice los siguientes pasos con cuidado. Si tiene algún problema o alguna duda, consulte con suinstructor.
Las siguientes acciones deben ejecutarse en el servidor virtual, serverX. Comenzará por ejecutarun script que "dividirá" la configuración de red. Tendrá diez minutos para solucionar cada uno delos tres problemas. Asegúrese de documentar lo que encuentre, ya que al final realizaremos unarevisión.
1. Ejecute el primer script para generar un error de configuración en la red:
lab-break-net 1
2. Síntoma: Un navegador web no puede acceder a la página web en http://instructor.remote.test.
3. Realice los tres pasos: PROBAR, VERIFICAR y REPARAR para identificar y solucionar elproblema.
4. Documente lo que encuentre.
Use este espacio para sus notas.
5. Ejecute el segundo script para generar un error de configuración en la red:
lab-break-net 2
6. Síntoma: Un navegador web no puede acceder a la página web en http://instructor.remote.test.
7. Realice los tres pasos: PROBAR, VERIFICAR y REPARAR para identificar y solucionar elproblema.
8. Documente lo que encuentre.
Capítulo 1. Configuración de red y solución de problemas
14 RH200-6-es-2-20110115
Use este espacio para sus notas.
9. Ejecute el tercer script para generar un error de configuración en la red:
lab-break-net 3
10. Síntoma: Un navegador web no puede acceder a la página web en http://instructor.remote.test.
11. Realice los tres pasos: PROBAR, VERIFICAR y REPARAR para identificar y solucionar elproblema.
12. Documente lo que encuentre.
Use este espacio para sus notas.
Prueba de criterios
RH200-6-es-2-20110115 15
Notas personales
Capítulo 1. Configuración de red y solución de problemas
16 RH200-6-es-2-20110115
Resumen de la unidad
Comprensión de los archivos de configuración de red
En esta sección, aprendió a:
• Cambiar la configuración de red con herramientas de la línea de comando
• Hacer que los cambios en la configuración de red sean persistentes mediante laedición de archivos
.Proceso de solución de problemas básico
En esta sección, aprendió a:
• Emplear un método sistemático para solucionar los problemas del sistema
.Kit de herramientas para la solución de problemas de red
En esta sección, aprendió a:
• Diagnosticar y corregir los problemas de red para restaurar el acceso a la red
.
RH200-6-es-2-20110115 17
UNIDAD DOS
ADMINISTRACIÓN DE USUARIOSY GRUPOS
IntroducciónTemas tratados en esta unidad:
• Administrar usuarios/grupos locales
• Caducidad de las contraseñas
• Configuración de cliente LDAP
• Metacaracteres del programa de automontaje
Capítulo 2. Administración de usuarios y grupos
18 RH200-6-es-2-20110115
Administración de usuarios y grupos localesSe puede utilizar una serie de herramientas de línea de comando para administrar cuentas deusuarios y grupos locales.
useradd crea usuarios.• useradd username establece valores predeterminados razonables para todos los campos en/etc/passwd cuando se ejecuta sin opciones.
• useradd no establece ninguna contraseña válida de forma predeterminada; el usuario nopuede iniciar sesión.
• useradd --help mostrará las opciones básicas que se pueden usar para invalidar los valorespredeterminados.
userdel elimina usuarios.• userdel username quita el usuario de /etc/passwd, pero de forma predeterminada, no
altera el directorio hogar.
• userdel -r username quita el usuario y el directorio hogar del usuario.
Administración de usuarios y grupos locales
RH200-6-es-2-20110115 19
AdvertenciaAl quitar la cuenta de un usuario con userdel, si no utiliza la opción -r para quitar eldirectorio hogar del usuario o si el usuario posee archivos fuera de su directorio hogar enel sistema, quedarán archivos que pertenecen a un número de identificación de usuario noasignado.
Esto puede ocasionar pérdida de información y otros problemas de seguridad.
Esto sucede porque, cuando se crea un nuevo usuario con useradd, a menos que seespecifique el número de UID del nuevo usuario (con la opción -u UID), useraddeligeuno. Asignará el "primer número de UID libre" en su rango al nuevo usuario.
Si el "primer número de UID libre" se había asignado previamente a la cuenta de unusuario que luego se quitó del sistema, se volverá a asignar el número de UID del usuarioanterior al nuevo usuario, y el nuevo usuario terminará como propietario de los archivosrestantes del usuario anterior. No es difícil demostrar esta situación:
[root@serverX ~]# useradd prince[root@serverX ~]# ls -l /homedrwx------. 4 prince prince 1024 Dec 23 12:30 prince[root@serverX ~]# userdel prince[root@serverX ~]# ls -l /homedrwx------. 4 500 500 1024 Dec 23 12:30 prince[root@serverX ~]# useradd bob[root@serverX ~]# ls -l /homedrwx------. 4 bob bob 1024 Dec 23 12:31 bobdrwx------. 4 bob bob 1024 Dec 23 12:30 prince
Observe que bob ahora es propietario de todos los archivos que pertenecieron a prince.La mejor solución para este problema es quitar todos los archivos "sin propietario" delsistema cuando se elimina el usuario que los creó.
id muestra la información del usuario.• id mostrará la información del usuario para el proceso actual, incluidos el número de UID del
usuario y los grupos a los que pertenece.
• id username mostrará la información del usuario para username, incluidos el número deUID del usuario y los grupos a los que pertenece.
passwd establece contraseñas.• Se puede usar passwd username para establecer la contraseña inicial del usuario o cambiar
la contraseña de dicho usuario.
Capítulo 2. Administración de usuarios y grupos
20 RH200-6-es-2-20110115
Use este espacio para sus notas.
Acerca de usuarios y grupos localesRangos de UID• UID 0 es el usuario root y tiene privilegios especiales
• UID 1-499 son los "usuarios del sistema" por convención; generalmente, cuentas de serviciono interactivas.
• UID 500+ son los "usuarios regulares" que las personas pueden usar para el acceso interactivoa la máquina.
Grupos principales• Cada usuario tiene exactamente un grupo principal.
• Para los usuarios locales, el grupo principal está definido por el número de GID del grupoindicado en el tercer campo de /etc/passwd.
• Generalmente, el grupo principal es propietario de los nuevos archivos que crea el usuario.
• En general, el grupo principal de un usuario recientemente creado es un nuevo grupo con elmismo nombre que el del usuario. El usuario es el único miembro de este grupo privado deusuarios (UPG).
Grupos adicionales• Los usuarios pueden ser o no miembros de grupos adicionales.
• Los usuarios que son miembros adicionales de grupos locales están detallados en el últimocampo de la entrada del grupo en /etc/group: Para los grupos locales, la pertenencia de unusuario está determinada por una lista de usuarios separados por comas que se encuentra enel último campo de la entrada del grupo en /etc/group:
groupname:password:GID:list,of,users,in,this,group
• La pertenencia a grupos adicionales se utiliza para ayudar a asegurarse de que los usuariostengan permisos de acceso a archivos y otros recursos en el sistema.
Acerca de usuarios y grupos locales
RH200-6-es-2-20110115 21
notaDada la creación automática de grupos privados de usuarios (GID 500+), generalmentese recomienda establecer aparte un rango de números de GID para su uso con los gruposadicionales. Aquí usaremos el rango de 200 a 400, si bien existe el riesgo de colisión con unGrupo del sistema (GID 0-499).
Administrar grupos adicionales1. groupadd -g 201 groupname se usa para crear un grupo adicional con el nombre
groupname, con un GID de 201.
2. usermod -aG groupname username agregará al usuario username al grupogroupname.
ImportanteEl uso de la opción -a hace que usermod funcione en modo "adición". De lo contrario, elusuario se quitaría de todos los otros grupos adicionales.
ReferenciasRed Hat Enterprise Linux Deployment Guide
• Capítulo 15: Usuarios y grupos
Páginas del manual: useradd(8), usermod(8), userdel(8), groupadd(8), groupdel(8)
Capítulo 2. Administración de usuarios y grupos
22 RH200-6-es-2-20110115
Práctica Ejercicio
Crear usuarios mediante el uso de las herramientas dela línea de comando
Realice los siguientes pasos con cuidado. Si tiene algún problema o alguna duda, consulte con suinstructor.
Cree una serie de usuarios en el sistema serverX y establezca una contraseña inicial (registre enlos espacios en blanco a continuación).
Coloque los usuarios creados en grupos tal como se indica aquí.
Grupo Nombre del grupo Lista de usuarios
Profesores profs faraday, juliet, elvis
Estudiantes deposgrado
grads jack, kate, james, elvis
Practicantes deverano
interns walt, ben, claire, hugo, elvis
Tabla 2.1. Asignaciones de usuarios y grupos
Tenga en cuenta que deberá crear un usuario adicional con el nombre elvis, que deberácolocarse en los tres grupos.
1. Inicie sesión en serverX como usuario root.
2. Agregue el usuario juliet.
3. Confirme que juliet se haya agregado mediante el uso del comando id.
4. Confirme que juliet se ha agregado al examinar el archivo /etc/passwd.
5. Use el comando passwd para inicializar la contraseña de juliet y escriba la contraseña aquí:.
6. Continúe agregando el resto de los usuarios de la lista abajo, sin olvidar establecer unacontraseña inicial y escribirla al lado de cada nombre de usuario:
• faraday
• jack
• kate
• james
• walt
• ben
• claire
• hugo
Acerca de usuarios y grupos locales
RH200-6-es-2-20110115 23
• elvis
7. Cree los grupos especificados en la tabla anterior y asigne los miembros correspondientesde cada grupo.
Capítulo 2. Administración de usuarios y grupos
24 RH200-6-es-2-20110115
Administración de contraseñasHistóricamente, las contraseñas se almacenaban en /etc/passwd, pero ese archivo debe serlegible mundialmente para admitir el nombre de usuario para las asignaciones de UID requeridaspor utilidades como ls, para mostrar el nombre de usuario en vez del número de UID.
Las contraseñas se migraron a un archivo /etc/shadow más seguro, que admite variosalgoritmos de encriptación de contraseñas diferentes. Siempre que las contraseñas encriptadasse almacenen en un archivo dedicado, la política de vigencia de la contraseña y los datos tambiénse podrán almacenar.
¿Qué 3 datos se almacenan en un hash de contraseña?
$1$gCjLa2/Z$6Pu0EK0AzfCjxjv2hoLOB/
1. 1: el algoritmo hash (1 indica hash MD5)
2. gCjLa2/Z: la sal utilizada para encriptar el hash
3. 6Pu0EK0AzfCjxjv2hoLOB/: el hash encriptado
notaRed Hat Enterprise Linux 6 admite dos nuevos algoritmos hash de contraseña fuertes,SHA-256 (algoritmo 5) y SHA-512 (algoritmo 6). Estos pueden habilitarse como valorespredeterminados para /etc/shadow mediante system-config-authentication,para seleccionarlos en el menú desplegable Password Hashing Algorithm en la pestañaAdvanced Options.
Campos de /etc/shadow1. Nombre de usuario
2. "Hash" de contraseña
3. Fecha de la última modificación de la contraseña (cantidad de días desde el 1.º de enero de1970)
4. Vigencia mínima de la contraseña (en días, 0 = ningún requisito mínimo de vigencia)
5. Vigencia máxima de la contraseña (en días)
6. Período de advertencia de la contraseña (en días, 0 = no se proporciona advertencia alguna)
7. Período de inactividad de la contraseña (en días)
8. Caducidad de la cuenta (cantidad de días desde el 1.º de enero de 1970)
En el siguiente diagrama, se indican los parámetros de vigencia de la contraseña relevantes quepueden ajustarse mediante el uso de chage para implementar una política de vigencia de lacontraseña.
Administración de contraseñas
RH200-6-es-2-20110115 25
inactive days ( )warn days
( )min days
(-m)
max days ( )
time
last change date ( )
password expiration
date
inactive date
Mientras el instructor explica estos parámetros, complete los paréntesis en el diagrama con losmodificadores de la línea de comando chage (forma abreviada) relevantes.
Como ejemplo, se agregó -m al parámetro min days para que comience su tarea.
# chage -m 0 -M 90 -W 7 -I 14 username
chage -d 0 username forzará que se actualice la contraseña en el próximo inicio de sesión.
chage -l username enumerará los valores de configuración actuales del nombre de usuario.
usermod puede modificar una cuenta, incluso "bloquearla" con la opción -L.
ReferenciasRed Hat Enterprise Linux Deployment Guide
• Sección 15.6: Contraseñas ocultas
Páginas del manual: chage(1), shadow(5), crypt(3)
Capítulo 2. Administración de usuarios y grupos
26 RH200-6-es-2-20110115
Práctica Cuestionario
Mantenimiento de cuentas1. ¿Qué comando bloquearía la cuenta de elvis?
2. ¿Qué comando la desbloquearía?
3. ¿Qué comando haría que la cuenta de elvis caducara el 15 de marzo de 2012?
Autenticación de red mediante el uso de un servidor LDAP
RH200-6-es-2-20110115 27
Autenticación de red mediante el uso de unservidor LDAP
Hasta el momento, hemos analizado cuentas de usuarios locales administradas a través dearchivos locales en cada máquina, /etc/passwd. Sin embargo, es difícil coordinar las cuentasde usuarios locales para que sean iguales en varios sistemas.
En esta sección, analizaremos cómo configurar una máquina como cliente para usar cuentas deusuarios de red que son provistas por un servicio de directorio LDAP existente. Esto permite queel directorio LDAP sea la autoridad central para todos los grupos y usuarios de red en nuestraorganización.
La información de cuenta de usuario determina las características y la configuración de la cuenta.Los métodos de autenticación se usan para determinar si alguien que intenta iniciar sesión debetener acceso a la cuenta. Los servicios de directorio de red pueden proporcionar informaciónsobre la cuenta de usuario y métodos de autenticación.
Los servidores de directorio de red se pueden usar como un servicio de administración deusuarios de red distribuido y centralizado. Las entradas de directorio están dispuestas en unaestructura de árbol donde se pueden buscar. El DN (Nombre distinguido) de base es la base delárbol donde se realizarán las búsquedas de las entradas de directorio correspondientes a losusuarios y grupos.
Elementos principales para la configuración de cliente LDAP1. Nombre de host completo del servidor
2. DN de base para buscar definiciones de usuarios
3. El certificado de autoridad (CA) que se usa para firmar el certificado SSL del servidor LDAP
Use este espacio para sus notas.
Antes de comenzar, debe asegurarse de que el grupo de paquetes yum directory-clientesté instalado, que incluye los paquetes sssd, authconfig-gtk y oddjob-mkhomedir.
Se puede usar System → Administration → Authentication o system-config-authentication para modificar la configuración de identidad y autenticación.
Capítulo 2. Administración de usuarios y grupos
28 RH200-6-es-2-20110115
system-config-authentication automáticamente activará el servicio sssd que buscará ycopiará en caché la información de usuario LDAP y las credenciales de autenticación del cliente.Si el servidor LDAP no está disponible, pero sssd está funcionando, el sistema podrá autenticar yobtener información acerca de los usuarios de red de la caché de sssd.
Use getent passwd username para verificar la información de cuenta que se está usando.Esto funciona independientemente de que el usuario sea un usuario local definido en /etc/passwd o un usuario de red de un servicio LDAP. El comando siempre mostrará la definición queestá usando el sistema actualmente si hay alguna duplicación entre usuarios locales y usuariosde red. De forma predeterminada, la definición de usuario local invalida la definición de usuariode red.
notaEn Red Hat Enterprise Linux 6, getent passwd (sin especificar un nombre de usuario) sólodescartará nombres de usuarios locales de manera predeterminada, no descartará la listade todos los usuarios LDAP como lo hacía en Red Hat Enterprise Linux 5. Esto se realizapor motivos de rendimiento; consulte sssd.conf(5) en la opción enumerate para conocerdetalles. (Este comportamiento puede modificarse configurando enumerate = True en lasección [domain/default] de /etc/sssd/sssd.conf).
Autenticación de red mediante el uso de un servidor LDAP
RH200-6-es-2-20110115 29
ImportanteCuando se usa LDAP password como método de autenticación, debe seleccionar yconfigurar Use TLS to encrypt connections. Esto es para evitar el envío de contraseñas noencriptadas al servidor LDAP a través de la red para su autenticación.
Esto se modificó con respecto a Red Hat Enterprise Linux 5, donde se permitiría el usoinseguro de la autenticación de contraseñas LDAP sin TLS. En RHEL 6, puede seguirusando LDAP sin TLS si utiliza LDAP para obtener información de usuarios únicamente.(Por ejemplo, puede usar Kerberos para la autenticación de contraseñas). La prácticarecomendada es usar siempre TLS.
ReferenciasRed Hat Enterprise Linux Deployment Guide
• Capítulo 8: Configuración de autenticación
Páginas del manual: system-config-authentication(8). sssd(8) y sssd.conf(5)
Capítulo 2. Administración de usuarios y grupos
30 RH200-6-es-2-20110115
Práctica Cuestionario
Configuración de cliente LDAP1. ¿Cuáles son los siete datos que generalmente proveen los servicios de Información de
cuenta de usuario?
2. ¿Qué "otro" tipo de información puede proveer un servicio de directorio de red ?
3. ¿Cuáles son los tres datos que deben configurarse en una máquina cliente para obtenerinformación de usuario de un servicio de directorio LDAP?
4. ¿Qué función ejecuta el comando getent passwd ldapuser1? ¿Por qué es útil?
Montaje en red de directorios hogar
RH200-6-es-2-20110115 31
Montaje en red de directorios hogarRecuerde que el montaje de recursos compartidos de red requiere cuatro datos: nombre de host,nombre de recurso compartido, punto de montaje y opciones de montaje.
1. Use showmount -e nfsserver.domain para obtener la ruta de acceso exportada que alcombinarla con el nombre de host nos proporciona el nombre de recurso compartido.
[root@serverX ~]# showmount -e instructor.example.comExport list for instructor.example.com:/home/guests 192.168.0.0/255.255.255.0/var/nfs 192.168.0.0/255.255.255.0/kickstart 192.168.0.0/255.255.255.0/var/ftp/pub 192.168.0.0/255.255.255.0
2. Use getent passwd username para obtener el punto de montaje del directorio hogarnecesario.
[root@serverX ~]# getent passwd ldapuser1ldapuser1:*:1701:1701:LDAP Test User 1:/home/guests/ldapuser1:/bin/bash
notagetent passwd sólo muestra las cuentas locales de manera predeterminada. Puedemostrar una sola cuenta si agrega el nombre explícitamente (como figura arriba). Sidesea mostrar todas las cuentas disponibles (incluidas las cuentas LDAP), agregue losiguiente a /etc/sssd/sssd.conf, debajo de la sección [domain/default]:
enumerate = True
Reinicie el servicio sssd:
[root@serverX ~]# service sssd restart[root@serverX ~]# getent passwd...ldapuser10:*:1710:1710:LDAP Test User 10:/home/guests/ldapuser10:/bin/bashldapuser11:*:1711:1711:LDAP Test User 11:/home/guests/ldapuser11:/bin/bash...
3. Al igual que los directorios hogar, probablemente queramos usar rwcomo opción de montaje.
La configuración de asignaciones indirectas en autofs se vería más o menos así:
# cat /etc/auto.master/home/guests /etc/auto.guests# cat /etc/auto.guestsldapuser1 -rw instructor.example.com:/home/guests/ldapuser1ldapuser2 -rw instructor.example.com:/home/guests/ldapuser2ldapuser3 -rw instructor.example.com:/home/guests/ldapuser3
Capítulo 2. Administración de usuarios y grupos
32 RH200-6-es-2-20110115
ldapuser4 -rw instructor.example.com:/home/guests/ldapuser4
Cada vez que se crea un nuevo usuario LDAP, este archivo (/etc/auto.guests) deberáactualizarse para incluir ese usuario adicional. Sin embargo, observe el "patrón" de las líneas.Deseamos permitir el inicio de sesión con cualquier nombre de usuario, de modo que podríamosreemplazar la primera columna por un "asterisco (*)", un comodín, para que coincida concualquier nombre de subdirectorio al que el proceso de inicio de sesión intente cd. Después,usamos el metacarácter "Y comercial (&)" para reemplazar el nombre de usuario en el recursocompartido que lleva el nombre de asignación que coincide con el comodín:
# cat /etc/auto.master/home/guests /etc/auto.guests# cat /etc/auto.guests* -rw instructor.example.com:/home/guests/&
ImportanteEn el momento de la escritura, hay un error en el script de inicialización autofs (Bugzilla n.º624444) que hace que service autofs restart a veces falle. Hasta que esto se corrija,use
service autofs reload
o
service autofs stop && service autofs start.
ReferenciasRed Hat Enterprise Linux Storage Administration Guide
• Sección 10.3: autofs
Páginas del manual: autofs(5), auto.master(5)
Montaje en red de directorios hogar
RH200-6-es-2-20110115 33
Práctica Caso de estudio
Automontaje de directorios NFS
Estos pasos deben ejecutarse en serverX.
Su compañía va a incorporar varios clientes nuevos:
1. Organization of Secret Hidden Undertakings (OSHU)
2. Race Along the Lake Investments, Inc. (RALII)
Su compañía tiene un nuevo servidor NFS con recursos compartidos para almacenar archivosrelacionados con esos clientes "especiales" con el nombre instructor.example.com, queactualmente contiene dos recursos compartidos (/var/nfs/oshu y /var/nfs/ralii) con laperspectiva de que se agregarán más a medida que se incorporen nuevos clientes.
Las estaciones de trabajo deben usar autofs para montar automáticamente estos recursoscompartidos en /special/oshu y /special/ralii, respectivamente, con permisos de sólolectura.
Dada la perspectiva de que nuevos clientes se incorporarán en breve, implemente eso medianteel uso de metacaracteres y comodines de autofs.
¿Cómo trataría el caso de estudio descrito anteriormente? Tome nota de su proceso en elespacio provisto a continuación y después impleméntelo.
Capítulo 2. Administración de usuarios y grupos
34 RH200-6-es-2-20110115
Prueba
Prueba de criterios
Ejercicio
Obtener información de usuarios de red desde unservicio de directorio LDAP
Realice los siguientes pasos con cuidado. Si tiene algún problema o alguna duda, consulte con suinstructor.
Ahora configurará serverX para obtener información acerca de los usuarios de red desde unservidor de directorio LDAP disponible en todas las máquinas de la clase.
Esta es la información que se le proporcionó acerca del servidor LDAP:
• Nombre de host: instructor.example.com
• DN de la base de búsqueda: dc=example,dc=com
• Certificado CA: http://instructor.example.com/pub/EXAMPLE-CA-CERT 1
Después, configurará serverX para montar automáticamente los directorios hogar de losusuarios de red basados en LDAP cuando inicien sesión.
Esta es la información que se le proporcionó acerca del servidor de almacenamiento NFS quecontiene los directorios hogar:
• Nombre de host: instructor.example.com
• Directorio exportado: /home/guests/
1. Inicie sesión en serverX como usuario root. Si usa ssh, incluya la opción -X para reenviarinterfaces gráficas a su estación de trabajo.
2. Use system-config-authentication para configurar serverX para obtener informaciónde usuarios de red desde el servidor LDAP de la clase.
3. Use el comando id para confirmar que el usuario ldapuserX (reemplace X por el númerode su estación) está definido en el sistema.
4. Use el comando getent para buscar la información de usuario de ldapuser1.
5. Inicie sesión en serverX como ldapuserX o cualquiera de los otros usuarios de red, conla contraseña "password". (No se preocupe si obtiene un mensaje de error al iniciar sesiónacerca de un directorio hogar que no existe; esto está previsto).
6. Modifique la configuración del programa de automontaje en serverX de modo que si seaccede a cualquier directorio ldapuserX en /home/guests, el programa de automontajeintente montar el directorio NFS exportado equivalente de instructor.example.com:/home/guests/ldapuserX (sugerencia: usar el sintaxis comodín).
Montaje en red de directorios hogar
RH200-6-es-2-20110115 35
7. Inicie sesión en serverX como ldapuserX, donde X es su número de estación, con lacontraseña "password". El directorio hogar del usuario debe montarse automáticamente.
[student@desktop1 ~]$ ssh ldapuser1@server1The authenticity of host 'server1 (192.168.0.101)' can't be established.RSA key fingerprint is 33:fa:a1:3c:98:30:ff:f6:d4:99:00:4e:7f:84:3e:c3.Are you sure you want to continue connecting (yes/no)? yesWarning: Permanently added 'server1,192.168.0.101' (RSA) to the list of known hosts.ldapuser1@server1's password: passwordLast login: Thu Dec 16 14:59:49 2010 from instructor.example.com[ldapuser1@server1 ~]$ pwd/home/guests/ldapuser1[ldapuser1@server1 ~]$ df Filesystem 1K-blocks Used Available Use% Mounted on...instructor.example.com:/home/guests/ldapuser1 1032192 36864 943104 4% /home/guests/ldapuser1
Capítulo 2. Administración de usuarios y grupos
36 RH200-6-es-2-20110115
Notas personales
Montaje en red de directorios hogar
RH200-6-es-2-20110115 37
Resumen de la unidad
Administración de usuarios y grupos locales
En esta sección, aprendió a:
• Agregar y quitar cuentas de usuarios desde la línea de comando
• Establecer o cambiar las contraseñas de usuarios
• Identificar grupos principales frente a adicionales
• Crear un nuevo grupo
• Eliminar un grupo
• Agregar una cuenta de usuario a un grupo
.Administración de contraseñas
En esta sección, aprendió a:
• Personalizar las políticas de vigencia de las contraseñas para que los usuarioscumplan con los requisitos de seguridad de la organización
.Autenticación de red mediante el uso de un servidor LDAP
En esta sección, aprendió a:
• Configurar el sistema para autenticar usuarios administrados en un servicio dedirectorio LDAP central
.Montaje en red de directorios hogar
En esta sección, aprendió a:
• Automontar directorios hogar NFS existentes para usuarios remotos mediante el usode metacaracteres de asignación indirecta
.
38
RH200-6-es-2-20110115 39
UNIDAD TRES
ADMINISTRACIÓN DEPROCESOS DE LÍNEA DECOMANDO
IntroducciónTemas tratados en esta unidad:
• Inicio de comandos gráficos como usuario root
• Control de procesos
• Finalización de procesos
• Programar tareas periódicas
Capítulo 3. Administración de procesos de línea de comando
40 RH200-6-es-2-20110115
Inicio de herramientas gráficas desde BASHPuede parecer extraño ejecutar un comando gráfico desde la línea de comando, perocomprenderá su utilidad cuando analicemos la conexión a sistemas remotos.
Cómo ejecutar comandos gráficos como root:
1. Abrir una ventana de terminal
2. Usar su - para convertirse en el usuario root (debe usar el -)
3. Ejecutar command &
Ejemplo:
[student@serverX ~]$ su -Password: redhat[root@serverX ~]# nautilus &
Funciones de control de trabajos provistas por BASH:
• Ctrl+c (a menudo se escribe ^C): finalizar el proceso en primer plano
• Ctrl+z (a menudo se escribe ^Z): suspender el proceso en primer plano
• jobs: enumerar los procesos en segundo plano y detenidos
• fg: enviar un trabajo a primer plano. Sólo un proceso puede ejecutarse en primer plano en unintérprete de comandos. Si se no proporciona un argumento, enviará el trabajo actual a primerplano (mostrado con un + en el resultado de jobs). Pase a fg el ID del trabajo para administrarotros trabajos diferentes al actual.
[student@serverX ~]$ sleep 3000 & [1] 22252[student@serverX ~]$ sleep 4000 &[2] 22253[student@serverX ~]$ sleep 5000 &[3] 22254[student@serverX ~]$ jobs[1] Running sleep 3000 &[2]- Running sleep 4000 &[3]+ Running sleep 5000 &[student@serverX ~]$ fgsleep 5000 Ctrl+c [student@serverX ~]$ jobs[1]- Running sleep 3000 &[2]+ Running sleep 4000 &[student@serverX ~]$ fg 1sleep 3000
• bg: enviar un trabajo a segundo plano. Se pueden ejecutar muchos trabajos en segundo planoen un solo intérprete de comandos. Si no se proporciona un argumento, bg enviará el trabajoactual a segundo plano (como con fg) como si se lo hubiera iniciado con &.
Inicio de herramientas gráficas desde BASH
RH200-6-es-2-20110115 41
ReferenciasManual de referencia de BASH para GNU
• Capítulo 7: Control de trabajos
http://www.gnu.org/software/bash/manualSi bash-doc se instala desde el canal RHN opcional:file:///usr/share/doc/bash-4.1.2/doc/bashref.pdf
Páginas del manual: jobs(1), fg(1) y bg(1)
Capítulo 3. Administración de procesos de línea de comando
42 RH200-6-es-2-20110115
Práctica Lista de verificación de rendimiento
Inicio de herramientas gráficas desde BASH
Inicie sesión de forma gráfica en su host serverX como student.
Abra una ventana de terminal.
En esa ventana, cambie a un intérprete de comandos root.
Inicie nautilus en primer plano desde la línea de comando.
Use el método abreviado del teclado para recuperar su señal del intérprete de comandossin finalizar el proceso.
Coloque a nautilus en segundo plano.
Enumere sus trabajos actuales de intérprete de comandos.
Salga del intérprete de comandos de usuario root.
Control de procesos
RH200-6-es-2-20110115 43
Control de procesosUn proceso es una instancia de un programa en ejecución. Se puede usar el comando ps paramostrar los procesos. De forma predeterminada, proporciona muy poca información útil. Sólonos mostrará los procesos iniciados desde este terminal (y en una sesión X, cada ventana es unterminal...). Sin embargo, si se solicita ayuda, el comando ps presenta más modificadores delínea de comando de los que desee conocer y puede adaptarse para que proporcione informaciónmuy precisa. Cada uno tiene sus preferencias, pero hay una opción que le recomendamos queuse:
# ps auxUSER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMANDroot 1 0.0 0.0 4132 888 ? Ss 17:44 0:01 /sbin/initroot 2 0.0 0.0 0 0 ? S 17:44 0:00 [kthreadd]root 1469 0.0 0.0 63572 1232 ? Ss 17:45 0:00 /usr/sbin/sshdrlocke 2348 0.0 0.0 107956 1852 pts/0 Ss 17:46 0:00 bashrlocke 2711 0.0 0.1 150652 3628 pts/1 S+ 17:54 0:00 vim Processes.xmlrlocke 3507 2.0 0.0 107564 1032 pts/0 R+ 19:00 0:00 ps aux...
La utilidad top muestra una lista de los procesos actuales que se actualiza automáticamente. Sepueden usar las siguientes teclas dentro de top para administrar la visualización:
• M: Ordenar los procesos por uso de memoria
• P: Ordenar los procesos por uso de procesador
• h: Mostrar ayuda acerca de otros comandos
• q: Salir
Al ordenar los procesos por uso de memoria, top considera a RES más importante queVIRT. RES es la cantidad de memoria física actualmente usada por un proceso (el "conjuntoresidente"). VIRT es el espacio en la asignación de memoria virtual actualmente que reserva elproceso para un posible uso y es mucho menos significativo. Incluso RES puede ser un cálculoexcesivo, ya que incluye memoria compartida con otros procesos. En ps, VIRT está etiquetadocomo VSZ y RES es RSS.
ReferenciasPáginas del manual: ps(1) y top(1)
Capítulo 3. Administración de procesos de línea de comando
44 RH200-6-es-2-20110115
Finalización y control de procesosLos procesos se comunican mediante el uso de mensajes denominados señales. Las señalesllegan en cualquier momento (de forma asincrónica). Las señales no llevan información másallá del "número de señal" (qué tipo de señal es). El proceso puede reaccionar ("responder ala señal") de diversas formas según el número de señal: puede salir, salir y volcar una imagende memoria, ignorar la señal o realizar otra acción. Por lo general, cuando un usuario deseaseñalizar un proceso, desea que finalice (salir). Los eventos del sistema pueden enviar señales oun usuario puede enviar una señal arbitraria a un proceso con el comando kill.
Señales1. Se pueden usar top y kill para enviar una señal a un proceso.
2. kill -l: muestra una tabla con los números de señal definidos.
3. kill -9 3254: envía el número de señal 9 al proceso con PID 3254.
Número Nombre Función
1 HUP Reinicializar un demonio
9 KILL Forzar un proceso a finalizar de inmediato
15 TERM Solicitar que un proceso finalice después de la limpieza(PREDETERMINADO)
Tabla 3.1. Señales útiles que debe conocer
En la tabla anterior, marque con un círculo la señal que el programador no puede invalidar.
Programación de procesos (niceness)• Un sistema Linux puede tener tantos procesos en ejecución al mismo tiempo como núcleos de
CPU.
• Pero un sistema parece tener más procesos en ejecución si se ejecutan de forma alternativa enlos núcleos disponibles ("time-slicing").
• De forma predeterminada, cada proceso tiene el mismo acceso al tiempo de CPU.
• El valor de niceness de un proceso se puede modificar para ajustar la prioridad del proceso,concediéndole una porción más grande o más pequeña del tiempo de CPU en comparación conotros procesos.
• Niceness es un valor que va desde -20 (nada amable) hasta los valores predeterminados 0 a 19(muy amable con los otros procesos).
• Los usuarios pueden incrementar el valor de niceness de los procesos (para que requieran unaporción menor de tiempo).
• Sólo el usuario root puede disminuir el valor de niceness de los procesos (para que requieranuna porción mayor de tiempo).
• Se pueden usar renice y top para cambiar el valor de niceness de un proceso en ejecución.
• Se puede usar nice para determinar el valor de niceness de un nuevo proceso.
Control de procesos
RH200-6-es-2-20110115 45
• El valor de niceness sólo afecta la porción de tiempo de CPU que toma un proceso en relacióncon los otros procesos; si no hay otros procesos en ejecución, un proceso con prioridad bajatomará todo el tiempo de CPU en un núcleo.
Taller
Uso de top para administrar procesos
Sígalo junto con el instructor y use el espacio provisto a continuación para sus notas.
1. Abra dos ventanas de terminal en una sesión gráfica en serverX.
2. En el primer terminal, ejecute top.
3. En el segundo terminal, ejecute:
cat /dev/zero > /dev/null &
4. Inicie cuatro (4) procesos cat más tal como figura arriba.
5. En top, observe que cada uno de los procesos cat posee una porción de tiempo de CPUaproximadamente igual.
6. Con top, determine el PID de un proceso cat.
7. Use renice en el segundo terminal para ajustar el valor niceness del proceso en 10:
renice -n 10 PID
8. Elija otro proceso cat y conviértalo a un valor bajo de niceness utilizando renice paracambiar su prioridad por -5. Vuelva a observar el uso relativo de CPU.
notaPara darle mayor prioridad (valor más bajo de niceness), deberá tener privilegios deroot.
9. Use nice para iniciar un nuevo proceso cat con una menor prioridad:
nice -n 5 cat /dev/zero > /dev/null &
10. Use la tecla r en top para cambiar el valor de niceness de algunos de los procesos cat.
11. Use la tecla k en top para forzar la finalización de todos los procesos cat.
Capítulo 3. Administración de procesos de línea de comando
46 RH200-6-es-2-20110115
ReferenciasPáginas del manual: kill(1), signal(7), nice(1), renice(1)
Control de procesos
RH200-6-es-2-20110115 47
Práctica Ejercicio
Administración de procesosAntes de comenzar...En serverX ejecute el comando lab-setup-processes.
Realice los siguientes pasos con cuidado. Si tiene algún problema o alguna duda, consulte con suinstructor.
1. Cambie la prioridad del proceso que está usando la mayoría de los recursos de CPU a 5.
2. Finalice el proceso que está usando la mayoría de los recursos de memoria.
3. Ejecute lab-grade-processes en serverX para confirmar que usted haya identificado yadministrado los procesos correctos.
4. Ejecute el comando lab-cleanup-processes para limpiar.
Capítulo 3. Administración de procesos de línea de comando
48 RH200-6-es-2-20110115
Administración de tareas periódicascron administra programas que deben ejecutarse conforme a una programación periódica, derepetición. Un demonio, crond, se reactiva una vez por minuto para ejecutar las tareas que sehayan programado. Los usuarios programan las tareas personales con el comando crontab. Eladministrador de sistemas puede establecer tareas en los archivos de configuración de todo elsistema.
Los usuarios individuales registran las tareas mediante el uso de un archivo de texto denominadoarchivo crontab ("tabla de cron"). crontab -l enumera el archivo. crontab -r elimina elarchivo. crontab -e edita el archivo. El editor predeterminado que se usa con crontab -e esvi.
crontab -e abrirá un archivo crontab en blanco. La sintaxis está documentada en la página delmanual crontab(5). Cada línea define una tarea programada o una "variable de entorno" queafecta la ejecución de la tarea. Las líneas de tarea tienen seis campos; los primeros cinco camposdefinen el minuto, la hora, el día del mes, el mes y el día de la semana; mientras que el resto de lalínea especifica un comando para su ejecución.
ImportanteEl comando se ejecutará cuando coincida ya sea el día del mes o el día de la semana. (Nosólo cuando coincidan los dos criterios, que es lo piensa la mayoría).
El siguiente ejemplo muestra una entrada cron que ejecuta el comando ls cada minuto:
* * * * * ls
Minuto. Los valores válidos son del 0 al 59.
Hora. Los valores válidos son del 0 al 23. 20 significa 8 p. m.
Día del mes. Los valores válidos son del 1 al 31.
Mes. Los valores válidos son del 1 al 12 o las tres primeras letras del nombre (p. ej., Jan).
Día de la semana. Los valores válidos son del 0 al 7 (el 0 ó el 7 son el domingo) o las tresprimeras letras del nombre (p. ej., Sun).Comando. Agregue el comando de la forma en que lo escribiría en la línea de comando.Use el punto y coma (;) para separar varios comandos que se ejecutarán al mismo tiempo.Agregue otra línea para ejecutar un comando en otro momento.
Sintaxis de cron Cuándo se ejecutará el comando
05 * * * * Cada hora, a los 5 minutos pasada la hora
05 02 * * * Cada día a las 2:05 a. m.
30 08 01 * * A las 8:30 p. m. el primer día de cada mes
00 07 25 12 * El 25 de diciembre a las 7:00 a. m.
30 16 * * 5 Cada viernes a las 4:30 p. m.
Administración de tareas periódicas
RH200-6-es-2-20110115 49
Sintaxis de cron Cuándo se ejecutará el comando
*/5 * * * * Cada 5 minutos (0, 5, 10... 45, 50, 55)
*/10 9-16 1,15 * * Cada 10 minutos entre las 9 a. m. y las 5 p. m. (no se ejecutaráa las 5 p. m.; la última instancia se ejecutará a las 4:50 p. m.)el primer día y el día 15 del mes
0 0 1 jan 0 El 1.º de enero a la medianoche y cada domingo de enero (nosólo si el 1.º de enero es un domingo)
Tabla 3.2. Ejemplo de entradas de tabla de cron
Las tareas que corresponden al sistema generalmente se incluyen en archivos crontab, en lugarde archivos personales. El archivo crontab principal es /etc/crontab que se puede editarnormalmente (no se usa crontab -e). Una práctica más conveniente es crear un archivocrontab en un editor de textos normal y soltarlo en /etc/cron.d/ (esto evita problemascuando se actualiza el paquete cronie; esto es lo que hacen los paquetes de sistema). Losarchivos crontab /etc/cron.d/ presentan un campo adicional después de la especificación dela fecha que indica el usuario que ejecutará el trabajo.
Los scripts que deben ejecutarse una vez al día, a la semana o al mes simplemente puedenconfigurarse como ejecutable y soltarse en el directorio correspondiente en /etc/cron.{daily,weekly,monthly}. Estas tareas son ejecutadas por el servicio anacron del sistema,configurado por /etc/anacrontab. En Red Hat Enterprise Linux6, anacron es un componenteintegrado de cron para administrar mejor estas tareas y garantizar que se ejecuten despuésdel arranque, si es que no se ejecutaron porque la máquina estaba apagada. Para obtener másinformación, consulte la página del manual anacrontab(5).
ReferenciasPáginas del manual: crontab(1), crontab(5), anacrontab(5) y crontabs(4)
Capítulo 3. Administración de procesos de línea de comando
50 RH200-6-es-2-20110115
Práctica Cuestionario
Programación de cronie1. ¿Cuándo se ejecutarán los siguientes trabajos?
a. 00 07 25 12 * /usr/local/bin/open_presents
b. */5 * * * * /usr/local/bin/take_stats
c. 07 03 * * * /sbin/service xend restart
d. 30 16 * * 5 /usr/local/bin/mail_checks
2. Cree una entrada de cron que ejecutaría el script /usr/local/bin/vacuum_db unavez al mes, el primer día del mes.
3. En la pregunta anterior. ¿qué ocurre si la máquina estaba inactiva debido amantenimiento el primero de febrero? ¿Cuál sería la mejor forma de asegurarse de quela base de datos no opere 2 (o más) meses entre cada vaciado?
Prueba de criterios
RH200-6-es-2-20110115 51
Prueba
Prueba de criterios
Las siguientes acciones deben ejecutarse en su máquina serverX.
Ejercicio
Administración de procesos
Realice los siguientes pasos con cuidado. Si tiene algún problema o alguna duda, consulte con suinstructor.
1. En serverX, ejecute el script manage_processes_start.
2. La estación del servidor ahora estará muy lenta.
3. Determine qué proceso está usando una cantidad excesiva de memoria y finalícelo.
4. Determine qué procesos están usando una cantidad excesiva de memoria de CPU y cambieel valor de niceness a 15.
5. Cree un trabajo de cron de sistema que cada media hora reajuste todos los procesos quepertenecen al usuario elvis a un valor de niceness de 10.
Capítulo 3. Administración de procesos de línea de comando
52 RH200-6-es-2-20110115
Notas personales
Prueba de criterios
RH200-6-es-2-20110115 53
Resumen de la unidad
Inicio de herramientas gráficas desde BASH
En esta sección, aprendió a:
• Cambiar temporalmente a otra cuenta desde BASH sin cerrar sesión
• Describir la función y los privilegios del usuario root
• Iniciar comandos gráficos desde BASH como usuario root
.Control de procesos
En esta sección, aprendió a:
• Identificar los procesos que consumen la mayoría de los recursos de CPU
.Finalización y control de procesos
En esta sección, aprendió a:
• Finalizar procesos
• Cambiar la prioridad de un proceso existente
• Iniciar un proceso con una prioridad no predeterminada
.Administración de tareas periódicas
En esta sección, aprendió a:
• Programar tareas periódicas mediante el uso de cron
.
54
RH200-6-es-2-20110115 55
UNIDAD CUATRO
OBTENER AYUDA DE RED HAT
IntroducciónTemas tratados en esta unidad:
• Documentación en línea de Red Hat
• Contacto con Red Hat
Capítulo 4. Obtener ayuda de Red Hat
56 RH200-6-es-2-20110115
Buscar en la documentación en líneaUn sistema Red Hat Enterprise Linux instalado tiene documentación que corresponde al softwareque usted haya instalado. Tradicionalmente, los comandos man e info acceden a informaciónsobre los comandos, los formatos de archivo y los dispositivos que son útiles desde la línea decomando.
También podrá encontrar otra documentación almacenada en el directorio /usr/share/doc.Busque el nombre de un paquete de software que le interese como subdirectorio (carpeta) en eldirectorio /usr/share/doc para encontrar documentación relacionada con ese paquete.
Si no puede encontrar lo que está buscando en el sistema Red Hat Enterprise Linux, hay unagran cantidad de recursos en línea (que se describen a continuación) que podrán ayudarlo.
1. Portal de clientes de Red Hat
El Portal de clientes de Red Hat (http://access.redhat.com/) consolida informaciónque usted necesita para administrar su sistema Red Hat Enterprise Linux. En el sitio,encontrará datos sobre cómo administrar suscripciones y cómo obtener asistencia porteléfono o en línea. Se proporciona acceso completo al sitio a través de los mismos datosde inicio de sesión de Red Hat que probablemente use para el acceso a Red Hat Networkhospedado. Este es uno de los beneficios de la suscripción del software.
En la pestaña Knowledge, puede seleccionar el elemento Knowledgebase para buscarartículos sobre preguntas y problemas de hardware y software en la Base de conocimientode Red Hat.
Se puede acceder a partes del Portal de clientes de Red Hat sin iniciar sesión en Red Hat.
2. Documentación
Red Hat crea su propio conjunto de manuales que corresponden a cada versión de Red HatEnterprise Linux. Estos manuales están disponibles en http://access.redhat.com/docs. Los manuales incluyen:
• Notas de versión: describen las características y los temas relacionados con la versión deRed Hat Enterprise Linux.
• Guía de planificación para la migración: describe cómo se puede migrar de versionesanteriores de Red Hat Enterprise Linux.
• Guía de instalación: cubre los temas de instalación, que incluyen cómo realizarinstalaciones completas y desatendidas.
• Guía de implementación: incluye temas sobre la configuración de los sistemas Red HatEnterprise Linux.
Otras guías en línea cubren temas como la seguridad, la administración de recursos, laagrupación en clústeres y la virtualización.
3. Búsqueda en Google
Buscar en la documentación en línea
RH200-6-es-2-20110115 57
El uso de las búsquedas en Google para Red Hat Enterprise Linux, junto con los términosde búsqueda que representan un tema específico de su interés, a menudo puede arrojar losmejores resultados. Si tiene un problema con algún componente de hardware o software,que otra persona también ha tenido, generalmente obtendrá buenos resultados medianteuna búsqueda en Google (http://www.google.com). Puede limitar la búsqueda a un sitioespecífico agregando site:web_site, donde web_site es el sitio web al que se limitarála búsqueda. Por ejemplo, con site:www.redhat.com/docs se limitaría la búsqueda enGoogle al sitio de documentación de Red Hat.
ReferenciasPortal de clientes de Red Hat
http://access.redhat.com/
Documentación de Red Hathttp://access.redhat.com/docs/http://www.redhat.com/docs/
Base de conocimientohttp://access.redhat.com/kb/knowledgebase/
Búsquedas relacionadas con Linuxhttp://www.google.com/linux/
Para limitar la búsqueda en Google al sitio de documentación de Red Hat, ingrese lostérminos de la búsqueda seguidos por site:www.redhat.com/docs
Capítulo 4. Obtener ayuda de Red Hat
58 RH200-6-es-2-20110115
Obtención de lo mejor de Red Hat Global SupportServices (GSS)
Esta sección está diseñada para ayudarlo a comunicarse con la asistencia técnica de Red Hat.
Existen varias maneras de obtener ayuda con Red Hat Enterprise Linux. Como suscriptor de RedHat Enterprise Linux, uno de sus recursos más importantes es la asistencia técnica oficial de RedHat. Para obtener el mejor resultado cuando se comunique con Red Hat Global Support Services,debe comprender los puntos básicos de cómo funciona el proceso y qué información deberáproporcionar.
A continuación, se detallan los siete pasos que se deben seguir para interactuar con Red HatGlobal Support Services (GSS):
1. Defina el problema
Explique el problema. Reproduzca el problema y enumere los pasos para hacerlo.
2. Buscar en la documentación y en los artículos de la base de conocimiento
Haga los deberes. Busque documentación de otras personas que hayan tenido problemassimilares.
3. Reúna información básica
¿Qué versiones del software relevante está ejecutando? ¿Hay actualizaciones que puedensolucionar el problema? ¿Cuáles son los mensajes de error y síntomas que ve? Sea lo másespecífico posible.
4. Reúna información de diagnóstico relevante (sosreport)
Reúna archivos de registro, volcados principales, resultados de comandos y cualquier otracosa que pueda considerar relevante. Ejecute sosreport para reunir información.
5. Determinar el nivel de gravedad
Intente determinar el nivel de gravedad con precisión. Los niveles de gravedad (1 al 4) sedescriben en https://access.redhat.com/support/policy/GSS_severity.html
6. Ponerse en contacto con Red Hat telefónicamente o por Internet
Asegúrese de tener disponible su número de cuenta de Red Hat. La información de contactoestá disponible en https://access.redhat.com/support/policy/support_process.html haciendoclic en el enlace submit a support case online o contact us by phone.
7. Asegurarse de que la solicitud de asistencia se transfiera a un técnico en su región
Luego de comunicarse con Red Hat, solicite que se transfiera su solicitud de asistencia a untécnico en su región geográfica para evitar problemas con la zona horaria.
Obtención de lo mejor de Red Hat Global Support Services (GSS)
RH200-6-es-2-20110115 59
ReferenciasGeneralidades del proceso de asistencia de Red Hat
https://www.redhat.com/support/process/
Netiquetahttp://www.catb.org/~esr/faqs/smart-questions.html
Capítulo 4. Obtener ayuda de Red Hat
60 RH200-6-es-2-20110115
Práctica Ejercicio para ordenar
Trabajo con Red Hat Global Support Services (GSS)
A continuación, se detallan los pasos que se deben seguir para interactuar con Red Hat GlobalSupport Services (GSS). Marque el orden en que deben efectuarse los pasos:
Reunir información de diagnóstico relevante (información de registro, volcados principales,etc.)
Transferir la solicitud de asistencia a un técnico de su región
Definir el problema
Ponerse en contacto con Red Hat telefónicamente o por Internet
Determinar el nivel de gravedad
Reunir información básica
Buscar en la documentación y en los artículos de la base de conocimiento
Obtención de lo mejor de Red Hat Global Support Services (GSS)
RH200-6-es-2-20110115 61
Notas personales
Capítulo 4. Obtener ayuda de Red Hat
62 RH200-6-es-2-20110115
Resumen de la unidad
Buscar en la documentación en línea
En esta sección, aprendió a:
• Usar la documentación en línea de Red Hat para responder preguntas
.Obtención de lo mejor de Red Hat Global Support Services (GSS)
En esta sección, aprendió a:
• Describir el proceso para obtener ayuda adicional de Red Hat Global SupportServices (GSS)
.
RH200-6-es-2-20110115 63
UNIDAD CINCO
ADMINISTRAR RECURSOS DELSISTEMA
IntroducciónTemas tratados en esta unidad:
• Destinos de registros del sistema
• Informes de resumen de registro
• Redirigir informes de registro
Capítulo 5. Administrar recursos del sistema
64 RH200-6-es-2-20110115
Determinar destinos de registrosMuchos programas usan un protocolo estándar para enviar mensajes a rsyslogd. La descripciónde cada mensaje está determinada por un recurso (tipo de mensaje) y una gravedad (gradode importancia). Los nombres de los recursos disponibles y los niveles de gravedad estánestandarizados. El archivo /etc/rsyslog.conf utiliza el recurso y la gravedad de un mensajede registro para determinar adónde se lo debería enviar (por ejemplo, a un archivo de registro).
El archivo rsyslog.conf está documentado en la página del manual rsyslog.conf(5) y otrosdocumentos HTML detallados ubicados en /usr/share/doc/rsyslog-*/manual.html. En lasección #### RULES #### de /etc/rsyslog.conf, se incluyen directivas que definen dóndese almacenan los mensajes de registro. En el lado izquierdo de cada línea, se indican el recursoy la gravedad del mensaje de registro que se corresponde con la directiva. En el lado derecho decada línea, se indica en qué archivo se debe guardar el mensaje de registro. Tenga en cuenta que,generalmente, los mensajes de registro se guardan en archivos ubicados en el directorio /var/log.
Ejemplo de archivo rsyslog.conf
#### MODULES ####
$ModLoad imuxsock.so # provides support for local system logging (e.g. via logger command)$ModLoad imklog.so # provides kernel logging support (previously done by rklogd)#$ModLoad immark.so # provides --MARK-- message capability
# Provides UDP syslog reception#$ModLoad imudp.so#$UDPServerRun 514
# Provides TCP syslog reception#$ModLoad imtcp.so #$InputTCPServerRun 514
#### GLOBAL DIRECTIVES ####
# Use default timestamp format$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
#### RULES ####
# Log all kernel messages to the console.# Logging much else clutters up the screen.#kern.* /dev/console
# Log anything (except mail) of level info or higher.# Don't log private authentication messages!*.info;mail.none;authpriv.none;cron.none /var/log/messages
# The authpriv file has restricted access.authpriv.* /var/log/secure
# Log all the mail messages in one place.mail.* -/var/log/maillog
RH200-6-es-2-20110115 65
# Log cron stuffcron.* /var/log/cron
# Everybody gets emergency messages*.emerg *
# Save news errors of level crit and higher in a special file.uucp,news.crit /var/log/spooler
# Save boot messages also to boot.loglocal7.* /var/log/boot.log
Archivos de registro predeterminadosEscriba el nombre del archivo de registro al revisar el contenido de /etc/rsyslog.conf enserverX.
1. Todos los mensajes relacionados con autenticaciones van a.
2. Todo lo relacionado con el correo electrónico va a.
3. Los mensajes relacionados con cron van a.
4. Todos los otros mensajes enviados conprioridad info o mayor se guardan en
.
Rotación de registros• Los registros se "rotan" para que no rellenen el sistema de archivos que contiene /var/log/.
• Cuando se rota un archivo de registro, se le cambia el nombre con una extensión que indica lafecha en que se rotó: el archivo /var/log/messages anterior puede pasar a ser /var/log/messages-20101030 si se rota el 30 de octubre de 2010.
• Una vez que se rotó el archivo de registro anterior, se crea un nuevo archivo de registro y senotifica al servicio que escribe en este.
• Después de una determinada cantidad de rotaciones (habitualmente, después de cuatrosemanas), el archivo de registro anterior se descarta para conservar espacio en disco.
• Una tarea de cron ejecuta el programa de rotación de registros a diario para verificar si esnecesario rotar algún registro.
• La mayoría de los archivos de registro se rotan semanalmente, pero el programa de rotaciónde registros rota algunos más rápido o más lento, o cuando alcanzan un tamaño determinado.
Capítulo 5. Administrar recursos del sistema
66 RH200-6-es-2-20110115
ReferenciasManual de rsyslog• /usr/share/doc/rsyslog-*/manual.html
Páginas del manual: rsyslog.conf(5) y logrotate(8)
RH200-6-es-2-20110115 67
Práctica Cuestionario
Revisar rsyslogResponda las siguientes preguntas:
1. ¿Cuáles son los dos campos que se utilizan para la coincidencia de eventos de registro?
2. ¿Cuál es el efecto de un comodín en el primer campo?
3. ¿Cuál es el efecto de un comodín en el segundo campo?
4. ¿Es posible registrar el mismo evento de registro en más de un registro?
Capítulo 5. Administrar recursos del sistema
68 RH200-6-es-2-20110115
Buscar y analizar un informe de resumen deregistro
Puede instalarse un programa denominado logwatch que automáticamente analizará losarchivos de registro estándares y enviará un correo electrónico de resumen a root. Una formarápida de verificar el estado de un sistema es leer el informe de resumen de registro.
logwatch se ejecuta como una tarea de cron diaria para generar el informe con los datos deregistro importantes. Este informe se envía por correo electrónico a la cuenta local de usuarioroot, de forma predeterminada.
Si desea generar un correo electrónico de LogWatch en forma manual, sólo ejecute logwatch.
Referencias/usr/share/doc/logwatch-*
Página del manual: logwatch(8)
RH200-6-es-2-20110115 69
Práctica Lista de verificación de rendimiento
Analizar un informe de resumen de registro
Determine la cantidad de espacio libre para el sistema de archivos de usuario root en función delúltimo informe de LogWatch en serverX.
Abra el correo electrónico de usuario root.
Busque y lea el último informe de LogWatch.. Si no hay un informe de LogWatch, ejecuteel comando logwatch para generar uno en forma manual.
Registre la cantidad de espacio libre para el sistema de archivos /:
Capítulo 5. Administrar recursos del sistema
70 RH200-6-es-2-20110115
Cambiar la dirección de correo electrónico deresumen de registro
/etc/logwatch/conf/logwatch.conf es un archivo vacío que contiene la configuraciónlocal de LogWatch. Las opciones de configuración predeterminadas de todo el sistema paralogwatch se guardan en /usr/share/logwatch/default.conf/logwatch.conf. Acontinuación se muestra un extracto:
# Default Log Directory# All log-files are assumed to be given relative to this directory.LogDir = /var/log
# You can override the default temp directory (/tmp) hereTmpDir = /var/cache/logwatch
# Default person to mail reports to. Can be a local account or a# complete email address. Variable Print should be set to No to# enable mail feature.MailTo = root
# Default person to mail reports from. Can be a local account or a# complete email address.MailFrom = Logwatch
# if set, the results will be saved in <filename> instead of mailed# or displayed.#Save = /tmp/logwatch
# The default time range for the report...# The current choices are All, Today, YesterdayRange = yesterday
# The default detail level for the report.# This can either be Low, Med, High or a number.# Low = 0# Med = 5# High = 10Detail = Low
# The 'Service' option expects either the name of a filter# (in /usr/share/logwatch/scripts/services/*) or 'All'.# The default service(s) to report on. This should be left as All for# most people. Service = All
# By default we assume that all Unix systems have sendmail or a sendmail-like system.# The mailer code Prints a header with To: From: and Subject:.mailer = "sendmail -t"
# By default the cron daemon generates daily logwatch report# if you want to switch it off uncomment DailyReport tag. # The implicit value is Yes## DailyReport = No
Normalmente, edita el archivo en /etc, no los valores predeterminados en /usr/share. Elelemento MailToselecciona una dirección de correo electrónico para enviar los informes
Cambiar la dirección de correo electrónico de resumen de registro
RH200-6-es-2-20110115 71
de LogWatch; de forma predeterminada, LogWatch usa root@localhost. Si desea [email protected] reciba estos envíos, agregue la siguiente línea al archivo /etc/logwatch/conf/logwatch.conf:
MailTo = [email protected]
ReferenciasPágina del manual: logwatch(8)
Capítulo 5. Administrar recursos del sistema
72 RH200-6-es-2-20110115
Práctica Caso de estudio
Redirigir los correos electrónicos de resumen deregistro
Cambie la configuración de logwatch en serverX para enviar los informes de resumen deregistro al usuario student en lugar del usuario root.
Pregunta adicional: ¿Cómo enviaría los informes de logwatch a student y a root?
¿Cómo trataría el caso de estudio descrito anteriormente? Tome nota de su proceso en elespacio provisto a continuación y después impleméntelo.
Prueba de criterios
RH200-6-es-2-20110115 73
Prueba
Prueba de criterios
Caso de estudio
Mensajes de depuración de registro
Su compañía desea incluir una bitácora para depuración en su servidor para analizarla. Redirijatodos los mensajes de nivel de depuración (y de mayor prioridad) a un archivo con el nombre /var/log/debug.log.
¿Cómo trataría el caso de estudio descrito anteriormente? Tome nota de su proceso en elespacio provisto a continuación y después impleméntelo.
Capítulo 5. Administrar recursos del sistema
74 RH200-6-es-2-20110115
Notas personales
Prueba de criterios
RH200-6-es-2-20110115 75
Resumen de la unidad
Determinar destinos de registros
En esta sección, aprendió a:
• Administrar la distribución de registros de software con rsyslog
• Proteger el sistema de archivos con logrotate
.Buscar y analizar un informe de resumen de registro
En esta sección, aprendió a:
• Usar correos electrónicos de resumen de registro
.Cambiar la dirección de correo electrónico de resumen de registro
En esta sección, aprendió a:
• Administrar la distribución de los resúmenes de registro
.
76
RH200-6-es-2-20110115 77
UNIDAD SEIS
INSTALACIÓN YADMINISTRACIÓN DESOFTWARE
IntroducciónTemas tratados en esta unidad:
• Registro con Red Hat Network (RHN)
• Uso de yum para administrar paquetes de software
• Uso de rpm para obtener información de paquetes
• Repositorios de terceros/privados
Capítulo 6. Instalación y administración de software
78 RH200-6-es-2-20110115
Registrar el sistema con Red Hat Network (RHN)
¿Qué es Red Hat Network?Red Hat Network es un servicio administrado de manera centralizada que facilita laimplementación de software y actualizaciones de software en sistemas Red Hat Enterprise Linuxy la administración y el control de dichos sistemas en forma remota. Puede usar el servicioRHN hospedado administrado por Red Hat, o puede configurar y administrar su propio RHNSatellite en su organización. De cualquier forma, para obtener actualizaciones de paquetes parasus clientes a través de RHN y para que aparezcan en su interfaz de administración web, debecomenzar por registrar esos sistemas en el servidor RHN que elija.
Uso de rhn_registerInicie el proceso de registro de Red Hat Network (RHN) ejecutando el comando rhn_register
desde la línea de comando o eligiéndolo desde el menú de la GUI: System → Administration →RHN Registration
Si tiene un servidor RHN Satellite o RHN Proxy, elija el botón I have access to a Red HatNetwork Satellite... en la GUI. Complete el nombre DNS del servidor RHN Satellite o el servidorRHN Proxy.
Si no tiene un servidor RHN Satellite o RHN Proxy, o si desea registrarse con RHN hospedado,elija el botón I'd like to receive updates from Red Hat Network.
Si necesita establecer la configuración de proxy para la conexión, haga clic en el botón AdvancedNetwork Configuration... y complete los campos correspondientes.
Complete la información de su cuenta de Red Hat Network. Si olvidó el nombre o la contraseñade su cuenta, o necesita crear una cuenta nueva, vaya a https://www.redhat.com/wapps/sso/login.html
Uso de rhn_register
RH200-6-es-2-20110115 79
En la siguiente pantalla, podrá limitar las actualizaciones para mantener la compatibilidad conversiones menores de Red Hat Enterprise Linux. Si desea esta función, elija Limited updates. Sidesea todas las actualizaciones actuales, elija All available updates.
Ingrese el nombre del sistema (se utilizará el nombre de host actual de manera predeterminada)y, como alternativa, envíe el perfil del hardware y los paquetes a RHN.
notaEl comando rhn_register funciona con igual eficacia en un entorno gráfico o un entornode texto. Si ejecuta rhn_register en un entorno de sólo texto, se solicitará información demanera similar a la GUI.
ReferenciasPáginas del manual: rhn_register(8) y rhnplugin(8)
Base de conocimiento: "¿Para qué se usa el comando rhn_register en Red Hat EnterpriseLinux?"
https://access.redhat.com/kb/docs/DOC-11217
Base de conocimiento: "Tuve que reinstalar mi sistema. ¿Cómo vuelvo a registrar mi sistemacon Red Hat Network (RHN)?"
https://access.redhat.com/kb/docs/DOC-8037
Red Hat Enterprise Virtualization for Servers 2.2: 5.5-2.2 Hypervisor Deployment Guide
• Sección 5.1.7: Registro en RHN
Capítulo 6. Instalación y administración de software
80 RH200-6-es-2-20110115
Práctica Cuestionario
Registro de Red Hat Network1. La herramienta de la línea de comando que
inicia el registro con Red Hat Network es.
2. La primera elección de registro determina si unsistema se registra con o
.
3. Opcionalmente, es posible que se deba suministrarinformación de autenticación y servidor
adicional.
4. Se debe suministrar un y
su respectiva contraseña para que el registro de Red HatNetwork sea correcto.
5. Las últimas preguntas que se deben responderdurante el proceso de registro son sobre
y si se desea cargar información sobre perfiles de y
.
Uso de yum
RH200-6-es-2-20110115 81
Uso de yumyum es una herramienta eficaz de la línea de comando que puede usarse para administrar(instalar, actualizar, quitar y consultar) los paquetes de software de modo más flexible.Generalmente, los paquetes oficiales de Red Hat se descargan de la red de Red Hat (RHN).Cuando usted registra su máquina en RHN, yum se configura automáticamente para su uso.También puede configurar yum para obtener paquetes de repositorios de paquetes de terceros enla red.
Comandos yum básicos1. yum help mostrará la información de uso.
2. yum list muestra los paquetes instalados y disponibles.
3. yum search KEYWORD enumera los paquetes por palabra clave.
4. yum info PACKAGENAME brinda información detallada sobre un paquete.
5. yum install PACKAGENAME obtiene e instala un paquete de software, incluidas lasdependencias.
6. yum remove PACKAGENAME quita un paquete de software instalado, incluidos los paquetesadmitidos.
7. yum update PACKAGENAME obtiene e instala una nueva versión del paquete de software,incluidas las dependencias. Generalmente, el proceso intenta preservar los archivos deconfiguración, pero en algunos casos, se les cambiará el nombre si el empaquetadorconsidera que el anterior no funcionará después de la actualización. Si no se especifica elPACKAGENAME, instalará todas las actualizaciones relevantes.
8. yum provides PATHNAME muestra los paquetes que coinciden con la ruta de accesoespecificada (que suelen incluir caracteres comodín).
Use este espacio para sus notas.
Ejemplos de comandos yum:Para buscar paquetes que tengan "web server" en su descripción, resumen o nombre depaquete:
[root@serverX ~]# yum search 'web server'============================= Matched: web server ==============================mod_auth_mysql.x86_64 : Basic authentication for the Apache web server using a : MySQL databasewebalizer.x86_64 : A flexible Web server log file analysis programfreeradius.x86_64 : High-performance and highly configurable free RADIUS serverhsqldb.x86_64 : Hsqldb Database Engine
Capítulo 6. Instalación y administración de software
82 RH200-6-es-2-20110115
htdig.x86_64 : ht://Dig - Web search enginehtdig-web.x86_64 : Scripts and HTML code needed for using ht://Dig as a web : search enginehttpd.x86_64 : Apache HTTP Server...
Para obtener información sobre el servidor HTTP Apache:
[root@serverX ~]# yum info httpdAvailable PackagesName : httpdArch : x86_64Version : 2.2.15Release : 5.el6Size : 811 kRepo : baseSummary : Apache HTTP ServerURL : http://httpd.apache.org/License : ASL 2.0Description: The Apache HTTP Server is a powerful, efficient, and extensible : web server.
Para instalar, actualizar y quitar el paquete httpd:
[root@serverX ~]# yum install httpd[root@serverX ~]# yum update httpd[root@serverX ~]# yum remove httpd
Advertenciayum remove quitará los paquetes detallados y cualquier paquete que requiera los paquetesque se van a quitar (y los paquetes que requieran esos paquetes, y así sucesivamente).Esto puede dar lugar a una eliminación inesperada de paquetes, por lo que debe verificardetenidamente la lista de paquetes que se quitarán.
Grupos de componentes yumyum también representa el concepto de grupos de componentes, que son colecciones de softwarerelacionado agrupadas en torno a una solución determinada. Revise yum help filtrando líneascon el término "grupo".
ReferenciasRed Hat Enterprise Linux Deployment Guide
• Capítulo 1: Yum
Páginas del manual: yum(1), yum.conf(5)
Uso de yum
RH200-6-es-2-20110115 83
Práctica Ejercicio
Búsqueda e instalación de paquetes
Realice los siguientes pasos con cuidado. Si tiene algún problema o alguna duda, consulte con suinstructor.
Inicie sesión como usuario root en serverX y realice las siguientes tareas:
1. Intente ejecutar el comando gnuplot. Se le indicará que no está instalado.
2. Busque paquetes de trazado.
3. Obtenga más información acerca del paquete gnuplot.
4. Instale el paquete gnuplot.
5. Intente quitar el paquete gnuplot, pero seleccione "no".
¿Cuántos paquetes se quitarían?
6. Intente quitar el paquete gnuplot-common, pero seleccione "no".
¿Cuántos paquetes se quitarían?
Capítulo 6. Instalación y administración de software
84 RH200-6-es-2-20110115
Manipulación de software de tercerosLa utilidad rpm es una herramienta de nivel bajo que puede obtener información acerca delcontenido de los archivos de paquetes y los paquetes instalados. Obtiene su información de labase de datos local o de los mismos archivos de paquetes.
La forma general de una consulta es:
• rpm -q [select-options] [query-options]
• rpm --query [select-options] [query-options]
Consultas de RPM: Seleccionar opciones• -q -a - todos los paquetes instalados
• -q PACKAGENAME - PACKAGENAME actualmente instalado
• -q -p PACKAGEFILE.rpm - archivo de paquete con el nombre PACKAGEFILE.rpm
• -q -f FILENAME - qué paquete proporciona el FILENAME
Consultas de RPM: Información acerca del contenido de los paquetes• -q - especifica el nombre y la versión del paquete; comparar con yum list
• -q -i - información sobre el paquete; comparar con yum info
• -q -l - enumera los archivos instalados por el paquete especificado
• -q -c - enumera sólo los archivos de configuración
• -q -d - enumera sólo los archivos de documentación
• -q --scripts - enumera los scripts del intérprete de comandos que pueden ejecutarse unavez que se instaló o desinstaló el paquete
• -q --changelog - enumera la información de cambios para el paquete
notaEl comando repoquery también puede usarse para obtener información sobre paquetes ysus contenidos. La diferencia con rpm es que busca esa información en los repositorios deyum y RHN, en lugar de la base de datos local de paquetes instalados.
Ejemplo de comandos de consulta de rpm:Consulta de paquetes instalados:
[root@serverX ~]# rpm -q samba-clientsamba-client-3.5.4-68.el6.x86_64
Uso de yum para instalar archivos de paquete locales
RH200-6-es-2-20110115 85
[root@serverX ~]# rpm -q zlib -l/lib64/libz.so.1/lib64/libz.so.1.2.3/usr/share/doc/zlib-1.2.3/usr/share/doc/zlib-1.2.3/ChangeLog/usr/share/doc/zlib-1.2.3/FAQ/usr/share/doc/zlib-1.2.3/README[root@serverX ~]# rpm -q httpd --scriptspreinstall scriptlet (using /bin/sh):# Add the "apache" usergetent group apache >/dev/null || groupadd -g 48 -r apachegetent passwd apache >/dev/null || \ useradd -r -u 48 -g apache -s /sbin/nologin \ -d /var/www -c "Apache" apacheexit 0postinstall scriptlet (using /bin/sh):# Register the httpd service/sbin/chkconfig --add httpdpreuninstall scriptlet (using /bin/sh):if [ $1 = 0 ]; then /sbin/service httpd stop > /dev/null 2>&1 /sbin/chkconfig --del httpdfiposttrans scriptlet (using /bin/sh):/sbin/service httpd condrestart >/dev/null 2>&1 || :
Consulta e instalación de archivos de paquete:
[root@serverX ~]# cd /net/instructor/var/ftp/pub/materials/[root@serverX ~]# rpm -q -p wonderwidgets-1.0-4.x86_64.rpm -l/etc/wonderwidgets.conf/usr/bin/wonderwidgets/usr/share/doc/wonderwidgets-1.0/usr/share/doc/wonderwidgets-1.0/README.txt[root@serverX ~]# rpm -q -p wonderwidgets-1.0-4.x86_64.rpm -iName : wonderwidgets Relocations: (not relocatable)Version : 1.0 Vendor: Red Hat, Inc.Release : 4 Build Date: Fri 03 Dec 2010 05:42:55 AM ESTInstall Date: (not installed) Build Host: station166.rosemont.lanGroup : GLS/Applications Source RPM: wonderwidgets-1.0-4.src.rpmSize : 4849 License: GPLSignature : (none)Summary : Demonstration package for use in GLS training.Description :A demonstration package that installs an executable, and a config file.[root@serverX ~]# rpm -q -p wonderwidgets-1.0-4.x86_64.rpm -c/etc/wonderwidgets.conf[root@serverX ~]# rpm -q -p wonderwidgets-1.0-4.x86_64.rpm -d/usr/share/doc/wonderwidgets-1.0/README.txt[root@serverX ~]# yum localinstall wonderwidgets-1.0-4.x86_64.rpm...Package wonderwidgets-1.0-4.x86_64.rpm is not signed[root@serverX ~]# yum localinstall --nogpgcheck wonderwidgets-1.0-4.x86_64.rpm[root@serverX ~]# rpm -q wonderwidgetswonderwidgets-1.0-4.x86_64
Uso de yum para instalar archivos de paquete localesyum localinstall PACKAGEFILE.rpm se puede usar para instalar archivos de paquetedirectamente. Automáticamente descarga todas las dependencias que tiene el paquete de RHNy los repositorios yum configurados. Generalmente, los paquetes están firmados digitalmente
Capítulo 6. Instalación y administración de software
86 RH200-6-es-2-20110115
para garantizar que son legítimos; si el paquete no está firmado con una clave de confianza desu sistema, será rechazado. La opción --nogpgcheck puede deshabilitar la comprobación defirmas si usted está seguro de que el paquete es legítimo.
notarpm -ivh PACKAGEFILE.rpm también se puede usar para instalar archivos de paquete.Sin embargo, el uso de yum ayuda a mantener un historial de transacciones que conservayum (consulte yum history).
ImportanteTenga cuidado al instalar paquetes de terceros, no sólo por el software que pueden instalar,sino también porque el RPM puede ejecutar scripts arbitrarios como root, como parte delproceso de instalación.
Los archivos de paquete del RPM son principalmente archivos cpio. El comando cpio es unaherramienta de archivo como zip o tar, pero se diferencia en que lee la lista de archivos quevan a archivarse de STDIN, en lugar de como argumentos de la línea de comando. Canalicelos resultados de rpm2cpio PACKAGEFILE.rpm en cpio -id y extraerá todos los archivosalmacenados en el RPM en el directorio actual.
ReferenciasRed Hat Enterprise Linux Deployment Guide
• Sección 3.2: Uso de RPM
Páginas del manual: rpm(8), repoquery(1) y rpm2cpio(8)
Uso de yum para instalar archivos de paquete locales
RH200-6-es-2-20110115 87
Práctica Ejercicio
Manipulación de software de terceros
Realice los siguientes pasos con cuidado. Si tiene algún problema o alguna duda, consulte con suinstructor.
En este ejercicio, recopilará información acerca de un paquete de tercero, extraerá los archivosde este y lo instalará completo en el sistema de desktopX.
1. Descargue wonderwidgets-1.0-4.x86_64.rpm de http://instructor/pub/materials.
2. ¿Qué archivos contiene?
3. ¿Qué scripts contiene?
4. ¿Cuánto espacio en disco usará al instalarlo?
5. Use yum localinstall para instalar el paquete.
Capítulo 6. Instalación y administración de software
88 RH200-6-es-2-20110115
Uso de repositorios de tercerosLos repositorios de terceros son directorios de archivos de paquete de software a los quese puede acceder a través de la red mediante yum, provistos fuera de Red Hat Network. Losrepositorios yum son utilizados por distribuidores de software diferentes a Red Hat, o se usanpara pequeñas colecciones de paquetes locales. (Por ejemplo, Adobe proporciona parte desu software libre para Linux a través de un repositorio yum). El servidor del salón de clasesinstructor aloja repositorios yum para esta clase.
Coloque un archivo en el directorio /etc/yum.repos.d/ para habilitar el soporte para unnuevo repositorio de terceros. Los archivos de configuración de repositorio deben finalizar en.repo. La definición de repositorio contiene la URL del repositorio, un nombre, si se debe usarGPG para comprobar las firmas del paquete y, en ese caso, la URL que apunta a la llave GPG deconfianza.
Ejemplos de archivos de configuración /etc/yum.repos.d/*.repo:Un ejemplo con un solo repositorio, con las comprobaciones de seguridad desactivadas para lospaquetes descargados:
[GLS]name=Instructor GLS Repositorybaseurl=ftp://instructor.example.com/pub/glsgpgcheck=0
Un ejemplo con varias referencias de repositorios en un solo archivo:
[base]name=Instructor Server Repositorybaseurl=http://instructor.example.com/pub/rhel6/dvdgpgcheck=1gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
# Optional rhel6[optional]name=Instructor Optional Repositorybaseurl=http://instructor.example.com/pub/rhel6/Optionalgpgcheck=1gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
[client]name=Instructor Client Repositorybaseurl=http://instructor.example.com/pub/rhel6/Clientgpgcheck=1gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-releaseenabled=0
[kernel-extras]name=Instructor Kernel Extras Repositorybaseurl=http://instructor.example.com/pub/rhel6/Kernel-Extrasgpgcheck=1
Ejemplos de archivos de configuración /etc/yum.repos.d/*.repo:
RH200-6-es-2-20110115 89
notaTenga en cuenta que algunos repositorios, como EPEL (Paquetes extra para EnterpriseLinux), proporcionan este archivo de configuración como parte de un paquete RPM quepuede descargarse de Internet e instalarse con yum localinstall.
Instalación del paquete de repositorio EPEL de Red Hat Enterprise Linux 6:
[root@serverX ~]# rpm --import http://download.fedora.redhat.com/pub/epel/RPM-GPG-KEY-EPEL-6[root@serverX ~]# yum install http://download.fedora.redhat.com/pub/epel/beta/6/x86_64/epel-release-6-5.noarch.rpm[root@serverX ~]# cat /etc/yum.repos.d/epel.repo
[epel]name=Extra Packages for Enterprise Linux 6 - $basearch#baseurl=http://download.fedoraproject.org/pub/epel/6/$basearchmirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearchfailovermethod=priorityenabled=1gpgcheck=1gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
[epel-debuginfo]name=Extra Packages for Enterprise Linux 6 - $basearch - Debug#baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch/debugmirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-debug-6&arch=$basearchfailovermethod=priorityenabled=0gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6gpgcheck=1
[epel-source]name=Extra Packages for Enterprise Linux 6 - $basearch - Source#baseurl=http://download.fedoraproject.org/pub/epel/6/SRPMSmirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-source-6&arch=$basearchfailovermethod=priorityenabled=0gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6gpgcheck=1
ImportanteAntes de instalar los paquetes firmados, instale la llave GPG de RPM. De esta forma, severificará que el paquete pertenezca a una llave que usted haya importado. De lo contrario,yum reclamará la llave faltante. (Puede usar la opción --nogpgcheck para ignorar las llavesGPG faltantes, pero esto podría permitir la instalación de paquetes manipulados o insegurosen el sistema).
Capítulo 6. Instalación y administración de software
90 RH200-6-es-2-20110115
ReferenciasRed Hat Enterprise Linux Deployment Guide
• Sección 1.3: Configuración de yum y repositorios yum
Páginas del manual: yum(1) y yum.conf(5)
Ejemplos de archivos de configuración /etc/yum.repos.d/*.repo:
RH200-6-es-2-20110115 91
Práctica Ejercicio
Uso de repositorios yum
Realice los siguientes pasos con cuidado. Si tiene algún problema o alguna duda, consulte con suinstructor.
Configurará su servidor para usar un repositorio yum aparte para obtener actualizaciones y paraactualizar su máquina.
1. Cree el archivo /etc/yum.repos.d/errata.repo, para habilitar el repositorio“Actualizaciones” que se encuentra en la máquina instructor. Este debe acceder al contenidoque se encuentra en esta URL: ftp://instructor.example.com/pub/rhel6/Errata.
2. Actualice todo software relevante provisto por el repositorio con yum update.
Capítulo 6. Instalación y administración de software
92 RH200-6-es-2-20110115
Prueba
Prueba de criterios
Caso de estudio
Actualizar e instalar softwareAntes de comenzar...Restablezca su sistema de ejercicios de laboratorio de serverX con el comando lab-setup-server.
Tiene que administrar un nuevo servidor, serverX, con requisitos de software muy específicos.Debe tener instaladas las últimas versiones de los siguientes paquetes:
kernel (paquete existente con una actualización)
xsane-gimp (paquete nuevo)
bzip2 (paquete actualizado)
Por razones de seguridad, no debe tener instalado el paquete xinetd.
No instale todas las actualizaciones. Instale solamente las actualizaciones para los paquetesenumerados arriba, si están disponibles.
Los paquetes actualizados pueden encontrarse en la siguiente URL: ftp://instructor.example.com/pub/rhel6/Errata
Cuando termine, ejecute el script de evaluación lab-grade-packages-2 para asegurarse deque se hayan realizado todos los pasos de forma correcta.
¿Cómo trataría el caso de estudio descrito anteriormente? Tome nota de su proceso en elespacio provisto a continuación y después impleméntelo.
Ejemplos de archivos de configuración /etc/yum.repos.d/*.repo:
RH200-6-es-2-20110115 93
Notas personales
Capítulo 6. Instalación y administración de software
94 RH200-6-es-2-20110115
Resumen de la unidad
Registrar el sistema con Red Hat Network (RHN)
En esta sección, aprendió a:
• Registrar un sistema con Red Hat Network
.Uso de yum
En esta sección, aprendió a:
• Enumerar los paquetes por nombre, palabra clave o archivo.
• Obtener la versión y la descripción de un paquete.
• Instalar, actualizar y quitar paquetes con yum.
.Manipulación de software de terceros
En esta sección, aprendió a:
• Consultar paquetes de terceros para archivos antes de la instalación.
• Consultar la información interna de los paquetes del RPM.
.Uso de repositorios de terceros
En esta sección, aprendió a:
• Administrar archivos de definición de repositorio en /etc/yum.repos.d/
.
RH200-6-es-2-20110115 95
UNIDAD SIETE
ADMINISTRAR SISTEMASREMOTOS
IntroducciónTemas tratados en esta unidad:
• Acceso a un intérprete de comandos remoto
• Transferencias remotas de archivos
• Llaves de SSH
• Protección de SSH
• Archivadores y compresión
Capítulo 7. Administrar sistemas remotos
96 RH200-6-es-2-20110115
Acceso a un intérprete de comandos remotoEl intérprete de comandos de seguridad (SSH) es una de las herramientas de administraciónde sistemas más versátiles. Permite el inicio de sesión y la ejecución de comandos en sistemasremotos. Utiliza una encriptación sólida y llaves de host como protección contra el espionajede red. Es el único servicio de red que está habilitado de manera predeterminada y que puedeaccederse a él en forma remota. La configuración del servidor OpenSSH no suele requerirmodificación.
Complete los espacios en blanco mientras el instructor demuestra el uso de ssh y trata estospuntos clave.
1. SSH es más seguro que telnet porque toda la comunicaciónentre los hosts se .
2. ssh -X [email protected] inicia una conexión remota a como userusuario.
3. La primera vez que se realiza una conexión SSH a unsistema, la del sistemaremoto se almacena de forma local para que su identidadse pueda verificar cada vez que se inicie una conexiónfutura.
4. El comando se usa para finalizar una sesión SSH yregresar al intérprete de comandos local.
ReferenciasRed Hat Enterprise Linux Deployment Guide
• Sección 9.3.1: Uso de la utilidad ssh
RH200-6-es-2-20110115 97
Práctica Cuestionario
Cuestionario sobre acceso a un intérprete decomandos remotoConéctese a serverX de desktopX con un intérprete de comandos remoto. Responda lassiguientes preguntas ejecutando comandos de dicho intérprete de comandos remoto:
1. El comando Disk Utility es palimpsest. es el nombre de la unidad de disco
duro en serverX.
2.
es el nombre de la versión de SO de acuerdo con /etc/redhat-release.
3. Ejecute nautilus o use la línea de comando en elintérprete de comandos remoto en serverX para realizar losiguiente:
• Cree un archivo con el nombre a1.txt en /root.
• Cree un directorio con el nombre b2 en /home/student, que pertenezca al usuario student y al grupostudent.
Capítulo 7. Administrar sistemas remotos
98 RH200-6-es-2-20110115
Transferencias remotas de archivos
Comparar y contrastar: copia de archivos local frentea remotaComplete los campos abiertos.
Copia de archivos local Copia de archivos remota
Comando cp
Sintaxis cp original-file new-file
Argumentos Puede usar rutas de acceso paraargumentos
Además de las rutas de acceso, losarchivos pueden tener la siguientesintaxis: target:pathname, dondetarget = [user@]host.fqdn.Especifique user@ cuando elnombre de usuario remoto seadiferente.
Ámbito de laoperación
Sólo funciona con archivos locales
Tabla 7.1. Comparación de copia de archivos local frente a remota
Use este espacio para sus notas.
Comparar y contrastar: copia de archivos local frente a remota
RH200-6-es-2-20110115 99
ReferenciasPágina del manual: rsync(1)
Capítulo 7. Administrar sistemas remotos
100 RH200-6-es-2-20110115
Práctica Lista de verificación de rendimiento
Transferencias remotas de archivos
Use rsync para crear una copia de seguridad del directorio hogar de student dedesktopX en el directorio /tmp de serverX.
Cree un nuevo archivo con el nombre z.txt en el directorio hogar de student.
Use el mismo comando rsync para crear una copia de seguridad del directorio hogar destudent de desktopX en el directorio /tmp de serverX.
Quite el directorio Desktop de la copia de seguridad en serverX. Ejecute el mismocomando rsync.
Uso de llaves de SSH
RH200-6-es-2-20110115 101
Uso de llaves de SSHEl intérprete de comandos de seguridad, ssh, le permite autenticar mediante un esquema dellaves públicas/privadas. Esto significa que usted genera dos llaves, llamadas su llave públicay su llave privada. Tal como lo indica su nombre, la llave privada debe mantenerse en privado.Por el contrario, la llave pública puede darse a cualquier usuario. Un servidor SSH que tienesu llave pública puede emitir una pregunta de seguridad que sólo podrá ser respondida por unsistema que guarde su llave privada. En consecuencia, usted puede realizar la autenticación conla presencia de su llave. Esto le permite acceder a los sistemas sin que sea necesario escribirsiempre una contraseña y, aun así, la acción sigue siendo segura.
La generación de la llave se realiza con el comando ssh-keygen. Con la versión 2 de SSH,puede utilizar un tipo de llave de DSA o RSA. La versión 1 del protocolo SSH tiene una falla deseguridad y, por lo tanto, no se recomienda usarla a menos que deba conectarse a servidores sshheredados.
Durante la generación de llaves, se le dará la opción de especificar una frase de contraseña, lacual será necesaria para acceder a su llave privada. De esta manera, incluso en el caso de quele roben la llave, es muy difícil que otra persona pueda usarla. Esto le da tiempo para crear unnuevo par de llaves y quitar todas las referencias relacionadas con las anteriores, antes de queun intruso que haya decodificado la llave privada pueda utilizarla.
Siempre es recomendable proteger la llave privada con una frase de contraseña, ya que la llavele permite acceder a otras máquinas. Sin embargo, esto significa que deberá escribir su frasede contraseña cada vez que utilice la llave, de manera que el proceso de autenticación deja deser sin contraseña. Esto se puede evitar utilizando ssh-agent, al que se le puede dar la frasede contraseña una vez al comienzo de la sesión (mediante ssh-add), de modo que la puedaproporcionar cuando sea necesario mientras mantenga la sesión iniciada.
Una vez que se hayan generado las llaves SSH, se guardarán de modo predeterminado en eldirectorio .ssh/ de su directorio hogar. Los modos predeterminados deben ser 600 en su llaveprivada y 644 en su llave pública.
Para poder usar la autenticación basada en llaves, deberá copiar su llave pública en el sistema dedestino. Esto puede realizarse con ssh-copy-id.
[student@desktopX ~]$ ssh-copy-id -i .ssh/id_rsa.pub root@desktopY
Al copiar su llave en otro sistema a través de ssh-copy-id, este utiliza el archivo ~/.ssh/id_rsa.pub de manera predeterminada. Si utiliza otra llave o asigna un nombre diferente a lallave, será necesario especificar esto con la opción -i al usar ssh-copy-id.
Demostración de llaves SSH• Utilice ssh-keygen para crear un par de llaves públicas y privadas.
• Utilice ssh-copy-id para copiar la llave pública en la ubicación correcta en un sistemaremoto. Por ejemplo:
[root@serverX]# ssh-copy-id [email protected]
Capítulo 7. Administrar sistemas remotos
102 RH200-6-es-2-20110115
ReferenciasRed Hat Enterprise Linux Deployment Guide
• Sección 9.2.4: Uso de autenticación basada en llaves
Páginas del manual: ssh-keygen(1), ssh-copy-id(1), ssh-agent(1), ssh-add(1)
Uso de llaves de SSH
RH200-6-es-2-20110115 103
Práctica Lista de verificación de rendimiento
Transferencias seguras de copias de seguridad
Cree un par de llaves de SSH como student en desktopX.
Envíe la llave pública de SSH a la cuenta student de serverX.
Ejecute el comando rsync utilizado anteriormente para crear una copia de seguridad deldirectorio hogar de student de desktopX en el directorio /tmp de serverX.
Capítulo 7. Administrar sistemas remotos
104 RH200-6-es-2-20110115
Protección del acceso a SSHSi bien la configuración del servidor OpenSSH no suele requerir modificación, hay medidasadicionales de seguridad disponibles.
En esta actividad, vamos a "descubrir" cómo deshabilitar los inicios de sesión remotos de usuarioroot y el uso de contraseñas (se requiere el uso de llaves).
Investigación y aprendizaje sobre protección de SSH
1. Use yum o rpm para determinar cuál es el paquete que proporciona el servicio SSH.
2. Use rpm -q -l o rpm -q -c para determinar cuál es el archivo de configuración principalpara el servicio.
3. Consulte la página del manual para el archivo de configuración y determine cuál es ladirectiva que deshabilita el inicio de sesión de usuario root.
4. ¿Qué directiva de ese archivo de configuración deshabilita el inicio de sesión concontraseña?
ReferenciasRed Hat Enterprise Linux Deployment Guide
• Sección 9.2.4: Uso de autenticación basada en llaves
Uso de llaves de SSH
RH200-6-es-2-20110115 105
Práctica Lista de verificación de rendimiento
Protección de SSH
Si no lo hizo antes, genere llaves SSH en desktopX y copie la llave pública en la cuentastudent en serverX y verifique que las llaves funcionen:
Configure SSH en serverX para impedir que el usuario root inicie sesión.
Reinicie el servicio SSH.
Confirme que root no pueda iniciar sesión con SSH, pero que se permita que studentinicie sesión.
Configure SSH en serverX para impedir la autenticación de contraseñas.
Capítulo 7. Administrar sistemas remotos
106 RH200-6-es-2-20110115
Archivadores y compresiónEl archivado y la compresión de archivos es útil cuando se realizan copias de seguridad y setransfieren datos a través de una red. Analizaremos las herramientas de la línea de comandopara archivar y comprimir archivos.
Opciones principales de tar1. = crear
2. = extraer
3. = probar
4. = detallado
5. = nombre de archivo
6. = gzip
7. = bzip2
Ejemplo de sintaxis de tarCree una copia de seguridad del archivador comprimido en gzip del directorio /etc.
tar cvzf /tmp/etc.tar.gz /etc
Obtenga una lista "larga" de archivos en un archivador comprimido en bzip2.
tar tvjf /tmp/archive.tar.bz2
Extraiga todos los archivos de un archivador comprimido en gzip en el directorio actual.
tar xvzf /tmp/etc.tgz
Además, se pueden usar gzip y bzip2 de modo independiente para comprimir archivos.gunzip y bunzip2 son los comandos para descomprimir correspondientes.
Ejemplo de sintaxis de tar
RH200-6-es-2-20110115 107
Use este espacio para sus notas.
ReferenciasPáginas del manual: tar(1), bzip2(1) y gzip(1)
Capítulo 7. Administrar sistemas remotos
108 RH200-6-es-2-20110115
Práctica Ejercicio
Archivar y comprimir archivos
Realice los siguientes pasos con cuidado. Si tiene algún problema o alguna duda, consulte con suinstructor.
1. Inicie sesión en serverX como root.
2. Cree un archivo de /etc con la compresión gzip. Guarde el archivo como /tmp/etc.tar.gz.
3. Copie el archivo /tmp/etc.tar.gz en /backups, en su máquina desktopX.
4. Extraiga el archivo comprimido en /backups, en desktopX.
Prueba de criterios
RH200-6-es-2-20110115 109
Prueba
Prueba de criterios
Ejercicio
Llaves de SSH y archivadores de archivos
Realice los siguientes pasos con cuidado. Si tiene algún problema o alguna duda, consulte con suinstructor.
1. Restablezca serverX ejecutando lab-setup-remote.
2. Instale la llave pública de SSH (generada previamente en desktopX) en la cuenta studentde serverX.
3. Archive el directorio hogar de student de desktopX en /tmp/student.tar.bz2.
4. Copie el archivo /tmp/student.tar.bz2 de desktopX en /tmp de serverX.
5. Quite el directorio hogar de student de serverX.
6. Restaure el directorio hogar de student del archivador /tmp/student.tar.bz2.
7. Instale la llave pública de SSH de la copia de seguridad en desktopX y verifique que puedautilizar las llaves de SSH para ir de serverX a desktopX sin escribir una contraseña.
8. Verifique que haya realizado correctamente las tareas ejecutando lab-grade-remote.
Capítulo 7. Administrar sistemas remotos
110 RH200-6-es-2-20110115
Notas personales
Prueba de criterios
RH200-6-es-2-20110115 111
Resumen de la unidad
Acceso a un intérprete de comandos remoto
En esta sección, aprendió a:
• Describir los pasos que sigue SSH para iniciar un enlace seguro
• Usar SSH para acceder a una señal de intérprete de comandos remoto
.Transferencias remotas de archivos
En esta sección, aprendió a:
• Copiar archivos de forma segura en un servidor remoto o de este
.Uso de llaves de SSH
En esta sección, aprendió a:
• Crear un par de llaves de SSH de usuario e implementar la llave pública en unsistema remoto
.Protección del acceso a SSH
En esta sección, aprendió a:
• Configurar SSH para prohibir inicio de sesión de usuario root
• Configurar SSH para prohibir inicio de sesión con contraseña, pero permitir el accesocon llaves de SSH
.Archivadores y compresión
En esta sección, aprendió a:
• Archivar y comprimir archivos con las herramientas de la línea de comando (tar,gzip y bzip2)
.
112
RH200-6-es-2-20110115 113
UNIDAD OCHO
IMPLEMENTAR Y PROTEGERSERVICIOS
IntroducciónTemas tratados en esta unidad:
• Administración del reloj del sistema
• Administrar inicio del servicio
• Configuración de servidor de escritorio (VNC)
• Implementación de un servidor FTP
• Configuración de un servidor FTP
• Implementación de un servidor web
• Cortafuego
Capítulo 8. Implementar y proteger servicios
114 RH200-6-es-2-20110115
Administrar el reloj del sistemaEl reloj del hardware de la PC no es lo suficientemente preciso para muchas aplicaciones, ya quetiende a desfasarse con el tiempo. Muchas aplicaciones requieren una temporización exacta ypueden reaccionar de manera deficiente si el reloj se reanuda repentinamente a una nueva hora.
El protocolo de tiempo en red (NTP) contrarresta el desfase al modificar la duración de unsegundo, de la misma manera que se reajusta el péndulo de un reloj antiguo. Si la hora delsistema está atrasada en relación con la hora de referencia combinada de los servidoresde tiempo, el segundo se acorta para que el reloj del sistema se acerque a la hora correcta.Entonces la diferencia de tiempo se reduce considerablemente sin alterar otras aplicaciones. Sinembargo, si hay una diferencia de tiempo demasiado grande, NTP deja de funcionar.
Contar con tres servidores de tiempo centrales permite a los clientes rechazar mensajes desincronización falsos si funciona mal uno de los daemons o relojes NTP de los servidores. Si fueranecesario, es posible que un cliente sincronice con menos servidores de tiempo, pero es menosseguro.
Configurar el servicio NTP1. Inicie la herramienta de administración Date & Time.
2. Haga clic en la pestaña Time Zone.
3. Ajuste la zona horaria en su configuración regional.
4. Seleccione UTC.
5. Haga clic en la pestaña Date and Time.
6. Habilite NTP para que apunte a instructor.example.com.
7. Sincronice el reloj inmediatamente.
Para probar a qué sistemas está conectado:
[root@serverX ~]# ntpq -c peers remote refid st t when poll reach delay offset jitter===================================================================*instructor.exam LOCAL(0) 11 u 24 64 377 0.198 -10.882 25.501
ReferenciasRed Hat Enterprise Linux Deployment Guide
• Capítulo 13: Configuración de fecha y hora
NTP: Protocolo de tiempo en redhttp://www.ntp.org/
RH200-6-es-2-20110115 115
Práctica Lista de verificación de rendimiento
Administrar el reloj del sistema
Configure desktopX para sincronizar con instructor.example.com mediante el uso de NTP.
Ajuste la zona horaria en la configuración regional apropiada.
Almacene en el reloj del hardware la hora UTC.
Capítulo 8. Implementar y proteger servicios
116 RH200-6-es-2-20110115
Administrar serviciosEn Unix (y Linux), los demonios son procesos "que esperan o se ejecutan en segundo plano"al ejecutar varias tareas. Generalmente, los demonios se inician automáticamente duranteel proceso de arranque y continúan ejecutándose durante el tiempo de vida útil del sistema.Tradicionalmente, los ejecutables de demonio terminan con la letra "d".
Los demonios se administran con scripts de servicio que residen en el directorio /etc/rc.d/init.d/. Los scripts de servicio se solicitan con un argumento startstop, restart, statuso reload. Los scripts de servicio deben invocarse con el comando service de front-end.
Los servicios se habilitan (configurados para iniciarse automáticamente durante el proceso dearranque) con chkconfig service on. Los servicios se deshabilitan (configurados para noiniciarse automáticamente durante el proceso de arranque) con chkconfig service off. Sibien la lista de "niveles de ejecución" puede ser intimidante, para la mayoría de los propósitos,simplemente podemos usar on y off, y no preocuparnos al respecto. Sin argumentos,chkconfig enumera la configuración actual de todos los servicios. El estado de un solo serviciose puede observar en chkconfig --list service. La ejecución del comando chkconfig noafecta de modo inmediato el estado de un demonio iniciado desde un script de servicio.
Instalación de servicios nuevos¿Qué comando se usa generalmente para realizar cada uno de estos pasos para implementar unservicio nuevo en un sistema Red Hat Enterprise Linux?
• Instalar el software:
• Iniciar el servicio:
• Habilitar el servicio durante el momento de arranque:
• Probar los servicios: Este tema se abordará en las páginas siguientes.
Use este espacio para sus notas.
Administrar servicios
RH200-6-es-2-20110115 117
ReferenciasRed Hat Enterprise Linux Deployment Guide
• Capítulo 7: Control de acceso a los servicios
Páginas del manual: service(8) y chkconfig(8)
Capítulo 8. Implementar y proteger servicios
118 RH200-6-es-2-20110115
Configuración de un servidor VNCSi bien muchos centros de datos se ajustarán a ssh para la administración remota desistemas Unix y Linux, algunos utilizarán el Servicio de computación en red virtual (VNC)para la administración remota de servidores Windows. Red Hat Enterprise Linux 6 admite laimplementación de un servidor VNC que puede permitir un escritorio gráfico remoto o más.
Demostración de configuración de un servidor VNC1. Instale el paquete del servidor VNC.
[root@demo ~]# yum install tigervnc-server
2. Edite /etc/sysconfig/vncservers:
VNCSERVERS="2:root"VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp -localhost"
La opción -localhost impedirá la conexión de clientes VNC remotos a menos que seestablezca a través de un túnel seguro, por ejemplo, cuando se usa vncviewer y su opción -via:
vncviewer -via user@remotehost localhost:2
3. Establezca una contraseña VNC.
[root@demo ~]# vncpasswdPassword: passwordVerify: password
4. Inicie y habilite el servicio:
[root@demo ~]# service vncserver start[root@demo ~]# chkconfig vncserver on
ReferenciasRed Hat Enterprise Linux Deployment Guide
• Sección 18.1.23: /etc/sysconfig/vncservers
Páginas del manual: vncviewer(1), vncpasswd(1)
Administrar servicios
RH200-6-es-2-20110115 119
Práctica Ejercicio
Habilitación de un servidor VNC
Realice los siguientes pasos con cuidado. Si tiene algún problema o alguna duda, consulte con suinstructor.
1. Instale el paquete tigervnc-server en serverX.
2. Configure la pantalla de VNC 1 para student.
3. Establezca redhat como contraseña de VNC para student.
4. Inicie y habilite el servicio VNC.
5. En la siguiente sección verificará la conexión.
Capítulo 8. Implementar y proteger servicios
120 RH200-6-es-2-20110115
Proteger acceso a un escritorio GNOME remotoEl comando vncviewer es un visor (cliente) que se utiliza para establecer una conexión a unservidor VNC que se ejecuta en un sistema remoto. VNC es un protocolo de red no encriptado;no hay seguridad contra la escucha de conversaciones, interferencias o la apropiación de lacomunicación.
Por lo tanto, para utilizar VNC con mayor seguridad se puede encapsular todo el tráfico VNCen una capa de encriptación. La forma más sencilla de hacerlo es canalizar el tráfico en untúnel SSH, si se supone que sshd se está ejecutando en el sistema remoto. Una vez que elservicio sshd remoto desencripta el tráfico VNC, se lo puede transferir sin encriptar a travésde su interfaz de bucle invertido local al servicio VNC de la máquina, sin exponer el tráfico sinencriptar en la red.
Este enfoque es tan útil que el comando vncviewer tiene una opción, -via user@host, quese conecta al servidor SSH en host como user, antes de intentar conectarse al servidor VNCdesde allí. Tenga en cuenta que el nombre de host otorgado para host se resuelve a través dela parte remota de la conexión, de modo que si especifica localhost, apuntará a host, no a lamáquina cliente local.
AdvertenciaUse la opción -via para canalizar el tráfico VNC en un túnel SSH cuando sea posible. VNCes un protocolo sin encriptación, por lo que sus contraseñas y la sesión de escritorio estaránvulnerables a escucha de conversaciones e interferencias si no las canaliza en una conexiónde túnel segura.
Demostración de conexión segura a un servidor VNC1. Conéctese a un servidor VNC con SSH:
[root@instructor ~]# vncviewer -via visitor@demo localhost:1
ReferenciasPágina del manual: vncviewer(1)
Administrar servicios
RH200-6-es-2-20110115 121
Práctica Ejercicio
Conectarse de forma segura a VNC
Realice los siguientes pasos con cuidado. Si tiene algún problema o alguna duda, consulte con suinstructor.
1. Configure el servidor VNC en serverX para permitir sólo conexiones locales (a menos que yalo haya hecho en el ejercicio anterior).
2. Conéctese al servidor VNC en serverX de forma segura de desktopX con un túnel SSH
3. Verifique que se hayan completado todos los pasos como se indica.
Capítulo 8. Implementar y proteger servicios
122 RH200-6-es-2-20110115
Implementar un servidor FTPFTP, el protocolo de transferencia de archivos, es uno de los protocolos de red más antiguosque sigue utilizándose en forma generalizada en Internet. Permite que los sistemas transfieranarchivos de manera simple desde y hasta un servidor remoto a través de la red.
El nombre del paquete de servidor FTP en Red Hat Enterprise Linux 6 es vsftpd, que en ingléscorresponde a Very Secure File Transfer Protocol Daemon (en español, demonio del protocolo detransferencia de archivos muy seguro). El nombre del servicio también es vsftpd.
El archivo de configuración predeterminado admite acceso sólo de descargas anonymousa un árbol chroot ubicado en /var/ftp/. Esto significa que un cliente FTP remoto puedeconectarse al servidor como usuario anónimo o ftp sin una contraseña y descargar archivosdel directorio /var/ftp en el servidor FTP que su usuario ftp local puede leer. Tambiénpermite que los usuarios en el sistema se conecten con su contraseña, descarguen los archivosdel sistema que puedan leer y carguen archivos en cualquier ubicación del sistema en la quepuedan escribir. Si planea usar el servidor FTP con este fin, las opciones predeterminadas deconfiguración son razonables y no es necesario modificarlas.
Use este espacio para sus notas.
Cuatro pasos para la implementación de un servicio de red1. Instalar: yum install vsftpd
2. Iniciar: service vsftpd start
3. Habilitar: chkconfig vsftpd on
4. Probar: Use un cliente FTP como lftp, Firefoxo Nautilus para determinar si el servicio estáfuncionando (¿puede descargar un archivo del servidor?).
ReferenciasRed Hat Enterprise Linux Deployment Guide
• Capítulo 7: Control de acceso a los servicios
Administrar servicios
RH200-6-es-2-20110115 123
Práctica Lista de verificación de rendimiento
Implementar un servidor FTP
Implemente un servidor FTP en serverX. Verifique que esté habilitado y en funcionamiento.
Instale el paquete vsftpd.
Inicie el servicio vsftpd.
Habilite el servicio vsftpd.
Publique una copia de /etc/hosts en la raíz del documento del FTP anónimo.
Pruebe el servidor FTP en desktopX con un cliente ftp (lftp o Nautilus) para quese conecte al servidor ftp://serverX.example.com. Descargue el archivo hosts en eldirectorio hogar de student.
Capítulo 8. Implementar y proteger servicios
124 RH200-6-es-2-20110115
Configuración de un servidor FTPOtra configuración común de un servidor FTP es un servidor FTP sólo anónimo que sólo permiteque el cliente anónimo descargue archivos y deshabilita a todos los usuarios y las cargas locales.Para configurar esto, es necesario realizar algunos cambios en la configuración de vsftpd.
Uno de los motivos por los que puede desearse deshabilitar el acceso de los usuarios locales esque FTP es un protocolo de red sin encriptación y, si los usuarios lo usan para cargar y descargararchivos del sistema, pueden exponer el nombre y la contraseña de su cuenta ante un intruso. (Silos usuarios necesitan una transferencia segura de archivos, el servicio SFTP provisto por sshdes una mejor opción). FTP anónimo tiene carácter público, por lo que se supone que los archivosproporcionados a través de este protocolo anónimo son públicos y no confidenciales, al igual quelos archivos proporcionados por un sitio web público.
El archivo de configuración vsftpd se encuentra en /etc/vsftpd/vsftpd.conf y la raíz deldocumento se encuentra en /var/ftp/. Cuando realice modificaciones al servidor FTP, no seolvide de reiniciar el servicio.
Asegúrese de comprender las siguientes opciones:
• anonymous_enable=YES: habilita el usuario FTP anónimo
• local_enable=NO: deshabilita todas las cuentas de los usuarios locales que no son anónimos
• write_enable=NO: deshabilita la carga de archivos por parte de cualquier usuario al servidorFTP
Use este espacio para sus notas.
ReferenciasPágina del manual: vsftpd.conf(5)
Administrar servicios
RH200-6-es-2-20110115 125
Práctica Lista de verificación de rendimiento
Restringir el acceso al FTP
Debido a que el FTP es un protocolo inseguro, es un riesgo de seguridad permitir que usuariosnormales se conecten y realicen la autenticación. Configure su servidor FTP para permitir sóloconexiones anónimas.
Use lftp para conectarse a serverX y realice la autenticación como student paraconfirmar que se permita el acceso de usuarios no anónimos.
¿Qué archivo es el archivo de configuración vsftpd principal?
¿Qué directiva del archivo de configuración controla el acceso de usuarios no anónimosal sistema?
Configure vsftpd para denegar el acceso de usuarios no anónimos locales.
Vuelva a probar su servidor y confirme que student ya no tenga acceso autenticado a suservidor FTP.
Capítulo 8. Implementar y proteger servicios
126 RH200-6-es-2-20110115
Implementar un servidor webComo hemos visto, la implementación de un servicio de red mantiene un patrón: instalar, iniciar,habilitar y probar.
En esta sección, la clase trabajará en grupos reducidos para repasar la implementación de unservidor web Apache con su configuración predeterminada. Lo configurará para proporcionaruna página web con un enlace al directorio /var/ftp/pub de su servidor FTP.
El nombre del paquete del servidor web Apache es httpd, que también es el del servicio luegode instalarlo.
El archivo de configuración httpd se encuentra en /etc/httpd/conf/httpd.conf, y la raízdel documento que contiene las páginas HTML que proporciona es /var/www/html/ de manerapredeterminada.
Si realiza modificaciones en el archivo de configuración del servidor web, no olvide reiniciar elservicio httpd.
El ejercicio de repaso comienza en la página siguiente.
Use este espacio para sus notas.
ReferenciasRed Hat Enterprise Linux Deployment Guide
• Capítulo 11: El servidor HTTP Apache
Documentación de la versión 2.2 del servidor HTTP Apache (si se instaló httpd-manual)http://localhost/manual/
Documentación de la versión 2.2 del servidor HTTP Apachehttp://httpd.apache.org/docs/2.2/
Administrar servicios
RH200-6-es-2-20110115 127
Práctica Lista de verificación de rendimiento
Implementar un servidor web
El instructor dividirá la clase en grupos. Una vez que se le haya asignado su grupo, haga losiguiente:
Implemente un servidor web en serverX teniendo en cuenta que el nombre del paquete deservidor web es httpd. Deberá proporcionar servicios de archivo HTTP. Debe estar activadocuando se vuelva a arrancar su servidor.
Instale el paquete httpd.
Inicie el servicio httpd.
Habilite el servicio httpd.
Cree un enlace simbólico en la raíz del documento de su servidor web al directorio /pubde su servidor FTP y llámelo pub.
Cree un archivo index.html en la raíz del documento de su servidor web con elsiguiente contenido:
<h1>Classroom Web Services</h1><p><a href="pub">Click here</a> to view public files.
Vuelva a arrancar el sistema y verifique que este contenido esté disponible a través delnavegador web antes de notificar al público para asegurarse de que sus clientes tambiénpuedan acceder a él.
Pruebe el servidor web usando el navegador Firefox.
Capítulo 8. Implementar y proteger servicios
128 RH200-6-es-2-20110115
Proteger servicios con un cortafuegoEl kernel de Linux tiene un cortafuego integrado que puede permitir o denegar paquetesespecíficos que ingresan al sistema o salen de este.
Red Hat Enterprise Linux 6 incluye una herramienta mejorada de administración gráficapara el cortafuego del sistema, system-config-firewall. Puede ejecutar este programa
para configurar el cortafuego del sistema eligiendo System → Administration → Firewall o
ejecutando system-config-firewall. El comando system-config-firewall-tui iniciauna interfaz basada en texto a la misma herramienta.
En la interfaz gráfica, en la parte superior de la ventana, hay un botón con un círculo de colorverde marcado Enable. Cuando se lo selecciona, se activa el cortafuego. De igual manera, elbotón con un círculo de color rojo marcado Disable lo desactiva y permite el paso de todo eltráfico. Para aplicar los cambios, haga clic en el botón con una marca de verificación verde quedice Apply.
Puede personalizar la política predeterminada del cortafuego para permitir el paso de serviciosconocidos de confianza o puertos específicos al sistema. El cortafuego bloquea el tráficoentrante a la máquina de manera predeterminada y también permite el tráfico saliente. Puedeagregar reglas fácilmente para permitir el tráfico entrante de servicios de red comunes en lainterfaz. Asegúrese de leer detenidamente las instrucciones en la ventana para entender cuál esel efecto de la selección de un elemento en la interfaz.
ImportanteSi va a modificar las reglas del cortafuego en un sistema remoto, tenga cuidado de nobloquear el tráfico de red que utiliza para comunicarse con el sistema de manera remota.
Use este espacio para sus notas.
ReferenciasRed Hat Enterprise Linux Security Guide
• Sección 2.5.2: Configuración básica del cortafuego
Administrar servicios
RH200-6-es-2-20110115 129
Práctica Lista de verificación de rendimiento
Permitir HTTP y FTP a través del cortafuego
Para esta actividad, el instructor los dividirá en grupos reducidos. Un estudiante en cada grupodeterminará los pasos necesarios para realizar la actividad, mientras que los demás miran, hacensugerencias y toman notas. Una vez que el grupo haya realizado correctamente la actividad, losestudiantes que tomaron notas deben regresar a sus propias computadoras y repetir la actividadallí.
Estudiantes de capacitación virtual: Completen la actividad por su cuenta y consulten alinstructor si tienen alguna pregunta.
Si no se realizó aún, implemente un servidor FTP de configuración predeterminada enserverX.
Si no se realizó aún, implemente un servidor HTTP de configuración predeterminada enserverX.
Habilite el cortafuego en serverX.
Permita las conexiones al servicio FTP a través del cortafuego en serverX
Permita las conexiones al servicio HTTP a través del cortafuego en serverX
Permita las conexiones al servicio SSH a través del cortafuego en serverX
Compruebe que se pueda acceder a cada servicio desde desktopX
Capítulo 8. Implementar y proteger servicios
130 RH200-6-es-2-20110115
Prueba
Prueba de criterios
Lista de verificación de rendimiento
Implementar servicios para intercambio de archivosAntes de comenzar...Restablezca su sistema de ejercicios de laboratorio de serverX con el comando lab-setup-server.
Nickel y Copper Cutlery desean publicar un catálogo en línea para sus clientes. Implementelos servicios FTP y HTTP, y confirme que funcionen y estén habilitados durante el proceso dearranque.
Cree un archivo con el nombre index.html, con exactamente dos líneas que tengan elsiguiente contenido:
NICKEL AND COPPER CUTLERYOn-line catalog coming soon!
Configure serverX para que proporcione servicios FTP y web. Deshabilite el acceso al FTPde usuarios no anónimos.
Configure su máquina serverX para proporcionar el contenido del archivo idéntico a losusuarios de HTTP y FTP anónimos. Las siguientes dos URL deben mostrar el archivo quecreó anteriormente:
• ftp://serverX/pub/index.html
• http://serverX/index.html
Evaluación: Vuelva a arrancar su máquina serverX. Use un navegador web para confirmarque sus servicios estén funcionando correctamente.
Administrar servicios
RH200-6-es-2-20110115 131
Notas personales
Capítulo 8. Implementar y proteger servicios
132 RH200-6-es-2-20110115
Resumen de la unidad
Administrar el reloj del sistema
En esta sección, aprendió a:
• Configurar la hora y zona horaria del sistema con una herramienta gráfica
• Configurar el sistema para usar NTP para sincronizar el reloj
.Administrar servicios
En esta sección, aprendió a:
• Iniciar y suspender servicios
• Habilitar y deshabilitar el inicio automático de servicios
• Enumerar los servicios que se inician automáticamente durante el proceso dearranque
.Configuración de un servidor VNC
En esta sección, aprendió a:
• Configurar un servidor VNC
.Proteger acceso a un escritorio GNOME remoto
En esta sección, aprendió a:
• Establecer una conexión segura a un servidor VNC
.Implementar un servidor FTP
En esta sección, aprendió a:
• Instalar y activar un servidor FTP
.Configuración de un servidor FTP
En esta sección, aprendió a:
• Configurar el servidor FTP para proporcionar sólo servicio de descargas anónimas
.Implementar un servidor web
En esta sección, aprendió a:
• Instalar y activar un servidor HTTP
.Proteger servicios con un cortafuego
En esta sección, aprendió a:
• Activar y desactivar el cortafuego del sistema con herramientas de
Administrar servicios
RH200-6-es-2-20110115 133
• Usar una herramienta de para modificar las reglas de cortafuego para permitir odenegar el acceso a servicios predefinidos específicos
.
134
RH200-6-es-2-20110115 135
UNIDAD NUEVE
ADMINISTRACIÓN DE SELINUX
IntroducciónTemas tratados en esta unidad:
• Revisión de conceptos básicos de SELinux
• Visualización y configuración de modos de SELinux
• Visualización y configuración de contextos de archivo de SELinux
• Ajuste del comportamiento de la política con booleanos de SELinux
• Control de violaciones de la política de SELinux
Capítulo 9. Administración de SELinux
136 RH200-6-es-2-20110115
Conceptos básicos de seguridad de SELinuxSELinux, la seguridad mejorada de Linux, es un método adicional para proteger su sistema.
Si suponemos que deseamos permitir el acceso anónimo remoto a un servidor web, debemosabrir los puertos a través del cortafuego. Sin embargo, eso significa que gente malintencionadapuede intentar entrar al sistema a través de una vulnerabilidad de seguridad y, si ponen enriesgo el proceso del servidor web, obtienen sus permisos: los permisos del usuario apache y elgrupo apache. Ese usuario o grupo tiene acceso de lectura a cosas como la raíz del documento(/var/www/html), así como acceso de escritura a /tmp, /var/tmp y cualquier otro archivo odirectorio que sea modificable por todos los usuarios.
SELinux es un conjunto de reglas de seguridad que determina qué proceso puede acceder a quéarchivos, directorios, puertos, etc. Los archivos, procesos, directorios y puertos tienen etiquetasde seguridad especiales denominadas contextos de SELinux. Un contexto es simplementeun nombre que usa la política de SELinux para determinar si un proceso puede o no accedera un archivo, directorio o puerto. De forma predeterminada, la política no permite ningunainteracción, de modo que reglas explícitas otorgan el acceso. Si no hay ninguna regla de permiso,no se permite ningún tipo de acceso.
Las etiquetas de SELinux tienen varios contextos, pero nosotros estamos más interesados en eltercer contexto: el contexto de tipo. Los nombres de contexto de tipo usualmente terminan en_t. El contexto de tipo para el servidor web es httpd_t. El contexto de tipo para los archivos ydirectorios que normalmente se encuentran en /var/www/html es httpd_sys_content_t.El contexto de tipo para los archivos y directorios que normalmente se encuentran en /tmp y /var/tmp es tmp_t. El contexto de tipo para los puertos de servidor web es http_port_t.
Hay una regla en la política que permite a Apache (el proceso de servidor web que se ejecutacomo httpd_t) acceder a archivos y directorios con un contexto que normalmente seencuentran en /var/www/html y otros directorios de servidor web (httpd_sys_content_t).No hay una regla en la política para los archivos que normalmente se encuentran en /tmp y /var/tmp, de modo que no se permite el acceso. Con SELinux, un usuario malintencionado nopodría acceder al directorio /tmp, y mucho menos escribir archivos en él. SELinux incluso tienereglas para los sistemas de archivos remotos como NFS y CIFS, aunque todos los archivos enesos sistemas de archivos se etiquetan con el mismo contexto.
Uno de los objetivos de SELinux es proteger los datos del usuario de servicios del sistema que secomprometan.
ReferenciasRed Hat Enterprise Linux SELinux Guide
• Capítulo 2: Introducción
RH200-6-es-2-20110115 137
Práctica Cuestionario
Conceptos básicos de SELinux1. ¿A cuáles de las siguientes opciones SELinux aplica el contexto de seguridad? (Marque
todas las opciones que correspondan).
(seleccione uno o más de los siguientes…)a. Puertosb. Procesosc. Archivosd. Directoriose. Sistemas de archivos remotos
2. SELinux puede usarse para:
(seleccione uno o más de los siguientes…)a. Impedir que un servicio se ejecute en otros puertos.b. Proteger los datos de usuario de aplicaciones como el servidor web.c. Impedir que sistemas remotos accedan a puertos locales.d. Mantener el sistema actualizado.e. Acceder a un servidor web.
3. ¿Cuáles de las siguientes opciones corresponden a tipos estándar de contexto deSELinux?
(seleccione uno o más de los siguientes…)a. selinux_typeb. object_rc. httpd_sys_content_td. tmp_te. user_u
Capítulo 9. Administración de SELinux
138 RH200-6-es-2-20110115
Modos de SELinuxPara los fines de la solución de problemas, podemos deshabilitar temporalmente la protección deSELinux, con los modos de SELinux.
En modo obligatorio, SELinux deniega de forma activa el acceso al servidor web que intente leerarchivos con el contexto de tipo tmp_t. En el modo obligatorio, SELinux registra y protege.
El modo permisivo se usa generalmente para las cuestiones de solución de problemas. Enel modo permisivo, SELinux permite todas las interacciones, incluso si no hay ninguna reglaexplícita, y registra todas las interacciones denegadas. Este modo se puede usar para determinarsi usted tiene un problema de SELinux. No se requiere volver a arrancar el sistema para pasar delmodo obligatorio al modo permisivo, o viceversa.
Un tercer modo, deshabilitado, deshabilita SELinux por completo. Deberá volver a arrancar elsistema para deshabilitar SELinux por completo, o bien para pasar del modo deshabilitado almodo obligatorio o permisivo.
ImportanteSi planea volver a habilitar las restricciones de SELinux, lo ideal es usar el modo permisivoen lugar de desactivar SELinux por completo. Esto se debe a que, incluso en el modopermisivo, el kernel mantendrá automáticamente las etiquetas del sistema de archivos deSELinux según sea necesario, con lo que se evitará la necesidad de volver a etiquetar elsistema de archivos cuando reinicie el sistema con SELinux habilitado nuevamente.
ReferenciasRed Hat Enterprise Linux SELinux Guide
• Sección 5.5: Modos de SELinux
RH200-6-es-2-20110115 139
Práctica Cuestionario
Modos de SELinux1. El modo de SELinux permite el
registro, pero no la protección.
2. El modo de SELinux protegeel sistema.
3. ¿Cuáles de los siguientes son modos de SELinux válidos?
(seleccione uno o más de los siguientes…)a. Obligatoriob. Pruebac. Permisivod. Deshabilitadoe. Registro
Capítulo 9. Administración de SELinux
140 RH200-6-es-2-20110115
Visualizar y modificar los modos de SELinuxObserve que /etc/sysconfig/selinux contiene algunos comentarios útiles:
# This file controls the state of SELinux on the system.# SELINUX= can take one of these three values:# enforcing - SELinux security policy is enforced.# permissive - SELinux prints warnings instead of enforcing.# disabled - No SELinux policy is loaded.SELINUX=enforcing# SELINUXTYPE= can take one of these two values:# targeted - Targeted processes are protected,# mls - Multi Level Security protection.SELINUXTYPE=targeted
Use /etc/sysconfig/selinux para modificar el modo predeterminado de SELinux durante elproceso de arranque. En el ejemplo de arriba, está configurado en el modo obligatorio.
Para mostrar el modo actual de SELinux, use getenforce. Para modificar el modo actual deSELinux, use setenforce:
[root@serverX ~]# getenforceEnforcing[root@serverX ~]# setenforceusage: setenforce [ Enforcing | Permissive | 1 | 0 ][root@serverX ~]# setenforce 0[root@serverX ~]# getenforcePermissive[root@serverX ~]# setenforce Enforcing[root@serverX ~]# getenforceEnforcing
ReferenciasRed Hat Enterprise Linux SELinux Guide
• Sección 5.5: Modos de SELinux
Páginas del manual: selinux(8), getenforce(1), setenforce(1)
RH200-6-es-2-20110115 141
Práctica Ejercicio
Cambio de los modos permisivo y obligatorio
Realice los siguientes pasos con cuidado. Si tiene algún problema o alguna duda, consulte con suinstructor.
1. En serverX, modifique el modo predeterminado de SELinux a permisivo y vuelva a arrancarel sistema.
2. Luego del reinicio, verifique que el sistema esté en modo permisivo.
3. Modifique el modo predeterminado de SELinux a obligatorio.
4. Modifique el modo actual de SELinux a obligatorio.
Capítulo 9. Administración de SELinux
142 RH200-6-es-2-20110115
Mostrar y modificar contextos de archivo deSELinux
Muchos comandos que tienen que ver con archivos tienen una opción (generalmente -Z) paramostrar o configurar contextos de SELinux. Por ejemplo, ps, ls, cp y mkdir usan la opción -Zpara mostrar o configurar contextos de SELinux.
[root@serverX ~]# ps axZLABEL PID TTY STAT TIME COMMANDsystem_u:system_r:init_t:s0 1 ? Ss 0:00 /sbin/initsystem_u:system_r:kernel_t:s0 2 ? S 0:00 [kthreadd]system_u:system_r:kernel_t:s0 3 ? S 0:00 [migration/0]...[root@serverX ~]# service httpd start[root@serverX ~]# ps -ZC httpdLABEL PID TTY TIME CMDunconfined_u:system_r:httpd_t:s0 27672 ? 00:00:00 httpdunconfined_u:system_r:httpd_t:s0 27675 ? 00:00:00 httpd...[root@serverX ~]# ls -Z /homedrwx------. root root system_u:object_r:lost_found_t:s0 lost+founddrwx------. student student unconfined_u:object_r:user_home_dir_t:s0 studentdrwx------. visitor visitor unconfined_u:object_r:user_home_dir_t:s0 visitor[root@serverX ~]# ls -Z /var/wwwdrwxr-xr-x. root root system_u:object_r:httpd_sys_script_exec_t:s0 cgi-bindrwxr-xr-x. root root system_u:object_r:httpd_sys_content_t:s0 errordrwxr-xr-x. root root system_u:object_r:httpd_sys_content_t:s0 htmldrwxr-xr-x. root root system_u:object_r:httpd_sys_content_t:s0 icons
¿Qué determina el contexto de SELinux inicial de un archivo? Normalmente, es el directorioprincipal. El contexto de un directorio principal se asigna al archivo recientemente creado. Estofunciona para comandos como vim, cp y touch. Sin embargo, si se crea un archivo en otrolugar y se mantienen los permisos (como con mv o cp -a), también se mantendrá el contexto deSELinux. Hay algunas reglas especiales en la política, llamadas reglas de transición de tipo, quepueden cambiar el valor predeterminado del contexto de tipo. Estas reglas no están incluidas enel alcance de este curso.
[root@serverX ~]# ls -Zd /var/www/html/drwxr-xr-x. root root system_u:object_r:httpd_sys_content_t:s0 /var/www/html/[root@serverX ~]# touch /var/www/html/index.html[root@serverX ~]# ls -Z /var/www/html/index.html-rw-r--r--. root root unconfined_u:object_r:httpd_sys_content_t:s0 /var/www/html/index.html
Se puede usar semanage fcontext para mostrar o modificar las reglas que usa restoreconpara configurar contextos predeterminados de archivos. Utiliza expresiones regulares extendidaspara especificar los nombres de archivo y las rutas de acceso. La expresión regular extendidamás común utilizada en las reglas fcontext es (/.*)?, que significa como opción, coincidircon un / seguido por una serie de caracteres. Básicamente, buscará coincidencia con el directoriodetallado antes de la expresión y todo lo que contiene ese directorio en forma repetitiva.
restorecon es parte del paquete policycoreutil, y semanage es parte del paquetepolicycoreutil-python.
Mostrar y modificar contextos de archivo de SELinux
RH200-6-es-2-20110115 143
[root@serverX ~]# touch /tmp/file1 /tmp/file2[root@serverX ~]# ls -Z /tmp/file*-rw-r--r--. root root unconfined_u:object_r:user_tmp_t:s0 /tmp/file1-rw-r--r--. root root unconfined_u:object_r:user_tmp_t:s0 /tmp/file2[root@serverX ~]# mv /tmp/file1 /var/www/html/[root@serverX ~]# cp /tmp/file2 /var/www/html/[root@serverX ~]# ls -Z /var/www/html/file*-rw-r--r--. root root unconfined_u:object_r:user_tmp_t:s0 /var/www/html/file1-rw-r--r--. root root unconfined_u:object_r:httpd_sys_content_t:s0 /var/www/html/file2[root@serverX ~]# semanage fcontext -l.../var/www(/.*)? all files system_u:object_r:httpd_sys_content_t:s0...[root@serverX ~]# restorecon -Rv /var/www/restorecon reset /var/www/html/file1 context unconfined_u:object_r:user_tmp_t:s0->system_u:object_r:httpd_sys_content_t:s0[root@serverX ~]# ls -Z /var/www/html/file*-rw-r--r--. root root system_u:object_r:httpd_sys_content_t:s0 /var/www/html/file1-rw-r--r--. root root unconfined_u:object_r:httpd_sys_content_t:s0 /var/www/html/file2
El siguiente ejemplo muestra cómo usar semanage para agregar un contexto para un nuevodirectorio.
[root@serverX ~]# mkdir /virtual[root@serverX ~]# touch /virtual/index.html[root@serverX ~]# ls -Zd /virtual/drwxr-xr-x. root root unconfined_u:object_r:default_t:s0 /virtual/[root@serverX ~]# ls -Z /virtual/-rw-r--r--. root root unconfined_u:object_r:default_t:s0 index.html[root@serverX ~]# semanage fcontext -a -f "" -t httpd_sys_content_t '/virtual(/.*)?'[root@serverX ~]# restorecon -RFvv /virtual[root@serverX ~]# ls -Zd /virtual/drwxr-xr-x. root root system_u:object_r:httpd_sys_content_t:s0 /virtual/[root@serverX ~]# ls -Z /virtual/-rw-r--r--. root root system_u:object_r:httpd_sys_content_t:s0 index.html
ReferenciasRed Hat Enterprise Linux SELinux Guide
• Sección 5.7: Contextos de SELinux: etiquetado de archivos
Páginas del manual: restorecon(8) y semanage(8)
Capítulo 9. Administración de SELinux
144 RH200-6-es-2-20110115
Práctica Ejercicio
Corrección de contextos de archivos de SELinux
Realice los siguientes pasos con cuidado. Si tiene algún problema o alguna duda, consulte con suinstructor.
Se le ha solicitado que ajuste la configuración DNS de su máquina remota para que coincidaexactamente con la configuración de su máquina de escritorio. Usted decide que la forma másfácil es copiar el archivo /etc/resolv.conf de la máquina local en la máquina remota.
1. Transfiera el archivo /etc/resolv.conf de su máquina de escritorio al directorio hogarroot en serverX.
2. Use el intérprete de comandos para conectarse a serverX como root. Todos los pasossiguientes deben ejecutarse en su servidor.
3. Observe el contexto de SELinux de /etc/resolv.conf inicial.
Contexto /etc/resolv.conf original:
4. Mueva resolv.conf del directorio hogar de root a /etc/resolv.conf.
5. Observe el contexto de SELinux de /etc/resolv.conf recientemente copiado.
Contexto /etc/resolv.conf nuevo:
6. Restaure el contexto de SELinux de /etc/resolv.conf recientemente posicionado.
7. Observe el contexto de SELinux de /etc/resolv.conf restaurado.
Contexto /etc/resolv.conf restaurado:
Administración de booleanos de SELinux
RH200-6-es-2-20110115 145
Administración de booleanos de SELinuxLos booleanos de SELinux son opciones que modifican el comportamiento de la política deSELinux. Los booleanos de SELinux son reglas que pueden habilitarse o deshabilitarse. Losadministradores de seguridad pueden utilizarlos para realizar ajustes selectivos en la política.Muchos paquetes tienen páginas de manual *_selinux(8) que pueden detallar algunos delos booleanos que utilizan; man -k '_selinux' puede encontrar estas páginas de manualfácilmente.
getsebool se utiliza para mostrar los booleanos, y setsebool se utiliza para modificarlos.setsebool -P modifica la política de SELinux en forma persistente. semanage boolean -lmostrará si un booleano es persistente o no.
[root@serverX ~]# getsebool -aabrt_anon_write --> offallow_console_login --> onallow_corosync_rw_tmpfs --> off...[root@serverX ~]# getsebool httpd_enable_homedirshttpd_enable_homedirs --> off[root@serverX ~]# setsebool httpd_enable_homedirs on[root@serverX ~]# semanage boolean -l | grep httpd_enable_homedirshttpd_enable_homedirs -> off Allow httpd to read home directories[root@serverX ~]# getsebool httpd_enable_homedirshttpd_enable_homedirs --> on[root@serverX ~]# setsebool -P httpd_enable_homedirs on[root@serverX ~]# semanage boolean -l | grep httpd_enable_homedirshttpd_enable_homedirs -> on Allow httpd to read home directories
ReferenciasRed Hat Enterprise Linux SELinux Guide
• Sección 5.6: Booleanos
Páginas del manual: booleans(8), getsebool(8), setsebool(8), semanage(8)
Capítulo 9. Administración de SELinux
146 RH200-6-es-2-20110115
Control de violaciones de SELinuxEl paquete setroubleshoot-server debe estar instalado para enviar mensajes de SELinuxa /var/log/messages. setroubleshoot-server escucha mensajes de auditoría en /var/log/audit/audit.log y envía un breve resumen a /var/log/messages. Este resumenincluye identificadores únicos (UUIDs) para violaciones de SELinux que se pueden usar parareunir más información. sealert -l UUID se usa para generar un informe para un incidenteespecífico. sealert -a /var/log/audit/audit.log se usa para generar informes paratodos los incidentes en ese archivo.
[root@serverX ~]# touch /root/file3[root@serverX ~]# mv /root/file3 /var/www/html[root@serverX ~]# service httpd start[root@serverX ~]# elinks -dump http://serverX/file3 Forbidden You don't have permission to access /file3 on this server.[root@serverX ~]# tail /var/log/audit/audit.log...type=AVC msg=audit(1292526292.144:952): avc: denied { getattr } for pid=27675 comm="httpd" path="/var/www/html/file3" dev=dm-1 ino=54545 scontext=unconfined_u:system_r:httpd_t:s0 tcontext=unconfined_u:object_r:admin_home_t:s0 tclass=file...[root@serverX ~]# tail /var/log/messages...Dec 16 14:04:59 serverX setroubleshoot: SELinux is preventing /usr/sbin/httpd "getattr" access to /var/www/html/file3. For complete SELinux messages. run sealert -l e6e1d1d6-d716-4e2e-863c-bba4d2b2407a[root@serverX ~]# sealert -l e6e1d1d6-d716-4e2e-863c-bba4d2b2407aSummary:
SELinux is preventing /usr/sbin/httpd "getattr" access to /var/www/html/file3.
Detailed Description:
SELinux denied access requested by httpd. /var/www/html/file3 may be amislabeled. /var/www/html/file3 default SELinux type is httpd_sys_content_t, butits current type is admin_home_t. Changing this file back to the default type,may fix your problem....Allowing Access:
You can restore the default system context to this file by executing therestorecon command. restorecon '/var/www/html/file3', if this file is adirectory, you can recursively restore using restorecon -R'/var/www/html/file3'.
Fix Command:
/sbin/restorecon '/var/www/html/file3'...
Control de violaciones de SELinux
RH200-6-es-2-20110115 147
notaLa sección "Allowing Access" sugiere restorecon /var/www/html/file3. Si hayotros archivos que deben ajustarse, restorecon puede restablecer en forma repetitiva elcontexto: restorecon -R /var/www/.
ReferenciasRed Hat Enterprise Linux SELinux Guide
• Capítulo 8: Solución de problemas
Página del manual: sealert(8)
Capítulo 9. Administración de SELinux
148 RH200-6-es-2-20110115
Práctica Cuestionario
Control de violaciones de SELinux1. ¿Qué archivo contiene entradas de registro que
proporcionan identificadores únicos para las violaciones deSELinux?
2. Dado el UUID de una violación de SELinux, ¿quécomando genera un informe de texto del problema?
Prueba de criterios
RH200-6-es-2-20110115 149
Prueba
Prueba de criterios
Ejercicio
Administración de SELinuxAntes de comenzar...Antes de comenzar, ejecute el comando lab-setup-selinux en desktopX.
Realice los siguientes pasos con cuidado. Si tiene algún problema o alguna duda, consulte con suinstructor.
1. Inicie sesión en serverX como student. Abra un terminal y cambie al usuario root.
2. Copie el archivo web_content.tgz de instructor:/var/ftp/pub/materials en /tmp.
3. Extraiga el archivo en /tmp.
4. Mueva el directorio extraído a /var/www/html.
5. Inicie el servicio web.
6. Intente observar el nuevo directorio con el navegador web al visitar la URL http://serverX/web_content.
7. Busque en el sistema los UUID de cualquier violación de SELinux que pueda haber generadosu intento de navegar el contenido recientemente instalado.
8. Genere informes de texto sobre las violaciones.
9. Siga las instrucciones del informe para restaurar los contextos de SELinux del contenidorecientemente instalado.
10. Confirme que pueda ver el material desde el navegador web al visitar la URL http://serverX/web_content.
Capítulo 9. Administración de SELinux
150 RH200-6-es-2-20110115
Notas personales
Prueba de criterios
RH200-6-es-2-20110115 151
Resumen de la unidad
Conceptos básicos de seguridad de SELinux
En esta sección, aprendió a:
• Identificar los conceptos básicos de seguridad de SELinux como contexto, usuario/función/tipo y política
.Modos de SELinux
En esta sección, aprendió a:
• Describir las diferencias funcionales entre los modos permisivo y obligatorio deSELinux cuando está habilitada la seguridad de SELinux
.Visualizar y modificar los modos de SELinux
En esta sección, aprendió a:
• Visualizar y modificar el modo actual de SELinux de un sistema
• Configurar el modo predeterminado de SELinux de un sistema
.Mostrar y modificar contextos de archivo de SELinux
En esta sección, aprendió a:
• Ver el contexto de seguridad de SELinux de los procesos y archivos
• Configurar el contexto de seguridad de SELinux de los archivos en la política
• Restaurar el contexto de seguridad de SELinux de los archivos
.Administración de booleanos de SELinux
En esta sección, aprendió a:
• Usar booleanos de SELinux para realizar ajustes en el comportamiento de la política
.Control de violaciones de SELinux
En esta sección, aprendió a:
• Implementar las herramientas de análisis de registros de SELinux
.
152
RH200-6-es-2-20110115 153
UNIDAD DIEZ
ADMINISTRACIÓN DEPARTICIONES SIMPLES YSISTEMAS DE ARCHIVOS
IntroducciónTemas tratados en esta unidad:
• Adición de espacio para el sistema de archivos
• Encriptación de particiones
• Adición de espacio de intercambio
Capítulo 10. Administración de particiones simples y sistemas de archivos
154 RH200-6-es-2-20110115
Particiones simples y sistemas de archivosEl almacenamiento es una necesidad básica de todo sistema informático. Red Hat EnterpriseLinux incluye herramientas eficaces para administrar diversos tipos de dispositivos dealmacenamiento en una amplia variedad de situaciones.
fdisk es una utilidad para administrar particiones de disco. Puede ver los discos y susparticiones si ejecuta la utilidad con la opción -l y el nombre del disco (fdisk -cul /dev/vda). Puede realizar cambios si ejecuta la utilidad interactivamente y selecciona lasopciones de menú correspondientes (fdisk -cu /dev/vda). -c deshabilita el modo heredadode compatibilidad con DOS y -u muestra los resultados en sectores (no cilindros, que sonobsoletos).
ImportanteRed Hat Enterprise Linux 6 alinea automáticamente la primera partición para que se inicieen el sector 2048 en vez del sector 63 (el inicio "tradicional" del cilindro 1). Esto es paragarantizar el máximo rendimiento en unidades de disco duro nuevas con sectores de 4KiB, así como unidades de disco duro heredadas con sectores de 512 bytes. Además, escompatible con el comportamiento de otros sistemas operativos recientes que usan elesquema de partición MBR. La alineación incorrecta de las particiones puede generaruna pérdida significativa de rendimiento, por lo que se debe tener cuidado al ajustar estaconfiguración.
Para el servidor virtual, serverX, verifique la configuración actual del almacenamiento. Busqueinformación en los resultados del siguiente comando: fdisk -cul /dev/vda.
Disco principal:
1. Nombre: /dev/vda
2. Tamaño: 6442 MB
3. Total de sectores: 12582912
4. Último sector usado: 9914367
[root@serverX ~]# fdisk -cul
Disk /dev/vda : 6442 MB , 6442450944 bytes
16 heads, 63 sectors/track, 12483 cylinders, total 12582912 sectorsUnits = sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisk identifier: 0x000a9b12
Device Boot Start End Blocks Id System/dev/vda1 * 2048 526335 262144 83 Linux
/dev/vda2 526336 9914367 4694016 8e Linux LVM
Crear una nueva partición
RH200-6-es-2-20110115 155
Nombre del disco
Tamaño total del disco
Total de sectores
Último sector usado
Crear una nueva partición
[root@serverX ~]# fdisk -cu /dev/vdaCommand (m for help): nCommand action e extended p primary partition (1-4)pPartition number (1-4): 3First sector (9914368-12582911, default 9914368): Enter Using default value 9914368Last sector, +sectors or +size{K,M,G} (9914368-12582911, default 12582911): +1G
Command (m for help): wThe partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: Device or resource busy.The kernel still uses the old table. The new table will be used atthe next reboot or after you run partprobe(8) or kpartx(8)Syncing disks.[root@serverX ~]# reboot
Comparación de sistemas de archivos• ext4 es el sistema de archivos estándar para &RHEL 6. Es muy sólido y confiable, y presenta
características para mejorar el funcionamiento en relación con las cargas de trabajo modernas.
• ext2 es un sistema de archivos anterior, comúnmente usado en Linux; es simple y confiable,y funciona adecuadamente para dispositivos de almacenamiento pequeños, pero no es taneficaz como ext4.
• El soporte de vfat comprende una familia de sistemas de archivos relacionados (VFAT/FAT16,FAT32) desarrollados para versiones anteriores de Microsoft Windows y compatibles con unaamplia variedad de sistemas y dispositivos.
Creación y uso de un nuevo sistema de archivos1. mkfs -t filesystem /dev/partition crea el tipo de sistema de archivos solicitado.
2. blkid muestra información sobre el contenido de los dispositivos de bloques (particiones yvolúmenes lógicos), incluso el UUID del sistema de archivos.
3. mkdir /mountpoint crea un directorio al que enlazará el nuevo sistema de archivos.
4. Agregue una entrada a /etc/fstab mediante el uso del UUID obtenido del comandoblkid:
Capítulo 10. Administración de particiones simples y sistemas de archivos
156 RH200-6-es-2-20110115
UUID=uuid /mountpoint ext4 defaults 1 2
5. Monte el nuevo sistema de archivos con mount /mountpoint.
AdvertenciaAl agregar nuevos sistemas de archivos a /etc/fstab, debe usar blkid para determinarsu UUID y montarlo por UUID. No debe montar sistemas de archivos en particiones simplespor nombre de dispositivo estándar (como /dev/sda3). Los nombres de dispositivo de discopueden cambiar según los dispositivos visibles durante el proceso de arranque, lo que puedecausar que el sistema intente montar el sistema de archivos incorrecto con el fin incorrecto,que a su vez, en el peor de los casos, podría provocar la pérdida de datos. Esto tiene especialimportancia cuando hay dispositivos SAN (iSCSI, canal de fibra) involucrados que el sistemapuede detectar en un orden diferente de un arranque a otro según el tráfico de la SAN, perotambién puede ser importante cuando haya medios extraíbles en uso, como dispositivosUSB.
Tenga en cuenta que Red Hat Enterprise Linux 6 utiliza UUID en lugar de LABEL en /etc/fstab para reducir la probabilidad de conflictos de asignación de nombres. El instalador yano usa e2label para establecer etiquetas en los sistemas de archivos de Red Hat EnterpriseLinux 6 de manera predeterminada.
Ejemplo de creación de un sistema de archivos
[root@serverX ~]# mkfs -t ext4 /dev/vda3[root@serverX ~]# blkid /dev/vda3/dev/vda3: UUID="a11fadb0-2f5b-49e8-ba43-13de7990d3b9" TYPE="ext4" [root@serverX ~]# mkdir /test
Agregue una entrada a /etc/fstab:
UUID="a11fadb0-2f5b-49e8-ba43-13de7990d3b9" /test ext4 defaults 1 2
Pruebe el montaje:
[root@serverX ~]# mount /test
Quitar un sistema de archivos existente1. Desmonte el sistema de archivos mediante umount /mountpoint.
2. Quite la entrada correspondiente en /etc/fstab.
3. Quite el directorio de punto de montaje: rmdir /mountpoint.
Ejemplo de creación de un sistema de archivos
RH200-6-es-2-20110115 157
ReferenciasPáginas del manual: fdisk(8), fstab(5), mkfs(8), blkid(8), mount(8)
Base de conocimiento: "¿Cómo creo una partición en un disco con un tamaño mayor de 2TB?"https://access.redhat.com/kb/docs/DOC-4282
Capítulo 10. Administración de particiones simples y sistemas de archivos
158 RH200-6-es-2-20110115
Práctica Cuestionario
Agregar un nuevo sistema de archivos1. Identificar un disco que tenga espacio libre
2. Crear una nueva partición en ese disco
3. Actualizar la tabla de particiones del kernel
4. Crear un sistema de archivos en la partición
5. Determinar el UUID del sistema de archivos
6. Crear un punto de montaje
7. Agregar una entrada al archivo dela tabla del sistema de archivos
8. Montar el sistema de archivos
Habilitación de la privacidad de datos con encriptación de partición
RH200-6-es-2-20110115 159
Habilitación de la privacidad de datos conencriptación de partición
LUKS ("Linux Unified Key Setup") es un formato estándar para la encriptación de dispositivos.LUKS encripta la partición o el volumen. El volumen debe desencriptarse para que el sistema dearchivos en él pueda montarse.
Crear un nuevo volumen encriptado1. Cree una nueva partición con fdisk.
2. cryptsetup luksFormat /dev/vdaN encripta la nueva partición y establece lacontraseña de desencriptación.
3. cryptsetup luksOpen /dev/vdaN name desbloquea el volumen encriptado /dev/vdaNcomo /dev/mapper/name después de que usted ingresa la contraseña de desencriptacióncorrecta
4. Cree un sistema de archivos ext4 en el volumen desencriptado: mkfs -t ext4 /dev/mapper/name.
5. Cree el punto de montaje del directorio y monte el sistema de archivos: mkdir /secret ;mount /dev/mapper/name /secret.
6. Una vez que finalice, umount /dev/mapper/name y ejecute cryptsetup luksClosename para bloquear el volumen encriptado.
notaAl crear una partición encriptada, lo ideal es escribir datos aleatorios en el dispositivo sinformato antes de usar LUKS para inicializar el volumen. Esto puede ayudar a que los ataquesen la encriptación del disco sean más difíciles. Para esto, se deben copiar los datos de /dev/urandom en el archivo del dispositivo para la partición, pero puede tardar mucho tiempo.
Montar particiones encriptadas de forma persistente1. /etc/crypttab contiene una lista de dispositivos que se desbloquearán durante el inicio
del sistema.
name /dev/vdaN /path/to/password/file
/etc/crypttab indica un dispositivo por línea, con los siguientes campos separados porespacios:
Nombre que el asignador de dispositivos utilizará para el dispositivo
El dispositivo "bloqueado" subyacente
Capítulo 10. Administración de particiones simples y sistemas de archivos
160 RH200-6-es-2-20110115
Archivo de contraseña que se utilizará para desbloquear el dispositivo. Si este campose deja en blanco (o se configura en none), se le solicitará al usuario la contraseña dedesencriptación durante el inicio.
2. Cree una entrada como la siguiente en /etc/fstab:
/dev/mapper/name /secret ext4 defaults 1 2
AdvertenciaEl dispositivo indicado en el primer campo de /etc/fstab debe coincidir con el nombreelegido para el nombre local para la asignación en /etc/crypttab. Este es un error deconfiguración común.
3. Cree el archivo de llave que incluye la contraseña. Asegúrese de que pertenezca al usuarioroot y que el modo sea 600. Agregue la llave para LUKS a través del siguiente comando:
[root@serverX ~]# cryptsetup luksAddKey /dev/vdaN /path/to/password/file
Ejemplo de creación de un sistema de archivosencriptadoCree una nueva partición como lo hizo anteriormente. Supondremos que el dispositivo es /dev/vda5.
[root@serverX ~]# cryptsetup luksFormat /dev/vda5WARNING!========This will overwrite data on /dev/vda5 irrevocably.
Are you sure? (Type uppercase yes): YESEnter LUKS passphrase: testing123Verify passphrase: testing123[root@serverX ~]# cryptsetup luksOpen /dev/vda5 encdiskEnter passphrase for /dev/vda5: testing123[root@serverX ~]# mkfs -t ext4 /dev/mapper/encdisk[root@serverX ~]# mkdir /encdisk[root@serverX ~]# mount /dev/mapper/encdisk /encdisk
Para que el disco sea persistente, en primer lugar, agregue lo siguiente a /etc/fstab:
/dev/mapper/encdisk /encdisk ext4 defaults 1 2
Cree /etc/crypttab y agregue la siguiente línea. Se solicitará la contraseña cada vez que lamáquina arranque:
encdisk /dev/vda5
Entrada automática de la contraseña de encriptación
RH200-6-es-2-20110115 161
Entrada automática de la contraseña de encriptaciónSi desea que se realice un arranque automático, debe colocar la contraseña en un archivo detexto (lo que tiene consecuencias obvias en la seguridad).
/etc/crypttab:
encdisk /dev/vda5 /root/encdisk
[root@serverX ~]# echo -n "testing123" > /root/encdisk[root@serverX ~]# chown root /root/encdisk[root@serverX ~]# chmod 600 /root/encdisk[root@serverX ~]# cryptsetup luksAddKey /dev/vda5 /root/encdiskEnter any passphrase: testing123
ReferenciasRed Hat Enterprise Linux Security Guide
• Sección 3.8: Encriptación de discos con LUKS
Páginas del manual: cryptsetup(8) y crypttab(5)
Capítulo 10. Administración de particiones simples y sistemas de archivos
162 RH200-6-es-2-20110115
Práctica Ejercicio para ordenar
Crear un sistema de archivos encriptado
Para cada uno de los nombres de archivo o directorio indicados a continuación, escriba elnúmero de la definición correspondiente indicado en la lista debajo.
Crear una nueva partición.
Crear un sistema de archivos ext4
Formatear la nueva partición para la encriptación
Montar el sistema de archivos en el dispositivo desbloqueado
Crear una entrada en /etc/fstab
Crear un directorio para usarlo como punto de montaje
Desbloquear la partición encriptada
Crear una entrada en /etc/crypttab
Hacer que LUKS esté al tanto del archivo de contraseña
1. fdisk
2. cryptsetup luksFormat /dev/vdaN
3. cryptsetup luksOpen /dev/vdaN secret
4. mkfs -t ext4 /dev/mapper/secret
5. mkdir /secret
6. mount /dev/mapper/secret /secret
7. secret /dev/vdaN /password/file
8. /dev/mapper/secret /secret ext4 defaults 1 2
9. cryptsetup luksAddKey /dev/vdaN /password/file
Administración de espacio de intercambio
RH200-6-es-2-20110115 163
Administración de espacio de intercambioEl espacio de intercambio o un área de intercambio es espacio en la unidad de disco duro que seusa como desbordamiento para partes de la memoria que actualmente no se están utilizando.Esto permite que el sistema haga lugar en la memoria principal para los datos que están siendoprocesados actualmente y proporciona desbordamiento de emergencia si el sistema está enriesgo de quedarse sin espacio en la memoria principal.
Creación y uso de una partición de intercambio adicional1. Cree una nueva partición con fdisk. Además, cambie el tipo de partición a "0x82 Linux
Swap" antes de guardar los cambios con fdisk.
2. mkswap /dev/vdaN preparará la partición para usarla como área de intercambio.
3. blkid /dev/vdaN determinará el UUID.
4. Agregue un nuevo espacio de intercambio a /etc/fstab:
UUID=uuid swap swap defaults 0 0
5. swapon -a activará la nueva área de intercambio.
swapon -s mostrará el estado de las áreas de intercambio actuales.
swapoff /dev/vdaN desactivará esa área de intercambio en particular.
Ejemplo de creación de un espacio de intercambioCree una nueva partición y cambie el tipo a 82:
[root@serverX ~]# fdisk /dev/vdaCommand (m for help): nFirst sector (12539904-12582911, default 12539904): Enter Using default value 12539904Last sector, +sectors or +size{K,M,G} (12539904-12582911, default 12582911): Enter Using default value 12582911
Command (m for help): tPartition number (1-6): 6Hex code (type L to list codes): 82Changed system type of partition 6 to 82 (Linux swap / Solaris)
Command (m for help): w
[root@serverX ~]# reboot
Escriba la firma de intercambio en el dispositivo y busque el UUID:
[root@serverX ~]# mkswap /dev/vda6[root@serverX ~]# blkid /dev/vda6/dev/vda6: UUID="4903c440-ffcb-4404-bc09-505c79c7a412" TYPE="swap"
Agregue una entrada a /etc/fstab:
Capítulo 10. Administración de particiones simples y sistemas de archivos
164 RH200-6-es-2-20110115
UUID="4903c440-ffcb-4404-bc09-505c79c7a412" swap swap defaults 0 0
Active el espacio de intercambio, verifique que esté disponible y luego desactívelo:
[root@serverX ~]# swapon -aswapon -s/dev/dm-0 partition 557048 0 -1/dev/vda6 partition 21496 0 -2[root@serverX ~]# swapoff /dev/vda6
El tamaño del espacio de intercambio total debe basarse en la carga de trabajo de la memoria enel sistema, no en la cantidad total de memoria física presente. Sin embargo, en la tabla siguientese proporcionan algunas reglas generales para determinar el tamaño del espacio de intercambio.Para obtener información más detallada sobre el tamaño del espacio de intercambio, consulte elartículo de la base de conocimiento que figura en las referencias.
Memoria RAM del sistema Espacio mínimo recomendado deintercambio
hasta 4 GB 2 GB como mínimo
De 4 GB a 16 GB 4 GB como mínimo
De 16 GB a 64 GB 8 GB como mínimo
De 64 GB a 256 GB 16 GB como mínimo
Tabla 10.1. Orientación básica sobre establecimiento del tamaño del espacio de intercambio
ReferenciasRed Hat Enterprise Linux Storage Administration Guide
• Capítulo 14: Espacio de intercambio
Base de conocimiento: "Si agrego varios cientos de GB de memoria RAM a un sistema,¿realmente necesito varios cientos de GB de espacio de intercambio?"https://access.redhat.com/kb/docs/DOC-15252
Páginas del manual: mkswap(8) y swapon(8)
Administración de espacio de intercambio
RH200-6-es-2-20110115 165
Práctica Ejercicio
Crear y usar una nueva partición de intercambio
Realice los siguientes pasos con cuidado. Si tiene algún problema o alguna duda, consulte con suinstructor.
Cree y use una nueva partición de intercambio de 256 MB en su servidor virtual, serverX.
1. Inicie fdisk y cree una nueva partición.
ImportantePara tener espacio para crear particiones adicionales en el futuro, si es necesario,asegúrese de crear una partición extendida previamente.
2. Cambie el tipo de partición a swap.
3. Prepare la nueva partición para usarla como intercambio.
4. Determine el UUID.
5. Agregue la nueva partición a /etc/fstab.
6. Determine la cantidad actual de intercambio.
7. Active el nuevo intercambio.
8. Verifique el intercambio recientemente activado.
Capítulo 10. Administración de particiones simples y sistemas de archivos
166 RH200-6-es-2-20110115
Prueba
Prueba de criterios
Caso de estudio
Administración de particiones simples y sistemas dearchivosAntes de comenzar...Asegúrese de ejecutar lab-setup-storage de su sistema de desktopX, lo cual preparará elsistema de serverX para el ejercicio de laboratorio.
Una vez que esté listo, ejecute el script lab-grade-storage en serverX para verificar sutrabajo.
Su departamento desea usar una parte del espacio de almacenamiento sin asignar en losservidores. Cree adiciones en el sistema según la siguiente lista:
• Cree una nueva partición y un sistema de archivos ext4 con un tamaño de 400 MB. El sistemade archivos debe montarse de manera persistente en /data.
• Agregue de manera persistente una partición de intercambio que tenga un tamaño de 200 MB.
• Cree un dispositivo encriptado con un sistema de archivos ext4 que tenga un tamaño de256 MB y use la contraseña testing123. El sistema debe solicitar la contraseña durante elproceso de arranque y montar el sistema de archivos en /test.
ImportantePara tener espacio para crear particiones adicionales en el futuro, si es necesario, asegúresede crear una partición extendida previamente.
¿Cómo trataría el caso de estudio descrito anteriormente? Tome nota de su proceso en elespacio provisto a continuación y después impleméntelo.
Administración de espacio de intercambio
RH200-6-es-2-20110115 167
Notas personales
Capítulo 10. Administración de particiones simples y sistemas de archivos
168 RH200-6-es-2-20110115
Resumen de la unidad
Particiones simples y sistemas de archivos
En esta sección, aprendió a:
• Crear y formatear una partición simple para el almacenamiento de datos
.Habilitación de la privacidad de datos con encriptación de partición
En esta sección, aprendió a:
• Habilitar la privacidad de datos con una partición encriptada desde la línea decomando
.Administración de espacio de intercambio
En esta sección, aprendió a:
• Crear y formatear una partición simple para intercambio.
.
RH200-6-es-2-20110115 169
UNIDAD ONCE
CONTROL DE ACCESO A LOSARCHIVOS
IntroducciónTemas tratados en esta unidad:
• Listas de control de acceso POSIX para permisos de archivos
Capítulo 11. Control de acceso a los archivos
170 RH200-6-es-2-20110115
Administración de listas de control de acceso desistemas de archivos
Soporte de listas de control de acceso• Los sistemas de archivos estándar de Linux (ext2/3/4) admiten la configuración de permisos de
archivo más complejos mediante ACL POSIX, siempre que el sistema de archivos se monte conla opción acl.
• En Red Hat Enterprise Linux, si el último carácter de la cadena de permiso que muestra ls -les +, el archivo o directorio tiene un conjunto de ACL.
• getfacl file se usa para mostrar las ACL en un archivo.
u:elvis:rw- # applies to user elvisu:3142:--- # applies to user id 3142u::rwx # applies to file user owner
g:music:rwx # applies to group musicg:10:r-x # applies to group id 11g::rw- # applies to file group owner
o::rwx # applies to everyone else
• setfacl se usa para establecer o modificar ACL en un archivo.
setfacl -m u:friend:rw filename # grants rw to user friendsetfacl -m g:grads:rw filename # grants rw to the group gradssetfacl -m g:profs:r filename # grants r to the group profs
setfacl -x u:friend # removes the existing ACL for friend
setfacl -m o::- filename # changes normal "other" permissions
Use este espacio para sus notas.
Prioridad de permisosCuando se determina si un proceso (es decir, un programa en ejecución) puede acceder a unarchivo, los permisos de archivo y las ACL se aplican de la siguiente manera:
1. Si el proceso se ejecuta como el usuario al que pertenece el archivo, entonces se aplican lospermisos de usuario del archivo.
2. De lo contrario, si el proceso se ejecuta como un usuario que figura en una entrada de ACLde usuarios, entonces se aplica la ACL de usuarios (siempre que mask lo permita).
Administración de listas de control de acceso de sistemas de archivos
RH200-6-es-2-20110115 171
3. De lo contrario, si el proceso se ejecuta como un grupo que coincide con el grupo al quepertenece el archivo o como un grupo con una entrada de ACL de grupo explícita, el permisolo otorga cualquier grupo coincidente que corresponda (siempre que mask lo permita).
4. De lo contrario, se aplican los otros permisos del archivo.
La máscara de ACL• Los archivos que tienen ACL poseen una "máscara" que limita la cantidad máxima de permisos
que pueden tener tanto el grupo al que pertenece el archivo, como los usuarios y gruposadicionales en las ACL.
• getfacl file muestra la máscara actual como mask::permissions.
• Los permisos de grupo que muestra ls -ld file también reflejan la máscara actual (no lospermisos del grupo propietario).
ImportanteSi se modifican los permisos de grupo en un archivo con una ACL mediante chmod, no semodifican los permisos del grupo propietario. Lo que se modifica es la máscara, que limitala cantidad máxima de permisos de todos los grupos y usuarios adicionales que tienenacceso al archivo. (Es decir, los permisos para todos a excepción del usuario propietario y losusuarios en la otra categoría para el archivo).
Use este espacio para sus notas.
ACL predeterminadas (herencia)• Los directorios pueden tener entradas de "ACL predeterminada" que se establecen
automáticamente en archivos nuevos creados en ese directorio.
• setfacl -m d:u:elvis:rw directory establecería una entrada de ACL predeterminadaque otorgaría acceso de lectura y escritura al usuario elvis en todos los archivos nuevoscreados en directory.
• Esto es similar a la manera en que el permiso setgid, cuando se establece en un directorio,hace que los archivos nuevos creados en ese directorio pertenezcan al mismo grupo al quepertenece el directorio.
Capítulo 11. Control de acceso a los archivos
172 RH200-6-es-2-20110115
notaAl establecer ACL predeterminadas en un directorio, si desea asegurarse de que los usuariospuedan acceder al contenido de los nuevos subdirectorios que se creen en él, incluyapermisos ejecutables en su ACL:
[user@host ~]$ setfacl -m d:u:elvis:rx directory
Normalmente, los usuarios no reciben automáticamente ejecutables en archivos regularesrecientemente creados ya que, a diferencia de los directorios nuevos, la máscara de ACL deun archivo regular nuevo es rw- de manera predeterminada.
Use este espacio para sus notas.
Opción de montaje de ACL• Debe habilitarse el soporte para entradas de ACL POSIX cuando se monta el sistema de
archivos.
• El instalador configura todos los sistemas de archivos ext4 que crea de modo que activen elsoporte de ACL automáticamente.
[root@host ~]# dumpe2fs /dev/block-dev | grep 'Default mount'Default mount options: user_xattr acl
• Si formatea un sistema de archivos manualmente, deberá montarlo con la opción de montajeacl.
• Puede configurar un sistema de archivos ext4 formateado manualmente para que active elsoporte automáticamente al realizar el montaje mediante el uso de tune2fs para establecerlas opciones de montaje predeterminadas:
[root@host ~]# tune2fs -o acl,user_xattr /dev/block-dev
Administración de listas de control de acceso de sistemas de archivos
RH200-6-es-2-20110115 173
notaLa opción de montaje user_xattr no está relacionada con las ACL POSIX, sino que habilitaatributos extendidos de usuario. Estos son utilizados por unos pocos programas para guardarinformación personalizada con los archivos. Dejar esta opción predeterminada configuradaes una buena idea, aunque no es necesaria para habilitar las ACL POSIX. Consulte attr(5)para obtener más información.
Use este espacio para sus notas.
ReferenciasRed Hat Enterprise Linux Storage Administration Guide
• Capítulo 16: Listas de control de acceso
Páginas del manual: acl(5), getfacl(1) y setfacl(1)
Permisos de directorio de colaboraciónEn el cuestionario siguiente, use ACL POSIX y permisos estándar, según corresponda, parasolucionar estos problemas.
1. En un directorio normal, donde el usuario al que pertenece tiene permisos de rwx, elgrupo al que pertenece tiene permisos de rwx y otros tienen permisos de ---, ¿quécomando otorgaría permisos de r-x a un segundo grupo, sin cambiar los permisos delgrupo existente al que pertenece ni de otros?
2. ¿Qué comando otorgaría acceso de lectura y escritura de manera automática a esesegundo grupo para cualquier archivo regular recientemente creado en ese directorio?
3. Pregunta adicional. ¿Qué comando configuraría automáticamente al grupo propietariocomo el grupo propietario de los archivos recientemente creados en ese directorio?
Capítulo 11. Control de acceso a los archivos
174 RH200-6-es-2-20110115
Prueba de criterios
RH200-6-es-2-20110115 175
Prueba
Prueba de criterios
Caso de estudio
Uso de ACL para otorgar y limitar el acceso
En este ejercicio de laboratorio se utilizan usuarios y grupos creados anteriormente en serverX.Si aún no tiene los usuarios y grupos definidos, ejecute lab-add-users en serverX.
Los estudiantes de posgrado necesitan un directorio de colaboración con el nombre /opt/research, donde puedan almacenar los resultados de investigación generados. Sólo losmiembros de los grupos profs y grads deben poder crear nuevos archivos en el directorio, ylos nuevos archivos deben tener las siguientes propiedades:
• El directorio debe pertenecer al usuario root.
• Los archivos nuevos deben pertenecer al grupo grads.
• Los profesores (miembros del grupo profs) deben tener acceso de lectura y escritura anuevos archivos de manera automática.
• Los practicantes de verano (miembros del grupo interns) deben tener acceso de sólo lecturaa nuevos archivos de manera automática.
• Otros usuarios (no un miembro de los grupos profs, gradso interns) no deben teneracceso al directorio ni a su contenido en absoluto.
Cuando termine, consulte el apéndice de Soluciones para verificar su solución y ver algunosenfoques posibles.
¿Cómo trataría el caso de estudio descrito anteriormente? Tome nota de su proceso en elespacio provisto a continuación y después impleméntelo.
Capítulo 11. Control de acceso a los archivos
176 RH200-6-es-2-20110115
Notas personales
Prueba de criterios
RH200-6-es-2-20110115 177
Resumen de la unidad
Administración de listas de control de acceso de sistemas de archivos
En esta sección, aprendió a:
• Usar una entrada de ACL para otorgar o bloquear el acceso a archivos
• Crear una lista de ACL en un archivo
• Borrar una entrada de ACL
• Asignar grupo de propietarios o una ACL a nuevos archivos creados en un directoriode forma automática
.
178
RH200-6-es-2-20110115 179
UNIDAD DOCE
ADMINISTRACIÓN DEALMACENAMIENTO FLEXIBLECON EL ADMINISTRADOR DEVOLÚMENES LÓGICOS
IntroducciónTemas tratados en esta unidad:
• Revisar componentes del LVM
• Implementar el almacenamiento de LVM
• Extender un sistema de archivos
• Agregar un disco
• Instantánea como copia de seguridad
Capítulo 12. Administración de almacenamiento flexible con el administrador de volúmenes lógicos
180 RH200-6-es-2-20110115
Reconocer los componentes del LVM
4.
3.
2.
1.
Unused Space
Revisar definiciones del LVM• Las particiones físicas o discos constituyen el primer bloque de creación del LVM. Pueden ser
particiones, discos enteros, conjuntos RAID o discos SAN.
• Los volúmenes físicos constituyen el almacenamiento "físico" subyacente que se usa con elLVM. Comúnmente, esto es un dispositivo de bloque como una partición o un disco entero. Undispositivo debe inicializarse como volumen físico de LVM para su uso con el LVM.
• Los grupos de volúmenes son bloques de almacenamiento conformados por uno o másvolúmenes físicos.
• Las extensiones físicas son pequeños fragmentos de datos almacenados en volúmenes físicosque actúan como el back-end del almacenamiento de LVM.
• Las extensiones lógicas se asignan a las extensiones físicas para formar el front-end delalmacenamiento de LVM. De forma predeterminada, cada extensión lógica se asignará a una
¿Para qué se usan los volúmenes lógicos?
RH200-6-es-2-20110115 181
extensión física. La habilitación de algunas opciones cambiará esta asignación. Por ejemplo, lacreación de reflejo hará que cada extensión lógica se asigne a dos extensiones físicas.
• Los volúmenes lógicos son grupos de extensiones lógicas. Un volumen lógico se puede usar delmismo modo que una partición de la unidad de disco duro.
¿Para qué se usan los volúmenes lógicos?Los volúmenes lógicos y la administración de volúmenes lógicos facilitan la administracióndel espacio en disco. Si un sistema de archivos necesita más espacio, se lo puede asignar a suvolumen lógico a partir del espacio libre en su grupo de volúmenes y se puede modificar eltamaño del sistema de archivos. Si un disco comienza a funcionar mal, se puede registrar undisco de reemplazo como un volumen físico en el grupo de volúmenes y se pueden migrar lasextensiones del volumen lógico al nuevo disco.
ReferenciasRed Hat Enterprise Linux Logical Volume Manager Administration Guide
Capítulo 12. Administración de almacenamiento flexible con el administrador de volúmenes lógicos
182 RH200-6-es-2-20110115
Práctica Cuestionario
Componentes del LVM1. Complete el siguiente cuadro con los nombres de los componentes.
4.
3.
2.
1.
Unused Space
2. ¿Cuáles son las partes más pequeñas (fragmentos o bloques) del volumen físico?
3. ¿Cuál es el tamaño más pequeño que podría darle a un volumen lógico?
¿Para qué se usan los volúmenes lógicos?
RH200-6-es-2-20110115 183
4. ¿A qué hacen referencia las extensiones físicas de un volumen lógico?
Capítulo 12. Administración de almacenamiento flexible con el administrador de volúmenes lógicos
184 RH200-6-es-2-20110115
Implementar el almacenamiento de LVM conherramientas de la línea de comando
Preparar un volumen físico1. Se utiliza fdisk para crear una nueva partición para su uso con el LVM. Siempre establezca
el tipo en 0x8e Linux LVM en una partición que se usará con el LVM.
notaDe forma alternativa, puede usar un disco entero, una matriz RAID o un disco SAN.
2. Para inicializar la partición (u otro dispositivo físico) para su uso con el LVM como volumenfísico, se usa pvcreate /dev/vdaN. Se crea un encabezado directamente en el volumenfísico para almacenar los datos de configuración de LVM.
Creación de un grupo de volúmenes1. vgcreate vgname /dev/vdaN creará un grupo de volúmenes con el nombre vgname
conformado por el volumen físico /dev/vdaN. Puede especificar volúmenes físicosdelimitados por espacios adicionales al crearlos o agregar nuevos volúmenes físicosposteriormente con vgextend.
Crear y usar un nuevo volumen lógico1. lvcreate -n lvname -L 2G vgname crea un nuevo volumen lógico de 2 GB con el
nombre lvname de las extensiones físicas disponibles en vgname.
ImportanteDiferentes herramientas mostrarán el nombre del volumen lógico, ya sea medianteel uso del nombre tradicional, /dev/vgname/lvname, o el nombre del asignador dedispositivos del kernel, /dev/mapper/vgname-lvname.
2. mkfs -t ext4 /dev/vgname/lvname creará un sistema de archivos ext4 en el nuevovolumen lógico.
3. mkdir /data hace que sea necesario el directorio como punto de montaje.
4. Agregue una entrada al archivo /etc/fstab:
/dev/mapper/vgname-lvname /data ext4 defaults 1 2
5. Ejecute mount -a para montar todos los sistemas de archivos en /etc/fstab, incluida laentrada que recién agregó.
Implementar el almacenamiento de LVM con herramientas de la línea de comando
RH200-6-es-2-20110115 185
Revisar la información de estado de LVM1. pvdisplay /dev/vdaN mostrará la información acerca del volumen físico específico.
2. vgdisplay vgname mostrará la información acerca del grupo de volúmenes específico.
Ejemplo de resultados de vgdisplay:
--- Volume group ---
VG Name vg1 System ID Format lvm2 Metadata Areas 10 Metadata Sequence No 18 VG Access read/write VG Status resizable MAX LV 0 Cur LV 6 Open LV 6 Max PV 0 Cur PV 5 Act PV 5
VG Size 7.28 TB
PE Size 4.00 MB
Total PE 1907727
Alloc PE / Size 1720587 / 6.56 TB
Free PE / Size 187140 / 731.02 GB VG UUID 7FmScA-HJWa-<snip>
Nombre del grupo de volúmenes
Tamaño total del almacenamiento "físico" en el grupo de volúmenes
Tamaño de la extensión física
Total de extensiones físicas en el grupo de volúmenes
Total de extensiones físicas usadas por los volúmenes lógicos
Extensiones físicas disponibles
3. lvdisplay /dev/vgname/lvname mostrará la información acerca del volumen lógicoespecífico.
ReferenciasRed Hat Enterprise Linux Logical Volume Manager Administration Guide
Página del manual: lvm(8)
Capítulo 12. Administración de almacenamiento flexible con el administrador de volúmenes lógicos
186 RH200-6-es-2-20110115
Práctica Ejercicio
Implementar el LVM y crear un volumen lógicoAntes de comenzar...Asegúrese de ejecutar lab-setup-lvm en su sistema desktopX, lo cual preparará el sistemaserverX para el ejercicio práctico.
Realice los siguientes pasos con cuidado. Si tiene algún problema o alguna duda, consulte con suinstructor.
Todos estos pasos se llevarán a cabo en serverX.
1. Cree una nueva partición de 512 MB y prepárela para su uso con el LVM como volumen físico.
ImportantePara tener espacio para crear particiones adicionales en el futuro, si es necesario,asegúrese de crear una partición extendida previamente.
2. Cree un grupo de volúmenes con el nombre shazam mediante el uso del volumen físicocreado en el paso anterior.
3. Cree y formatee con ext4 un nuevo volumen lógico de 256 MB con el nombre /dev/shazam/storage.
4. Modifique el sistema de modo que /dev/shazam/storage se monte durante el proceso dearranque como /storage.
Extender un volumen lógico y el sistema de archivos ext4
RH200-6-es-2-20110115 187
Extender un volumen lógico y el sistema dearchivos ext4
Uno de los beneficios de los volúmenes lógicos es la capacidad de aumentar su tamaño sinexperimentar tiempo de inactividad. Se pueden agregar extensiones físicas libres en un grupode volúmenes a un volumen lógico para “extender” su capacidad, que luego se puede usar paraextender el sistema de archivos que contiene.
Pasos básicos para la extensión de un volumen lógico1. Verificar el espacio disponible en el
2. Extender el
3. Extender el
Extensión del volumen lógico y el sistema de archivos1. Verifique el tamaño actual del sistema de archivos montado /data:
# df -h /data
2. Verifique que haya suficientes "extensiones físicas disponibles" para su uso:
# vgdisplay vgname
Consulte el ejemplo de resultados en la sección “Revisar la información de estado de LVM”que se encuentra anteriormente en esta unidad, para ver cómo identificar las extensionesfísicas libres disponibles.
3. Extienda el volumen lógico usando algunas o todas las extensiones disponibles:
# lvextend -l 128 /dev/vgname/lvname
4. Extienda el sistema de archivos asociado montado en /data:
# resize2fs -p /dev/vgname/lvname
La opción -p muestra el progreso durante la operación.
Capítulo 12. Administración de almacenamiento flexible con el administrador de volúmenes lógicos
188 RH200-6-es-2-20110115
notaEl sistema de archivos puede permanecer montado y se puede usar mientras se ejecutaresize2fs.
ImportanteUn error común es ejecutar lvextend y olvidar ejecutar resize2fs.
5. Verifique el nuevo tamaño del sistema de archivos montado /data:
# df -h /data
Reducción de un sistema de archivos y un volumen lógicoEste proceso es similar a la extensión, pero al revés: resize2fs y después lvreduce.
AdvertenciaEs fundamental que cuente con una copia de seguridad sólida antes de realizar unareducción en el volumen lógico, ya que se pueden perder datos si se ingresan errorestipográficos en la línea de comando.
1. Si bien la extensión de un volumen lógico puede realizarse mientras el sistema de archivosestá en uso, la reducción de un sistema de archivos ext4 debe realizarse sin conexión.
umount /data para desmontar el sistema de archivos que desea reducir.
2. fsck -f /dev/mapper/vgname-lvname para verificar que todas las estructuras de datosdel sistema de archivos estén limpias antes de cambiar el tamaño.
3. resize2fs -p /dev/mapper/vgname-lvname 512M cambiará el tamaño del sistema dearchivos a 512 MB, si se supone que el volumen lógico es de más de 512 MB.
Nota: Si omite el tamaño del comando resize2fs, cambiará al tamaño del volumen lógicode forma predeterminada, lo cual está bien para extender el volumen lógico como se hizoanteriormente.
4. lvreduce -L 512M /dev/mapper/vgname-lvname reducirá el volumen lógico a 512 MB.
Extender un volumen lógico y el sistema de archivos ext4
RH200-6-es-2-20110115 189
Advertencialvreduce no tiene conocimiento de las estructuras de datos del sistema de archivosy, sin proporcionarle ninguna advertencia, descartará los elementos de su sistema dearchivos si usted no usa primero resize2fs para reducir el sistema de archivos a untamaño menor que el del volumen lógico deseado.
5. mount -a volverá a montar todos los sistemas de archivos detallados en /etc/fstab,incluido su volumen lógico ahora reducido, siempre que esté detallado en
ReferenciasRed Hat Enterprise Linux Logical Volume Manager Administration Guide
Página del manual: lvm(8)
Capítulo 12. Administración de almacenamiento flexible con el administrador de volúmenes lógicos
190 RH200-6-es-2-20110115
Práctica Ejercicio
Extender un volumen lógico
Realice los siguientes pasos con cuidado. Si tiene algún problema o alguna duda, consulte con suinstructor.
Todos estos pasos se llevarán a cabo en serverX.
1. Determine la cantidad de espacio libre en el grupo de volúmenes shazam.
2. Extienda el volumen lógico /dev/shazam/storage con la mitad de las extensionesdisponibles en el grupo de volúmenes usando las herramientas de la línea de comando.
3. Extienda el sistema de archivos montado en /storage con las herramientas de la línea decomando.
Extensión y reducción de un grupo de volúmenes
RH200-6-es-2-20110115 191
Extensión y reducción de un grupo de volúmenesCuando los volúmenes lógicos en un grupo de volúmenes usan todas las extensiones físicaslibres del grupo de volúmenes, no se los puede extender sin agregar más espacio al grupo devolúmenes. Afortunadamente, se pueden crear volúmenes físicos adicionales y agregárselos a ungrupo de volúmenes para “extender” su capacidad.
Otro de los beneficios del uso del LVM es que se pueden mover los datos entre los dispositivosde almacenamiento físicos, sin tiempo de inactividad para los usuarios. Por ejemplo, se puedenmover los datos de una unidad de disco duro más lenta a una unidad nueva más rápida. Estopermite que un administrador del sistema quite el dispositivo de almacenamiento físico noutilizado de un grupo de volúmenes, en este caso, la unidad de disco duro lenta.
Extensión de un grupo de volúmenes1. Al igual que en la creación de un nuevo grupo de volúmenes, se debe crear y preparar una
nueva partición para usar como volumen físico de LVM.
Use fdisk para crear una nueva partición y recuerde establecer el tipo en 0x8e LinuxLVM.
Use pvcreate /dev/vdaN para inicializar la partición para su uso con el LVM comovolumen físico.
2. Se usa vgextend vgname /dev/vdaN para agregar un nuevo volumen físico, /dev/vdaN,a un grupo de volúmenes existente, vgname .
3. Use vgdisplay para confirmar las "extensiones físicas disponibles" adicionales.
Reducción de un grupo de volúmenes1. Se usa pvmove /dev/vdaN para reubicar cualquier extensión física que se usa en /
dev/vdaN en otros volúmenes físicos en el grupo de volúmenes. Esto sólo es posible si haysuficientes extensiones disponibles en el grupo de volúmenes y si todas corresponden aotros volúmenes físicos.
AdvertenciaAntes de usar pvmove, se recomienda realizar una copia de seguridad de los datosen los volúmenes lógicos del grupo de volúmenes. Una pérdida de energía imprevistadurante la operación puede hacer que el grupo de volúmenes quede en un estadoincoherente.
2. Se usa vgreduce vgname /dev/vdaN para quitar el volumen físico /dev/vdaN del grupode volúmenes vgname.
Capítulo 12. Administración de almacenamiento flexible con el administrador de volúmenes lógicos
192 RH200-6-es-2-20110115
ReferenciasRed Hat Enterprise Linux Logical Volume Manager Administration Guide
Páginas del manual: lvm(8), pvmove(8) y vgreduce(8)
Extensión y reducción de un grupo de volúmenes
RH200-6-es-2-20110115 193
Práctica Ejercicio
Extender un grupo de volúmenes
Realice los siguientes pasos con cuidado. Si tiene algún problema o alguna duda, consulte con suinstructor.
Todos estos pasos se llevarán a cabo en serverX.
1. Cree una nueva partición de 512 MB y prepárela para su uso con el LVM como volumen físico.
ImportantePara tener espacio para crear particiones adicionales en el futuro, si es necesario,asegúrese de crear una partición extendida previamente.
2. Extienda el grupo de volúmenes shazam al agregar el volumen físico creado en el pasoanterior.
Capítulo 12. Administración de almacenamiento flexible con el administrador de volúmenes lógicos
194 RH200-6-es-2-20110115
Crear una instantánea para facilitar la copia deseguridad de datos
Las instantáneas de volúmenes lógicos son otra de las funciones flexibles del almacenamientode LVM. Una instantánea de LVM es un volumen lógico que preserva temporalmente los datosoriginales de un volumen lógico cambiante. La instantánea proporciona una vista estática delvolumen original, para que pueda realizarse una copia de seguridad de sus datos en un estadocoherente.
Determinar el tamaño de instantánea1. Frecuencia de prevista
2. de instantánea requerido
La instantánea de volumen sólo debe ser lo suficientemente grande para almacenar los datosque cambiarán mientras esta exista.
Si se producen más modificaciones de datos de las que puede retener la instantánea, esta pasaráa ser inutilizable automáticamente. (El volumen original no se verá afectado, pero la instantáneainutilizable deberá desmontarse y quitarse del grupo de volúmenes manualmente).
Creación y uso de una instantánea para copia de seguridad1. Cree una nueva instantánea de volumen con el nombre snaplvname de /dev/vgname/
lvname, que tenga un tamaño de 20 MB.
# lvcreate -s -n snaplv -L 20M /dev/vgname/lvname
2. Si el software de copia de seguridad lo requiere, monte la instantánea y apunte el programade copia de seguridad al nuevo punto de montaje:
# mkdir /snapmount# mount -o ro /dev/vgname/snaplv /snapmount
3. Verifique el estado de la instantánea de volumen lógico:
# lvs /dev/vgname/snaplv LV VG Attr LSize Origin Snap% Move Log Copy% Convert snaplv vgname swi-a- 224.00m origlv 0.26
4. Una vez que finalice la instantánea, desmóntela y quítela:
# umount /snapmount# lvremove /dev/vgname/snaplv
Extensión y reducción de un grupo de volúmenes
RH200-6-es-2-20110115 195
ReferenciasRed Hat Enterprise Linux Logical Volume Manager Administration Guide
Página del manual: lvm(8)
Capítulo 12. Administración de almacenamiento flexible con el administrador de volúmenes lógicos
196 RH200-6-es-2-20110115
Práctica Ejercicio
Creación de una instantánea de LVM
Realice los siguientes pasos con cuidado. Si tiene algún problema o alguna duda, consulte con suinstructor.
Compare el contenido del volumen lógico existente, /dev/shazam/storage, con una nuevainstantánea de volumen, /dev/shazam/storagesnap, mientras realiza cambios en el volumenoriginal.
Todos estos pasos se llevarán a cabo en serverX.
1. Copie el archivo /usr/share/dict/linux.words en /storage para tener algunos datospara la comparación.
2. Cree una nueva instantánea de volumen lógico de 20 MB de /dev/shazam/storage con elnombre storagesnap.
3. Monte /dev/shazam/storagesnap manualmente, con acceso de sólo lectura, en /storagesnap.
4. Enumere el contenido de /storagesnap y tenga en cuenta que es igual a /storage.
5. Elimine el archivo /storage/linux.words y tenga en cuenta que aún existe en /storagesnap.
6. Limpie: desmonte /storagesnap, quite el directorio y elimine el volumen lógicostoragesnap.
Prueba de criterios
RH200-6-es-2-20110115 197
Prueba
Prueba de criterios
Caso de estudio
Caso de estudio de LVMAntes de comenzar...Asegúrese de ejecutar lab-setup-lvm de su sistema de desktopX, lo cual preparará el sistemade serverX para el ejercicio de laboratorio.
Una vez que esté listo, ejecute el script lab-grade-lvm en serverX para verificar su trabajo.
Allison necesita almacenar datos para su negocio. Su base de datos de clientes actual es de 256MB. La información en la base de datos cambia alrededor de 10 MB por hora en un día normal. Elsoftware de copia de seguridad tarda 10 minutos para realizar una ejecución completa.
Cree un nuevo grupo de volúmenes con el nombre allison con suficiente espacio para unvolumen de 512 MB y una instantánea de ese volumen para el software de copia de seguridad.
Una vez que haya creado el grupo de volúmenes, cree en él un volumen lógico de 512 MB para labase de datos de clientes de Allison con el nombre custdb. Además, cree una instantánea delvolumen de la base de datos de clientes de Allison con el nombre custdbsnap para su softwarede copia de seguridad.
¿Cómo trataría el caso de estudio descrito anteriormente? Tome nota de su proceso en elespacio provisto a continuación y después impleméntelo.
Capítulo 12. Administración de almacenamiento flexible con el administrador de volúmenes lógicos
198 RH200-6-es-2-20110115
Notas personales
Prueba de criterios
RH200-6-es-2-20110115 199
Resumen de la unidad
Reconocer los componentes del LVM
En esta sección, aprendió a:
• Identificar los bloques de creación básicos del administrador de volúmenes lógicos
.Implementar el almacenamiento de LVM con herramientas de la línea de comando
En esta sección, aprendió a:
• Crear nuevos volúmenes físicos, grupos de volúmenes y volúmenes lógicos con lasherramientas de la línea de comando
• Revisar la información de estado de LVM
.Extender un volumen lógico y el sistema de archivos ext4
En esta sección, aprendió a:
• Extender un volumen lógico y el sistema de archivos correspondiente para satisfacerlas necesidades de datos en crecimiento
.Extensión y reducción de un grupo de volúmenes
En esta sección, aprendió a:
• Agregar nuevos volúmenes físicos a un grupo de volúmenes existentes
• Quitar un volumen físico existente de un grupo de volúmenes
.Crear una instantánea para facilitar la copia de seguridad de datos
En esta sección, aprendió a:
• Usar instantáneas temporales de LVM para facilitar las copias de seguridad de datosy minimizar el tiempo de inactividad del servicio
.
200
RH200-6-es-2-20110115 201
UNIDAD TRECE
CONTROLAR EL PROCESO DEARRANQUE
IntroducciónTemas tratados en esta unidad:
• Arrancar un kernel alternativo
• Arrancar en un nivel de ejecución específico
• Solucionar las configuraciones erróneas del cargador de arranque
• /boot/grub/grub.conf
• Parámetros de arranque de un kernel
• /etc/inittab
• Intérpretes de comandos de recuperación
Capítulo 13. Controlar el proceso de arranque
202 RH200-6-es-2-20110115
Arranque de un kernel alternativoEl núcleo del sistema operativo Linux es el kernel, que actúa como la interfaz entre el código deusuario y el hardware del sistema. Cada tanto, se lanza una nueva versión del kernel para RedHat Enterprise Linux, que puede incluir nuevas funciones o corregir errores de software.
Para usar un nuevo kernel, es necesario volver a arrancar el sistema. Normalmente, se usa laversión más nueva del kernel instalada en el sistema. Sin embargo, Red Hat Enterprise Linuxpermite la instalación de varias versiones del kernel al mismo tiempo. Esto le permite probar unaactualización del kernel y, si dicha actualización presenta una regresión crítica u otro problema,puede retroceder fácilmente a un kernel que haya comprobado que funciona para su sistema.
En esta sección, veremos la forma de seleccionar manualmente qué kernel arrancar al iniciar elsistema. Más adelante, veremos cómo puede hacer que esta selección sea permanente.
Escriba una definición para cada uno de estos términos clave:
1. Gestor de arranque
2. GRUB
Puede usar el gestor de arranque para:
• Arrancar en un kernel más antiguo si un kernel nuevo no es compatible con su hardware
• Arrancar en modo monousuario cuando se realizan tareas de mantenimiento del sistema opara tener el control de una máquina con una contraseña de usuario root desconocida
Procedimiento para arrancar un kernel alternativo1. Interrumpa la cuenta regresiva de GRUB: tecla Esc.
2. Use las teclas de dirección para seleccionar kernels alternativos.
3. Presione Enter cuando esté resaltado el kernel que desea para el arranque.
ReferenciasRed Hat Enterprise Linux Installation Guide
• Apéndice E: Gestor de arranque GRUB
RH200-6-es-2-20110115 203
Práctica Lista de verificación de rendimiento
Arranque de un kernel alternativo
Realice todos los pasos siguientes en serverX.
Configure yum para que apunte al repositorio Errata en la máquina instructor con elsiguiente comando:
[root@serverX ~]# wget http://instructor/pub/gls/errata.repo -O /etc/yum.repos.d/errata.repo
Instale la actualización de kernel que esté disponible. La instalación demorará más de 3minutos.
Arranque en el nuevo kernel.
Vuelva a arrancar y seleccione el kernel antiguo.
Capítulo 13. Controlar el proceso de arranque
204 RH200-6-es-2-20110115
Arranque en un nivel de ejecución diferente
Definiciones de niveles de ejecución1. Escriba una definición para este término clave:
Nivel de ejecución
2. ¿Para qué se usan generalmente estos niveles de ejecución?
Nivel de ejecución 5: escritorio gráfico
Nivel de ejecución 3:
Nivel de ejecución 1:
Cambio de niveles de ejecución• Ejecute init rlnum en la señal del intérprete de comandos, donde rlnum es el número del
nivel de ejecución. De esta manera, se modificará inmediatamente el nivel de ejecución.
• Pase el número del nivel de ejecución como argumento al kernel a través de GRUB durante elproceso de arranque. De esta manera, se anulará el nivel de ejecución predeterminado.
ReferenciasRed Hat Enterprise Linux Installation Guide
• Apéndice técnico E.8: Cambio de niveles de ejecución durante el proceso de arranque
RH200-6-es-2-20110115 205
Práctica Lista de verificación de rendimiento
Cambio de la contraseña root
Este ejercicio cronometrado está diseñado para que ponga en práctica el cambio de lacontraseña de usuario root en un sistema con una contraseña de usuario root desconocida.
Realice todos los pasos siguientes en serverX.
Primero, ejecute el script lab-setup-bootbreak-4. Esto cambiará la contraseña deusuario root a caracteres desconocidos y marcará el tiempo actual.
Ingrese al sistema y restablezca la contraseña de usuario root en redhat.
ImportanteCuando se lanzó Red Hat Enterprise Linux 6, había un error de SELinux quebloqueaba el comando passwd en el modo monousuario (n.º 644820). Si tiene elpaquete selinux-policy original instalado, debe ejecutar el comando setenforce0 en el nivel de ejecución 1 antes del comando passwd, para que funcione. Luegode cambiar la contraseña, debe ejecutar setenforce 1 nuevamente para volver acolocar SELinux en modo obligatorio.
Una vez que haya restablecido la contraseña, cambie el sistema al nivel de ejecución 5 yejecute el script lab-grade-bootbreak-4.
Consulte los comentarios del script para asegurarse de haber completado la tareacorrectamente. El script de evaluación mostrará un tiempo; escríbalo.
Repita el proceso al menos cinco veces.
Encierre en un círculo su mejor tiempo.
Capítulo 13. Controlar el proceso de arranque
206 RH200-6-es-2-20110115
Resolver problemas de GRUBEl Gran gestor de arranque unificado (GRUB) proporciona el puente en el proceso dearranque entre el hardware y el kernel de Linux. Cuando arranca el sistema, se inicia el BIOS ynormalmente carga el GRUB en etapas desde la unidad de disco duro: desde los primeros 446bytes del disco, luego desde el espacio entre el primer sector y el inicio de la primera partición,luego desde los archivos en /boot. A continuación, el GRUB lee su archivo de configuración, /boot/grub/grub.conf, que controla los sistemas operativos y kernels que están disponiblespara el arranque.
La pantalla de arranque del GRUBCuando se inicia el GRUB, se puede acceder a una pantalla gráfica de bienvenida presionando latecla de retorno, el espacio o cualquier otra tecla. Esta pantalla presenta una lista de entradasdel menú que generalmente son imágenes de arranque. Puede seleccionar entre las diferentesimágenes con las teclas de dirección arriba y abajo, y presionar la tecla de retorno paraseleccionar una entrada específica para el arranque. Si desea pasar argumentos a las imágenesde arranque a través del modo de edición de menú o acceder a la línea de comando del GRUB, yhay una contraseña GRUB configurada, deberá escribir "p" seguida de su contraseña GRUB.
Cada entrada de menú que arranca Red Hat Enterprise Linux normalmente tiene tres directivasGRUB:
• root, que indica la ubicación del sistema de archivos que contiene /boot
• kernel, que indica la ubicación del kernel que debe arrancarse en relación con root y lasopciones de la línea de comando o los argumentos que deben pasarse al kernel
• initrd, que indica la ubicación del "disco RAM inicial" que el kernel carga a comienzos delproceso de arranque, que contiene los manejadores de dispositivos críticos que se necesitandurante el proceso de arranque
Corrección en GRUB temporal1. Interrumpa la cuenta regresiva de GRUB: tecla Esc.
2. Use "e" para editar la configuración actual.
3. Seleccione las líneas que corregirá con las teclas de dirección.
4. Escriba "e" nuevamente para editar la línea actual.
ImportanteSi en este momento escribe Esc, volverá al menú y se descartarán los cambios.
5. Escriba "b" para realizar el arranque con los cambios actuales.
La pantalla de arranque del GRUB
RH200-6-es-2-20110115 207
ReferenciasRed Hat Enterprise Linux Installation Guide
• Apéndice técnico E.5: Interfaces de GRUB
Capítulo 13. Controlar el proceso de arranque
208 RH200-6-es-2-20110115
Práctica Lista de verificación de rendimiento
Superación de un error de configuración de GRUB
Realice todos los pasos siguientes en serverX.
Ejecute el script lab-setup-bootbreak-5 para introducir un problema con el procesode arranque.
Solucione el problema de modo que el sistema pueda arrancar y usted pueda iniciarsesión.
Convertir los cambios en GRUB en persistentes
RH200-6-es-2-20110115 209
Convertir los cambios en GRUB en persistentesLa segunda etapa del GRUB usa /boot/grub/grub.conf que tiene un formato de opcionesglobales seguidas por estrofas de arranque. Esta es una muestra del archivo grub.conf:
[root@demo ~]# cat /boot/grub/grub.conf# grub.conf generated by anaconda## Note that you do not have to rerun grub after making changes to this file# NOTICE: You have a /boot partition. This means that# all kernel and initrd paths are relative to /boot/, eg.# root (hd0,0)# kernel /vmlinuz-version ro root=/dev/mapper/vgsrv-root# initrd /initrd-[generic-]version.img#boot=/dev/vdadefault=0timeout=5splashimage=(hd0,0)/grub/splash.xpm.gzhiddenmenutitle Red Hat Enterprise Linux (2.6.32-71.el6.x86_64) root (hd0,0) kernel /vmlinuz-2.6.32-71.el6.x86_64 ro root=/dev/mapper/vgsrv-root rd_LVM_LV=vgsrv/root rd_LVM_LV=vgsrv/swap rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYBOARDTYPE=pc KEYTABLE=us crashkernel=auto rhgb quiet initrd /initramfs-2.6.32-71.el6.x86_64.img
• Las líneas de comentarios comienzan con un carácter #.
• default=number: number es la estrofa de arranque predeterminada (que empieza de 0).
• timeout=number: especifica la cantidad de tiempo que se realiza la cuenta regresiva.
• hiddenmenu: oculta el menú hasta que se presiona una tecla.
• rhgb quiet: considere quitar estos argumentos del kernel para ver más información dediagnóstico durante el arranque.
ReferenciasRed Hat Enterprise Linux Installation Guide
• Apéndice técnico E.7: Archivo de configuración del menú del GRUB
Red Hat Enterprise Linux Deployment Guide
• Sección 23.6: Verificación del gestor de arranque
info grub
Capítulo 13. Controlar el proceso de arranque
210 RH200-6-es-2-20110115
Práctica Lista de verificación de rendimiento
Convertir los cambios en GRUB en persistentes
Realice todos los pasos siguientes en serverX.
Vuelva a arrancar el equipo y confirme que el problema anterior no esté solucionado deforma persistente. Para arrancar el sistema, deberá aplicar la solución del mismo modoque lo hizo anteriormente.
Edite el archivo de configuración para solucionar definitivamente el problema.
Revierta al kernel más antiguo. Asegúrese de que, cuando vuelva a arrancar el equipo, elkernel más antiguo sea el predeterminado.
Paso de argumentos de kernel
RH200-6-es-2-20110115 211
Paso de argumentos de kernel
Investigación y aprendizaje sobre argumentos dekernel
1. Instale el paquete kernel-doc.
2. Consulte el material en kernel-parameters.txt que se encuentra en el directorio /usr/share/doc/kernel-doc*/Documentation/.
3. Cada equipo debe investigar y resumir los siguientes parámetros de kernel:
Equipo 1:
• console
Equipo 2:
• enforcing
• selinux
Equipo 3:
• init
Equipo 4:
• root
• ro
• rw
Referencias/usr/share/doc/kernel-doc-*/Documenation/kernel-parameters.txt
Capítulo 13. Controlar el proceso de arranque
212 RH200-6-es-2-20110115
Práctica Lista de verificación de rendimiento
Paso de argumentos de kernel
Anteriormente, tuvimos que desactivar el modo obligatorio de SELinux para cambiar lacontraseña del usuario root en el nivel de ejecución 1. Hay un parámetro de kernel que nospermite hacerlo sin usar comandos del intérprete de comandos. Realice los pasos siguientes enserverX.
Antes de volver a arrancar su máquina serverX, verifique cuál es su estadopredeterminado de SELinux al ejecutar el comando getenforce. Confirme que elsistema arranque normalmente en el modo obligatorio.
Vuelva a arrancar su máquina serverX y pase enforcing=0 al kernel cuando arranqueel sistema.
Una vez que finalice el proceso de arranque de serverX, verifique cuál es su estado deSELinux. Confirme que el sistema haya arrancado en modo permisivo.
Cambio del nivel de ejecución predeterminado
RH200-6-es-2-20110115 213
Cambio del nivel de ejecución predeterminadoEl nivel de ejecución determina los servicios que se inician automáticamente en el sistema Linux.La mayoría de los sistemas de escritorio Linux están configurados para arrancar en el nivelde ejecución 5 (interfaz gráfica, multiusuario, servicio de red). Muchos sistemas de servidorarrancan en el nivel de ejecución 3 (multiusuario, servicio de red, sin inicio de sesión gráfico),donde el sistema llega a una interfaz basada en texto.
El comando who -r proporcionará el nivel de ejecución que el sistema está usando actualmente,al igual que el número de la derecha en los resultados de runlevel.
El nivel de ejecución predeterminado se lee del archivo /etc/inittab. Por ejemplo, la línea deabajo haría que el sistema arrancara en el nivel de ejecución 5 de manera predeterminada.
id:5:initdefault:
notaEn Red Hat Enterprise Linux 6, el nuevo sistema de arranque de Upstart está configuradopara leer el nivel de ejecución predeterminado de /etc/inittab para la compatibilidadcon versiones anteriores. Ninguno de los otros servicios que antes se controlaban desdeese archivo, incluidas las señales de inicio de sesión, pueden configurarse en ese archivo enRHEL 6. En cambio, esas opciones de configuración se mantienen en el directorio /etc/init/. Para obtener más información, consulte las páginas del manual init(8) y init(5).
ReferenciasRed Hat Enterprise Linux Installation Guide
• Apéndice técnico E.8: Cambio de niveles de ejecución durante el proceso de arranque
Comentarios en /etc/inittab
Capítulo 13. Controlar el proceso de arranque
214 RH200-6-es-2-20110115
Práctica Lista de verificación de rendimiento
Cambio del nivel de ejecución predeterminado
Está configurando un sistema nuevo al cual accederá de forma remota. Actualmente, el sistemaarranca en el nivel de ejecución 5 de forma predeterminada, pero esta máquina permaneceráen un centro de datos donde usted sólo iniciará sesión de forma remota. Realice los pasossiguientes en serverX.
Cambie serverX para que arranque en el nivel de ejecución 3 de forma predeterminada.
Vuelva a arrancar serverX.
Habrá completado correctamente este ejercicio de laboratorio si serverX arranca enmodo de texto sin interacción humana.
Reparación de problemas de arranque
RH200-6-es-2-20110115 215
Reparación de problemas de arranqueDurante el proceso de arranque, si el sistema tiene dificultades para montar correctamente lossistemas de archivos, puede interrumpirse el proceso de arranque para reparar el problema.En este caso, el sistema mostrará automáticamente un intérprete de comandos sulogin parapermitir realizar reparaciones como usuario root.
El intérprete de comandos sulogin no es lo mismo que el nivel de ejecución 1 o el modomonousuario. Ante esta señal, si se monta un sistema de archivos, se lo hace con sólo lectura, yel sistema no arrancó completamente en un nivel de ejecución estándar.
La causa más común por la que los sistemas de archivos no logran montarse es que el sistemade archivos está en un estado incoherente debido a una caída del sistema. Pero hay otrosmotivos por los que no logran montarse. Por ejemplo, el administrador del sistema puede habercambiado la configuración del sistema de archivos en el sistema y un error tipográfico o de otrotipo en /etc/fstab puede apuntar a un dispositivo o sistemas de archivos que no existe. Otraposibilidad es que el administrador del sistema haya intentado montar un volumen físico delLVM o un dispositivo encriptado por error, en lugar del volumen lógico del LVM o el dispositivodesencriptado que contiene el sistema de archivos.
Reparación de sistemas de archivos dañadosCuando el funcionamiento es normal, el kernel mantiene la información de los sistemasde archivos a los que se acceden con mayor frecuencia en la memoria y sólo confirma lainformación en el disco en forma periódica. Si un sistema de archivos deja de estar disponibleinesperadamente (por ejemplo, debido a una interrupción de energía o un problema deconectividad física), el sistema de archivos en disco contendrá incoherencias. Si no se corrigenestos errores, es posible que se generen datos dañados.
El comando fsck intentará restaurar un sistema de archivos a un estado coherente. La garantíade fsck no es la recuperación de todos los datos, sino la coherencia del sistema de archivos.Durante el proceso de arranque, los scripts de inicio aplicarán fsck automáticamente en todoslos sistemas de archivos (si están etiquetados en /etc/fstab). Los problemas menores sesolucionarán sin interacción. Si una reparación automática en un sistema de archivos representaun riesgo de pérdida de datos, el proceso de arranque pasará al intérprete de comandossulogin para permitir que un administrador ejecute fsck de manera interactiva.
AdvertenciaNo ejecute fsck en un sistema de archivos montado con lectura y escritura en ningunacircunstancia. Es probable que cause daños en el sistema de archivos y pérdida de datos.
1. Desmonte el sistema de archivos /boot en /dev/vda1.
[root@demo ~]# umount /dev/vda1
2. Verifique el sistema de archivos en /dev/vda1.
Capítulo 13. Controlar el proceso de arranque
216 RH200-6-es-2-20110115
[root@demo ~]# fsck /dev/vda1
3. Vuelva a montar el sistema de archivos /boot.
[root@demo ~[# mount /dev/vda1
ImportanteDurante su ejecución, fsck puede preguntarle si deben realizarse ciertos cambios en elsistema de archivos o no. Normalmente, debe responder sí a todas las preguntas, porquefsck está solicitando su aprobación para realizar una reparación. Puede responder no sólosi está probando para ver qué errores encuentra fsck o si sospecha que el hardware noresponde correctamente a los comandos. Estos son dos casos poco comunes.
AdvertenciaLa ejecución de fsck no puede deshacerse. Ejecutar fsck en algo que no contenga unsistema de archivos normal (como un volumen físico de LVM) puede dañar el contenido deldispositivo y provocar la pérdida de datos. Elimine otras causas posibles de su problemaantes de recurrir a fsck.
Si el sistema de archivos informa errores debido al mal funcionamiento de un dispositivode almacenamiento, es probable que fsck no pueda solucionar el problema e introduzcamás errores si el dispositivo no se desempeña correctamente. (Por otro lado, en esecaso, los otros recursos que tiene son realizar una restauración a un nuevo dispositivo dealmacenamiento desde una copia de seguridad o enviar el dispositivo defectuoso para quese recuperen los datos, en cuyo caso no querrá ejecutar fsck para evitar el riesgo de perderdatos).
Reparación de problemas de arranque
RH200-6-es-2-20110115 217
Taller
Reparación del fichero fstab roto con el intérprete decomandos sulogin
Sígalo junto con el instructor y use el espacio provisto a continuación para sus notas.
Realizará estos pasos en sus servidores virtuales: primero dividirá el archivo /etc/fstab yobservará los síntomas resultantes (PROBAR), luego comprobará si hay errores de configuración(VERIFICAR) y, por último, corregirá el problema (REPARAR).
1. Ejecute el script lab-setup-bootbreak-1 en serverX para dividir /etc/fstab y vuelva aarrancar el servidor.
¿Qué ocurre?
2. Ingrese la contraseña del usuario root para obtener el intérprete de comandos sulogin.
3. Vea el archivo /etc/fstab
¿Cuáles son los seis campos?
Dispositivo , Tipo de sistema de archivos, Opcionesde montaje, Frecuencia de volcado, Orden de comprobación del sistema de archivos (fsck).
Sugerencia: fstab(5) para obtener detalles.
4. Vuelva a montar el sistema de archivos raíz con acceso de lectura y escritura.
¿Qué comando ejecuta esta función?
5. Edite /etc/fstab para corregir el error.
6. Ejecute mount -a para confirmar que no se produjeron errores.
7. Vuelva a arrancar el sistema y confirme que arranca normalmente.
El intérprete de comandos sulogin:
• El sistema pasa a un intérprete de comandos sulogin si encuentra problemas para acceder a unsistema de archivos en /etc/fstab.
• En el intérprete de comandos sulogin, el sistema de archivos raíz se monta con acceso de sólolectura.
• Si bien el intérprete de comandos sulogin puede recomendarlo, ejecutar fsck NO siempre esla opción preferida.
Capítulo 13. Controlar el proceso de arranque
218 RH200-6-es-2-20110115
ReferenciasPáginas del manual: fsck(8), fstab(5) y sulogin(8)
Prueba de criterios
RH200-6-es-2-20110115 219
Prueba
Prueba de criterios
Ejercicio
Recuperación del escándalo de Bad BrianAntes de comenzar...Ejecute lab-setup-bootbreak en desktopX para restaurar el estado original de serverX.
Realice los siguientes pasos con cuidado. Si tiene algún problema o alguna duda, consulte con suinstructor.
Brian fue un practicante de verano que trabajó como administrador de sistemas para uno desus servidores críticos, serverX. La tensa relación de su compañía con él finalmente terminóen un escándalo y en su despido inmediato. Lamentablemente, cuando Bad Brian se fue de lacompañía, se llevó la contraseña de usuario root para serverX.
Se le ha asignado a usted la responsabilidad de tener el control de serverX nuevamente:
1. Ejecute el script lab-setup-bootbreak-6 en serverX para preparar a ese servidor paraeste ejercicio de laboratorio. Esto le asignará a su sistema una contraseña de usuario rootdesconocida y volverá a arrancar el sistema.
2. Establezca redhat como contraseña de usuario root.
3. Instale la actualización del kernel, pero configure el sistema de modo que el kernel antiguose siga usando de forma predeterminada.
4. Pase el argumento selinux=1 para el kernel durante el proceso de arranque.
5. Configure el nivel de ejecución 3 como opción predeterminada.
6. Una vez que arranque su sistema, ejecute el script lab-grade-bootbreak-6 en serverXpara determinar cuán bien llevó a cabo esta tarea.
Capítulo 13. Controlar el proceso de arranque
220 RH200-6-es-2-20110115
Notas personales
Prueba de criterios
RH200-6-es-2-20110115 221
Resumen de la unidad
Arranque de un kernel alternativo
En esta sección, aprendió a:
• Usar el menú GRUB para seleccionar un kernel diferente para el arranque
.Arranque en un nivel de ejecución diferente
En esta sección, aprendió a:
• Usar GRUB para arrancar el sistema en un nivel de ejecución específico
.Resolver problemas de GRUB
En esta sección, aprendió a:
• Usar GRUB para corregir una configuración GRUB dañada para que el sistema puedaarrancar
.Convertir los cambios en GRUB en persistentes
En esta sección, aprendió a:
• Corregir de forma persistente una configuración GRUB errónea
• Configurar el sistema para el arranque de un kernel predeterminado diferente
.Paso de argumentos de kernel
En esta sección, aprendió a:
• Pasar los parámetros de kernel adicionales al kernel de arranque mediante GRUB
.Cambio del nivel de ejecución predeterminado
En esta sección, aprendió a:
• Configurar el sistema para el arranque en un nivel de ejecución específico
.Reparación de problemas de arranque
En esta sección, aprendió a:
• Corregir problemas con el proceso de arranque causados por un sistema de archivosque no se monta correctamente
• Editar archivos desde el intérprete de comandos de mantenimiento de sistema dearchivos de sólo lectura
.
222
RH200-6-es-2-20110115 223
UNIDAD CATORCE
AJUSTE Y MANTENIMIENTODEL KERNEL
IntroducciónTemas tratados en esta unidad:
• Arquitecturas compatibles
• Módulos del kernel
• Actualizaciones del kernel
Capítulo 14. Ajuste y mantenimiento del kernel
224 RH200-6-es-2-20110115
Arquitecturas compatibles e identificación delkernel
Como la interfaz entre los programas del usuario y el hardware del sistema, el kernel desempeñala función clave de asegurarse de que Red Hat Enterprise Linux pueda usarse en una granvariedad de entornos físicos y virtuales de hardware.
Arquitecturas admitidas por Red Hat Enterprise Linux 6Red Hat Enterprise Linux 6 puede ejecutarse directamente en cuatro arquitecturas deprocesador:
• Intel y AMD de 64 bits x86-64
• Intel y AMD de 32 bits x86
• IBM POWER (POWER6 de 64 bits o posterior)
• IBM System z (System z9 o posterior)
Esta clase se enseña en máquinas con la arquitectura Intel y AMD x86-64 de 64 bits (tambiénconocida como AMD64 e Intel 64).
Red Hat Enterprise Linux 6 y la virtualizaciónRed Hat Enterprise Linux 6 es compatible como guest virtualRed Hat Enterprise Linux 6 puede ejecutarse como guest virtual en los siguientes hipervisores:
• KVM en Red Hat Enterprise Linux 5 y 6 (x86-64)
• Xen en Red Hat Enterprise Linux 5 (x86 y x86-64, paravirtualizado y totalmente virtualizado)
• VMware ESX Server y VMware ESXi Server
• Microsoft Windows Server 2008 Hyper-V
Esto significa que Red Hat Enterprise Linux en estas plataformas de virtualización estácertificado y es completamente compatible independientemente del hardware físico subyacente(aparte de cualquier hardware pass-through). Tenga en cuenta que Red Hat es compatible conel sistema operativo guest. El soporte directo para una plataforma de virtualización provienedel proveedor correspondiente. Consulte http://hardware.redhat.com/ para obtenerdetalles sobre productos y versiones verificados, y http://www.redhat.com/rhel/server/virtualization_support.html para obtener más información.
Soporte de Red Hat Enterprise Linux 6 en particiones de hardwareRed Hat Enterprise Linux también se admite en soluciones de virtualización y partición dehardware como
• IBM POWER y System z
• Fujitsu PRIMEQUEST
Red Hat Enterprise Linux 6 y la virtualización
RH200-6-es-2-20110115 225
Estas soluciones poseen un soporte certificado con el hardware físico, no como una funcióngenérica en hardware no certificado. Vea http://hardware.redhat.com/ para obtener másdetalles.
Capítulo 14. Ajuste y mantenimiento del kernel
226 RH200-6-es-2-20110115
Soporte de Red Hat Enterprise Linux 6 en la nube públicaPara implementaciones privadas internas de informática en nube, se aplica el soporte estándar.Red Hat también certifica la ejecución de Red Hat Enterprise Linux en la plataforma de variosproveedores de informática en nube pública como parte de nuestro Programa de socios de lanube. Al momento de escribir este documento, los proveedores certificados de la nube incluían:
• Amazon EC2 (http://www.redhat.com/solutions/cloud/amazon/)
• IBM (http://www.ibm.com/ibm/cloud/)
• Savvis (http://www.savvis.com/)
Límites del sistemaLos límites del sistema admitido dependen de la arquitectura y la variante y versión del productoimplementadas. La URL http://www.redhat.com/rhel/compare se actualiza a medida quese introducen nuevas versiones y se habilita nuevo hardware.
Identificación del kernel en ejecución1. cat /etc/redhat-release: versión de Red Hat Enterprise Linux instalada
2. uname -r: versión de kernel actualmente en ejecución
3. yum list installed kernel\*: versiones de kernel instaladas
4. uname -a o arch: arquitectura de procesador actualmente en ejecución
Ocasionalmente, el kernel emite mensajes de registro. Estos mensajes se registran en el archivo/var/log/messages, con etiqueta de servicio de kernel.
ReferenciasComparación entre las versiones de escritorio y servidor de Red Hathttp://www.redhat.com/rhel/compare/
Soporte de virtualización en Red Hat Enterprise Linuxhttp://www.redhat.com/rhel/server/virtualization_support.html
Catálogo de hardware de Red Hathttp://hardware.redhat.com/
Programa de socios de la nubehttp://www.redhat.com/solutions/cloud/partners/
Páginas del manual: uname(1) y arch(1)
Administración de los módulos del kernel
RH200-6-es-2-20110115 227
Administración de los módulos del kernelLos módulos del kernel son archivos objeto, código ejecutable que puede enlazarse en formadinámica a un kernel Linux mientras se está ejecutando, para extender sus capacidades oproporcionar manejadores de dispositivos. Los módulos del kernel que pueden cargarsedinámicamente son útiles porque permiten que Linux cargue sólo los componentes del kernelque se necesitan en un sistema particular en una configuración particular, lo que ahora espacioen la memoria y el uso de los recursos del sistema. También permiten extender el kernel sinnecesidad de recompilarlo y volver a arrancar el sistema.
Carga y descarga de módulos• La imagen del kernel central, cargada durante el proceso de arranque, se encuentra en /boot/vmlinuz-VERSION.
• Si bien se pueden instalar varios kernels, sólo uno es el que actualmente está en ejecución.Para cambiar los kernels, se debe volver a arrancar el sistema.
• Cada kernel incluye un grupo de módulos cargados dinámicamente, compatibles con esekernel, que se guardan en /lib/modules/VERSION/.
• Generalmente, los módulos se cargan o descargan a pedido, sin interacción del usuario (o deladministrador).
• Se puede crear una lista de los módulos actualmente cargados con lsmod.
• En ocasiones, es posible que se deban cargar los módulos manualmente con modprobeMODULENAME.
• Los módulos que ya no se utilizan se pueden quitar con modprobe -r MODULENAME.
Parámetros de los módulos• Muchos módulos aceptan parámetros que pueden especificarse mientras se carga el módulo.
• Con el comando modinfo, se muestran los parámetros que admite un módulo.
• Los parámetros se especifican como pares name=value en la línea de comando modprobe.
# modprobe ecryptfs ecryptfs_verbosity=1
• Los parámetros se pueden aplicar automáticamente mediante la configuración de las opcionesen un archivo de configuración /etc/modprobe.d/local.conf:
options ecryptfs ecryptfs_verbosity=1
Capítulo 14. Ajuste y mantenimiento del kernel
228 RH200-6-es-2-20110115
ReferenciasRed Hat Enterprise Linux Deployment Guide
• Capítulo 22: Trabajo con módulos del kernel
Páginas del manual: lsmod(8) y modprobe(8)
Administración de los módulos del kernel
RH200-6-es-2-20110115 229
Práctica Ejercicio
Carga de módulos y establecimiento de parámetrospredeterminados
Realice los siguientes pasos con cuidado. Si tiene algún problema o alguna duda, consulte con suinstructor.
Se le ha solicitado que cargue el módulo del kernel nf_conntrack_ftp y que lo configureadecuadamente para un servidor FTP en modo de escucha en el puerto TCP 21 y el puerto 8021.
Debe ejecutar los siguientes comandos en su serverX.
1. Use el comando locate para asegurarse de que el módulo nf_conntrack_ftp sea compatiblecon su kernel.
2. Cargue el módulo de seguimiento de conexión FTP.
3. Asegúrese de que esté cargado.
4. Descargue el módulo de seguimiento de conexión FTP.
5. Asegúrese de que esté descargado.
6. Además del puerto 21 estándar, usted planea ejecutar un servidor FTP en el puerto 8021 noestándar. Examine las opciones que podrían permitirle especificar los puertos no estándares.
7. Configure un archivo /etc/modprobe.d/local.conf, que implementa esta opción unavez cargado.
Capítulo 14. Ajuste y mantenimiento del kernel
230 RH200-6-es-2-20110115
Actualización del kernelComplete los espacios en blanco a continuación mientras el instructor trata los temas siguientes.(Las respuestas también están en el apéndice).
1. ¿Qué comando (familiar) realiza una actualización dekernel?
2. Los kernels nuevos se ; no seactualizan. Como cada archivo que pertenece al paquetede kernels tiene versiones, o reside en un directoriocon versiones, RPM requiere que se instalen versionessimultáneas.
3. De forma predeterminada, al "actualizar" un kernel, yummantendrá un total de versiones instaladas yautomáticamente quitará cualquier versión anterior.
4. Para usar el nuevo kernel, debe su máquina.
5. Si bien la máquina volverá a arrancar automáticamenteen el kernel actualizado, aún puede seleccionar un kernel
en el menú del gestor dearranque GRUB.
6. Si desea quitar un kernel manualmente, debe especificarno sólo el nombre del paquete (kernel), sino también el
.
AdvertenciaNo intente ejecutar yum remove kernel sin especificar qué paquete de kernel debequitarse del sistema. El comando intentará quitar todos los paquetes de kernel instalados enel sistema, así como todos los paquetes que dependen del kernel. Esto dará como resultadoun sistema dañado que no se puede arrancar.
Administración de los módulos del kernel
RH200-6-es-2-20110115 231
ReferenciasRed Hat Enterprise Linux Deployment Guide
• Capítulo 23: Actualización manual del kernel
Páginas del manual: lsmod(8) y modprobe(8)
Páginas del manual: yum(1), yum.conf(8)
Capítulo 14. Ajuste y mantenimiento del kernel
232 RH200-6-es-2-20110115
Notas personales
Administración de los módulos del kernel
RH200-6-es-2-20110115 233
Resumen de la unidad
Arquitecturas compatibles e identificación del kernel
En esta sección, aprendió a:
• Analizar las arquitecturas de kernel compatibles y los límites
• Determinar qué kernel se está ejecutando en el sistema
.Administración de los módulos del kernel
En esta sección, aprendió a:
• Crear una lista de los módulos actuales cargados en el kernel
• Cargar un módulo y sus dependencias
• Quitar un módulo
• Configurar de forma persistente un módulo para su carga con parámetrosespecificados
• Buscar documentación acerca de un módulo
.Actualización del kernel
En esta sección, aprendió a:
• Actualizar un kernel compilado de Red Hat
.
234
RH200-6-es-2-20110115 235
UNIDAD QUINCE
ADMINISTRAR MÁQUINASVIRTUALES
IntroducciónTemas tratados en esta unidad:
• Virtualización de KVM
• Instalación de guest virtual
• Inicio automático durante el proceso de arranque
Capítulo 15. Administrar máquinas virtuales
236 RH200-6-es-2-20110115
Introducción a la virtualización de KVMLa virtualización es una característica que permite dividir una sola máquina física en variasmáquinas virtuales, que pueden ejecutar un sistema operativo independiente. Red Hat EnterpriseLinux 6 para x86-64 admite KVM, que permite que el kernel funcione como un hipervisor que asu vez admite máquinas virtuales guest, siempre que se cumplan ciertos requisitos.
Datos sobre la virtualización de KVM:• Máquina virtual basada en kernel: el sistema de virtualización en Red Hat Enterprise Linux,
integrado en el kernel como un módulo
• VirtIO: KVM admite manejadores paravirtualizados que los guests de KVM pueden usar paraobtener un mejor rendimiento de E/S
Los beneficios de KVM incluyen:• Rápido: KVM ofrece un alto rendimiento gracias al soporte de virtualización de hardware de
x86-64 y a la estrecha integración en el kernel de Linux
• Simple: el diseño de KVM es simple, lo que lo hace más sólido, más fácil de brindar soporte yoptimizar y más fácil de usar
• Estándar: el equipo oficial de kernel upstream, que incluye ingenieros de Red Hat, proporcionael hipervisor KVM como una capacidad del kernel de Linux sin modificar
Requisitos para el soporte de KVM:• 64 bits: Red Hat admite KVM en procesadores AMD o Intel de 64 bits con la arquitectura de
procesador x86-64
• Extensiones: el hardware del sistema, el BIOS y la CPU de 64 bits también deben admitir lasextensiones de virtualización basada en hardware de Intel VT-x o AMD Virtualization
Para verificar si una CPU admite extensiones de virtualización asistida por hardware, puedeconsultar sus banderas de características. Por ejemplo:
[user@host ~]$ grep flags /proc/cpuinfoflags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 popcnt aes lahf_lm ida arat tpr_shadow vnmi flexpriority ept vpid
Las banderas de características de CPU relevantes incluyen:
• lm = modo largo (indica soporte para 64 bits)
• svm = máquina virtual segura (soporte de virtualización básico de AMD)
• vmx = máquina virtual x86 (soporte de virtualización básico de Intel)
Sólo uno, svm o vmx, debe estar presente (o es probable que lo esté). Observe que el ejemploanterior incluye las marcas lm y vmx, por lo que la CPU debe admitir KVM.
Introducción a la virtualización de KVM
RH200-6-es-2-20110115 237
notaRed Hat Enterprise Linux 6 no puede actuar como un hipervisor Xen, aunque puedeejecutarse como un guest Xen paravirtualizado o completamente virtualizado en un hostRHEL 5 de Xen. Para obtener información detallada, consulte el capítulo 8 de Red HatEnterprise Linux Virtualization Guide, "Instalación de Red Hat Enterprise Linux 6 como unguest paravirtualizado en Red Hat Enterprise Linux 5".
Las máquinas guest Xen existentes de un host Red Hat Enterprise Linux 5 pueden migrarsepara ejecutarse como máquinas guest KVM en un host Red Hat Enterprise Linux 6.Para obtener información detallada, consulte el capítulo 23 de Red Hat Enterprise LinuxVirtualization Guide, "Migración a KVM de otros hipervisores mediante virt-v2v".
ImportanteEn la virtualización de Linux, el término paravirtualización se utiliza de dos formas, lo quepuede prestar a confusión.
En Red Hat Enterprise Linux 5, el hipervisor Xen admitía guests paravirtualizados. En esteescenario, se modificaban los manejadores y el kernel de los guests para permitir quese ejecutaran en un hipervisor Xen instalado en un sistema que no admitía extensionesde virtualización completa de hardware. Para esto, era necesario modificar el sistemaoperativo mismo para que admitiera la virtualización paravirtualizada Xen. KVM no admite laparavirtualización en este sentido.
KVM admite manejadores paravirtualizados. Los manejadores paravirtualizados sonmanejadores de dispositivos especiales que pueden "engañar" al comunicarse directamentecon el hipervisor. Esto elimina la necesidad de que el guest use una interfaz menos eficazpara el hipervisor que actúa como algún dispositivo de hardware existente, como uncontrolador de disco o una tarjeta de red. Estos manejadores paravirtualizados virtio son másrápidos que cuando se usan manejadores normales para el hardware virtual que presentaKVM al guest. De igual manera, no es necesario modificar el kernel del sistema operativopara utilizar los dispositivos paravirtualizados; sólo debe escribir nuevos manejadores quelos admitan.
Capítulo 15. Administrar máquinas virtuales
238 RH200-6-es-2-20110115
ReferenciasSoporte de virtualización en Red Hat Enterprise Linuxhttp://www.redhat.com/rhel/server/virtualization_support.html
Límites de virtualización en Red Hat Enterprise Linuxhttp://www.redhat.com/rhel/virtualization/compare/
Red Hat Enterprise Linux Virtualization Guide
• Parte I: Requisitos y limitaciones
Instalación de guest virtual
RH200-6-es-2-20110115 239
Instalación de guest virtualCuando se instala una máquina virtual, hay varios elementos que se deben elegir para podercontinuar con el resto de la instalación a través de Anaconda.
Especificaciones de máquina virtual1. Se debe especificar un nombre de dominio.
2. Especifique los medios de instalación para la primera y la segunda etapa de Anaconda.
3. Especifique los elementos de hardware virtuales:
• Número y tipo de CPU
• Tamaño de memoria RAM
• Dispositivo de disco virtual (archivo o volumen)
• Conexión de red y dirección MAC
La instalación, la administración y el acceso a las máquinas virtuales puede realizarse con virt-manager, una herramienta gráfica. El instructor demostrará cómo usar virt-manager enclase, antes de que la use en el siguiente ejercicio práctico.
notaPara los guests, los discos duros paravirtualizados (que usan manejadores virtio) aparecencomo /dev/vd* en lugar de /dev/sd*.
Use este espacio para sus notas.
ReferenciasRed Hat Enterprise Linux Virtualization Guide
• Capítulo 6: Generalidades de instalación de guest virtualizado
Red Hat Enterprise Linux Virtualization Guide
• Capítulo 7: Instalación de Red Hat Enterprise Linux 6 como un guest virtualizado
Página del manual: virt-manager(1)
Capítulo 15. Administrar máquinas virtuales
240 RH200-6-es-2-20110115
Práctica Lista de verificación de rendimiento
Instalación de guest virtual
En este ejercicio de laboratorio, deberá instalar una nueva máquina virtual con Red HatEnterprise Linux usando virt-manager y el instalador gráfico. Una vez que haya realizadocorrectamente este ejercicio de laboratorio, deberá quitar tanto la máquina virtual como suvolumen lógico para recuperar los recursos del sistema que se necesitarán para otros ejerciciosde laboratorio.
Realice los pasos siguientes en desktopX:
Apague correctamente la máquina virtual serverX (vserver) para recuperar losrecursos de memoria RAM y CPU del sistema.
Cree un volumen lógico de 10 GB desde el grupo de volúmenes vol0 y colóquele elnombre guest.
Cree una máquina virtual de Red Hat Enterprise Linux 6 con las siguientescaracterísticas:
• Nombre = guest
• Medios de instalación = instalación de red desde http://instructor.example.com/pub/rhel6/dvd
• Memoria (RAM) = 768 MB
• CPU = 1
• Dispositivo de almacenamiento = el volumen lógico creado en el paso anterior
Cuando se inicie la instalación, elija el teclado y el idioma. Cree su sistema guest segúnlas siguientes especificaciones:
• Cuando se le pregunte acerca del dispositivo de bloque Virtio, elija Re-initializeall.
• Elija la zona horaria apropiada.
• Asigne redhat como contraseña de usuario root.
• Elija el conjunto de software de escritorio.
• Use los valores predeterminados para todo lo demás.
Configuración de guests para su inicio durante el proceso de arranque
RH200-6-es-2-20110115 241
Configuración de guests para su inicio durante elproceso de arranque
Práctica Ejercicio grupal
Investigación y aprendizaje sobre el arranqueautomático de máquinas virtuales
¿Qué pasos debe seguir para configurar un guest virtual para que se inicie automáticamentedurante el proceso de arranque?
1. Iniciar el Administrador de máquina virtual.
2. Hacer doble clic en el perfil de la máquina virtual guest.
3.
4.
5. Marcar o desmarcar la casilla de verificación Start virtual machine on host boot up y hacerclic en Apply.
6. Agregar lo siguiente al archivo /etc/sysconfig/libvirt-guests:
ON_BOOT=ignore
Capítulo 15. Administrar máquinas virtuales
242 RH200-6-es-2-20110115
Práctica Lista de verificación de rendimiento
Configuración de máquinas virtuales durante elproceso de arranque
Configure la máquina virtual serverX (vserver) para que no se inicie durante el procesode arranque.
Configure la máquina virtual guest para que se inicie durante el proceso de arranque.
Vuelva a arrancar la máquina física (desktopX).
Confirme que la máquina virtual guest se haya iniciado automáticamente.
Configure la máquina virtual guest para que no se inicie durante el proceso de arranque.
Vuelva a arrancar la máquina física (desktopX).
Confirme que la máquina virtual no se inicie automáticamente.
IMPORTANTE: Después de realizar correctamente este ejercicio de laboratorio, eliminela máquina virtual guest y el volumen lógico que esta usa para almacenamiento. Esosrecursos deberán estar disponibles para la prueba de criterios.
Prueba de criterios
RH200-6-es-2-20110115 243
Prueba
Prueba de criterios
Caso de estudio
Estación de trabajo virtual para William Wonderboy
William Wonderboy acaba de ingresar a la compañía como desarrollador de software. Necesitauna máquina propia para escribir códigos y realizar pruebas sin interferir en el trabajo de losdemás. Se le ha asignado a usted la tarea de crear una máquina virtual para que la use William.
Cree una máquina virtual con el nombre wonderboy con un dispositivo de almacenamiento deLVM con el nombre /dev/vol0/wonderboy. Use los medios de instalación que se encuentranen el siguiente URI:
• http://instructor.example.com/pub/rhel6/dvd
La máquina virtual del Sr. Wonderboy debe tener una memoria RAM de 768 MB y 10 GB dealmacenamiento en disco.
Use la dirección IP estática 192.168.0.200+X/24 con una puerta de enlace y el servidor DNS192.168.0.254. Establezca hostX.example.com como nombre de host.
Elija una zona horaria apropiada. Use redhat como contraseña del usuario root.
El disco virtual debe particionarse de la siguiente manera (deberá volver a inicializar el disco):
• 250 MB para /boot
• 1 GB para espacio de intercambio
• 6 GB para /
• El resto del espacio asignado a /home
Elija el conjunto de software Software Development Workstation.
Una vez que finalice la instalación, configure NTP para que se conecte coninstructor.example.com.
Configure esta máquina para que se inicie automáticamente cuando vuelva a arrancar el hostfísico.
¿Cómo trataría el caso de estudio descrito anteriormente? Tome nota de su proceso en elespacio provisto a continuación y después impleméntelo.
Capítulo 15. Administrar máquinas virtuales
244 RH200-6-es-2-20110115
Notas personales
Prueba de criterios
RH200-6-es-2-20110115 245
Resumen de la unidad
Introducción a la virtualización de KVM
En esta sección, aprendió a:
• Describir la función básica, los componentes y los beneficios de la virtualización deKVM
.Instalación de guest virtual
En esta sección, aprendió a:
• Instalar un guest virtual según las especificaciones
.Configuración de guests para su inicio durante el proceso de arranque
En esta sección, aprendió a:
• Configurar el guest para que se inicie cuando arranque el host de virtualización
.
246
RH200-6-es-2-20110115 247
UNIDAD DIECISÉIS
INSTALACIÓN AUTOMATIZADADE RED HAT ENTERPRISELINUX
IntroducciónTemas tratados en esta unidad:
• system-config-kickstart
• Archivo kickstart del servidor
• Medios de instalación
• Realizar la instalación de Kickstart
• Detalles del archivo kickstart
Capítulo 16. Instalación automatizada de Red Hat Enterprise Linux
248 RH200-6-es-2-20110115
Generalidades de introducciónMediante el uso de Kickstart,un administrador de sistemas puede crear un solo archivo quecontenga las respuestas a todas las preguntas comúnmente formuladas durante una instalación.El instalador puede acceder a este archivo para la instalación automatizada de Red HatEnterprise Linux.
ComparaciónEn Red Hat Enterprise Linux, Kickstart es similar a la iniciación rápida de Oracle Solaris o a lainstalación desatendida de Microsoft Windows.
Pasos básicos:
1. Crear un archivo kickstart 2. Poner el archivo kickstart a disposicióndel instalador
3. Arrancar el instalador 4. Apuntar el instalador al archivo kickstart
Tabla 16.1. Pasos de kickstart
ReferenciasRed Hat Enterprise Linux Installation Guide
• Capítulo 32: Instalaciones con kickstart
Crear un archivo kickstart con system-config-kickstart
RH200-6-es-2-20110115 249
Crear un archivo kickstart con system-config-kickstart
1. Crear un archivo kickstart
• Con system-config-kickstart
• Con un editor de textos
2. Poner el archivo kickstart a disposicióndel instalador
3. Arrancar el instalador 4. Apuntar el instalador al archivo kickstart
Tabla 16.2. Pasos de kickstart
La herramienta system-config-kickstart presenta una serie de cuadros de diálogo. Cadacuado de diálogo corresponde a una categoría de preguntas comúnmente formuladas por elinstalador interactivo. system-config-kickstart no proporciona valores predeterminadospara todos los elementos. En un archivo kickstart, si no se determinan los valores requeridos, elinstalador solicitará una repuesta interactivamente o abortará la instalación por completo.
ReferenciasRed Hat Enterprise Linux Installation Guide
• Capítulo 33: Configurador de kickstart
Capítulo 16. Instalación automatizada de Red Hat Enterprise Linux
250 RH200-6-es-2-20110115
Práctica Caso de estudio
Creación de un archivo kickstart con system-config-kickstart
Realice este ejercicio en su máquina desktopX como student.
En este ejercicio, su organización implementará estaciones de trabajo basadas en Red HatEnterprise Linux para los ingenieros y se le ha solicitado que cree un archivo kickstart parafacilitar la tarea.
Usted instalará system-config-kickstart y lo usará para crear un archivo kickstart deacuerdo con los parámetros especificados a continuación:
• Elija la zona horaria adecuada.
• La contraseña del usuario root debe ser redhat.
• Kickstart debe realizar una instalación nueva desde el servidor web http://instructor.example.com/pub/rhel6/dvd.
• El sistema debe tener un sistema de archivos ext4 de 100 MB montado en /boot.
• El sistema debe tener una partición de intercambio de 512 MB.
• El espacio en disco restante debe asignarse a una partición ext4 montada en /.
• El dispositivo eth0 debe iniciarse durante el proceso de arranque y usar DHCP para laconfiguración.
• Instale el grupo de paquetes Base.
• Establezca un script posterior a la instalación que agregue:
ENGINEERING WORKSTATION
al archivo /etc/issue.
• Guarde el archivo kickstart como /home/student/engineer.cfg.
¿Cómo trataría el caso de estudio descrito anteriormente? Tome nota de su proceso en elespacio provisto a continuación y después impleméntelo.
Poner el archivo kickstart a disposición de los instaladores
RH200-6-es-2-20110115 251
Poner el archivo kickstart a disposición de losinstaladores
1. Crear un archivo kickstart 2. Poner el archivo kickstart adisposición del instalador
• Servidores de red: FTP, HTTP o NFS
• Servidor DHCP/TFTP
• Disco USB o CD-ROM
• Disco duro local
3. Arrancar el instalador 4. Apuntar el instalador al archivo kickstart
Tabla 16.3. Pasos de kickstart
Para iniciar una instalación automática, el instalador debe poder acceder al archivo kickstart.Hay varias formas para hacer que el archivo kickstart esté disponible, y una de las más comuneses a través de un servidor de red como un servidor FTP, un servidor web o un servidor NFS. Estemétodo es bastante fácil de implementar y facilita la administración de los cambios.
Usar un servidor DHCP con TFTP y PXE es más complejo de configurar, y no todas lasubicaciones permiten este método. Si desea configurar kickstart con este método, siga ladocumentación detallada en las referencias siguientes.
Proporcionar el archivo kickstart en USB o CD-ROM puede ser una forma conveniente paraacceder al archivo. Sólo coloque el archivo kickstart en los medios de arranque utilizados parainiciar la instalación. Sin embargo, debe tener cuidado al modificar el kickstart, ya que deberámodificarlo en todos los medios.
Puede resultar útil proporcionar el archivo kickstart en el disco local. Esto permite reconstruir elservidor de desarrollo rápidamente.
ReferenciasRed Hat Enterprise Linux Installation Guide
• Sección 32.8 (Archivo kickstart a disposición)
Capítulo 16. Instalación automatizada de Red Hat Enterprise Linux
252 RH200-6-es-2-20110115
Práctica Ejercicio
Poner el archivo kickstart a disposición de losinstaladores a través de HTTP
Realice los siguientes pasos con cuidado. Si tiene algún problema o alguna duda, consulte con suinstructor.
1. Inicie sesión en desktopX como student..
2. Conviértase en root e implemente un servidor web.
notaRecuerde que debe instalar, iniciar, habilitar y probar.
3. Copie /home/student/engineer.cfg en /var/www/html/.
4. Acceda a http://desktopX/engineer.cfg de un navegador web para verificar la disponibilidad.
Crear medios de arranque
RH200-6-es-2-20110115 253
Crear medios de arranque
1. Crear un archivo kickstart 2. Poner el archivo kickstart a disposicióndel instalador
3. Arrancar el instalador
• Discos de instalación
• PXE
• boot.iso
4. Apuntar el instalador al archivo kickstart
Tabla 16.4. Pasos de kickstart
En versiones anteriores de Red Hat Enterprise Linux, el archivo boot.iso se encontraba enel directorio images/ en los medios de instalación. En Red Hat Enterprise Linux 6 se lo debedescargar en forma individual de Red Hat Network.
Para crear un CD, use cdrecord boot.iso.
Para crear un stick USB, use dd if=boot.iso of=/dev/sdb1; no obstante, tenga en cuentaque el nombre /dev/sdb1 variará según la asignación dinámica de los nombres de dispositivo.
Se puede utilizar PXE para iniciar la instalación desde la red. La configuración de PXE es bastantecomplicada y es posible que no esté permitido en su ubicación, pero se lo puede utilizar parainiciar una instalación a través de la red.
ReferenciasRed Hat Enterprise Linux Installation Guide
• Sección 2.3: Creación de medios mínimos de arranque
Capítulo 16. Instalación automatizada de Red Hat Enterprise Linux
254 RH200-6-es-2-20110115
Apuntar el instalador al archivo kickstart
1. Crear un archivo kickstart 2. Poner el archivo kickstart a disposicióndel instalador
3. Arrancar el instalador 4. Apuntar el instalador al archivokickstart
• ks=http://server/dir/file
• ks=ftp://server/dir/file
• ks=nfs:server:/dir/file
• ks=hd:device:/dir/file
• ks=cdrom:/dir/file
Tabla 16.5. Pasos de kickstart
Una vez que haya elegido el método de kickstart, informe al instalador dónde se encuentra elarchivo kickstart.
Para la instalación de una máquina virtual, puede proporcionar la URL de kickstart en uncuadro debajo de URL Options. Para una máquina física, arranque el sistema con los medios deinstalación y presione la tecla Tab; luego, ingrese una de las entradas ks= que figuran arriba.
En el entorno del salón de clase, intentaremos replicar una instalación física usando máquinasvirtuales. Cree una nueva máquina virtual y elija PXE como el método de instalación. PXEproporcionará una pantalla de arranque al igual que cuando se arranca desde medios deinstalación. Con la opción Install or upgrade an existing system resaltada, presione la tecla Tab.Aparecerá la línea de arranque que figura a continuación:
> vmlinuz initrd=initrd.img_
Agregue un espacio y luego una de las entradas de kickstart. A continuación se incluyen algunosejemplos, incluida la línea de arranque completa. Estos ejemplos utilizan un archivo kickstart conel nombre ks.cfg, pero podría ser cualquier nombre. Una vez que haya ingresado la ubicaciónde kickstart, presione Enter para iniciar la instalación.
> vmlinuz initrd=initrd.img ks=http://desktopX/ks.cfg
Apuntar el instalador al archivo kickstart
RH200-6-es-2-20110115 255
> vmlinuz initrd=initrd.img ks=ftp://desktopX/pub/ks.cfg
> vmlinuz initrd=initrd.img ks=nfs:desktopX/var/ftp/pub/ks.cfg
> vmlinuz initrd=initrd.img ks=hd:sdb1:/kickstart-files/ks.cfg
> vmlinuz initrd=initrd.img ks=cdrom:/kickstart-files/ks.cfg
ReferenciasRed Hat Enterprise Linux Installation Guide
• Sección 32.8: Archivo kickstart a disposición
Red Hat Enterprise Linux Installation Guide
• Sección 28.4: Automatización de la instalación con kickstart
Red Hat Enterprise Linux Installation Guide
• Sección 28.2: Fuentes de kickstart
Capítulo 16. Instalación automatizada de Red Hat Enterprise Linux
256 RH200-6-es-2-20110115
Práctica Ejercicio
Inicio de una instalación kickstartAntes de comenzar...Apague correctamente su máquina virtual serverX (vserver) para recuperar los recursos delsistema.
Apague correctamente su máquina virtual wonderboy. Elimine la máquina virtual y el discoutilizado para esta máquina.
Realice los siguientes pasos con cuidado. Si tiene algún problema o alguna duda, consulte con suinstructor.
Use el archivo kickstart creado anteriormente (engineer.cfg) para implementar una nuevamáquina virtual.
1. En desktopX, cree una nueva máquina virtual con virt-manager. Elija Network Boot(PXE) como el método de instalación. Configure la máquina virtual con los valorespredeterminados si no están especificados a continuación:
• Nombre: ingeniero
• Create a disk image on the computer's hard drive: 4 GB
2. Cree e ingrese una línea de invocación de kickstart adecuada para el archivoengineer.cfg; luego, inicie la instalación.
Modificar un archivo kickstart
RH200-6-es-2-20110115 257
Modificar un archivo kickstartEn cada instalación, el instalador (anaconda) creará /root/anaconda-ks.cfg, que contendrála configuración utilizada para generar este sistema.
notaLa información sobre partición incluye comentarios.
Ejemplo de archivo kickstart:
# Kickstart file automatically generated by anaconda.
#version=RHEL6installurl --url=ftp://instructor.example.com/pub/rhel6/dvdlang en_US.UTF-8keyboard usnetwork --device eth0 --bootproto dhcprootpw --iscrypted $1$UaJVgaTh$KrpFf3K04r9hCZ2hsaa# Reboot after installationrebootfirewall --disabledauthconfig --useshadow --enablemd5selinux --enforcingtimezone --utc America/New_Yorkbootloader --location=mbr --driveorder=vda --append="crashkernel=auto rhgb quiet"# The following is the partition information you requested# Note that any partitions you deleted are not expressed# here so unless you clear all partitions first, this is# not guaranteed to work#clearpart --all --drives=vda
#part /boot --fstype=ext4 --size=100#part pv.ZS1CDM-iUYu-Gfua-YX0W-MSzd-ftBY-7qTB1E --size=28000#part swap --size=512#volgroup vol0 --pesize=32768 pv.ZS1CDM-iUYu-Gfua-YX0W-MSzd-ftBY-7qTB1E#logvol /home --fstype=ext4 --name=home --vgname=vol0 --size=500#logvol / --fstype=ext4 --name=root --vgname=vol0 --size=8192repo --name="Red Hat Enterprise Linux" --baseurl=ftp://instructor.example.com/pub/rhel6/dvd/ --cost=100
%packages@Base@Console internet tools@Core@Desktop@Desktop Platform@Development Tools@General Purpose Desktop@Graphical Administration Tools@Internet Browser@Network file system client@Printing client@X Window Systemlftp
Capítulo 16. Instalación automatizada de Red Hat Enterprise Linux
258 RH200-6-es-2-20110115
muttntp%end
%post# Turn on graphical loginperl -pi -e 's,id:3:initdefault,id:5:initdefault,' /etc/inittab%end
¿Por qué desearía editar manualmente un archivo kickstart?
1. La GUI o system-config-kickstart no está disponible.
2. Se requieren instrucciones de LVM.
3. Los paquetes individuales se deben incluir u omitir (no sólo los grupos).
Si edita manualmente un archivo kickstart, use ksvalidator para validar su archivo kickstart.ksvalidator es parte del paquete system-config-kickstart, por lo que es posible queprimero deba instalar el paquete. ksvalidator se asegurará de que las palabras clave se usencorrectamente, pero no validará rutas de URL, paquetes o grupos individuales ni ninguna partede %post o %pre.
Por ejemplo, si escribe mal firewall --disabled, podrá obtener el siguiente resultado deksvalidator:
[student@desktopX]$ ksvalidator /tmp/anaconda-ks.cfgThe following problem occurred on line 12 of the Kickstart file:
Unknown command: frewall
[student@desktopX]$ ksvalidator /tmp/anaconda-ks.cfgThe following problem occurred on line 12 of the Kickstart file:
no such option: --dsabled
ReferenciasRed Hat Enterprise Linux Installation Guide
• Sección 32.4: Opciones de kickstart
Red Hat Enterprise Linux Installation Guide
• Sección 32.5: Selección de paquetes
Red Hat Enterprise Linux Installation Guide
• Sección 32.6: Script previo a la instalación
Red Hat Enterprise Linux Installation Guide
• Sección 32.7: Script posterior a la instalación
Modificar un archivo kickstart
RH200-6-es-2-20110115 259
Práctica Caso de estudio
Modificar un archivo kickstart sin system-config-kickstart
notaPor cuestiones de tiempo, no realizará una instalación usando este archivo kickstart.
Como root en desktopX, cree una copia de /root/anaconda-ks.cfg con el nombre /home/student/projman.cfg. Mediante el uso de un editor de textos solamente, modifique esearchivo de modo que cumpla con los siguientes criterios:
1. La instalación debe ser totalmente automática y debe ser exactamente igual a la instalaciónactual de desktopX (incluidas las particiones), a excepción de que...
• Se instalará el grupo de paquetes Backup Server.
• Se instalará el paquete mtx, que no se instala con el grupo Backup Server de modopredeterminado.
• No se utilizará ninguno de los scripts existentes de %pre y %post.
• Se creará un archivo /etc/issue en %post, con el nombre:
PROJECT MANAGEMENT
2. ksvalidator debe poder validar el archivo.
Una vez completo todo esto, copie el archivo en /var/www/html/.
¿Cómo trataría el caso de estudio descrito anteriormente? Tome nota de su proceso en elespacio provisto a continuación y después impleméntelo.
Capítulo 16. Instalación automatizada de Red Hat Enterprise Linux
260 RH200-6-es-2-20110115
Prueba
Prueba de criterios
Lista de verificación de rendimiento
Instalar una máquina virtual con kickstartAntes de comenzar...Apague la máquina virtual engineer que creó anteriormente y elimine la máquina virtual y sudisco.
Arranque serverX si no se está ejecutando. Copie el archivo /root/anaconda-ks.cfgde serverX a desktopX y asígnele /home/student/test.cfg como el nombre. ApagueserverX una vez que haya copiado el archivo, para recuperar los recursos del sistemapara el resto del ejercicio de laboratorio.
Modifique test.cfg según los siguientes criterios:
• Agregue clearpart --all y zerombr, y particione el almacenamiento según losiguiente:
• /boot (ext4): 200 MB
• Intercambio: 512 MB
• / (ext4): 3 GB
• Agregue el paquete gimp.
• Cree un archivo /root/install-date con la fecha y la hora.
Copie test.cfg en /var/www/html/ en desktopX. Asegúrese de que el archivo puedaleerse con Apache. Inicie el demonio httpd si aún no está ejecutándose.
Cree un volumen lógico en el grupo de volúmenes vol0 con el nombre test, losuficientemente grande como para funcionar como el disco para la máquina virtual.
Inicie la instalación de una máquina virtual usando su archivo kickstart test.cfg.Asigne test como nombre a la máquina virtual. Use PXE como el método de instalacióny asigne 768 MB de memoria RAM y 1 CPU a la máquina virtual. Use el volumen lógicoque creó en el paso anterior como el almacenamiento para la máquina virtual.
Vuelva a arrancar la máquina virtual cuando finalice la instalación y confirme que sehaya instalado correctamente.
Modificar un archivo kickstart
RH200-6-es-2-20110115 261
Notas personales
Capítulo 16. Instalación automatizada de Red Hat Enterprise Linux
262 RH200-6-es-2-20110115
Resumen de la unidad
Crear un archivo kickstart con system-config-kickstart
En esta sección, aprendió a:
• Crear una configuración de Kickstart desde el inicio con la utilidad system-config-kickstart
• Identificar los principales elementos de configuración que se encuentran en unarchivo de configuración de Kickstart
.Poner el archivo kickstart a disposición de los instaladores
En esta sección, aprendió a:
• Poner una configuración de Kickstart a disposición del instalador a través de la red(NFS, FTP o HTTP)
• Poner una configuración de Kickstart a disposición del instalador a través de medioslocales
.Crear medios de arranque
En esta sección, aprendió a:
• Crear medios de arranque para iniciar el instalador
• Arrancar desde la red para iniciar el instalador
.Apuntar el instalador al archivo kickstart
En esta sección, aprendió a:
• Realizar una instalación mediante el uso del archivo de configuración de Kickstartahora disponible
.Modificar un archivo kickstart
En esta sección, aprendió a:
• Modificar una configuración de Kickstart existente con la utilidad system-config-kickstart o un editor de textos
.
RH200-6-es-2-20110115 263
Apéndice A. Soluciones
Configuración de red y solución de problemasPráctica Cuestionario
Visualización y modificación de la configuración dered1. Complete la tabla a continuación con comandos, utilidades y nombres de archivo.
Categoría deconfiguración Ver configuración actual Cambiar configuración
Dirección IP y máscara desubred ip addr
NetworkManager o /etc/sysconfig/network-scripts/ifcfg-eth*
Enrutamiento o puerta deenlace predeterminada ip route
NetworkManager, /etc/sysconfig/network-scripts/ifcfg-eth*o /etc/sysconfig/network
Nombre de host delsistema hostname
NetworkManager,hostname o /etc/sysconfig/network
Resolución de nombreshost puede usarse pararesolver nombres. /etc/hosts y /etc/resolv.conf muestran laconfiguración actual.
NetworkManager, /etc/hosts o /etc/resolv.conf
Apéndice A. Soluciones
264 RH200-6-es-2-20110115
Categoría deconfiguración Ver configuración actual Cambiar configuración
Tabla A.1. Configuración de red desde la línea de comando
2. ¿Qué contiene un ifcfg-eth0 dinámico?
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=yes
3. ¿Qué contiene un ifcfg-eth0 estático?
DEVICE=eth0ONBOOT=yesBOOTPROTO=staticIPADDR=192.168.0.X+100PREFIX=24GATEWAY=192.168.0.254DNS1=192.168.0.254
Práctica Ejercicio
Documentar la configuración de red
Antes de dividir la configuración de la red, documentemos la configuración actual en el sistemade serverX.
1. Inicie sesión en serverX como usuario root.
2. a. ¿Cuál es la dirección IP actual?
192.168.0.X+100
Se obtiene al ejecutar ip addr.
b. ¿Cuál es la máscara de subred CIDR actual?
/24
Se obtiene al ejecutar ip addr.
c. ¿Cuál es la puerta de enlace predeterminada actual?
Prueba de criterios
RH200-6-es-2-20110115 265
192.168.0.254
Se obtiene al ejecutar ip route.
d. ¿Cuál es el nombre de host actual?
serverX.example.com
Se obtiene al ejecutar hostname.
e. ¿Cuáles son los servidores DNS actuales?
192.168.0.254
Se obtienen al ejecutar cat /etc/resolv.conf
Prueba
Prueba de criterios
Ejercicio
Solución de problemas de configuración de red desde la línea decomando
Todas las siguientes acciones deben ejecutarse en su servidor virtual, serverX. Comenzará porejecutar un script que "dividirá" la configuración de la red. Tendrá diez minutos para solucionarcada uno de los tres problemas. Asegúrese de documentar lo que encuentre, ya que al finalrealizaremos una revisión.
1. Ejecute el primer script para generar un error de configuración en la red:
lab-break-net 1
2. Síntoma: Un navegador web no puede acceder a la página web en http://instructor.remote.test.
3. Realice los tres pasos: PROBAR, VERIFICAR y REPARAR para identificar y solucionar elproblema.
4. Documente lo que encuentre.
SOLUCIÓN: El nombre de host instructor.remote.test no se resuelve en una direcciónIP, ya que /etc/resolv.conf apunta al servidor DNS incorrecto. Corrección delproblema: modificar /etc/sysconfig/network-scripts/ifcfg-eth0 para obtenerDNS1=192.168.0.254.
5. Ejecute el segundo script para generar un error de configuración en la red:
lab-break-net 2
Apéndice A. Soluciones
266 RH200-6-es-2-20110115
6. Síntoma: Un navegador web no puede acceder a la página web en http://instructor.remote.test.
7. Realice los tres pasos: PROBAR, VERIFICAR y REPARAR para identificar y solucionar elproblema.
8. Documente lo que encuentre.
SOLUCIÓN: El host instructor.remote.test está en otra red y no es accesible. ip routemuestra que la puerta de enlace predeterminada apunta al enrutador incorrecto. Correccióndel problema: modificar /etc/sysconfig/network-scripts/ifcfg-eth0 para obtenerGATEWAY=192.168.0.254.
9. Ejecute el tercer script para generar un error de configuración en la red:
lab-break-net 3
10. Síntoma: Un navegador web no puede acceder a la página web en http://instructor.remote.test.
11. Realice los tres pasos: PROBAR, VERIFICAR y REPARAR para identificar y solucionar elproblema.
12. Documente lo que encuentre.
SOLUCIÓN: Ningún otro host es accesible, ya que ip addr muestra la dirección IP de lainterfaz eth0 que es incorrecta. Soluciónelo al modificar /etc/sysconfig/network-scripts/ifcfg-eth0 para obtener IPADDR=192.168.0.100+X.
Administración de usuarios y grupos
RH200-6-es-2-20110115 267
Administración de usuarios y gruposPráctica Ejercicio
Crear usuarios mediante el uso de las herramientas dela línea de comandoCree una cantidad de usuarios en el sistema de serverX y establezca una contraseña inicial(indique en los espacios en blanco a continuación).
Coloque los usuarios creados en grupos tal como se indica aquí.
Grupo Nombre del grupo Lista de usuarios
Profesores profs faraday, juliet, elvis
Estudiantes deposgrado
grads jack, kate, james, elvis
Practicantes deverano
interns walt, ben, claire, hugo, elvis
Tabla A.2. Asignaciones de usuarios y grupos
Tenga en cuenta que deberá crear un usuario adicional con el nombre elvis, que deberácolocarse en los tres grupos.
1. Inicie sesión en serverX como usuario root.
2. Agregue el usuario juliet.
useradd juliet
3. Confirme que juliet se haya agregado mediante el uso del comando id.
id juliet
4. Confirme que juliet se ha agregado al examinar el archivo /etc/passwd.
grep 'juliet' /etc/passwd
5. Use el comando passwd para inicializar la contraseña de juliet y escriba la contraseña aquí: .
passwd juliet
6. Continúe agregando el resto de los usuarios de la lista abajo, sin olvidar establecer unacontraseña inicial y escribirla al lado de cada nombre de usuario:
• faraday
• jack
• kate
• james
• walt
Apéndice A. Soluciones
268 RH200-6-es-2-20110115
• ben
• claire
• hugo
• elvis
Puede ejecutar los comandos useradd y passwd con el argumento de nombre de usuarioindividual.
Aunque no se aborde en este clase, también podría "establecer un script" para la operación;quizás algo así:
for NAME in faraday jack kate james walt ben claire hugo elvisdo useradd ${NAME} echo "password" | passwd --stdin ${NAME}done
7. Cree los grupos especificados en la tabla anterior y asigne los miembros correspondientesde cada grupo.
groupadd profsfor USERNAMES in faraday elvis; do usermod -aG profs ${USERNAMES}done
groupadd gradsfor USERNAMES in jack kate james elvis; do usermod -aG grads ${USERNAMES}done
groupadd internsfor USERNAMES in walt ben claire hugo elvis; do usermod -aG interns ${USERNAMES}done
Práctica Cuestionario
Mantenimiento de cuentas1. ¿Qué comando bloquearía la cuenta de elvis?
usermod -L elvis
2. ¿Qué comando la desbloquearía?
usermod -U elvis
3. ¿Qué comando haría que la cuenta de elvis caducara el 15 de marzo de 2012?
chage -E 2012-03-15 elvis
Administración de usuarios y grupos
RH200-6-es-2-20110115 269
Práctica Cuestionario
Configuración de cliente LDAP1. ¿Cuáles son los siete datos que generalmente proveen los servicios de Información de
cuenta de usuario?
username:password:UID:GID:GECOS:/home/dir:shell
2. ¿Qué "otro" tipo de información puede proveer un servicio de directorio de red ?Método de autenticación
3. ¿Cuáles son los tres datos que deben configurarse en una máquina cliente para obtenerinformación de usuario de un servicio de directorio LDAP?
Nombre de host completo del servidor, DN de base y certificado CA.
4. ¿Qué función ejecuta el comando getent passwd ldapuser1? ¿Por qué es útil?
El comando getent passwd ldapuser1 imprime la información de la cuentapara el usuario ldapuser1. Resulta útil para buscar información sobre cuentas deusuario, como directorios hogar, intérprete de comandos, nombres, etc.
Práctica Caso de estudio
Automontaje de directorios NFS
Estos pasos deben ejecutarse en serverX.
Su compañía va a incorporar varios clientes nuevos:
1. Organization of Secret Hidden Undertakings (OSHU)
2. Race Along the Lake Investments, Inc. (RALII)
Su compañía tiene un nuevo servidor NFS con recursos compartidos para almacenar archivosrelacionados con esos clientes "especiales" con el nombre instructor.example.com, queactualmente contiene dos recursos compartidos (/var/nfs/oshu y /var/nfs/ralii) con laperspectiva de que se agregarán más a medida que se incorporen nuevos clientes.
Las estaciones de trabajo deben usar autofs para montar automáticamente estos recursoscompartidos en /special/oshu y /special/ralii, respectivamente, con permisos de sólolectura.
Dada la perspectiva de que nuevos clientes se incorporarán en breve, implemente eso medianteel uso de metacaracteres y comodines autofs.
1. Modifique la configuración del programa de automontaje en serverX de modo que en elcaso de acceso a cualquier directorio en /special, el programa de automontaje montarála exportación de NFS instructor.example.com:/var/nfs/dirname allí, si esaexportación existe. En este ejemplo, "dirname" hace referencia a cualquier nombre dedirectorio posible:
# cat /etc/auto.master/special /etc/auto.special# cat /etc/auto.special
Apéndice A. Soluciones
270 RH200-6-es-2-20110115
* -ro instructor.example.com:/var/nfs/&
2. Recargue el servicio con service autofs reload.
3. Pruebe accediendo de forma alternativa al contenido de /special/oshu y /special/ralii.
Prueba
Prueba de criterios
Ejercicio
Obtener información de usuarios de red desde un servicio dedirectorio LDAP
Ahora configurará serverX para obtener información acerca de los usuarios de red desde unservidor de directorio LDAP disponible para todas las máquinas en la clase.
Esta es la información que se le proporcionó acerca del servidor LDAP:
• Nombre de host: instructor.example.com
• DN de la base de búsqueda: dc=example,dc=com
• Certificado CA: http://instructor.example.com/pub/EXAMPLE-CA-CERT 1
Luego configurará serverX para montar automáticamente los directorios hogar de los usuariosde red basada en LDAP cuando inicien sesión.
Esta es la información que se le proporcionó acerca del servidor de almacenamiento NFS quecontiene los directorios hogar:
• Nombre de host: instructor.example.com
• Directorio exportado: /home/guests/
1. Inicie sesión en serverX como usuario root. Si usa ssh, incluya la opción -X para reenviarinterfaces gráficas a su estación de trabajo.
2. Use system-config-authentication para configurar serverX para obtener informaciónde usuarios de red desde el servidor LDAP de la clase.
1. Para "User Account Database", elija LDAP.
a. Para "LDAP Search Base DN:", ingrese dc=example,dc=com.
b. Para LDAP Server:, ingrese instructor.example.com.
c. Seleccione la casilla de verificación "Use TLS to encrypt connects".
d. Elija "Download CA Certificate..." e ingrese http://instructor.example.com/pub/example-ca.crt.
Administración de usuarios y grupos
RH200-6-es-2-20110115 271
2. Para "Authentication Method", elija LDAP.
3. Elija Apply.
3. Use el comando id para confirmar que el usuario ldapuserX (reemplace X por el númerode su estación) está definido en el sistema.
[root@server1 ~]# id ldapuser1uid=1701(ldapuser1) gid=1701(ldapuser1) groups=1701(ldapuser1)
4. Use el comando getent para buscar la información de usuario de ldapuser1.
[root@server1 ~]# getent passwd ldapuser1ldapuser1:*:1701:1701:LDAP Test User 1:/home/guests/ldapuser1:/bin/bash
5. Inicie sesión en serverX como ldapuserX o cualquiera de los otros usuarios de red, conla contraseña "password". (No se preocupe si obtiene un mensaje de error al iniciar sesiónacerca de un directorio hogar no existente; está previsto).
[student@desktop1 ~]# ssh ldapuser1@server1ldapuser1@server1's password: passwordCould not chdir to home directory /home/guests/ldapuser1: No such file or directory-bash-4.1$
6. Modifique la configuración del programa de automontaje en serverX de modo que si seaccede a cualquier directorio ldapuserX en /home/guests, el programa de automontajeintente montar el directorio NFS exportado equivalente de instructor.example.com:/home/guests/ldapuserX (sugerencia: usar el sintaxis comodín).
1. Agregue la siguiente línea en /etc/auto.masters.
/home/guests /etc/auto.guests
2. Cree el archivo /etc/auto.guests con la siguiente línea simple.
* -rw,hard,intr instructor.example.com:/home/guests/&
3. Reinicie el programa de automontaje. (Nota: En las primeras versiones de Red HatEnterprise Linux 6, el script del servicio autofs tiene un error, y el estándar restart nofunciona.
[root@server1 ~]# service autofs stopStopping automount: [ OK ][root@server1 ~]# service autofs startStarting automount: [ OK ]
7. Inicie sesión en serverX como ldapuserX, donde X es su número de estación, con lacontraseña "contraseña". El directorio hogar del usuario debe montarse automáticamente.
[student@desktop1 ~]$ ssh ldapuser1@server1
Apéndice A. Soluciones
272 RH200-6-es-2-20110115
The authenticity of host 'server1 (192.168.0.101)' can't be established.RSA key fingerprint is 33:fa:a1:3c:98:30:ff:f6:d4:99:00:4e:7f:84:3e:c3.Are you sure you want to continue connecting (yes/no)? yesWarning: Permanently added 'server1,192.168.0.101' (RSA) to the list of known hosts.ldapuser1@server1's password: passwordLast login: Thu Dec 16 14:59:49 2010 from instructor.example.com[ldapuser1@server1 ~]$ pwd/home/guests/ldapuser1[ldapuser1@server1 ~]$ df Filesystem 1K-blocks Used Available Use% Mounted on...instructor.example.com:/home/guests/ldapuser1 1032192 36864 943104 4% /home/guests/ldapuser1
Administración de procesos de línea de comando
RH200-6-es-2-20110115 273
Administración de procesos de línea de comando
Práctica Lista de verificación de rendimiento
Inicio de herramientas gráficas desde BASH
Inicie sesión de forma gráfica en su host serverX como student.
Abra una ventana de terminal.
En esa ventana, cambie a un intérprete de comandos root.
[student@serverX ~]$ su -Password: redhat[root@serverX ~]#
Inicie nautilus en primer plano desde la línea de comando.
[root@serverX ~]# nautilus
Use el método abreviado del teclado para recuperar su señal del intérprete de comandossin finalizar el proceso.
[root@serverX ~]# nautilus Ctrl+z [1]+ Stopped nautilus
Coloque a nautilus en segundo plano.
[root@serverX ~]# bg[1]+ nautilus &
Enumere sus trabajos actuales de intérprete de comandos.
[root@serverX ~]# jobs[1]+ Running nautilus &
Salga del intérprete de comandos de usuario root.
[root@serverX ~]# Ctrl+d [student@serverX ~]$
Práctica Ejercicio
Administración de procesosAntes de comenzar...
Apéndice A. Soluciones
274 RH200-6-es-2-20110115
En serverX ejecute el comando lab-setup-processes.
[root@serverX ~]# lab-setup-processes
1. Cambie la prioridad del proceso que está usando la mayoría de los recursos de CPU a 5.
[root@serverX ~]# top... PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND26669 root 22 2 3828 84 12 R 78.3 0.0 0:18.41 hippo26670 root 22 2 4008 280 156 S 21.2 0.1 0:04.94 process101...
En top, presione la tecla r para cambiar el valor de niceness de un proceso y luego ingreseel PID (26669 en el ejemplo de arriba). Presione 5 para cambiar el valor de niceness de unproceso por 5.
2. Finalice el proceso que está usando la mayoría de los recursos de memoria.
En top, presione la tecla M para ordenar por consumo de memoria.
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND26668 root 22 2 55032 50m 160 S 0.0 10.2 0:00.18 elephant
Presione la tecla k para forzar la finalización de un proceso. Ingrese el PID (26668 en elejemplo de arriba). Ingrese la señal, o simplemente acepte el valor predeterminado 15.
3. Ejecute lab-grade-processes en serverX para confirmar que usted haya identificado yadministrado los procesos correctos.
[root@serverX ~]# lab-grade-processes* Checking for terminated process... PASS* Checking for reniced process... PASS
4. Ejecute el comando lab-cleanup-processes para limpiar.
[root@serverX ~]# lab-cleanup-processes
Práctica Cuestionario
Programación de cronie1. ¿Cuándo se ejecutarán los siguientes trabajos?
a. 00 07 25 12 * /usr/local/bin/open_presents
A las 7 a. m. del día de Navidad
b. */5 * * * * /usr/local/bin/take_stats
Prueba de criterios
RH200-6-es-2-20110115 275
Cada 5 minutos
c. 07 03 * * * /sbin/service xend restart
Cada día a las 3:07 a. m.
d. 30 16 * * 5 /usr/local/bin/mail_checks
Cada viernes a las 4:30 p. m.
2. Cree una entrada de cron que ejecutaría el script /usr/local/bin/vacuum_db unavez al mes, el primer día del mes.
05 02 1 * * /usr/local/bin/vacuum_db
(Ciertamente, la hora y los minutos reales son arbitrarios).
3. En la pregunta anterior. ¿qué ocurre si la máquina estaba inactiva debido amantenimiento el primero de febrero? ¿Cuál sería la mejor forma de asegurarse de quela base de datos no opere 2 (o más) meses entre cada vaciado?
Escriba la tarea como un script del intérprete de comandos simple y suéltela en /etc/cron.monthly:
#!/bin/bash/usr/local/bin/vacuum_db
Prueba
Prueba de criterios
Las siguientes acciones deben ejecutarse en su máquina serverX.
Ejercicio
Administración de procesos
1. En su serverX, ejecute el script manage_processes_start.
2. La estación del servidor ahora estará muy lenta.
3. Determine qué proceso está usando una cantidad excesiva de memoria y finalícelo.
1. En un terminal, inicie el programa top.
2. En top, ingrese "O" para ver el menú de orden.
Apéndice A. Soluciones
276 RH200-6-es-2-20110115
3. Ingrese n para ordenar por uso de memoria.
4. Observe el PID del principal consumidor de memoria.
5. Ingrese k para forzar la finalización de un proceso.
6. Ingrese el PID del proceso que desea finalizar.
7. Presione <RETURN> para elegir el número de señal predeterminado 15.
4. Determine qué procesos están usando una cantidad excesiva de memoria de CPU y cambieel valor de niceness a 15.
1. En un terminal, inicie el programa top.
2. Observe los PID del principal consumidor de CPU.
3. Ingrese r para cambiar el valor de niceness de un proceso.
4. Ingrese el PID del proceso que al que desea cambiarle el valor de niceness.
5. Ingrese el nuevo valor de niceness 15.
6. Repita los 3 últimos pasos para cada proceso que esté usando una cantidad excesiva dememoria.
5. Cree un trabajo de cron de sistema que cada media hora reajuste todos los procesos quepertenecen al usuario elvis a un valor de niceness de 10.
Con un editor de texto, cree el archivo /etc/cron.d/nice_elvis con el siguientecontenido:
# Adjust the priority of processes owned by user elvis every half hour# to a nice value of 15.*/30 * * * * /usr/bin/renice -n 15 -u elvis
Obtener ayuda de Red Hat
RH200-6-es-2-20110115 277
Obtener ayuda de Red Hat
Práctica Ejercicio para ordenar
Trabajo con Red Hat Global Support Services (GSS)
A continuación, se detallan los pasos que se deben seguir para interactuar con Red Hat GlobalSupport Services (GSS). Marque el orden en que deben efectuarse los pasos:
4 Reunir información de diagnóstico relevante (información de registro, volcados principales,etc.)
7 Transferir la solicitud de asistencia a un técnico de su región1 Definir el problema6 Ponerse en contacto con Red Hat telefónicamente o por Internet5 Determinar el nivel de gravedad3 Reunir información básica2 Buscar en la documentación y en los artículos de la base de conocimiento
Apéndice A. Soluciones
278 RH200-6-es-2-20110115
Administrar recursos del sistema
Archivos de registro predeterminadosEscriba el nombre del archivo de registro al revisar el contenido de /etc/rsyslog.conf enserverX.
1. Todos los mensajes relacionados con autenticaciones van a /var/log/secure .
2. Todo lo relacionado con el correo electrónico va a /var/log/maillog .
3. Los mensajes relacionados con cron van a /var/log/cron .
4. Todos los otros mensajes enviados con prioridad info o mayor se guardan en /var/log/messages .
Práctica Cuestionario
Revisar rsyslogResponda las siguientes preguntas:
1. ¿Cuáles son los dos campos que se utilizan para la coincidencia de eventos de registro?
Recurso y prioridad
2. ¿Cuál es el efecto de un comodín en el primer campo?
Coincide con todos los recursos.
3. ¿Cuál es el efecto de un comodín en el segundo campo?
Coincide con todas las prioridades.
4. ¿Es posible registrar el mismo evento de registro en más de un registro?
Sí, irá a cualquier registro cuyos criterios coincidan.
Práctica Lista de verificación de rendimiento
Analizar un informe de resumen de registro
Determine la cantidad de espacio libre para el sistema de archivos raíz en función del últimoinforme de LogWatch en serverX.
Abra el correo electrónico de usuario root.
[root@serverX ~]# mail
Busque y lea el último informe de LogWatch.. Si no hay un informe de LogWatch, ejecuteel comando logwatch para generar uno en forma manual.
[root@serverX ~]# mail
Obtener ayuda de Red Hat
RH200-6-es-2-20110115 279
Heirloom Mail version 12.4 7/29/08. Type ? for help."/var/spool/mail/root": 1 message 1 new>N 1 [email protected] Tue Jan 1 00:25 96/2948 "Logwatch for serverX."& Enter
(use Space to scroll to the end)
... --------------------- Disk Space Begin ------------------------
Filesystem Size Used Avail Use% Mounted on /dev/mapper/vgsrv-root 3.3G 2.3G 876M 73% / /dev/vda1 248M 30M 206M 13% /boot /dev/mapper/vgsrv-home 248M 11M 225M 5% /home ---------------------- Disk Space End -------------------------
###################### Logwatch End #########################
Registre la cantidad de espacio libre para el sistema de archivos /:
En el ejemplo de arriba, 876M.
Práctica Caso de estudio
Redirigir los correos electrónicos de resumen deregistro
Cambie la configuración de logwatch en serverX para enviar los informes de resumen deregistro al usuario student en lugar del usuario root.
Pregunta adicional: ¿Cómo enviaría los informes de logwatch a student y a root?
1. Modifique el archivo /etc/logwatch/conf/logwatch.conf para incluirMailTo=student.
2. Para enviárselo tanto a student como a root, cambie la línea por:
MailTo = student root
3. Ejecute el comando logwatch:
[root@serverX]# logwatch
4. Verifique si los informes nuevos están en el correo electrónico de student y root.
Apéndice A. Soluciones
280 RH200-6-es-2-20110115
Prueba
Prueba de criterios
Caso de estudio
Mensajes de depuración de registro
Su compañía desea incluir una bitácora para depuración en su servidor para analizarla. Redirijatodos los mensajes de nivel de depuración (y de mayor prioridad) a un archivo con el nombre /var/log/debug.log.
1. Configure rsyslog para crear un debug.log en el directorio /var/log/, que recopile losmensajes de depuración de todos los servicios.
Agregue esta línea a /etc/rsyslog.conf:
*.debug /var/log/debug.log
2. Active los cambios realizados a rsyslog..
[root@serverX ~]# service rsyslog restartShutting down system logger: [ OK ]Starting system logger: [ OK ]
3. Use el comando logger para enviar un mensaje a rsyslogd con prioridad debug yverifique que el mensaje se haya registrado en el nuevo archivo de registro.
[root@serverX ~]# logger -p debug Testing debug[root@serverX ~]# tail /var/log/debug.log Jan 5 11:03:04 server1 root: Testing debug
Tenga en cuenta que el mensaje no aparecerá en /var/log/messages si lo configuró yprobó correctamente, ya que /var/log/messages sólo recibe mensajes con prioridadinfo y mayor (no debug).
Instalación y administración de software
RH200-6-es-2-20110115 281
Instalación y administración de software
Práctica Cuestionario
Registro de Red Hat Network1. La herramienta de la línea de comando que inicia el registro con Red Hat Network es
rhn_register.
2. La primera elección de registro determina si un sistema se registra con Hosted RHN oRHN Satellite.
3. Opcionalmente, es posible que se deba suministrar información de autenticación yservidor proxy web adicional.
4. Se debe suministrar un nombre de usuario RHN o una cuenta RHN y su respectivacontraseña para que el registro de Red Hat Network sea correcto.
5. Las últimas preguntas que se deben responder durante el proceso de registro son sobreel nombre del sistema y si se desea cargar información sobre perfiles de paquetes osoftware y hardware.
Práctica Ejercicio
Búsqueda e instalación de paquetes
Inicie sesión como usuario root.
1. Intente ejecutar el comando gnuplot. Se le indicará que no está instalado.
2. Busque paquetes de trazado.
yum search plot
3. Obtenga más información acerca del paquete gnuplot.
yum info gnuplot
4. Instale el paquete gnuplot.
yum install gnuplot
5. Intente quitar el paquete gnuplot, pero seleccione "no".
yum remove gnuplot
¿Cuántos paquetes se quitarían? 1
6. Intente quitar el paquete gnuplot-common, pero seleccione "no".
yum remove gnuplot-common
Apéndice A. Soluciones
282 RH200-6-es-2-20110115
¿Cuántos paquetes se quitarían? 2
Práctica Ejercicio
Manipulación de software de terceros
En este ejercicio, recopilará información acerca de un paquete de un tercero, extraerá losarchivos del paquete y lo instalará completo en el sistema de desktopX.
1. Descargue wonderwidgets-1.0-4.x86_64.rpm de http://instructor/pub/materials.
2. ¿Qué archivos contiene?
rpm -q -p wonderwidgets-1.0-4.x86_64.rpm -l
3. ¿Qué scripts contiene?
rpm -q -p wonderwidgets-1.0-4.x86_64.rpm --scripts
4. ¿Cuánto espacio en disco usará al instalarlo?
rpm -q -p wonderwidgets-1.0-4.x86_64.rpm -i
5. Use yum localinstall para instalar el paquete.
yum localinstall wonderwidgets-1.0-4.x86_64.rpm
Práctica Ejercicio
Uso de repositorios yum
Configurará su servidor para usar un repositorio yum aparte para obtener actualizaciones y paraactualizar su máquina.
1. Cree el archivo /etc/yum.repos.d/errata.repo para habilitar el repositorio"Actualizaciones" que se encuentra en la máquina instructor. Este debe acceder al contenidoque se encuentra en la siguiente URL: ftp://instructor.example.com/pub/rhel6/Errata.
Cree el archivo /etc/yum.repos.d/errata.repo con el siguiente contenido:
[updates]name=Red Hat Updatesbaseurl=ftp://instructor.example.com/pub/rhel6/Errataenabled=1gpgcheck=1
2. Actualice todo software relevante provisto por el repositorio con yum update.
yum update
Prueba de criterios
RH200-6-es-2-20110115 283
Prueba
Prueba de criterios
Caso de estudio
Actualizar e instalar softwareAntes de comenzar...Restablezca su sistema de ejercicios de laboratorio de serverX con el comando lab-setup-server.
Tiene que administrar un nuevo servidor, serverX, con requisitos de software muy específicos.Debe tener instaladas las últimas versiones de los siguientes paquetes:
kernel (paquete existente con una actualización)
xsane-gimp (paquete nuevo)
bzip2 (paquete actualizado)
Por razones de seguridad, no debe tener instalado el paquete xinetd.
No instale todas las actualizaciones. Instale solamente las actualizaciones para los paquetesenumerados arriba, si están disponibles.
Los paquetes actualizados pueden encontrarse en la siguiente URL: ftp://instructor.example.com/pub/rhel6/Errata
Cuando termine, ejecute el script de evaluación lab-grade-packages-2 para asegurarse deque se hayan realizado todos los pasos de forma correcta.
1. Cree el archivo /etc/yum.repos.d/updates.repo con el siguiente contenido:
[updates]name=Red Hat Updatesbaseurl=ftp://instructor.example.com/pub/rhel6/Errataenabled=1gpgcheck=1
2. Instale los paquetes y las actualizaciones especificados y asegúrese de especificar lospaquetes individuales, de modo que no se realice una actualización completa. Tenga encuenta que, cuando los paquetes se nombran explícitamente en la línea de comando, install yupdate son básicamente sinónimos.
(No se preocupe demasiado si el conteo de paquetes no es idéntico al detallado acontinuación).
[root@serverX ~]# yum install kernel xsane-gimp bzip2
...
Transaction Summary================================================================================Install 15 Package(s)
Apéndice A. Soluciones
284 RH200-6-es-2-20110115
Upgrade 2 Package(s)
Total download size: 39 MIs this ok [y/N]: y
...
Importing GPG key 0xFD431D51 "Red Hat, Inc. (release key 2) <[email protected]>" from /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-releaseIs this ok [y/N]: yImporting GPG key 0x2FA658E0 "Red Hat, Inc. (auxiliary key) <[email protected]>" from /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-releaseIs this ok [y/N]: y
...
Complete!
3. Asegúrese de quitar el paquete xinetd.
[root@serverX ~]# yum erase xinetd...No Match for argument: xinetdPackage(s) xinetd available, but not installed.No Packages marked for removal
En este caso, xinetd no se instaló.
Administrar sistemas remotos
RH200-6-es-2-20110115 285
Administrar sistemas remotos
Complete los espacios en blanco mientras el instructor demuestra el uso de ssh y trata estospuntos clave.
1. SSH es más seguro que telnet porque toda la comunicación entre los hosts se encripta.
2. ssh -X [email protected] inicia una conexión remota a host.fqdn como userusuario.
3. La primera vez que se realiza una conexión SSH a un sistema, la llave pública del sistemaremoto se almacena de forma local para que su identidad se pueda verificar cada vez quese inicie una conexión futura.
4. El comando exit se usa para finalizar una sesión SSH y regresar al intérprete decomandos local.
Práctica Cuestionario
Cuestionario sobre acceso a un intérprete decomandos remotoConéctese a serverX desde desktopX con un intérprete de comandos remoto. Responda lassiguientes preguntas ejecutando comandos de dicho intérprete de comandos remoto:
1. El comando Disk Utility es palimpsest. /dev/vda es el nombre de la unidad de discoduro en serverX.
2. Red Hat Enterprise Linux 6 (Santiago) es el nombre de la versión de SO de acuerdo con /etc/redhat-release.
3. Ejecute nautilus o use la línea de comando en el intérprete de comandos remoto enserverX para realizar lo siguiente:
• Cree un archivo con el nombre a1.txt en /root.
• Cree un directorio con el nombre b2 en /home/student, que pertenezca al usuariostudent y al grupo student.
Práctica Lista de verificación de rendimiento
Transferencias remotas de archivos
Use rsync para crear una copia de seguridad del directorio hogar de student dedesktopX en el directorio /tmp de serverX.
[student@desktopX ~]$ rsync /home/student serverX:/tmp...
Cree un nuevo archivo con el nombre z.txt en el directorio hogar de student.
Apéndice A. Soluciones
286 RH200-6-es-2-20110115
[student@desktopX ~]$ echo test > ~/z.txt
Use el mismo comando rsync para crear una copia de seguridad del directorio hogar destudent de desktopX en el directorio /tmp de serverX.
[student@desktopX ~]$ rsync /home/student serverX:/tmp...
Quite el directorio Desktop de la copia de seguridad en serverX. Ejecute el mismocomando rsync.
[student@desktopX ~]$ ssh serverX 'rm -rf /tmp/student/Desktop'...[student@desktopX ~]$ rsync /home/student serverX:/tmp...
Práctica Lista de verificación de rendimiento
Transferencias seguras de copias de seguridad
Cree un par de llaves de SSH como student en desktopX.
[student@desktopX ~]$ ssh-keygenGenerating public/private rsa key pair.Enter file in which to save the key (/home/student/.ssh/id_rsa): Created directory '/home/student/.ssh'.Enter passphrase (empty for no passphrase): <RETURN>Enter same passphrase again: <RETURN>Your identification has been saved in /home/student/.ssh/id_rsa.Your public key has been saved in /home/student/.ssh/id_rsa.pub....
Envíe la llave pública de SSH a la cuenta student de serverX.
[student@desktopX ~]$ ssh-copy-id serverXThe authenticity of host 'serverX (192.168.0.101)' can't be established.RSA key fingerprint is 33:fa:a1:3c:98:30:ff:f6:d4:99:00:4e:7f:84:3e:c3.Are you sure you want to continue connecting (yes/no)? yesWarning: Permanently added 'serverX,192.168.0.101' (RSA) to the list of known hosts.student@serverX's password: studentNow try logging into the machine, with "ssh 'serverX'", and check in:
.ssh/authorized_keys
to make sure we haven't added extra keys that you weren't expecting.
Ejecute el comando rsync utilizado anteriormente para crear una copia de seguridad deldirectorio hogar de student de desktopX en el directorio /tmp de serverX.
[student@desktopX ~]$ rsync -av /home/student serverX:/tmp
Administrar sistemas remotos
RH200-6-es-2-20110115 287
sending incremental file liststudent/...student/.ssh/id_rsa.pubstudent/.ssh/known_hosts
sent 3384 bytes received 150 bytes 7068.00 bytes/sectotal size is 2806 speedup is 0.79
Investigación y aprendizaje sobre protección de SSH
1. Use yum o rpm para determinar cuál es el paquete que proporciona el servicio SSH.
[root@serverX ~]# rpm -q -f /usr/sbin/sshdopenssh-server...[root@serverX ~]# yum search 'ssh server'openssh-server...
2. Use rpm -q -l o rpm -q -c para determinar cuál es el archivo de configuración principalpara el servicio.
[root@serverX ~]# rpm -q openssh-server -c/etc/pam.d/sshd/etc/ssh/sshd_config
3. Consulte la página del manual para el archivo de configuración y determine cuál es ladirectiva que desactiva el inicio de sesión de usuario root.
[root@serverX ~]# man sshd_config/root login
Respuesta: PermitRootLogin
4. ¿Qué directiva de ese archivo de configuración deshabilita el inicio de sesión concontraseña?
[root@serverX ~]# man sshd_config/password
Respuesta: PasswordAuthentication
Apéndice A. Soluciones
288 RH200-6-es-2-20110115
Práctica Lista de verificación de rendimiento
Protección de SSH
Si no lo hizo antes, genere llaves SSH en desktopX y copie la llave pública en la cuentastudent en serverX y verifique que las llaves funcionen:
[student@desktopX ~]$ ssh-keygenGenerating public/private rsa key pair.Enter file in which to save the key (/home/student/.ssh/id_rsa): Created directory '/home/student/.ssh'.Enter passphrase (empty for no passphrase): <RETURN>Enter same passphrase again: <RETURN>Your identification has been saved in /home/student/.ssh/id_rsa.Your public key has been saved in /home/student/.ssh/id_rsa.pub....[student@desktopX ~]$ ssh-copy-id serverXThe authenticity of host 'serverX (192.168.0.101)' can't be established.RSA key fingerprint is 33:fa:a1:3c:98:30:ff:f6:d4:99:00:4e:7f:84:3e:c3.Are you sure you want to continue connecting (yes/no)? yesWarning: Permanently added 'serverX,192.168.0.101' (RSA) to the list of known hosts.student@serverX's password: studentNow try logging into the machine, with "ssh 'serverX'", and check in:
.ssh/authorized_keys
to make sure we haven't added extra keys that you weren't expecting.
Configure SSH en serverX para impedir que el usuario root inicie sesión.
Modifique el archivo /etc/ssh/sshd_config de modo que la línea tenga el siguienteaspecto (asegúrese de quitar el comentario):
PermitRootLogin no
Reinicie el servicio SSH.
[root@serverX ~]# service sshd restart
Confirme que root no pueda iniciar sesión con SSH, pero que se permita que studentinicie sesión.
Configure SSH en serverX para impedir la autenticación de contraseñas.
Modifique el archivo /etc/ssh/sshd_config de modo que la línea tenga el siguienteaspecto:
PasswordAuthentication no
Opciones principales de tar1. c = crear
Administrar sistemas remotos
RH200-6-es-2-20110115 289
2. x = extraer
3. t = probar
4. v = detallado
5. f = nombre de archivo
6. z = gzip
7. j = bzip2
Práctica Ejercicio
Archivar y comprimir archivos
1. Inicie sesión en serverX como usuario root.
[root@desktopX ~]# ssh root@serverX
2. Cree un archivo de /etc con la compresión gzip. Guarde el archivo como /tmp/etc.tar.gz.
[root@serverX ~]# tar cvzf /tmp/etc.tar.gz /etc...[root@serverX ~]# exit
3. Copie el archivo /tmp/etc.tar.gz en /backups, en la máquina serverX.
[root@desktopX ~]# mkdir /backups[root@desktopX ~]# rsync serverX:/tmp/etc.tar.gz /backups
4. Extraiga el archivo comprimido en /backups en desktopX.
[root@desktopX ~]# cd /backups[root@desktopX backups]# tar xjvf etc.tar.gz...
Apéndice A. Soluciones
290 RH200-6-es-2-20110115
Prueba
Prueba de criterios
Ejercicio
Llaves de SSH y archivadores de archivos
1. Restablezca serverX ejecutando lab-setup-remote.
2. Instale la llave pública de SSH (generada previamente en desktopX) en la cuenta studentde serverX.
[student@desktopX ~]$ ssh-copy-id serverXstudent@serverX's password: studentNow try logging into the machine, with "ssh 'serverX'", and check in:
.ssh/authorized_keys
to make sure we haven't added extra keys that you weren't expecting.
3. Archive el directorio hogar de student de desktopX en /tmp/student.tar.bz2.
[student@desktopX home]$ cd /home[student@desktopX home]$ tar cjf /tmp/student.tar.bz2 student/
4. Copie el archivo /tmp/student.tar.bz2 de desktopX en /tmp de serverX.
[student@desktopX ~]$ scp /tmp/student.tar.bz2 serverX:/tmpstudent.tar.bz2 100% 2659 2.6KB/s 00:00
5. Quite el directorio hogar de student de serverX.
[student@desktopX ~]$ ssh root@serverXroot@serverX's password: redhat[root@serverX ~]# rm -fr /home/student/
6. Restaure el directorio hogar de student del archivador /tmp/student.tar.bz2.
[root@serverX ~]# cd /home/[root@serverX home]# tar xf /tmp/student.tar.bz2 [root@serverX home]# ls -al student/total 18drwx------. 5 student student 1024 Dec 15 13:37 .drwx------. 8 root root 1024 Dec 15 13:59 ..-rw-------. 1 student student 80 Dec 15 13:37 .bash_history-rw-r--r--. 1 student student 18 Jun 22 11:49 .bash_logout-rw-r--r--. 1 student student 176 Jun 22 11:49 .bash_profile-rw-r--r--. 1 student student 124 Jun 22 11:49 .bashrcdrwxr-xr-x. 2 student student 1024 Jul 14 11:55 .gnome2drwxr-xr-x. 4 student student 1024 Dec 13 03:24 .mozilladrwx------. 2 student student 1024 Dec 15 12:48 .ssh
Administrar sistemas remotos
RH200-6-es-2-20110115 291
7. Instale la llave pública de SSH de la copia de seguridad en desktopX y verifique que puedautilizar las llaves de SSH para ir de serverX a desktopX sin escribir una contraseña.
[root@serverX home]# su - student[student@serverX ~]$ ssh-copy-id desktopXThe authenticity of host 'desktopX (192.168.0.1)' can't be established.RSA key fingerprint is 3b:2d:7a:6f:f6:1f:26:37:e9:86:a4:aa:51:4a:9d:0d.Are you sure you want to continue connecting (yes/no)? yesWarning: Permanently added 'desktopX,192.168.0.1' (RSA) to the list of known hosts.student@desktopX's password: studentNow try logging into the machine, with "ssh 'desktopX'", and check in:
.ssh/authorized_keys
to make sure we haven't added extra keys that you weren't expecting.
[student@serverX ~]$ ssh desktopX hostnamedesktopX.example.com
8. Verifique que haya realizado correctamente las tareas ejecutando lab-grade-remote.
Apéndice A. Soluciones
292 RH200-6-es-2-20110115
Implementar y proteger servicios
Práctica Lista de verificación de rendimiento
Administrar el reloj del sistema
Configure desktopX para que se sincronice con instructor.example.com usando NTP.
1. Inicie la herramienta de administración Date & Time.
2. Haga clic en la pestaña Date and Time.
3. Habilite NTP para que apunte a instructor.example.com.
4. Sincronice el reloj inmediatamente.
Ajuste la zona horaria en la configuración regional apropiada.
1. Haga clic en la pestaña Time Zone.
2. Ajuste la zona horaria en su configuración regional.
Almacene en el reloj del hardware la hora UTC.
1. En la pestaña Time Zone, seleccione UTC.
Instalación de servicios nuevos¿Qué comando se usa generalmente para realizar cada uno de estos pasos para implementar unservicio nuevo en un sistema Red Hat Enterprise Linux?
• Instalar el software: yum
• Iniciar el servicio: service
• Habilitar el servicio durante el momento de arranque: chkconfig
• Probar los servicios: Este tema se abordará en las páginas siguientes.
Práctica Ejercicio
Habilitación de un servidor VNC
1. Instale el paquete tigervnc-server en serverX.
[root@serverX ~]# yum install tigervnc-server
2. Configure la pantalla de VNC 1 para student.
Agregue lo siguiente en /etc/sysconfig/vncservers:
Administrar sistemas remotos
RH200-6-es-2-20110115 293
VNCSERVERS=”1:student”
3. Establezca redhat como contraseña de VNC para student.
[student@serverX ~] vncpasswdPassword: redhatVerify: redhat
4. Inicie y habilite el servicio VNC.
[root@serverX ~]# service tigervnc start[root@serverX ~]# chkconfig tigervnc on
5. En la siguiente sección verificará la conexión.
Práctica Ejercicio
Conectarse de forma segura a VNC
1. Configure el servidor VNC en serverX para permitir sólo conexiones locales (a menos que yalo haya hecho en el ejercicio anterior).
Edite /etc/sysconfig/vncservers y agregue lo siguiente, si es necesario:
VNCSERVERARGS[1]="-localhost"
2. Conéctese al servidor VNC en serverX de forma segura desde desktopX con un túnel SSH
[student@desktopX ~] vncviewer -via serverX localhost:1
3. Verifique que se hayan completado todos los pasos como se indica.
Práctica Lista de verificación de rendimiento
Implementar un servidor FTP
Implemente un servidor FTP en serverX. Verifique que esté habilitado y en funcionamiento.
Instale el paquete vsftpd.
Tenga en cuenta que el paquete ya está instalado, pero lo siguiente lo confirma.
[root@serverX ~]# yum install vsftpd
Inicie el servicio vsftpd.
[root@serverX ~]# service vsftpd start
Apéndice A. Soluciones
294 RH200-6-es-2-20110115
Habilite el servicio vsftpd.
[root@serverX ~]# chkconfig vsftpd on
Publique una copia de /etc/hosts en la raíz del documento del FTP anónimo.
[root@serverX ~]# cp /etc/hosts /var/ftp/
Pruebe el servidor FTP en desktopX con un cliente ftp (lftp o Nautilus) para quese conecte al servidor ftp://serverX.example.com. Descargue el archivo hosts en eldirectorio hogar de student.
Práctica Lista de verificación de rendimiento
Restringir el acceso al FTP
Debido a que el FTP es un protocolo inseguro, es un riesgo de seguridad permitir que usuariosnormales se conecten y realicen la autenticación. Configure su servidor FTP para permitir sóloconexiones anónimas.
Use lftp para conectarse a serverX y realice la autenticación como student paraconfirmar que se permita el acceso de usuarios no anónimos.
¿Qué archivo es el archivo de configuración vsftpd principal?
/etc/vsftpd/vsftpd.conf
¿Qué directiva del archivo de configuración controla el acceso de usuarios no anónimosal sistema?
local_enable
Configure vsftpd para denegar el acceso de usuarios no anónimos locales.
Edite el archivo de configuración /etc/vsftpd/vsftpd.conf y modifique la siguientelínea como:
local_enable=no
Reinicie el servicio.
[root@serverX ~]# service vsftpd restart
Vuelva a probar su servidor y confirme que student ya no tenga acceso autenticado a suservidor FTP.
Administrar sistemas remotos
RH200-6-es-2-20110115 295
Práctica Lista de verificación de rendimiento
Implementar un servidor web
El instructor dividirá la clase en grupos. Una vez que se le haya asignado su grupo, haga losiguiente:
Implemente un servidor web en serverX teniendo en cuenta que el nombre del paquete deservidor web es httpd. Deberá proporcionar servicios de archivo HTTP. Debe estar activadocuando se vuelva a arrancar su servidor.
Instale el paquete httpd.
[root@serverX ~]# yum install httpd
Inicie el servicio httpd.
[root@serverX ~]# service httpd start
Habilite el servicio httpd.
[root@serverX ~]# chkconfig httpd on
Cree un enlace simbólico en la raíz del documento de su servidor web al directorio /pubde su servidor FTP y llámelo pub.
[root@serverX ~]# cd /var/www/html[root@serverX html]# ln -s ../../ftp/pub pub
Cree un archivo index.html en la raíz del documento de su servidor web con elsiguiente contenido:
<h1>Classroom Web Services</h1><p><a href="pub">Click here</a> to view public files.
Vuelva a arrancar el sistema y verifique que este contenido esté disponible a través delnavegador web antes de notificar al público para asegurarse de que sus clientes tambiénpuedan acceder a él.
Pruebe el servidor web usando el navegador Firefox.
Apunte el navegador Firefox a http://serverX.example.com.
Práctica Lista de verificación de rendimiento
Permitir HTTP y FTP a través del cortafuego
Para esta actividad, el instructor los dividirá en grupos reducidos. Un estudiante en cada grupodeterminará los pasos necesarios para realizar la actividad, mientras que los demás miran, hacen
Apéndice A. Soluciones
296 RH200-6-es-2-20110115
sugerencias y toman notas. Una vez que el grupo haya realizado correctamente la actividad, losestudiantes que tomaron notas deben regresar a sus propias computadoras y repetir la actividadallí.
Estudiantes de capacitación virtual: Completen la actividad por su cuenta y consulten alinstructor si tienen alguna pregunta.
Si no se realizó aún, implemente un servidor FTP de configuración predeterminada enserverX.
[root@serverX ~]# yum install vsftpd...[root@serverX ~]# service vsftpd start...[root@serverX ~]# chkconfig vsftpd on
Si no se realizó aún, implemente un servidor HTTP de configuración predeterminada enserverX.
[root@serverX ~]# yum install httpd...[root@serverX ~]# service httpd start...[root@serverX ~]# chkconfig httpd on
Habilite el cortafuego en serverX.
[root@serverX ~]# system-config-firewall-tui
Active Enabled
Seleccione Customize
Permita las conexiones al servicio FTP a través del cortafuego en serverX
Active FTP debajo de Customize
Permita las conexiones al servicio HTTP a través del cortafuego en serverX
Active WWW (HTTP) y Secure WWW (HTTPS) debajo de Customize
Permita las conexiones al servicio SSH a través del cortafuego en serverX
Active SSH debajo de Customize
Seleccione Forward y luego Close
Seleccione Ok y luego Yes para guardar
Compruebe que se pueda acceder a cada servicio desde desktopX
Prueba de criterios
RH200-6-es-2-20110115 297
Prueba
Prueba de criterios
Lista de verificación de rendimiento
Implementar servicios para intercambio de archivosAntes de comenzar...Restablezca su sistema de ejercicios de laboratorio de serverX con el comando lab-setup-server.
Nickel y Copper Cutlery desean publicar un catálogo en línea para sus clientes. Implementelos servicios FTP y HTTP, y confirme que funcionen y estén habilitados durante el proceso dearranque.
Cree un archivo con el nombre index.html, con exactamente dos líneas que tengan elsiguiente contenido:
NICKEL AND COPPER CUTLERYOn-line catalog coming soon!
[root@serverX ~]# yum install -y httpd vsftpd...Package httpd-2.2.15-5.el6.x86_64 already installed and latest versionPackage vsftpd-2.2.2-6.el6.x86_64 already installed and latest versionNothing to do[root@serverX ~]# echo 'NICKEL AND COPPER CUTLERY' > /var/ftp/pub/index.html[root@serverX ~]# echo 'On-line catalog coming soon!' >> /var/ftp/pub/index.html
Configure serverX para que proporcione servicios FTP y web. Deshabilite el acceso al FTPde usuarios no anónimos.
[root@serverX ~]# sed -i.orig 's/^local_enable=/#local_enable=/' /etc/vsftpd/vsftpd.conf[root@serverX ~]# diff /etc/vsftpd/vsftpd.conf.orig /etc/vsftpd/vsftpd.conf15c15< local_enable=YES---> #local_enable=YES[root@serverX ~]# service httpd startStarting httpd: [ OK ][root@serverX ~]# chkconfig httpd on[root@serverX ~]# service vsftpd startStarting vsftpd for vsftpd: [ OK ][root@serverX ~]# chkconfig vsftpd on
Configure su máquina serverX para proporcionar el contenido del archivo idéntico a losusuarios de HTTP y FTP anónimos. Las siguientes dos URL deben mostrar el archivo quecreó anteriormente:
• ftp://serverX/pub/index.html
• http://serverX/index.html
Apéndice A. Soluciones
298 RH200-6-es-2-20110115
[root@serverX ~]# rmdir /var/www/html/[root@serverX ~]# ln -s ../ftp/pub /var/www/html[root@serverX ~]# ls /var/www/htmlindex.html
Evaluación: Vuelva a arrancar su máquina serverX. Use un navegador web para confirmarque sus servicios estén funcionando correctamente.
[root@serverX ~]# curl http://serverX/index.htmlNICKEL AND COPPER CUTLERYOn-line catalog coming soon![root@serverX ~]# curl ftp://serverX/pub/index.htmlNICKEL AND COPPER CUTLERYOn-line catalog coming soon!
Administración de SELinux
RH200-6-es-2-20110115 299
Administración de SELinux
Práctica Cuestionario
Conceptos básicos de SELinux1. ¿A cuáles de las siguientes opciones SELinux aplica el contexto de seguridad? (Marque
todas las opciones que correspondan).
(seleccione uno o más de los siguientes…)a. Puertosb. Procesosc. Archivosd. Directoriose. Sistemas de archivos remotos
2. SELinux puede usarse para:
(seleccione uno o más de los siguientes…)a. Impedir que un servicio se ejecute en otros puertos.b. Proteger los datos de usuario de aplicaciones como el servidor web.c. Impedir que sistemas remotos accedan a puertos locales.
Esto describe un cortafuego.d. Mantener el sistema actualizado.
Esto describe algo como Red Hat Network.e. Acceder a un servidor web.
Esto describe un navegador web como Firefox.
3. ¿Cuáles de las siguientes opciones corresponden a tipos estándar de contexto deSELinux?
(seleccione uno o más de los siguientes…)a. selinux_type
Esto no existe.b. object_r
Esta es una función de SELinux.c. httpd_sys_content_td. tmp_te. user_u
Este es un usuario de contexto de SELinux.
Apéndice A. Soluciones
300 RH200-6-es-2-20110115
Práctica Cuestionario
Modos de SELinux1. El modo permisivo de SELinux permite el registro, pero no la protección.
2. El modo obligatorio de SELinux protege el sistema.
3. ¿Cuáles de los siguientes son modos de SELinux válidos?
(seleccione uno o más de los siguientes…)a. Obligatoriob. Pruebac. Permisivod. Deshabilitadoe. Registro
Práctica Ejercicio
Cambio de los modos permisivo y obligatorio
1. En serverX, modifique el modo predeterminado de SELinux a permisivo y vuelva a arrancarel sistema.
Modifique el archivo /etc/sysconfig/selinux de modo que la línea tenga el siguienteaspecto:
SELINUX=permissive
Vuelva a arrancar su servidor virtual:
[root@serverX ~]# init 6
2. Luego del reinicio, verifique que el sistema esté en modo permisivo.
[root@serverX ~]# getenforcePermissive
3. Modifique el modo predeterminado de SELinux a obligatorio.
Modifique el archivo /etc/sysconfig/selinux de modo que la línea tenga el siguienteaspecto:
SELINUX=enforcing
4. Modifique el modo actual de SELinux a obligatorio.
[root@serverX ~]# setenforce 1[root@serverX ~]# getenforce
Administración de SELinux
RH200-6-es-2-20110115 301
Enforcing
Práctica Ejercicio
Corrección de contextos de archivos de SELinux
Se le ha solicitado que ajuste la configuración DNS de su máquina remota para que coincidaexactamente con la configuración de su máquina de escritorio. Usted decide que la forma másfácil es copiar el archivo /etc/resolv.conf de la máquina local en la máquina remota.
1. Transfiera el archivo /etc/resolv.conf de su máquina de escritorio al directorio hogarde root en serverX.
scp /etc/resolv.conf root@serverX:
2. Use el intérprete de comandos para conectarse a serverX como usuario root. Todos lospasos siguientes deben ejecutarse en su servidor.
3. Observe el contexto de SELinux de /etc/resolv.conf inicial.
ls -Z /etc/resolv.conf
Contexto /etc/resolv.conf original: . system_u:object_r:net_conf_t:s0
4. Mueva resolv.conf del directorio hogar de root a /etc/resolv.conf.
mv /root/resolv.conf /etc
5. Observe el contexto de SELinux de /etc/resolv.conf recientemente copiado.
ls -Z /etc/resolv.conf
Contexto /etc/resolv.conf nuevo: . unconfined_u:object_r:admin_home_t:s0
6. Restaure el contexto de SELinux de /etc/resolv.conf recientemente posicionado.
restorecon /etc/resolv.conf
7. Observe el contexto de SELinux de /etc/resolv.conf restaurado.
ls -Z /etc/resolv.conf
Contexto /etc/resolv.conf restaurado: . system_u:object_r:net_conf_t:s0
Práctica Cuestionario
Control de violaciones de SELinux1. ¿Qué archivo contiene entradas de registro que proporcionan identificadores únicos para
las violaciones de SELinux? /var/log/audit/audit.log
Apéndice A. Soluciones
302 RH200-6-es-2-20110115
2. Dado el UUID de una violación de SELinux, ¿qué comando genera un informe de texto delproblema? sealert -l UUID
Prueba
Prueba de criterios
Ejercicio
Administración de SELinuxAntes de comenzar...Antes de comenzar, ejecute el comando lab-setup-selinux en desktopX.
1. Inicie sesión en serverX como usuario student. Abra un terminal y cambie al usuario root.
2. Copie el archivo web_content.tgz de instructor:/var/ftp/pub/materials en /tmp.
[root@serverX ~]# cp /net/instructor/var/ftp/pub/materials/web_content.tgz /tmp
3. Extraiga el archivo en /tmp.
[root@serverX ~]# cd /tmp[root@serverX tmp]# tar -xvf web_content.tgz
4. Mueva el directorio extraído a /var/www/html.
[root@serverX tmp]# mv web_content /var/www/html/[root@serverX tmp]# cd
5. Inicie el servicio web.
[root@serverX ~]# service httpd start
6. Intente observar el nuevo directorio con el navegador web al visitar la URL http://serverX/web_content.
[root@serverX ~]# elinks -dump http://serverX/web_content
7. Busque en el sistema los UUID de cualquier violación de SELinux que pueda haber generadosu intento de navegar el contenido recientemente instalado.
[root@serverX ~]# cat /var/log/messages | grep 'sealert -l'
8. Genere informes de texto sobre las violaciones.
[root@serverX ~]# sealert -l UUID > ~/httpd_selinux.log
Administración de SELinux
RH200-6-es-2-20110115 303
Donde UUID es el UUID dado en /var/log/messages
9. Siga las instrucciones del informe para restaurar los contextos de SELinux del contenidorecientemente instalado.
Busque la sección Fix Command en ~/httpd_selinux.log
[root@serverX ~]# restorecon -Rv /var/www/html/web_content/
10. Confirme que pueda ver el material desde el navegador web al visitar la URL http://serverX/web_content.
[root@serverX ~]# elinks -dump http://serverX/web_content
Apéndice A. Soluciones
304 RH200-6-es-2-20110115
Administración de particiones simples y sistemasde archivos
Práctica Cuestionario
Agregar un nuevo sistema de archivos1. Identificar un disco que tenga espacio libre fdisk -cul
2. Crear una nueva partición en ese disco fdisk -cu /dev/device
3. Actualizar la tabla de particiones del kernel reboot
4. Crear un sistema de archivos en la partición mkfs -t ext4 /dev/device
5. Determinar el UUID del sistema de archivos blkid /dev/device
6. Crear un punto de montaje mkdir /directory
7. Agregar una entrada al archivo de la tabla del sistema de archivos Agregar una entradaa /etc/fstab como la siguiente: UUID=cb79b7d0-dc14-4402-8465-6857346c9a53 /directory ext4 defaults 1 2
8. Montar el sistema de archivos mount -a
Práctica Ejercicio para ordenar
Crear un sistema de archivos encriptado
Para cada uno de los nombres de archivo o directorio indicados a continuación, escriba elnúmero de la definición correspondiente indicado en la lista debajo.
1 Crear una nueva partición.4 Crear un sistema de archivos ext42 Formatear la nueva partición para la encriptación6 Montar el sistema de archivos en el dispositivo desbloqueado8 Crear una entrada en /etc/fstab5 Crear un directorio para usarlo como punto de montaje3 Desbloquear la partición encriptada7 Crear una entrada en /etc/crypttab9 Hacer que LUKS esté al tanto del archivo de contraseña
1. fdisk
2. cryptsetup luksFormat /dev/vdaN
3. cryptsetup luksOpen /dev/vdaN secret
4. mkfs -t ext4 /dev/mapper/secret
5. mkdir /secret
Administración de SELinux
RH200-6-es-2-20110115 305
6. mount /dev/mapper/secret /secret
7. secret /dev/vdaN /password/file
8. /dev/mapper/secret /secret ext4 defaults 1 2
9. cryptsetup luksAddKey /dev/vdaN /password/file
Práctica Ejercicio
Crear y usar una nueva partición de intercambio
Cree y use una nueva partición de intercambio de 256 MB en su servidor virtual, serverX.
1. Inicie fdisk y cree una nueva partición.
ImportantePara tener espacio para crear particiones adicionales en el futuro, si es necesario,asegúrese de crear una partición extendida previamente.
2. Cambie el tipo de partición a swap.
Escriba t para cambiar el tipo de partición a “0x82 Linux Swap”.
3. Prepare la nueva partición para usarla como intercambio.
mkswap /dev/vdaN
(N será el número de partición).
4. Determine el UUID.
blkid /dev/vdaN
5. Agregue la nueva partición a /etc/fstab.
UUID=uuid swap swap defaults 0 0
6. Determine la cantidad actual de intercambio.
swapon -s
7. Active el nuevo intercambio.
swapon -a
8. Verifique el intercambio recientemente activado.
Apéndice A. Soluciones
306 RH200-6-es-2-20110115
swapon -s
Prueba
Prueba de criterios
Caso de estudio
Administración de particiones simples y sistemas de archivosAntes de comenzar...Asegúrese de ejecutar lab-setup-storage desde su sistema de desktopX, lo cual preparará alsistema de serverX para la clase práctica.
Una vez que esté listo, ejecute el script lab-grade-storage en serverX para verificar sutrabajo.
Su departamento desea usar una parte del espacio de almacenamiento sin asignar en losservidores. Cree adiciones en el sistema según la siguiente lista:
• Cree una nueva partición y un sistema de archivos ext4 con un tamaño de 400 MB. El sistemade archivos debe montarse de manera persistente en /data.
• Agregue de manera persistente una partición de intercambio que tenga un tamaño de 200 MB.
• Cree un dispositivo encriptado con un sistema de archivos ext4 que tenga un tamaño de256 MB y use la contraseña testing123. El sistema debe solicitar la contraseña durante elproceso de arranque y montar el sistema de archivos en /test.
ImportantePara tener espacio para crear particiones adicionales en el futuro, si es necesario, asegúresede crear una partición extendida previamente.
1. Use fdisk para agregar 3 particiones, para el sistema de archivos estándar, la partición deintercambio y el sistema de archivos encriptado, respectivamente.
a. Inicie una sesión interactiva con fdisk e imprima la tabla existente.
[root@serverX ~]# fdisk -cu /dev/vda
Command (m for help): p
Disk /dev/vda: 21.5 GB, 21474836480 bytes...
Device Boot Start End Blocks Id System/dev/vda1 * 2048 526335 262144 83 Linux/dev/vda2 526336 9914367 4694016 8e Linux LVM
Administración de SELinux
RH200-6-es-2-20110115 307
b. Para evitar problemas futuros a causa de la cantidad limitada de particiones principales,cree una partición extendida que abarque el resto del disco.
Command (m for help): nCommand action e extended p primary partition (1-4)ePartition number (1-4): 3First sector (9914368-41943039, default 9914368): <RETURN>Using default value 9914368Last sector, +sectors or +size{K,M,G} (9914368-41943039, default 41943039): <RETURN>Using default value 41943039Command (m for help): p
Disk /dev/vda: 21.5 GB, 21474836480 bytes...
Device Boot Start End Blocks Id System/dev/vda1 * 2048 526335 262144 83 Linux/dev/vda2 526336 9914367 4694016 8e Linux LVM/dev/vda3 9914368 41943039 16014336 5 Extended
c. Agregue una partición de 400 MB para el sistema de archivos ext4.
Command (m for help): nCommand action l logical (5 or over) p primary partition (1-4)lFirst sector (9916416-41943039, default 9916416): <RETURN>Using default value 9916416Last sector, +sectors or +size{K,M,G} (9916416-41943039, default 41943039): +400M
d. Agregue una partición de 200 MB y ajuste su etiqueta como corresponda para unapartición de intercambio.
Command (m for help): nCommand action l logical (5 or over) p primary partition (1-4)lFirst sector (10737664-41943039, default 10737664): <RETURN>Using default value 10737664Last sector, +sectors or +size{K,M,G} (10737664-41943039, default 41943039): +200MCommand (m for help): tPartition number (1-6): 6Hex code (type L to list codes): 82Changed system type of partition 6 to 82 (Linux swap / Solaris)
e. Agregue una partición de 256 MB para la partición ext4 encriptada.
Command (m for help): nCommand action l logical (5 or over)
Apéndice A. Soluciones
308 RH200-6-es-2-20110115
p primary partition (1-4)lFirst sector (11149312-41943039, default 11149312): <RETURN>Using default value 11149312Last sector, +sectors or +size{K,M,G} (11149312-41943039, default 41943039): +256M
f. Admire su trabajo, confirme los cambios y salga.
Command (m for help): p
Disk /dev/vda: 21.5 GB, 21474836480 bytes...
Device Boot Start End Blocks Id System/dev/vda1 * 2048 526335 262144 83 Linux/dev/vda2 526336 9914367 4694016 8e Linux LVM/dev/vda3 9914368 41943039 16014336 5 Extended/dev/vda5 9916416 10735615 409600 83 Linux/dev/vda6 10737664 11147263 204800 82 Linux swap / Solaris/dev/vda7 11149312 11673599 262144 83 Linux
Command (m for help): wThe partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: Device or resource busy.The kernel still uses the old table. The new table will be used atthe next reboot or after you run partprobe(8) or kpartx(8)Syncing disks.
g. Tras la advertencia, confirme que el kernel aún no está al tanto de las particiones dedisco recientemente creadas.
[root@serverX ~]# cat /proc/partitionsmajor minor #blocks name
8 0 20971520 vda 8 1 262144 vda1 8 2 4694016 vda2 253 0 557056 dm-0 253 1 3473408 dm-1 253 2 262144 dm-2
h. Vuelva a arrancar serverX.
i. Una vez que serverX haya vuelto a arrancar, confirme que el kernel esté al tanto de lasnuevas particiones.
[root@serverX ~]# cat /proc/partitionsmajor minor #blocks name
8 0 20971520 vda 8 1 262144 vda1 8 2 4694016 vda2 8 3 1 vda3
Administración de SELinux
RH200-6-es-2-20110115 309
8 5 409600 vda5 8 6 204800 vda6 8 7 262144 vda7 253 0 557056 dm-0 253 1 3473408 dm-1 253 2 262144 dm-2
2. Formatee la partición ext4, determine un punto de montaje (utilizaremos /data) yconfigure que el sistema monte automáticamente la partición durante el proceso dearranque.
a. Coloque el sistema de archivos ext4 en la partición de 400 MB y determine cuál es elUUID resultante.
[root@serverX ~]# mkfs.ext4 /dev/vda5mke2fs 1.41.12 (17-May-2010)Filesystem label=...[root@serverX ~]# blkid /dev/vda5/dev/vda5: UUID="b06c6e49-c056-4af0-a6e1-ee79602f5bf8" TYPE="ext4"
b. Agregue una entrada (línea) a /etc/fstab, que asocia el sistema de archivos(identificado por UUID) con el punto de montaje deseado.
UUID=b06c6e49-c056-4af0-a6e1-ee79602f5bf8 /data ext4 defaults 1 2
c. Cree el punto de montaje (directorio) y use el comando mount para montar todos lospuntos de montaje definidos (con lo que se confirmará si creó correctamente la entradareciente en /etc/fstab).
[root@serverX ~]# mkdir /data[root@serverX ~]# mount -a
d. Use el comando df para confirmar que el sistema de archivos recientemente creadoesté montado de manera correcta.
[root@serverX ~]# df -hFilesystem Size Used Avail Use% Mounted on/dev/mapper/vgsrv-root 3.3G 2.1G 1.1G 67% /tmpfs 246M 88K 246M 1% /dev/shm/dev/vda1 248M 30M 206M 13% /boot/dev/mapper/vgsrv-home 248M 11M 226M 5% /home/dev/vda5 388M 11M 358M 3% /data
3. Inicialice la partición de intercambio y configúrela de modo que se active durante el procesode arranque.
a. Inicialice la partición de intercambio.
[root@serverX ~]# mkswap /dev/vda6Setting up swapspace version 1, size = 204796 KiB
Apéndice A. Soluciones
310 RH200-6-es-2-20110115
no label, UUID=c3f56fc4-cd69-48fe-bd87-fef41a1db3ae
b. Agregue una entrada (línea) a /etc/fstab, que identifica la partición de intercambiopor UUID.
UUID=c3f56fc4-cd69-48fe-bd87-fef41a1db3ae swap swap defaults 0 0
c. Active la partición y observe las particiones de intercambio activas antes y después.
[root@serverX ~]# cat /proc/swapsFilename Type Size Used Priority/dev/dm-0 partition 557048 0 -1[root@serverX ~]# swapon -aswapon: /dev/mapper/vgsrv-swap: swapon failed: Device or resource busy[root@serverX ~]# cat /proc/swapsFilename Type Size Used Priority/dev/dm-0 partition 557048 0 -1/dev/vda6 partition 204792 0 -2
(Tenga en cuenta que la advertencia de "ocupado" se refiere a la partición deintercambio que ya estaba activa).
4. Cree y configure la partición encriptada.
a. Elimine los datos aleatorios de la partición. (En el ejercicio de laboratorio, este pasopuede requerir mucho tiempo y se lo puede omitir sin problemas).
[root@serverX ~]# cat /dev/urandom > /dev/vda7 ( ... significant delay ... )cat: write error: No space left on device
b. Inicialice la capa de encriptación de LUKS.
[root@serverX ~]# cryptsetup luksFormat /dev/vda7
WARNING!========This will overwrite data on /dev/vda7 irrevocably.
Are you sure? (Type uppercase yes): YESEnter LUKS passphrase: testing123Verify passphrase: testing123
c. Abra el dispositivo LUKS y elija un nombre arbitrario para acceder a la capa de textosimple (usaremos test_plaintext).
[root@serverX ~]# cryptsetup luksOpen /dev/vda7 test_plaintextEnter passphrase for /dev/vda7: testing123
d. Configure el archivo /etc/crypttab para que abra automáticamente el dispositivodurante el proceso de arranque y solicite una contraseña al usuario.
Administración de SELinux
RH200-6-es-2-20110115 311
[root@serverX ~]# echo "test_plaintext /dev/vda7" >> /etc/crypttab
e. Cree el sistema de archivos ext4.
[root@serverX ~]# mkfs.ext4 /dev/mapper/test_plaintextmke2fs 1.41.12 (17-May-2010)...[root@serverX ~]# blkid /dev/mapper/test_plaintext/dev/mapper/test_plaintext: UUID="5bf2d39e-cb79-4f4a-a276-2a306ad506c1" TYPE="ext4"
f. Establezca un punto de montaje (usaremos /test)) y agregue una línea similar a lasiguiente a /etc/fstab.
UUID=5bf2d39e-cb79-4f4a-a276-2a306ad506c1 /test ext4 defaults 1 2
g. Cree el punto de montaje, monte todas las particiones y confirme que el sistema dearchivos encriptado se haya montado.
[root@serverX ~]# mkdir /test [root@serverX ~]#mount -a[root@serverX ~]# df -hFilesystem Size Used Avail Use% Mounted on.../dev/mapper/test_plaintext 246M 6.1M 228M 3% /test...
Apéndice A. Soluciones
312 RH200-6-es-2-20110115
Control de acceso a los archivos
Permisos de directorio de colaboraciónEn el cuestionario siguiente, use ACL POSIX y permisos estándar, según corresponda, parasolucionar estos problemas.
1. En un directorio normal, donde el usuario al que pertenece tiene permisos de rwx, elgrupo al que pertenece tiene permisos de rwx y otros tienen permisos de ---, ¿quécomando otorgaría permisos de r-x a un segundo grupo, sin cambiar los permisos delgrupo existente al que pertenece ni de otros?
setfacl -m g:group:r-x /directory
2. ¿Qué comando otorgaría acceso de lectura y escritura de manera automática a esesegundo grupo para cualquier archivo regular recientemente creado en ese directorio?
setfacl -m d:g:group:rw /directory
3. Pregunta adicional. ¿Qué comando configuraría automáticamente al grupo propietariocomo el grupo propietario de los archivos recientemente creados en ese directorio?
chmod g+s /directoryo chmod 2770 /directory si se supone la existenciade los permisos del directorio original según lo detallado en la primera pregunta.
Debe asegurarse de que el directorio tenga el permiso set-GID. Resulta que no hayuna forma de hacerlo con setfacl.
Prueba
Prueba de criterios
Caso de estudio
Uso de ACL para otorgar y limitar el acceso
En este ejercicio de laboratorio se utilizan usuarios y grupos creados anteriormente en serverX.Si aún no tiene los usuarios y grupos definidos, ejecute lab-add-users en serverX.
Los estudiantes de posgrado necesitan un directorio de colaboración con el nombre /opt/research, donde puedan almacenar los resultados de investigación generados. Sólo losmiembros de los grupos profs y grads deben poder crear nuevos archivos en el directorio, ylos nuevos archivos deben tener las siguientes propiedades:
• El directorio debe pertenecer al usuario root.
• Los archivos nuevos deben pertenecer al grupo grads.
• Los profesores (miembros del grupo profs) deben tener acceso de lectura y escritura anuevos archivos de manera automática.
• Los practicantes de verano (miembros del grupo interns) deben tener acceso de sólo lecturaa nuevos archivos de manera automática.
Administración de SELinux
RH200-6-es-2-20110115 313
• Otros usuarios (no un miembro de los grupos profs, gradso interns) no deben teneracceso al directorio ni a su contenido en absoluto.
Cuando termine, consulte el apéndice de Soluciones para verificar su solución y ver algunosenfoques posibles.
• Una solución posible es:
[root@serverX ~]# mkdir /opt/research[root@serverX ~]# chgrp grads /opt/research/[root@serverX ~]# chmod 2770 /opt/research/[root@serverX ~]# setfacl -m g:profs:rwx /opt/research/[root@serverX ~]# setfacl -m g:interns:rx /opt/research/[root@serverX ~]# setfacl -m d:g:profs:rw /opt/research/[root@serverX ~]# setfacl -m d:g:interns:r /opt/research/
Las tres primeras líneas crean /opt/research y garantizan que pertenezca al usuarioroot, grupo grads, y que el usuario y el grupo al que pertenece tengan acceso a archivosy puedan leerlos y escribirlos, y que grads sea propietario de los archivos creados en eldirectorio (set-GID está activado). Las dos líneas siguientes otorgan los permisos apropiadospara el grupo profs y el grupo interns en el directorio a través de ACL. Las dos líneassiguientes otorgan los permisos apropiados para el grupo profs y el grupo interns en losnuevos archivos creados en el directorio a través de ACL predeterminadas.
notaUna solución más sofisticada y un poco mejor es reemplazar las dos últimas líneas de lasolución de arriba de la siguiente manera:
[root@serverX ~]# setfacl -m d:g:profs:rwx /opt/research/[root@serverX ~]# setfacl -m d:g:interns:rx /opt/research/[root@serverX ~]# setfacl -m d:o::- /opt/research/
Al agregar permiso de ejecución a las ACL predeterminadas, los miembros de los gruposprofs y interns podrán acceder automáticamente a los subdirectorios recientementecreados de /opt/research. (Los archivos regulares no reciben el permiso deejecución efectivo automáticamente porque la máscara de ACL predeterminada en unarchivo regular nuevo es rw-).
La última línea de la solución mejorada de arriba quita todos los permisos de otrosusuarios para los archivos recientemente creados. No es estrictamente necesario, yaque los permisos para el directorio de /opt/research ya bloquean todo el acceso paraotros usuarios al directorio y su contenido, pero aquí se lo incluye como un ejemplo útil.
Use ls y getfacl para confirmar su solución.
[root@serverX ~]# getfacl /opt/research/getfacl: Removing leading '/' from absolute path names# file: opt/research/# owner: root
Apéndice A. Soluciones
314 RH200-6-es-2-20110115
# group: grads# flags: -s-user::rwxgroup::rwxgroup:interns:r-xgroup:profs:rwxmask::rwxother::---default:user::rwxdefault:group::rwxdefault:group:interns:r-xdefault:group:profs:rwxdefault:mask::rwxdefault:other::---[root@serverX ~]# date > /opt/research/foo[root@serverX ~]# ls -l /opt/research/foo-rw-rw----+ 1 root grads 29 Dec 23 12:31 /opt/research/foo[root@serverX ~]# getfacl /opt/research/foogetfacl: Removing leading '/' from absolute path names# file: opt/research/foo# owner: root# group: gradsuser::rw-group::rwx #effective:rw-group:interns:r-x #effective:r--group:profs:rwx #effective:rw-mask::rw-other::---
Administración de almacenamiento flexible con el administrador de volúmenes lógicos
RH200-6-es-2-20110115 315
Administración de almacenamiento flexible con eladministrador de volúmenes lógicos
Práctica Cuestionario
Componentes del LVM1. Complete el siguiente cuadro con los nombres de los componentes.
4.
3.
2.
1.
Unused Space
1. Almacenamiento físico
2. Volúmenes físicos
3. Grupo de volúmenes
4. Volumen lógico
2. ¿Cuáles son las partes más pequeñas (fragmentos o bloques) del volumen físico?
Apéndice A. Soluciones
316 RH200-6-es-2-20110115
Extensiones físicas
3. ¿Cuál es el tamaño más pequeño que podría darle a un volumen lógico?
El tamaño de una sola extensión física
4. ¿A qué hacen referencia las extensiones físicas de un volumen lógico?
Extensiones lógicas
Práctica Ejercicio
Implementar el LVM y crear un volumen lógicoAntes de comenzar...Asegúrese de ejecutar lab-setup-lvm desde su sistema desktopX, lo cual preparará al sistemaserverX para el ejercicio práctico.
Todas estas acciones deben ejecutarse en serverX.
1. Cree una nueva partición de 512 MB y prepárela para usarla con el LVM como un volumenfísico.
ImportantePara tener espacio para crear particiones adicionales en el futuro, si es necesario,asegúrese de crear una partición extendida previamente.
[root@serverX ~]# fdisk -cu /dev/vdaCommand (m for help): nCommand action e extended p primary partition (1-4)pPartition number (1-4): 3First sector (9914368-12582911, default 9914368): Enter Using default value 9914368Last sector, +sectors or +size{K,M,G} (9914368-12582911, default 12582911): +512M
Command (m for help): tPartition number (1-4): 3
Administración de almacenamiento flexible con el administrador de volúmenes lógicos
RH200-6-es-2-20110115 317
Hex code (type L to list codes): 8eChanged system type of partition 3 to 8e (Linux LVM)
Command (m for help): wThe partition table has been altered!... Output Omitted ...[root@serverX ~]# reboot[root@serverX ~]# pvcreate /dev/vda3 Physical volume "/dev/vda3" successfully created
2. Cree un grupo de volúmenes con el nombre shazam mediante el uso del volumen físicocreado en el paso anterior.
[root@serverX ~]# vgcreate shazam /dev/vda3 Volume group "shazam" successfully created
3. Cree y formatee con ext4 un nuevo volumen lógico de 256 MB con el nombre /dev/shazam/storage.
[root@serverX ~]# lvcreate -n storage -L 256M shazam Logical volume "storage" created[root@serverX ~]# mkfs -t ext4 /dev/shazam/storagemke2fs 1.41.12 (17-May-2010)... Output Omitted ...
4. Modifique el sistema de modo que /dev/shazam/storage se monte durante el proceso dearranque como /storage.
[root@serverX ~]# mkdir /storage
Agregue la línea siguiente a la parte inferior de /etc/fstab en serverX:
/dev/shazam/storage /storage ext4 defaults 1 2
Pasos básicos para la extensión de un volumen lógico1. Verificar el espacio disponible en el grupo de volúmenes
2. Extender el volumen lógico
3. Extender el sistema de archivos
Práctica Ejercicio
Extender un volumen lógico
Todas estas acciones deben ejecutarse en serverX.
1. Determine la cantidad de espacio libre en el grupo de volúmenes shazam.
[root@serverX ~]# vgdisplay shazam
Apéndice A. Soluciones
318 RH200-6-es-2-20110115
--- Volume group --- VG Name shazam System ID Format lvm2... Output Omitted... VG Size 508.00 MiB PE Size 4.00 MiB Total PE 127 Alloc PE / Size 64 / 256.00 MiB Free PE / Size 63 / 252.00 MiB VG UUID accvy0-3bhi-9jK8-eg7u-44AL-ARRg-r7Uo30
2. Extienda el volumen lógico /dev/shazam/storage con la mitad de las extensionesdisponibles en el grupo de volúmenes usando las herramientas de la línea de comando.
[root@serverX ~]# lvextend -l +32 /dev/shazam/storage Extending logical volume storage to 384.00 MiB Logical volume storage successfully resized
3. Extienda el sistema de archivos montado en /storage con las herramientas de la línea decomando.
[root@serverX ~]# resize2fs /dev/shazam/storageresize2fs 1.41.12 (17-May-2010)Filesystem at /dev/shazam/storage is mounted on /storage; on-line resizing requiredold desc_blocks = 1, new_desc_blocks = 2Performing an on-line resize of /dev/shazam/storage to 393216 (1k) blocks.The filesystem on /dev/shazam/storage is now 393216 blocks long.
Práctica Ejercicio
Extender un grupo de volúmenes
Todas estas acciones deben ejecutarse en serverX.
1. Cree una nueva partición de 512 MB y prepárela para usarla con el LVM como un volumenfísico.
ImportantePara tener espacio para crear particiones adicionales en el futuro, si es necesario,asegúrese de crear una partición extendida previamente.
[root@serverX ~]# fdisk -cu /dev/vda
Command (m for help): nCommand action e extended p primary partition (1-4)eSelected partition 4
Administración de almacenamiento flexible con el administrador de volúmenes lógicos
RH200-6-es-2-20110115 319
First sector (10962944-12582911, default 10962944): Enter Using default value 10962944Last sector, +sectors or +size{K,M,G} (10962944-12582911, default 12582911): Enter Using default value 12582911
Command (m for help): nFirst sector (10964992-12582911, default 10964992): Enter Using default value 10964992Last sector, +sectors or +size{K,M,G} (10964992-12582911, default 12582911): +512M
Command (m for help): tPartition number (1-5): 5Hex code (type L to list codes): 8eChanged system type of partition 5 to 8e (Linux LVM)
Command (m for help): wThe partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: Device or resource busy.The kernel still uses the old table. The new table will be used atthe next reboot or after you run partprobe(8) or kpartx(8)Syncing disks.[root@serverX ~]# reboot[root@serverX ~]# pvcreate /dev/vda5 Physical volume "/dev/vda5" successfully created
2. Extienda el grupo de volúmenes shazam al agregar el volumen físico creado en el pasoanterior.
Use vgextend para extender el grupo de volúmenes.
[root@serverX ~]# vgextend shazam /dev/vda5 Volume group "shazam" successfully extended
Determinar el tamaño de instantánea1. Frecuencia de cambio prevista
2. Tiempo de instantánea requerido
Práctica Ejercicio
Creación de una instantánea de LVM
Compare el contenido del volumen lógico existente, /dev/shazam/storage, con una nuevainstantánea de volumen, /dev/shazam/storagesnap, mientras realiza cambios en el volumenoriginal.
Todas estas acciones deben ejecutarse en serverX.
1. Copie el archivo /usr/share/dict/linux.words en /storage para tener algunos datospara comparar.
Apéndice A. Soluciones
320 RH200-6-es-2-20110115
[root@serverX ~]# cp /usr/share/dict/linux.words /storage
2. Cree una nueva instantánea de volumen lógico de 20 MB de /dev/shazam/storage con elnombre storagesnap.
[root@serverX ~]# lvcreate -n storagesnap -L20M -s /dev/shazam/storage Logical volume "storagesnap" created
3. Monte /dev/shazam/storagesnap manualmente, con acceso de sólo lectura, en /storagesnap.
[root@serverX ~]# mkdir /storagesnap[root@serverX ~]# mount -o ro /dev/shazam/storagesnap /storagesnap
4. Enumere el contenido de /storagesnap y tenga en cuenta que es igual a /storage.
[root@serverX ~]# ls /storagesnap /storage/storage:linux.words lost+found
/storagesnap:linux.words lost+found
5. Elimine el archivo /storage/linux.words y tenga en cuenta que aún existe en /storagesnap.
[root@serverX ~]# rm /storage/linux.wordsrm: remove regular file `/storage/linux.words'? y[root@serverX ~]# ls /storagesnap /storage/storage:lost+found
/storagesnap:linux.words lost+found
6. Limpie: desmonte /storagesnap, quite el directorio y elimine el volumen lógicostoragesnap.
[root@serverX ~]# umount /storagesnap[root@serverX ~]# rmdir /storagesnap[root@serverX ~]# lvremove /dev/shazam/storagesnapDo you really want to remove active logical volume storagesnap? [y/n]: y Logical volume "storagesnap" successfully removed
Prueba de criterios
RH200-6-es-2-20110115 321
Prueba
Prueba de criterios
Caso de estudio
Caso de estudio de LVMAntes de comenzar...Asegúrese de ejecutar lab-setup-lvm desde su sistema de desktopX, lo cual preparará alsistema de serverX para la clase práctica.
[root@serverX ~]# lab-setup-lvm
Una vez que esté listo, ejecute el script lab-grade-lvm en serverX para verificar su trabajo.
Allison necesita almacenar datos para su negocio. Su base de datos de clientes actual es de 256MB. La información en la base de datos cambia alrededor de 10 MB por hora en un día normal. Elsoftware de copia de seguridad tarda 10 minutos para realizar una ejecución completa.
Cree un nuevo grupo de volúmenes con el nombre allison con suficiente espacio para unvolumen de 512 MB y una instantánea de ese volumen para el software de copia de seguridad.
Una vez que haya creado el grupo de volúmenes, cree en él un volumen lógico de 512 MB para labase de datos de clientes de Allison con el nombre custdb. Además, cree una instantánea delvolumen de la base de datos de clientes de Allison con el nombre custdbsnap para su softwarede copia de seguridad.
1. Cree una nueva partición de 1 GB con fdisk, y vuelva a arrancar la máquina para que seapliquen los cambios.
[root@serverX ~]# fdisk -cu /dev/vda
Command (m for help): p
Disk /dev/vda: 21.5 GB, 21474836480 bytes...
Device Boot Start End Blocks Id System/dev/vda1 * 2048 526335 262144 83 Linux/dev/vda2 526336 9914367 4694016 8e Linux LVM
Command (m for help): nCommand action e extended p primary partition (1-4)pPartition number (1-4): 3First sector (9914368-41943039, default 9914368): Using default value 9914368Last sector, +sectors or +size{K,M,G} (9914368-41943039, default 41943039): +1G
Command (m for help): w...
Apéndice A. Soluciones
322 RH200-6-es-2-20110115
The kernel still uses the old table. The new table will be used atthe next reboot or after you run partprobe(8) or kpartx(8)Syncing disks.
Vuelva a arrancar serverX.
2. Prepare la partición recientemente creada para utilizarla con el LVM.
[root@serverX ~]# pvcreate /dev/vda3 Physical volume "/dev/vda3" successfully created
3. Cree un nuevo grupo de volúmenes con el nombre allison usando la nueva partición.
[root@serverX ~]# vgcreate allison /dev/vda3 Volume group "allison" successfully created
4. Cree un volumen lógico de 512 MB para la base de datos de clientes de Allison.
[root@serverX ~]# lvcreate -n custdb -L512M allison Logical volume "custdb" created
5. Cree una instantánea de 10 MB para la base de datos de clientes de Allison.
[root@serverX ~]# lvcreate -n custdbsnap -L10M -s /dev/allison/custdb Rounding up size to full physical extent 12.00 MiB Logical volume "custdbsnap" created
6. Una vez que esté listo, ejecute el script lab-grade-lvm en serverX para verificar sutrabajo.
Controlar el proceso de arranque
RH200-6-es-2-20110115 323
Controlar el proceso de arranque
Escriba una definición para cada uno de estos términos clave:
1. Gestor de arranque
un programa que carga un kernel del sistema operativo en la memoria y lo ejecuta
2. GRUB
Gran gestor de arranque unificado, el gestor de arranque que utiliza Red HatEnterprise Linux
Práctica Lista de verificación de rendimiento
Arranque de un kernel alternativo
Realice todos los pasos siguientes en serverX.
Configure yum para que apunte al repositorio Errata en la máquina instructor con elsiguiente comando:
[root@serverX ~]# wget http://instructor/pub/gls/errata.repo -O /etc/yum.repos.d/errata.repo
Instale la actualización de kernel que esté disponible. La instalación demorará más de 3minutos.
[root@serverX ~]# yum update -y kernel
Arranque en el nuevo kernel.
Vuelva a arrancar correctamente el sistema con el comando reboot. GRUB estaráconfigurado para realizar el arranque con el nuevo kernel de manera predeterminada.
Vuelva a arrancar y seleccione el kernel antiguo.
Nuevamente, vuelva a arrancar el sistema con el comando reboot. Cuando aparezcala cuenta regresiva de GRUB, presione la tecla Esc para ver el menú de GRUB. Use lasteclas de dirección para seleccionar el kernel con el número menor y luego presioneEnter para iniciar el proceso de arranque.
Definiciones de niveles de ejecución1. Escriba una definición para este término clave:
Nivel de ejecución
El estado de un sistema que define los servicios que están disponibles
2. ¿Para qué se usan generalmente estos niveles de ejecución?
Nivel de ejecución 5: escritorio gráfico
Apéndice A. Soluciones
324 RH200-6-es-2-20110115
Nivel de ejecución 3: multiusuario, no GUI
Nivel de ejecución 1: modo monousuario, sin red (similar al "modo seguro" en Windows)
Práctica Lista de verificación de rendimiento
Cambio de la contraseña root
Este ejercicio cronometrado está diseñado para que ponga en práctica el cambio de lacontraseña de usuario root en un sistema con una contraseña de usuario root desconocida.
Realice todos los pasos siguientes en serverX.
Primero, ejecute el script lab-setup-bootbreak-4. Esto cambiará la contraseña deusuario root a caracteres desconocidos y marcará el tiempo actual.
[root@serverX ~]# lab-setup-bootbreak-4
Ingrese al sistema y restablezca la contraseña de usuario root en redhat.
ImportanteCuando se lanzó Red Hat Enterprise Linux 6, había un error de SELinux quebloqueaba el comando passwd en el modo monousuario (n.º 644820). Si tiene elpaquete selinux-policy original instalado, debe ejecutar el comando setenforce0 en el nivel de ejecución 1 antes del comando passwd, para que funcione. Luegode cambiar la contraseña, debe ejecutar setenforce 1 nuevamente para volver acolocar SELinux en modo obligatorio.
Interrumpa la cuenta regresiva de GRUB (tecla ESC). Use "e" para editar la configuraciónactual. Seleccione la línea kernel para corregirla con las teclas de dirección. Vuelva aescribir "e" para editar la línea actual y agregue un "espacio" y "single". Escriba "b"para realizar el arranque con los cambios actuales.
# setenforce 0# passwdChanging password for user root.New password: redhatBAD PASSWORD: it is based on a dictionary wordBAD PASSWORD: is too simpleRetype new password: redhatpasswd: all authentication tokens updated successfully.# setenforce 1
Una vez que haya restablecido la contraseña, cambie el sistema al nivel de ejecución 5 yejecute el script lab-grade-bootbreak-4.
Controlar el proceso de arranque
RH200-6-es-2-20110115 325
# init 5...[root@serverX ~]# lab-grade-bootbreak-4
Consulte los comentarios del script para asegurarse de haber completado la tareacorrectamente. El script de evaluación mostrará un tiempo; escríbalo.
Repita el proceso al menos cinco veces.
Encierre en un círculo su mejor tiempo.
Práctica Lista de verificación de rendimiento
Superación de un error de configuración de GRUB
Realice todos los pasos siguientes en serverX.
Ejecute el script lab-setup-bootbreak-5 para introducir un problema con el procesode arranque.
Solucione el problema de modo que el sistema pueda arrancar y usted pueda iniciarsesión.
El problema que debe solucionarse es el nombre de un archivo o una directiva deGRUB mal escrito. Se debe interrumpir el proceso de arranque. Para esto, presione Esccuando aparezca la cuenta regresiva del GRUB. Escriba el comando e para mostrar laconfiguración GRUB que se utiliza e identificar el error. Use los comandos de ediciónque aparecen debajo del menú del GRUB para corregir el error tipográfico. Escriba elcomando b para aceptar los cambios y comenzar el proceso de arranque.
Práctica Lista de verificación de rendimiento
Convertir los cambios en GRUB en persistentes
Realice todos los pasos siguientes en serverX.
Vuelva a arrancar el equipo y confirme que el problema anterior no esté solucionado deforma persistente. Para arrancar el sistema, deberá aplicar la solución del mismo modoque lo hizo anteriormente.
Repita los pasos que realizó en el problema anterior para arrancar el sistema losuficiente como para mostrar una señal del intérprete de comandos.
Edite el archivo de configuración para solucionar definitivamente el problema.
Edite el archivo de configuración del GRUB con el editor de texto que prefiera paracorregir el error tipográfico de manera permanente:
Apéndice A. Soluciones
326 RH200-6-es-2-20110115
[root@serverX ~]# vim /boot/grub/grub.conf
Revierta al kernel más antiguo. Asegúrese de que, cuando vuelva a arrancar el equipo, elkernel más antiguo sea el predeterminado.
Modifique el archivo de configuración del GRUB de modo que la directiva defaultseleccione el kernel más antiguo. Recuerde que la numeración de las estrofas dearranque del GRUB comienza a partir de 0.
Investigación y aprendizaje sobre argumentos dekernel1. Instale el paquete kernel-doc.
2. Consulte el material en kernel-parameters.txt que se encuentra en el directorio /usr/share/doc/kernel-doc*/Documentation/.
3. Cada equipo debe investigar y resumir los siguientes parámetros de kernel:
Equipo 1:
• console
Redirección de la consola: console=ttyS0
Equipo 2:
• enforcing
Control de SELinux: enforcing=0|1
enforcing=1 establece el modo obligatorio. enforcing=0 establece el modo permisivo.
• selinux
Control de SELinux: selinux=0|1
selinux=0 deshabilita SELinux por completo. selinux=1 habilita SELinux.
Equipo 3:
• init
Proceso de inicialización: init=/bin/bash
Equipo 4:
• root
Montar sistema de archivos raíz:
root=/path/to/root/volume
Controlar el proceso de arranque
RH200-6-es-2-20110115 327
• ro
ro: sistema de archivos raíz de sólo lectura
• rw
rw: sistema de archivos raíz de lectura y escritura
Práctica Lista de verificación de rendimiento
Paso de argumentos de kernel
Anteriormente, tuvimos que desactivar el modo obligatorio de SELinux para cambiar lacontraseña del usuario root en el nivel de ejecución 1. Hay un parámetro de kernel que nospermite hacerlo sin usar comandos del intérprete de comandos. Realice los pasos siguientes enserverX.
Antes de volver a arrancar su máquina serverX, verifique cuál es su estadopredeterminado de SELinux al ejecutar el comando getenforce. Confirme que elsistema arranque normalmente en el modo obligatorio.
[root@serverX ~]# getenforceEnforcing
Vuelva a arrancar su máquina serverX y pase enforcing=0 al kernel cuando arranqueel sistema.
Detenga la cuenta regresiva del GRUB con la tecla Esc y luego use el comando a paraagregar el argumento enforcing=0 adicional al kernel. Escriba Enter para aceptar loscambios y comenzar el proceso de arranque.
Una vez que finalice el proceso de arranque de serverX, verifique cuál es su estado deSELinux. Confirme que el sistema haya arrancado en modo permisivo.
[root@serverX ~]# getenforcePermissive
Práctica Lista de verificación de rendimiento
Cambio del nivel de ejecución predeterminado
Está configurando un sistema nuevo al cual accederá de forma remota. Actualmente, el sistemaarranca en el nivel de ejecución 5 de forma predeterminada, pero esta máquina permaneceráen un centro de datos donde usted sólo iniciará sesión de forma remota. Realice los pasossiguientes en serverX.
Cambie serverX para que arranque en el nivel de ejecución 3 de forma predeterminada.
Cambie la línea en /etc/inittab por lo siguiente:
Apéndice A. Soluciones
328 RH200-6-es-2-20110115
id:3:initdefault:
Vuelva a arrancar serverX.
[root@serverX ~]# reboot
Habrá completado correctamente este ejercicio de laboratorio si serverX arranca enmodo de texto sin interacción humana.
Prueba
Prueba de criterios
Ejercicio
Recuperación del escándalo de Bad BrianAntes de comenzar...Ejecute lab-setup-bootbreak en desktopX para restaurar el estado original de serverX.
Brian fue un practicante de verano que trabajó como administrador de sistemas para uno desus servidores críticos, serverX. La tensa relación de su compañía con él finalmente terminóen un escándalo y en su despido inmediato. Lamentablemente, cuando Bad Brian se fue de lacompañía, se llevó la contraseña de usuario root para serverX.
Se le ha asignado a usted la responsabilidad de tener el control de serverX nuevamente:
1. Ejecute el script lab-setup-bootbreak-6 en serverX para preparar a ese servidor paraeste ejercicio de laboratorio. Esto le asignará a su sistema una contraseña de usuario rootdesconocida y volverá a arrancar el sistema.
2. Establezca redhat como contraseña de usuario root.
Como el sistema no se inicia, será necesario arrancarlo en el nivel de ejecución 1 y corregir laentrada mal configurada del disco RAM y la contraseña del usuario root.
1. Cuando aparezca el menú del GRUB, presione cualquier tecla para interceptar el GRUBdurante el proceso de inicialización.
2. Resalte la línea de título que desee y presione e para editarla.
3. Resalte la línea de disco RAM y presione e para editarla.
4. Modifique la línea de disco RAM eliminando -BROKEN de la entrada; presione <ENTER>.
5. Resalte la línea de kernel y luego presione e para editarla.
6. Agregue un espacio y el número uno ("1") al final de la línea de kernel, presione<ENTER> y luego b para arrancar el sistema usando sus modificaciones temporales enGRUB.
Controlar el proceso de arranque
RH200-6-es-2-20110115 329
7. Cuando aparezca la señal del intérprete de comandos, ejecute passwd y configure lacontraseña del usuario root como redhat.
(Debido a un error en las primeras versiones de Red Hat Enterprise Linux 6, elintérprete de comandos de modo monousuario no tenía el contexto correcto de SELinuxpara ejecutar el comando passwd. Aunque pronto se lanzó una revisión, las solucionessiguientes suspenden temporalmente y restauran SELinux como un recordatorio de esteproblema).
Telling INIT to go to single user mode.[root@localhost /]# setenforce 0[root@localhost /]# passwdChanging password for user root.New password: redhatBAD PASSWORD: it is based on a dictionary wordBAD PASSWORD: is too simpleRetype new password: redhatpasswd: all authentication tokens updated successfully.[root@localhost /]# setenforce 1
8. Escriba exit para arrancar el sistema en modo multiusuario e iniciar la red para que sepuedan realizar revisiones adicionales.
3. Instale la actualización del kernel, pero configure el sistema de modo que el kernel antiguose siga usando de forma predeterminada.
[root@server1 ~]# yum update kernel...Dependencies Resolved
================================================================================ Package Arch Version Repository Size================================================================================Installing: kernel x86_64 2.6.32-71.7.1.el6 Updates 22 MUpdating for dependencies: kernel-firmware noarch 2.6.32-71.7.1.el6 Updates 1.1 M
Transaction Summary================================================================================Install 1 Package(s)Upgrade 1 Package(s)
Total download size: 23 MIs this ok [y/N]: y...Complete!
Edite /boot/grub/grub.conf al cambiar default=0 para que coincida con el índice de laestrofa del kernel antiguo, como default=1. (Recuerde que la primera estrofa se considera laestrofa 0).
NOTA: También debe revisar la línea de disco RAM para asegurarse de que sea correcta.
4. Pase el argumento selinux=1 para el kernel durante el proceso de arranque.
Apéndice A. Soluciones
330 RH200-6-es-2-20110115
Edite /boot/grub/grub.conf agregando selinux=1 al final de la línea de kernel despuésde todos los otros argumentos.
5. Configure el nivel de ejecución 3 como opción predeterminada.
Edite /etc/inittab cambiando 5 por 3 en el segundo campo de la única línea activa.
6. Una vez que arranque su sistema, ejecute el script lab-grade-bootbreak-6 en serverXpara determinar cuán bien llevó a cabo esta tarea.
Ajuste y mantenimiento del kernel
RH200-6-es-2-20110115 331
Ajuste y mantenimiento del kernelPráctica Ejercicio
Carga de módulos y establecimiento de parámetrospredeterminados
Se le ha solicitado que cargue el módulo del kernel nf_conntrack_ftp y que lo configureadecuadamente para un servidor FTP en modo de escucha en el puerto TCP 21 y el puerto 8021.
Los siguientes comandos deben ejecutarse en su serverX.
1. Use el comando locate para asegurarse de que el módulo nf_conntrack_ftp sea compatiblecon su kernel.
locate track_ftp
2. Cargue el módulo de seguimiento de conexión FTP.
modprobe nf_conntrack_ftp
3. Asegúrese de que esté cargado.
lsmod
4. Descargue el módulo de seguimiento de conexión FTP.
modprobe -r nf_conntrack_ftp
5. Asegúrese de que esté descargado.
lsmod
6. Además del puerto 21 estándar, usted planea ejecutar un servidor FTP en el puerto 8021 noestándar. Examine las opciones que podrían permitirle especificar los puertos no estándares.
modinfo nf_conntrack_ftp
7. Configure un archivo /etc/modprobe.d/local.conf, que implementa esta opción unavez cargado.
options nf_conntrack_ftp ports=21,8021
1. ¿Qué comando (familiar) realiza una actualización de kernel? yum update
2. Los kernels nuevos se instalan; no se actualizan. Como cada archivo que pertenece alpaquete de kernels tiene versiones, o reside en un directorio con versiones, RPM requiereque se instalen versiones simultáneas.
3. De forma predeterminada, al "actualizar" un kernel, yum mantendrá un total de 3versiones instaladas y automáticamente quitará cualquier versión anterior.
4. Para usar el nuevo kernel, debe volver a arrancar su máquina.
Apéndice A. Soluciones
332 RH200-6-es-2-20110115
5. Si bien la máquina volverá a arrancar automáticamente en el kernel actualizado, aúnpuede seleccionar un kernel anterior en el menú del gestor de arranque GRUB.
6. Si desea quitar un kernel manualmente, debe especificar no sólo el nombre del paquete(kernel), sino también el número de versión.
Administrar máquinas virtuales
RH200-6-es-2-20110115 333
Administrar máquinas virtuales
Práctica Lista de verificación de rendimiento
Instalación de guest virtual
En este ejercicio de laboratorio, deberá instalar una nueva máquina virtual con Red HatEnterprise Linux usando virt-manager y el instalador gráfico. Una vez que haya realizadocorrectamente este ejercicio de laboratorio, deberá quitar tanto la máquina virtual como suvolumen lógico para recuperar los recursos del sistema que se necesitarán para otros ejerciciosde laboratorio.
Realice los pasos siguientes en desktopX:
Apague correctamente la máquina virtual serverX (vserver) para recuperar losrecursos de memoria RAM y CPU del sistema.
Inicie virt-manager seleccionando Applications → System Tools → Virtual Machine
Manager. Haga clic con el botón secundario del ratón en el icono para la máquina virtual
vserver y luego seleccione Shut Down → Shut Down.
Cree un volumen lógico de 10 GB desde el grupo de volúmenes vol0 y colóquele elnombre guest.
[root@desktopX ~]# lvcreate -n guest -L 10G vol0
Cree una máquina virtual de Red Hat Enterprise Linux 6 con las siguientescaracterísticas:
• Nombre = guest
• Medios de instalación = instalación de red desde http://instructor.example.com/pub/rhel6/dvd
• Memoria (RAM) = 768 MB
• CPU = 1
• Dispositivo de almacenamiento = el volumen lógico creado en el paso anterior
En virt-manager, haga clic con el botón secundario del ratón en el elemento localhost(QEMU) y seleccione New. Cuando aparezca el cuadro de diálogo “New VM”, escribaguest para el nombre y elija el botón de radio Network Install (HTTP, FTP, or NFS) parael método de instalación. Haga clic en el botón Forward cuando esté listo para continuar.
Escriba http://instructor.example.com/pub/rhel6/dvd en el campo URL.Haga clic en el botón Forward cuando esté listo para continuar. Si aparece un cuadro dediálogo de advertencia sobre los permisos de /home/student/.virtinst/boot, hagaclic en Yes y continúe.
En el cuadro de diálogo siguiente, seleccione 768 MB para Memory (RAM) y deje CPUsconfigurado en 1. Haga clic en el botón Forward cuando esté listo para continuar.
Apéndice A. Soluciones
334 RH200-6-es-2-20110115
Para el almacenamiento, seleccione el botón de radio Select managed or other existingstorage y luego especifique la ruta de acceso de /dev/vol0/guest. Haga clic en elbotón Forward cuando esté listo para continuar.
Luego de revisar el cuadro de diálogo final, haga clic en Finish para finalizar la creaciónde la máquina virtual y comenzar la interacción con el instalador de Red Hat, Anaconda.
Cuando aparezcan los menús basados en texto, seleccione las opciones correspondientesde idioma y teclado para su configuración regional. En cada oportunidad, elija OK paracontinuar al siguiente menú. Una vez que se haya especificado la configuración de red,
aparecerá el instalador gráfico. Seleccione View → Resize to VM en los menús de virt-manager.
Cuando se inicie la instalación, elija el teclado y el idioma. Cree su sistema guest segúnlas siguientes especificaciones:
• Cuando se le pregunte acerca del dispositivo de bloque Virtio, elija Re-initializeall.
• Elija la zona horaria apropiada.
• Asigne redhat como contraseña de usuario root.
• Elija el conjunto de software de escritorio.
• Use los valores predeterminados para todo lo demás.
Haga clic en el botón Next para desplazarse más allá de la pantalla de introducción.
En la pantalla de almacenamiento, asegúrese de que el botón de radio Basic StorageDevices esté seleccionado y haga clic en Next. Si aparece un cuadro de diálogo Warningdonde se sugiere que se debe volver a inicializar el almacenamiento, haga clic en elbotón Re-initialize all para limpiar la unidad de la máquina virtual.
Cuando aparezca la pantalla de configuración de red, deje el nombre de hostpredeterminado seleccionado. Se configurará la red porque se está realizando unainstalación de red. Luego, haga clic en el botón Next para continuar.
Elija una zona horaria apropiada y asegúrese de que la casilla de verificación Systemclock uses UTC esté marcada. Para continuar, haga clic en Next.
Especifique la contraseña del usuario root de redhat dos veces y luego haga clic en elbotón Next. Cuando aparezca el cuadro de diálogo Weak Password, ignore la advertenciay haga clic en el botón Use Anyway para continuar.
Dado que el ejercicio del problema indicaba usar el esquema predeterminado departición, haga clic en el botón Next para pasar la pantalla de partición de disco.Haga clic en el botón Write changes to disk cuando aparezca el cuadro de diálogo deadvertencia. En este momento, el disco se particionará y formateará.
Luego, aparecerá la pantalla de selección de software. Seleccione el botón de radiopara el conjunto de software Desktop en lugar del valor predeterminado Basic Server.
Administrar máquinas virtuales
RH200-6-es-2-20110115 335
Haga clic en el botón Next para continuar. Una vez que finalicen las verificaciones dedependencia de software, comenzará la instalación.
Práctica Ejercicio grupal
Investigación y aprendizaje sobre el arranqueautomático de máquinas virtuales
¿Qué pasos debe seguir para configurar un guest virtual para que se inicie automáticamentedurante el proceso de arranque?
1. Iniciar el Administrador de máquina virtual.
2. Hacer doble clic en el perfil de la máquina virtual guest.
3. Elegir View → Details.
4. Seleccionar Boot Options.
5. Marcar o desmarcar la casilla de verificación Start virtual machine on host boot up y hacerclic en Apply.
6. Agregar lo siguiente al archivo /etc/sysconfig/libvirt-guests:
ON_BOOT=ignore
Práctica Lista de verificación de rendimiento
Configuración de máquinas virtuales durante elproceso de arranque
Configure la máquina virtual serverX (vserver) para que no se inicie durante el procesode arranque.
Configure la máquina virtual guest para que se inicie durante el proceso de arranque.
Inicie el Administrador de máquina virtual y haga doble clic en la máquina virtual
guest. Elija View → Details y seleccione Boot Options. Asegúrese de que la casilla de
verificación Start virtual machine on host boot up esté marcada y haga clic en Apply sies necesario. Agregue ON_BOOT=ignore a /etc/sysconfig/libvirt-guests.
Como alternativa, desde la línea de comando:
[root@desktopX ~]# virsh autostart guest[root@desktopX ~]# echo 'ON_BOOT=ignore' >> /etc/sysconfig/libvirt-guests
Vuelva a arrancar la máquina física (desktopX).
[root@desktopX ~]# reboot
Apéndice A. Soluciones
336 RH200-6-es-2-20110115
Confirme que la máquina virtual guest se haya iniciado automáticamente.
Abra el Administrador de máquina virtual y verifique que guest muestre que se estáejecutando.
Como alternativa, desde la línea de comando:
[root@desktopX ~]# virsh list Id Name State---------------------------------- 1 guest running
Configure la máquina virtual guest para que no se inicie durante el proceso de arranque.
Desmarque la casilla de verificación de inicio automático siguiendo los pasos anteriores odesde la línea de comando:
[root@desktopX ~]# virsh autostart --disable guest
Vuelva a arrancar la máquina física (desktopX).
[root@desktopX ~]# reboot
Confirme que la máquina virtual no se inicie automáticamente.
Siga los pasos anteriores para asegurarse de que la máquina virtual guest no se inicie.
IMPORTANTE: Después de realizar correctamente este ejercicio de laboratorio, eliminela máquina virtual guest y el volumen lógico que esta usa para almacenamiento. Esosrecursos deberán estar disponibles para la prueba de criterios.
Desde la GUI:
Abra Virtual Machine Manager. Si la máquina virtual guest está funcionando, haga cliccon el botón secundario del ratón en la máquina virtual guest y seleccione Shutdown
→ Force Off. Haga clic con el botón secundario del ratón en la máquina virtual guesty seleccione Delete; luego, haga clic en Delete. Ejecute lvremove -f /dev/vol0/guest para quitar el volumen lógico.
Advertencia: Liberar el volumen lógico puede llevar más de un minuto. Si el comandolvremove no funciona, espere un minuto e inténtelo de nuevo.
Desde la línea de comando:
[root@desktopX ~]# virsh destroy guest[root@desktopX ~]# virsh undefine guest[root@desktopX ~]# lvremove -f /dev/vol0/guest
Advertencia: Liberar el volumen lógico puede llevar más de un minuto. Si el comandolvremove no funciona, espere un minuto e inténtelo de nuevo.
Prueba de criterios
RH200-6-es-2-20110115 337
Prueba
Prueba de criterios
Caso de estudio
Estación de trabajo virtual para William WonderboyWilliam Wonderboy acaba de ingresar a la compañía como desarrollador de software. Necesitauna máquina propia para escribir códigos y realizar pruebas sin interferir en el trabajo de losdemás. Se le ha asignado a usted la tarea de crear una máquina virtual para que la use William.
Cree una máquina virtual con el nombre wonderboy con un dispositivo de almacenamiento deLVM con el nombre /dev/vol0/wonderboy. Use los medios de instalación que se encuentranen el siguiente URI:
• http://instructor.example.com/pub/rhel6/dvd
La máquina virtual del Sr. Wonderboy debe tener una memoria RAM de 768 MB y 10 GB dealmacenamiento en disco.
Use la dirección IP estática 192.168.0.200+X/24 con una puerta de enlace y el servidor DNS192.168.0.254. Establezca hostX.example.com como nombre de host.
Elija una zona horaria apropiada. Use redhat como contraseña del usuario root.
El disco virtual debe particionarse de la siguiente manera (deberá volver a inicializar el disco):
• 250 MB para /boot
• 1 GB para espacio de intercambio
• 6 GB para /
• El resto del espacio asignado a /home
Elija el conjunto de software Software Development Workstation.
Una vez que finalice la instalación, configure NTP para que se conecte coninstructor.example.com.
Configure esta máquina para que se inicie automáticamente cuando vuelva a arrancar el hostfísico.
1. En desktopX, cree un volumen lógico de 10 GB con el nombre wonderboy.
[root@desktopX ~]# lvcreate -L 10G -n wonderboy vol0
2. En desktopX, abra Virtual Machine Manager.
[root@desktopX ~]# virt-manager
3. Cree una nueva máquina virtual.
a. Haga clic con el botón secundario del ratón en localhost(QEMU) y elija New.
Apéndice A. Soluciones
338 RH200-6-es-2-20110115
b. En el campo Name, escriba wonderboy.
En Choose how you would install the operating system, seleccione Network Install(HTTP, FTP, or NFS).
c. Para Provide the operating system install URL, use http://instructor.example.com/pub/rhel6/dvd.
Presione la tecla Enter y observe que los valores junto a OS type y Version secompletan automáticamente.
notaSi recibe un mensaje sobre los permisos de búsqueda, elija No para avanzar.
d. Modifique Memory (RAM) para que diga 768. Deje los valores predeterminados en losvalores restantes.
e. Elija Select managed or other existing storage. Desplácese a /dev/vol0/wonderboyo escríbalo. Deje los valores predeterminados en los valores restantes.
f. Verifique los valores y haga clic en Finish.
4. Use Anaconda para instalar el guest.
a. Seleccione el idioma.
b. Seleccione el tipo de teclado.
c. Anule la selección del soporte de IPv6.
d. Seleccione Basic Storage Devices.
e. Seleccione Re-initialize all o bien, si esta instalación se realiza sobre una instalaciónprevia, se le solicitará que especifique Fresh o Upgrade Installation. Elija FreshInstallation en caso de que se trate de una instalación nueva.
f. En Hostname especifique hostX.example.com.
g. Elija Configure Network.
i. Haga clic en la pestaña Wired (si es necesario).
ii. Resalte System eth0 y haga clic en Edit.
iii. Haga clic en IPv4 Settings.
iv. Modifique Method por Manual.
v. Agregue la dirección IP: 192.168.0.X+200.
Prueba de criterios
RH200-6-es-2-20110115 339
NOTA: La máscara de red debe completarse automáticamente como 24.
vi. Haga clic en el área debajo de la columna Gateway y luego agregue 192.168.0.254para la puerta de enlace.
vii. Agregue DNS servers: 192.168.0.254
viii. Haga clic en Apply y luego cierre Network Connections.
h. Elija la zona horaria apropiada y marque UTC.
i. Escriba redhat como contraseña del usuario root.
j. Elija Create Custom Layout y cree las siguientes particiones.
i. Elimine las particiones existentes (si es necesario).
ii. Cree: Standard partition, punto de montaje /boot, ext4, tamaño de 250 MB.
iii. Cree: Standard partition, tipo de sistema de archivos: intercambio, tamaño de 1024MB.
iv. Cree: Standard partition, punto de montaje /, ext4, tamaño de 6144 MB.
v. Cree: Standard partition, punto de montaje /home, ext4, seleccione Fill tomaximum allowable size.
Para continuar, seleccione Next.
Si aparecen Format Warnings, elija Format.
Elija Write changes to disk.
k. Para Boot loader configuration, use los valores predeterminados.
l. Para Package Selection, seleccione el conjunto de software Software DevelopmentWorkstation. Deje los valores predeterminados en los valores restantes.
m. Controle la instalación.
n. Cuando se le pregunte si desea volver a arrancar el sistema, hágalo.
5. Dado que instalamos un escritorio gráfico, veremos Welcome screen durante el primerarranque.
a. Haga clic en Forward para License information y luego, haga clic en Forwardnuevamente.
b. Para Set Up Software Updates, seleccione No, I prefer to register at a later time.
c. Cuando se le pregunte si desea conectarse a Red Hat Network, haga clic en No thanks,I'll connect later.
d. Cree un usuario.
Apéndice A. Soluciones
340 RH200-6-es-2-20110115
i. Username: wonderboy.
ii. Full Name: William Wonderboy.
iii. Password: redhat.
iv. Confirm password: redhat.
e. Fecha y hora
i. Haga clic en Synchronize date and time over network.
ii. Quite todas las entradas actuales. Para esto, resalte cada entrada y luego haga clicen delete.
iii. Haga clic en Add; luego ingrese instructor.example.com y presione Enter. Acontinuación, haga clic en Forward.
El sistema ubicará el servidor NTP (instructor.example.com) y continuará.
f. Puede ver el mensaje Insufficient memory to configure kdump!. Haga clic en OK.
g. Haga clic en Finish.
6. Configure la máquina para que se inicie automáticamente cuando vuelva a arrancar lamáquina host.
a. En la ventana virt-manager para el guest, elija el elemento del menú View → Details.
b. Navegue hasta el panel Boot Options.
c. Seleccione la casilla de verificación Start virtual machine on host boot up y haga clicen Apply.
Instalación automática de Red Hat Enterprise Linux
RH200-6-es-2-20110115 341
Instalación automática de Red Hat EnterpriseLinux
Práctica Caso de estudio
Creación de un archivo kickstart con system-config-kickstart
Realice este ejercicio en su máquina desktopX como student.
En este ejercicio, su organización implementará estaciones de trabajo basadas en Red HatEnterprise Linux para los ingenieros y se le ha solicitado que cree un archivo kickstart parafacilitar la tarea.
Usted instalará system-config-kickstart y lo usará para crear un archivo kickstart deacuerdo con los parámetros especificados a continuación:
• Elija la zona horaria adecuada.
• La contraseña del usuario root debe ser redhat.
• Kickstart debe realizar una instalación nueva desde el servidor web http://instructor.example.com/pub/rhel6/dvd.
• El sistema debe tener un sistema de archivos ext4 de 100 MB montado en /boot.
• El sistema debe tener una partición de intercambio de 512 MB.
• El espacio en disco restante debe asignarse a una partición ext4 montada en /.
• El dispositivo eth0 debe iniciarse durante el proceso de arranque y usar DHCP para laconfiguración.
• Instale el grupo de paquetes Base.
• Establezca un script posterior a la instalación que agregue:
ENGINEERING WORKSTATION
al archivo /etc/issue.
• Guarde el archivo kickstart como /home/student/engineer.cfg.
• El archivo kickstart obtenido como resultado debe ser similar a lo siguiente:
#platform=x86, AMD64, or Intel EM64T#version=DEVEL# Firewall configurationfirewall --disabled# Install OS instead of upgradeinstall# Use network installation
Apéndice A. Soluciones
342 RH200-6-es-2-20110115
url --url="http://instructor.example.com/pub/rhel6/dvd"# Root passwordrootpw --iscrypted $1$Fjoetb6b$AmMP6QWUV/Eep5XY1nH140# Network informationnetwork --bootproto=dhcp --device=eth0 --onboot=on# System authorization informationauth --useshadow --passalgo=md5# Use graphical installgraphicalfirstboot --disable# System keyboardkeyboard us# System languagelang en_US# SELinux configurationselinux --enforcing# Installation logging levellogging --level=info
# System timezonetimezone America/New_York# System bootloader configurationbootloader --location=mbr# Partition clearing informationclearpart --all --initlabel # Disk partitioning informationpart /boot --fstype="ext4" --size=100part swap --fstype="swap" --size=1part / --fstype="ext4" --grow --size=1
%postecho ENGINEERING WORKSTATION >> /etc/issue%end
%packages@base%end
Práctica Ejercicio
Poner el archivo kickstart a disposición de losinstaladores a través de HTTP
1. Inicie sesión en desktopX como student..
2. Conviértase en root e implemente un servidor web.
notaRecuerde que debe instalar, iniciar, habilitar y probar.
[root@desktopX]# yum install -y httpd[root@desktopX]# service httpd start[root@desktopX]# chkconfig httpd on
Instalación automática de Red Hat Enterprise Linux
RH200-6-es-2-20110115 343
[root@desktopX]# elinks -dump http://desktopX
3. Copie /home/student/engineer.cfg en /var/www/html/.
[root@desktopX ~]# cp /home/student/engineer.cfg /var/www/html/
4. Acceda a http://desktopX/engineer.cfg de un navegador web para verificar la disponibilidad.
[root@desktopX ~]# elinks -source http://desktopX/engineer.cfg
Práctica Ejercicio
Inicio de una instalación kickstartAntes de comenzar...Apague correctamente su máquina virtual serverX (vserver) para recuperar los recursos delsistema.
Apague correctamente su máquina virtual wonderboy. Elimine la máquina virtual y el discoutilizado para esta máquina.
Use el archivo kickstart creado anteriormente (engineer.cfg) para implementar una nuevamáquina virtual.
1. En desktopX, cree una nueva máquina virtual con virt-manager. Elija Network Boot(PXE) como el método de instalación. Configure la máquina virtual con los valorespredeterminados si no están especificados a continuación:
• Nombre: ingeniero
• Create a disk image on the computer's hard drive: 4 GB
2. Cree e ingrese una línea de invocación de kickstart adecuada para el archivoengineer.cfg; luego, inicie la instalación.
Una vez que aparezca la pantalla de instalación de PXE, presione la tecla Tab e ingrese lasiguiente información de kickstart:
> vmlinuz initrd=initrd.img ks=http://desktopX/engineer.cfg
Si el archivo kickstart tiene errores, es posible que se cancele la instalación. Si ese es elcaso, edite el archivo /var/www/html/engineer.cfg en desktopX y corrija el problema.Destruya la VM engineer y su disco y reinicie la instalación.
Práctica Caso de estudio
Apéndice A. Soluciones
344 RH200-6-es-2-20110115
Modificar un archivo kickstart sin system-config-kickstart
notaPor cuestiones de tiempo, no realizará una instalación usando este archivo kickstart.
Como root en desktopX, cree una copia de /root/anaconda-ks.cfg con el nombre /home/student/projman.cfg. Mediante el uso de un editor de textos solamente, modifique esearchivo de modo que cumpla con los siguientes criterios:
1. La instalación debe ser totalmente automática y debe ser exactamente igual a la instalaciónactual de desktopX (incluidas las particiones), a excepción de que...
• Se instalará el grupo de paquetes Backup Server.
• Se instalará el paquete mtx, que no se instala con el grupo Backup Server de modopredeterminado.
• No se utilizará ninguno de los scripts existentes de %pre y %post.
• Se creará un archivo /etc/issue en %post, con el nombre:
PROJECT MANAGEMENT
2. ksvalidator debe poder validar el archivo.
Una vez completo todo esto, copie el archivo en /var/www/html/.
1. [root@desktopX]# cp /root/anaconda-ks.cfg /home/student/projman.cfg[root@desktopX]# chown student:student /home/student/projman.cfg[root@desktopX]# chmod 644 /home/student/projman.cfg
2. Como student, edite el archivo /home/student/projman.cfg e incluya los requisitosanteriores. Asegúrese de eliminar los comentarios en clearpart y otras líneas de partición.Debe decir lo siguiente:
# Kickstart file automatically generated by anaconda.
#version=RHEL6installurl --url=ftp://instructor.example.com/pub/rhel6/dvdlang en_US.UTF-8keyboard usnetwork --device eth0 --bootproto dhcprootpw --iscrypted $1$YZO7ZHEP$M0uO1Ut96QBgertJRauEZ/# Reboot after installationrebootfirewall --disabledauthconfig --useshadow --enablemd5
Instalación automática de Red Hat Enterprise Linux
RH200-6-es-2-20110115 345
selinux --enforcingtimezone --utc America/New_Yorkbootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet"# The following is the partition information you requested# Note that any partitions you deleted are not expressed# here so unless you clear all partitions first, this is# not guaranteed to workclearpart --all --drives=sda
part /boot --fstype=ext4 --size=100part pv.LtUgsR-2QYc-f9OV-xG2S-PcGm-sfYq-eHJk2i --size=28000part swap --size=512
volgroup vol0 --pesize=32768 pv.LtUgsR-2QYc-f9OV-xG2S-PcGm-sfYq-eHJk2ilogvol /home --fstype=ext4 --name=home --vgname=vol0 --size=500logvol / --fstype=ext4 --name=root --vgname=vol0 --size=8192repo --name="Red Hat Enterprise Linux" --baseurl=ftp://instructor.example.com/pub/rhel6/dvd/ --cost=100
%packages@Backup Server@Base@Console internet tools@Core@Desktop@Desktop Platform@Development Tools@General Purpose Desktop@Graphical Administration Tools@Internet Browser@Network file system client@Printing client@X Window Systemftplftplibvirtlibvirt-clientlogwatchmtxmuttnss-pam-ldapdntppolicycoreutils-pythonqemu-kvmtigervncvirt-managervirt-viewer%end
%postecho PROJECT MANAGEMENT >> /etc/issue%end
3. [root@desktopX]# ksvalidator /home/student/projman.cfg
4. [root@desktopX]# cp /home/student/projman.cfg /var/www/html
Apéndice A. Soluciones
346 RH200-6-es-2-20110115
Prueba
Prueba de criterios
Lista de verificación de rendimiento
Instalar una máquina virtual con kickstartAntes de comenzar...Apague la máquina virtual engineer que creó anteriormente y elimine la máquina virtual y sudisco.
En la GUI del Administrador de máquina virtual, haga clic con el botón secundario del ratón en
engineer y elija Shutdown → Force Off. Luego, haga clic con el botón secundario del ratón en
engineer nuevamente y elija Delete. Marque Delete associated storage files y haga clic enDelete.
Se puede realizar lo mismo desde la línea de comando:
[root@desktopX]# virsh destroy engineer[root@desktopX]# virsh undefine engineer[root@desktopX]# rm -f /var/lib/libvirt/images/engineer.img
Arranque serverX si no se está ejecutando. Copie el archivo /root/anaconda-ks.cfgde serverX a desktopX y asígnele /home/student/test.cfg como el nombre. ApagueserverX una vez que haya copiado el archivo, para recuperar los recursos del sistemapara el resto del ejercicio de laboratorio.
[root@serverX]# scp /root/anaconda-ks.cfg desktopX:/home/student/test.cfg[root@serverX]# poweroff
Modifique test.cfg según los siguientes criterios:
• Agregue clearpart --all y zerombr, y particione el almacenamiento según losiguiente:
• /boot (ext4): 200 MB
• Intercambio: 512 MB
• / (ext4): 3 GB
• Agregue el paquete gimp.
• Cree un archivo /root/install-date con la fecha y la hora.
Agregue lo siguiente al archivo kickstart.
clearpart --allzerombrpart /boot --fstype=ext4 --size=200part swap --size=512part / --fstype=ext4 --size=3072
Instalación automática de Red Hat Enterprise Linux
RH200-6-es-2-20110115 347
....[after %packages]gimp...
%postdate > /root/install-date...
Copie test.cfg en /var/www/html/ en desktopX. Asegúrese de que el archivo puedaleerse con Apache. Inicie el demonio httpd si aún no está ejecutándose.
[root@desktopX ~]# cp /home/student/test.cfg /var/www/html/[root@desktopX ~]# chmod 644 /var/www/html/test.cfg[root@desktopX ~]# service httpd restart
Cree un volumen lógico en el grupo de volúmenes vol0 con el nombre test, losuficientemente grande como para funcionar como el disco para la máquina virtual.
[root@desktopX ~]# lvcreate -n test -L 4G vol0
Inicie la instalación de una máquina virtual usando su archivo kickstart test.cfg.Asigne test como nombre a la máquina virtual. Use PXE como el método de instalacióny asigne 768 MB de memoria RAM y 1 CPU a la máquina virtual. Use el volumen lógicoque creó en el paso anterior como el almacenamiento para la máquina virtual.
En Virtual Machine Manager, haga clic enNew. Ingrese test como el nombre yseleccione el botón de radio Network Boot (PXE). Haga clic en Forward.
Deje OS Type y Version como Generic y haga clic en Forward.
Modifique Memory (RAM) por 768 MB y haga clic en Forward.
Seleccione el botón de radio Select managed or other existing storage e ingrese (onavegue a) /dev/vol0/test. Haga clic en Forward.
Verifique que la información sea correcta y haga clic en Finish para iniciar la instalación.
Cuando aparezca el menú de instalación, presione la tecla Tab y agregue ks=http://desktopX/test.cfg; luego, presione Enter. La instalación deberá continuar y elsistema volverá a arrancar cuando finalice.
Vuelva a arrancar la máquina virtual cuando finalice la instalación y confirme que sehaya instalado correctamente.
348