the-eye.eu · joel barrios dueñas configuración de servidores con gnu/linux si este libro le ha...

778
Configuración De Servidores Con GNU/Linux Configuración De Servidores Con GNU/Linux Edición Edición Mayo 2013 Mayo 2013 3 De Mayo De 2013 3 De Mayo De 2013 Joel Barrios Dueñas Joel Barrios Dueñas

Upload: others

Post on 16-Oct-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

  • Configuración De Servidores Con GNU/LinuxConfiguración De Servidores Con GNU/LinuxEdición Edición Mayo 2013Mayo 2013

    3 De Mayo De 20133 De Mayo De 2013

    Joel Barrios DueñasJoel Barrios Dueñas

  • Joel Barrios Dueñas Configuración de Servidores con GNU/Linux

    2

  • Joel Barrios Dueñas Configuración de Servidores con GNU/Linux

    Si este libro le ha sido de utilidad, puede contribuir al desarrollo de éste a través de suscripcionesvoluntarias a nuestro portal. Sus aportaciones nos ayudarán a crecer y desarrollar más y mejorcontenido en el sitio de red y para mejorar este libro.

    http://www.alcancelibre.org/staticpages/index.php/suscripciones

    Alcance Libre ofrece soporte técnico gratuito exclusivamente a través de nuestros foroslocalizados en:

    http://www.alcancelibre.org/forum/

    Para cualquier consulta a través de otros medios, como correo electrónico, teléfono o mensajeríainstantánea, ofrecemos un servicio comercial de consultoría.

    Alcance Libre ofrece los siguientes productos y servicios basados sobre Software Libre, gracias alos cuales financia sus operaciones. Para mayor información, estamos disponibles a través delnúmero telefónico (52) (55) 5677-7130 de la ciudad de México o bien directamente en nuestrasoficinas centrales en Serapio Rendón #63, oficina 4, Colonia San Rafael, Delegación Cuauhtemoc,C.P. 06470, México, D.F.

    • Capacitación (cursos)• Conferencias y pláticas• Consultoría• Implementaciones (Servidores)• Soporte Técnico• Publicidad en el portal

    3

    http://www.alcancelibre.org/forum/http://www.alcancelibre.org/http://www.alcance-empresarial.com/http://www.alcance-empresarial.com/http://www.alcance-empresarial.com/http://www.alcancelibre.org/http://www.alcance-empresarial.com/http://www.alcancelibre.org/dokuwiki/doku.php/software_librehttp://www.alcancelibre.org/dokuwiki/doku.php/alcance_libre

  • Joel Barrios Dueñas Configuración de Servidores con GNU/Linux

    A mi difunto padre, a quien debo reconocer jamás supe comprender y a quien jamás le dí laoportunidad de entenderme.

    Blanca, eres el amor de mi vida y gracias a ti inicié mi gusto por escribir. Te agradezco elhaberme permitido escribirte todas esas cosas hace tantos años y el que hoy seas mi compañera

    en la vida.

    A mis hijos, Joel Alejandro Barrios Caullieres y Sergio Armando Barrios Caullieres.

    Ai

    4

  • Joel Barrios Dueñas Configuración de Servidores con GNU/Linux

    Conformación.Me encuentro de regreso en mis raíces,

    reviso mis trabajos pasados,entre risas y otros cursis versos

    (sueños entonces de adolescente),desde existenciales a lo absurdo,

    ligerezas tan sentimentalesconstruyendo un carácter (mi mundo).

    5

  • Joel Barrios Dueñas Configuración de Servidores con GNU/Linux

    Acerca de Joel Barrios Dueñas.Hay poco que decir respecto de mí. Solía ser médico veterinario zootecnista, dedicadoprincipalmente a la atención médica de pequeñas especies y otras mascotas (perros, gatos,peces y tortugas) y a la venta de alimentos y accesorios para mascotas. Trabajo activamente concomputadoras personales desde 1990, con las cuales siempre he tenido gran facilidad. Miprimera computadora, fue una Apple IIe que me prestó un amigo y que eventualmente mevendió. Curiosamente, salvo por una clase que tomé en tercero de secundaria, durante la cualnos impartieron una introducción a la programación en BASIC y el uso general de computadorasComodore 16, jamás he tomado un curso o capacitación relacionada con la informática ocomputación. Siempre he sido auto-didáctica.

    Utilizo GNU/Linux desde Febrero de 1998 y desde Junio de 1999 como única plataforma en mitrabajo diario. Creo que es más que evidente que equivoque de carrera.

    Gran parte de las razones de mi incursión en el mundo de la informática fueron verdaderamenteincidentales. En 1997, nunca hubiera imaginado que me estaría ganado la vida en un ámbitocompletamente distinto al que me dedicaba durante ese tiempo. Yo ya tenía un consultorioveterinario y negocio pequeño de distribución de alimentos para mascotas, los cuales measeguraban un ingreso regular y constante. Lamentablemente las condiciones del mercadodurante el siguiente año repercutieron de forma importante en mis ingresos y fue entonces queempecé a buscar alternativas. Durante 1999 me estuve dedicando a la venta de equipo decómputo y algo de diseño de sitios de red. Fueron algunos meses durante los cuales pudesobrevivir gracias a mis ahorros y a la suerte de contar un con talento poco común con lascomputadoras.

    ¿Cómo empecé este proyecto?A mediados de 1999, mientras visitaba a un buen amigo mío, tuve un encuentro amistoso deunos 10 minutos con quien fue, en algún momento, la persona más importante que ha habido enmi vida, Blanca.

    Yo subía por un elevador, divagando en mis pensamientos con sutilezas y otros menesteresrelacionados con mi profesión de veterinario. Salí del ascensor y me dirigí hacia la puerta de miamigo. Me detuve unos instantes antes de pulsar el botón del timbre. Había una extrañasensación que circundaba mi mente, como un aroma familiar que no era posible recordar. Miamigo tenía una reunión con varias personas, algunas de las cuales yo conocía desde hacíaalgunos años pero que por diversas circunstancias no frecuentaba, así que supuse que era solo lasensación de volver a ver a personas después de mucho tiempo. Toque el timbre y un instantedespués mi amigo abrió la puerta. Le saludé con un apretón de manos y tras saludarle de laacostumbrada forma cortés, quedé mudo al ver que la chica de la que me había enamoradodurante mis años de preparatoria, estaba presente. Frente a mi, sonriendo y mirándome.

    Habían pasado varios años desde la última vez que nos habíamos visto. Conversamos un pocomientras ella cargaba al perro de mi amigo, al cual me disponía a aplicar una vacuna. Fue difícildejar de mirarle y lo fue también el gusto de volver a verle de nuevo. Me despedí, pues tenía otrocompromiso, pero en mi mente quedó un sentimiento de alegría de ver que aquella persona quehabía tenido un gran impacto en mi vida, estaba bien, muy hermosa y, en apariencia, feliz.

    6

  • Joel Barrios Dueñas Configuración de Servidores con GNU/Linux

    Fue ese breve encuentro el que me inspiró algunos meses después a crear algo que meproporcionara los medios para lograr hacer algo importante en vida. Fue ese deseo de seralguien y tener algo que ofrecer si algún día y si las circunstancias lo permitían, buscar unasegunda oportunidad con la persona de la que me había enamorado muchos años atrás y que dealguna forma jamás olvidé. Fue así que tras pasar muchas semanas planeando y tratando de darforma a las ideas, el proyecto de comunidad que inicié con Linux Para Todos un 27 de agosto de1999 y que hoy en día continuo con Alcance Libre. Surgió como un sueño, se materializó, sedesarrollo y creció más allá de lo que hubiera imaginado.

    Es irónico que años después, mi reencuentro con Blanca, quien es hoy en día mi esposa y madrede mis hijos Joel Alejandro y Sergio Armando, coincidiera con el fin del ciclo de Linux Para Todos,aunque también coincide con el inicio de otros proyectos y una nueva etapa con Alcance Libre.

    Esta obra, que ahora comparto con los lectores, constituye la culminación del trabajo de más de10 años de investigación y experiencias. Mucho del material que le compone fue escrito durantediferentes etapas de mi ciclo mientras fui propietario y administrador de Linux Para Todos. El finde dicho ciclo me da la oportunidad de explorar otras áreas de la informática desde un diferenteenfoque, mismo que se verá reflejado en el material actualizado que compone esta obra. Nuncame ha interesado ser famoso o un millonario.

    Respecto del futuro, tengo una percepción distinta acerca de trascender más allá de losrecuerdos familiares y trascender en la historia. Tal vez algún día, tal vez cien años después dehaya muerto, se que de alguna forma mi legado en la historia será a través de todo lo que escribíy las cosas que pensaba y aquellas en las que creía.

    7

  • Joel Barrios Dueñas Configuración de Servidores con GNU/Linux

    Currículo.

    Datos personales• Nombre: Joel Barrios Dueñas. • Año y lugar de nacimiento: 1970, México, Distrito Federal. • Sexo: masculino. • Estado civil: Unión Libre.

    Escolaridad• Secundaria: Colegio México (Acoxpa). 1982-1985 • Preparatoria: Instituto Centro Unión. 1985-1988 • Facultad de Medicina Veterinaria y Zootecnia, U.N.A.M. 1989-1993

    Empleos en los que me he desempeñado.• 1993-1999

    • Mi propia sub-distribuidora de alimentos y accesorios para mascotas. Direccióngeneral.

    • Visitador Médico y asesor en informática. Distribuidora de Alimentos para PequeñasEspecies (Dialpe). Junio 1997 - Noviembre 1997.

    • Consultor externo de Dialpe 1998 – 1999.• 1999 a 2006:

    • Fui el creador, director y administrador LinuxParaTodos.net.• Asesoría y consultoría en GNU/Linux. • Capacitación 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 técnico de Buytek Network Solutions.

    Capacidades• Inglés 99% • Ensamble, configuración y mantenimiento de computadoras personales. • Lenguajes HTML 4.0, HTML5 y CSS 2.0 • Programación en BASH• Instalación, configuración y administración de Linux y servicios que trabajan sobre

    éste (Samba, Apache, Sendmail, Postfix, ClamAV, OpenLDAP, NFS, OpenSSH, VSFTPD, Shorewall, SNMP, MRTG, Squid, etc.)

    8

    http://buyteknet.com/http://buyteknet.com/

  • Joel Barrios Dueñas Configuración de Servidores con GNU/Linux

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

    9

  • Joel Barrios Dueñas Configuración de Servidores con GNU/Linux

    Índice de contenido1.¿Que es GNU/Linux?...........................................................................................35

    1.1.Requerimientos del sistema.................................................................................................36

    2.Estándar de Jerarquía de Sistema de Archivos...................................................372.1.Introducción.........................................................................................................................372.2.Estructura de directorios......................................................................................................372.3.Particiones recomendadas para instalar CentOS, Fedora™, Red Hat™ Enterprise Linux, openSUSE™ y SUSE™ Linux Enterprise.....................................................................................392.4.Bibliografía...........................................................................................................................40

    3.Procedimiento de instalación de CentOS 6.........................................................413.1.Procedimientos....................................................................................................................41

    3.1.1.Planeación.................................................................................................................................... 41Obtención de los medios....................................................................................................................... 413.1.2.Instalación del sistema operativo.................................................................................................42

    3.2.Posterior a la instalación......................................................................................................75

    4.Ajustes posteriores a la instalación de CentOS 6...............................................764.1.Procedimientos....................................................................................................................76

    4.1.1.Nombres de los dispositivos de red..............................................................................................764.1.2.Dispositivos de red inactivos........................................................................................................774.1.3.Localización.................................................................................................................................. 784.1.4.Desactivar Plymouth.................................................................................................................... 794.1.5.Instalar y habilitar, el modo gráfico..............................................................................................814.1.6.Ajustar la zona horaria, fecha y hora del sistema........................................................................83

    5.Planificadores de Entrada/Salida en Linux.........................................................865.1.Introducción.........................................................................................................................865.2.Planificadores de Entrada/Salida disponibles en el núcleo de Linux....................................86

    5.2.1.Anticipatory.................................................................................................................................. 865.2.2.CFQ.............................................................................................................................................. 875.2.3.Deadline....................................................................................................................................... 885.2.4.Noop............................................................................................................................................. 89

    5.3.¿Cuál planificador de Entrada/Salida elegir?........................................................................905.4.Bibliografía...........................................................................................................................91

    6.Uso del disco de rescate de CentOS 6................................................................926.1.Procedimientos....................................................................................................................92

    7.Iniciando el sistema en nivel de ejecución 1 (nivel mono-usuario)..................1037.1.Introducción.......................................................................................................................1037.2.Procedimientos..................................................................................................................103

    8.Gestión de servicios..........................................................................................1098.1.Introducción.......................................................................................................................1098.2.Niveles de ejecución..........................................................................................................1098.3.Activar, desactivar, iniciar, detener o reiniciar servicios....................................................115

    8.3.1.En CentOS, Fedora™ y Red Hat™ Enterprise Linux....................................................................1158.3.2.En openSUSE™ y SUSE™ Linux Enterprise.................................................................................119

    10

  • Joel Barrios Dueñas Configuración de Servidores con GNU/Linux

    9.Gestión de espacio de memoria de intercambio (swap) en GNU/Linux...........1239.1.Introducción.......................................................................................................................123

    9.1.1.Algo de historia.......................................................................................................................... 1239.1.2.¿Qué es y como funciona el espacio de intercambio?................................................................1239.1.3.Circunstancias en lasque se requiere aumentar la cantidad de memoria de intercambio.........123

    Procedimientos........................................................................................................................1249.1.4.Cambiar el tamaño de la partición.............................................................................................1249.1.5.Crear un archivo para memoria de intercambio.........................................................................124

    9.2.Procedimientos..................................................................................................................1249.2.1.Activar una partición de intercambio adicional..........................................................................1249.2.2.Utilizar un archivo como memoria de intercambio.....................................................................1259.2.3.Optimizando el sistema, cambiando el valor de /proc/sys/vm/swappiness................................126

    10.Procedimientos de emergencia......................................................................12810.1.Introducción.....................................................................................................................12810.2.Disco de rescate...............................................................................................................12810.3.Verificación de la integridad del disco.............................................................................12810.4.Respaldo y restauración del sector de arranque mestro.................................................13010.5.Asignación de formato de las particiones........................................................................131

    11.Gestión de volúmenes lógicos........................................................................13311.1.Introducción.....................................................................................................................133Procedimientos........................................................................................................................133

    11.1.1.Crear un volumen lógico a partir de un disco duro nuevo........................................................13311.1.2.Añadir un volumen físico a un volumen lógico existente, a partir de espacio libre sin particionaren un disco duro................................................................................................................................. 13611.1.3.Quitar una unidad física a un volumen lógico..........................................................................139

    11.2.Bibliografía.......................................................................................................................141

    12.Optimización de sistemas de archivos ext3 y ext4........................................14212.1.Introducción.....................................................................................................................142

    12.1.1.Acerca de Ext3......................................................................................................................... 14212.1.2.Acerca de Ext4......................................................................................................................... 14212.1.3.Acerca del registro por diario (journaling)................................................................................142

    12.2.Procedimientos................................................................................................................14212.2.1.Utilizando el mandato e2fsck...................................................................................................14312.2.2.Opciones de montado..............................................................................................................14412.2.3.Convirtiendo particiones de Ext3 a Ext4..................................................................................14712.2.4.Eliminando el registro por diario (journal) de Ext4...................................................................149

    12.3.Bibliografía.......................................................................................................................151

    13.Cifrado de particiones con LUKS.....................................................................15213.1.Introducción.....................................................................................................................15213.2.Equipamiento lógico necesario........................................................................................152

    13.2.1.En CentOS, Fedora y Red Hat Enterprise Linux........................................................................15213.2.2.En openSUSE y SUSE Linux Enterprise.....................................................................................152

    13.3.Procedimientos................................................................................................................15213.3.1.Cifrado de una partición existente en CentOS, Fedora™ y Red Hat™ Enterprise Linux...........15313.3.2.Cifrado de una partición existente en openSUSE™ y SUSE™ Linux Enterprise........................15513.3.3.Cifrado de una unidad de almacenamiento externo USB.........................................................163

    14.Configuración y uso de sudo..........................................................................16614.1.Introducción.....................................................................................................................166

    14.1.1.Historia..................................................................................................................................... 16614.1.2.Acerca de sudo......................................................................................................................... 166

    14.2.Equipamiento lógico necesario........................................................................................16714.2.1.Instalación en CentOS, Fedora y Red Hat™ Enterprise Linux...................................................167

    11

  • Joel Barrios Dueñas Configuración de Servidores con GNU/Linux

    14.2.2.Instalación en openSUSE y SUSE Linux Enterprise...................................................................16714.3.Archivo /etc/sudoers........................................................................................................168

    14.3.1.Cmnd_Alias.............................................................................................................................. 16814.3.2.User_Alias................................................................................................................................ 16914.3.3.Host_Alias................................................................................................................................ 17014.3.4.Runas_Alias.............................................................................................................................. 170

    14.4.Candados de seguridad...................................................................................................17114.5.Lo más recomendado.......................................................................................................173

    14.5.1.Lo menos recomendado...........................................................................................................17314.6.Uso del mandato sudo.....................................................................................................17414.7.Facilitando la vida con aliases.........................................................................................176

    14.7.1.CentOS, Fedora y Red Hat Enterprise Linux.............................................................................17614.7.2.En openSUSE y SUSE Linux Enterprise.....................................................................................177

    15.Gestión de cuentas de usuario.......................................................................17815.1.Introducción.....................................................................................................................17815.2.Procedimientos................................................................................................................178

    15.2.1.Gestión de cuentas de usuario.................................................................................................17815.2.2.Gestión de Grupos.................................................................................................................... 17915.2.3.Opciones avanzadas................................................................................................................. 180

    15.3.Comentarios finales acerca de la seguridad....................................................................18415.4.Configurando valores predeterminados para el alta de cuentas de usuario....................186

    15.4.1.Archivo /etc/default/useradd....................................................................................................18615.4.2.Directorio /etc/skel................................................................................................................... 187

    15.5.Ejercicio: Creando cuentas de usuario.............................................................................18915.5.1.Introducción............................................................................................................................. 18915.5.2.Procedimientos........................................................................................................................ 189

    16.Breve lección de mandatos básicos...............................................................19116.1.Introducción.....................................................................................................................19116.2.Procedimientos................................................................................................................191

    16.2.1.Cambiar de usuario a super-usuario........................................................................................19216.2.2.Ver información del sistema y usuarios...................................................................................19316.2.3.Operaciones con archivos y directorios....................................................................................19416.2.4.Consultar ayuda, páginas de manual e información.................................................................20516.2.5.Visualizando contenido de archivos.........................................................................................20716.2.6.Enlaces físicos y simbólicos.....................................................................................................21116.2.7.Bucles...................................................................................................................................... 21316.2.8.Aliases...................................................................................................................................... 21616.2.9.Apagado y reinicio de sistema.................................................................................................217

    17.Compresión y descompresión de archivos.....................................................21917.1.Introducción.....................................................................................................................219

    17.1.1.Acerca de ZIP........................................................................................................................... 21917.1.2.Acerca de TAR.......................................................................................................................... 21917.1.3.Acerca de GZIP......................................................................................................................... 21917.1.4.Acerca de BZIP2....................................................................................................................... 21917.1.5.Acerca de XZ............................................................................................................................ 220

    17.2.Procedimientos................................................................................................................22017.2.1.Preparativos............................................................................................................................. 22017.2.2.Compresión y descompresión de archivos *.zip.......................................................................22017.2.3.Creación y extracción de archivos *.tar...................................................................................22117.2.4.Compresión y descompresión de archivos *.tar.gz..................................................................22217.2.5.Compresión y descompresión de archivos *.tar.bz2................................................................22217.2.6.Compresión y descompresión de archivos *.tar.xz...................................................................22217.2.7.Crear respaldos del sistema de archivos..................................................................................223

    18.Gestión de procesos y trabajos......................................................................226

    12

  • Joel Barrios Dueñas Configuración de Servidores con GNU/Linux

    18.1.Introducción.....................................................................................................................22618.2.Procedimientos................................................................................................................226

    18.2.1.Uso de jobs, bg y fg.................................................................................................................. 22618.2.2.Uso de ps, kill y killall...............................................................................................................22818.2.3.Uso de nice y renice................................................................................................................. 23118.2.4.Uso del mandato taskset.......................................................................................................... 23318.2.5.Uso del mandato top................................................................................................................236

    19.Uso del mandato lsof......................................................................................23719.1.Introducción.....................................................................................................................237

    19.1.1.Acerca de lsof........................................................................................................................... 23719.2.Equipamiento lógico necesario........................................................................................237

    19.2.1.En CentOS, Fedora™ y Red Hat™ Enterprise Linux..................................................................23719.2.2.En openSUSE™ y SUSE™ Linux Enterprise...............................................................................237

    19.3.Procedimientos................................................................................................................237

    20.Funciones básicas de vi..................................................................................24020.1.Introducción.....................................................................................................................24020.2.Procedimientos................................................................................................................240

    20.2.1.Equipamiento lógico necesario................................................................................................24020.3.Conociendo vi..................................................................................................................24120.4.Otros mandatos de vi.......................................................................................................25320.5.Más allá de las funciones básicas....................................................................................254

    21.Introducción a sed..........................................................................................25521.1.Introducción.....................................................................................................................255

    21.1.1.Acerca de sed........................................................................................................................... 25521.2.Procedimientos................................................................................................................25521.3.Bibliografía.......................................................................................................................259

    22.Introducción a AWK........................................................................................26022.1.Introducción.....................................................................................................................260

    22.1.1.Acerca de AWK......................................................................................................................... 26022.1.2.Estructura de los programas escritos en AWK.........................................................................260

    22.2.Procedimientos................................................................................................................261

    23.Uso de los mandatos chown y chgrp..............................................................26623.1.Introducción.....................................................................................................................26623.2.Mandato chown................................................................................................................266

    23.2.1.Opciones.................................................................................................................................. 26623.2.2.Utilización................................................................................................................................ 266

    23.3.Mandato chgrp.................................................................................................................26723.3.1.Opciones.................................................................................................................................. 26723.3.2.Utilización................................................................................................................................ 267

    23.4.Ejemplos..........................................................................................................................267

    24.Permisos del Sistema de Archivos en GNU/Linux...........................................26824.1.Introducción.....................................................................................................................26824.2.Notación simbólica...........................................................................................................26824.3.Notación octal..................................................................................................................269

    24.3.1.Máscara de usuario.................................................................................................................. 26924.3.2.Permisos adicionales................................................................................................................271

    24.4.Ejemplos..........................................................................................................................27224.4.1.Ejemplos permisos regulares...................................................................................................27224.4.2.Ejemplos permisos especiales..................................................................................................273

    24.5.Uso del mandato chmod..................................................................................................273

    13

  • Joel Barrios Dueñas Configuración de Servidores con GNU/Linux

    24.5.1.Opciones del mandato chmod..................................................................................................27424.5.2.El mandato chmod y los enlaces simbólicos............................................................................274

    25.Listas de control de acceso y uso de los mandatos getfacl y setfacl.............27625.1.Introducción.....................................................................................................................27625.2.Equipamiento lógico necesario........................................................................................276

    25.2.1.En CentOS, Fedora™ y Red Hat™ Enterprise Linux..................................................................27725.2.2.En openSUSE™ y SUSE™ Enterprise Linux...............................................................................277

    25.3.Procedimientos................................................................................................................277

    26.Uso del mandato chattr..................................................................................28226.1.Introducción.....................................................................................................................282

    26.1.1.Acerca del mandato chattr.......................................................................................................28226.2.Opciones..........................................................................................................................28226.3.Operadores......................................................................................................................28326.4.Atributos..........................................................................................................................28326.5.Uso del mandato chattr....................................................................................................283

    26.5.1.Ejemplos.................................................................................................................................. 284

    27.Uso del mandato rpm.....................................................................................28627.1.Introducción.....................................................................................................................286

    27.1.1.Acerca de RPM......................................................................................................................... 28627.2.Procedimientos................................................................................................................286

    27.2.1.Reconstrucción de la base de datos de RPM............................................................................28627.2.2.Consulta de paquetes instalados en el sistema.......................................................................28627.2.3.Instalación de paquetes...........................................................................................................28927.2.4.Desinstalación de paquetes.....................................................................................................295

    28.Uso del mandato yum....................................................................................29728.1.Introducción.....................................................................................................................297

    28.1.1.Acerca de YUM......................................................................................................................... 29728.2.Procedimientos................................................................................................................297

    28.2.1.Listados.................................................................................................................................... 29728.2.2.Búsquedas................................................................................................................................ 29828.2.3.Consulta de información.......................................................................................................... 29828.2.4.Instalación de paquetes...........................................................................................................29928.2.5.Desinstalación de paquetes.....................................................................................................30128.2.6.Actualizar sistema.................................................................................................................... 30128.2.7.Limpieza del directorio de cache..............................................................................................30328.2.8.Verificación de la base de datos RPM.......................................................................................303

    29.Configuración y uso de Crond........................................................................30429.1.Introducción.....................................................................................................................304

    29.1.1.Acerca del servicio crond.........................................................................................................30429.2.Equipamiento lógico necesario........................................................................................305

    29.2.1.En CentOS, Fedora™ y Red Hat™ Enterprise Linux..................................................................30529.2.2.En openSUSE™......................................................................................................................... 30529.2.3.SUSE™ Linux Enterprise........................................................................................................... 30629.2.4.Anacron.................................................................................................................................... 306

    29.3.Procedimientos................................................................................................................30729.3.1.Formato para el archivo /etc/crontab.......................................................................................307Formato para utilizar con el mandato crontab -e................................................................................30829.3.2.Ejemplos de configuraciones....................................................................................................308

    30.Configuración y uso de Atd.............................................................................31030.1.Introducción.....................................................................................................................310

    30.1.1.Acerca de los mandatos at y batch..........................................................................................310

    14

  • Joel Barrios Dueñas Configuración de Servidores con GNU/Linux

    30.2.Equipamiento lógico necesario........................................................................................31030.2.1.En CentOS, Fedora™ y Red Hat™ Enterprise Linux..................................................................31030.2.2.En openSUSE™ y SUSE™ Linux Enterprise...............................................................................310

    30.3.Procedimientos................................................................................................................31130.3.1.Archivos de configuración /etc/at.allow y /etc/at.deny.............................................................31130.3.2.Directorio /var/spool/at............................................................................................................31130.3.3.Mandato at............................................................................................................................... 31130.3.4.Mandato batch......................................................................................................................... 31230.3.5.Mandato atq............................................................................................................................. 31330.3.6.Mandato atrm........................................................................................................................... 313

    31.Asignación de cuotas en el sistema de archivos............................................31431.1.Introducción.....................................................................................................................314

    31.1.1.Acerca de las cuotas................................................................................................................31431.1.2.Acerca de Inodos...................................................................................................................... 31431.1.3.Acerca de Bloques.................................................................................................................... 314

    31.2.Equipamiento lógico necesario........................................................................................31531.2.1.En CentOS, Fedora™ y Red Hat™ Enterprise Linux..................................................................31531.2.2.En openSUSE™ y SUSE™ Enterprise Linux...............................................................................315

    31.3.Procedimientos................................................................................................................31531.3.1.Edquota.................................................................................................................................... 316

    31.4.Comprobaciones..............................................................................................................318

    32.Introducción a TCP/IP......................................................................................32132.1.Introducción.....................................................................................................................32132.2.Niveles de pila..................................................................................................................321

    32.2.1.Modelo TCP/IP........................................................................................................................... 32232.2.2.Modelo OSI............................................................................................................................... 327

    33.Introducción a IP versión 4.............................................................................32933.1.Introducción.....................................................................................................................32933.2.Direcciones......................................................................................................................329

    33.2.1.Representación de las direcciones...........................................................................................32933.3.Asignación.......................................................................................................................330

    33.3.1.Bloques reservados.................................................................................................................. 33033.4.Referencia de sub-redes de IP versión 4..........................................................................33133.5.Referencias......................................................................................................................332

    34.Configuración de red en GNU/Linux...............................................................33434.1.Introducción.....................................................................................................................33434.2.Procedimientos................................................................................................................334

    34.2.1.Nombres de los dispositivos.....................................................................................................33434.2.2.NetworkManager...................................................................................................................... 33534.2.3.Asignación de parámetros de red............................................................................................33634.2.4.Rutas estáticos......................................................................................................................... 33834.2.5.Función de Reenvío de paquetes para IP versión 4..................................................................34034.2.6.Herramientas para el intérprete de mandatos.........................................................................34034.2.7.Direcciones IP secundarias.......................................................................................................34234.2.8.La función Zeroconf.................................................................................................................. 343

    Ejercicios..................................................................................................................................34434.2.9.Rutas estáticas......................................................................................................................... 34434.2.10.Ejercicio: Direcciones IP secundarias.....................................................................................346

    35.Configuración de VLANs.................................................................................35135.1.Introducción.....................................................................................................................35135.2.Equipamiento lógico necesario........................................................................................351

    35.2.1.En CentOS, Fedora™ y Red Hat™ Enterprise Linux..................................................................351

    15

  • Joel Barrios Dueñas Configuración de Servidores con GNU/Linux

    35.3.Procedimientos................................................................................................................35135.3.1.Administrando direcciones IP de las VLANs a través de un servidor DHCP..............................355

    36.Cómo configurar acoplamiento de tarjetas de red (bonding)........................35736.1.Introducción.....................................................................................................................35736.2.Procedimientos................................................................................................................357

    36.2.1.Archivo de configuración /etc/modprobe.conf..........................................................................35736.2.2.Archivo de configuración /etc/sysconfig/network-scripts/bond0...............................................35936.2.3.Iniciar, detener y reiniciar el servicio network.........................................................................359

    36.3.Comprobaciones..............................................................................................................36036.4.Bibliografía.......................................................................................................................361

    37.Conexión a redes inalámbricas (Wifi) desde terminal....................................36237.1.Introducción.....................................................................................................................362

    37.1.1.¿Que es WPA? ¿Por qué debería usarlo en lugar de WEP?........................................................36237.2.Equipamiento lógico necesario........................................................................................363

    37.2.1.Instalación a través de yum.....................................................................................................36337.2.2.Preparativos............................................................................................................................. 36337.2.3.Autenticando en el punto de acceso........................................................................................36437.2.4.Asignando parámetros de red a la interfaz..............................................................................365

    37.3.Bibliografía.......................................................................................................................367

    38.Uso del mandato nc (Netcat)..........................................................................36838.1.Introducción.....................................................................................................................368

    38.1.1.Acerca de Netcat...................................................................................................................... 36838.2.Equipamiento lógico necesario........................................................................................368

    38.2.1.En CentOS, Fedora™ y Red Hat™ Enterprise Linux..................................................................36838.2.2.En openSUSE™ y SUSE™ Linux Enterprise...............................................................................368

    38.3.Procedimientos en CentOS, Fedora™ y Red Hat™ Enterprise Linux................................36838.3.1.Conexiones simples................................................................................................................. 36838.3.2.Revisión de puertos..................................................................................................................36938.3.3.Creando un modelo cliente servidor.........................................................................................37038.3.4.Transferencia de datos.............................................................................................................370

    38.4.Procedimientos en openSUSE™ y SUSE™ Linux Enterprise.............................................37038.4.1.Conexiones simples................................................................................................................. 37138.4.2.Revisión de puertos..................................................................................................................37138.4.3.Creando un modelo cliente servidor.........................................................................................37238.4.4.Transferencia de datos.............................................................................................................372

    39.Como utilizar Netstat......................................................................................37339.1.Introducción.....................................................................................................................373

    39.1.1.Acerca de Netstat..................................................................................................................... 37339.2.Procedimientos................................................................................................................373

    40.Uso del mandato ARP.....................................................................................37840.1.Introducción.....................................................................................................................378

    40.1.1.Acerca de ARP.......................................................................................................................... 37840.2.Equipamiento lógico necesario........................................................................................37940.3.Procedimientos................................................................................................................379

    41.Introducción a IPTABLES.................................................................................38241.1.Introducción.....................................................................................................................382

    41.1.1.Acerca de Iptables y Netfilter...................................................................................................38241.2.Equipamiento lógico necesario........................................................................................382

    41.2.1.Instalación a través de yum.....................................................................................................38241.3.Procedimientos................................................................................................................382

    16

  • Joel Barrios Dueñas Configuración de Servidores con GNU/Linux

    41.3.1.Cadenas................................................................................................................................... 38241.3.2.Reglas de destino..................................................................................................................... 38241.3.3.Políticas por defecto................................................................................................................. 38341.3.4.Limpieza de reglas específicas.................................................................................................38341.3.5.Reglas específicas.................................................................................................................... 383Ejemplos de reglas.............................................................................................................................. 38341.3.6.Eliminar reglas......................................................................................................................... 38541.3.7.Mostrar la lista de cadenas y reglas.........................................................................................38541.3.8.Iniciar, detener y reiniciar el servicio iptables..........................................................................38641.3.9.Agregar el servicio iptables al arranque del sistema................................................................387

    41.4.Bibliografía.......................................................................................................................387

    42.Configuración básica de Shorewall.................................................................38842.1.Introducción.....................................................................................................................388

    42.1.1.Acerca de Shorewall................................................................................................................. 38842.1.2.Acerca de iptables y Netfilter...................................................................................................38842.1.3.Acerca de iproute..................................................................................................................... 388

    42.2.Conceptos requeridos......................................................................................................38942.2.1.¿Qué es una zona desmilitarizada?..........................................................................................38942.2.2.¿Que es una Red Privada?........................................................................................................ 38942.2.3.¿Qué es un NAT?...................................................................................................................... 38942.2.4.¿Qué es un DNAT?.................................................................................................................... 389

    42.3.Equipamiento lógico necesario........................................................................................39042.4.Procedimientos................................................................................................................390

    42.4.1.Shorewall y SELinux................................................................................................................. 39042.4.2.Activación de reenvío de paquetes para IPv4...........................................................................39142.4.3.Procedimiento de configuración de Shorewall..........................................................................39242.4.4.Iniciar, detener y reiniciar el servicio shorewall.......................................................................39742.4.5.Agregar el servicio shorewall al arranque del sistema.............................................................398

    43.Cómo instalar y utilizar ClamAV en CentOS...................................................39943.1.Introducción.....................................................................................................................399

    43.1.1.Acerca de ClamAV.................................................................................................................... 39943.2.Equipamiento lógico necesario........................................................................................399

    43.2.1.Creación del usuario para ClamAV...........................................................................................39943.2.2.Instalación a través de yum.....................................................................................................399

    43.3.Procedimientos................................................................................................................40043.3.1.SELinux y el servicio clamav-milter..........................................................................................40043.3.2.Configuración de Freshclam.....................................................................................................40043.3.3.Uso básico del mandato clamscan...........................................................................................401

    44.Instalación y configuración de CUPS..............................................................40344.1.Introducción.....................................................................................................................403

    44.1.1.Acerca de CUPS........................................................................................................................ 40344.2.Equipamiento lógico necesario........................................................................................403

    44.2.1.En CentOS, Fedora™ y Red Hat Enterprise™ Linux..................................................................40344.2.2.En openSUSE™ y SUSE™ Linux Enterprise...............................................................................404

    44.3.Iniciar servicio y añadir el servicio al arranque del sistema............................................40544.3.1.En CentOS, Fedora™ y Red Hat™ Enterprise Linux..................................................................40544.3.2.En openSUSE™ y SUSE™ Linux Enterprise...............................................................................405

    44.4.Modificaciones necesarias en el muro cortafuegos.........................................................40544.4.1.En CentOS, Fedora™ y Red Hat Enterprise™ Linux..................................................................40544.4.2.En openSUSE™ y SUSE™ Linux Enterprise...............................................................................407

    44.5.Archivos y directorios de configuración...........................................................................408Archivos de bitácoras...............................................................................................................409Permitir conexiones desde anfitriones remotos.......................................................................409

    44.5.1.En CentOS, Fedora™ o Red Hat Enterprise™...........................................................................40944.5.2.En openSUSE™ o SUSE™ Linux Enterprise...............................................................................41044.5.3.Modo terminal.......................................................................................................................... 412

    17

  • Joel Barrios Dueñas Configuración de Servidores con GNU/Linux

    44.6.Añadir o modificar impresoras.........................................................................................41344.6.1.Configuración de opciones de impresión..................................................................................416

    44.7.Impresión desde el intérprete de mandatos....................................................................41744.8.Verificar estados de las colas de impresión.....................................................................418

    44.8.1.Cancelación de trabajos de impresión.....................................................................................419

    45.Introducción al protocolo DNS........................................................................42145.1.Equipamiento lógico necesario........................................................................................42145.2.Conceptos........................................................................................................................421

    45.2.1.Acerca del protocolo DNS (Domain Name System)..................................................................42145.2.2.¿Qué es un NIC (Network Information Center)?........................................................................42145.2.3.¿Qué es un FQDN (Fully Qualified Domain Name)?..................................................................42145.2.4.Componentes de DNS.............................................................................................................. 42245.2.5.Herramientas de búsqueda y consulta.....................................................................................424

    45.3.Modificaciones necesarias en el muro cortafuegos.........................................................42545.3.1.System-config-firewall..............................................................................................................42545.3.2.Servicio iptables....................................................................................................................... 42645.3.3.Shorewall................................................................................................................................. 426

    46.Cómo configurar un servidor de nombres de dominio (DNS).........................42846.1.Introducción.....................................................................................................................428

    46.1.1.Acerca de Bind (Berkeley Internet Name Domain)...................................................................42846.2.Equipamiento lógico necesario........................................................................................428

    46.2.1.Instalación a través de yum.....................................................................................................42846.2.2.Ajustes para Bind 9.7 y versiones posteriores..........................................................................429

    46.3.Procedimientos................................................................................................................43046.3.1.SELinux y el servicio named.....................................................................................................43046.3.2.Configuración mínima para el archivo /etc/named.conf...........................................................43146.3.3.Preparativos para añadir dominios...........................................................................................43346.3.4.Creación de los archivos de zona.............................................................................................43346.3.5.Seguridad adicional en DNS para uso público..........................................................................43746.3.6.Seguridad adicional en DNS para uso exclusivo en red local...................................................44446.3.7.Las zonas esclavas................................................................................................................... 44546.3.8.Seguridad adicional para transferencias de zona.....................................................................44746.3.9.Reiniciar servicio y depuración de configuración.....................................................................450

    47.Configuración de servidor DHCP....................................................................45247.1.Introducción.....................................................................................................................452

    47.1.1.Acerca del protocolo DHCP......................................................................................................45247.1.2.Acerca de dhcp por Internet Software Consortium, Inc............................................................452

    47.2.Equipamiento lógico necesario........................................................................................45347.2.1.CentOS, Fedora™ y Red Hat™ Enterprise Linux.......................................................................453

    47.3.Modificaciones necesarias en el muro cortafuegos.........................................................45347.3.1.Servicio iptables....................................................................................................................... 45347.3.2.Shorewall................................................................................................................................. 454

    47.4.SELinux y el servicio dhcpd..............................................................................................45447.5.Iniciar, detener y reiniciar, el servicio dhcpd...................................................................45447.6.Procedimientos................................................................................................................455

    47.6.1.Archivo de configuración /etc/sysconfig/dhcpd........................................................................45547.6.2.Archivo de configuración dhcpd.conf.......................................................................................45547.6.3.Configuración básica................................................................................................................45647.6.4.Asignación de direcciones IP estáticas.....................................................................................45647.6.5.Limitar el acceso por dirección MAC........................................................................................45747.6.6.Configuración para funcionar con DNS dinámico.....................................................................459

    47.7.Comprobaciones desde cliente DHCP..............................................................................464

    48.Instalación y configuración de vsftpd.............................................................46648.1.Introducción.....................................................................................................................466

    18

  • Joel Barrios Dueñas Configuración de Servidores con GNU/Linux

    48.1.1.Acerca del protocolo FTP..........................................................................................................46648.1.2.Acerca del protocolo FTPS........................................................................................................46748.1.3.Acerca de RSA.......................................................................................................................... 46748.1.4.Acerca de OpenSSL.................................................................................................................. 46748.1.5.Acerca de X.509....................................................................................................................... 46748.1.6.Acerca de vsftpd...................................................................................................................... 467

    48.2.Equipamiento lógico necesario........................................................................................46848.2.1.Instalación a través de yum.....................................................................................................468

    48.3.Archivos de configuración................................................................................................46848.3.1.Iniciar, detener y reiniciar el servicio vsftpd............................................................................46848.3.2.Agregar el servicio vsftpd al arranque del sistema..................................................................468

    48.4.Modificaciones necesarias en el muro cortafuegos.........................................................46948.4.1.Servicio iptables....................................................................................................................... 46948.4.2.Shorewall................................................................................................................................. 469

    48.5.Procedimientos................................................................................................................46948.5.1.SELinux y el servicio vsftpd......................................................................................................47048.5.2.Archivo /etc/vsftpd/vsftpd.conf.................................................................................................47048.5.3.Opción anonymous_enable......................................................................................................47148.5.4.Opción local_enable................................................................................................................. 47148.5.5.Opción write_enable.................................................................................................................47148.5.6.Opciones anon_upload_enable y anon_mkdir_write_enable.....................................................47148.5.7.Opción ftpd_banner.................................................................................................................. 47248.5.8.Estableciendo jaulas para los usuarios: opciones chroot_local_user y chroot_list_file..............47248.5.9.Opciones pasv_min_port y pasv_max_port...............................................................................47348.5.10.Control del ancho de banda...................................................................................................473

    49.Configuración de OpenSSH.............................................................................47849.1.Introducción.....................................................................................................................478

    49.1.1.Acerca de SSH.......................................................................................................................... 47849.1.2.Acerca de SFTP......................................................................................................................... 47849.1.3.Acerca de SCP.......................................................................................................................... 47849.1.4.Acerca de OpenSSH................................................................................................................. 478

    49.2.Equipamiento lógico necesario........................................................................................47949.2.1.En CentOS, Fedora™ y Red Hat™ Enterprise Linux..................................................................47949.2.2.En openSUSE™ y SUSE™ Linux Enterprise...............................................................................479

    49.3.Activar, desactivar, iniciar, detener y reiniciar el servicio ssh.........................................47949.3.1.En CentOS, Fedora™ y Red Hat™ Enterprise Linux..................................................................47949.3.2.En openSUSE™ y SUSE™ Linux Enterprise...............................................................................479

    49.4.Modificaciones necesarias en el muro cortafuegos.........................................................48049.4.1.En CentOS, Fedora™ y Red Hat™ Enterprise Linux..................................................................48049.4.2.En openSUSE™ y SUSE™ Linux Enterprise...............................................................................481

    49.5.SELinux y el servicio sshd................................................................................................48249.5.1.Política ssh_chroot_rw_homedirs..............................................................................................48249.5.2.Política fenced_can_ssh............................................................................................................48249.5.3.Política ssh_chroot_manage_apache_content...........................................................................48249.5.4.Política ssh_sysadm_login........................................................................................................48349.5.5.Política allow_ssh_keysign........................................................................................................48349.5.6.Contexto ssh_home_t...............................................................................................................483

    49.6.Archivos de configuración................................................................................................48349.7.Procedimientos................................................................................................................484

    49.7.1.Parámetro Port......................................................................................................................... 48449.7.2.Parámetro ListenAddress.........................................................................................................48449.7.3.Parámetro PermitRootLogin.....................................................................................................48549.7.4.Parámetro X11Forwarding.......................................................................................................48549.7.5.Parámetro AllowUsers.............................................................................................................. 48549.7.6.Parámetro UseDNS................................................................................................................... 485

    49.8.Probando OpenSSH..........................................................................................................48649.8.1.Acceso con intérprete de mandatos.........................................................................................48649.8.2.Transferencia de archivos a través de SFTP.............................................................................48649.8.3.Transferencia de archivos a través de SCP..............................................................................488

    19

  • Joel Barrios Dueñas Configuración de Servidores con GNU/Linux

    50.OpenSSH con autenticación a través de firma digital....................................49050.1.Introducción.....................................................................................................................49050.2.Procedimientos................................................................................................................490

    50.2.1.Modificaciones en el Servidor remoto......................................................................................49050.2.2.Modificaciones en el cliente.....................................................................................................49150.2.3.Comprobaciones...................................................................................................................... 492

    51.Configuración y uso de NTP............................................................................49351.1.Introducción.....................................................................................................................493

    51.1.1.Acerca de NTP.......................................................................................................................... 49351.1.2.Acerca de UTC.......................................................................................................................... 494

    51.2.Equipamiento lógico necesario........................................................................................49451.2.1.En CentOS, Fedora™ y Red Hat™ Enterprise Linux..................................................................49451.2.2.En openSUSE™ y SUSE™ Linux Enterprise...............................................................................494

    51.3.Modificaciones necesarias en el muro cortafuegos.........................................................49451.3.1.En CentOS, Fedora™ y Red Hat™ Enterprise Linux..................................................................49451.3.2.En openSUSE™ y SUSE™ Linux Enterprise...............................................................................496

    51.4.Iniciar, detener y reiniciar el servicio ntpd.......................................................................49751.4.1.En CentOS, Fedora™ y Red Hat™ Enterprise Linux..................................................................49751.4.2.En openSUSE™ y SUSE™ Linux Enterprise...............................................................................497

    51.5.Procedimientos................................................................................................................49851.5.1.Herramienta ntpdate................................................................................................................49851.5.2.Archivo de configuración /etc/ntp.conf.....................................................................................49851.5.3.Configuración de clientes.........................................................................................................502

    52.Configuración de servidor NFS.......................................................................50652.1.Introducción.....................................................................................................................50652.2.Equipamiento lógico necesario........................................................................................506

    52.2.1.En CentOS, Fedora y Red Hat Enterprise Linux........................................................................50752.2.2.Instalación en openSUSE y SUSE Linux Enterprise...................................................................507

    52.3.Definir los puertos utilizados por NFS..............................................................................50752.4.Iniciar servicio y añadir el servicio al inicio del sistema...................................................508

    52.4.1.En CentOS, Fedora y Red Hat Enterprise Linux........................................................................50852.4.2.En openSUSE y SUSE Linux Enterprise.....................................................................................509

    52.5.Modificaciones necesarias en los archivos /etc/hosts.allow y /etc/hosts.deny.................51052.6.Modificaciones necesarias en el muro cortafuegos.........................................................510

    52.6.1.En CentOS, Fedora y Red Hat Enterprise Linux........................................................................51152.6.2.En openSUSE y SUSE Linux Enterprise.....................................................................................513

    52.7.Procedimientos................................................................................................................51452.7.1.El archivo /etc/exports............................................................................................................. 51452.7.2.Verificación del servicio........................................................................................................... 51652.7.3.Montaje de sistemas de archivos NFS......................................................................................51852.7.4.Modulo nfs de YaST en openSUSE y SUSE Linux Enterprise.....................................................519

    52.8.Ejercicios..........................................................................................................................51952.8.1.Compartir un volumen NFS para acceso público......................................................................519

    52.9.Bibliografía.......................................................................................................................521

    53.Configuración básica de Samba.....................................................................52253.1.Introducción.....................................................................................................................522

    53.1.1.Acerca del protocolo SMB.........................................................................................................52253.1.2.Acerca de Samba..................................................................................................................... 522

    53.2.Equipamiento lógico necesario........................................................................................522Instalación a través de yum................................................................................................................522

    53.3.Modificaciones necesarias en el muro cortafuegos.........................................................52353.3.1.Servicio iptables....................................................................................................................... 52353.3.2.Shorewall................................................................................................................................. 523

    53.4.SELinux y el servicio smb.................................................................................................52453.5.Iniciar el servicio y añadirlo al arranque del sistema.......................................................525

    20

  • Joel Barrios Dueñas Configuración de Servidores con GNU/Linux