Download - Configuracion Servidores Linux-20130329-MARZO 2

Transcript

Configuracin De Servidores Con GNU/Linux Edicin Marzo 201329 De Marzo De 2013

Joel Barrios Dueas

Joel Barrios Dueas

Configuracin de Servidores con GNU/Linux

2

Joel Barrios Dueas

Configuracin de Servidores con GNU/Linux

Si este libro le ha sido de utilidad, puede contribuir al desarrollo de ste a travs de suscripciones voluntarias a nuestro portal. Sus aportaciones nos ayudarn a crecer y desarrollar ms y mejor contenido en el sitio de red y para mejorar este libro. http://www.alcancelibre.org/staticpages/index.php/suscripciones Alcance Libre ofrece soporte tcnico gratuito exclusivamente a travs de nuestros foros localizados en: http://www.alcancelibre.org/forum/ Para cualquier consulta a travs de otros medios, como correo electrnico, telfono o mensajera instantnea, ofrecemos un servicio comercial de consultora. Alcance Libre ofrece los siguientes productos y servicios basados sobre Software Libre, gracias a los cuales financia sus operaciones. Para mayor informacin, estamos disponibles a travs del nmero telefnico (52) (55) 5677-7130 de la ciudad de Mxico o bien directamente en nuestras oficinas centrales en Serapio Rendn #63, oficina 4, Colonia San Rafael, Delegacin Cuauhtemoc, C.P. 06470, Mxico, D.F.

Capacitacin (cursos) Conferencias y plticas Consultora Implementaciones (Servidores) Soporte Tcnico Publicidad en el portal

3

Joel Barrios Dueas

Configuracin de Servidores con GNU/Linux

A mi difunto padre, a quien debo reconocer jams supe comprender y a quien jams le d la oportunidad de entenderme. Blanca, eres el amor de mi vida y gracias a ti inici mi gusto por escribir. Te agradezco el haberme permitido escribirte todas esas cosas hace tantos aos y el que hoy seas mi compaera en la vida. A mis hijos, Joel Alejandro Barrios Caullieres y Sergio Armando Barrios Caullieres.

Ai

4

Joel Barrios Dueas

Configuracin de Servidores con GNU/Linux

Conformacin.Me encuentro de regreso en mis races, reviso mis trabajos pasados, entre risas y otros cursis versos (sueos entonces de adolescente), desde existenciales a lo absurdo, ligerezas tan sentimentales construyendo un carcter (mi mundo).

5

Joel Barrios Dueas

Configuracin de Servidores con GNU/Linux

Acerca de Joel Barrios Dueas.Hay poco que decir respecto de m. Sola ser mdico veterinario zootecnista, dedicado principalmente a la atencin mdica de pequeas especies y otras mascotas (perros, gatos, peces y tortugas) y a la venta de alimentos y accesorios para mascotas. Trabajo activamente con computadoras personales desde 1990, con las cuales siempre he tenido gran facilidad. Mi primera computadora, fue una Apple IIe que me prest un amigo y que eventualmente me vendi. Curiosamente, salvo por una clase que tom en tercero de secundaria, durante la cual nos impartieron una introduccin a la programacin en BASIC y el uso general de computadoras Comodore 16, jams he tomado un curso o capacitacin relacionada con la informtica o computacin. Siempre he sido auto-didctica. Utilizo GNU/Linux desde Febrero de 1998 y desde Junio de 1999 como nica plataforma en mi trabajo diario. Creo que es ms que evidente que equivoque de carrera. Gran parte de las razones de mi incursin en el mundo de la informtica fueron verdaderamente incidentales. En 1997, nunca hubiera imaginado que me estara ganado la vida en un mbito completamente distinto al que me dedicaba durante ese tiempo. Yo ya tena un consultorio veterinario y negocio pequeo de distribucin de alimentos para mascotas, los cuales me aseguraban un ingreso regular y constante. Lamentablemente las condiciones del mercado durante el siguiente ao repercutieron de forma importante en mis ingresos y fue entonces que empec a buscar alternativas. Durante 1999 me estuve dedicando a la venta de equipo de cmputo y algo de diseo de sitios de red. Fueron algunos meses durante los cuales pude sobrevivir gracias a mis ahorros y a la suerte de contar un con talento poco comn con las computadoras.

Cmo empec este proyecto?A mediados de 1999, mientras visitaba a un buen amigo mo, tuve un encuentro amistoso de unos 10 minutos con quien fue, en algn momento, la persona ms importante que ha habido en mi vida, Blanca. Yo suba por un elevador, divagando en mis pensamientos con sutilezas y otros menesteres relacionados con mi profesin de veterinario. Sal del ascensor y me dirig hacia la puerta de mi amigo. Me detuve unos instantes antes de pulsar el botn del timbre. Haba una extraa sensacin que circundaba mi mente, como un aroma familiar que no era posible recordar. Mi amigo tena una reunin con varias personas, algunas de las cuales yo conoca desde haca algunos aos pero que por diversas circunstancias no frecuentaba, as que supuse que era solo la sensacin de volver a ver a personas despus de mucho tiempo. Toque el timbre y un instante despus mi amigo abri la puerta. Le salud con un apretn de manos y tras saludarle de la acostumbrada forma corts, qued mudo al ver que la chica de la que me haba enamorado durante mis aos de preparatoria, estaba presente. Frente a mi, sonriendo y mirndome. Haban pasado varios aos desde la ltima vez que nos habamos visto. Conversamos un poco mientras ella cargaba al perro de mi amigo, al cual me dispona a aplicar una vacuna. Fue difcil dejar de mirarle y lo fue tambin el gusto de volver a verle de nuevo. Me desped, pues tena otro compromiso, pero en mi mente qued un sentimiento de alegra de ver que aquella persona que haba tenido un gran impacto en mi vida, estaba bien, muy hermosa y, en apariencia, feliz.

6

Joel Barrios Dueas

Configuracin de Servidores con GNU/Linux

Fue ese breve encuentro el que me inspir algunos meses despus a crear algo que me proporcionara los medios para lograr hacer algo importante en vida. Fue ese deseo de ser alguien y tener algo que ofrecer si algn da y si las circunstancias lo permitan, buscar una segunda oportunidad con la persona de la que me haba enamorado muchos aos atrs y que de alguna forma jams olvid. Fue as que tras pasar muchas semanas planeando y tratando de dar forma a las ideas, el proyecto de comunidad que inici con Linux Para Todos un 27 de agosto de 1999 y que hoy en da continuo con Alcance Libre. Surgi como un sueo, se materializ, se desarrollo y creci ms all de lo que hubiera imaginado. Es irnico que aos despus, mi reencuentro con Blanca, quien es hoy en da mi esposa y madre de mis hijos Joel Alejandro y Sergio Armando, coincidiera con el fin del ciclo de Linux Para Todos, aunque tambin coincide con el inicio de otros proyectos y una nueva etapa con Alcance Libre. Esta obra, que ahora comparto con los lectores, constituye la culminacin del trabajo de ms de 10 aos de investigacin y experiencias. Mucho del material que le compone fue escrito durante diferentes etapas de mi ciclo mientras fui propietario y administrador de Linux Para Todos. El fin de dicho ciclo me da la oportunidad de explorar otras reas de la informtica desde un diferente enfoque, mismo que se ver reflejado en el material actualizado que compone esta obra. Nunca me ha interesado ser famoso o un millonario. Respecto del futuro, tengo una percepcin distinta acerca de trascender ms all de los recuerdos familiares y trascender en la historia. Tal vez algn da, tal vez cien aos despus de haya muerto, se que de alguna forma mi legado en la historia ser a travs de todo lo que escrib y las cosas que pensaba y aquellas en las que crea.

7

Joel Barrios Dueas

Configuracin de Servidores con GNU/Linux

Currculo.Datos personales

Nombre: Joel Barrios Dueas. Ao y lugar de nacimiento: 1970, Mxico, Distrito Federal. Sexo: masculino. Estado civil: Unin Libre.

Escolaridad

Secundaria: Colegio Mxico (Acoxpa). 1982-1985 Preparatoria: Instituto Centro Unin. 1985-1988 Facultad de Medicina Veterinaria y Zootecnia, U.N.A.M. 1989-1993

Empleos en los que me he desempeado.

1993-1999 Mi propia sub-distribuidora de alimentos y accesorios para mascotas. Direccin general. Visitador Mdico y asesor en informtica. Distribuidora de Alimentos para Pequeas Especies (Dialpe). Junio 1997 - Noviembre 1997. Consultor externo de Dialpe 1998 1999. 1999 a 2006: Fui el creador, director y administrador LinuxParaTodos.net. Asesora y consultora en GNU/Linux. Capacitacin en GNU/Linux. 2002 - 2003: Director Operativo Grupo MPR S.A. de C.V. (Actualmente Buytek Network Solutions) 2002 a 2006: Director del proyecto LPT Desktop. 2007 a la fecha: Director de proyecto AL Desktop (descartado). Director de proyecto AL Server. Director de proyecto ALDOS. Fundador y director de proyecto de AlcanceLibre.org Director del rea de soporte tcnico de Buytek Network Solutions.

Capacidades

Ingls 99% Ensamble, configuracin y mantenimiento de computadoras personales. Lenguajes HTML 4.0, HTML5 y CSS 2.0 Programacin en BASH Instalacin, configuracin y administracin de Linux y servicios que trabajan sobre ste (Samba, Apache, Sendmail, Postfix, ClamAV, OpenLDAP, NFS, OpenSSH, VSFTPD, Shorewall, SNMP, MRTG, Squid, etc.)

8

Joel Barrios Dueas

Configuracin de Servidores con GNU/Linux

Certificados

Novell Certified Linux Desktop Administrator (Novell CLDA). Novell Certified Linux Administrator (Novell CLA).

9

Joel Barrios Dueas

Configuracin de Servidores con GNU/Linux

ndice de contenido1.Que es GNU/Linux?...........................................................................................351.1.Requerimientos del sistema................................................................................................. 36

2.Estndar de Jerarqua de Sistema de Archivos...................................................372.1.Introduccin......................................................................................................................... 37 2.2.Estructura de directorios...................................................................................................... 37 2.3.Particiones recomendadas para instalar CentOS, Fedora, Red Hat Enterprise Linux, openSUSE y SUSE Linux Enterprise.....................................................................................39 2.4.Bibliografa........................................................................................................................... 40

3.Procedimiento de instalacin de CentOS 6.........................................................413.1.Procedimientos.................................................................................................................... 413.1.1.Planeacin.................................................................................................................................... 41 Obtencin de los medios....................................................................................................................... 41 3.1.2.Instalacin del sistema operativo................................................................................................. 42

3.2.Posterior a la instalacin...................................................................................................... 74

4.Ajustes posteriores a la instalacin de CentOS 6...............................................754.1.Procedimientos.................................................................................................................... 754.1.1.Nombres de los dispositivos de red.............................................................................................. 75 4.1.2.Dispositivos de red inactivos........................................................................................................ 76 4.1.3.Localizacin.................................................................................................................................. 77 4.1.4.Desactivar Plymouth.................................................................................................................... 78 4.1.5.Instalar y habilitar, el modo grfico.............................................................................................. 80

5.Planificadores de Entrada/Salida en Linux.........................................................835.1.Introduccin......................................................................................................................... 83 5.2.Planificadores de Entrada/Salida disponibles en el ncleo de Linux....................................835.2.1.Anticipatory.................................................................................................................................. 83 5.2.2.CFQ.............................................................................................................................................. 84 5.2.3.Deadline....................................................................................................................................... 85 5.2.4.Noop............................................................................................................................................. 86

5.3.Cul planificador de Entrada/Salida elegir?........................................................................87 5.4.Bibliografa........................................................................................................................... 88

6.Uso del disco de rescate de CentOS 6................................................................896.1.Procedimientos.................................................................................................................... 89

7.Iniciando el sistema en nivel de ejecucin 1 (nivel mono-usuario)..................1007.1.Introduccin....................................................................................................................... 100 7.2.Procedimientos.................................................................................................................. 100

8.Gestin de servicios..........................................................................................1068.1.Introduccin....................................................................................................................... 106 8.2.Niveles de ejecucin.......................................................................................................... 106 8.3.Activar, desactivar, iniciar, detener o reiniciar servicios....................................................1128.3.1.En CentOS, Fedora y Red Hat Enterprise Linux....................................................................112 8.3.2.En openSUSE y SUSE Linux Enterprise................................................................................. 116

10

Joel Barrios Dueas

Configuracin de Servidores con GNU/Linux

9.Gestin de espacio de memoria de intercambio (swap) en GNU/Linux...........1209.1.Introduccin....................................................................................................................... 1209.1.1.Algo de historia.......................................................................................................................... 120 9.1.2.Qu es y como funciona el espacio de intercambio?................................................................120 9.1.3.Circunstancias en lasque se requiere aumentar la cantidad de memoria de intercambio.........120

Procedimientos........................................................................................................................ 1219.1.4.Cambiar el tamao de la particin............................................................................................. 121 9.1.5.Crear un archivo para memoria de intercambio......................................................................... 121

9.2.Procedimientos.................................................................................................................. 1219.2.1.Activar una particin de intercambio adicional.......................................................................... 121 9.2.2.Utilizar un archivo como memoria de intercambio.....................................................................122 9.2.3.Optimizando el sistema, cambiando el valor de /proc/sys/vm/swappiness................................123

10.Procedimientos de emergencia......................................................................12510.1.Introduccin..................................................................................................................... 125 10.2.Disco de rescate............................................................................................................... 125 10.3.Verificacin de la integridad del disco.............................................................................125 10.4.Respaldo y restauracin del sector de arranque mestro.................................................127 10.5.Asignacin de formato de las particiones........................................................................128

11.Gestin de volmenes lgicos........................................................................13011.1.Introduccin..................................................................................................................... 130 Procedimientos........................................................................................................................ 13011.1.1.Crear un volumen lgico a partir de un disco duro nuevo........................................................130 11.1.2.Aadir un volumen fsico a un volumen lgico existente, a partir de espacio libre sin particionar en un disco duro................................................................................................................................. 133 11.1.3.Quitar una unidad fsica a un volumen lgico..........................................................................136

11.2.Bibliografa....................................................................................................................... 138

12.Optimizacin de sistemas de archivos ext3 y ext4........................................13912.1.Introduccin..................................................................................................................... 13912.1.1.Acerca de Ext3......................................................................................................................... 139 12.1.2.Acerca de Ext4......................................................................................................................... 139 12.1.3.Acerca del registro por diario (journaling)................................................................................ 139

12.2.Procedimientos................................................................................................................ 13912.2.1.Utilizando el mandato e2fsck................................................................................................... 140 12.2.2.Opciones de montado.............................................................................................................. 141 12.2.3.Convirtiendo particiones de Ext3 a Ext4.................................................................................. 144 12.2.4.Eliminando el registro por diario (journal) de Ext4...................................................................146

12.3.Bibliografa....................................................................................................................... 148

13.Cifrado de particiones con LUKS.....................................................................14913.1.Introduccin..................................................................................................................... 149 13.2.Equipamiento lgico necesario........................................................................................14913.2.1.En CentOS, Fedora y Red Hat Enterprise Linux........................................................................149 13.2.2.En openSUSE y SUSE Linux Enterprise..................................................................................... 149

13.3.Procedimientos................................................................................................................ 14913.3.1.Cifrado de una particin existente en CentOS, Fedora y Red Hat Enterprise Linux...........150 13.3.2.Cifrado de una particin existente en openSUSE y SUSE Linux Enterprise........................152 13.3.3.Cifrado de una unidad de almacenamiento externo USB.........................................................160

14.Configuracin y uso de sudo..........................................................................16314.1.Introduccin..................................................................................................................... 16314.1.1.Historia..................................................................................................................................... 163 14.1.2.Acerca de sudo......................................................................................................................... 163

14.2.Equipamiento lgico necesario........................................................................................16414.2.1.Instalacin en CentOS, Fedora y Red Hat Enterprise Linux...................................................164 11

Joel Barrios Dueas

Configuracin de Servidores con GNU/Linux

14.2.2.Instalacin en openSUSE y SUSE Linux Enterprise...................................................................164

14.3.Archivo /etc/sudoers........................................................................................................ 16514.3.1.Cmnd_Alias.............................................................................................................................. 165 14.3.2.User_Alias................................................................................................................................ 166 14.3.3.Host_Alias................................................................................................................................ 167 14.3.4.Runas_Alias.............................................................................................................................. 167

14.4.Candados de seguridad................................................................................................... 168 14.5.Lo ms recomendado....................................................................................................... 17014.5.1.Lo menos recomendado........................................................................................................... 170

14.6.Uso del mandato sudo..................................................................................................... 171 14.7.Facilitando la vida con aliases.........................................................................................17314.7.1.CentOS, Fedora y Red Hat Enterprise Linux.............................................................................173 14.7.2.En openSUSE y SUSE Linux Enterprise..................................................................................... 174

15.Gestin de cuentas de usuario.......................................................................17515.1.Introduccin..................................................................................................................... 175 15.2.Procedimientos................................................................................................................ 17515.2.1.Gestin de cuentas de usuario................................................................................................. 175 15.2.2.Gestin de Grupos.................................................................................................................... 176 15.2.3.Opciones avanzadas................................................................................................................. 177

15.3.Comentarios finales acerca de la seguridad....................................................................181 15.4.Configurando valores predeterminados para el alta de cuentas de usuario....................18315.4.1.Archivo /etc/default/useradd.................................................................................................... 183 15.4.2.Directorio /etc/skel................................................................................................................... 184

15.5.Ejercicio: Creando cuentas de usuario.............................................................................18615.5.1.Introduccin............................................................................................................................. 186 15.5.2.Procedimientos........................................................................................................................ 186

16.Breve leccin de mandatos bsicos...............................................................18816.1.Introduccin..................................................................................................................... 188 16.2.Procedimientos................................................................................................................ 18816.2.1.Cambiar de usuario a super-usuario........................................................................................ 189 16.2.2.Ver informacin del sistema y usuarios................................................................................... 190 16.2.3.Operaciones con archivos y directorios.................................................................................... 191 16.2.4.Consultar ayuda, pginas de manual e informacin.................................................................202 16.2.5.Visualizando contenido de archivos......................................................................................... 204 16.2.6.Enlaces fsicos y simblicos..................................................................................................... 208 16.2.7.Bucles...................................................................................................................................... 210 16.2.8.Aliases...................................................................................................................................... 213 16.2.9.Apagado y reinicio de sistema................................................................................................. 214

17.Compresin y descompresin de archivos.....................................................21617.1.Introduccin..................................................................................................................... 21617.1.1.Acerca 17.1.2.Acerca 17.1.3.Acerca 17.1.4.Acerca 17.1.5.Acerca de de de de de ZIP........................................................................................................................... 216 TAR.......................................................................................................................... 216 GZIP......................................................................................................................... 216 BZIP2....................................................................................................................... 216 XZ............................................................................................................................ 217

17.2.Procedimientos................................................................................................................ 21717.2.1.Preparativos............................................................................................................................. 217 17.2.2.Compresin y descompresin de archivos *.zip....................................................................... 217 17.2.3.Creacin y extraccin de archivos *.tar................................................................................... 218 17.2.4.Compresin y descompresin de archivos *.tar.gz..................................................................219 17.2.5.Compresin y descompresin de archivos *.tar.bz2................................................................219 17.2.6.Compresin y descompresin de archivos *.tar.xz...................................................................219 17.2.7.Crear respaldos del sistema de archivos.................................................................................. 220

18.Gestin de procesos y trabajos......................................................................22312

Joel Barrios Dueas

Configuracin de Servidores con GNU/Linux

18.1.Introduccin..................................................................................................................... 223 18.2.Procedimientos................................................................................................................ 22318.2.1.Uso 18.2.2.Uso 18.2.3.Uso 18.2.4.Uso 18.2.5.Uso de jobs, bg y fg.................................................................................................................. 223 de ps, kill y killall............................................................................................................... 225 de nice y renice................................................................................................................. 228 del mandato taskset.......................................................................................................... 230 del mandato top................................................................................................................ 233

19.Uso del mandato lsof......................................................................................23419.1.Introduccin..................................................................................................................... 23419.1.1.Acerca de lsof........................................................................................................................... 234

19.2.Equipamiento lgico necesario........................................................................................23419.2.1.En CentOS, Fedora y Red Hat Enterprise Linux..................................................................234 19.2.2.En openSUSE y SUSE Linux Enterprise............................................................................... 234

19.3.Procedimientos................................................................................................................ 234

20.Funciones bsicas de vi..................................................................................23720.1.Introduccin..................................................................................................................... 237 20.2.Procedimientos................................................................................................................ 23720.2.1.Equipamiento lgico necesario................................................................................................ 237

20.3.Conociendo vi.................................................................................................................. 238 20.4.Otros mandatos de vi....................................................................................................... 250 20.5.Ms all de las funciones bsicas....................................................................................251

21.Introduccin a sed..........................................................................................25221.1.Introduccin..................................................................................................................... 25221.1.1.Acerca de sed........................................................................................................................... 252

21.2.Procedimientos................................................................................................................ 252 21.3.Bibliografa....................................................................................................................... 256

22.Introduccin a AWK........................................................................................25722.1.Introduccin..................................................................................................................... 25722.1.1.Acerca de AWK......................................................................................................................... 257 22.1.2.Estructura de los programas escritos en AWK......................................................................... 257

22.2.Procedimientos................................................................................................................ 258

23.Uso de los mandatos chown y chgrp..............................................................26323.1.Introduccin..................................................................................................................... 263 23.2.Mandato chown................................................................................................................ 26323.2.1.Opciones.................................................................................................................................. 263 23.2.2.Utilizacin................................................................................................................................ 263

23.3.Mandato chgrp................................................................................................................. 26423.3.1.Opciones.................................................................................................................................. 264 23.3.2.Utilizacin................................................................................................................................ 264

23.4.Ejemplos.......................................................................................................................... 264

24.Permisos del Sistema de Archivos en GNU/Linux...........................................26524.1.Introduccin..................................................................................................................... 265 24.2.Notacin simblica........................................................................................................... 265 24.3.Notacin octal.................................................................................................................. 26624.3.1.Mscara de usuario.................................................................................................................. 266 24.3.2.Permisos adicionales................................................................................................................ 268

24.4.Ejemplos.......................................................................................................................... 26924.4.1.Ejemplos permisos regulares................................................................................................... 269 24.4.2.Ejemplos permisos especiales.................................................................................................. 270

24.5.Uso del mandato chmod.................................................................................................. 27013

Joel Barrios Dueas

Configuracin de Servidores con GNU/Linux

24.5.1.Opciones del mandato chmod.................................................................................................. 271 24.5.2.El mandato chmod y los enlaces simblicos............................................................................ 271

25.Listas de control de acceso y uso de los mandatos getfacl y setfacl.............27325.1.Introduccin..................................................................................................................... 273 25.2.Equipamiento lgico necesario........................................................................................27325.2.1.En CentOS, Fedora y Red Hat Enterprise Linux..................................................................274 25.2.2.En openSUSE y SUSE Enterprise Linux............................................................................... 274

25.3.Procedimientos................................................................................................................ 274

26.Uso del mandato chattr..................................................................................27926.1.Introduccin..................................................................................................................... 27926.1.1.Acerca del mandato chattr....................................................................................................... 279

26.2.Opciones.......................................................................................................................... 279 26.3.Operadores...................................................................................................................... 280 26.4.Atributos.......................................................................................................................... 280 26.5.Uso del mandato chattr.................................................................................................... 28026.5.1.Ejemplos.................................................................................................................................. 281

27.Uso del mandato rpm.....................................................................................28327.1.Introduccin..................................................................................................................... 28327.1.1.Acerca de RPM......................................................................................................................... 283

27.2.Procedimientos................................................................................................................ 28327.2.1.Reconstruccin de la base de datos de RPM............................................................................283 27.2.2.Consulta de paquetes instalados en el sistema.......................................................................283 27.2.3.Instalacin de paquetes........................................................................................................... 286 27.2.4.Desinstalacin de paquetes..................................................................................................... 292

28.Uso del mandato yum....................................................................................29428.1.Introduccin..................................................................................................................... 29428.1.1.Acerca de YUM......................................................................................................................... 294

28.2.Procedimientos................................................................................................................ 29428.2.1.Listados.................................................................................................................................... 294 28.2.2.Bsquedas................................................................................................................................ 295 28.2.3.Consulta de informacin.......................................................................................................... 295 28.2.4.Instalacin de paquetes........................................................................................................... 296 28.2.5.Desinstalacin de paquetes..................................................................................................... 298 28.2.6.Actualizar sistema.................................................................................................................... 298 28.2.7.Limpieza del directorio de cache.............................................................................................. 300 28.2.8.Verificacin de la base de datos RPM....................................................................................... 300

29.Configuracin y uso de Crond........................................................................30129.1.Introduccin..................................................................................................................... 30129.1.1.Acerca del servicio crond......................................................................................................... 301

29.2.Equipamiento lgico necesario........................................................................................30229.2.1.En CentOS, Fedora y Red Hat Enterprise Linux..................................................................302 29.2.2.En openSUSE......................................................................................................................... 302 29.2.3.SUSE Linux Enterprise........................................................................................................... 303 29.2.4.Anacron.................................................................................................................................... 303

29.3.Procedimientos................................................................................................................ 30429.3.1.Formato para el archivo /etc/crontab....................................................................................... 304 Formato para utilizar con el mandato crontab -e................................................................................ 305 29.3.2.Ejemplos de configuraciones.................................................................................................... 305

30.Configuracin y uso de Atd.............................................................................30730.1.Introduccin..................................................................................................................... 30730.1.1.Acerca de los mandatos at y batch.......................................................................................... 307 14

Joel Barrios Dueas

Configuracin de Servidores con GNU/Linux

30.2.Equipamiento lgico necesario........................................................................................30730.2.1.En CentOS, Fedora y Red Hat Enterprise Linux..................................................................307 30.2.2.En openSUSE y SUSE Linux Enterprise............................................................................... 307

30.3.Procedimientos................................................................................................................ 30830.3.1.Archivos de configuracin /etc/at.allow y /etc/at.deny.............................................................308 30.3.2.Directorio /var/spool/at............................................................................................................ 308 30.3.3.Mandato at............................................................................................................................... 308 30.3.4.Mandato batch......................................................................................................................... 309 30.3.5.Mandato atq............................................................................................................................. 310 30.3.6.Mandato atrm........................................................................................................................... 310

31.Asignacin de cuotas en el sistema de archivos............................................31131.1.Introduccin..................................................................................................................... 31131.1.1.Acerca de las cuotas................................................................................................................ 311 31.1.2.Acerca de Inodos...................................................................................................................... 311 31.1.3.Acerca de Bloques.................................................................................................................... 311

31.2.Equipamiento lgico necesario........................................................................................31231.2.1.En CentOS, Fedora y Red Hat Enterprise Linux..................................................................312 31.2.2.En openSUSE y SUSE Enterprise Linux............................................................................... 312

31.3.Procedimientos................................................................................................................ 31231.3.1.Edquota.................................................................................................................................... 313

31.4.Comprobaciones.............................................................................................................. 315

32.Introduccin a TCP/IP......................................................................................31832.1.Introduccin..................................................................................................................... 318 32.2.Niveles de pila.................................................................................................................. 31832.2.1.Modelo TCP/IP........................................................................................................................... 319 32.2.2.Modelo OSI............................................................................................................................... 324

33.Introduccin a IP versin 4.............................................................................32633.1.Introduccin..................................................................................................................... 326 33.2.Direcciones...................................................................................................................... 32633.2.1.Representacin de las direcciones........................................................................................... 326

33.3.Asignacin....................................................................................................................... 32733.3.1.Bloques reservados.................................................................................................................. 327

33.4.Referencia de sub-redes de IP versin 4..........................................................................328 33.5.Referencias...................................................................................................................... 329

34.Configuracin de red en GNU/Linux...............................................................33134.1.Introduccin..................................................................................................................... 331 34.2.Procedimientos................................................................................................................ 33134.2.1.Nombres de los dispositivos..................................................................................................... 331 34.2.2.NetworkManager...................................................................................................................... 332 34.2.3.Asignacin de parmetros de red............................................................................................ 333 34.2.4.Rutas estticos......................................................................................................................... 335 34.2.5.Funcin de Reenvo de paquetes para IP versin 4..................................................................337 34.2.6.Herramientas para el intrprete de mandatos.........................................................................337 34.2.7.Direcciones IP secundarias....................................................................................................... 339 34.2.8.La funcin Zeroconf.................................................................................................................. 340

Ejercicios.................................................................................................................................. 34134.2.9.Rutas estticas......................................................................................................................... 341 34.2.10.Ejercicio: Direcciones IP secundarias..................................................................................... 343

35.Configuracin de VLANs.................................................................................34835.1.Introduccin..................................................................................................................... 348 35.2.Equipamiento lgico necesario........................................................................................34835.2.1.En CentOS, Fedora y Red Hat Enterprise Linux..................................................................348 15

Joel Barrios Dueas

Configuracin de Servidores con GNU/Linux

35.3.Procedimientos................................................................................................................ 34835.3.1.Administrando direcciones IP de las VLANs a travs de un servidor DHCP..............................352

36.Cmo configurar acoplamiento de tarjetas de red (bonding)........................35436.1.Introduccin..................................................................................................................... 354 36.2.Procedimientos................................................................................................................ 35436.2.1.Archivo de configuracin /etc/modprobe.conf..........................................................................354 36.2.2.Archivo de configuracin /etc/sysconfig/network-scripts/bond0...............................................356 36.2.3.Iniciar, detener y reiniciar el servicio network......................................................................... 356

36.3.Comprobaciones.............................................................................................................. 357 36.4.Bibliografa....................................................................................................................... 358

37.Conexin a redes inalmbricas (Wifi) desde terminal....................................35937.1.Introduccin..................................................................................................................... 35937.1.1.Que es WPA? Por qu debera usarlo en lugar de WEP?........................................................359

37.2.Equipamiento lgico necesario........................................................................................36037.2.1.Instalacin a travs de yum..................................................................................................... 360 37.2.2.Preparativos............................................................................................................................. 360 37.2.3.Autenticando en el punto de acceso........................................................................................ 361 37.2.4.Asignando parmetros de red a la interfaz.............................................................................. 362

37.3.Bibliografa....................................................................................................................... 364

38.Uso del mandato nc (Netcat)..........................................................................36538.1.Introduccin..................................................................................................................... 36538.1.1.Acerca de Netcat...................................................................................................................... 365

38.2.Equipamiento lgico necesario........................................................................................36538.2.1.En CentOS, Fedora y Red Hat Enterprise Linux..................................................................365 38.2.2.En openSUSE y SUSE Linux Enterprise............................................................................... 365

38.3.Procedimientos en CentOS, Fedora y Red Hat Enterprise Linux................................36538.3.1.Conexiones simples................................................................................................................. 365 38.3.2.Revisin de puertos.................................................................................................................. 366 38.3.3.Creando un modelo cliente servidor......................................................................................... 367 38.3.4.Transferencia de datos............................................................................................................. 367

38.4.Procedimientos en openSUSE y SUSE Linux Enterprise.............................................36738.4.1.Conexiones simples................................................................................................................. 368 38.4.2.Revisin de puertos.................................................................................................................. 368 38.4.3.Creando un modelo cliente servidor......................................................................................... 369 38.4.4.Transferencia de datos............................................................................................................. 369

39.Como utilizar Netstat......................................................................................37039.1.Introduccin..................................................................................................................... 37039.1.1.Acerca de Netstat..................................................................................................................... 370

39.2.Procedimientos................................................................................................................ 370

40.Uso del mandato ARP.....................................................................................37540.1.Introduccin..................................................................................................................... 37540.1.1.Acerca de ARP.......................................................................................................................... 375

40.2.Equipamiento lgico necesario........................................................................................376 40.3.Procedimientos................................................................................................................ 376

41.Introduccin a IPTABLES.................................................................................37941.1.Introduccin..................................................................................................................... 37941.1.1.Acerca de Iptables y Netfilter................................................................................................... 379

41.2.Equipamiento lgico necesario........................................................................................37941.2.1.Instalacin a travs de yum..................................................................................................... 379

41.3.Procedimientos................................................................................................................ 37916

Joel Barrios Dueas

Configuracin de Servidores con GNU/Linux

41.3.1.Cadenas................................................................................................................................... 379 41.3.2.Reglas de destino..................................................................................................................... 379 41.3.3.Polticas por defecto................................................................................................................. 380 41.3.4.Limpieza de reglas especficas................................................................................................. 380 41.3.5.Reglas especficas.................................................................................................................... 380 Ejemplos de reglas.............................................................................................................................. 380 41.3.6.Eliminar reglas......................................................................................................................... 382 41.3.7.Mostrar la lista de cadenas y reglas......................................................................................... 382 41.3.8.Iniciar, detener y reiniciar el servicio iptables..........................................................................383 41.3.9.Agregar el servicio iptables al arranque del sistema................................................................384

41.4.Bibliografa....................................................................................................................... 384

42.Configuracin bsica de Shorewall.................................................................38542.1.Introduccin..................................................................................................................... 38542.1.1.Acerca de Shorewall................................................................................................................. 385 42.1.2.Acerca de iptables y Netfilter................................................................................................... 385 42.1.3.Acerca de iproute..................................................................................................................... 385

42.2.Conceptos requeridos...................................................................................................... 38642.2.1.Qu 42.2.2.Que 42.2.3.Qu 42.2.4.Qu es es es es una zona desmilitarizada?.......................................................................................... 386 una Red Privada?........................................................................................................ 386 un NAT?...................................................................................................................... 386 un DNAT?.................................................................................................................... 386

42.3.Equipamiento lgico necesario........................................................................................387 42.4.Procedimientos................................................................................................................ 38742.4.1.Shorewall y SELinux................................................................................................................. 387 42.4.2.Activacin de reenvo de paquetes para IPv4........................................................................... 388 42.4.3.Procedimiento de configuracin de Shorewall.......................................................................... 389 42.4.4.Iniciar, detener y reiniciar el servicio shorewall....................................................................... 394 42.4.5.Agregar el servicio shorewall al arranque del sistema.............................................................395

43.Cmo instalar y utilizar ClamAV en CentOS...................................................39643.1.Introduccin..................................................................................................................... 39643.1.1.Acerca de ClamAV.................................................................................................................... 396

43.2.Equipamiento lgico necesario........................................................................................39643.2.1.Creacin del usuario para ClamAV........................................................................................... 396 43.2.2.Instalacin a travs de yum..................................................................................................... 396

43.3.Procedimientos................................................................................................................ 39743.3.1.SELinux y el servicio clamav-milter.......................................................................................... 397 43.3.2.Configuracin de Freshclam..................................................................................................... 397 43.3.3.Uso bsico del mandato clamscan........................................................................................... 398

44.Instalacin y configuracin de CUPS..............................................................40044.1.Introduccin..................................................................................................................... 40044.1.1.Acerca de CUPS........................................................................................................................ 400

44.2.Equipamiento lgico necesario........................................................................................40044.2.1.En CentOS, Fedora y Red Hat Enterprise Linux..................................................................400 44.2.2.En openSUSE y SUSE Linux Enterprise............................................................................... 401

44.3.Iniciar servicio y aadir el servicio al arranque del sistema............................................40244.3.1.En CentOS, Fedora y Red Hat Enterprise Linux..................................................................402 44.3.2.En openSUSE y SUSE Linux Enterprise............................................................................... 402

44.4.Modificaciones necesarias en el muro cortafuegos.........................................................40244.4.1.En CentOS, Fedora y Red Hat Enterprise Linux..................................................................402 44.4.2.En openSUSE y SUSE Linux Enterprise............................................................................... 404

44.5.Archivos y directorios de configuracin...........................................................................405 Archivos de bitcoras............................................................................................................... 406 Permitir conexiones desde anfitriones remotos.......................................................................40644.5.1.En CentOS, Fedora o Red Hat Enterprise...........................................................................406 44.5.2.En openSUSE o SUSE Linux Enterprise...............................................................................407 44.5.3.Modo terminal.......................................................................................................................... 409 17

Joel Barrios Dueas

Configuracin de Servidores con GNU/Linux

44.6.Aadir o modificar impresoras......................................................................................... 41044.6.1.Configuracin de opciones de impresin.................................................................................. 413

44.7.Impresin desde el intrprete de mandatos....................................................................414 44.8.Verificar estados de las colas de impresin.....................................................................41544.8.1.Cancelacin de trabajos de impresin..................................................................................... 416

45.Introduccin al protocolo DNS........................................................................41845.1.Equipamiento lgico necesario........................................................................................418 45.2.Conceptos........................................................................................................................ 41845.2.1.Acerca del protocolo DNS (Domain Name System)..................................................................418 45.2.2.Qu es un NIC (Network Information Center)?........................................................................ 418 45.2.3.Qu es un FQDN (Fully Qualified Domain Name)?..................................................................418 45.2.4.Componentes de DNS.............................................................................................................. 419 45.2.5.Herramientas de bsqueda y consulta..................................................................................... 421

45.3.Modificaciones necesarias en el muro cortafuegos.........................................................42245.3.1.System-config-firewall.............................................................................................................. 422 45.3.2.Servicio iptables....................................................................................................................... 423 45.3.3.Shorewall................................................................................................................................. 423

46.Cmo configurar un servidor de nombres de dominio (DNS).........................42546.1.Introduccin..................................................................................................................... 42546.1.1.Acerca de Bind (Berkeley Internet Name Domain)...................................................................425

46.2.Equipamiento lgico necesario........................................................................................42546.2.1.Instalacin a travs de yum..................................................................................................... 425 46.2.2.Ajustes para Bind 9.7 y versiones posteriores.......................................................................... 426

46.3.Procedimientos................................................................................................................ 42746.3.1.SELinux y el servicio named..................................................................................................... 427 46.3.2.Configuracin mnima para el archivo /etc/named.conf...........................................................428 46.3.3.Preparativos para aadir dominios........................................................................................... 430 46.3.4.Creacin de los archivos de zona............................................................................................. 430 46.3.5.Seguridad adicional en DNS para uso pblico.......................................................................... 434 46.3.6.Seguridad adicional en DNS para uso exclusivo en red local...................................................441 46.3.7.Las zonas esclavas................................................................................................................... 442 46.3.8.Seguridad adicional para transferencias de zona.....................................................................444 46.3.9.Reiniciar servicio y depuracin de configuracin.....................................................................447

47.Configuracin de servidor DHCP....................................................................44947.1.Introduccin..................................................................................................................... 44947.1.1.Acerca del protocolo DHCP...................................................................................................... 449 47.1.2.Acerca de dhcp por Internet Software Consortium, Inc............................................................449

47.2.Equipamiento lgico necesario........................................................................................45047.2.1.CentOS, Fedora y Red Hat Enterprise Linux.......................................................................450

47.3.Modificaciones necesarias en el muro cortafuegos.........................................................45047.3.1.Servicio iptables....................................................................................................................... 450 47.3.2.Shorewall................................................................................................................................. 451

47.4.SELinux y el servicio dhcpd.............................................................................................. 451 47.5.Iniciar, detener y reiniciar, el servicio dhcpd...................................................................451 47.6.Procedimientos................................................................................................................ 45247.6.1.Archivo de configuracin /etc/sysconfig/dhcpd........................................................................ 452 47.6.2.Archivo de configuracin dhcpd.conf....................................................................................... 452 47.6.3.Configuracin bsica................................................................................................................ 453 47.6.4.Asignacin de direcciones IP estticas..................................................................................... 453 47.6.5.Limitar el acceso por direccin MAC........................................................................................ 454 47.6.6.Configuracin para funcionar con DNS dinmico..................................................................... 456

47.7.Comprobaciones desde cliente DHCP..............................................................................461

48.Instalacin y configuracin de vsftpd.............................................................46348.1.Introduccin..................................................................................................................... 46318

Joel Barrios Dueas

Configuracin de Servidores con GNU/Linux

48.1.1.Acerca 48.1.2.Acerca 48.1.3.Acerca 48.1.4.Acerca 48.1.5.Acerca 48.1.6.Acerca

del protocolo FTP.......................................................................................................... 463 del protocolo FTPS........................................................................................................ 464 de RSA.......................................................................................................................... 464 de OpenSSL.................................................................................................................. 464 de X.509....................................................................................................................... 464 de vsftpd...................................................................................................................... 464

48.2.Equipamiento lgico necesario........................................................................................46548.2.1.Instalacin a travs de yum..................................................................................................... 465

48.3.Archivos de configuracin................................................................................................ 46548.3.1.Iniciar, detener y reiniciar el servicio vsftpd............................................................................465 48.3.2.Agregar el servicio vsftpd al arranque del sistema..................................................................465

48.4.Modificaciones necesarias en el muro cortafuegos.........................................................46648.4.1.Servicio iptables....................................................................................................................... 466 48.4.2.Shorewall................................................................................................................................. 466

48.5.Procedimientos................................................................................................................ 46648.5.1.SELinux y el servicio vsftpd...................................................................................................... 467 48.5.2.Archivo /etc/vsftpd/vsftpd.conf................................................................................................. 467 48.5.3.Opcin anonymous_enable...................................................................................................... 468 48.5.4.Opcin local_enable................................................................................................................. 468 48.5.5.Opcin write_enable................................................................................................................. 468 48.5.6.Opciones anon_upload_enable y anon_mkdir_write_enable.....................................................468 48.5.7.Opcin ftpd_banner.................................................................................................................. 469 48.5.8.Estableciendo jaulas para los usuarios: opciones chroot_local_user y chroot_list_file..............469 48.5.9.Opciones pasv_min_port y pasv_max_port............................................................................... 470 48.5.10.Control del ancho de banda................................................................................................... 470

49.Configuracin de OpenSSH.............................................................................47549.1.Introduccin..................................................................................................................... 47549.1.1.Acerca 49.1.2.Acerca 49.1.3.Acerca 49.1.4.Acerca de de de de SSH.......................................................................................................................... 475 SFTP......................................................................................................................... 475 SCP.......................................................................................................................... 475 OpenSSH................................................................................................................. 475

49.2.Equipamiento lgico necesario........................................................................................47649.2.1.En CentOS, Fedora y Red Hat Enterprise Linux..................................................................476 49.2.2.En openSUSE y SUSE Linux Enterprise............................................................................... 476

49.3.Activar, desactivar, iniciar, detener y reiniciar el servicio ssh.........................................47649.3.1.En CentOS, Fedora y Red Hat Enterprise Linux..................................................................476 49.3.2.En openSUSE y SUSE Linux Enterprise............................................................................... 476

49.4.Modificaciones necesarias en el muro cortafuegos.........................................................47749.4.1.En CentOS, Fedora y Red Hat Enterprise Linux..................................................................477 49.4.2.En openSUSE y SUSE Linux Enterprise............................................................................... 478

49.5.SELinux y el servicio sshd................................................................................................ 47949.5.1.Poltica ssh_chroot_rw_homedirs.............................................................................................. 479 49.5.2.Poltica fenced_can_ssh............................................................................................................ 479 49.5.3.Poltica ssh_chroot_manage_apache_content...........................................................................479 49.5.4.Poltica ssh_sysadm_login........................................................................................................ 480 49.5.5.Poltica allow_ssh_keysign........................................................................................................ 480 49.5.6.Contexto ssh_home_t............................................................................................................... 480

49.6.Archivos de configuracin................................................................................................ 480 49.7.Procedimientos................................................................................................................ 48149.7.1.Parmetro 49.7.2.Parmetro 49.7.3.Parmetro 49.7.4.Parmetro 49.7.5.Parmetro 49.7.6.Parmetro Port......................................................................................................................... 481 ListenAddress......................................................................................................... 481 PermitRootLogin..................................................................................................... 482 X11Forwarding....................................................................................................... 482 AllowUsers.............................................................................................................. 482 UseDNS................................................................................................................... 482

49.8.Probando OpenSSH.......................................................................................................... 48349.8.1.Acceso con intrprete de mandatos......................................................................................... 483 49.8.2.Transferencia de archivos a travs de SFTP............................................................................. 483 49.8.3.Transferencia de archivos a travs de SCP.............................................................................. 485

19

Joel Barrios Dueas

Configuracin de Servidores con GNU/Linux

50.OpenSSH con autenticacin a travs de firma digital....................................48750.1.Introduccin..................................................................................................................... 487 50.2.Procedimientos................................................................................................................ 48750.2.1.Modificaciones en el Servidor remoto...................................................................................... 487 50.2.2.Modificaciones en el cliente..................................................................................................... 488 50.2.3.Comprobaciones...................................................................................................................... 489

51.Configuracin y uso de NTP............................................................................49051.1.Introduccin..................................................................................................................... 49051.1.1.Acerca de NTP.......................................................................................................................... 490 51.1.2.Acerca de UTC.......................................................................................................................... 491

51.2.Equipamiento lgico necesario........................................................................................49151.2.1.En CentOS, Fedora y Red Hat Enterprise Linux..................................................................491 51.2.2.En openSUSE y SUSE Linux Enterprise............................................................................... 491

51.3.Modificaciones necesarias en el muro cortafuegos.........................................................49151.3.1.En CentOS, Fedora y Red Hat Enterprise Linux..................................................................491 51.3.2.En openSUSE y SUSE Linux Enterprise............................................................................... 493

51.4.Iniciar, detener y reiniciar el servicio ntpd.......................................................................49451.4.1.En CentOS, Fedora y Red Hat Enterprise Linux..................................................................494 51.4.2.En openSUSE y SUSE Linux Enterprise............................................................................... 494

51.5.Procedimientos................................................................................................................ 49551.5.1.Herramienta ntpdate................................................................................................................ 495 51.5.2.Archivo de configuracin /etc/ntp.conf..................................................................................... 495 51.5.3.Configuracin de clientes......................................................................................................... 499

52.Configuracin de servidor NFS.......................................................................50352.1.Introduccin..................................................................................................................... 503 52.2.Equipamiento lgico necesario........................................................................................50352.2.1.En CentOS, Fedora y Red Hat Enterprise Linux........................................................................504 52.2.2.Instalacin en openSUSE y SUSE Linux Enterprise...................................................................504

52.3.Definir los puertos utilizados por NFS..............................................................................504 52.4.Iniciar servicio y aadir el servicio al inicio del sistema...................................................50552.4.1.En CentOS, Fedora y Red Hat Enterprise Linux........................................................................505 52.4.2.En openSUSE y SUSE Linux Enterprise..................................................................................... 506

52.5.Modificaciones necesarias en los archivos /etc/hosts.allow y /etc/hosts.deny.................507 52.6.Modificaciones necesarias en el muro cortafuegos.........................................................50752.6.1.En CentOS, Fedora y Red Hat Enterprise Linux........................................................................508 52.6.2.En openSUSE y SUSE Linux Enterprise..................................................................................... 510

52.7.Procedimientos................................................................................................................ 51152.7.1.El archivo /etc/exports............................................................................................................. 511 52.7.2.Verificacin del servicio........................................................................................................... 513 52.7.3.Montaje de sistemas de archivos NFS...................................................................................... 515 52.7.4.Modulo nfs de YaST en openSUSE y SUSE Linux Enterprise.....................................................516

52.8.Ejercicios.......................................................................................................................... 51652.8.1.Compartir un volumen NFS para acceso pblico...................................................................... 516

52.9.Bibliografa....................................................................................................................... 518

53.Configuracin bsica de Samba.....................................................................51953.1.Introduccin..................................................................................................................... 51953.1.1.Acerca del protocolo SMB......................................................................................................... 519 53.1.2.Acerca de Samba..................................................................................................................... 519

53.2.Equipamiento lgico necesario........................................................................................519Instalacin a travs de yum................................................................................................................ 519

53.3.Modificaciones necesarias en el muro cortafuegos.........................................................52053.3.1.Servicio iptables....................................................................................................................... 520 53.3.2.Shorewall................................................................................................................................. 520

53.4.SELinux y el servicio smb................................................................................................. 521 53.5.Iniciar el servicio y aadirlo al arranque del sistema.......................................................52220

Joel Barrios Dueas

Configuracin de Servidores con GNU/Linux

53.6.Procedimientos................................................................................................................ 52353.6.1.Alta de cuentas de usuario....................................................................................................... 523 53.6.2.El archivo lmhosts.................................................................................................................... 523 53.6.3.Opciones principales del archivo smb.conf.............................................................................. 524 53.6.4.Opcin remote announce......................................................................................................... 526 53.6.5.Impresoras en Samba.............................................................................................................. 527 53.6.6.Compartiendo directorios a travs de Samba..........................................................................527

53.7.Comprobaciones.............................................................................................................. 52953.7.1.Modo texto desde GNU/Linux................................................................................................... 530 53.7.2.Modo grfico............................................................................................................................ 532

54.Cmo configurar Samba denegando acceso a ciertos archivos.....................53354.1.Introduccin..................................................................................................................... 533 54.2.Procedimientos................................................................................................................ 533 54.3.Aplicando los cambios..................................................................................................... 533 54.4.Comprobaciones.............................................................................................................. 534

55.Cmo configurar Samba con Papelera de Reciclaje.......................................53555.1.Introduccin..................................................................................................................... 535 55.2.Procedimientos................................................................................................................ 535 55.3.Aplicando los cambios..................................................................................................... 537 55.4.Comprobaciones.............................................................................................................. 537

56.Cmo configurar Samba como cliente o servidor WINS.................................54056.1.Introduccin..................................................................................................................... 540 56.2.Procedimientos................................................................................................................ 54056.2.1.Parmetros wins server y wins support.................................................................................... 540 56.2.2.Parmetro name resolve order................................................................................................. 541 56.2.3.Parmetro wins proxy.............................................................................................