Vous êtes sur la page 1sur 396

Gua de Ubuntu Server

Gua de Ubuntu Server


Copyright 2012 Colaboradores en el documento Resumen Bienvenido a la Gua de Ubuntu Server! Contiene informacin sobre cmo instalar y configurar el servidor de varios aplicaciones en su sistema Ubuntu para satisfacer sus necesidades. Se trata de un paso a paso, orientado a la tarea de gua para la configuracin de y la personalizacin de su sistema.

Crditos y licencia
Este documento es mantenido por el equipo de documentacin de Ubuntu (https://wiki.ubuntu.com/DocumentationTeam). Una lista de colaboradores es a continuacin.

Este documento est disponible bajo la licencia Creative Commons Compartir Igual 3.0 (CC-BY-SA). Usted es libre de modificar, ampliar y mejorar el cdigo fuente de documentacin de Ubuntu bajo los trminos de esta licencia. Todos los trabajos derivados debe ser liberado bajo esta licencia.

Esta documentacin se distribuye con la esperanza de que sea til, pero SIN NINGUNA GARANTA, incluso sin la garanta implcita MERCANTIL o de APTITUD PARA UN PROPSITO PARTICULAR COMO SE DESCRIBE EN LA RENUNCIA. Una copia de la licencia est disponible aqu: Licencia de Creative Commons Compartir Igual1. Colaboradores en este documento son: Miembros de la Proyecto de Documentacin de Ubuntu2 Miembros de la Ubuntu Server Team3 Los colaboradores de la Ubuntu Documentation Wiki4 Otros colaboradores se puede encontrar en el historial de revisin de la ServerGuide5 y ubuntu-docs6 BZR disponibles en Launchpad ramas.

1 http://creativecommons.org/licenses/by-sa/3.0/ 2 https://launchpad.net/ ~ ubuntu-doc-core 3 https://launchpad.net/ ~ ubuntu-server 4 https://help.ubuntu.com/community/ 5 https://code.launchpad.net/serverguide 6 https://code.launchpad.net/ubuntu-docs

Tabla de contenidos
1. Introduccin 1 1. Apoyar 2 2. Instalacin 3 1. Preparacin para la instalacin 4 2. La instalacin desde CD 6 3. Actualizar 9 4. Instalacin avanzada ................................................ .................................................. . 10 5. Kernel Crash Dump 17 3. La administracin de paquetes 20 1. Introduccin 21 2. dpkg 22 3. Apt-get 23 4. Aptitud 25 5. Actualizaciones automticas 27 6. Configuracin 29 7. Referencias 31 4. Redes 32

1. Configuracin de la red ................................................ ........................................... ...... 33 2. TCP / IP 42 3. Dynamic Host Configuration Protocol (DHCP) ........................................... ................... 46 4. Tiempo de Sincronizacin con NTP .............................................. ..................................... 49 5. DM-Multipath 51 1. Mltiple del mapeador de dispositivos ............................................... ......................................... 52 2. Dispositivos de mltiples rutas 3. Configuracin de DM-Multipath general ............................................ .................................. 4. El DM-Multipath archivo de configuracin ............................................ ............................... 5. DM-Multipath Administracin y solucin de problemas ............................................ ............ 6. Administracin remota 1. OpenSSH servidor 2. Ttere 3. Zentyal 7. Autenticacin de red 55 58 62 74 79 80 83 86 90

1. OpenLDAP Servidor 91 2. Samba y LDAP 117 3. Kerberos 124 4. Kerberos y LDAP ............................................... .................................................. .. 132 8. Domain Name Service (DNS) ............................................ ................................................. 1 39 1. Instalacin 140 2. Configuracin 141 3. Solucin de problemas 147

iii

Gua de Ubuntu Server

4. Referencias 151 9. Seguridad 152 1. Gestin de usuarios 153 2. Seguridad de la consola 159 3. Firewall 160 4. AppArmor 5. Certificados 6. eCryptfs 10. Monitoreo 1. Informacin general 2. Nagios 3. Munin 11. Servidores Web 1. HTTPD - Servidor web Apache 2 ............................................. ...................................... 2. PHP5 - Lenguaje de scripting de .............................................. ........................................... 3. Squid - Servidor Proxy .............................................. .................................................. .. 4. Ruby on Rails 5. Apache Tomcat 12. Bases de datos 1. MySQL 167 171 176 178 179 180 184 186 187 195 197 199 201 205 206

2. PostgreSQL 13. Aplicaciones LAMP 1. Informacin general 2. Moin Moin 3. MediaWiki 217 4. phpMyAdmin 219 14. Servidores de archivos 221 1. Servidor FTP 222 2. Network File System (NFS) ............................................ ............................................ 226 3. Iniciador iSCSI 228 4. CUPS - Servidor de impresin .............................................. .................................................. ... 15. Servicios de correo electrnico 1. Sufijo 2. Exim4 3. Servidor Dovecot 245 4. Cartero 247 5. Filtrado de Correo 253 16. Aplicaciones de chat 260 1. Informacin general 261 2. IRC Server 262 3. Servidor de mensajera instantnea Jabber .............................................. .................................... 264 17. Sistema de control de versiones ............................................... .................................................. ... 266

211 213 214 215

231 234 235 242

iv

Gua de Ubuntu Server

1. Bazar 267 2. Subversin 268 3. Servidor CVS 273 4. Referencias 275 18. De red de Windows 276 1. Introduccin 2. Servidor de Archivos Samba 3. Samba Servidor de impresin 4. Asegurar un archivo de Samba y servidor de impresin ........................................... ............................ 5. Samba como un controlador de dominio ............................................. ....................................... 6. La integracin de Active Directory Samba .............................................. ............................... 19. Copias de seguridad 1. Shell Scripts 2. Archivo de rotacin 3. Bacula 20. Virtualizacin 1. libvirt 2. JeOS y vmbuilder ............................................... .................................................. .. 3. UEC 4. Nube de Ubuntu 277 278 281 283 288 292 294 295 299 302 307 308 313 322 333

5. LXC 21. Clustering 1. DRBD 22. VPN 1. OpenVPN 366 23. Otras aplicaciones tiles ............................................... .................................................. 378 1. pam_motd 379 2. etckeeper 381 3. Byobu 383 4. Referencias 385 Apndice A. 386 1. Informar sobre Fallos en Ubuntu Server Edition ............................................ ........................ 387

340 361 362 365

Lista de cuadros
2,1. Requerimientos mnimos recomendados ............................................... ................................. 4 5,1. Conversin de Prioridad Checker ............................................... ........................................ ....... 52 5,2. Dm-multipath Componentes .............................................. .................................................. 53 5,3. Valores predeterminados de configuracin multirruta ............................................... ........................................ 66 5,4. Los atributos de mltiples rutas 69 5,5. Los atributos de dispositivos 71 5,6. tiles Opciones de comando mltiple .............................................. ..................................... 77 17,1. Mtodos de acceso 269 20,1. UEC Requisitos front-end .............................................. .......................................... 323 20,2. Requisitos UEC nodo ............................................... ................................................ 323 20.3. Comandos de contenedores 352

vi

Captulo 1. Introduccin
Bienvenido a la Gua de Ubuntu Server! Aqu usted puede encontrar informacin sobre cmo instalar y configurar varias aplicaciones de servidor. Es un paso a paso, orientado a la tarea de gua para la configuracin y personalizacin de su sistema. Esta gua asume que usted tiene una comprensin bsica de su sistema Ubuntu. Algunos detalles de la instalacin estn cubiertos en Captulo 2, Instalacin [p. 3], pero si usted necesita instrucciones detalladas para instalar Ubuntu, por favor referirse a la Gua de instalacin de Ubuntu1.

Una versin HTML del manual est disponible en lnea en el sitio web de documentacin de Ubuntu2.

Https://help.ubuntu.com/12.04/installation-guide/ 1 2 https://help.ubuntu.com

Introduccin

1. Apoyar
Hay un par de maneras diferentes que Ubuntu Server Edition es compatible, soporte comercial y el apoyo de la comunidad. El principal apoyo comercial (y la financiacin del desarrollo) est disponible en Canonical Ltd. Proporcionan un precio razonable los contratos de soporte en un escritorio o por cada servidor. Para obtener ms informacin, consulte la Servicios Cannicos3 pgina. La ayuda comunitaria tambin es proporcionada por personas que se dedican, y las empresas, que deseen hacer Ubuntu la mejor distribucin posible. La ayuda se proporciona a travs de mltiples listas de correo, IRC canales, foros, blogs, wikis, etc La gran cantidad de informacin disponible puede ser abrumador, pero una consulta de bsqueda del motor bueno por lo general se puede dar una respuesta a sus preguntas. Vase el Ubuntu ApoyarPgina 4 para ms informacin.

3 http://www.canonical.com/services/support 4 http://www.ubuntu.com/support

Captulo 2. Instalacin
Este captulo proporciona una visin general rpida de instalacin de Ubuntu 12.04 LTS Server Edition. Para obtener ms instrucciones detalladas, por favor refirase a la Gua de instalacin de Ubuntu1.

Https://help.ubuntu.com/12.04/installation-guide/ 1

Instalacin

1. Preparacin para la instalacin


Esta seccin explica varios aspectos a considerar antes de iniciar la instalacin.

1,1. Requisitos del sistema


Ubuntu 12.04 LTS Server Edition es compatible con tres (3) principales arquitecturas: Intel x86, AMD64 y ARM. La siguiente tabla muestra las especificaciones de hardware recomendados. Dependiendo de sus necesidades, podra arreglarse con menos que eso. Sin embargo, la mayora de usuarios se arriesgan a terminar frustrados si ignoran estas sugerencias.

Cuadro 2.1. Requisitos mnimos recomendados


Espacio en disco duro Tipo de instalacin CPU Servidor 300 megahertzios RAM 128 megabytes Instalar el sistema Todas las tareas Instalado base 500 megabytes 1 gigabyte

La Server Edition proporciona una base comn para todo tipo de aplicaciones de servidor. Es un minimalista diseo que proporciona una plataforma para los servicios deseados, tales como archivo / servicios de impresin, web hosting, correo electrnico alojamiento, etc Los requisitos para la UEC son ligeramente diferentes, para los requisitos de Front End ver Seccin 3.2.1, "Requisitos de Front End" [p. 322], y para los requisitos de nodo UEC ver Seccin 3.2.2, "Nodo Requisitos "[p. 323].

1,2. Las diferencias de servidor y escritorio


Hay algunas diferencias entre el Ubuntu Server Edition y el Ubuntu Desktop Edition. Lo Cabe sealar que las dos ediciones utilizar los repositorios de apt mismos, por lo que es igual de fcil para instalar un servidor aplicacin en la edicin de escritorio, ya que es en la Server Edition.

Las diferencias entre las dos ediciones son la falta de un entorno de ventanas X en el servidor Edicin, el proceso de instalacin, y las diferentes opciones del kernel.

1.2.1. Las diferencias del Ncleo: Versin de Ubuntu 10.10, y antes, en realidad tenan diferentes kernels para el servidor y las ediciones de escritorio. Ubuntu ya no tiene sabores de los kernel por separado-servidor y genricos. Estos se han fusionado en una de un solo tipo de ncleo genrico para ayudar a reducir la carga de mantenimiento durante la vida de la liberacin.

Cuando se ejecuta una versin de 64 bits de Ubuntu en procesadores de 64 bits no estn limitados por espacio de direccionamiento de memoria.

Instalacin

Para ver todas las opciones de configuracin del kernel se puede ver a travs de / Boot/config-3.2.0-server. Adems, Kernel de Linux en una cscara de nuez2 es un gran recurso de las opciones disponibles.

1,3. Realizar copias de seguridad

Antes de instalar Ubuntu Server Edition debe asegurarse de que todos los datos en el sistema es una copia de seguridad. Ver Captulo 19, copias de seguridad [p. 294] para las opciones de copia de seguridad. Si esto no es la primera vez que un sistema operativo ha sido instalado en su computadora, es probable que tendr que volver a particionar el disco para hacer espacio para Ubuntu. Cada vez que particione un disco, usted debe estar preparado para perder todo el contenido del disco en el que debe comete un error o algo sale mal durante la particin. Los programas usados en la instalacin son bastante fiables, la mayora han tenido aos de uso, sino que tambin realizan acciones destructivas.

2 http://www.kroah.com/lkn/

Instalacin

2. La instalacin desde CD
Los pasos bsicos para instalar Ubuntu Server Edition desde el CD son los mismos que para instalar cualquier el sistema operativo desde el CD. A diferencia del Desktop Edition, la Server Edition no incluye un programa de instalacin grfica. La Server Edition utiliza un proceso basado en men de la consola en su lugar. En primer lugar, descargar y grabar el archivo correspondiente de la ISO Ubuntu sitio web3. Arranque el sistema desde la unidad de CD-ROM. En el indicador de arranque, se le pedir que seleccione un idioma. En el men de arranque principal, hay algunas opciones adicionales para instalar Ubuntu Server Edition. Usted puede instalar una base de Ubuntu Server, consulte el CD-ROM de los defectos, comprobar el sistema de memoria RAM, de arranque del primer disco duro, o rescatar a un sistema que no funciona. El resto de esta seccin cubrir la base de Ubuntu Instalacin del servidor. El instalador pide que el lenguaje se debe utilizar. Posteriormente, se le pedir que seleccione su ubicacin. A continuacin, el proceso de instalacin comienza por pedir la distribucin del teclado. Usted puede pedir al instalador para tratar de que con deteccin automtica, o puede seleccionar manualmente de una lista. El instalador detecta la configuracin de su hardware y configura los ajustes de red utilizando DHCP. Si usted no desea usar DHCP en la siguiente pantalla, seleccione "Volver", y usted tiene la opcin de "Configuracin de la red de forma manual". A continuacin, el instalador le pregunte el nombre de host para la zona y hora del sistema. A continuacin, puede elegir entre varias opciones para configurar el diseo del disco duro. Despus se Se pide que el disco para instalar. Usted puede recibir los mensajes de confirmacin antes de volver a escribir la la tabla de particiones o la creacin de LVM en funcin de diseo del disco. Si opta por LVM, se le pidi el tamao del volumen lgico raz. Para ver las opciones avanzadas de disco Seccin 4, "Advanced Instalacin "[p. 10]. El sistema de base de Ubuntu se instala. Un nuevo usuario se configura, este usuario tendr que raz acceder a travs de la utilidad sudo. Despus de los ajustes de usuario se han completado, se le pedir para cifrar su casa directorio. El siguiente paso en el proceso de instalacin es decidir cmo desea actualizar el sistema. Hay tres opciones: No hay actualizaciones automticas: esto requiere un administrador inicie sesin en la mquina e instalar manualmente actualizaciones. Instale actualizaciones de seguridad de forma automtica: se instalar el paquete de actualizaciones desatendida, lo que va a instalar actualizaciones de seguridad sin la intervencin de un administrador. Para ms detalles vea Seccin 5, "Actualizaciones automticas" [p. 27]. Administrar el sistema con el paisaje: El paisaje es un servicio de pago proporcionado por Canonical para ayudar a gestionar sus mquinas con Ubuntu. Vase el Paisaje4 sitio para ms detalles.
3 http://www.ubuntu.com/download/server/download 4 http://www.canonical.com/projects/landscape

Instalacin

Ahora tiene la opcin de instalar o no instalar, varias tareas del paquete. Ver Seccin 2.1, "Paquete Tareas "[p. 7] para ms detalles. Tambin, hay una opcin para iniciar aptitud para elegir especfica los paquetes a instalar. Para obtener ms informacin, consulte Seccin 4, "Aptitud" [p. 25]. Finalmente, el ltimo paso antes de reiniciar es para ajustar el reloj en hora UTC. Si en algn momento durante la instalacin no est satisfecho con la configuracin por defecto, utilice el Go " Volver "funcin en cualquier mensaje para ser llevado a un men de instalacin detallada que permita modificar la configuracin predeterminada. En algn momento durante el proceso de instalacin es posible que desee leer la pantalla de ayuda proporcionada por el instalacin del sistema. Para ello, pulse F1. Una vez ms, para obtener instrucciones detalladas, vase el Gua de instalacin de Ubuntu5.

2,1. Las tareas del paquete


Durante la instalacin Server Edition tiene la opcin de instalacin de paquetes adicionales de la CD. Los paquetes se agrupan por el tipo de servicio que prestan. Servidor DNS: Selecciona el servidor DNS de BIND y su documentacin. El servidor LAMP: Linux Selecciona un ready-made / Apache / MySQL / PHP. El servidor de correo: Esta tarea selecciona una variedad de paquetes de tiles para un sistema de servidor de correo electrnico de propsito general. OpenSSH servidor: Selecciona los paquetes necesarios para un servidor OpenSSH. Base de datos PostgreSQL: Esta tarea selecciona paquetes de cliente y servidor de la base de datos PostgreSQL. Servidor de impresin: Esta tarea configura el sistema para que sea un servidor de impresin. El servidor de archivos Samba: Esta tarea configura el sistema para que sea un servidor de archivos Samba, que es especialmente adecuada en las redes de ambos sistemas con Windows y Linux. Tomcat Java del servidor: Instala Apache Tomcat y dependencias necesarias. host de mquina virtual: Incluye los paquetes necesarios para ejecutar mquinas virtuales KVM. Los paquetes de forma manual selectos: Ejecuta la aptitud que le permite seleccionar de forma individual paquetes. Instalacin de los grupos de paquetes se lleva a cabo mediante la utilidad tasksel. Una de las importantes diferencias entre Ubuntu (o Debian) y otra distribucin GNU / Linux es que, una vez instalado, un el paquete tambin se configura a los valores razonables, con el tiempo se le pidan adicional requerida informacin. Del mismo modo, cuando se instala una tarea, los paquetes no slo estn instalados, pero no est configurado tambin que proporcionan un servicio totalmente integrado. Una vez que el proceso de instalacin ha finalizado, usted puede ver una lista de tareas disponibles mediante la introduccin de la despus de una terminal:
tasksel - list-tareas
Https://help.ubuntu.com/12.04/installation-guide/ 5

Instalacin

El resultado ser una lista de tareas de otras distribuciones basadas en Ubuntu como Kubuntu y Edubuntu. Tenga en cuenta que tambin se puede invocar la tasksel ordenar por s mismo, que se abrir un men de las funciones disponibles.

Puede ver una lista de los paquetes que se instalan con cada tarea con el - La tarea de los paquetes opcin. Por ejemplo, para listar los paquetes instalados con el Servidor DNS tarea de escribir lo siguiente:

tasksel - task-paquetes de servidor DNS

La salida del comando debe enumerar:

bind9-doc bind9utils bind9

Si usted no ha instalado una de las tareas durante el proceso de instalacin, pero por ejemplo, usted decide hacer que su servidor LAMP un nuevo servidor DNS, as, simplemente inserte el CD de instalacin y de una terminal:

sudo tasksel install servidor DNS

Instalacin

3. Actualizar
Hay varias formas de actualizar desde una versin de Ubuntu a otro. En esta seccin se ofrece una visin general del mtodo de actualizacin recomendada.

3,1. do-release-upgrade
La forma recomendada de actualizar una instalacin de Server Edition es utilizar el do-release-upgrade utilidad. Parte del update-manager-core paquete, no tiene ninguna dependencia grficas y es instalado por defecto.

Sistemas basados en Debian tambin se puede actualizar mediante el uso de apt-get dist-upgrade. Sin embargo, con doliberacin de la actualizacin es recomendable porque tiene la capacidad de manejar los cambios de configuracin del sistema veces sea necesario entre versiones. Para actualizar a una versin ms reciente, de una terminal escriba:

do-release-upgrade

Tambin es posible el uso de do-release-upgrade para actualizar a una versin de desarrollo de Ubuntu. A lograr este uso el -D interruptor:

do-release-upgrade-d

La actualizacin a una versin de desarrollo es no se recomienda para entornos de produccin.

Instalacin

4. Instalacin avanzada
4,1. RAID por software
Redundant Array of Independent Disks "RAID" es un mtodo de uso de varios discos para proporcionar diversos equilibrios de aumentar la fiabilidad de los datos y / o aumentando el rendimiento de entrada / salida, dependiendo en el nivel de RAID que se utiliza. RAID est implementado en software (donde el sistema operativo sabe de ambas unidades y mantiene activamente tanto de ellos) o hardware (donde un controlador especial hace que el sistema operativo que hay slo una unidad y mantiene las unidades de "invisible"). El software RAID incluido con las versiones actuales de Linux (y Ubuntu) se basa en la 'mdadm' conductor y funciona muy bien, mejor incluso que los controladores RAID muchos de los llamados 'hardware'. En esta seccin le guiar a travs de la instalacin de Ubuntu Server Edition con dos particiones RAID 1 en dos fsica discos duros, uno para /y otra para intercambiar. 4.1.1. Particiones Siga los pasos de instalacin hasta llegar a la Particionar discos duros el paso, a continuacin: 1. 2. Seleccionar Manual como el mtodo de particin. Seleccione el primer disco duro, y estoy de acuerdo "Crear una nueva tabla de particiones vaca en este dispositivo?". Repita este paso para cada unidad que desea ser parte de la matriz RAID. 3. 4. Seleccione la "ESPACIO LIBRE" en el primer disco a continuacin, seleccione "Crear una nueva particin". A continuacin, seleccione el Tamao de la particin. Esta particin ser el intercambiar particin, y un general el tamao de swap es el doble de memoria RAM. Introduzca el tamao de la particin, a regla para continuacin, elija Primaria, entonces Comienzo. Un tamao de la particin de swap del doble de la capacidad de memoria RAM disponible no siempre es deseable, especialmente en sistemas con grandes cantidades de RAM. Clculo de la permuta tamao de la particin de los servidores es altamente dependiente de cmo el sistema va a ser utilizado. Seleccione la "Utilizar como:" lnea en la parte superior. Por defecto es "Ext4 diario del sistema de archivos", cambiar para que "Volumen fsico para RAID" entonces "Hecho el establecimiento de particin". Para el /particin una vez ms, seleccione "Espacio libre" en el disco primero y luego "Crear una nueva particin". Utilice el resto del espacio libre en el disco y elegir Continuar, entonces Primaria. Al igual que con la particin de intercambio, seleccione el "Utilizar como:" la lnea en la parte superior, cambindolo por "Volumen fsico para RAID ". Asimismo, seleccione el "La bandera de arranque:" lnea para cambiar el valor a "Encendido". la continuacin, la particin ". A creacin de elija "Hecho Repita los pasos del tres al ocho para el otro disco y las particiones.

5.

6. 7. 8.

9.

4.1.2. Configuracin de RAID Con la configuracin de las matrices de las particiones est listo para ser configurado: 10

Instalacin

1. 2. 3. 4.

De vuelta en el principal "Particin de los discos", seleccione "Configuracin de RAID por software" en la parte superior. Seleccionar "S" para escribir los cambios en el disco. Elegir "Crear un dispositivo MD". Para este ejemplo, seleccionar "RAID 1", pero si usted est utilizando una configuracin diferente elegir la adecuada tipo (RAID 0 RAID 1, RAID 5). Con el fin de utilizar RAID 5 necesita por lo menos tres unidades. Uso de RAID0 o RAID1 slo dos unidades se requieren.

5.

6. 7.

Introduzca el nmero de dispositivos activos "2", o la cantidad de unidades de disco duro que tiene, para la matriz. A continuacin, seleccione "Continuar". A continuacin, introduzca el nmero de dispositivos de reserva "0" por defecto, a continuacin, elija "Continuar". Elija las particiones a utilizar. En general sern sda1, sdb1, sdc1, etc Los nmeros por lo general coinciden y las diferentes letras corresponden a diferentes unidades de disco duro. Para el intercambiar particin de elegir sda1 y sdb1. Seleccionar "Continuar" para ir al paso siguiente. Repita los pasos tres a travs de siete para el /particin de la eleccin sda2 y sdb2. Una vez hecho esto seleccione "Finalizar".

8. 9.

4.1.3. Formato Ahora debe haber una lista de los discos duros y dispositivos RAID. El siguiente paso es formatear y establecer el punto de montaje de los dispositivos RAID. Tratar el dispositivo RAID como un formato de disco duro local, y montar en consecuencia. 1. 2. 3. 4. 5. Seleccionar "# 1" bajo el "RAID1 dispositivo # 0" particin. Elegir "Utilizar como:". A continuacin, seleccione "rea de intercambio", entonces "Hecho el establecimiento de particin". A continuacin, seleccione "# 1" bajo el "RAID1 dispositivo # 1" particin. Elegir "Utilizar como:". A continuacin, seleccione "Ext4 diario del sistema de archivos". A continuacin, seleccione la "Punto de montaje" y elija "/ - El sistema de archivos raz". Cambiar cualquiera de los otros opciones, segn corresponda, a continuacin, seleccione "Hecho el establecimiento de particin". Por ltimo, seleccione "Finalizar el particionado y escribir los cambios en el disco".

6.

Si opta por colocar la particin de root en un sistema RAID, el instalador le preguntar si desea para arrancar en un degradado estado. Ver Seccin 4.1.4, "RAID degradado" [p. 11] para ms detalles. El proceso de instalacin a continuacin, continuar normalmente. 4.1.4. RAID degradado En algn momento de la vida del equipo de un evento fallo de disco se puede producir. Cuando esto sucede, utilizando RAID por software, el sistema operativo se coloque la matriz en lo que se conoce como un degradado estado. 11

Instalacin

Si la matriz se ha degradado, debido a la posibilidad de corrupcin de datos, por defecto de Ubuntu Server Edicin se iniciar en initramfs despus de treinta segundos. Una vez que el initramfs haya arrancado hay un quince segundo requerimiento que le da la opcin de seguir adelante y arrancar el sistema, o recuperar manual de tentativa. Arrancar al sistema initramfs puede o no ser el comportamiento deseado, especialmente si la mquina est en un lugar remoto. El arranque de un array degradado se puede configurar de varias maneras: La utilidad dpkg-reconfigure se puede utilizar para configurar el comportamiento predeterminado, y durante el proceso se le pregunt acerca de los ajustes adicionales relacionados con la matriz. Tales como el monitoreo, alertas de correo electrnico, etc Para reconfigurar mdadm escriba lo siguiente:
sudo dpkg-reconfigure mdadm

El dpkg-reconfigure mdadm proceso va a cambiar el / Etc / initramfs-tools / conf.d / mdadm archivo de configuracin. El archivo tiene la ventaja de ser capaz de pre-configurar el comportamiento del sistema, y tambin puede ser editado manualmente:

BOOT_DEGRADED = true

El archivo de configuracin se puede anular mediante el uso de un argumento del ncleo. El uso de un argumento de kernel permitir que el sistema arranque a una matriz degradada, as: Cuando el servidor se est iniciando la prensa Cambiar para abrir el men Grub. Prensa epara editar las opciones de comando del kernel. Presione el hacia abajo cursores para marcar la lnea del kernel. Agregar "Bootdegraded = true" (Sin las comillas) al final de la lnea. Prensa Ctrl + x para arrancar el sistema. Una vez que el sistema ha arrancado usted puede reparar la matriz de ver Seccin 4.1.5, "RAID Mantenimiento "[p. 12] Para ms informacin, o copiar los datos importantes en otro equipo debido a la gran fallo de hardware. 4.1.5. RAID de Mantenimiento La utilidad mdadm se puede utilizar para ver el estado de una matriz, aadir discos a una matriz, quitar discos, etc: Para ver el estado de una matriz, de una terminal escriba:

sudo mdadm-D / dev/md0

La -D dice mdadm para mostrar detallado informacin sobre el / Dev/md0 dispositivo. Reemplazar / Dev/md0 con el dispositivo RAID apropiada. Para ver el estado de un disco en una matriz:

sudo mdadm-E / dev/sda1

12

Instalacin

La salida si es muy similar al mdadm-D comando, ajustar / Dev/sda1 para cada disco. Si un disco falla y debe ser eliminado de una serie escriba:

sudo mdadm - remove / dev/md0 / dev/sda1

Cambiar / Dev/md0 y / Dev/sda1 en el dispositivo RAID y el disco. Del mismo modo, para agregar un nuevo disco:
sudo mdadm - add / dev/md0 / dev/sda1

A veces un disco se puede cambiar a un defectuoso Estado a pesar de que no hay ningn problema fsico la unidad. Por lo general, vale la pena extraer la unidad de la matriz a continuacin, volver a agregar. Esto har que la unidad para volver a sincronizar con la matriz. Si la unidad no se sincronizarn con la matriz, es una buena indicacin de fallo de hardware. La / Proc / mdstat archivo tambin contiene informacin til acerca de los dispositivos RAID del sistema:
cat / proc / mdstat Personalidades: [linear] [multipath] [raid0] [raid1] [RAID 6] [RAID 5] [RAID 4] [RAID 10] md0: active raid1 sda1 [0] sdb1 [1] 10016384 bloques [2/2] [UU] los dispositivos utilizados: <none>

El siguiente comando es ideal para ver el estado de una unidad de sincronizacin:

reloj-n1 cat / proc / mdstat

Presionar Ctrl + c para detener el comando reloj. Si es necesario reemplazar una unidad defectuosa, despus de que la unidad ha sido reemplazado y sincronizado, grub necesita debe ser instalado. Para instalar grub en el disco nuevo, escriba lo siguiente:
sudo grub-install / dev/md0

Reemplazar / Dev/md0 con el nombre de la matriz de dispositivo adecuado. 4.1.6. Recursos El tema de los arreglos RAID es compleja debido a la gran cantidad de formas de RAID se pueden configurar. Por favor, consulte los siguientes enlaces para ms informacin: Ubuntu Wiki Artculos sobre RAID6.

6 https://help.ubuntu.com/community/Installation # redada

13

Instalacin El software RAID HOWTO7 Administracin de RAID en Linux8

4,2. Logical Volume Manager (LVM)


Lgico Volumen Manager, o LVM, permite a los administradores crear lgico volmenes de uno o de varios discos duros fsicos. Volmenes LVM se pueden crear en las dos particiones de software RAID y particiones estndar que reside en un solo disco. Los volmenes tambin se puede ampliar, dar una mayor flexibilidad a los sistemas como los requerimientos cambian.

4.2.1. Informacin general Un efecto secundario de alimentacin de LVM y la flexibilidad es un mayor grado de complicacin. Antes de zambullirse en el proceso de instalacin de LVM, lo mejor es familiarizarse con algunos trminos. Volumen fsico (PV): disco duro fsico, particin de disco o particin RAID por software con formato LVM PV. Volumen de Grupo (VG): est hecho de uno o ms volmenes fsicos. Un VG puede se puede extender por la adicin de ms PV. A VG es como una unidad de disco virtual, de la cual uno o ms volmenes lgicos son tallado. Logical Volume (LV): es similar a una particin en un sistema no-LVM. Un LV con el formato del deseado del sistema de archivos (ext3, XFS, JFS, etc), que pasa a estar disponible para el montaje y almacenamiento de datos. 4.2.2. Instalacin Como ejemplo, esta seccin cubre la instalacin de Ubuntu Server Edition con el / Srv montada en un LVM volumen. Durante la instalacin inicial de un solo volumen fsico (PV) ser parte del grupo de volmenes (VG). Otro PV se aadir despus de la instalacin para demostrar cmo un VG se puede ampliar.

Hay varias opciones de instalacin para el LVM, "Guiado - utilizar todo el disco y la configuracin de LVM" que Tambin le permitir asignar una porcin del espacio disponible a LVM, "Guiado - utilizar todo el programa de instalacin LVM cifrado ", o Manualmente configurar las particiones y configurar LVM. En este momento la nica manera de configurar un sistema con dos particiones LVM y estndar, durante la instalacin, es utilizar el Manual enfoque. 1. 2. 3. Siga los pasos de instalacin hasta llegar a la Particionar discos duros el paso, a continuacin: Al "Los discos de particin pantalla, seleccione "Manual". Seleccione el disco duro y en la siguiente pantalla, seleccione "s" a "Crear una nueva tabla de particin vaca dispositivo ". en este A continuacin, cree estndar / Boot, de intercambio, y /particiones con sistema de archivos lo que usted prefiere. Para el LVM / Srv, crear un nuevo Lgico particin. A continuacin, cambie "Utilizar como" a "Volumen fsico para LVM " entonces "Terminado de definir la particin".

4. 5.

7 http://www.faqs.org/docs/Linux-HOWTO/Software-RAID-HOWTO.html 8 http://oreilly.com/catalog/9781565927308/

14

Instalacin

6.

7.

A continuacin, seleccione "Configurar el Logical Volume Manager" en la parte superior, y elija "S" para escribir el cambios en el disco. Para el "LVM accin de configuracin" en la siguiente pantalla, seleccione "Crear grupo de volmenes". Introduzca un nombre para el VG como vg01, o algo ms descriptivo. Despus de introducir un nombre, seleccione la particin configurado para LVM, y elija "Continuar". De vuelta en el "LVM accin de configuracin" pantalla, seleccione "Crear volmenes lgicos". Seleccione la recin creado grupo de volmenes, y escriba un nombre para la nueva BT, por ejemplo srv ya que es el destinado punto de montaje. A continuacin, elija un tamao, que puede ser la particin completa, ya que siempre puede extenderse ms tarde. Elegir "Finalizar" y usted debera estar de vuelta en el principal "Los discos de particin" pantalla. Ahora agregue un sistema de archivos a la nueva LVM. Seleccione la particin en "LVM VG vg01, LV srv", o cualquiera sea el nombre que haya elegido, el elegir Usar como. Configuracin de un sistema de archivos como la seleccin de lo normal / Srv como el punto de montaje. Una vez hecho esto, seleccione "Terminado de definir la particin".

8.

9.

10. Por ltimo, seleccione "Finalizar el particionado y escribir los cambios en el disco". A continuacin, confirme los cambios y continuar con el resto de la instalacin. Hay algunas utilidades para ver la informacin sobre el LVM: pvdisplay: muestra informacin sobre los volmenes fsicos. vgdisplay: muestra informacin acerca de grupos de volmenes. lvdisplay: muestra informacin sobre los volmenes lgicos. 4.2.3. La extensin de los grupos de volmenes Continuando con srv como un ejemplo de volumen LVM, esta seccin incluye la adicin de un segundo disco duro, la creacin de un volumen fsico (PV), y agreg que el grupo de volmenes (VG), que se extiende el volumen lgico
srv y,

finalmente, la ampliacin del sistema de archivos. Este ejemplo se supone un segundo disco duro ha sido aadido a el sistema. En este ejemplo, este disco duro se denominar / Dev / sdb y vamos a utilizar todo el disco como un volumen fsico (puede optar por crear las particiones y los utilizan como diferentes volmenes fsicos)

Asegrese de que usted no tiene una ya existente / Dev / sdb antes de emitir los siguientes comandos. Usted podra perder algunos datos si se emite los comandos en un disco que no est vaca. 1. En primer lugar, crear el volumen fsico, ejecutar en un terminal:

sudo pvcreate / dev / sdb

2.

Ahora ampliar el grupo de volmenes (VG):

sudo vg01 vgextend / dev / sdb

3.

Utilice vgdisplay para encontrar las extensiones libres fsicas - Free PE / tamao (el tamao puede asignar). Nosotros asumir un tamao libre de 511 PE (equivalente a 2 GB con un tamao de 4 MB PE) y vamos a utilizar el todo el espacio libre disponible. Utilice su propio PE y / o espacio libre. 15

Instalacin

El volumen lgico (LV), ahora se puede extender por diferentes mtodos, slo veremos cmo utilizar la educacin fsica para extender el LV:

sudo lvextend / 511 dev/vg01/srv-l

4.

La -L opcin permite que el ventrculo izquierdo que se extiende utilizando la EP. La -L opcin permite que el ventrculo izquierdo para ser ampliarse con Meg, Gig, Tera, bytes, etc. A pesar de que se supone que son capaces de expandir un sistema de archivos ext3 o ext4 sin desmontarla primero, puede ser una buena prctica para desmontar todos modos y comprobar el sistema de ficheros, por lo que que usted no estropear el da que quiere reducir un volumen lgico (en ese caso, desmontar primero es obligatorio). Los siguientes comandos son para un EXT3 o EXT4 sistema de archivos. Si usted est usando otro sistema de archivos que puede haber otros servicios pblicos disponibles.

sudo umount / srv sudo e2fsck-f / dev/vg01/srv

La -F opcin de las fuerzas de e2fsck corrientes, incluso si el sistema parece limpio. 5. Por ltimo, cambiar el tamao del sistema de ficheros:
resize2fs sudo / dev/vg01/srv

6.

Ahora montar la particin y comprobar su tamao.

mount / dev/vg01/srv / srv && df-h / srv

4.2.4. Recursos Consulte el Wiki de Ubuntu LVM artculos9. Consulte el LVM HOWTO10 para ms informacin. Otro buen artculo es Gestin de espacio en disco con LVM11 en el sitio linuxdevcenter.com de O'Reilly. Para obtener ms informacin sobre fdisk ver el pgina de manual de fdisk12.

9 https://help.ubuntu.com/community/Installation # lvm 10 http://tldp.org/HOWTO/LVM-HOWTO/index.html 11 http://www.linuxdevcenter.com/pub/a/linux/2006/04/27/managing-disk-space-with-lvm.html 12 http://manpages.ubuntu.com/manpages/precise/en/man8/fdisk.8.html

16

Instalacin

5. Kernel Crash Dump


5,1. Introduccin
Un volcado del ncleo se refiere a una porcin del contenido de la memoria voltil (RAM) que se copia en el disco cuando la ejecucin del ncleo se interrumpe. Los siguientes eventos pueden causar un kernel interrupcin: Kernel Panic Interrumpe no enmascarable (NMI) Excepciones Machine Check (MCE) Error de hardware Manual de la intervencin Para algunos de esos eventos (pnico, NMI) el kernel va a reaccionar automticamente y activar el archivo de volcado mecanismo a travs del kexec. En otras situaciones una intervencin manual se requiere con el fin de capturar el memoria. Cada vez que uno de los eventos anteriores ocurre, es importante averiguar la causa con el fin de para evitar que vuelva a suceder. La causa puede ser determinada mediante la inspeccin de la memoria copiada contenidos.

5,2. Mecanismo de volcado del ncleo


Cuando un ncleo de pnico se produce, el ncleo se basa en el kexec mecanismo para reiniciar rpidamente una nueva instancia del ncleo en una seccin de pre-reservada de memoria que se le haba asignado cuando el sistema arrancado (vase ms adelante). Esto permite que el rea de memoria existente para permanecer intacto con el fin de forma segura copiar su contenido a almacenamiento.

5,3. Instalacin
El fallo en el ncleo de utilidad de descarga se instala con el siguiente comando:

sudo apt-get install linux-crashdump

Un reinicio es entonces necesario.

5,4. Configuracin
Ninguna otra configuracin se requiere a fin de tener el mecanismo de volcado del ncleo habilitado.

5,5. Verificacin
Para confirmar que el mecanismo de volcado del ncleo est habilitado, hay algunas cosas que debe verificar. En primer lugar, confirmar la que el crashkernel parmetro de arranque est presente (nota: La siguiente lnea se ha dividido en dos para adaptarse a El formato de este documento:

17

Instalacin

cat / proc / cmdline BOOT_IMAGE = / vmlinuz-3.2.0-17-server root = / dev / mapper / se precisa-ro root crashkernel = 384M-2G: 64M, 2G-: 128M

La crashkernel parmetro tiene la siguiente sintaxis:

crashkernel = <range1>: <size1> [, <range2>: <size2>, ...] [@ desplazamiento] rango = puesta en [final] "inicio" es inclusiva y "fin" es exclusiva.

As para el parmetro crashkernel encuentra en / Proc / cmdline tendramos:

crashkernel = 384M-2G: 64M, 2G-: 128M

El valor anterior significa: Si la memoria RAM es ms pequeo que 384M, luego no hacer nada de reserva (este es el "rescate" de caso) Si el tamao de la RAM es de entre 386m y 2G (exclusivo), entonces la reserva 64M Si el tamao de la RAM es mayor que el 2G, a continuacin, reserva de 128M En segundo lugar, verificar que el kernel se ha reservado el rea de memoria requerida para el kernel kdump haciendo:

dmesg | grep-i accidente ... [ 0.000000] Reserva de 64MB de memoria a 800 MB para crashkernel (Sistema RAM: 1023MB)

5,6. Prueba del mecanismo de volcado


Prueba del mecanismo de volcado har un reinicio del sistema. En ciertas situaciones, esta puede causar prdida de datos si el sistema est bajo de carga pesada. Si quieres poner a prueba el mecanismo, asegurarse de que el sistema est inactivo o con una carga muy ligera. Compruebe que el SysRQ mecanismo est habilitado mirando el valor de la / Proc / sys / kernel / sysrq parmetro del ncleo:

cat / proc / sys / kernel / sysrq

Si un valor de 0se devuelve la funcin est desactivada. Activar con el siguiente comando:

sudo sysctl-w = 1 kernel.sysrq

Una vez hecho esto, debe convertirse en root, como se acaba con sudo no ser suficiente. A medida que el raz usuario, se tendr que ejecutar el comando c echo> / proc / sysrq de gatillo fcil. Si usted est usando una red

18

Instalacin

conexin, se pierde el contacto con el sistema. Por esta razn, es mejor hacer la prueba al tiempo que conectado a la consola del sistema. Esto tiene la ventaja de hacer el proceso de volcado del ncleo visible. Una salida de la prueba tpica debe tener el siguiente aspecto:

sudo-s Contrasea [sudo] para Ubuntu: #c echo> / proc / sysrq-trigger [31.659002] Pet Sis: el disparo de un accidente [ [ [ [ [ 31.659749] 31.662668] 31.662668] 31.662668] 31.662668] Error: no puede manejar eliminar la referencia del ncleo puntero NULL en la IP: [<ffffffff8139f166>] sysrq_handle_crash 0 x16/0x20 DGP 3bfb9067 PUD 368a7067 PMD 0 Oops: 0002 [# 1] SMP CPU 1 (Null)

....

El resto de la produccin se trunca, pero hay que ver el reinicio del sistema y en alguna parte en el registro, usted ver la siguiente lnea:
Inicio: Guardar vmcore de la cada del ncleo ...

Una vez completado, el sistema se reiniciar a su modo de funcionamiento normal. A continuacin, se encuentra el kernel Crash en el archivo de volcado / Var / crash directorio:

ls / var / crash linux-image-3.0.0-12-server.0.crash

5,7. Recursos
Volcado del ncleo Crash es un tema muy amplio que requiere un buen conocimiento del kernel de Linux. Usted puede encontrar ms informacin sobre el tema aqu: Kdump documentacin del ncleo13. La herramienta de choque14 Anlisis de Crash Kernel de Linux15 (basado en Fedora, todava da una buena gua de volcado del ncleo anlisis)

13 http://www.kernel.org/doc/Documentation/kdump/kdump.txt 14 http://people.redhat.com/ ~ anderson / 15 http://www.dedoimedo.com/computers/crash-analyze.html

19

Captulo 3. La administracin de paquetessistema de paquetes de gestin integral para la instalacin, actualizacin, configuracin, Ubuntu cuenta con un
y eliminacin de software. Adems de proporcionar acceso a una base organizada de ms de 35.000 programas los paquetes para su equipo Ubuntu, las instalaciones de gestin de paquetes tambin cuentan con la dependencia las capacidades de resolucin y la comprobacin de actualizaciones de software. Existen varias herramientas para interactuar con el sistema de gestin de paquetes de Ubuntu, desde la simple utilidades de lnea de comandos que pueden ser fcilmente automatizados por los administradores del sistema, a un grfico simple interfaz que es fcil de utilizar por los nuevos en Ubuntu.

20

La administracin de paquetes

1. Introduccin
Sistema de gestin de paquetes de Ubuntu se deriva desde el mismo sistema utilizado por el / Debian GNU Distribucin de Linux. Los archivos de paquetes contienen todos los archivos necesarios, meta-datos e instrucciones en implementar una funcionalidad particular o aplicacin de software en el equipo de Ubuntu. Los archivos de paquetes de Debian suelen tener la extensin '. Deb', y por lo general existen en repositorios que son colecciones de paquetes que se encuentran en diversos medios de comunicacin, tales como discos CD-ROM o en lnea. Los paquetes son normalmente en un formato binario pre-compilado, por lo que la instalacin es rpida y no requiere la compilacin de software. Muchos paquetes complejos utilizan el concepto de dependencias. Las dependencias son paquetes adicionales requerido por el paquete principal con objeto de funcionar adecuadamente. Por ejemplo, la sntesis de voz Festival del paquete depende de la libasound2 paquete, que es un paquete de suministro de la ALSA biblioteca de sonidos necesarios para la reproduccin de audio. Con el fin de fiesta a la funcin, y todas sus dependencias debe estar instalado. Las herramientas de gestin de software en Ubuntu lo har automticamente.

21

La administracin de paquetes

2. dpkg
dpkg es un gestor de paquetes de Basada en Debian sistemas. Se puede instalar, eliminar y crear los paquetes, pero a diferencia de otros sistemas de gestin de paquetes, no se puede descargar automticamente e instalar los paquetes o sus dependencias. En esta seccin se explica el uso de dpkg para administrar los paquetes instalados localmente: Para una lista de todos los paquetes instalados en el sistema, de un tipo de terminal del sistema:
dpkg-l

Dependiendo de la cantidad de paquetes en su sistema, esto puede generar una gran cantidad de la produccin. Canalizar la salida a travs de grep para ver si un paquete especfico est instalado:

dpkg-l | grep apache2

Reemplazar apache2 con cualquier nombre de paquete, que forma parte de un nombre de paquete, o una expresin regular otros. Para una lista de los archivos instalados por un paquete, en este caso el paquete de UFW, escriba:
dpkg-L UFW

Si usted no est seguro de qu paquete instalar un archivo, dpkg-S puede ser capaz de decirle. Por ejemplo:

dpkg-S / etc / host.conf base-files: / etc / host.conf

El resultado muestra que el / Etc / host.conf pertenece al paquete de base de archivos. Muchos archivos se generan automticamente durante el proceso de instalacin del paquete, e incluso a pesar de que estn en el sistema de archivos, dpkg-S no puede saber cul es el paquete al que pertenecen. Se puede instalar un local . Deb presentar de este modo:

sudo dpkg-i-4_i386.deb zip_3.0

Cambiar zip_3.0-4_i386.deb al nombre del archivo real del archivo local. deb que desea instalar. La desinstalacin de un paquete se puede lograr mediante:

sudo dpkg-r zip

Desinstalacin de paquetes usando dpkg, en la mayora de los casos, se NO recomendado. Es mejor utilizar de paquetes que maneja dependencias para garantizar que el sistema est en un consistente un gestor estado. Por ejemplo usando dpkg-r zip eliminar el paquete postal, pero que los paquetes dependen de ello todava ser instalado y puede funcionar ya no correctamente.

Para las opciones de dpkg ms ver la pgina de manual: el hombre dpkg.

22

La administracin de paquetes

3. Apt-get
El comando apt-get es una potente herramienta de lnea de comandos, que trabaja con Ubuntu Avanzado Packaging Tool (APT) la realizacin de funciones tales como la instalacin de nuevos paquetes de software, actualizar de paquetes de software existentes, la actualizacin del ndice de paquetes, e incluso actualizacin de todo Sistema Ubuntu. Al ser una simple herramienta de lnea de comandos, apt-get tiene numerosas ventajas sobre la gestin de otro paquete herramientas disponibles en Ubuntu para los administradores de servidores. Algunas de estas ventajas incluyen la facilidad de uso sobre conexiones sencillas de terminal (SSH), y la capacidad de ser utilizado en las secuencias de comandos de administracin del sistema, que automatizado por la utilidad de planificacin de a su vez puede ser tareas cron. Algunos ejemplos de los usos populares de la utilidad apt-get: Instalar un paquete: Instalacin de paquetes utilizando la herramienta apt-get es bastante simple. Por ejemplo, para instalar el escner de red nmap, escriba lo siguiente:

sudo apt-get install nmap

Eliminar un paquete: La eliminacin de un paquete (o paquetes) es tambin sencillo. Para quitar el paquete instalado en el ejemplo anterior, escriba lo siguiente:

sudo apt-get remove nmap

Varios paquetes: Usted puede especificar varios paquetes para instalar o desinstalar, separados por espacios. Adems, aadiendo el - Purge opcin para apt-get remove eliminar los archivos de configuracin de paquetes como as. Esto puede o no puede ser el efecto deseado, a fin de utilizar con precaucin. Actualizar el ndice de paquetes: El ndice de paquetes de APT es esencialmente una base de datos disponible paquetes en los repositorios definidos en el / Etc / apt / sources.list archivo y en el / Etc / apt / sources.list.d directorio. Para actualizar el ndice local de paquetes con los ltimos cambios realizados en el repositorios, escriba lo siguiente:

sudo apt-get update

Actualizar paquetes: Con el tiempo, las versiones actualizadas de los paquetes ya instalados en su ordenador puede llegar a ser disponible en los repositorios de paquetes (por ejemplo, actualizaciones de seguridad). Para actualizar el sistema, primero actualice su ndice de paquetes como se describe anteriormente, a continuacin, escriba:
sudo apt-get upgrade

Para obtener informacin sobre cmo actualizar a una nueva versin de Ubuntu ve Seccin 3, "Actualizacin" [p. 9]. Las acciones del comando apt-get, como instalacin y desinstalacin de paquetes, se registran en el archivo / var / log / dpkg.log registro.

23

La administracin de paquetes Para ms informacin sobre el uso de APT, lea el amplio Manual de Usuario de Debian APT1 o Tipo:

apt-get ayuda

1 http://www.debian.org/doc/user-manuals # apt-howto

24

La administracin de paquetes

4. Aptitud
Puesta en marcha de Aptitud sin opciones de lnea de comandos, le dar una basada en men, basado en texto de primera extremo al Advanced Packaging Tool (APT) del sistema. Muchos de los de gestin de paquetes comunes funciones, como la instalacin, desinstalacin y actualizacin, se pueden realizar en la aptitud, con una sola tecla comandos, que son normalmente letras minsculas. Aptitud es el ms adecuado para su uso en un entorno de terminal no grfico para asegurar el funcionamiento apropiado de las teclas de comando. Usted puede iniciar la interfaz basada en mens de Aptitud como un usuario normal, escriba el siguiente comando en una terminal:

sudo aptitude

Cuando inicie Aptitude, usted ver una barra de men en la parte superior de la pantalla y dos paneles debajo del men bar. El panel superior contiene las categoras de paquetes, tales como Nuevos Paquetes y No se ha instalado paquetes. El panel inferior contiene informacin relacionada con los paquetes y categoras de paquetes. Uso de aptitud para la gestin de paquetes es relativamente sencillo, y hace que la interfaz de usuario tareas comunes fciles de realizar. Los siguientes son ejemplos de gestin de paquetes comunes funciones que se realizan en Aptitude: Instalar paquetes: Para instalar un paquete, busque el paquete a travs de la Paquetes no instalados paquete categora, mediante el uso de las teclas de flecha del teclado y las ENTER clave. Resalte el paquete deseado, continuacin, pulse el +clave. La entrada de paquete debe girar verde, lo que indica que se ha marcado para la instalacin. A continuacin, pulse gque se presentar con un resumen de las acciones. Presionar gde nuevo, y se le pedir que se convierta en administrador para completar la instalacin. Presionar ENTER el que se resultar en una Contrasea: pedir. Ingrese su contrasea de usuario para entrar como root. Por ltimo, pulse guna vez ms y se le pedir que descargue el paquete. Presionar ENTER en el Continuar del sistema y, descarga y la instalacin del paquete comenzar. Desinstalar paquetes: Para eliminar un paquete, busque el paquete a travs de la Paquetes instalados paquete categora, mediante el uso de las teclas de flecha del teclado y las ENTER clave. Resalte el paquete deseado que desea eliminar y pulse el -clave. La entrada de paquete debe girar rosa, lo que indica que tiene sido marcados para su eliminacin. A continuacin, pulse gque se presentar con un resumen de las acciones. Presionar g otra vez, y se le pedir que se convierta en administrador para completar la eliminacin. Presionar ENTER el que se resultar en una Contrasea: pedir. Ingrese su contrasea de usuario para entrar como root. Por ltimo, pulse guna vez ms, a continuacin, pulse ENTER en el Continuar del sistema, y la eliminacin del paquete se iniciar. Actualizar ndice de paquetes: Para actualizar el ndice de paquetes, simplemente presione el ullave y usted ser pide que se convierta en administrador para completar la actualizacin. Presionar ENTER lo que resultar en un Contrasea: pedir. Ingrese su contrasea de usuario para entrar como root. La actualizacin del ndice de los paquetes. Presionar ENTER en el Aceptar del sistema cuando el cuadro de dilogo de descarga para completar el proceso. Actualizar paquetes: Para actualizar los paquetes, realizar la actualizacin del ndice de paquetes como se detalla ms arriba, y luego presione el Uclave para marcar todos los paquetes con las actualizaciones. A continuacin, pulse gpor el cual usted se presentarn con un resumen de las acciones. Presionar gotra vez, y se le pedir que

25

La administracin de paquetes

convierta en administrador para completar la instalacin. Presionar ENTER lo que resultar en un Contrasea: pedir. Ingrese su contrasea de usuario para entrar como root. Por ltimo, pulse guna vez ms, y se le pedir que descargar los paquetes. Presionar ENTER en el Continuar del sistema, y la actualizacin de los paquetes comenzar. La primera columna de la informacin que aparece en la lista de paquetes en el panel superior, cuando en realidad ver paquetes muestra el estado actual del paquete, y utiliza la siguiente clave para describir el estado de la paquete: i: Paquete instalado c: El paquete no instalado, pero la configuracin del paquete permanece en el sistema t: Eliminado del sistema v: Paquete virtual B: Paquetes rotos u: Sin embalaje archivos, pero el paquete an no est configurado C: A medio configurar - Error en la configuracin y requiere ser reparada H: Half-instalado - no de eliminacin y requiere ser reparada Para cerrar Aptitude, simplemente presione el qclave y confirme que desea salir. Muchas otras funciones son disponible en el men Aptitud pulsando el F10 clave.

4,1. Comando de Aptitud Lnea


Tambin se puede utilizar como una herramienta de Aptitud de lnea de comandos, similar a apt-get. Para instalar el paquete nmap con todas las dependencias necesarias, como en el ejemplo apt-get, se utilizara el siguiente comando:

sudo aptitude install nmap

Para eliminar el mismo paquete, se utiliza el comando:

sudo apt-get remove nmap

Consulte las pginas man para ms detalles sobre las opciones de lnea de comandos para la aptitud.

26

La administracin de paquetes

5. Actualizaciones automticas
El paquete de actualizacin desatendida se puede utilizar para instalar automticamente los paquetes actualizados, y puede ser configurado para actualizar todos los paquetes o simplemente instalar actualizaciones de seguridad. En primer lugar, instalar el paquete mediante la introduccin de lo siguiente en una terminal:
sudo apt-get install-actualizaciones desatendidas

Para configurar las actualizaciones desatendida, editar O etc/apt/apt.conf.d/50unattended-upgrades y ajustar lo siguiente de acuerdo a sus necesidades:

Desatendida a la actualizacin Ttulo de animales de Orgenes { "Ubuntu precisa de seguridad"; "Ubuntu precisa de cambios"; / / };

Ciertos paquetes tambin puede ser la lista negra y por lo tanto no se actualiza automticamente. Para la lista negra un paquete, agregar a la lista:

Desatendida a la actualizacin del paquete-Lista Negra :: { / / "Vim"; / / "Libc6"; / / / / }; "Libc6-dev"; "Libc6-i686";

El doble "/ /" servir como comentarios, as que lo que sigue "/ /" no ser evaluado.

Para activar las actualizaciones automticas, editar / Etc/apt/apt.conf.d/10periodic y establecer la adecuada apt opciones de configuracin:
APT :: Peridico :: Paquete de actualizacin de las listas-"1"; APT :: Peridico :: Descargar actualizable en los paquetes de "1";:: Peridico :: AutocleanInterval "7"; APT APT :: Peridico :: desatendida a la actualizacin "1";

Las actualizaciones de configuracin por encima de la lista de paquetes, descargas, e instala las actualizaciones disponibles cada da. El archivo de descarga local se limpia cada semana. Usted puede leer ms acerca de las opciones de configuracin aptas peridicos en el / Etc / cron.daily
/ apt

script de cabecera. Los resultados de la vigilancia de las actualizaciones se registrarn en / Var / log / unattendedupgrades.

27

La administracin de paquetes

5,1. Notificaciones
Configuracin Desatendida a la actualizacin :: Correo en O etc/apt/apt.conf.d/50unattended-upgrades voluntad permitir que las actualizaciones de vigilancia de correo electrnico a un administrador que detalla todos los paquetes tiene problemas. que necesitan mejorar o Otro paquete til es apticron. apticron va a configurar una tarea programada para enviar un administrador informacin acerca de los paquetes en el sistema que tienen las actualizaciones disponibles, as como un resumen de cambios en cada paquete.

Para instalar el paquete apticron, en una terminal escriba:

sudo apt-get install apticron

Una vez que se instala el paquete editar / Etc / apticron / apticron.conf, Para establecer la direccin de correo electrnico y otros opciones:
EMAIL = "root@example.com"

28

La administracin de paquetes

6. Configuracin
La configuracin de la Advanced Packaging Tool (APT) repositorios del sistema se almacena en el / Etc / apt / sources.list archivo y el / Etc / apt / sources.list directorio. Un ejemplo de este archivo se hace referencia aqu, junto con informacin sobre la adicin o eliminacin de las referencias del repositorio del archivo. Aqu2 es un ejemplo sencillo de un tpico / Etc / apt / sources.list archivo. Usted puede editar el archivo para activar o desactivar repositorios de ellos. Por ejemplo, para desactivar el requisito de insertar el CD-ROM de Ubuntu cada vez que las operaciones de paquetes se producen, simplemente comentar la lnea apropiada para el CD-ROM, que aparece en la parte superior del archivo:
# No hay ms que provoc el CD-ROM por favor # Deb cdrom: [Ubuntu 12.04 Pangolin_ _Precise - Release i386 (20111013.1)] / precisa main restricted

6,1. Repositorios
Adems de los repositorios de paquetes disponibles con apoyo oficial para Ubuntu, existen ms mantenido por la comunidad repositorios que se suman otros miles de paquetes para la instalacin de potencial. Dos de los ms populares son el Universo y Multiverso repositorios. Estos depsitos no son soportados oficialmente por Ubuntu, pero debido a que son mantenidos por la comunidad en general Ofrecemos paquetes que son seguros para su uso con el equipo de Ubuntu. Los paquetes en la Multiverso repositorio a menudo tienen problemas con las licencias que les impiden que se distribuye con un sistema operativo libre, y puede ser ilegal en su localidad. Tenga en cuenta que ni el Universo o Multiverso depsitos contienen con apoyo oficial paquetes. En particular, no pueden ser actualizaciones de seguridad para estos paquetes. Muchas fuentes de paquetes se dispone de otros, a veces incluso ofreciendo slo un paquete, como en el caso de las fuentes de paquetes proporcionados por el desarrollador de una sola aplicacin. Usted siempre debe ser muy cuidadoso y cauteloso al utilizar fuentes no estndar del paquete, sin embargo. Investigar el origen y el paquetes cuidadosamente antes de realizar cualquier instalacin, ya que algunas fuentes de paquetes y sus paquetes podra desestabilizar su sistema o que no funciona en algunos aspectos. Por defecto, el Universo y Multiverso depsitos estn habilitados, pero si quieres desactivarlos editar / Etc / apt / sources.list y comentar las siguientes lneas:

deb http://archive.ubuntu.com/ubuntu multiverso universo precisa deb-src http://archive.ubuntu.com/ubuntu multiverso universo precisa deb http://us.archive.ubuntu.com/ubuntu/ precisa universo deb-src http://us.archive.ubuntu.com/ubuntu/ precisa universo

2 .. / muestra / sources.list

29

La administracin de paquetes
deb http://us.archive.ubuntu.com/ubuntu/ precisos-updates universo deb-src http://us.archive.ubuntu.com/ubuntu/ precisos-updates universo deb http://us.archive.ubuntu.com/ubuntu/ precisa multiverso deb-src http://us.archive.ubuntu.com/ubuntu/ precisa multiverso deb http://us.archive.ubuntu.com/ubuntu/ precisos-updates multiverse deb-src http://us.archive.ubuntu.com/ubuntu/ precisos-updates multiverse

deb http://security.ubuntu.com/ubuntu precisa-security universe deb-src http://security.ubuntu.com/ubuntu precisa-security universe deb http://security.ubuntu.com/ubuntu precisa de seguridad multiverso deb-src http://security.ubuntu.com/ubuntu precisa de seguridad multiverso

30

La administracin de paquetes

7. Referencias
La mayor parte del material cubierto en este captulo est disponible en las pginas de manual, muchos de los cuales estn disponibles en lnea. El Instalar aplicaciones3 pgina del wiki de Ubuntu tiene ms informacin. Para ms detalles ver el dpkg ms dpkg pgina de manual4. El APT HOWTO5 y apt-get pgina man6 contienen informacin til sobre el uso de apt-get. Consulte el pgina del manual de la aptitud7 para ms opciones de aptitud. El Aadir repositorios HOWTO (Wiki de Ubuntu)8 pgina contiene ms detalles sobre la adicin de repositorios.

3 https://help.ubuntu.com/community/InstallingSoftware 4 http://manpages.ubuntu.com/manpages/precise/en/man1/dpkg.1.html 5 http://www.debian.org/doc/manuals/apt-howto/ 6 http://manpages.ubuntu.com/manpages/precise/en/man8/apt-get.8.html 7 http://manpages.ubuntu.com/manpages/precise/man8/aptitude.8.html 8 https://help.ubuntu.com/community/Repositories/Ubuntu

31

Captulo 4. Redes
Las redes constan de dos o ms dispositivos, como los sistemas de computadoras, impresoras y equipos relacionados los cuales estn conectados por cualquiera de cableado fsico o enlaces inalmbricos con el fin de compartir y distribuir informacin entre los dispositivos conectados.

En esta seccin se ofrece informacin general y especfica relativa a la creacin de redes, incluyendo un descripcin de los conceptos de red y la discusin detallada de los protocolos de redes populares.

32

Redes

1. Configuracin de la red
Ubuntu viene con una serie de utilidades grficas para configurar sus dispositivos de red. Este documento es dirigido a los administradores de servidores y se centrar en la gestin de su red en la lnea de comandos.

1,1. Interfaces Ethernet


Interfaces Ethernet son identificados por el sistema utilizando la convencin de nomenclatura de ethX, donde X representa un valor numrico. La primera interfaz Ethernet suele ser identificado como eth0, la segunda como eth1, y todos los dems deben moverse hacia arriba en orden numrico.

1.1.1. Identificar las interfaces Ethernet Para identificar rpidamente todos los disponibles interfaces Ethernet, puede utilizar el comando ifconfig como se muestra a continuacin.
ifconfig-a | grep eth eth0Link encap: Ethernet

HWaddr doce y cuarto: c5: 4a: 16:05 una

Otra aplicacin que puede ayudar a identificar todas las interfaces de red disponibles para su sistema es el lshw comando. En el siguiente ejemplo, lshw muestra una nica interfaz de Ethernet con el nombre lgico de eth0 junto con la informacin de autobuses, los datos del conductor y todas las capacidades de apoyo.

sudo lshw red de clase *-Red Descripcin: Interfaz Ethernet producto: BCM4401-B0 100Base-TX proveedor: Broadcom Corporation Identificacin fsica: 0 bus info: pci @ 0000:03:00.0 lgica nombre: eth0 Versin: 02 serie: 00:15: C5: 4a: 16:05 una Tamao: 10 MB / s Capacidad: 100 MB / s Ancho: 32 bits reloj: 33 MHz las capacidades de: (cort por razones de brevedad) de configuracin: (cort por razones de brevedad) recursos: IRQ: 17 de memoria: ef9fe000-ef9fffff

1.1.2. Interfaz Ethernet nombres lgicos Interfaz de nombres lgicos se configuran en el archivo O etc/udev/rules.d/70-persistent-net.rules. Si desea el control de la interfaz que recibe un nombre lgico en particular, busque la lnea que coincida con el interfaces de direccin MAC fsica y modificar el valor de NAME = ethX hasta el nombre lgico. Reinicie el sistema para confirmar los cambios.

33

Redes

1.1.3. Configuracin de la interfaz Ethernet ethtool es un programa que muestra y cambia la configuracin de la tarjeta Ethernet, tales como auto-negociacin, el puerto velocidad, modo dplex y Wake-on-LAN. No se instala por defecto, pero est disponible para la instalacin en los repositorios.

sudo apt-get install ethtool

El siguiente es un ejemplo de cmo ver las funciones y la configuracin establecida de una red Ethernet interfaz.

sudo ethtool eth0 Ajustes para eth0: Puertos compatibles: [TP] Modos de enlace: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Half 1000baseT/Full

Soporta auto-negociacin: S Anunciados los modos de enlace: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Half 1000baseT/Full Anunciado auto-negociacin: S Velocidad: 1000Mb / s Dplex: Completa Puerto: Par Trenzado PHYAD: 1 Transceptor: interno La negociacin automtica: el Soporta Wake-on: g Wake-on: d Nivel de mensaje actual: 0x000000FF (255) Link detected: yes

Los cambios realizados con el comando ethtool son temporales y se perdern despus de un reinicio. Si lo hara desea conservar la configuracin, slo tiene que aadir deseada ethtool comando a un pre-up declaracin en la interfaz archivo de configuracin / Etc / network / interfaces. El siguiente es un ejemplo de cmo la interfaz identificada como eth0 podra ser permanentemente configurado con una velocidad de puerto de 1000Mb / s se ejecuta en modo full duplex.
auto eth0 iface eth0 inet static pre-up / sbin / ethtool-s eth0 velocidad 1000 full duplex

Aunque el ejemplo anterior muestra la interfaz configurado para utilizar el esttico mtodo, en realidad funciona con otros mtodos, as como DHCP. El ejemplo est destinado a demostrar slo la colocacin correcta de la pre-up declaracin en relacin con el resto del interfaz de configuracin.

34

Redes

1,2. Direccionamiento IP
La siguiente seccin describe el proceso de configurar su direccin IP por defecto de sistemas y puerta de entrada necesario para comunicarse en una red de rea local e Internet. 1.2.1. Cesin temporal de la direccin IP Para las configuraciones de red temporales, puede utilizar comandos estndar como IP, ifconfig y route, que tambin se encuentran en la mayora de otros sistemas operativos GNU / Linux. Estos comandos le permiten configurar los ajustes que entrarn en vigor inmediatamente, sin embargo, no son persistentes y se perdern despus de reiniciar el sistema.

Para configurar de forma temporal una direccin IP, puede utilizar el comando ifconfig de la siguiente manera. Basta con modificar la direccin IP y la mscara de subred para satisfacer sus necesidades de red.

sudo ifconfig eth0 10.0.0.100 netmask 255.255.255.0

Para comprobar la configuracin de la direccin IP de eth0, puede utilizar el comando ifconfig en el siguiente manera.

ifconfig eth0 eth0 Link encap: Ethernet HWaddr doce y cuarto: c5: 4a: 16:05 una inet direccin: 10.0.0.100 Bcast: 10.0.0.255 Mask: 255.255.255.0 inet6: fe80 :: 215: c5ff: fe4a: 165a/64 Alcance: Vnculo UP DIFUSIN CORRIENDO MULTICAST MTU: 1500 Mtrica: 1 RX packets: 466475604 errores: 0 disminuido: 0 sobrecostos: 0 marcos: 0 TX packets: 403172654 errores: 0 disminuido: 0 sobrecostos: 0 carrier: 0 colisiones: 0 txqueuelen: 1000 RX bytes: 2574778386 (2.5 GB) Interrupcin: 16 TX bytes: 1618367329 (1.6 GB)

Para configurar una puerta de enlace predeterminada, puede utilizar el comando de ruta de la siguiente manera. Modificar el direccin de la pasarela por defecto para que coincida con sus requisitos de red.
la ruta sudo add default gw 10.0.0.1 eth0

Para comprobar la configuracin de su puerta de enlace predeterminada, puede utilizar el comando route en la siguiente manera.
route-n IP del Kernel de la tabla de enrutamiento Destino Puerta 10.0.0.0 0.0.0.0 0.0.0.0 10.0.0.1 Genmask 255.255.255.0 0.0.0.0 Banderas Metric Ref U10 UG 0 0 Utilice Iface 0 eth0 0 eth0

Si usted requiere DNS para la configuracin temporal de la red, puede agregar direcciones IP del servidor DNS en el archivo / Etc / resolv.conf. El siguiente ejemplo muestra cmo introducir dos servidores DNS / Etc /

35

Redes

que resolv.conf,debe

ser cambiado a los servidores apropiados para su red. A ms largo descripcin de la configuracin del cliente DNS en una seccin posterior.

nameserver 8.8.8.8 nameserver 8.8.4.4

Si usted ya no tendr esta configuracin y desea purgar toda la configuracin IP de una interfaz, Puede utilizar el comando ip con la opcin de descarga como se muestra a continuacin.

ip addr eth0 limpiar

Lavado de la configuracin IP mediante el comando ip no borrar el contenido de / Etc / resolv.conf. Debe eliminar o modificar las entradas de forma manual. 1.2.2. Asignacin dinmica de direcciones IP (DHCP Client) Para configurar el servidor para usar DHCP para la asignacin dinmica de direcciones, agregue el dhcp mtodo para el direccin de inet familia declaracin de la interfaz correspondiente en el archivo / Etc / network / interfaces. La ejemplo siguiente se supone que est configurando la primera interfaz Ethernet identificado como eth0.

auto eth0 iface eth0 inet dhcp

Mediante la adicin de una configuracin de la interfaz como se muestra arriba, puede activar manualmente la interfaz a travs el comando ifup que inicia el proceso a travs de DHCP dhclient.

sudo ifup eth0

Para deshabilitar manualmente la interfaz, puede utilizar el comando ifdown, que a su vez iniciar la DHCP el proceso de liberacin y cerrar la interfaz.

sudo ifdown eth0

1.2.3. Asignacin de direcciones IP estticas Para configurar el sistema para utilizar una asignacin de direcciones IP estticas, agrega el esttico mtodo a la inet Direccin del comunicado de la familia para la interfaz correspondiente en el archivo / Etc / network / interfaces. La ejemplo siguiente se supone que est configurando la primera interfaz Ethernet identificado como eth0. Cambiar la direccin, mscara de red, y puerta los valores para cumplir los requisitos de su red.

auto eth0 iface eth0 inet static la direccin 10.0.0.100 mscara de red 255.255.255.0 puerta de enlace 10.0.0.1

36

Redes

Mediante la adicin de una configuracin de la interfaz como se muestra arriba, puede activar manualmente la interfaz a travs el comando ifup.
sudo ifup eth0

Para deshabilitar manualmente la interfaz, puede utilizar el comando ifdown.

sudo ifdown eth0

1.2.4. Interfaz de bucle invertido La interfaz de bucle se identifica por el sistema como he aqu y tiene una direccin IP por defecto de 127.0.0.1. Lo se pueden ver utilizando el comando ifconfig.

Lo ifconfig he aqu Link encap: Bucle local inet direccin: 127.0.0.1 Mscara: 255.0.0.0 inet6 ::: 1/128 Alcance: Anfitrin ARRIBA LOOPBACK CORRIENDO MTU: 16436 Mtrica: 1

RX packets: 2718 errors: 0 disminuido: 0 sobrecostos: 0 marcos: 0 TX packets: 2718 errors: 0 disminuido: 0 sobrecostos: 0 carrier: 0 colisiones: 0 txqueuelen: 0 RX bytes: 183308 (183.3 KB)

TX bytes: 183308 (183.3 KB)

Por defecto, debera haber dos lneas de / Etc / network / interfaces responsable de forma automtica configuracin de la interfaz de bucle invertido. Se recomienda que mantenga la configuracin predeterminada a menos que tienen un propsito especfico para el cambio de ellos. Un ejemplo de las dos lneas predeterminadas se muestran a continuacin.
Lo automtico iface inet loopback he aqu

1,3. De resolucin de nombres


La resolucin de nombres que se refiere a la creacin de redes IP es el proceso de asignacin de direcciones IP a nombres de host, por lo que es ms fcil identificar los recursos en una red. La siguiente seccin se explica cmo configurar correctamente el sistema de resolucin de nombres utilizando DNS estticos y registros de nombres de host. 1.3.1. Configuracin del cliente DNS Tradicionalmente, el archivo / Etc / resolv.conf era un archivo de configuracin esttica que rara vez tena que ser modificado o cambiado de forma automtica a travs de ganchos de cliente DHCP. Hoy en da, un equipo puede cambiar de una red a otra con bastante frecuencia y el resolvconf marco se est utilizando para realizar un seguimiento de estos los cambios y actualizar la configuracin de la resolucin de forma automtica. Acta como intermediario entre programas de servidor de nombres que suministran la informacin y las aplicaciones que necesitan de dicha informacin. Resolvconf se rellena con informacin por parte de un conjunto de scripts ganchos relacionados con la interfaz de red configuracin.pierde a medida que se sobrescribeusuario es que algo desencadena resolvconf. En su lugar,a / etc / resolv.conf se La diferencia ms notable para el cada vez que cualquier cambio realizado manualmente

37

Redes

resolvconf utiliza DHCP ganchos cliente, y / Etc / network / interfaces para generar una lista de servidores de nombres y los dominios para poner en / de / etc resolv.conf, que ahora es un enlace simblico:
/ Etc / resolv.conf -> .. / run / resolvconf / resolv.conf

Para configurar la resolucin, agregue las direcciones IP de los servidores de nombres que sean apropiados para su red en el archivo / Etc / network / interfaces. Tambin puede agregar una opcin de bsqueda sufijo DNS listas para que coincida con sus nombres de dominio de red. Por la otra opcin vlida de configuracin resolv.conf, puede incluir, en la estrofa, una lnea que comienza con el nombre de la opcin con un dns- prefijo. El archivo resultante podra ser similar al siguiente:

iface eth0 inet static la direccin 192.168.3.3 mscara de red 255.255.255.0 puerta de enlace 192.168.3.1 dns-search example.com dns-nameservers 192.168.3.45 192.168.8.10

La bsqueda opcin tambin se puede utilizar con varios nombres de dominio de manera que las consultas DNS ser adjunta en el orden en que se introducen. Por ejemplo, la red puede tener varios subdominios de bsqueda, un dominio de los padres example.com, y dos sub-dominios, sales.example.com y dev.example.com. Si tiene varios dominios que desea buscar, la configuracin podra ser similar al siguiente:

iface eth0 inet static la direccin 192.168.3.3 mscara de red 255.255.255.0 puerta de enlace 192.168.3.1 dns-search example.com sales.example.com dev.example.com dns-nameservers 192.168.3.45 192.168.8.10

Si intenta hacer ping a un host con el nombre de server1, el sistema automticamente se consulta DNS para su Nombre de dominio completo (FQDN) en el siguiente orden: 1. server1.example.com 2. server1.sales.example.com 3. server1.dev.example.com Si no se encuentran coincidencias, el servidor DNS proporcionar un resultado de notfound y la consulta DNS se producir un error. 1.3.2. Nombres de host esttico Nombres de host estticos son definidas a nivel local el nombre de host-a-IP asignaciones encuentran en el archivo / Etc / hosts. Las inscripciones en el los ejrcitos archivo tendr prioridad sobre los DNS por defecto. Esto significa que si su sistema intenta resolver un nombre de host y coincide con una entrada en / etc / hosts, no se tratar de buscar la registro en el DNS. En algunas configuraciones, sobre todo cuando el acceso a Internet no es necesario, los servidores que 38

Redes

comunicarse con un nmero limitado de los recursos pueden ser convenientemente configurado para utilizar nombres de host estticos en lugar de DNS. El siguiente es un ejemplo de un los ejrcitos presentar en un nmero de servidores locales han sido identificados por nombre de un sistema, los alias y los nombres equivalentes de dominio completo (FQDN).
127.0.0.1 localhost 127.0.1.1 ubuntu-server 10.0.0.11 server1 VPN server1.example.com 10.0.0.12 server2 server2.example.com electrnico 10.0.0.13 servidor3 www server3.example.com 10.0.0.14 servidor4 archivo server4.example.com

En el ejemplo anterior, observar que cada uno de los servidores se han dado alias adems a sus nombres propios y los de FQDN. Servidor1 ha sido localizado en el nombre VPN, server2 es denominado electrnico, servidor3 como www, y servidor4 como archivo.

1.3.3. Servicio de nombres de configuracin del interruptor El orden en que el sistema selecciona un mtodo de resolucin de nombres de host a direcciones IP se controla por el servicio de nombres de archivo de configuracin de Switch (NSS) / Etc / nsswitch.conf. Como se mencion en el seccin anterior, por lo general los nombres de host estticos definidos en los sistemas de / Etc / hosts presentar sobre los nombres del tendrn preferencia DNS. El siguiente es un ejemplo de la lnea responsable de este orden de bsquedas de nombres de host en el archivo / Etc / nsswitch.conf.
anfitriones: archivos mdns4_minimal [NOTFOUND = return] dns mdns4

archivos primero intenta resolver nombres de hosts estticos ubicados en / Etc / hosts. mdns4_minimal los intentos de resolver el nombre mediante DNS de multidifusin. [NOTFOUND = return] significa que cualquier respuesta de notfound por el anterior mdns4_minimal proceso debe ser entendido como autoridad y que el sistema no debe tratar de seguir la caza de una respuesta. dns representa un legado de consultas DNS unicast. mdns4 representa una consulta DNS de multidifusin. Para modificar el orden de los mencionados mtodos de resolucin de nombres, puede simplemente cambiar el anfitriones: cadena en el valor de su eleccin. Por ejemplo, si usted prefiere usar el legado DNS de unidifusin contra de DNS multicast, puede cambiar la cadena en / Etc / nsswitch.conf como se muestra a continuacin.
anfitriones: files dns [NOTFOUND = return] mdns4_minimal mdns4

1,4. Bridging
Reduccin de mltiples interfaces es una configuracin ms avanzada, pero es muy til en mltiples escenarios. Un escenario es la creacin de un puente con mltiples interfaces de red, a continuacin, utilizando un servidor de seguridad 39

Redes

para filtrar el trfico entre dos segmentos de red. Otro escenario es usar el puente en un sistema con una interfaz para permitir que las mquinas virtuales de acceso directo a la red exterior. El siguiente ejemplo cubre el escenario de este ltimo.

Antes de configurar un puente usted tendr que instalar el paquete bridge-utils. Para instalar el paquete, en una terminal escriba:

sudo apt-get install bridge-utils

A continuacin, configure el puente mediante la edicin de / Etc / network / interfaces:


Lo automtico iface inet loopback he aqu

auto br0 iface br0 inet static la direccin 192.168.0.10 red 192.168.0.0 mscara de red 255.255.255.0 broadcast 192.168.0.255 puerta de enlace 192.168.0.1 bridge_ports eth0 bridge_fd 9 bridge_hello 2 bridge_maxage 12 bridge_stp fuera

Introduzca los valores apropiados para su interfaz fsica y de red.

Ahora reinicia la creacin de redes para permitir que la interfaz de puente:


sudo / etc / init.d / networking restart

La interfaz del nuevo puente ya debera estar en funcionamiento. El brctl proporciona informacin til sobre el estado del puente, los controles que las interfaces son parte del puente, etc Vase man brctl para ms informacin.

1,5. Recursos
El Ubuntu Wiki de la Red la pgina1 tiene enlaces a artculos que cubren la red ms avanzada configuracin. El resolvconf pgina de manual2 tiene ms informacin sobre resolvconf.
1 https://help.ubuntu.com/community/Network 2 http://manpages.ubuntu.com/manpages/man8/resolvconf.8.html

40

Redes El interfaces de pgina del manual de3 tiene informacin sobre ms opciones para / Etc / network / interfaces. El dhclient pgina de manual4 tiene ms detalles sobre las opciones para configurar los ajustes del cliente DHCP. Para obtener ms informacin sobre la configuracin del cliente DNS ver el resolucin de la pgina del hombre5. Adems, el captulo 6Linux Administracin de Redes6 es una buena fuente de servicio de resolucin y el nombre de O'Reilly Gua de la informacin de configuracin. Para ms informacin sobre puente vase el pgina del manual de brctl7 y el de la Fundacin Linux Neto: Puente8
pgina.

3 http://manpages.ubuntu.com/manpages/man5/interfaces.5.html 4 http://manpages.ubuntu.com/manpages/man8/dhclient.8.html 5 http://manpages.ubuntu.com/manpages/man5/resolver.5.html 6 http://oreilly.com/catalog/linag2/book/ch06.html 7 http://manpages.ubuntu.com/manpages/man8/brctl.8.html 8 http://www.linuxfoundation.org/en/Net:Bridge

41

Redes

2. TCP / IP
El Transmission Control Protocol e Internet Protocol (TCP / IP) es un conjunto estndar de protocolos desarrollado en la dcada de 1970 por la Defense Advanced Research Projects Agency (DARPA) como un medios de comunicacin entre los diferentes tipos de computadoras y redes informticas. TCP / IP es el la fuerza motriz de la Internet, por lo que es el conjunto ms popular de los protocolos de red en la Tierra.

2,1. TCP / IP Introduccin


Los dos componentes del protocolo de TCP / IP se ocupan de diferentes aspectos de las redes de computadoras. Internet Protocolo, la "propiedad intelectual" de TCP / IP es un protocolo sin conexin que se trata slo de paquetes de red encaminamiento utilizando el Datagrama IP como la unidad bsica de informacin en red. El datagrama IP consiste en de una cabecera seguida de un mensaje. La Transmission Control Protocol es el "TCP" de TCP / IP y permite mquinas de la red para establecer conexiones que pueden ser utilizados para el intercambio de flujos de datos. TCP Tambin garantiza que los datos entre las conexiones se entrega y que llega a una red de acogida en el mismo orden en que fue enviado desde otro principal de la red.

2,2. Configuracin TCP / IP


La configuracin de TCP / IP se compone de varios elementos que se debe establecer mediante la edicin del archivos de configuracin apropiados, o la implementacin de soluciones tales como la configuracin dinmica de host Protocolo (DHCP) que a su vez, se puede configurar para proporcionar la adecuada configuracin TCP / IP ajustes a los clientes de la red de forma automtica. Estos valores de configuracin se deben establecer correctamente con el fin de facilitar el funcionamiento de la red adecuada de su sistema Ubuntu. Los elementos comunes de configuracin de TCP / IP y sus efectos son los siguientes: Direccin IP La direccin IP es una cadena de identificacin nica expresada como cuatro nmeros decimales que van desde cero (0) a doscientos cincuenta y cinco (255), separadas por perodos, con cada uno de los cuatro nmeros que representan a ocho (8) bits de la direccin de una longitud total de treinta y dos (32) bits para la direccin general. Este formato se denomina notacin de cuaterna. Mscara de red La mscara de subred (o simplemente, mscara de red) es una mscara de bits local, o un conjunto de banderas que separan las partes de una direccin IP significativos a la red de los bits ms significativos de la subred. Por ejemplo, en una red de Clase C, la mscara de red estndar es 255.255.255.0 que enmascara el primer tres bytes de la direccin IP y permite que el ltimo byte de la direccin IP de estar disponible para especificar los hosts de la subred. De direcciones de red La direccin de red representa los bytes que componen la porcin de red de una direccin IP. Por ejemplo, el host 12.128.1.2 en una red de clase usara 12.0.0.0 como la direccin de red, donde doce (12) representa el primer byte de la direccin IP, (la red parte) y ceros (0) en todos los restantes tres bytes para representar los valores de host potenciales. A host de la red utilizando la direccin IP privada 192.168.1.100, a su vez utilizar una direccin de red de 192.168.1.0, que especifica los tres primeros bytes de la clase C 192.168.1 red y un cero (0) para todos los posibles hosts de la red.

42

Redes

Difusin Direccin La direccin de broadcast es una direccin IP que permite a la red de datos para ser enviados simultneamente a todos los hosts de una subred determinada en lugar de especificar un host en particular. La Direccin del estndar de emisin general para las redes IP es 255.255.255.255, pero esta direccin de difusin No se puede utilizar para enviar un mensaje de difusin a todos los hosts de Internet, ya que los routers bloque l. Una direccin de difusin ms adecuado se establece para que coincida con una determinada subred. Por ejemplo, en la Clase C de red privada IP, 192.168.1.0, la direccin de difusin es 192.168.1.255. Transmitir mensajes se producen tpicamente por los protocolos de red, tales como el Protocolo de resolucin de direcciones (ARP) y el Routing Information Protocol (RIP). Direccin de la pasarela La direccin de gateway es la direccin IP a travs del cual una red en particular, o de acogida en una red, puede ser alcanzado. Si un host de red desea comunicarse con otro servidores de red y host que no se encuentra en la misma red, entonces una puerta debe ser utilizado. En muchos casos, la Direccin de puerta de enlace ser la de un router en la misma red, que a su vez pasar el trfico a otras redes o hosts, tales como servidores de Internet. El valor de la direccin de puerta de enlace configuracin debe ser correcta, o el sistema no ser capaz de alcanzar cualquier mquina ms all de los de la misma red.

Nombre del servidor de direcciones Las direcciones de servidores de nombres representan las direcciones IP de Domain Name Service (DNS) de los sistemas, que se resuelven los nombres de host en direcciones IP de red. Hay tres niveles de Las direcciones de servidores de nombres, que pueden ser especificados en el orden de precedencia: El Primario Nombre del servidor, la Secundario Nombre del servidor, y el Terciario Nombre del servidor. Para que el sistema sea capaz de para resolver nombres de host de la red en sus correspondientes direcciones IP, debe especificar vlida Las direcciones de servidores de nombres que estn autorizados a utilizar en su sistema TCP / IP. En muchos casos, estas direcciones pueden y sern proporcionados por su proveedor de servicios de red, pero muchos libre y de acceso pblico los servidores de nombres estn disponibles para su uso, tales como los Level3 (Verizon) servidores con las direcciones IP de 4.2.2.1 a 4.2.2.6. La direccin IP, mscara de red, direcciones de red, direccin de broadcast y puerta de enlace Direccin se especifican normalmente a travs de las directivas en el archivo / Etc / network / de servidores de nombres se especifican normalmente por medio servidor de nombres directivas en el archivo / Etc / resolv.conf. Para obtener ms informacin, vea la pgina del manual de para las interfaces o resolv.conf respectivamente, con los siguientes comandos escritos en el terminal: Las direcciones las interfaces. Acceda a la pgina del manual de las interfaces con el siguiente comando:

interfaces hombre

Acceda a la pgina del manual de resolv.conf con el siguiente comando:

el hombre resolv.conf

43

Redes

2,3. Enrutamiento IP
Enrutamiento IP es un medio de especificar y descubrir caminos en una red TCP / IP a lo largo de la red que datos pueden ser enviados. Enrutamiento utiliza un conjunto de las tablas de enrutamiento para dirigir el envo de paquetes de datos de red desde su origen hasta el destino, a menudo a travs de muchos nodos intermedios conocidos como routers. Hay dos formas primarias de enrutamiento IP: Enrutamiento esttico y Enrutamiento dinmico. El enrutamiento esttico es necesario agregar manualmente rutas IP a la tabla de enrutamiento del sistema, y esto es por lo general realizado mediante la manipulacin de la tabla de encaminamiento con el comando ruta. El enrutamiento esttico goza de muchos ventajas sobre el tabla de encaminamiento se calcula siempre de adelantado, y por lo tanto la ruta es precisamente el previsibilidad (la encaminamiento dinmico, como la sencillezpor implementacin en redes ms pequeas, mismo cada vez que se utiliza), y bajos costos en otros routers y enlaces de la red debido a la falta de un protocolo de enrutamiento dinmico. Sin embargo, el enrutamiento esttico no presentan algunas desventajas tambin. Para ejemplo, el enrutamiento esttico se limita a las redes de pequeas y no escala bien. El enrutamiento esttico tambin falla completamente para adaptarse a las interrupciones de red y los fracasos a lo largo de la ruta debido a la naturaleza fija del ruta. El enrutamiento dinmico depende de redes grandes con muchas rutas IP posibles desde un origen a un destino y hace uso de protocolos especiales de encaminamiento, como por ejemplo el protocolo de informacin del router (RIP), que manejan los ajustes automticos en las tablas de encaminamiento que hacen posible el enrutamiento dinmico. El enrutamiento dinmico tiene varias ventajas sobre el enrutamiento esttico, como una escalabilidad superior y la capacidad del para adaptarse a las fallas e interrupciones a lo largo de las rutas de red. Adicionalmente, hay menos configuracin manual de las tablas de enrutamiento, ya que los routers aprender unos errores en las tablas de enrutamiento a travs de un error Esta caracterstica tambin elimina la posibilidad de introducir de otros sobre su existencia y rutas disponibles. humano. El enrutamiento dinmico no es perfecto, sin embargo, presenta inconvenientes, tales como la complejidad mayor y la sobrecarga de la red adicional de las comunicaciones del router, que no benefician inmediatamente los usuarios finales, pero an as consume ancho de banda de red.

2,4. TCP y UDP


TCP es un protocolo basado en la conexin, que ofrece correccin de errores y garantizar la entrega de datos a travs de lo que se conoce como de control de flujo. El control de flujo determina cuando el flujo de una corriente de datos tiene que ser se detuvo, y ya enviados los paquetes de datos deben ser re-enviado debido a problemas tales como colisiones, por ejemplo, asegurando as la entrega completa y precisa de los datos. TCP se usa tpicamente en el intercambio de informacin importante, como las transacciones de bases de datos.

El User Datagram Protocol (UDP), por el contrario, es un sin conexin protocolo que rara vez se refiere a la transmisin de datos importantes debido a que carece de control de flujo o cualquier otro mtodo para garantizar la entrega confiable de los datos. UDP se utiliza comnmente en aplicaciones tales como audio y video transmisin, donde es considerablemente ms rpido que TCP debido a la falta de correccin de errores y el flujo controlar, y donde la prdida de unos pocos paquetes no es generalmente catastrfica.

44

Redes

2,5. ICMP
El control de Internet Messaging Protocol (ICMP) es una extensin del Protocolo de Internet (IP) como se define en el Request For Comments (RFC) # 792 y es compatible con los paquetes de red que contiene el control, error y mensajes informativos. ICMP es utilizado por las aplicaciones de red tales como la utilidad ping, que puede determinar la disponibilidad de un host de red o dispositivo. Ejemplos de algunos mensajes de error devuelto por ICMP que son tiles para mquinas de la red como en dispositivos tales como routers, incluyen Destino inalcanzable y Tiempo excedido.

2,6. Demonios
Demonios son aplicaciones especiales del sistema que normalmente se ejecutan continuamente en segundo plano y espera de las solicitudes de las funciones que ofrecen desde otras aplicaciones. Muchos demonios son la red centrada, es decir, un gran nmero de demonios que se ejecutan en el fondo en un sistema Ubuntu puede proporcionar una red relacionada con la funcionalidad. Algunos ejemplos de los demonios de red son la Hyper Text Transport Protocol Daemon (Httpd), que proporciona funcionalidad de servidor web, el Secure SHell

Demonio (Sshd), que proporciona un shell seguro de acceso remoto y las capacidades de transferencia de archivos, y el Internet Message Access Protocol Daemon (Imapd), que proporciona servicios de correo electrnico.

2,7. Recursos
Hay pginas del manual para TCP9 y IP10 que contienen la informacin ms til. Asimismo, consulte la TCP / IP Tutorial y descripcin tcnica11 IBM Redbook. Otro recurso es el de O'Reilly TCP / IP Network Administration12.

9 http://manpages.ubuntu.com/manpages/precise/en/man7/tcp.7.html 10 http://manpages.ubuntu.com/manpages/precise/man7/ip.7.html 11 http://www.redbooks.ibm.com/abstracts/gg243376.html 12 http://oreilly.com/catalog/9780596002978/

45

Redes

3. Dynamic Host Configuration Protocol (DHCP)


El Protocolo de configuracin dinmica de host (DHCP) es un servicio de red que permite a los equipos de acogida que se le asigna automticamente la configuracin de un servidor en lugar de tener que configurar manualmente cada red de acogida. Equipos configurados para ser clientes DHCP no tienen control sobre los ajustes que reciben de el servidor DHCP, y la configuracin es transparente para el usuario de la computadora. La configuracin ms comunes suministradas por un servidor DHCP para los clientes DHCP incluyen: Direccin IP y mscara de red La direccin IP de la puerta de entrada por defecto para utilizar Las direcciones IP de los servidores DNS para utilizar Sin embargo, un servidor DHCP puede suministrar propiedades de configuracin, tales como: Nombre del host De nombres de dominio Servidor de tiempo Servidor de impresin

La ventaja de usar DHCP es que los cambios en la red, por ejemplo un cambio en la direccin de el servidor DNS, slo tiene que ser cambiado en el servidor DHCP, y todas las mquinas de la red se va a reconfigurar la prxima vez que sus clientes DHCP sondeo del servidor DHCP. Como una ventaja adicional, es tambin ms fcil integrar nuevos equipos en la red, ya que no hay necesidad de comprobar la disponibilidad de una IP direccin. Los conflictos en la asignacin de direcciones IP tambin se reducen. Un servidor DHCP puede proporcionar parmetros de configuracin utilizando los siguientes mtodos: Asignacin manual (direccin MAC) Este mtodo supone el uso de DHCP para identificar el hardware nico de cada tarjeta de red conectado a la red y continuar suministrando una configuracin constante cada vez que el Cliente DHCP hace una peticin al servidor DHCP usando ese dispositivo de red. Esto asegura que un direccin particular se asigna automticamente a la tarjeta de red, basado en su direccin MAC. La asignacin dinmica (grupo de direcciones) En este mtodo, el servidor DHCP asignar una direccin IP de un conjunto de direcciones (a veces tambin llamado un rango o mbito) durante un perodo de tiempo o alquiler, que est configurado en el servidor o hasta que el cliente informa al servidor que no necesita la direccin de ms. De esta manera, los clientes va a recibir a sus propiedades de configuracin de forma dinmica y en un "primer llegado, primer servido" base. Cuando un cliente DHCP ya no est en la red durante un perodo determinado, la configuracin ha caducado y se libera de nuevo a la lista de direcciones para su uso por otros clientes DHCP. De esta manera, un cand direccin de ser arrendados o utilizados por un perodo de tiempo. Despus de este periodo, el cliente tiene que renegociar el contrato de arrendamiento con el servidor para mantener el uso de la direccin. Asignacin automtica El uso de este mtodo, el servidor DHCP asigna automticamente una direccin IP de forma permanente a un dispositivo, seleccionndolo de un conjunto de direcciones disponibles. Por lo general se utiliza DHCP para asignar un temporal atender a un cliente, pero un servidor DHCP puede permitir a un tiempo de concesin infinito. 46

Redes

Los dos ltimos mtodos se pueden considerar "automtico" ya que en cada caso, el servidor DHCP asigna una direccin sin ninguna intervencin adicional necesaria. La nica diferencia entre ellos radica en la duracin de la IP direccin est alquilada, en otras palabras si la direccin de un cliente vara con el tiempo. Ubuntu se distribuye con tanto el servidor DHCP y el cliente. El servidor es dhcpd (Dynamic Host Configuration Protocol Daemon). El cliente suministrado por Ubuntu es dhclient y se debe instalar en todos los equipos necesarios para ser configura automticamente. Ambos programas son fciles de instalar y configurar, y ser automticamente comenz en el arranque del sistema.

3,1. Instalacin
En un terminal, introduzca el siguiente comando para instalar el dhcpd:

sudo apt-get install isc-dhcp-server

Usted probablemente tendr que cambiar la configuracin por defecto editando el fichero / etc / dhcp / dhcpd.conf para adaptarse a sus necesidades y configuracin en particular. Tambin es posible que tenga que editar el archivo / etc / default / isc-dhcp del servidor para especificar las interfaces que dhcpd debera escuchar. NOTA: Los mensajes de dhcpd se enviarn a syslog. Mira all los mensajes de diagnstico.

3,2. Configuracin
El mensaje de error de la instalacin puede resultar un poco confuso, pero se los siguientes pasos ayudarle a configurar el servicio: Por lo general, lo que quiero hacer es asignar una direccin IP al azar. Esto puede hacerse con la configuracin de la siguiente manera:

# Mnimo de muestra de / etc / dhcp / dhcpd.conf default-lease-time 600; max-lease-time 7200;

subnet 192.168.1.0 netmask 255.255.255.0 { 192.168.1.150 192.168.1.200 variar; option routers es 192.168.1.254; option domain-name-servers 192.168.1.1, 192.168.1.2; option domain-name "mydomain.example"; }

Esto dar lugar a que el servidor DHCP dando a los clientes una direccin IP de la gama 192.168.1.150-192.168.1.200. La concesin de la direccin IP de 600 segundos si el cliente no pide un marco de tiempo especfico. De lo contrario el mximo (permitido) contrato de arrendamiento ser de 7200 segundos. El servidor se Tambin "aconsejan" que el cliente utilice 192.168.1.254 como el default-gateway 192.168.1.1 y 192.168.1.2 y como sus servidores DNS. Despus de cambiar el archivo de configuracin que tenga que reiniciar el dhcpd: 47

Redes

sudo / etc / init.d / isc-dhcp-server restart

3,3. Referencias
El dhcp3-server de Ubuntu Wiki13 pgina tiene ms informacin. Para obtener ms / Etc / dhcp / dhcpd.conf las opciones de ver el pgina del manual dhcpd.conf14. ISC DHCP, servidor de15

13 https://help.ubuntu.com/community/dhcp3-server 14 http://manpages.ubuntu.com/manpages/precise/en/man5/dhcpd.conf.5.html 15 http://www.isc.org/software/dhcp

48

Redes

4. Tiempo de Sincronizacin con NTP


NTP es un protocolo TCP / IP para sincronizar la hora en la red. Bsicamente, un cliente solicita el la hora actual de un servidor, y lo utiliza para establecer su propio reloj. Detrs de esta simple descripcin, hay una gran cantidad de complejidad - no son los niveles de los servidores NTP, con la nivel uno servidores NTP conectados a relojes atmicos, y de nivel dos y tres servidores repartir la carga realmente de tramitar las solicitudes a travs de Internet. Adems, el software de cliente es mucho ms compleja de lo que se podra pensar - tiene que factorizar retrasos en la comunicacin, y ajustar el tiempo de una manera que no trastornado todos los dems procesos que se ejecutan en el servidor. Pero por suerte toda esa complejidad se esconde de ti! Ubuntu usa ntpdate y ntpd.

4,1. ntpdate
Ubuntu viene con ntpdate como estndar, y va a ejecutar una vez en el momento del arranque para configurar el tiempo de acuerdo con el servidor NTP de Ubuntu.
ntpdate-s ntp.ubuntu.com

4,2. ntpd
El demonio ntpd ntp calcula la desviacin de su reloj del sistema y se ajusta de forma continua, por lo que hay grandes correcciones que podran llevar a los registros inconsistentes, por ejemplo. El costo es un poco procesamiento el poder y la memoria, pero para un servidor moderno, este es insignificante.

4,3. Instalacin
Para instalar ntpd, desde un indicador de la terminal escriba:
sudo apt-get install ntp

4,4. Configuracin
Editar / Etc / ntp.conf para aadir / quitar lneas de servidores. Por defecto estos servidores estn configurados:
# Usar los servidores del Proyecto de Piscina NTP. Aprobado por el Consejo Tcnico de Ubuntu # El 02/08/2011 (LP: # 104525). Ver http://www.pool.ntp.org/join.html~~V de # Informacin ms. servidor de 0.ubuntu.pool.ntp.org servidor de 1.ubuntu.pool.ntp.org servidor de 2.ubuntu.pool.ntp.org servidor de 3.ubuntu.pool.ntp.org

Despus de cambiar el archivo de configuracin que tiene que volver a cargar el ntpd: 49

Redes

sudo / etc / init.d / ntp recarga

4,5. Ver el estado


Utilice ntpq para ver para ver ms informacin:
# Sudo ntpq-p remoterefidst t cuando jitter sondeo reachdelayoffset ================================================== ============================ + Stratum2-2.NTP. 129.70.130.702 u564 37.768,461 110,334 -44,274 + Ntp2.m-online.n 212.18.1.1062 u564 37.754,629 -27.318 78.882 * 145.253.66.170. DCFa.1 u1064 37.783,607 -30.159 68.343

+ Stratum2-3.NTP. 129.70.130.70 + Europium.canoni 193.79.237.14

2 U 2 U

5 63

64 64

357 337

68.795 81.534

-68.168 104.612 -67.968 92.792

4,6. Referencias
Consulte el Ubuntu Tiempo16 wiki de la pgina para ms informacin. ntp.org, sede del proyecto de Protocolo de Tiempo de Red17

16 https://help.ubuntu.com/community/UbuntuTime 17 http://www.ntp.org/~~V

50

Captulo 5. DM-Multipath

51

DM-Multipath

1. Dispositivo mltiple Mapper


Mltiple del mapeador de dispositivos (DM-Multipath) le permite configurar mltiples E / S de los caminos entre nodos de servidor y matrices de almacenamiento en un solo dispositivo. Estas rutas de E / S son conexiones fsicas de SAN que puede incluir cables separados, conmutadores y controladores. Mltiple de los agregados de las rutas de E / S, creacin de un nuevo dispositivo que consta de las trayectorias conjuntadas. En este captulo se ofrece un resumen de la caractersticas de la DM-Multipath que son nuevas para la versin inicial de Ubuntu Server 12.04. Siguiente que, este captulo proporciona una descripcin de alto nivel de la DM de mltiples rutas y sus componentes, as como una general de DM-Multipath de visin configuracin.

1,1. Caractersticas nuevas y modificadas para el servidor de Ubuntu 12.04


Migrado de multipath-0.4.8-0.4.9 de trayectoria mltiple 1.1.1. La migracin desde 0.4.8 Los inspectores de prioridad ya no se ejecuta como binarios independientes, sino como bibliotecas compartidas. El valor de la clave nombre para esta funcin tambin ha cambiado ligeramente. Copie el atributo con el nombre prio_callout a Pro, tambin modificar el argumento el nombre del corrector de prioridad, una ruta del sistema ya no es necesario. Ejemplo conversin:
dispositivo de { proveedor "NEC" producto "DISK ARRAY" prio_callout mpath_prio_alua / dev / n% Pro } ALUA

Consulte la tabla Prioridad Comprobador de conversin [p. 52] Para una lista completa

Cuadro 5.1. Prioridad de conversin Checker


v0.4.8 prio_callout mpath_prio_emc / dev / n% prio_callout mpath_prio_alua / dev / n% prio_callout mpath_prio_netapp / dev / n% prio_callout mpath_prio_rdac / dev / n% prio_callout mpath_prio_hp_sw / dev / n% prio_callout b% mpath_prio_hds_modular Pro EMC Pro ALUA Pro NetApp Pro RDAC Pro hp_sw HDS prio v0.4.9

Desde la configuracin mltiple analizador de archivos esencialmente analiza todos los pares clave / valor que encuentra y, a continuacin hace uso de ellos, es seguro tanto para prio_callout y Pro a convivir y se recomienda que la Pro atributo se inserta antes de comenzar la migracin. Despus de lo cual puede eliminar la herencia prio_calliout atribuir sin interrumpir el servicio.

52

DM-Multipath

1,2. Informacin general


DM-Multipath se puede utilizar para proporcionar: Redundancia DM-Multipath puede proporcionar conmutacin por error en una configuracin activo / pasivo. En un clster activo / configuracin pasiva, slo la mitad de las vas se utilizan en cualquier momento para I / O. Si cualquier elemento de una ruta de acceso de E / S (El cable, interruptor o controlador) falla, dm-multipath interruptores a una ruta alternativa. Mejora del rendimiento Rendimiento DM-Multipath puede ser configurado en modo activo / activo el modo, en E / S se transmite a travs de los caminos en un round-robin. En algunas configuraciones, DM-Multipath puede detectar la carga en las rutas de E / S y dinmica re-equilibrar la carga.

1,3. Descripcin general de almacenamiento de matriz


De forma predeterminada, DM-Multipath incluye soporte para los dispositivos de almacenamiento ms comunes que apoyan DMMultitrayecto. Los dispositivos soportados se pueden encontrar en el archivo multipath.conf.defaults. Si el almacenamiento array admite DM-Multipath y no est configurado por defecto en este archivo, usted puede necesitar agregar que el DM-Multipath archivo de configuracin, multipath.conf. Para obtener informacin sobre el DM-Multipath archivo de configuracin, consulte la seccin, El DM-Multipath archivo de configuracin. Algunos dispositivos de almacenamiento requieren un manejo especial de los errores de E / S y el cambio de ruta. Estos requieren kernel separado del hardware controlador mdulos.

1,4. Dm-multipath componentes


Tabla "DM-Multipath Componentes " se describen los componentes del paquete de dm-multipath.

Cuadro 5.2. Dm-multipath Componentes


Componente dm_multipath kernel mdulo mltiple de comandos Descripcin Redireccionamiento de E / S y soportes conmutacin por error para las rutas y los grupos de rutas. Listas y configura multipath dispositivos. Normalmente en marcha con / Etc / rc.sysinit, Tambin puede ser iniciado por un programa udev cuando un dispositivo de bloque se aade o se puede ejecutar por el sistema de archivos initramfs. Monitores caminos, como caminos y no volver, se puede iniciar grupo de ruta interruptores. Proporciona a los cambios interactivos a multipath dispositivos. Este demonio debe ser reiniciado para que los cambios en el / Etc / multipath.conf presentar a surtir efecto. kpartx comando Crea dispositivos mapeador de dispositivos para las particiones en un dispositivo, es necesaria para utilizar este comando para DOS basados en particiones con DMMultitrayecto. El kpartx se proporciona en su propio paquete, pero el multipathinstrumentos paquete depende de l.

multipathd demonio

53

DM-Multipath

1,5. DM-Multipath configuracin general


DM-Multipath incluye compilados en la configuracin por defecto que son adecuados para mltiples rutas comunes configuraciones. La creacin de marcos alemanes-multipath es a menudo un procedimiento sencillo. El configurar el sistema para procedimiento bsico con DM-Multipath es el siguiente: 1. Instale el multipath-tools y multipath-tools-arranque paquetes 2. Crear un archivo de configuracin de vaco, / Etc / multipath.conf, Que re-define el siguiente 3. Si es necesario, modifique el multipath.conf archivo de configuracin para modificar los valores por defecto y guardar el archivo actualizado. 4. Inicie el daemon de trayectoria mltiple 5. Actualizacin de disco de memoria inicial Para obtener instrucciones detalladas de configuracin para la configuracin de multipath consulte la seccin, Configuracin de dm-multipath.

54

DM-Multipath

2. Dispositivos de mltiples rutas


Sin dm-multipath, cada ruta desde un nodo de servidor a un controlador de almacenamiento es tratada por el sistema de como un dispositivo separado, incluso cuando la ruta de acceso de E / S conecta el nodo mismo servidor al mismo almacenamiento controlador. DM-Multipath proporciona una forma de organizar las rutas de E / S lgica, mediante la creacin de un nico multitrayecto dispositivo en la parte superior de los dispositivos subyacentes.

2,1. Los identificadores de dispositivos de trayectoria mltiple


Cada dispositivo tiene un identificador mltiple Mundial (WWID), el cual se garantiza que todo el mundo nica e inmutable. De forma predeterminada, el nombre de un dispositivo multipath se establece en su WWID. Alternativamente, se puede establecer el user_friendly_names opcin en el archivo de configuracin mltiple, que causa DMMltiples rutas para utilizar un alias de nodo nico de la forma mpathn como el nombre. Por ejemplo, un nodo con dos adaptadores de bus host conectados a un controlador de almacenamiento con dos puertos a travs de un solo interruptor no zonificadas FC ve cuatro dispositivos: / Dev / sda, / dev / sdb, / dev / sdc, y / Dev / sdd. DM-Multipath crea un nico dispositivo con un WWID nico que redirige I / O para esos cuatro dispositivos subyacentes de acuerdo con la trayectoria mltiple configuracin. Cuando el user_friendly_names opcin de configuracin se establece en s, el nombre del dispositivo multipath se establece mpathn. Cuando los nuevos dispositivos estn bajo el control de la DM-Multipath, los nuevos dispositivos puede ser visto en dos lugares diferentes en el marco del / Dev directorio: / Dev / mapper / mpathn y / Dev / dm-n. Los dispositivos en / Dev / mapper se crean al inicio del proceso de arranque. El uso de estos dispositivos para acceder al dispositivos de multirutas, por ejemplo al crear volmenes lgicos. Todos los dispositivos de la forma / Dev / dm-n son slo para uso interno y no debe ser utilizado. Para obtener informacin sobre los valores predeterminados de configuracin mltiple, incluyendo la user_friendly_names opcin de configuracin, consulte la seccin, "Por defecto del archivo de configuracin". Tambin puede mltiple dispositivo ade una establecer el nombre un nombre de su eleccin mediante el alias opcin en el multitrayectorias seccin de la multipath archivo de configuracin. Para obtener ms informacin sobre la multitrayectorias seccin de la configuracin multitrayecto archivos, consulte la seccin, "Multitrayectorias atributos de configuracin de dispositivos".

2,2. Consistentes nombres multirruta de dispositivo en un clster


Cuando el user_friendly_names opcin de configuracin se establece en s, el nombre del dispositivo multipath es nico para un nodo, pero no se garantiza que sea la misma en todos los nodos utilizando el dispositivo de multitrayecto. Del mismo modo, si se establece la alias opcin para un dispositivo en el multitrayectorias seccin de la
multipath.conf

archivo de configuracin, el nombre no es automticamente compatible en todos los nodos del clster. Esto debera no causar ningn problema si se utiliza LVM para crear dispositivos lgicos desde el dispositivo mltiple, pero si que requieren que los nombres de los dispositivos de trayectoria mltiple sea consistente en todos los nodos que se recomienda que dejar el user_friendly_names opcin se ajusta a no y que no se configura alias para los dispositivos. Por defecto, si no se establece user_friendly_names para s o configurar un alias para un dispositivo, un dispositivo nombre ser el WWID para el dispositivo, que es siempre la misma. Si desea que el definido por el sistema fciles de usar nombres para ser consistente en todos los nodos del clster, sin embargo, usted puede seguir este procedimiento:

55

DM-Multipath

1. Configure todos los dispositivos de trayectoria mltiple en una mquina. 2. Desactivar todos los dispositivos de trayectoria mltiple en sus otras mquinas ejecutando los siguientes comandos:
# Service multipath-tools dejar de # Multipath-F

3. Copie el / Etc / mltiple / enlaces archivo de la primera mquina a todas las otras mquinas en la clster. 4. Vuelva a habilitar el demonio multipathd en todas las mquinas del clster, ejecute el siguiente comando:
# Service multipath-tools inicio

Si se agrega un nuevo dispositivo, tendr que repetir este proceso. Del mismo modo, si configura un alias para un dispositivo que le gustara ser coherente en todos los nodos en el clster, debe asegurarse de que el / Etc / multipath.conf archivo es el mismo para cada nodo en el clster siguiendo el mismo procedimiento: 1. Configure los alias para los dispositivos multipath en el en el multipath.conf presentar en una sola mquina. 2. Desactivar todos los dispositivos de trayectoria mltiple en sus otras mquinas ejecutando los siguientes comandos:
# Service multipath-tools dejar de # Multipath-F

3. Copie el multipath.conf archivo de la primera mquina que todas las otras mquinas del cluster. 4. Vuelva a habilitar el demonio multipathd en todas las mquinas del clster, ejecute el siguiente comando:
# Service multipath-tools inicio

Cuando se agrega un nuevo dispositivo tendr que repetir este proceso.

2,3. Atributos de dispositivos de trayectoria mltiple


Adems de la user_friendly_names y alias opciones, un dispositivo multipath tiene numerosas los atributos. Puede modificar estos atributos de un dispositivo multipath especfica mediante la creacin de una entrada para dicho dispositivo en el multitrayectorias seccin de la multipath archivo de configuracin. Para obtener ms informacin sobre la seccin del archivo de configuracin mltiple, consulte la seccin "Configuracin Archivo de multitrayectorias la mltiples Atributos ".

2,4. Dispositivos multipath en volmenes lgicos


Despus de la creacin de dispositivos de trayectoria mltiple, puede utilizar los nombres de los dispositivos de trayectoria mltiple del mismo modo que usar un nombre de dispositivo fsico al crear un volumen fsico LVM. Por ejemplo, si / dev / mapper / mpatha es el nombre de un dispositivo multipath, el siguiente comando marcar / dev / mapper / mpatha como fsica volumen.
# Pvcreate / dev / mapper / mpatha

56

DM-Multipath

Usted puede utilizar el dispositivo resultante fsico LVM al crear un grupo de volumen LVM as como t se utiliza cualquier otro dispositivo fsico LVM. Si se intenta crear un volumen fsico LVM en un dispositivo conjunto en el que tenga particiones que haya configurado, el comando pvcreate fallar. Cuando se crea un volumen lgico LVM que utilice activos / pasivos matrices mltiple como la subyacente dispositivos fsicos, debe incluir filtros en el lvm.conf para excluir a los discos que subyacen a la dispositivos de trayectoria mltiple. Esto es porque si la matriz cambia automticamente la ruta activa a la pasiva camino cuando reciba E / S, mltiple se conmutacin por error y conmutacin por recuperacin cada vez que LVM escanea el camino pasiva si estos dispositivos no se filtran. Para matrices de activos / pasivos que requieren un comando para hacer que el pasivo ruta activa, LVM imprime un mensaje de advertencia cuando esto ocurre. Para filtrar todos los dispositivos SCSI en el LVM archivo de configuracin (lvm.conf), incluyen el siguiente filtro en la seccin de dispositivos del archivo.
filter = ["r / block /", "r / disk /", "r / sd. * /", "a /. * /"]

Despus de actualizar / Etc / lvm.conf, Es necesario actualizar el initrd por lo que este fichero se copiar all, donde el filtro que ms importa, durante el arranque. Lleve a cabo:
update-initramfs-u-k all

Cada vez que sea / Etc / lvm.conf o / Etc / multipath.conf se actualiza, el initrd debe ser reconstruida para reflejar estos cambios. Esto es imprescindible cuando las listas negras y filtros son necesarios para mantener una configuracin de almacenamiento estable.

57

DM-Multipath

3. Configuracin de DM-Multipath general


Esta seccin proporciona instrucciones paso a paso los procedimientos de ejemplo para la configuracin de DMMultipath. Se incluye el siguientes procedimientos: Basic DM-Multipath configuracin Ignorar los discos locales La adicin de ms dispositivos para el archivo de configuracin

3,1. Configuracin de DM-Multipath


Antes de la creacin de DM-Multipath en su sistema, asegrese de que su sistema ha sido actualizado y incluye el multipath-tools paquete. Si el arranque desde SAN se desea, entonces el multipath-tools-arranque paquete tambin es necesario.

Un bsico / Etc / multipath.conf no necesitan ni siquiera existe, cuando multpath se ejecuta sin un acompaante extrae de su / Etc / multipath.conf, base de datos interna para encontrar una configuracin adecuada, tambin saca de su lista negra interna. Si despus de ejecutar multipath-ll sin un archivo de configuracin, no son multitrayectorias descubierto. Hay que proceder a incrementar el nivel de detalle para descubrir por qu un mltiple no se ha creado. Considere la posibilidad de hacer referencia a la documentacin del proveedor de la SAN, los archivos de ejemplo de configuracin mltiple se encuentra en / y la usr / share / doc / multipath-tools y ejemplos,base de datos multipathd en vivo:
# Echo 'show config' | multipathd-k> multipath.conf-en vivo

Para evitar una peculiaridad en multipathd, cuando un / Etc / multipath.conf no existe, el comando anterior devolver nada, ya que es el resultado de una unir entre el / Etc / multipath.conf y la base de datos en la memoria. Para remediar esta situacin, ya sea definir un vaco /
Etc / multipath.conf, por defecto { user_friendly_names no }

mediante el uso el tacto, o crear una que redefine un valor por defecto como:

y reinicie multipathd:
# Service multipath-tools reiniciar

Ahora, el "config show" comando devolver la base de datos en vivo.

3,2. Instalacin con el soporte de mltiples


Para habilitar apoyo multitrayecto durante la instalacin 1 utilizan
instalar disk-detect/multipath/enable = true

en el indicador de instalador. Si los dispositivos de trayectoria mltiple se encuentran stos se muestran como / Dev / mapperla mpath <X> durante / instalacin.
1 http://wiki.debian.org/DebianInstaller/MultipathSupport

58

DM-Multipath

3,3. Haciendo caso omiso de los discos locales de la hora de generar dispositivos multipath
Algunas mquinas tienen locales para sus tarjetas SCSI discos internos. DM-Multipath no se recomienda para estos dispositivos. El procedimiento siguiente muestra cmo modificar el archivo de configuracin de mltiples a caso omiso de los discos locales en la configuracin mltiple. 1. Determine qu discos son los discos internos y marcarlos como los de la lista negra. En este ejemplo, / Dev / sda es el disco interno. Obsrvese que, como originalmente configurado en la multitrayectoria predeterminada archivo de configuracin, la ejecucin de la multipath-v2 muestra el disco local, / Dev / sda, en la trayectoria mltiple mapa. Para ms informacin sobre el multipath la salida del comando, consulte la seccin "Multipath Salida del comando ".

# Multipath-v2 crear: SIBM-ESXSST336732LC____F3ET0EP0Q000072428BX1 undef WINSYS, SF2372 size = 33 caractersticas GB = "0" hwhandler = "0" wp = undef `- + - = Poltica de 'round-robin 0' prio = 1 estado = undef | - 0:0:0:0 sda 08:00 [---------

el dispositivo de mapeo ioctl cmd 9 no: Argumento no vlido el dispositivo de mapeo ioctl cmd 14 fall: No existe el dispositivo o la direccin crear: 3600a0b80001327d80000006d43621677 WINSYS undef, SF2372 size = 12G caractersticas = '0 'hwhandler = '0' wp = undef `- + - = Poltica de 'round-robin 0' prio = 1 estado = undef | - 2:0:0:0 sdb 8:16 undef listos funcionamiento `- 3:0:0:0 sdf 8:80 undef listos funcionamiento crear: 3600a0b80001327510000009a436215ec undef WINSYS, SF2372 size = 12G caractersticas = '0 'hwhandler = '0' wp = undef `- + - = Poltica de 'round-robin 0' prio = 1 estado = undef | - 2:0:0:1 sdc 8:32 undef listos funcionamiento `- 3:0:0:1 sdg 8:96 undef listos funcionamiento

crear: 3600a0b80001327d800000070436216b3 undef WINSYS, SF2372 size = 12G caractersticas = '0 'hwhandler = '0' wp = undef `- + - = Poltica de 'round-robin 0' prio = 1 estado = undef | - 2:0:0:2 sdd 8:48 undef listos funcionamiento `- 3:0:0:2 sdg 8:112 undef listos funcionamiento

crear: 3600a0b80001327510000009b4362163e undef WINSYS, SF2372 size = 12G caractersticas = '0 'hwhandler = '0' wp = undef `- + - = Poltica de 'round-robin 0' prio = 1 estado = undef | - 2:0:0:3 sdd 8:64 undef listo funcionando `- 3:0:0:3 sdg 8:128 undef listos funcionamiento

2. Con el fin de evitar que el mapeador de dispositivos de mapeo / Dev / sda en sus mapas de trayectoria mltiple, modifique el seccin de la lista negra / Etc / multipath.conf archivo para incluir este dispositivo. Aunque se puede la lista negra del sda dispositivo mediante un devnode tipo, que no sera procedimiento seguro desde / Dev / sda es no garantiza que sea el mismo en el reinicio. Para la lista negra de dispositivos individuales, puede utilizar la lista negra el WWID de ese dispositivo. Ntese que en la salida a la multipath-v2 comando, el WWID del 59

DM-Multipath

la / Dev / sda dispositivo es SIBM-ESXSST336732LC____F3ET0EP0Q000072428BX1. Para la lista negra este dispositivo, incluyen lo siguiente en el / Etc / multipath.conf archivo.

{lista negra wwid SIBM-ESXSST336732LC____F3ET0EP0Q000072428BX1 }

3. Despus de haber actualizado la / Etc / multipath.conf archivo, manualmente debe informar a la multipathd demonio para volver a cargar el archivo. Las recargas de comandos siguientes de la actualizacin / Etc / multipath.conf archivo.
# Servicio mltiple-herramientas de recarga

4. Ejecute el siguiente comando para quitar el dispositivo mltiple:

# Multipath-f-SIBM ESXSST336732LC____F3ET0EP0Q000072428BX1

5. Para comprobar si la eliminacin del dispositivo funcion, puede ejecutar el multipath-ll comando para mostrar la configuracin actual multitrayecto. Para obtener ms informacin sobre la multipath-ll comandos, consulte la seccin "Las consultas con multitrayecto comando multipath". Para comprobar que el dispositivo de la lista negra no se agreg hacia atrs, puede ejecutar el comando multipath, como en el ejemplo siguiente. El comando multipath por defecto a un nivel de detalle de la v2 si no se especifica un -V opcin.

# Multipath crear: 3600a0b80001327d80000006d43621677 WINSYS undef, SF2372 size = 12G caractersticas = '0 'hwhandler = '0' wp = undef `- + - = Poltica de 'round-robin 0' prio = 1 estado = undef | - 2:0:0:0 sdb 8:16 undef listos funcionamiento `- 3:0:0:0 sdf 8:80 undef listos funcionamiento

crear: 3600a0b80001327510000009a436215ec undef WINSYS, SF2372 size = 12G caractersticas = '0 'hwhandler = '0' wp = undef `- + - = Poltica de 'round-robin 0' prio = 1 estado = undef | - 2:0:0:1 sdc 8:32 undef listo funcionando `- 3:0:0:1 sdg 8:96 undef listos funcionamiento

crear: 3600a0b80001327d800000070436216b3 undef WINSYS, SF2372 size = 12G caractersticas = '0 'hwhandler = '0' wp = undef `- + - = Poltica de 'round-robin 0' prio = 1 estado = undef | - 2:0:0:2 sdd 8:48 undef listos funcionamiento `- 3:0:0:2 sdg 8:112 undef listos funcionamiento

crear: 3600a0b80001327510000009b4362163e undef WINSYS, SF2372 size = 12G caractersticas = '0 'hwhandler = '0' wp = undef `- + - = Poltica de 'round-robin 0' prio = 1 estado = undef 2:0:0:3 sdd 8:64 undef listos | funcionamiento `- 3:0:0:3 sdg 8:128 undef listos funcionamiento

60

DM-Multipath

3,4. Configuracin de los dispositivos de almacenamiento


De forma predeterminada, DM-Multipath incluye soporte para los dispositivos de almacenamiento ms comunes que apoyan DMMultitrayecto. Los valores de configuracin predeterminados, incluyendo los dispositivos compatibles, se pueden multipath.conf.defaults archivo. encontrar en el Si es necesario agregar un dispositivo de almacenamiento que no se admite de forma predeterminada como un dispositivo multipath conocida, editar la / Etc / multipath.conf presentar e introducir la informacin del dispositivo apropiado. Por ejemplo, para aadir informacin sobre la HP Open-de la serie V de la entrada se ve como este, donde N% es el nombre del dispositivo:
dispositivos { dispositivo de { proveedor de "HP" producto "OPEN-V". getuid_callout "/ lib / udev / scsi_id - lista blanca - device = / dev /% n" } }

Para obtener ms informacin en la seccin de dispositivos del archivo de configuracin, consulte la seccin Archivo de configuracin Dispositivos [p. 70].

61

DM-Multipath

4. El DM-Multipath archivo de configuracin


De forma predeterminada, DM-Multipath proporciona valores de configuracin para los usos ms comunes de mltiples la DM-Multipath incluye soporte para los dispositivos de almacenamiento ms comunes que apoyan Adems, rutas. Dm-multipath. Los valores de configuracin predeterminados y los dispositivos soportados se pueden encontrar en el multipath.conf.defaults archivo. Puede anular los valores de configuracin predeterminados para DM-Multipath mediante la edicin del / Etc / multipath.conf archivo de configuracin. Si es necesario, tambin puede agregar una matriz de almacenamiento que no es compatible Por defecto el fichero de configuracin. En este captulo se ofrece informacin sobre analizar y modificar el multipath.conf archivo. Contiene secciones sobre los siguientes temas: Introduccin a la Configuracin del archivo [p. 62] Configuracin del archivo de lista negra [p. 63] Valores predeterminados del archivo de configuracin [p. 65] Archivo de configuracin de mltiples atributos [p. 69] Dispositivos del archivo de configuracin [p. 70] En el archivo de configuracin mltiple, es necesario especificar slo las secciones que usted necesita para su configuracin, o que desea cambiar a los valores predeterminados especificados en el multipath.conf.defaults archivo. Si hay secciones del archivo que no son relevantes para su medio ambiente o para los que no es necesario reemplazar los valores predeterminados, puede dejarlos comentada, ya que estn en el archivo inicial. El archivo de configuracin permite la sintaxis regular de descripcin de la expresin. Una versin anotada del archivo de configuracin se puede encontrar en / Usr / share / doc / mltiple de
herramientas y ejemplos o multipath.conf.annotated.gz.

4,1. Introduccin a la Configuracin del archivo


El archivo de configuracin mltiple se divide en las siguientes secciones: lista negra Listado de los dispositivos especficos que no se tendrn en cuenta para la trayectoria mltiple. blacklist_exceptions Listado de candidatos de trayectoria mltiple que de otro modo en la lista negra de acuerdo con los parmetros de la seccin de lista negra. por defecto Ajustes generales por defecto para DM-Multipath. multipath Configuracin de las caractersticas de los dispositivos multipath individuales. Estos valores sobrescribir lo que es especificado en el por defecto y dispositivos secciones del archivo de configuracin.

62

DM-Multipath

dispositivos Los ajustes de los controladores de almacenamiento individuales. Estos valores sobreescribir lo que se especifica en el por defecto seccin del archivo de configuracin. Si est utilizando una matriz de almacenamiento que no es compatible con usted puede necesitar para crear una subseccin de dispositivos para la por defecto, matriz. Cuando el sistema determina los atributos de un dispositivo multipath, primero comprueba la configuracin mltiple, a continuacin, la configuracin de dispositivos, y luego por los valores predeterminados del sistema mltiple.

4,2. Configuracin del archivo de lista negra


La seccin de lista negra del archivo de configuracin multitrayecto especifica los dispositivos que no se utilizarn cuando el sistema configura los dispositivos de trayectoria mltiple. Los dispositivos que estn en listas negras no se agrupan en una multitrayecto dispositivo. Si usted necesita a la lista negra de dispositivos, puede hacerlo de acuerdo con los siguientes criterios: Por WWID, tal como se describe Las listas negras WWID [p. 63] Para el nombre del dispositivo, como se describe en Lista negra por nombre de dispositivo [p. 63] Por tipo de dispositivo, como se describe en Listas negras por tipo de dispositivo [p. 64] De forma predeterminada, una variedad de tipos de dispositivos en la lista negra, incluso despus de comentar la lista negra inicial seccin del archivo de configuracin. Para ms informacin, consulte Lista negra por nombre de dispositivo [p. 63] 4.2.1. Las listas negras WWID Puede especificar los dispositivos individuales a la lista negra por su World-Wide La identificacin con un wwid entrada en el lista negra seccin del archivo de configuracin. El siguiente ejemplo muestra las lneas en el archivo de configuracin que podra poner a un dispositivo con una WWID de 26353900f02796769.

{lista negra wwid 26353900f02796769 }

4.2.2. Lista negra por nombre del dispositivo Puede lista negra de los tipos de dispositivos por el nombre del dispositivo para que no se agrupan en un mltiple dispositivo mediante la especificacin de un devnode entrada en el lista negra seccin del archivo de configuracin. El siguiente ejemplo muestra las lneas en el archivo de configuracin de la lista negra que todos los dispositivos SCSI, ya sus listas negras de todos los dispositivos SD *.

{lista negra devnode "^ sd [az]" }

63

DM-Multipath

Puede utilizar un devnode entrada en el lista negra seccin del archivo de configuracin para especificar individuo dispositivos a la lista negra en lugar de todos los dispositivos de un tipo especfico. Esto no es recomendable, sin embargo, ya menos que se asignan estticamente por las reglas de udev, no hay garanta de que un dispositivo especfico tendr el mismo nombre en el reinicio. Por ejemplo, un nombre de dispositivo podra cambiar desde / Dev / sda a / Dev / sdb en reiniciar el sistema. Por defecto, el siguiente devnode las entradas se recogen en la lista negra por defecto, los dispositivos que estos las entradas de la lista negra por lo general no apoyar a dm-multipath. Para permitir multirruta en cualquiera de estos dispositivos, usted tendra que especificar en la blacklist_exceptions seccin del archivo de configuracin, como se describe en Excepciones lista negra [p. 64]

{lista negra devnode "^ (ram | raw | loop | fd | md | dm-| sr | scd | st) [09] *" devnode "^ hd [a-z]" }

4.2.3. Listas negras por tipo de dispositivo Puede especificar los tipos de dispositivos especficos en la lista negra seccin del archivo de configuracin con un dispositivo seccin. Las listas negras de todo el siguiente ejemplo DS4200 de IBM y los dispositivos de HP.
{lista negra dispositivo de { vendedor "IBM" producto "3S42" } dispositivo de { proveedor de "HP" producto "*" } } # DS4200 de productos 10

4.2.4. Lista negra excepciones Usted puede utilizar el blacklist_exceptions seccin del archivo de configuracin para permitir multirruta sobre dispositivos que han sido incluidos en listas negras por defecto.

Por ejemplo, si usted tiene un gran nmero de dispositivos y quieren mltiple slo uno de ellos (con la WWID de 3600d0230000000000e13955cc3757803), en lugar de las listas negras de forma individual cada uno de los los dispositivos excepto el que usted desea, en su lugar podra lista negra de todos ellos, y permitir que slo entonces el que desee mediante la adicin de las siguientes lneas a la / Etc / multipath.conf archivo.

{lista negra wwid "*" }

64

DM-Multipath
blacklist_exceptions { WWID "3600d0230000000000e13955cc3757803" }

Al especificar los dispositivos en el blacklist_exceptions seccin del archivo de configuracin, debe especificar las excepciones de la misma manera que se especifica en el la lista negra. Por ejemplo, un WWID excepcin no se aplicar a los dispositivos especificados por una devnode lista negra de entrada, incluso si la lista negra dispositivo est asociado con el WWID. Del mismo modo, las excepciones slo se aplican a devnode devnode entradas, y las excepciones de dispositivos slo se aplican a las entradas de dispositivos.

4,3. Valores predeterminados del archivo de configuracin


La / Etc / multipath.conf archivo de configuracin incluye una por defecto seccin que establece el user_friendly_names parmetro para s, como sigue.
por defecto { user_friendly_names s }

Esto sobrescribe el valor predeterminado de la user_friendly_names parmetro. El archivo de configuracin incluye una plantilla de valores de configuracin predeterminados. En esta seccin se comenta, como sigue.
Nmero de valores por defecto { # udev_dir # polling_interval # # # selector path_grouping_policy getuid_callout directio 1000 uniforme

/ Dev 5 "Round-robin 0" conmutacin por error "/ Lib / dev / scsi_id - lista blanca - device = / dev /% n"

# Prioconst # Path_checker # Rr_min_io # Rr_weight

# Conmutacin manual por recuperacin # No_path_retry fallar # User_friendly_names no #}

Para sobrescribir el valor por defecto para cualquiera de los parmetros de configuracin, usted puede copiar el correspondiente la lnea de esta plantilla en el por defecto seccin y se quite. Por ejemplo, para sobrescribir el path_grouping_policy parmetro de modo que sea multicanal en lugar del valor por defecto de conmutacin por error, copiar la lnea correspondiente de la plantilla a la inicial por defecto seccin del archivo de configuracin, y descomentarla, como sigue.

por defecto { user_friendly_names s

65

DM-Multipath
path_grouping_policy } multicanal

Mesa Multitrayecto valores predeterminados de configuracin [p. 66] describe los atributos que se establecen en el por defecto seccin de la multipath.conf archivo de configuracin. Estos valores son utilizados por DM-Multipath a menos que sean sustituidos por los atributos especificados en el dispositivos y multitrayectorias secciones del
multipath.conf

archivo.

Cuadro 5.3. Multitrayecto valores predeterminados de configuracin


Atributo polling_interval Descripcin Especifica el intervalo entre dos controles de ruta en cuestin de segundos. Para la correcta funcionamiento de las rutas, el intervalo entre los controles se incrementar gradualmente a (4 * polling_interval). El valor predeterminado es 5. El directorio donde los nodos de dispositivo son creados udev. El valor predeterminado es / prog. El directorio donde los objetos dinmicos compartidos se almacenan. El valor por defecto valor es dependiente del sistema, comnmente / Lib / multitrayecto. El nivel de detalle predeterminado. Los valores ms altos aumentan el nivel de detalle. Vlido niveles son entre 0 y 6. El valor predeterminado es 2. Especifica el algoritmo por defecto para usar en la determinacin de cul es el camino a utilizar para la siguiente operacin I / O. Los valores posibles son: round-robin 0: Recorrer todos los caminos en el grupo de rutas, el envo de la misma cantidad de I / O para cada uno. la cola de longitud 0: Enviar el siguiente grupo de E / S por el camino con la menor nmero de E / S pendientes las solicitudes. servicio en tiempo 0: Enviar el siguiente grupo de E / S por el camino con la menor tiempo estimado de servicio, que se determina dividiendo el tamao total de la E / S pendiente de cada ruta por su rendimiento relativo.

udev_dir

multipath_dir

verbosidad

path_selector

El valor predeterminado es round-robin 0. path_grouping_policy Especifica la ruta predeterminada de la poltica de grupo para aplicar a la no especificada multitrayectorias. Los valores posibles son: conmutacin por error = 1 camino por grupo prioritario multicanal = Todas las rutas de acceso vlidas en el grupo de prioridad 1 group_by_serial = 1 la prioridad del grupo por nmero de serie detectado group_by_prio = 1 la prioridad del grupo por valor de ruta de prioridad group_by_node_name = 1 grupo de prioridad por cada nombre de nodo de destino. El valor predeterminado es conmutacin por error. 66

DM-Multipath

Atributo getuid_callout

Descripcin Especifica el programa por defecto y los argumentos para llamar a cabo para obtener una nica camino de identificador. Una ruta absoluta se requiere. El valor predeterminado es / Lib / udev / scsi_id - lista blanca - device = / dev /% n. Especifica la funcin predeterminada de llamar para obtener un valor de prioridad de paso. Para ejemplo, los bits ALUA en SPC-3 proporcionan un valor prio explotable. Los valores posibles son: const: Establecer una prioridad de 1 a todos los caminos. EMC: Generar la prioridad camino para arrays EMC. ALUA: Generar la prioridad trayectoria basada en la configuracin de SCSI-3 ALUA. NetApp: Generar la prioridad de ruta para las matrices de NetApp. RDAC: Generar la prioridad de ruta para LSI / Engenio RDAC controlador. hp_sw: Generar la prioridad camino para Compaq / HP controlador activo / el modo de espera. HDS: Generar el camino para que la prioridad de almacenamiento de Hitachi HDS modular matrices. El valor predeterminado es const.

Pro

prio_args

caractersticas

path_checker

La cadena de argumentos que se pasan a la funcin prio mayora de las funciones prio no necesitan argumentos. El Priorizador DataCore necesita. Ejemplo, "Tiempo de espera = 1000 = preferredsds foo". El valor predeterminado es (null) "". Las caractersticas adicionales de los dispositivos de trayectoria mltiple. La nica caracterstica existente es queue_if_no_path, que es el mismo que establecer no_path_retry a cola. Para obtener informacin sobre cuestiones que puedan surgir al utilizar esta funcin, seccin, "Problemas con la funcin de vase la queue_if_no_path". Especifica el mtodo utilizado para determinar el estado de los caminos. Los valores posibles son: readsector0: Leer el primer sector del dispositivo. TUR: Emitir una unidad de prueba LISTO para el dispositivo. emc_clariion: Consultar las EMC CLARiiON especficos 0xC0 pgina EVPD de determinar la ruta. hp_sw: Compruebe el estado de ruta para los arreglos de almacenamiento HP con Active / Standby firmware. RDAC: Compruebe la ruta de estadsticas para LSI / Engenio controlador de almacenamiento RDAC. directio: Lea el primer sector con E / S directa El valor predeterminado es directio.

67

DM-Multipath

Atributo conmutacin por recuperacin

Descripcin Gestiona la conmutacin por recuperacin ruta del grupo. Un valor de inmediato especifica la conmutacin por recuperacin inmediata de la ms alta prioridad ruta que contiene las rutas activas. grupo de Un valor de manual especifica que no debe ser inmediata conmutacin por recuperacin, pero la conmutacin por recuperacin que puede suceder solamente con la intervencin del operador. Un valor numrico mayor que cero indica la conmutacin por recuperacin diferida, expresado en segundos. El valor predeterminado es manual.

rr_min_io

Especifica el nmero de peticiones de E / S a la ruta de un camino antes de pasar a el siguiente camino en el grupo de trayectoria de corriente. El valor predeterminado es 1000.

rr_weight

Si se establece en prioridades, a continuacin, en lugar de enviar rr_min_io solicitudes a un camino antes de llamar path_selector elegir el camino siguiente, el nmero de peticiones de enviar est determinada por rr_min_io tiempos prioritarios del trazado, como determinado por la funcin de Pro. Si se establece en uniforme, todos los pesos de ruta iguales. son El valor predeterminado es uniforme.

no_path_retry

Un valor numrico de este atributo especifica el nmero de veces que el el sistema debe intentar utilizar un camino no antes de deshabilitar la cola. A valor de fallo indica inmediato fracaso, sin hacer la fila. Un valor de cola indica que la cola no debe parar hasta que la ruta es fija. El valor predeterminado es 0.

user_friendly_names

Si se establece en s, especifica que el sistema debe utilizar el / Etc / mltiple / enlaces presentar para asignar un persistente y nica alias al mltiple, en la forma de mpathn. Si se establece a no, especifica que el sistema debe utilizar el WWID como el alias para el mltiple. En cualquier caso, lo que se especifica aqu ser anulado por los alias especficos del dispositivo que se especifiquen en el multitrayectorias seccin del archivo de configuracin.

El valor predeterminado es ninguna. queue_without_daemon Si se establece a no, el multipathd daemon desactivar la cola de todos los dispositivos cuando se cierra. El valor predeterminado es S. flush_on_last_del Si se establece en s, entonces multipath se desactivar cuando la cola de la ltima ruta a un dispositivo ha sido eliminada.

68

DM-Multipath

Atributo

Descripcin El valor predeterminado es ninguna. Establece el nmero mximo de descriptores de archivos abiertos que pueden ser abiertos por multipath y el multipathd demonio. Esto es equivalente a la ulimit n de comandos. Un valor de max se ponga esto en el lmite del sistema de / Proc / Si sys / fs / NR_OPEN. esto no se ha establecido, el nmero mximo de fichero abierto descriptores se toma del proceso de llamada, sino que generalmente es 1024. Para ser segura, esto se debe establecer en el nmero mximo de caminos ms 32, si que nmero es mayor que 1024. El tiempo de espera que se utilizar para las damas de ruta que emitir comandos SCSI con una tiempo de espera explcito, en cuestin de segundos. El valor predeterminado se toma de / Sys / block / sdx / dispositivo / tiempo de espera, Que es 30 segundo a partir de 12.04 LTS

max_fds

checker_timer

fast_io_fail_tmo

El nmero de segundos de la capa SCSI esperar despus de un problema ha sido detectado en un puerto FC a distancia antes de fallar de E / S a los dispositivos de control remoto que el puerto. Este valor debe ser menor que el valor de dev_loss_tmo. Ajuste esto, se desactivar el tiempo de espera. El valor predeterminado es determinada por el sistema operativo. El nmero de segundos de la capa SCSI esperar despus de un problema tiene sido detectado en un puerto remoto FC antes de sacarla del sistema. Al establecer esta hasta el infinito lo configuran a 2147483647 segundos, o 68 aos. El valor predeterminado es determinada por el sistema operativo.

dev_loss_tmo

4,4. Atributos de los archivos de configuracin multirruta


Mesa Los atributos de mltiples rutas [p. 69] se muestran los atributos que se pueden establecer en el multitrayectorias seccin de los multipath.conf archivo de configuracin para cada dispositivo multipath especfico. Estos atributos se aplican slo a la multitrayectoria un especificado. Estos valores son utilizados por DM-Multipath y los atributos de anulacin establecido en el por defecto y dispositivos secciones del archivo de multipath.conf.

Cuadro 5.4. Los atributos de mltiples rutas


Atributo wwid Descripcin Especifica el WWID del multipath producto al que se multipath atributos se aplican. Este parmetro es obligatorio para esta seccin de la
multipath.conf

archivo.

alias

Especifica el nombre simblico para el multipath producto al que se multipath atributos se aplican. Si est utilizando user_friendly_names, no establecer este valor en mpathn, lo que puede entrar en conflicto con una asigna automticamente nombre de usuario amigable y le dar incorrectos los nombres de nodo del dispositivo.

69

DM-Multipath

Adems, los siguientes parmetros puede ser anulado en este multipath seccin path_grouping_policy path_selector conmutacin por
recuperacin Pro

prio_args no_path_retry rr_min_io rr_weight flush_on_last_del El siguiente ejemplo muestra los atributos de trayectoria mltiple se especifican en el fichero de configuracin especfica para dos dispositivos de trayectoria mltiple. El primer dispositivo tiene un WWID de 3600508b4000156d70001200000b0000 y un nombre simblico de amarillo. El dispositivo de multitrayectoria en el segundo ejemplo tiene un WWID de 1DEC_____321816758474 y un nombre simblico de rojo. En este ejemplo, el rr_weight atributos se ajusta a las prioridades.

multitrayectorias { {multipath wwid alias path_grouping_policy path_selector conmutacin por recuperacin rr_weight no_path_retry } {multipath wwid alias rr_weight } } 1DEC_____321816758474 rojo prioridades 3600508b4000156d70001200000b0000 amarillo multicanal "Round-robin 0" manual prioridades 5

4,5. Dispositivos de archivos de configuracin


Mesa Los atributos de dispositivos [p. 71] se muestran los atributos que se pueden establecer para cada uno de almacenamiento individual dispositivo en la seccin de dispositivos del archivo de configuracin multipath.conf. Estos atributos son utilizados por DM-Multipath a menos que sean sustituidos por los atributos especificados en el multitrayectorias seccin de la multipath.conf archivo de rutas que contienen el dispositivo. Estos atributos anular los atributos establecidos en la la por defecto seccin de la multipath.conf archivo.

Muchos dispositivos que soportan mltiples rutas se incluyen por defecto en una configuracin mltiple. La los valores de los dispositivos que son compatibles por defecto se muestran en la multipath.conf.defaults archivo.

70

DM-Multipath

Usted probablemente no tendr que modificar los valores de estos dispositivos, pero si lo haces, puede sobrescribir los valores por defecto, incluyendo una entrada en el fichero de configuracin para el dispositivo que sobrescribe los valores. Puede copiar los valores predeterminados de configuracin del dispositivo de la multipath.conf.annotated.gz o si usted desea tener un archivo de configuracin breve, multipath.conf.synthetic presentar para el dispositivo y anular la se desea cambiar. valores que Para aadir un dispositivo a esta seccin del archivo de configuracin que no se configura automticamente de forma predeterminada, debe establecer el vendedor y producto parmetros. Usted puede encontrar estos valores observando / Sys / block / nombre_dispositivo / dispositivo / proveedor y / Sys / block / nombre_dispositivo / dispositivo / modelo donde nombre_dispositivo es el dispositivo que se multirruta, como en el ejemplo siguiente:
# Cat / sys / block / sda / dispositivo / proveedor WINSYS # Cat / sys / block / sda / dispositivo / modelo SF2372

Los parmetros adicionales para especificar depender de su dispositivo especfico. Si el dispositivo est activo / activo, que por lo general no necesita configurar parmetros adicionales. Es posible que desee configurar path_grouping_policy a multicanal. Otros parmetros que usted puede necesitar para configurar son no_path_retry y rr_min_io, como se describe en Mesa Los atributos de mltiples rutas [p. 69]. Si el dispositivo est activo / pasivo, sino que cambia automticamente las rutas de E / S a la ruta de pasivo, es necesario cambiar la funcin de corrector a uno que no enva E / S a la ruta para probar si es de trabajo (de lo contrario, el dispositivo se mantendr la conmutacin por error). Esto casi siempre significa que se establece la path_checker a tur; esto funciona para todos los dispositivos SCSI que admiten el comando Test Unit Ready, que la mayora lo hace. Si el dispositivo necesita una orden especial para cambiar las rutas, a continuacin, configurar este dispositivo para mltiples rutas requiere un controlador de hardware de mdulo del kernel. El controlador de hardware disponible actual es de EMC. no es suficiente para su dispositivo, puede que no sea capaz de configurar el dispositivo para el multipath. Si este es

Cuadro 5.5. Los atributos de dispositivos


Atributo vendedor Descripcin Especifica el nombre del fabricante del dispositivo de almacenamiento a la que el dispositivo atributos se aplican, por ejemplo COMPAQ. Especifica el nombre de producto del dispositivo de almacenamiento para que el dispositivo atributos se aplican, por ejemplo HSV110 (C) COMPAQ. Especifica el identificador de revisin de producto del dispositivo de almacenamiento. Especifica una expresin regular utilizada para los dispositivos de la lista negra por el producto. Especifica un mdulo que se utilizar para llevar a cabo acciones especficas de hardware cuando se cambia de grupos de rutas o el manejo de errores de E / S. Los valores posibles incluyen:

producto

revisin product_blacklist hardware_handler

71

DM-Multipath

Atributo

Descripcin 1 EMC: hardware de controlador para dispositivos de almacenamiento de EMC 1 ALUA: hardware de controlador para arreglos ALUA SCSI-3. 1 hp_sw: hardware de controlador para Compaq / HP controladores. 1 RDAC: hardware de controlador para los controladores de LSI / Engenio RDAC.

Adems, los siguientes parmetros puede ser anulado en este dispositivo seccin path_grouping_policy getuid_callout path_selector path_checker caractersticas conmutacin por
recuperacin Pro

prio_args no_path_retry rr_min_io rr_weight fast_io_fail_tmo dev_loss_tmo flush_on_last_del Cada vez que un hardware_handler se especifica, es su responsabilidad asegurarse de que el mdulo del ncleo correspondiente se carga en apoyo de la interfaz especificada. Estos mdulos pueden se encuentran en / Lib / modules / `uname-r` / kernel / drivers / scsi / device_handler / . La mdulo requisite deben integrarse en el initrd para asegurar el descubrimiento necesario y conmutacin por error, la conmutacin por recuperacin de capacidad est disponible en el momento del arranque. Ejemplo,
# Cat scsi_dh_alua >> / etc / initramfs-tools y mdulos # Update-initramfs-u-k all # # Agregar el mdulo a presentar

El siguiente ejemplo muestra una entrada de dispositivo en el archivo de configuracin multitrayecto.


Nmero de dispositivos { # Dispositivo { # # # # # #} #} vendedor producto "COMPAQ "MSA1000 " "

multicanal path_grouping_policy path_checker tur rr_weight prioridades

72

DM-Multipath

El espaciamiento reservado en el proveedor, producto, y revisin los campos son importantes como la trayectoria mltiple es realizando una coincidencia directa contra estos atributos, cuyo formato est definido por la especificacin SCSI, especficamente el INVESTIGACIN estndar2 comandos. Cuando las comillas se usan, el proveedor, producto, y campos de revisin ser interpretada estrictamente de acuerdo con la especificacin. Las expresiones regulares se pueden integrar en las cadenas entre comillas. Si un campo se define sin el espacio necesario, mltiple se copiar la cadena en el bfer de tamao adecuado y una almohadilla con el nmero apropiado de espacios. La especificacin espera todo el campo a ser poblada por caracteres imprimibles o espacios, como se ve en la ejemplo anterior Proveedor: 8 caracteres Producto: 16 caracteres Revisin: 4 caracteres Para crear un archivo de configuracin ms robusta, las expresiones regulares tambin se pueden utilizar. Los operadores incluyen ^ $ []. *? +. Ejemplos de expresiones regulares funcionales se pueden encontrar mediante el examen de la trayectoria mltiple en vivo base de datos y multipath.conf archivos de ejemplo se encuentra en / Usr / share / doc / multipath-tools /
examples: # Echo 'show config' | multipathd-k

2 http://en.wikipedia.org/wiki/SCSI_Inquiry_Command

73

DM-Multipath

5. DM-Multipath Administracin y solucin de problemas


5,1. Cambiar el tamao de un dispositivo de mltiples rutas en lnea
Si necesita cambiar el tamao de un dispositivo multipath online, utiliza el siguiente procedimiento 1. 2. Cambiar el tamao de su dispositivo fsico. Esto es especfico de almacenamiento de la plataforma. Utilice el siguiente comando para encontrar las rutas de acceso al LUN:
# Multipath-l

3.

El tamao de tus caminos. Para los dispositivos SCSI, escribir 1 a la volver a examinar archivo para el dispositivo hace que el SCSI conductor que vuelva a examinar, como en el siguiente comando:
# Echo 1> / sys / block / nombre_dispositivo / dispositivo / volver a examinar

4.

Cambiar el tamao de su dispositivo multipath, ejecute el comando de cambio de tamao multipathd:


# Multipathd-k 'redimensionar el mapa mpatha'

5.

Cambiar el tamao del sistema de archivos (suponiendo que no LVM o particiones de DOS se utilizan):
# Resize2fs / dev / mapper / mpatha

5,2. Moving Systems raz de archivos desde un dispositivo nico camino para una trayectoria mltiple Dispositivo
Esto es dramticamente simplificada por el uso de UUID para identificar los dispositivos como una etiqueta intrnseca. Simplemente instalar multipath-tools-arranque y reiniciar el sistema. Esto volver a generar el disco RAM inicial y darse el lujo de oportunidad de construir su ruta antes de que el sistema de archivos raz se monta por UUID. la trayectoria mltiple Cuando multipath.conf se actualiza, as que si el initrd mediante la ejecucin de update-initramfs -U-k all. La razn de ser es multipath.conf se copia en el disco de memoria y es parte integral de determinacin de los dispositivos disponibles para agrupar a travs de su lista negra y las secciones del dispositivo.

5,3. Moving Systems de intercambio de archivos desde un dispositivo nico camino a una trayectoria mltiple Dispositivo
El procedimiento es exactamente el mismo que el ilustrado en la seccin anterior llamado Mover archivos raz Sistemas de un solo camino para un dispositivo de mltiples rutas.

5,4. El demonio de mltiples


Si usted encuentra que tiene problemas para implementar una configuracin multipath, debe asegurarse de la trayectoria mltiple demonio se est ejecutando como se describe en "Configuracin de DM-Multipath". La multipathd el demonio debe ser en ejecucin para el uso de dispositivos multipathd. Vase tambin la seccin Solucin de problemas con la multipathd interactivo de la consola relativa interactan con multipathd como una ayuda de depuracin. 74

DM-Multipath

5,5. Problemas con queue_if_no_path


Si caractersticas "queue_if_no_path 1" se especifica en el / Etc / multipath.conf archivo, entonces cualquier proceso que usa E / S se bloquear hasta que una o ms vas de acceso se restauran. Para evitar esto, establezca el no_path_retry N parmetro en el / Etc / multipath.conf. Cuando se establece la no_path_retry parmetro, elimine el caractersticas "queue_if_no_path 1" opcin desde / Etc / multipath.conf presentar tambin. Sin embargo, si usted est usando un dispositivo para la multirruta que el caractersticas "queue_if_no_path 1" opcin se configura como un compilado en su defecto, como lo es para muchos Dispositivos SAN, debe agregar caractersticas de "0" para invalidar este valor predeterminado. Usted puede hacer esto mediante la copia del existente dispositivos seccin, y slo esa seccin (no el archivo completo), de / Usr/share/doc/multipathherramientas / examples / multipath.conf.annotated.gz en / Etc / multipath.conf y la edicin para adaptarse a su necesidades. Si necesita utilizar el caractersticas "queue_if_no_path 1" opcin y experimenta el problema sealado aqu, utiliza el dmsetup comando para editar la poltica en tiempo de ejecucin de un LUN en particular (es decir, para el que todos los caminos no estn disponibles). Por ejemplo, si desea cambiar la poltica en el dispositivo multipath mpathc de "Queue_if_no_path" a "Fail_if_no_path", Ejecute el comando siguiente.
# Dmsetup mensaje mpathc 0 "fail_if_no_path"

Se debe especificar la mpathN alias en lugar de la ruta

5,6. Mltiples rutas de salida del comando


Al crear, modificar o incluir un dispositivo multipath, se obtiene una impresin de la configuracin del dispositivo actual. El formato es como sigue. Para cada dispositivo multipath:
action_if_any: alias (wwid_if_different_from_alias) dm_device_name_if_known proveedor, producto size = tamao de las caractersticas = 'caractersticas' hwhandler = 'hardware_handler' wp = write_permission_if_known

Para cada grupo de rutas:


- + - Poltica = 'scheduling_policy' PRIO = prio_if_known estado = path_group_status_if_known

Para cada ruta:


`- Host: Canal: Identificacin: lun importante devnode: menor path_status dm_status_if_known online_status

Por ejemplo, la salida de un comando multipath podra aparecer como sigue:


3600d0230000000000e13955cc3757800 DM-1, la WINSYS SF2372 size = 269g caractersticas = '0 'hwhandler = '0' wp = rw | - + - = Pro poltica de 'round-robin 0' = 1 = estado activo | `- 6:0:0:0 sdb 8:16 funcionamiento lista activa `- + - = Poltica de Pro 'round-robin 0' = 1 = habilitado el estado

75

DM-Multipath
`- 7:0:0:0 sdf 8:80 activa listos funcionamiento

Si la ruta est en marcha y listo para I / O, el estado de la ruta de acceso es listo o fantasma. Si la ruta es hacia abajo, el estado es defectuoso o inestable. El estado de la ruta se actualiza peridicamente por el multipathd basado en demonio el intervalo de sondeo se define en el / Etc / multipath.conf archivo. El estado dm es similar al estado de la ruta, pero desde el punto de vista del ncleo. El estado cuenta con dm dos estados: no, que es anloga a defectuoso, y activo que cubre todos los estados otro camino. En ocasiones, el estado de ruta y el estado de MS de un dispositivo que no se suspender temporalmente de acuerdo. Los valores posibles para online_status son funcionamiento y fuera de lnea. Un estado de fuera de lnea significa que el Dispositivo SCSI ha sido desactivado. Cuando un dispositivo multipath est siendo creado o modificado, el estado del grupo de rutas, el dispositivo dm nombre, los permisos de escritura, y el estado de MS no se conocen. Adems, las caractersticas no son siempre correcta

5,7. Las consultas con multitrayecto comando multipath


Usted puede utilizar el -L y -Ll opciones del multipath comando para mostrar el mltiple actual configuracin. La -L mltiple opcin, se muestra la topologa de recogida de informacin en sysfs y la mapeador de dispositivos. La -Ll opcin, se muestra la informacin del -L pantallas, adems de todos los disponibles otros componentes del sistema. Cuando se muestra la configuracin mltiple, hay tres niveles de detalle que puede especificar con la -V opcin del comando multitrayecto. Especificacin -V0 produce ninguna salida. Especificacin -V1 salidas los nombres creados o actualizados de trayectoria mltiple, que slo se puede alimentar a otras herramientas tales como kpartx. Especificacin -V2 caminos imprime toda detectados, trayectorias mltiples, y los mapas del dispositivo. El valor por defecto verbosidad nivel de multipath es 2y puede ser modificada globalmente por la definicin del nivel de detalle del atributo en el por defecto seccin de multipath.conf. El siguiente ejemplo muestra la salida de un multipath-l comando.
# Multipath-l 3600d0230000000000e13955cc3757800 DM-1, la WINSYS SF2372 size = 269g caractersticas = '0 'hwhandler = '0' wp = rw | - + - = Pro poltica de 'round-robin 0' = 1 = estado activo | `- 6:0:0:0 sdb 8:16 activa listos funcionamiento `- + - = Poltica de Pro 'round-robin 0' = 1 = habilitado el estado `- 7:0:0:0 sdf 8:80 activa listos funcionamiento

El siguiente ejemplo muestra la salida de un multipath-ll comando.


# Multipath-ll 3600d0230000000000e13955cc3757801 DM-10, los WINSYS SF2372 size = 269g caractersticas = '0 'hwhandler = '0' wp = rw | - + - = Pro poltica de 'round-robin 0' = 1 = habilitado el`- 19:0:0:1 sdc 8:32 | estado activa listos funcionamiento

76

DM-Multipath
`- + - = Poltica de Pro 'round-robin 0' = 1 = habilitado el estado `- 18:0:0:1 SDH 8:112 funcionamiento lista activa 3600d0230000000000e13955cc3757803 DM-2, los WINSYS SF2372 size = 125G caractersticas = '0 'hwhandler = '0' wp = rw `- + - = Poltica de Pro 'round-robin 0' = 1 = estado activo | - 19:0:0:3 sde 8:64 listos funcionamiento activo `- 18:0:0:3 SDJ 8:144 funcionamiento lista activa

5,8. Opciones del comando de trayectoria mltiple


Mesa tiles Opciones de comando mltiple [p. 77] describe algunas de las opciones de la multipath mando que le puede resultar til.

Cuadro 5.6. Opciones de comandos tiles mltiple


Opcin -L Descripcin Mostrar la configuracin actual de recogida de trayectoria mltiple sysfs y el mapeador de dispositivos. Mostrar la configuracin actual de recogida de trayectoria mltiple sysfs, la mapeador de dispositivos, y todos los otros componentes disponibles en el sistema. Retire el dispositivo multipath nombre. Retire todos los dispositivos de trayectoria mltiple no utilizados.

-Ll

-F dispositivo -F

5,9. La determinacin de los comentarios del mapeador de dispositivos con el Comando dmsetup
Usted puede utilizar el dmsetup comando para saber que las entradas del mapeador de dispositivos que coincida con el multirruta dispositivos. El siguiente comando muestra todos los dispositivos de mapeo de dispositivos y sus nmeros mayores y menores. Los nmeros menores de determinar el nombre del dispositivo dm. Por ejemplo, un nmero menor de 3 corresponde al dispositivo multirruta / Dev/dm-3.

# Ls dmsetup mpathd (253, 4) mpathep1 mpathfp1 mpathb mpathgp1 mpathhp1 mpatha mpathh mpathg (253, 2) (253, 9) (253, 8) (253, 1) (253, 0) (253, 3) (253, 14) (253, 13) (253, 12) (253, 11)

VolGroup00-LogVol01 mpathf (253, 7) VolGroup00-LogVol00 mpathe (253, 6)

77

DM-Multipath
mpathbp1 mpathd (253, 5) (253, 10)

5,10. Solucin de problemas con la consola interactiva multipathd


La multipathd-k comando es una interfaz interactiva de la multipathd demonio. Al entrar en este comando abre una consola interactiva mltiple. Despus de entrar en este comando, usted puede ayudar a entrar en para obtener una lista de comandos disponibles, se puede introducir un comando interactivo, o usted puede entrar CTRL-D dejar de fumar. La consola interactiva multipathd se puede utilizar para solucionar los problemas que pueda tener con su sistema. Por ejemplo, la siguiente secuencia de comandos muestra la configuracin de la trayectoria mltiple, incluyendo los valores por defecto, antes de salir de la consola. Vase el artculo de IBM "Trucos con multipathd"3
para

ms ejemplos.
# Multipathd-k Show config >> >> CTRL-D

La siguiente secuencia de comandos se asegura de que por trayectoria mltiple se ha recuperado ningn cambio en el multipath.conf,
# Multipathd-k Reconfigurar >> >> CTRL-D

Utilice la siguiente secuencia de comandos para asegurarse de que el corrector ruta funciona correctamente.

# Multipathd-k >> Muestran caminos >> CTRL-D

Los comandos tambin se puede transmitir a stdin multipathd utilizando de este modo:
# Echo 'show config' | multipathd-k

3 http://www-01.ibm.com/support/docview.wss?uid=isg3T1011985

78

Captulo 6. Administracin remota


Hay muchas maneras de administrar remotamente un servidor Linux. Este captulo cubre dos de los ms populares aplicaciones OpenSSH y marionetas.

79

Administracin remota

1. OpenSSH servidor
1,1. Introduccin
Esta seccin de la Gua de Ubuntu Server introduce una potente coleccin de herramientas para el control remoto el control y la transferencia de datos entre los ordenadores conectados en red llamada OpenSSH. Usted tambin aprender sobre algunas de las posibles opciones de configuracin con la aplicacin de servidor OpenSSH y cmo cambios en su sistema Ubuntu. OpenSSH es una versin libre de la familia del protocolo Secure Shell (SSH) de herramientas de forma remota el control de, o transferir archivos entre las computadoras. Las herramientas tradicionales utilizadas para alcanzar dichos objetivos funciones, tales como telnet o el rcp, son inseguras y transmiten la contrasea del usuario en texto sin cifrar cuando se utiliza. OpenSSH proporciona un demonio y herramientas de cliente para facilitar el control seguro y encriptado a distancia y operaciones de transferencia de archivos, reemplazando de manera efectiva las herramientas heredadas. El componente de servidor OpenSSH, sshd, escucha continuamente las conexiones de cliente de cualquiera de los herramientas de cliente. Cuando una solicitud de conexin, sshd establece la conexin correcta en funcin de la tipo de herramienta de cliente que se conecta. Por ejemplo, si el equipo remoto se conecta con el cliente de ssh aplicacin, el servidor OpenSSH establecer una sesin de control remoto despus de la autenticacin. Si un usuario remoto se conecta a un servidor OpenSSH con scp, el demonio del servidor OpenSSH iniciar una copia segura de archivos entre el servidor y el cliente tras la autenticacin. OpenSSH puede usar muchos mtodos de autenticacin, incluyendo contraseas planas, claves pblicas y tickets de Kerberos.

1,2. Instalacin
La instalacin de las aplicaciones de cliente y servidor OpenSSH es simple. Para instalar el cliente OpenSSH aplicaciones en su sistema Ubuntu, use este comando en una terminal:

sudo apt-get install openssh-client

Para instalar el servidor OpenSSH, y los archivos de soporte relacionados, use este comando en una terminal del sistema:

sudo apt-get install openssh-server

El paquete openssh-server tambin puede ser seleccionado para instalar durante la instalacin de Server Edition proceso.

1,3. Configuracin
Usted puede configurar el comportamiento predeterminado del servidor OpenSSH, sshd, editando el archivo / Etc / ssh / sshd_config. Para obtener informacin sobre las directivas de configuracin usadas en este archivo, es posible ver la pgina de manual correspondiente con el siguiente comando, emitida en una terminal:

el hombre sshd_config

80

Administracin remota

Existen muchas directivas en el archivo de configuracin de sshd que controlan cosas como la comunicacin ajustes y modos de autenticacin. Los siguientes son ejemplos de directivas de configuracin que pueden ser cambiar editando el / Etc / ssh / sshd_config archivo.

Antes de editar el fichero de configuracin, debe hacer una copia del archivo original y protegerlo contra escritura por lo que tendr la configuracin original como referencia y reutilizar cuando sea necesario. Copie el / Etc / ssh / sshd_config presentar y proteger contra escritura con los siguientes comandos, emitidos en un terminal:

sudo cp / etc / ssh / sshd_config / etc / ssh / sshd_config.original sudo chmod a-w / etc / ssh / sshd_config.original

Los siguientes son ejemplos de directivas de configuracin que puede cambiar: Para configurar su OpenSSH escuche por el puerto TCP 2222 en lugar del puerto TCP por defecto 22, cambiar el Puerto de la Directiva como tal: Puerto 2222 Para que sshd permita basados en clave pblica credenciales de inicio de sesin, slo tiene que aadir o modificar la lnea: PubkeyAuthentication s Si la lnea est ya presente, y luego asegurarse de que no est comentada. Para hacer que el servidor OpenSSH muestre el contenido de la / Etc / issue.net archivo como un pre-inicio de bandera, slo tiene que aadir o modificar la lnea: sesin Banner / etc / issue.net En el / Etc / ssh / sshd_config archivo. Despus de realizar cambios en el / Etc / ssh / sshd_config archivo, guardar el archivo y reiniciar el servidor sshd la aplicacin para efectuar los cambios con el siguiente comando en una terminal:
sudo / etc / init.d / ssh restart

Muchas otras directivas de configuracin de sshd estn disponibles para cambiar la aplicacin de servidor comportamiento de acuerdo a sus necesidades. Tenga en cuenta, sin embargo, si su nico mtodo de acceso a un servidor es ssh, y comete un error en la configuracin de sshd a travs de la / Etc / ssh / sshd_config archivo, puede encontrar lo que estn bloqueados del servidor al reiniciarlo. Adems, si una incorrecta directiva de configuracin se suministra, el servidor sshd puede negarse a comenzar, as que ten mucho cuidado al editar este archivo en un servidor remoto.

1,4. SSH Keys


SSH claves permitir la autenticacin entre dos hosts sin la necesidad de una contrasea. Claves SSH de autenticacin utiliza dos claves, una privado clave y un pblico clave.

81

Administracin remota

Para generar las claves, desde una terminal escriba:

ssh-keygen-t dsa

Esto generar las claves utilizando el Algoritmo de firma digital (DSA) mtodo. Durante el proceso se le solicitar una contrasea. Simplemente pulse Entrar cuando se le pida para crear la clave. Por defecto, el pblico clave se guarda en el archivo ~ / .ssh / Id_dsa.pub, Mientras que ~ / .ssh / Id_dsa es el privado clave. Ahora copia el id_dsa.pub presentar a la mquina remota y aadirlo a ~ / .ssh / Authorized_keys por entrada:

ssh-copy-id nombre de usuario @ mquina_remota

Por ltimo, vuelva a comprobar los permisos en el authorized_keys archivo, slo el usuario autenticado debe tener leer y escribir. Si los permisos no son correctos cambiarlas por:

chmod 600 .ssh / authorized_keys

Ahora debera ser capaz de SSH a la mquina sin que se le pida una contrasea.

1,5. Referencias
Wiki de Ubuntu SSH1 pgina. OpenSSH Web2 Advanced OpenSSH pgina wiki3

1 https://help.ubuntu.com/community/SSH 2 http://www.openssh.org/~~V 3 https://wiki.ubuntu.com/AdvancedOpenSSH

82

Administracin remota

2. Ttere
Tteres es un marco de plataforma cruzada permite a los administradores de sistemas realizar tareas comunes con cdigo. El cdigo se puede hacer una variedad de tareas de instalacin de nuevo software, a la comprobacin de los permisos de archivos, o la actualizacin de las cuentas de usuario. Tteres es grande no slo durante la instalacin inicial de un sistema, sino tambin durante todo el ciclo del sistema de toda la vida. En la mayora de circunstancias ttere se utilizar en un cliente / servidor configuracin. En esta seccin se describe la instalacin y configuracin de Tteres en una configuracin cliente / servidor. Este sencillo ejemplo demostrar cmo instalar Apache usando marionetas.

2,1. Instalacin
Para instalar Tteres, en un terminal en el servidor escriba:

sudo apt-get install titiritero

En el cliente mquina o mquinas, escriba:

sudo apt-get install tteres

2,2. Configuracin
Antes de la configuracin de tteres es posible que desee agregar un DNS CNAME rcord de puppet.example.com, su dominio. Por defecto los clientes DNS para ver tteres como puppet.example.com donde example.com es el nombre del servidor de tteres, o Puppet Master. Ver Captulo 8, el Servicio de Nombres de Dominio (DNS) [p. 139] para ms detalles DNS. Si no desea utilizar DNS, puede agregar entradas al servidor y el cliente / Etc / hosts archivo. Para ejemplo, en el servidor de Tteres / Etc / hosts presentar agregar:

127.0.0.1 localhost localhost tteres 192.168.1.17 meercat02.example.com meercat02

En cada cliente de Tteres, agregue una entrada para el servidor:

192.168.1.16 meercat.example.com meercat tteres

Vuelva a colocar las direcciones IP y nombres de dominio ejemplo anterior con el servidor real y direcciones de los clientes y los nombres de dominio. Ahora configurar algunos recursos para apache2. Cree un archivo / Etc / puppet / manifiestos / site.pp que contiene el siguiente:
package {

83

Administracin remota
'Apache2': garantizar => instalado } servicio de { 'Apache2': garantizar => true, enable => true, requieren => paquete ['apache2'] }

A continuacin, cree un archivo de nodos / Etc / puppet / manifiestos / nodes.pp con:


nodo meercat02.example.com '{ incluyen apache2 }

Reemplazar meercat02.example.com con el nombre de host del cliente real de Tteres.

El paso final para este servidor Puppet simple es reiniciar el demonio:

sudo / etc / init.d / titiritero reinicio

Ahora todo est configurado en el servidor de Tteres, es el momento de configurar el cliente. En primer lugar, configurar el demonio Puppetagent para empezar. Editar / Etc / default / tteres, Cambiando INICIO para s:
START = yes

A continuacin, iniciar el servicio:


sudo / etc / init.d / puppet inicio

De vuelta en el servidor Puppet firmar el certificado de cliente mediante la introduccin de:


sudo puppetca - meercat02.example.com signo

Comprobar / Var / log / syslog por cualquier error con la configuracin. Si todo va bien el paquete apache2 Y sus dependencias se instalar en el cliente de marionetas. Este ejemplo es muy simple, y no pone de manifiesto muchas de las funciones de tteres y los beneficios. Para obtener ms informacin, consulte Seccin 2.3, "Recursos" [p. 84].

2,3. Recursos
Consulte el Documentacin de Tteres Oficial4 sitio web.
4 http://docs.puppetlabs.com/

84

Administracin remota Ver tambin Tteres Pro5. Otra fuente de informacin adicional es la Wiki de Ubuntu Pgina de Tteres6.

5 http://www.apress.com/9781430230571 6 https://help.ubuntu.com/community/Puppet

85

Administracin remota

3. Zentyal
Zentyal es un servidor Linux de la pequea empresa, que puede ser configurado como puerta de enlace, Infraestructura Administrador, Gerente unificada de amenazas, servidor de Office, el servidor de comunicaciones unificadas o una de ellos. Todos combinacin delos servicios de red gestionados por Zentyal estn estrechamente integrados, la automatizacin de la mayora de las tareas. Este ayuda a evitar errores en la configuracin de red y la administracin y permite ahorrar tiempo. Zentyal es de cdigo abierto, distribuido bajo licencia GNU General Public License (GPL) y se ejecuta en la parte superior de UbuntuLinux. GNU / Zentyal se compone de una serie de paquetes (generalmente una para cada mdulo) que proporcionan una interfaz web para configurar los servidores o servicios diferentes. La configuracin se almacena en una base de datos clave-valor Redis pero los usuarios, grupos y dominios relacionados con la configuracin es en OpenLDAP. Al configurar cualquiera de los parmetros disponibles a travs de la interfaz web, los archivos de configuracin finales son sobrescritos con el plantillas de configuracin proporcionada por los mdulos. Las principales ventajas de la utilizacin de Zentyal son: unificado, interfaz grfica de usuario para configurar todos los servicios de red y de alta, fuera de la caja de la integracin entre el ellos.

3,1. Instalacin
Zentyal 2.3 est disponible en el repositorio de Ubuntu Universe 12,04. Los mdulos disponibles son: Zentyal-core y Zentyal comn: el ncleo de la interfaz de Zentyal y las bibliotecas comunes de la marco. Tambin se incluyen los registros y mdulos de eventos que dan al administrador una interfaz para ver los registros y generar eventos de ellos. Zentyal de la red: administra la configuracin de la red. Desde las interfaces (con soporte esttico IP, DHCP, VLAN, puentes o PPPoE), a varias puertas de enlace, cuando tengan ms de uno en Internet sentido, de balanceo de carga y enrutamiento avanzado, rutas estticas o dinmicas de DNS. Los objetos de Zentyal Zentyal y servicios de: proporcionar un nivel abstration de direcciones de red (por ejemplo, LAN en lugar de 192.168.1.0/24) y los puertos nombrados como los servicios (por ejemplo, HTTP en lugar de 80/TCP). Zentyal-firewall: configura las reglas de iptables para bloquear las conexiones Forbiden, NAT y el puerto redirecciones. Zentyal-ntp: instala el demonio NTP para mantener el servidor en el tiempo y permitir que los clientes de la redsincronizar sus relojes con el servidor. para Zentyal-dhcp: configura ISC servidor DHCP apoyo rangos estticos de la red, contratos de arrendamiento y otros opciones avanzadas como NTP, WINS, DNS y actualizaciones dinmicas de arranque en red con PXE. Zentyal-dns: trae ISC Bind9 servidor DNS en el servidor de almacenamiento en cach de las consultas locales, como un o como unde la promotor servidor con autoridad para los dominios configurados. Permite configurar A, CNAME, MX, NS, TXT y SRV. Zentyal-ca: integra la gestin de una autoridad de certificacin dentro de Zentyal para que los usuarios pueden utilizar certificados para la autenticacin en los servicios, al igual que con OpenVPN. Zentyal-openvpn: permite configurar varios servidores VPN y clientes utilizando OpenVPN con dinmica de configuracin de enrutamiento utiliza Quagga.

86

Administracin remota

Los Zentyal de los usuarios: proporciona una interfaz para configurar y administrar usuarios y grupos en OpenLDAP. Otros servicios de Zentyal se autentican contra LDAP con un usuario centralizadas y grupos gestin. Tambin es posible sincronizar los usuarios, contraseas y grupos de un Microsoft Dominio de Active Directory. Zentyal-calamar: configura Squid y Dansguardian para acelerar la navegacin, gracias a la cach capacidades y filtrado de contenido. Zentyal-samba: permite la configuracin de Samba y la integracin con LDAP existentes. De la misma la interfaz que puede definir las polticas de contraseas, crear los recursos compartidos y asignar permisos. Las impresoras de Zentyal integra: CUPS con Samba y permite no slo para configurar las impresoras, sino tambin darles permisos sobre la base de usuarios y grupos LDAP. Para instalar Zentyal, en un terminal en el servidor ENTRAR (donde <zentyal-module> es cualquiera de los mdulos de la lista anterior):

sudo apt-get install <zentyal-module>

Zentyal publica una versin estable importante una vez al ao (en septiembre), basado en la ltima Ubuntu LTS liberacin. Versiones estables siempre tienen nmeros pares menores (por ejemplo, 2.2, 3.0) y versiones beta tienen un nmero impar de menor importancia (por ejemplo, 2.1, 2.3). Ubuntu 12.04 viene con Zentyal 2.3Ubuntu 12.04desea actualizar a Zentyal equipo PPA7. La actualizacin a nuevas versiones estables pueden de paquetes. Si se puede utilizar una nueva versin estable publicada despus de la liberacin proporcionarle correcciones de errores menores que no portado a 2,3 en las caractersticas precisas y ms reciente. Si necesita ms informacin sobre cmo agregar paquetes desde un PPA ver Aadir un personal Paquete Archive (PPA)8. No est presente en los repositorios Universe de Ubuntu, pero en Zentyal equipo PPA9 se encuentran estas otros mdulos: Zentyal-antivirus: antivirus ClamAV integra con otros mdulos como el proxy, archivo compartir o MailFilter. Los Zentyal-asterisco: configura Asterisk para proporcionar un PBX basado en LDAP simple con autenticacin. Zentyal-bwmonitor: permite controlar el uso de ancho de banda de sus clientes de la LAN. Zentyal-captiveportal: integra un portal cautivo con el firewall y los usuarios de LDAP y grupos. Zentyal-eBackup: permite realizar copias de seguridad programadas de su servidor utilizando el popular duplicidad de herramienta de copia de seguridad. Zentyal-ftp: permite configurar un servidor FTP con la autenticacin basada en LDAP.
7 https://launchpad.net/ ~ Zentyal / 8 https://help.ubuntu.com/12.04/ubuntu-help/addremove-ppa.html 9 https://launchpad.net/ ~ Zentyal /

87

Administracin remota

Zentyal-IDS: integra un sistema de deteccin de intrusiones en la red. Zentyal-ipsec: permite configurar tneles IPSec utilizando Openswan. Zentyal-mac.com: integra el servidor ejabberd XMPP con los usuarios y grupos LDAP. Zentyal-thinclients: una solucin basada en LTSP los clientes ligeros. Zentyal-mail: una pila de correo electrnico completa, incluyendo Postfix y Dovecot con el backend LDAP. Zentyal-MailFilter: configura amavisd con la pila de correo para filtrar el spam y los virus adjunto. Zentyal monitores: integra collectd para supervisar el rendimiento de servidores y servicios que se ejecutan. Zentyal-PPTP: permite configurar un servidor VPN PPTP. Zentyal de radio: se integra con FreeRADIUS usuarios y grupos LDAP. Zentyal de software: interfaz sencilla de manejar los mdulos instalados y el sistema de Zentyal actualizaciones. Zentyal-trafficshaping: el trfico de la limitacin configura las reglas para hacer el lmite de ancho de banda y mejorar la latencia. Zentyal-UserCorner: permite al usuario editar sus propios atributos LDAP utilizando un navegador web. Zentyal-virt: interfaz sencilla para crear y gestionar mquinas virtuales basadas en libvirt. Zentyal-webmail: permite acceder a su correo usando el popular correo web Roundcube. Zentyal-servidor web: configura el servidor web Apache para alojar sitios diferentes en su equipo. Zentyal-Zarafa: integra Zarafa groupware suite con pila de correo de Zentyal y LDAP.

3,2. Primeros pasos


Cualquier cuenta del sistema perteneciente al grupo sudo est permitido para acceder a la interfaz web de Zentyal. Si est utilizando el usuario creado durante la instalacin, este debe estar en el grupo sudo por defecto. Si necesita agregar otro usuario al grupo sudo, slo hay que ejecutar:

sudo sudo adduser nombre de usuario

Para acceder a la interfaz web de Zentyal, navegar en https://localhost/ (o la IP de su servidor remoto). Como Zentyal crea su propio certificado auto-firmado SSL, usted tendr que aceptar una excepcin de seguridad en la su navegador. Una vez conectado, ver el cuadro de instrumentos con una visin general de su servidor. Para configurar cualquiera de los caractersticas de los mdulos instalados, vaya a las diferentes secciones en el men de la izquierda. Al realizar cualquier cambios, en de esquina superior derecha aparece cambios rojo Guardar losen el servidor, el que debe pulsar para salvar los cambios la configuracin. Para aplicar estos un color de configuracin cambios botn mdulo debe ser a todos en primer lugar, usted puede hacerlo desde la Estado del mdulo entrada en el men de la izquierda. Cada permiti vez que se habilita un mdulo, un pop-up aparecer que pide la confirmacin para llevar a cabo las acciones necesarias y los cambios en el servidor y los archivos de configuracin. 88

Administracin remota

Si necesita personalizar cualquier archivo de configuracin o ejecutar ciertas acciones (scripts o comandos) para configurar las caractersticas no disponibles en el lugar de Zentyal las plantillas de configuracin de archivos personalizados en / etc / o recibos de Zentyal o <module> / y los ganchos en / etc / Zentyal / hooks / <module>. <accin>.

3,3. Referencias
Documentacin Oficial de Zentyal
10 pginas.

Vase tambin Documentacin de la Comunidad de Zentyal11


pginas.

Y no se olvide de visitar el foro 12 para la comunidad solicita apoyo, informacin, caractersticas, etc

10 http://doc.zentyal.org/~~V 11 http://trac.zentyal.org/wiki/Documentation 12 http://forum.zentyal.org/~~V

89

Captulo 7. Autenticacin de red


Esta seccin se aplica LDAP para la autenticacin de red y la autorizacin.

90

Autenticacin de red

1. OpenLDAP Servidor
El Lightweight Directory Access Protocol o LDAP, es un protocolo para consultar y modificar X.500 un directorio basado en servicio que se ejecuta a travs de TCP / IP. La versin actual es LDAP LDAPv3, como define en RFC45101, y la implementacin de LDAP utilizado en Ubuntu es OpenLDAP, actualmente en la versin 2.4.25 (onrico). As que este protocolo de acceso a directorios LDAP. Estos son algunos conceptos y trminos clave: Un directorio LDAP es un rbol de datos entradas que es de naturaleza jerrquica y se llama el Directorio rbol de la Informacin (DIT). Una entrada consiste en un conjunto de los atributos. Un atributo tiene un tipo (Un nombre / descripcin) y una o ms valores. Cada atributo debe estar definido en al menos un objectClass. Los atributos y clases de objetos se definen en esquemas (Una clase de objeto es actualmente considerada como una tipo especial de atributo). Cada entrada tiene un identificador nico: es Nombre completo (DN DN). Esto consiste en que es Relativo Nombre completo (RDN), seguido por el DN de la entrada de los padres. DN de la entrada no es un atributo. No se considera parte de la propia entrada. Los trminos objeto, contenedor, y nodo tiene ciertas connotaciones, pero en esencia todos significa lo mismo que de entrada, el trmino tcnicamente correcto. Por ejemplo, a continuacin tenemos una sola entrada que consta de 11 atributos. Es la DN es "cn = John Prez, dc = ejemplo, dc = com ", es RDN es" cn = John Doe ", y su padre es DN" dc = ejemplo, dc = com ".

dn: cn = John Doe, dc = ejemplo, dc = com cn: Juan Prez givenName: John SN: Prez telephoneNumber: +1 888 555 6789 telephoneNumber: +1 888 555 1232 mail: john@example.com manager: cn = Larry Smith, dc = ejemplo, dc = com objectClass: inetOrgPerson objectClass: organizationalPerson objectClass: persona objectClass: top

La entrada de arriba es en LDIF formato (LDAP Data Interchange Format). Cualquier informacin que usted alimenta a en su DIT tambin debe ser de tal formato. Se define en RFC28492. Aunque esta gua se describe cmo se utiliza para la autenticacin central, LDAP sirve para nada que involucra a un gran nmero de solicitudes de acceso a una mayor parte de lectura, basada en atributos (nombre: valor)
1 http://tools.ietf.org/html/rfc4510 2 http://tools.ietf.org/html/rfc2849

91

Autenticacin de red

back-end. Los ejemplos incluyen una libreta de direcciones, una lista de direcciones de correo electrnico, y un servidor de correo es configuracin.

1,1. Instalacin
Instale el demonio del servidor OpenLDAP y los servicios tradicionales de gestin de LDAP. Estos son en los empaques de slapd y ldap-utils, respectivamente. La instalacin de slapd crear una configuracin de trabajo. En particular, se crear una base de datos instancia que se puede utilizar para almacenar sus datos. Sin embargo, el sufijo (o base DN) de este ejemplo ser determina a partir del nombre de dominio de la mquina local. Si quieres algo diferente, editar / Etc / hosts y reemplazar el nombre de dominio con uno que le dar el sufijo que desee. Por ejemplo, si quiero un sufijo de dc = ejemplo, dc = com a continuacin, su imagen tendr una lnea similar a esta:

127.0.1.1

hostname.example.com nombre de host

Puede revertir el cambio despus de la instalacin del paquete. En esta gua se utilizar un sufijo base de datos de dc = ejemplo, dc = com.

Proceda con la instalacin:

sudo apt-get install slapd ldap-utils

Desde Ubuntu 8.10 slapd est diseado para ser configurado en slapd s, dedicando una por separado DIT para ese propsito. Esto permite que uno dinmicamente configurar slapd sin la necesidad de reiniciar el servicio. Esta base de datos de configuracin se compone de una coleccin de archivos LDIF de texto ubicados en / etc / ldap / slapd.d. Esta forma de trabajar que se conoce por varios nombres: el mtodo de configuracin de slapd-, el Mtodo de RTC (configuracin en tiempo real), o el mtodo de cn = config. Puede seguir utilizando el tradicional el mtodo de archivo plano (slapd.conf), pero no es recomendable, y la funcin ser finalmente eliminado.

Ubuntu utiliza ahora el slapd-config mtodo de configuracin de slapd y esta gua refleja que.

Durante la instalacin se le pedir que defina las credenciales administrativas. Se trata de LDAP basados en las credenciales para el rootdn de la instancia de base de datos. De forma predeterminada, DN del usuario es cn = admin, dc = ejemplo, dc = com. Tambin por defecto, no hay ninguna cuenta administrativa creada para el slapd-config base de datos y por lo tanto, tendr que autenticarse con el servidor LDAP externo con el fin de acceder a ella. Vamos a ver cmo hacer esto ms adelante. Algunos esquemas clsicos (coseno, nis, inetorgperson) viene incorporado con slapd hoy en da. Tambin hay incluye un "ncleo" del esquema, un pre-requisito para cualquier esquema de trabajo.

92

Autenticacin de red

1,2. Post-instalacin de Inspeccin


El proceso de instalacin creado 2 DIT. Uno de slapd-config y otra para sus propios datos (Dc = ejemplo, dc = com). Vamos a echar un vistazo. Esto es lo que la base de datos slapd-config / DIT parece. Recordemos que esta base de datos LDIF y basado en vive bajo / Etc / ldap / slapd.d:

/ Etc / ldap / slapd.d / # # # Cn = config # # # # # # # # = mdulo {0}. ldif cn # # # = Schema CN # # # # Cn = {0} core.ldif # # # # Cn = {1} cosine.ldif # # # # Cn = {2} nis.ldif

# # # # # #

# # # # Cn = {3} inetorgperson.ldif # # # Cn = schema.ldif # # # OlcBackend = {0} hdb.ldif # # # OlcDatabase = {0} config.ldif # # # OlcDatabase = {1} frontend.ldif # # # OlcDatabase = {1} hdb.ldif

# # # Cn = config.ldif

No modifique la base de datos slapd-config directamente. Haga los cambios a travs del protocolo LDAP (Servicios pblicos). Esto es lo que las miradas DIT slapd-config como a travs del protocolo LDAP:

ldapsearch-Q-LLL-Y EXTERNA sudo-H ldapi :/ / /-B DN cn = config dn: cn = config dn: cn = mdulo {0}, cn = config dn: cn = schema, cn = config dn: cn = {0} ncleo, CN = Schema, cn = config dn: cn = {1} coseno, CN = Schema, cn = config dn: cn = {2} nis, CN = Schema, cn = config dn: cn = {3} inetorgperson, CN = Schema, cn = config dn: olcBackend = {0} hdb, cn = config dn: olcDatabase = {1} frontend, cn = config

93

Autenticacin de red
dn: olcDatabase = {0} de configuracin, cn = config dn: olcDatabase = {1} hdb, cn = config

Explicacin de las entradas: cn = config: configuracin global cn = mdulo {0}, cn = config: un mdulo de carga dinmica CN = Schema, cn = config: contiene codificada a nivel de sistema de esquema cn = {0} ncleo, CN = Schema, cn = config: la rgida central del esquema cn = {1} coseno, CN = Schema, cn = config: el esquema del coseno cn = {2} nis, CN = Schema, cn = config: el esquema de NIS cn = {3} inetorgperson, CN = Schema, cn = config: el esquema InetOrgPerson olcBackend = {0} hdb, cn = config: tipo de almacenamiento backend 'hdb' olcDatabase = {1} frontend, cn = config: base de datos de interfaz, por defecto la configuracin de otras bases de datos olcDatabase = {0} de configuracin, cn = config: slapd configuracin de base de datos (cn = config) olcDatabase = {1} hdb, cn = config: su base de datos de instancia (dc = examle, dc = com) Esto es lo que dc = ejemplo, dc = com miradas DIT como:

ldapsearch-x-LLL-H ldap :/ / /-b dc = ejemplo, dc = com dn dn: dc = ejemplo, dc = com dn: cn = admin, dc = ejemplo, dc = com

Explicacin de las entradas: dc = ejemplo, dc = com: base de la DIT cn = admin, dc = ejemplo, dc = com: administrador (rootdn) para este DIT (creado durante el paquete instalar)

1,3. Modificar / Llenar su base de datos


Vamos a introducir algn contenido a nuestra base de datos. Vamos a aadir lo siguiente: un nodo denominado Personas (Para almacenar los usuarios) un nodo denominado Grupos (Para almacenar grupos) un grupo llamado mineros un usuario llamado Juan Crear el archivo LDIF siguiente y lo llaman add_content.ldif:

dn: ou = People, dc = ejemplo, dc = com

94

Autenticacin de red
objectClass: organizationalUnit ou: personas dn: ou = grupos, dc = ejemplo, dc = com objectClass: organizationalUnit ou: Grupos dn: cn = mineros, ou = grupos, dc = ejemplo, dc = com objectClass: posixGroup NC: mineros gidNumber: 5000 dn: uid = Juan, ou = People, dc = ejemplo, dc = com objectClass: inetOrgPerson objectClass: posixAccount objectClass: shadowAccount uid: juan SN: Prez givenName: John cn: Juan Prez

displayName: Juan Prez uidNumber: 10000 gidNumber: 5000 userPassword: johnldap gecos: Juan Prez loginShell: / bin / bash directorio home: / home / juan

Es importante que los valores de uid y gid en su directorio de no chocar con los valores locales. Utilizar rangos altos de nmero, como a partir de 5000. Al establecer el uid y gid en valores de alta ldap, que tambin permiten un control ms fcil de lo que se puede hacer con un usuario local frente a un ldap uno. Ms en que ms tarde. Aadir el contenido:

ldapadd-x-D cn = admin, dc = ejemplo, dc = com-W-f add_content.ldif Escriba la contrasea LDAP: ******** la adicin de nueva entrada "ou = People, dc = ejemplo, dc = com" la adicin de nueva entrada "ou = grupos, dc = ejemplo, dc = com" la adicin de nueva entrada "cn = mineros, ou = grupos, dc = ejemplo, dc = com" la adicin de nueva entrada "uid = Juan, ou = People, dc = ejemplo, dc = com"

Podemos comprobar que la informacin se ha aadido correctamente con la utilidad ldapsearch:

ldapsearch-x-LLL-b dc = ejemplo, dc = com 'uid = john' cn gidNumber

95

Autenticacin de red
dn: uid = Juan, ou = People, dc = ejemplo, dc = com cn: Juan Prez gidNumber: 5000

Explicacin de los interruptores: -X: "Simple" vinculante; no usar el valor por defecto el mtodo SASL -LLL: desactivar la impresin de informacin superflua uid = John: un "filtro" para encontrar el usuario juan cn gidNumber: solicitudes de ciertos atributos a visualizar (el valor por defecto es mostrar todos los atributos)

1,4. Modificacin de la base de datos de configuracin de slapd


El DIT slapd-config tambin se puede consultar y modificar. Aqu hay algunos ejemplos. Use ldapmodify para aadir un "ndice" (DbIndex atributo) a su {1} hdb, cn = base de datos de configuracin (Dc = ejemplo, dc = com). Cree un archivo, lo llaman uid_index.ldif, Con el siguiente contenido:
dn: olcDatabase = {1} hdb, cn = config aadir: olcDbIndex olcDbIndex: uid eq, pres, sub

A continuacin, ejecute el comando:

sudo ldapmodify-Q-Y EXTERNA-H ldapi :/ / /-f uid_index.ldif modificar la entrada "olcDatabase = {1} hdb, cn = config"

Puede confirmar el cambio de esta manera:

ldapsearch-Q-LLL-Y EXTERNA sudo-H ldapi :/ / / b \ cn = config "(olcDatabase = {1} hdb) 'olcDbIndex

dn: olcDatabase = {1} hdb, cn = config olcDbIndex: objectClass eq olcDbIndex: uid eq, pres, sub

Vamos a aadir un esquema. En primer lugar, tendr que ser convertido a formato LDIF. Usted puede encontrar inconverso esquemas, adems de los convertidos en el / Etc / ldap / schema directorio. No es trivial para quitar un esquema de la base de datos slapd-config. Practique la adicin de esquemas en un sistema de prueba. Antes de realizar un esquema, se debe verificar qu esquemas ya estn instalados (Que se muestra es un defecto, fuera de la caja de salida):

96

Autenticacin de red

ldapsearch-Q-LLL-Y EXTERNA sudo-H ldapi :/ / / b \ cn = schema, cn = config dn dn: cn = schema, cn = config dn: cn = {0} ncleo, CN = Schema, cn = config dn: cn = {1} coseno, CN = Schema, cn = config dn: cn = {2} nis, CN = Schema, cn = config dn: cn = {3} inetorgperson, CN = Schema, cn = config

En el siguiente ejemplo vamos a aadir el esquema CORBA.

1.

Crear el fichero de configuracin de conversin schema_convert.conf con las siguientes lneas:

include / etc / ldap / schema / core.schema include / etc / ldap / schema / collective.schema include / etc / ldap / schema / corba.schema include / etc / ldap / schema / cosine.schema include / etc / ldap / schema / duaconf.schema include / etc / ldap / schema / dyngroup.schema include / etc / ldap / schema / inetorgperson.schema include / etc / ldap / schema / java.schema include / etc / ldap / schema / misc.schema include / etc / ldap / schema / nis.schema include / etc / ldap / schema / openldap.schema include / etc / ldap / schema / ppolicy.schema include / etc / ldap / schema / ldapns.schema include / etc / ldap / schema / pmi.schema

2. 3.

Crear el directorio de salida ldif_output. Determinar el ndice del esquema:

slapcat-f-F schema_convert.conf ldif_output-n 0 | grep CORBA, CN = Schema cn = {1} CORBA, CN = Schema, cn = config

Cuando los objetos injests slapd con el DN padre del mismo se crear una ndice para que objeto. Un ndice se encuentra entre llaves: {X}. 4. Utilice slapcat para llevar a cabo la conversin:

slapcat-f-F schema_convert.conf ldif_output-n0-H \ ldap :/ / / cn = {1} CORBA, CN = Schema, cn = config-l = cn corba.ldif

El esquema convierte ahora est en cn = corba.ldif 97

Autenticacin de red

5.

Editar cn = corba.ldif para llegar a los siguientes atributos:

dn: cn = corba, CN = Schema, cn = config ... cn: corba

Quite tambin las siguientes lneas de la parte inferior:

structuralObjectClass: olcSchemaConfig entryUUID: 52109a02-66ab-1030-8be2-bbf166230478 creatorsName: cn = config createTimestamp: 20110829165435Z entryCSN: 20110829165435.935248Z # 000000 # 000 # 000000 modifiersName: cn = config

modifyTimestamp: 20110829165435Z

Sus valores de los atributos pueden variar. 6. Por ltimo, utilice ldapadd para agregar el nuevo esquema al DIT slapd-config:

sudo ldapadd-Q-Y EXTERNA-H ldapi :/ / /-f cn \ = corba.ldif la adicin de nueva entrada "cn = corba, CN = Schema, cn = config"

7.

Confirme esquemas cargados:

sudo ldapsearch-Q-LLL-Y EXTERNA-H ldapi :/ / /-b cn = schema, cn = config dn dn: cn = schema, cn = config dn: cn = {0} ncleo, CN = Schema, cn = config dn: cn = {1} coseno, CN = Schema, cn = config dn: cn = {2} nis, CN = Schema, cn = config dn: cn = {3} inetorgperson, CN = Schema, cn = config dn: cn = {4} CORBA, CN = Schema, cn = config

Para aplicaciones externas y clientes para autenticarse usando LDAP que cada uno necesita especficamente configurado para ello. Consulte el caso del lado del cliente la documentacin para detalles.

98

Autenticacin de red

1,5. Inicio de sesin


Registro de actividades para slapd es indispensable en la aplicacin de una solucin basada en OpenLDAP an que debe ser activado manualmente despus de la instalacin de software. De lo contrario, slo los mensajes rudimentarios aparecer en los registros. Registro, al igual que cualquier otra configuracin slapd, est habilitada a travs de la configuracin de slapdbase de datos. OpenLDAP viene con mltiples subsistemas de registro (los niveles) con cada uno que contiene la ms baja (Aditivo). Un buen nivel para tratar de es estadsticas. La slapd-config3 pgina el hombre tiene ms que decir sobre las diferentes subsistemas.

Cree el archivo logging.ldif con el siguiente contenido:

dn: cn = config changetype: modificar aadir: olcLogLevel olcLogLevel: estadsticas

Implementar el cambio:

sudo ldapmodify-Q-Y EXTERNA-H ldapi :/ / /-f logging.ldif

Esto producir una cantidad significativa de la tala y que va a querer el acelerador de nuevo a una menos detallado el nivel una vez que su sistema se encuentra en produccin. En este modo detallado el motor de su anfitrin syslog (Rsyslog) pueden tener dificultades para mantenerse al da y puede eliminar los mensajes:
rsyslogd-2177: imuxsock perdi 228 mensajes de pid 2547 debido a la limitante de la velocidad

Usted puede considerar un cambio a la configuracin de rsyslog. En / Etc / rsyslog.conf, Ponga:


# Deshabilitar la limitacin de velocidad # (Por defecto es de 200 mensajes en 5 segundos, a continuacin hacemos el 5 a 0) $ 0 SystemLogRateLimitInterval

Y a continuacin, reinicie el demonio rsyslog:

rsyslog servicio sudo reiniciar

1,6. Replicacin
El servicio LDAP cada vez ms importante a medida que ms sistemas en red comienzan a depender de ello. En tal ambiente, es una prctica habitual para construir la redundancia (alta disponibilidad) en LDAP prevenir el caos si el servidor LDAP que no responda. Esto se realiza mediante La replicacin de LDAP.

3 http://manpages.ubuntu.com/manpages/en/man5/slapd-config.5.html

99

Autenticacin de red

La replicacin se realiza a travs de la Syncrepl motor. Esto permite que los cambios se sincronizan con un Consumidor -Proveedor modelo. El tipo especfico de la replicacin vamos a implementar en esta gua es un combinacin de los modos siguientes: refreshAndPersist y delta-syncrepl. Esto tiene el proveedor de impulsar cambiado las entradas para el consumidor, tan pronto como se les hizo, pero, adems, slo los cambios reales Se enviar, no entradas completas. 1.6.1. Proveedor de configuracin Comience por la configuracin de la Proveedor. 1. Crear un archivo LDIF con el siguiente contenido y el nombre de provider_sync.ldif:

# Aadir los ndices de la base de datos de la interfaz. dn: olcDatabase = {1} hdb, cn = config changetype: modificar aadir: olcDbIndex olcDbIndex: entryCSN eq aadir: olcDbIndex olcDbIndex: entryUUID eq # Cargue el syncprov y los mdulos de accesslog. dn: cn = mdulo {0}, cn = config changetype: modificar aadir: olcModuleLoad olcModuleLoad: syncprov aadir: olcModuleLoad olcModuleLoad: accesslog

# Accesslog definiciones de base de datos dn: olcDatabase = {2} hdb, cn = config objectClass: olcDatabaseConfig objectClass: olcHdbConfig olcDatabase: {2} hdb olcDbDirectory: / var / lib / ldap / accesslog olcSuffix: cn = accesslog olcRootDN: cn = admin, dc = ejemplo, dc = com olcDbIndex: default eq olcDbIndex: entryCSN, objectClass, reqEnd, reqResult, reqStart # Accesslog syncprov db. dn: olcOverlay = syncprov, olcDatabase = {2} hdb, cn = config changetype: agregue objectClass: olcOverlayConfig objectClass: olcSyncProvConfig olcOverlay: syncprov olcSpNoPresent: TRUE olcSpReloadHint: TRUE

100

Autenticacin de red
Proveedor # syncrepl para db primaria dn: olcOverlay = syncprov, olcDatabase = {1} hdb, cn = config changetype: agregue objectClass: olcOverlayConfig objectClass: olcSyncProvConfig olcOverlay: syncprov olcSpNoPresent: TRUE

# Accesslog definiciones de superposicin para db primaria dn: olcOverlay = accesslog, olcDatabase = {1} hdb, cn = config objectClass: olcOverlayConfig objectClass: olcAccessLogConfig olcOverlay: accesslog olcAccessLogDB: cn = accesslog olcAccessLogOps: escribe olcAccessLogSuccess: TRUE # Escanear la base de datos accesslog todos los das, y las entradas de purga de ms de 7 das olcAccessLogPurge: 07 +00:00 01 +00:00

Cambiar el rootdn en el archivo LDIF para que coincida con el que usted tiene para el directorio. 2. El perfil de AppArmor para slapd tendr que ser ajustado para la ubicacin de la base de datos accesslog. Editar / Etc / apparmor.d / local / usr.sbin.slapd aadiendo el siguiente:

/ Var / lib / ldap / accesslog / r, / Var / lib / ldap / accesslog / ** RWK,

Cree un directorio, crear un archivo de configuracin databse, y volver a cargar el perfil de AppArmor:
sudo-u openldap mkdir / var / lib / ldap / accesslog sudo-u openldap cp / var / lib / ldap / DB_CONFIG / var / lib / ldap / accesslog servicio de recarga sudo apparmor

3.

Aadir el nuevo contenido y, debido al cambio de AppArmor, reiniciar el demonio:

sudo ldapadd-Q-Y EXTERNA-H ldapi :/ / provider_sync.ldif /-f sudo service slapd restart

El proveedor est configurado. 1.6.2. Configuracin del Consumidor Y ahora configurar el Del Consumidor. 1. Instale el software pasando a travs de Seccin 1.1, "Instalacin" [p. 92]. Asegrese de que el slapd-config databse es idntica a la del proveedor. En particular, hacer esquemas de seguros y los sufijo databse son los mismos. 2. Crear un archivo LDIF con el siguiente contenido y el nombre de consumer_sync.ldif:

101

Autenticacin de red
dn: cn = mdulo {0}, cn = config changetype: modificar aadir: olcModuleLoad olcModuleLoad: syncprov dn: olcDatabase = {1} hdb, cn = config changetype: modificar aadir: olcDbIndex olcDbIndex: entryUUID eq -

aadir: olcSyncRepl olcSyncRepl: rid = 0 = proveedor de LDAP :/ / ldap01.example.com bindmethod = sencilla binddn = "cn = adm = EXA credenciales = secreta searchbase = "dc = ejemplo, dc = com" logbase = "cn = accesslog" logfilter = "(& (objectClass = auditWriteObject) (reqResult = 0))" = schemachecking en type = refreshAndPersist retry = "60 +" syncdata = accesslog aadir: olcUpdateRef olcUpdateRef: ldap :/ / ldap01.example.com

Asegrese de que los siguientes atributos tienen los valores correctos: proveedor (Proveedor de nombre de la mquina - ldap01.example.com en este ejemplo - o la direccin IP) binddn (El nombre completo de administracin que se utilice) credenciales (La contrasea de administrador de DN que est utilizando) searchbase (El sufijo base de datos que est utilizando) olcUpdateRef (Nombre o direccin IP del servidor del proveedor) librar (Rplica de identidad, una nica de 3 dgitos que identifica a la rplica. Cada consumidor debe tener en al menos un deshacerse) 3. Aadir el nuevo contenido:

sudo ldapadd-Q-Y EXTERNA-H ldapi :/ / consumer_sync.ldif /-f

Eso es todo. Las dos bases de datos (sufijo: dc = ejemplo, dc = com) debera ser de sincronizacin. 1.6.3. Pruebas Una vez que se inicia la replicacin, se puede monitorear mediante la ejecucin de
ldapsearch-Z1-LLLQY EXTERNA-H ldapi :/ / /-s contextCSN base de dn: dc = ejemplo, dc = com contextCSN: 20120201193408.178454Z # 000000 # 000 # 000000

tanto en el proveedor y el consumidor. Una vez que la salida (20120201193408.178454Z # 000000 # 000 # 000000 en el ejemplo anterior), tanto para partido mquinas, que tienen la replicacin. Cada vez que se realiza un cambio en el proveedor, este valor se cambia y as debera el una en el consumidor (s).

102

Autenticacin de red

Si su conexin es lenta y / o su base de datos LDAP grande, puede ser que tome un tiempo para que los derechos del consumidor contextCSN coincide con el del proveedor. Sin embargo, usted sabr que est avanzando desde la dcada de los consumidores contextCSN ser steadly creciente. Si el consumidor contextCSN Falta o no coincide con el proveedor, usted debe parar y pensar el problema antes de continuar. Intente comprobar el slapd (syslog) y los archivos de registro en el proveedor de autenticacin para ver si las peticiones de los consumidores de autenticacin tuvieron xito o de sus peticiones para recuperar los datos (que parecerse a una gran cantidad de declaraciones ldapsearch) devuelven ningn error. Para probar si funcionaba, simplemente consulta, en el consumidor, el DNS en la base de datos:
ldapsearch-Q-LLL-Y EXTERNA sudo-H ldapi :/ / /-b dc = ejemplo, dc = com dn

Usted debe ver a 'Juan' el usuario y "mineros del grupo, as como de las personas 'de los nodos y' Grupos '.

1,7. Control de Acceso


El manejo del tipo de acceso (lectura, escritura, etc) los usuarios deben concederse a los recursos es conocida como control de acceso. Las directivas de configuracin en cuestin se denominan acceder a las listas de control o ACL. Cuando instalamos el paquete slapd varias ACL se configura automticamente. Vamos a ver unos cuantos importantes consecuencias de los incumplimientos y, al hacerlo, vamos a tener una idea de cmo trabajar y ACL cmo estn configurados.

Para obtener la efectiva ACL para una consulta LDAP que tenemos que mirar a las entradas de la LCA de la base de datos que se consulta, as como los del ejemplo interfaz de base de datos especial. Las ACL que pertenecen a la stos actan como valores por defecto en el caso de los de la antigua no coinciden. La base de datos de interfaz de usuario es el segundo a ser consultados ya la ACL que se aplica es el primero para que coincida ("gana el primer partido") entre ellos 2 fuentes de ligamento cruzado anterior. Los siguientes comandos se dan, respectivamente, las ACL de la base de datos hdb ("Dc = ejemplo, dc = com") y los de la base de datos de interfaz:
ldapsearch-Q-LLL-Y EXTERNA sudo-H ldapi :/ / / b \ cn = config "(olcDatabase = {1} hdb) 'olcAccess

dn: olcDatabase = {1} hdb, cn = config olcAccess: {0} a attrs = userPassword, shadowLastChange por la escritura auto por annimo autenticacin por dn = "cn = admin, dc = ejemplo, dc = com" write by * none olcAccess: {1} a dn.base = "" por la lectura * olcAccess: {2} a * por escritura auto por dn = "cn = admin, dc = ejemplo, dc = com" write by * leer

El rootdn siempre tiene pleno derecho a su base de datos. Su inclusin en una lista ACL proporciona un configuracin explcita, pero tambin hace que slapd a incurrir en una penalizacin de rendimiento.
ldapsearch-Q-LLL-Y EXTERNA sudo-H ldapi :/ / / b \ cn = config "(olcDatabase = {1} frontend) 'olcAccess

103

Autenticacin de red

dn: olcDatabase = {1} frontend, cn = config olcAccess: {0} a * = por dn.exact gidNumber = 0 + uidNumber = 0, cn = peercred, cn = externa, cn = auth manejar por rotura * olcAccess: {1} a dn.exact = "" por la lectura * olcAccess: {2} para dn.base = "cn = subesquema" por leer *

El primer ACL es crucial:

olcAccess: {0} a attrs = userPassword, shadowLastChange por la escritura auto por annimo autenticacin por dn = "cn = admin, dc = ejemplo, dc = com" write by * none

Esto se puede representar de forma diferente para facilitar la digestin:


de attrs = userPassword por la escritura de auto por la autenticacin annima por dn = "cn = admin, dc = ejemplo, dc = com" write por nada * de attrs = shadowLastChange por la escritura de auto por la autenticacin annima por dn = "cn = admin, dc = ejemplo, dc = com" write por nada *

Este compuesto ACL (hay 2) hace cumplir lo siguiente: Acceso Annimo 'auth' se proporciona a la userPassword atributo para la conexin inicial a ocurrir. Tal vez contra-intuitivo, "por autenticacin annima" que se necesita el acceso, incluso cuando annima el DIT no es deseada. Una vez que el extremo remoto est conectado, Howerver, puede producirse la autenticacin (vase el siguiente punto). La autenticacin puede ocurrir porque todos los usuarios tienen "leer" (debido a la "escritura por s mismo) el acceso a la userPassword atributo. El userPassword atributo es inaccesible de otro modo por todos los dems usuarios, con la excepcin del rootdn, que tiene acceso completo a ella. Para que los usuarios a cambiar su propia contrasea, utilizando passwd o de otros servicios pblicos, los shadowLastChange atributo tiene que ser accesible una vez que un usuario se ha autenticado. Este DIT se puede buscar de forma annima debido a la '* por leer "en esta ACL:

a * por la escritura de auto por dn = "cn = admin, dc = ejemplo, dc = com" write por la lectura *

Si esto no es deseado, entonces usted necesita para cambiar las ACL. Para forzar la autenticacin durante una solicitud de enlace alternativamente puede (o en combinacin con la ACL modificada) usar el 'olcRequire: authc' Directiva. 104

Autenticacin de red

Como se mencion anteriormente, no existe una cuenta administrativa creada para la base de datos slapd-config. Hay, sin embargo, una identidad SASL que se concede acceso total a la misma. Representa la de localhost superusuario (root / sudo). Aqu est:

dn.exact = gidNumber = 0 + uidNumber = 0, cn = peercred, cn = externa, cn = auth

El siguiente comando muestra las ACL de la base de datos slapd-config:

ldapsearch-Q-LLL-Y EXTERNA sudo-H ldapi :/ / / b \ cn = config "(olcDatabase = {0} config) 'olcAccess

dn: olcDatabase = {0} de configuracin, cn = config olcAccess: {0} a * = por dn.exact gidNumber = 0 + uidNumber = 0, cn = peercred, cn = externa, cn = auth manejar por rotura *

Como se trata de una identidad SASL tenemos que utilizar un SASL mecanismo cuando se invoca la utilidad LDAP en pregunta y ya lo hemos visto muchas veces en esta gua. Es el mecanismo externo. Ver el comando anterior para ver un ejemplo. Ntese que: 1. 2. Usted debe utilizar sudo para convertirse en la identidad de raz para que el ligamento cruzado anterior de igualar. El mecanismo externo funciona a travs de IPC (UNIX sockets de dominio). Esto significa que usted debe utilizar la ldapi URI formato.

Una forma sucinta para obtener todos los ACL es la siguiente:


ldapsearch-Q-LLL-Y EXTERNA sudo-H ldapi :/ / / b \ cn = config "(olcAccess = *) 'olcSuffix olcAccess

No hay mucho que decir sobre el tema de control de acceso. Consulte la pgina del manual de slapd.access4.

1,8. TLS
Cuando la autenticacin a un servidor OpenLDAP lo mejor es hacerlo a travs de una sesin cifrada. Esto puede llevarse a cabo utilizando Transport Layer Security (TLS). En este sentido, ser nuestra propia Autoridad de Certificacin y luego crear y firmar nuestro certificado de servidor LDAP como que CA. Desde slapd se compila utilizando la biblioteca gnutls, vamos a utilizar la utilidad de certtool completar estas tareas. 1. Instale los paquetes gnutls-bin y ssl-cert:

sudo apt-get install gnutls-bin ssl-cert

2.

Crear una clave privada para la entidad emisora de certificados:

4 http://manpages.ubuntu.com/manpages/en/man5/slapd.access.5.html

105

Autenticacin de red

sudo sh-c "certtool - generate-privkey> / etc / ssl / private / cakey.pem"

3.

Cree la plantilla / archivo / Etc / ssl / ca.info para definir el CA:

cn = Ejemplo de empresa California cert_signing_key

4.

Crear el certificado con firma CA:

certtool sudo - generate-auto-firmado \ - Load-privkey / etc / ssl / private / cakey.pem \ - Plantilla / etc / ssl / ca.info \ - Outfile / etc / ssl / certs / cacert.pem

5.

Haga una clave privada para el servidor:

sudo certtool - generate-privkey \ - Bits de 1024 \ - Outfile / etc/ssl/private/ldap01_slapd_key.pem

6.

Reemplazar ldap01 en el nombre de archivo con el nombre de host de su servidor. Nombrar el certificado y clave para la acogida y el servicio que va a utilizar los ayudar a mantener las cosas claras. Crear el / Etc/ssl/ldap01.info Informacin de archivo que contiene:
organizacin = Ejemplo de empresa cn = ldap01.example.com tls_www_server encryption_key signing_key expiration_days = 3650

El certificado anterior es vlido por 10 aos. Ajuste en consecuencia. 7. Crear el certificado del servidor:

sudo certtool - Generar certificado de \ - Load-privkey / etc/ssl/private/ldap01_slapd_key.pem \ - Load-ca-certificado de / etc / ssl / certs / cacert.pem \ - Load-ca-privkey / etc / ssl / private / cakey.pem \ - Plantilla / etc/ssl/ldap01.info \ - Outfile / etc/ssl/certs/ldap01_slapd_cert.pem

Cree el archivo certinfo.ldif con el siguiente contenido (ajustar en consecuencia, nuestro ejemplo se supone que hemos creado certs con https://www.cacert.org):

dn: cn = config aadir: olcTLSCACertificateFile

106

Autenticacin de red
olcTLSCACertificateFile: / etc / ssl / certs / cacert.pem aadir: olcTLSCertificateFile olcTLSCertificateFile: / etc/ssl/certs/ldap01_slapd_cert.pem aadir: olcTLSCertificateKeyFile olcTLSCertificateKeyFile: / etc/ssl/private/ldap01_slapd_key.pem

Utilice el comando ldapmodify para decirle a slapd sobre nuestro trabajo TLS a travs de la base de datos slapd-config:
sudo ldapmodify-Y EXTERNA-H ldapi :/ / /-f / etc / ssl / certinfo.ldif

Contratry a la creencia popular, no es necesario ldaps :/ / en / Etc / default / slapd el fin de utilizar cifrado. Usted debe tener slo:

SLAPD_SERVICES = "ldap :/ / / ldapi :/ / /"

LDAP sobre SSL / TLS (ldaps :/ /) est en desuso en favor de StartTLS. El ltimo se refiere a una sesin existente LDAP (escuchando en el puerto TCP 389) cada vez protegido por TLS / SSL mientras que LDAPS, como HTTPS, es un claro encriptado-de-la puesta en el protocolo que opera travs del puerto TCP 636.

Apriete propiedad y los permisos:

sudo adduser openldap ssl-cert sudo chgrp ssl-cert / etc/ssl/private/ldap01_slapd_key.pem sudo chmod g + r / etc/ssl/private/ldap01_slapd_key.pem sudo chmod etc/ssl/private/ldap01_slapd_key.pem /

Reinicie OpenLDAP:

sudo service slapd restart

Compruebe los registros de su anfitrin (/ var / log / syslog) para ver si el servidor se ha iniciado correctamente.

1,9. Replicacin y TLS


Si ha configurado la replicacin entre los servidores, es una prctica comn para cifrar (StartTLS) el el trfico de replicacin para evitar evesdropping. Esto es diferente de usar el cifrado con autenticacin como lo hicimos anteriormente. En esta seccin se basar en que el trabajo de TLS de autenticacin. La suposicin aqu es que se han puesto en marcha la replicacin entre proveedor y consumidor de acuerdo a Seccin 1.6, "rplica" [p. 99] y se han configurado para la autenticacin de TLS en el proveedor de siguiente Seccin 1.8, "TLS" [p. 105]. Como se dijo anteriormente, el objetivo (para nosotros) con la replicacin es availablity de alta en el servicio LDAP. Ya que tenemos TLS para la autenticacin en el proveedor vamos a exigir lo mismo en el consumidor. Adems de esto, sin embargo, queremos cifrar el trfico de replicacin. Lo que queda por hacer es

107

Autenticacin de red

crear una clave y un certificado para el consumidor y luego configurar en consecuencia. Vamos a generar el clave / certificado en el proveedor, para evitar tener que crear otro certificado de la CA, y luego transferir la material necesario sobre el consumidor.

1.

En el Proveedor, Crear un directorio que contiene (que ser utilizado para la transferencia final) y luego el Consumidor clave privada:

mkdir ldap02-ssl cd ldap02-ssl sudo certtool - generate-privkey \ - Bits de 1024 \ - Outfile ldap02_slapd_key.pem

Crear un archivo de informacin, ldap02.info, Para el servidor del Consumidor, el ajuste de su valor en consecuencia:
organizacin = Ejemplo de empresa cn = ldap02.example.com tls_www_server encryption_key signing_key expiration_days = 3650

Crear el certificado del consumidor:

sudo certtool - Generar certificado de \ - Load-privkey ldap02_slapd_key.pem \ - Load-ca-certificado de / etc / ssl / certs / cacert.pem \ - Load-ca-privkey / etc / ssl / private / cakey.pem \ - Plantilla de ldap02.info \ - Outfile ldap02_slapd_cert.pem

Obtenga una copia del certificado de la CA:

cp / etc / ssl / certs / cacert.pem.

Ya hemos terminado. Ahora transferir el ldap02-ssl directorio para el consumidor. Aqu usamos scp (ajuste en consecuencia):

cd .. usuario scp-r ldap02-ssl @ de los consumidores:

2.

En el consumidor, Configurar la autenticacin TLS:

108

Autenticacin de red

sudo apt-get install ssl-cert sudo adduser openldap ssl-cert sudo cp ldap02_slapd_cert.pem cacert.pem / etc / ssl / certs sudo cp ldap02_slapd_key.pem / etc / ssl / private sudo chgrp ssl-cert / etc/ssl/private/ldap02_slapd_key.pem sudo chmod g + r / etc/ssl/private/ldap02_slapd_key.pem sudo chmod etc/ssl/private/ldap02_slapd_key.pem /

Cree el archivo / Etc / ssl / certinfo.ldif con el siguiente contenido (los ajustes correspondientes):

dn: cn = config aadir: olcTLSCACertificateFile olcTLSCACertificateFile: / etc / ssl / certs / cacert.pem aadir: olcTLSCertificateFile olcTLSCertificateFile: / etc/ssl/certs/ldap02_slapd_cert.pem -

aadir: olcTLSCertificateKeyFile olcTLSCertificateKeyFile: / etc/ssl/private/ldap02_slapd_key.pem

Configurar la base de datos slapd-config:

sudo ldapmodify-Y EXTERNA-H ldapi :/ / /-f certinfo.ldif

Configurar / Etc / default / slapd como en el proveedor (SLAPD_SERVICES). 3. En el consumidor, Configuracin de TLS para la replicacin del Consumidor-lado. Modificar el actual olcSyncrepl atributo viradas en algunas de las opciones de TLS. De este modo, se ver, por primera vez, la forma de cambiar un atributo de valor (s).

Cree el archivo consumer_sync_tls.ldif con el siguiente contenido:

dn: olcDatabase = {1} hdb, cn = config reemplazar: olcSyncRepl olcSyncRepl: rid = 0 = proveedor de LDAP :/ / ldap01.example.com bindmethod = sencilla binddn = "cn = admin, dc = ejemplo, dc = com" credentials = secreta searchbase = "dc = ejemplo, dc = com" logbase = "cn = accesslog" logfilter = "(& (objectClass = auditWriteObject) (reqResult = 0))" = schemachecking sobre el tipo = refreshAndPersist retry = "60 +" syncdata = accesslog STARTTLS = crtico tls_reqcert = demanda

Las opciones adicionales especificar, respectivamente, que el consumidor debe utilizar StartTLS y que la CA certificado es necesario para verificar la identidad del proveedor. Tambin tenga en cuenta la sintaxis LDIF para el cambio los valores de un atributo ("sustituir"). Poner en prctica estos cambios:

sudo ldapmodify-Y EXTERNA-H ldapi :/ / /-f consumer_sync_tls.ldif

109

Autenticacin de red

Y reiniciar slapd:

sudo service slapd restart

4.

En el Proveedor, Compruebe que una sesin TLS se ha establecido. En / Var / log / syslog, Siempre y cuando tengas 'Conns' registro a nivel establecido, debera ver mensajes similares a:

slapd slapd slapd slapd slapd slapd slapd slapd

[3620]: [3620]: [3620]: [3620]: [3620]: [3620]: [3620]: [3620]:

conn conn conn conn conn conn conn conn

= = = = = = = =

1047fd 1047op 1047op 1047op

= = = =

20 = ACEPTAR desde la IP 10.153.107.229:57922 (IP = 0.0.0.0:389) 0 EXT oid = 1.3.6.1.4.1.1466.20037 0 STARTTLS 0 RESULTADO oid = err = 0 text =

1047fd = 20 TLS establecido tls_ssf = 128 = 128 ssf 1047op = 1 DN de enlace = "cn = admin, dc = ejemplo, dc = com" method = 128 1047op = 1 DN de enlace = "cn = admin, dc = ejemplo, dc = com" mech = SIMPLE 1047SSF = 0 op = 1 RESULT tag = 97 err = 0 text

1,10. Autenticacin LDAP


Una vez que tenga un servidor LDAP de trabajo, tendr que instalar las libreras en el cliente que se sabe cmo y cundo comunicarse con ella. En Ubuntu, este ha sido tradicionalmente accomplishd mediante la instalacin de la libnss-ldap paquete. Este paquete traer otras herramientas que le ayudarn en la configuracin el paso. Instalar este paquete ahora:

sudo apt-get install libnss-ldap

Se le pedir para los detalles de su servidor LDAP. Si usted comete un error, puede volver a intentarlo mediante:

sudo dpkg-reconfigure ldap-auth-config

Los resultados del dilogo se puede ver en / Etc / ldap.conf. Si el servidor requiere opciones no estn cubiertos en el men de editar este archivo en consecuencia. Ahora configurar el perfil de LDAP para NSS:

sudo auth-client-config-t NSS-p lac_ldap

Configurar el sistema para utilizar LDAP para la autenticacin:

sudo pam-auth-update

Desde el men, seleccione LDAP y los mecanismos de autenticacin que necesita. Ahora debera ser capaz de iniciar sesin con credenciales basados en LDAP.

110

Autenticacin de red

Los clientes LDAP tendr que referirse a varios servidores si la replicacin est en uso. En / Etc / ldap.conf usted tendra algo as como:
uri ldap :/ / ldap01.example.com ldap :/ / ldap02.example.com

La solicitud ser el tiempo de espera y el Consumidor (ldap02) tratar de alcanzar si el proveedor (Ldap01) deja de responder. Si usted va a utilizar LDAP para almacenar usuarios Samba tendr que configurar el servidor Samba autenticarse usando LDAP. Ver Seccin 2, "Samba y LDAP" [p. 117] para ms detalles. Una alternativa al paquete de libnss-ldap es el paquete de libnss-ldapd. Esto, sin embargo, se poner en el paquete nscd que no es problably quera. Basta con retirar una olla.

1,11. Administracin de usuarios y Grupo


El paquete ldap-utils viene con utilidades suficientes para manejar el directorio, pero la larga cadena de opciones que se necesitan pueden hacer que una carga para su uso. El paquete contiene ldapscripts guiones envoltorio para estas utilidades que algunas personas encuentran ms fcil de usar. Instala el paquete:

sudo apt-get install ldapscripts

A continuacin, edite el archivo / Etc / ldapscripts o ldapscripts.conf llegar a algo similar al siguientes:

SERVER = localhost Binddn = "cn = admin, dc = ejemplo, dc = com ' BINDPWDFILE = "/ etc / ldapscripts / ldapscripts.passwd" SUFIJO = "dc = ejemplo, dc = com ' GSUFFIX = "ou = Grupos de USUFFIX = 'Los ou = People' MSUFFIX = 'Los ou = Computers' GIDSTART = 10000 UIDSTART = 10000 MIDSTART = 10000

Ahora, cree el ldapscripts.passwd presentar para permitir el acceso rootdn en el directorio:

"" secreto "echo-n> / etc / ldapscripts / ldapscripts.passwd" sudo sh-c sudo chmod 400 / etc / ldapscripts o ldapscripts.passwd

Vuelva a colocar "secreto" con la contrasea real para el usuario rootdn de su base de datos. Los guiones estn listos para ayudar a manejar su directorio. Estos son algunos ejemplos de cmo utilizar ellos:

111

Autenticacin de red

Crear un nuevo usuario:

sudo ldapadduser George ejemplo

Esto crear un usuario con UID george y establecer el grupo principal del usuario (GID) ejemplo Cambiar la contrasea de un usuario:

sudo ldapsetpasswd George Cambio de contrasea para el usuario uid = george, ou = People, dc = ejemplo, dc = com Nueva contrasea: Nueva Contrasea (verificar):

Eliminar un usuario:

sudo George ldapdeleteuser

Adicin de un grupo:

sudo qa ldapaddgroup

Eliminar un grupo:

sudo qa ldapdeletegroup

Aadir un usuario a un grupo:

sudo ldapaddusertogroup george qa

Ahora debe ver una memberUid atributos para el qa grupo con un valor de george. Quitar un usuario de un grupo:

sudo ldapdeleteuserfromgroup george qa

La memberUid atributo ahora debe ser removido del qa grupo. El guin ldapmodifyuser le permite agregar, quitar o cambiar los atributos de un usuario. El script usa la misma sintaxis que la utilidad ldapmodify. Por ejemplo:

sudo George ldapmodifyuser # Acerca de modificar la siguiente entrada: dn: uid = george, ou = People, dc = ejemplo, dc = com objectClass: Cuenta objectClass: posixAccount cn: george uid: george uidNumber: 1001 gidNumber: 1001 directorio home: / home / George

112

Autenticacin de red
loginShell: / bin / bash gecos: george Descripcin: Cuenta de usuario userPassword :: e1NTSEF9eXFsTFcyWlhwWkF1eGUybVdFWHZKRzJVMjFTSG9vcHk = # Introducir las modificaciones aqu, terminar con CTRL-D. dn: uid = george, ou = People, dc = ejemplo, dc = com reemplazar: gecos gecos: George Carlin

El usuario gecos Ahora debera ser "George Carlin". Una buena caracterstica de ldapscripts es el sistema de plantillas. Las plantillas le permiten personalizar el atributos de objectes usuario, grupo, y la mquina. Por ejemplo, para permitir que el usuario edicin de la plantilla /
Etc / ldapscripts o ldapscripts.conf

cambiando:

UTEMPLATE = "/ etc / ldapscripts / ldapadduser.template"

Hay muestra plantillas en el / Etc / ldapscripts directorio. Copiar o cambiar el nombre del ldapadduser.template.sample presentar a la / Etc / ldapscripts o ldapadduser.template:

sudo cp / usr / share / doc / ldapscripts / examples / ldapadduser.template.sample \ / Etc / ldapscripts o ldapadduser.template

Editar la nueva plantilla para agregar los atributos deseados. A continuacin se va a crear nuevos usuarios con un objectClass de inetOrgPerson:

dn: uid = <usuario>, <usuffix>, <sufijo> objectClass: inetOrgPerson objectClass: posixAccount cn: <usuario> SN: <ask> uid: <usuario> uidNumber: <uid> gidNumber: <gid> homeDirectory: <Inicio> loginShell: <shell> gecos: <usuario> Descripcin: Cuenta de usuario Ttulo: Empleado

Observe el <ask> opcin utilizada para el sn atributo. Esto har que ldapadduser le pedir es valor. Hay empresas de servicios pblicos en el paquete que no se cubren aqu. Aqu est una lista completa:
ldaprenamemachine5

5 http://manpages.ubuntu.com/manpages/en/man1/ldaprenamemachine.1.html

113

Autenticacin de red
ldapadduser6 ldapdeleteuserfromgroup7 ldapfinger8 ldapid9 ldapgid10 ldapmodifyuser11 ldaprenameuser12 lsldap13 ldapaddusertogroup14 ldapsetpasswd15 ldapinit16 ldapaddgroup17 ldapdeletegroup18 ldapmodifygroup19 ldapdeletemachine20 ldaprenamegroup21 ldapaddmachine22 ldapmodifymachine23 ldapsetprimarygroup24 ldapdeleteuser25

1,12. Backup and Restore


Ahora tenemos LDAP funcionando de la manera que queremos, es el momento para garantizar que podemos salvar a todos de nuestro trabajo y restauracin si es necesario. Lo que necesitamos es un modo de copia de seguridad de la base de datos LDAP (s), especficamente el back-end (cn = config) y frontend (dc = ejemplo, dc = com). Si vamos a realizar copias de seguridad en las bases de datos, por ejemplo, / Export / copia de seguridad, podramos utilizar slapcat como se muestra en el siguiente script, llamado / Usr / local / bin / ldapbackup:
#! / Bin / bash

6 http://manpages.ubuntu.com/manpages/en/man1/ldapadduser.1.html 7 http://manpages.ubuntu.com/manpages/en/man1/ldapdeleteuserfromgroup.1.html 8 http://manpages.ubuntu.com/manpages/en/man1/ldapfinger.1.html 9 http://manpages.ubuntu.com/manpages/en/man1/ldapid.1.html 10 http://manpages.ubuntu.com/manpages/en/man1/ldapgid.1.html 11 http://manpages.ubuntu.com/manpages/en/man1/ldapmodifyuser.1.html 12 http://manpages.ubuntu.com/manpages/en/man1/ldaprenameuser.1.html 13 http://manpages.ubuntu.com/manpages/en/man1/lsldap.1.html 14 http://manpages.ubuntu.com/manpages/en/man1/ldapaddusertogroup.1.html 15 http://manpages.ubuntu.com/manpages/en/man1/ldapsetpasswd.1.html 16 http://manpages.ubuntu.com/manpages/en/man1/ldapinit.1.html 17 http://manpages.ubuntu.com/manpages/en/man1/ldapaddgroup.1.html 18 http://manpages.ubuntu.com/manpages/en/man1/ldapdeletegroup.1.html 19 http://manpages.ubuntu.com/manpages/en/man1/ldapmodifygroup.1.html 20 http://manpages.ubuntu.com/manpages/en/man1/ldapdeletemachine.1.html 21 http://manpages.ubuntu.com/manpages/en/man1/ldaprenamegroup.1.html 22 http://manpages.ubuntu.com/manpages/en/man1/ldapaddmachine.1.html 23 http://manpages.ubuntu.com/manpages/en/man1/ldapmodifymachine.1.html 24 http://manpages.ubuntu.com/manpages/en/man1/ldapsetprimarygroup.1.html 25 http://manpages.ubuntu.com/manpages/en/man1/ldapdeleteuser.1.html

114

Autenticacin de red
BACKUP_PATH = / export / copia de seguridad Slapcat = / usr / sbin / slapcat agradable $ {} slapcat-n 0> $ {} BACKUP_PATH / config.ldif agradable $ {} slapcat-n 1> $ {} BACKUP_PATH / example.com.ldif agradable $ {} slapcat-n 2> $ {} BACKUP_PATH / access.ldif chmod 640 $ {BACKUP_PATH} / *. ldif

Estos archivos son los archivos sin comprimir de texto que contienen todo lo que en sus bases de datos LDAP diseo de rbol, nombres de usuario y contrasea cada. Por lo tanto, es posible que desee incluyendo el considerar la posibilidad hacer / Export / copia de seguridad una particin cifrada y ni siquiera tener el guin cifrar los los archivos a medida que los crea. Lo ideal es hacer ambas cosas, pero eso depende de su seguridad requisitos. Entonces, es slo una cuestin de tener un script cron para ejecutar este programa con la frecuencia que nos sentimos cmodos con. Para muchos, una vez al da es suficiente. Para otros, ms a menudo se requiere. Aqu es un ejemplo de un cron script llamado / Etc / cron.d / ldapbackup que se ejecuta cada noche a las 22:45 h:

MAILTO = backup-emails@domain.com 45 22 *** root / usr / local / bin / ldapbackup

Ahora los archivos se crean, deben ser copiados a un servidor de copia de seguridad. Asumiendo que se vuelva a instalar un nuevo mximo de LDAP, el proceso de restauracin podra ser algo como esto:
sudo service slapd stop sudo mkdir / var / lib / ldap / accesslog sudo slapadd-F / etc / ldap / slapd.d-n 0-l / exportacin / copia de seguridad / config.ldif sudo slapadd-F / etc / ldap / slapd.d-n 1-l / exportacin / copia de seguridad / domain.com.ldif sudo slapadd-F / etc / ldap / slapd.d-n 2-l / exportacin / copia de seguridad / access.ldif sudo chown-R openldap: openldap / etc / ldap / slapd.d / sudo chown-R openldap: openldap / var / lib / ldap / sudo service slapd inicio

1,13. Recursos
El principal recurso es la documentacin del autor original: www.openldap.org26 Hay muchas pginas de manual que vienen con el paquete slapd. Estas son algunas de las ms importantes, especialmente teniendo en cuenta el material presentado en esta gua:

slapd27 slapd-config28 slapd.access29

26 http://www.openldap.org/~~V 27 http://manpages.ubuntu.com/manpages/en/man8/slapd.8.html 28 http://manpages.ubuntu.com/manpages/en/man5/slapd-config.5.html 29 http://manpages.ubuntu.com/manpages/en/man5/slapd.access.5.html

115

Autenticacin de red
slapo-syncprov30

Las pginas de otro hombre:

auth-client-config31 pam-auth-update32

Zytrax de LDAP para los cientficos de cohetes33, un tratamiento menos pedante, pero completa de LDAP Una comunidad de Ubuntu OpenLDAP wiki34 pgina cuenta con una coleccin de notas O'Reilly Administracin del sistema LDAP35 (libro de texto, 2003) Packt de El dominio de OpenLDAP36 (libro de texto, 2007)

30 http://manpages.ubuntu.com/manpages/en/man5/slapo-syncprov.5.html 31 http://manpages.ubuntu.com/manpages/en/man8/auth-client-config.8.html 32 http://manpages.ubuntu.com/manpages/en/man8/pam-auth-update.8.html 33 http://www.zytrax.com/books/ldap/ 34 https://help.ubuntu.com/community/OpenLDAPServer 35 http://www.oreilly.com/catalog/ldapsa/ 36 http://www.packtpub.com/OpenLDAP-Developers-Server-Open-Source-Linux/book

116

Autenticacin de red

2. Samba y LDAP
Esta seccin abarca la integracin de Samba con LDAP. La funcin del servidor Samba ser la de un "independiente" del servidor y el directorio LDAP proporcionar el nivel de autenticacin, adems de que contiene el usuario, grupo, y la informacin de la mquina cuenta que Samba necesita para funcionar (En cualquiera de sus 3 posibles funciones). El pre-requisito es un servidor OpenLDAP configurado con un directorio que puede aceptar las solicitudes de autenticacin. Ver Seccin 1, "OpenLDAP Server" [p. 91] para ms detalles sobre el cumplimiento de este requisito. Una vez que esta seccin se ha completado, usted tendr que decidir qu es exactamente lo quieres que Samba a hacer por usted y luego configurar en consecuencia.

2,1. Instalacin del software


Hay tres paquetes necesarios cuando se integra con LDAP de Samba: samba, samba-doc, y smbldap-tools paquetes. En rigor, el paquete smbldap-tools no es necesario, pero a menos que tenga alguna otra forma de gestin de las diversas entidades de Samaba (usuarios, grupos, equipos) en un contexto LDAP, entonces debera instalarlo.

Instalar estos paquetes ahora:

sudo apt-get install samba samba-doc smbldap-tools

2,2. Configuracin de LDAP


Ahora vamos a configurar el servidor LDAP para que se pueda acomodar los datos de Samba. Vamos a realizar tres tareas en esta seccin: 1. 2. 3. Importar un esquema de ndice de algunas de las entradas Aadir objetos

2.2.1. Samba esquema Con el fin de OpenLDAP para ser usado como backend para Samba, lgicamente, el DIT tendr que utilizar atributos que puede describir adecuadamente los datos de Samba. Estos atributos se pueden obtener mediante la introduccin de un Samba LDAP esquema. Vamos a hacer esto ahora. Para obtener ms informacin acerca de los esquemas y su instalacin ver Seccin 1.4, "Modificacin de la slapd base de datos de configuracin "[p. 96]. 1. El esquema se encuentra en la actualidad instalado paquete samba-doc. Tiene que ser descomprimido y copiado al / Etc / ldap / schema directorio:

117

Autenticacin de red

sudo cp / usr / share / doc / samba-doc / examples / LDAP / samba.schema.gz / etc / ldap / schema sudo gzip-d / etc / ldap / schema / samba.schema.gz

2.

Haga que el archivo de configuracin schema_convert.conf que contiene las siguientes lneas:

include / etc / ldap / schema / core.schema incluir incluir incluir incluir incluir incluir incluir incluir incluir / / / / / / / / / Etc Etc Etc Etc Etc Etc Etc Etc Etc / / / / / / / / / ldap ldap ldap ldap ldap ldap ldap ldap ldap / / / / / / / / / schema schema schema schema schema schema schema schema schema / / / / / / / / / collective.schema corba.schema cosine.schema duaconf.schema dyngroup.schema inetorgperson.schema java.schema misc.schema nis.schema

incluir incluir incluir incluir incluir

/ / / / /

Etc Etc Etc Etc Etc

/ / / / /

ldap ldap ldap ldap ldap

/ / / / /

schema schema schema schema schema

/ / / / /

openldap.schema ppolicy.schema ldapns.schema pmi.schema samba.schema

3. 4.

Tener el directorio ldif_output mantener la produccin. Determinar el ndice del esquema:

slapcat-f-F schema_convert.conf ldif_output-n 0 | grep samba, CN = Schema dn: cn = {14} samba, CN = Schema, cn = config

5.

Convertir el esquema de formato LDIF:

slapcat-f-F schema_convert.conf ldif_output-n0-H \ ldap :/ / / cn = {14} samba, CN = Schema, cn = config-l cn = samba.ldif

6.

Edite el generado por el cn = samba.ldif archivo mediante la eliminacin de informacin de los ndices para llegar a:
dn: cn = samba, CN = Schema, cn = config ... cn: samba

Quite las lneas de fondo:

structuralObjectClass: olcSchemaConfig entryUUID: b53b75ca-083f-102d-9FFF-2f64fd123c95 creatorsName: cn = config createTimestamp: 20080827045234Z entryCSN: 20080827045234.341425Z # 000000 # 000 # 000000 modifiersName: cn = config modifyTimestamp: 20080827045234Z

Sus valores de los atributos pueden variar.

118

Autenticacin de red

7.

Aadir el nuevo esquema:

sudo ldapadd-Q-Y EXTERNA-H ldapi :/ / /-f cn \ = samba.ldif

Para consultar y ver este nuevo esquema:

sudo ldapsearch-Q-LLL-Y EXTERNA-H ldapi :/ / /-b cn = schema, cn = config 'cn = * Samba *'

2.2.2. Samba ndices Ahora que slapd sabe acerca de los atributos Samba, podemos establecer algunos ndices basados en ellos. Entradas de indexacin es una manera de mejorar el rendimiento cuando un cliente realiza una bsqueda filtrada en el DIT. Cree el archivo samba_indices.ldif con el siguiente contenido:

dn: olcDatabase = {1} hdb, cn = config changetype: modificar aadir: olcDbIndex olcDbIndex: uidNumber eq olcDbIndex: gidNumber eq olcDbIndex: loginShell eq olcDbIndex: uid eq, pres, sub olcDbIndex: memberUid eq, pres, sub olcDbIndex: uniqueMember eq, pres olcDbIndex: sambaSID eq olcDbIndex: sambaPrimaryGroupSID eq olcDbIndex: sambaGroupType eq olcDbIndex: sambaSIDList eq olcDbIndex: sambaDomainName eq olcDbIndex: sub defecto

Uso de la utilidad ldapmodify cargar los nuevos ndices:

sudo ldapmodify-Q-Y EXTERNA-H ldapi :/ / /-f samba_indices.ldif

Si todo ha ido bien debera ver los nuevos ndices usando ldapsearch:

sudo ldapsearch-Q-LLL-Y EXTERNA-H \ ldapi :/ / /-b cn = config olcDatabase = {1} olcDbIndex hdb

2.2.3. Adicin de objetos LDAP Samba A continuacin, configurar el paquete smbldap-tools para que coincida con su entorno. El paquete viene con una configuracin de secuencia de comandos que le har preguntas acerca de las opciones necesarias. Para ejecutar la secuencia de comandos escriba:
sudo gzip-d / usr / share / doc / smbldap-herramientas / configure.pl.gz sudo perl / usr / share / doc / smbldap-tools / configure.pl

119

Autenticacin de red

Es posible que tenga que comentar el pragma strict en el configure.pl archivo. Una vez que haya respondido a las preguntas, los archivos / Etc / smbldap-tools o smbldap.conf y / Etc / smbldap-tools/smbldap_bind.conf debe ser generada. Si cometi algn error durante la ejecucin de el guin siempre se puede editar los archivos despus. El script smbldap-populate aadir los objetos LDAP necesarios para Samba. Es una buena idea a la primera hacer una copia de seguridad de su directorio entero usando slapcat:
sudo slapcat-l backup.ldif

Una vez que tengas una copia de seguridad proceder a rellenar el directorio:
sudo smbldap-populate

Usted puede crear un archivo LDIF que contiene los nuevos objetos Samba ejecutando sudo smbldap-populate -E samba.ldif. Esto le permite mirar por encima de los cambios que hacen que todo est correcto. Si lo es, volver a ejecutar el script sin el parmetro '-e'. Alternativamente, usted puede tomar el archivo LDIF e importarlo de datos por costumbre. Su directorio LDAP ahora tiene la informacin necesaria para autenticar a los usuarios de Samba.

2,3. Configuracin de Samba


Hay varias formas de configurar Samba. Para ms detalles sobre algunas configuraciones comunes ver Captulo 18, Red de Windows [p. 276]. Para configurar Samba para usar LDAP, editar es archivo de configuracin / Etc / samba / smb.conf comentando el valor por defecto passdb backend parmetro y la adicin de algunos otros relacionados con LDAP:

passdb backend = tdbsam

# Configuracin de LDAP passdb backend = ldapsam: ldap :/ / hostname sufijo LDAP = dc = ejemplo, dc = com sufijo usuario ldap = ou = People sufijo de grupo de LDAP = ou = Groups sufijo mquina ldap = ou = Computers ldap idmap sufijo = ou = idmap LDAP dn = admin cn = admin, dc = ejemplo, dc = com ldap ssl = start tls ldap passwd sync = s ... agregar secuencias de comandos de la mquina = sudo / usr / sbin / smbldapuseradd-t 0-w "% u"

Cambie los valores para que coincida con su entorno. Reinicie samba para activar la nueva configuracin:

120

Autenticacin de red

reinicio sudo smbd reinicio sudo nmbd

Ahora informar acerca de Samba la contrasea del usuario rootdn (el conjunto de uno durante la instalacin del slapd el paquete):

sudo smbpasswd-w contrasea

Si ya dispone de los usuarios de LDAP que desea incluir en su nueva LDAP respaldo que Samba Por supuesto, tambin es necesario dado algunos de los atributos adicionales. La utilidad smbpasswd puede hacer esto y (su anfitrin tendr que ser capaz de ver (enumerar) los usuarios a travs de NSS, instalar y configurar ya sea libnss-ldapd o libnss LDAP):

sudo smbpasswd-a usuario

Se le pedir que introduzca una contrasea. Se considera como la nueva contrasea para ese usuario. Haciendo que el mismo que antes es razonable. Para administrar usuarios, grupos y cuentas de equipo usar las utilidades proporcionadas por las herramientas smbldappaquete. He aqu algunos ejemplos: Para aadir un usuario nuevo:

sudo smbldap-useradd-a-P nombre de usuario

La -Un opcin agrega los atributos Samba, y el -P opcin llama a la utilidad smbldap-passwd despus de la usuario se crea que le permite introducir una contrasea para el usuario. Para eliminar un usuario:

sudo smbldap-userdel nombre de usuario

En el comando anterior, utilice el -R opcin de eliminar el directorio home del usuario. Para aadir un grupo:

sudo smbldap-groupadd-un nombre de grupo

En cuanto a, smbldap-useradd la -Un Agrega los atributos Samba. Para que un usuario existente a un miembro de un grupo:

sudo smbldap-groupmod-m nombre de usuario nombre de grupo

La M opcin se puede aadir ms de un usuario a la vez, mediante su inclusin en el formato de valores separados por comas. Para eliminar un usuario de un grupo: 121

Autenticacin de red

sudo smbldap-groupmod-x nombre de usuario nombre de grupo

Para agregar una cuenta de equipo de Samba:

sudo smbldap-useradd-t 0-w nombre de usuario

Reemplazar Nombre de usuario con el nombre de la estacin de trabajo. La -T 0 opcin, se crea la cuenta del equipo sin un retardo, mientras que el -W opcin especifica el usuario como una cuenta de equipo. Adems, tenga en cuenta aadir mquina de secuencia de comandos parmetro en / Etc / samba / smb.conf fue cambiado para usar smbldap-useradd. Hay empresas de servicios pblicos en el paquete smbldap-tools que no estaban cubiertos aqu. Aqu est una lista completa:
smbldap-groupadd37 smbldap-groupdel38 smbldap-groupmod39 smbldap-groupshow40 smbldap-passwd41

smbldap-populate42 smbldap-useradd43 smbldap-userdel44 smbldap-userinfo45 smbldap-Lista de usuarios46 smbldap-usermod47 smbldap-usershow48

2,4. Recursos
Para obtener ms informacin sobre la instalacin y configuracin de Samba ver Captulo 18, Windows Redes [p. 276] de esta Gua de Ubuntu Server. Hay varios lugares donde LDAP y Samba se pueden consultar en el enlace ascendente HOWTOs de Samba Coleccin49. En cuanto a lo anterior, vase en particular la passdb seccin50. Aunque la fecha (2007), el Linux Samba-HOWTO OpenLDAP51 contiene valiosas notas.

37 http://manpages.ubuntu.com/manpages/en/man8/smbldap-groupadd.8.html 38 http://manpages.ubuntu.com/manpages/en/man8/smbldap-groupdel.8.html 39 http://manpages.ubuntu.com/manpages/en/man8/smbldap-groupmod.8.html 40 http://manpages.ubuntu.com/manpages/en/man8/smbldap-groupshow.8.html 41 http://manpages.ubuntu.com/manpages/en/man8/smbldap-passwd.8.html 42 http://manpages.ubuntu.com/manpages/en/man8/smbldap-populate.8.html 43 http://manpages.ubuntu.com/manpages/en/man8/smbldap-useradd.8.html 44 http://manpages.ubuntu.com/manpages/en/man8/smbldap-userdel.8.html 45 http://manpages.ubuntu.com/manpages/en/man8/smbldap-userinfo.8.html 46 http://manpages.ubuntu.com/manpages/en/man8/smbldap-userlist.8.html 47 http://manpages.ubuntu.com/manpages/en/man8/smbldap-usermod.8.html 48 http://manpages.ubuntu.com/manpages/en/man8/smbldap-usershow.8.html 49 http://samba.org/samba/docs/man/Samba-HOWTO-Collection/ 50 http://samba.org/samba/docs/man/Samba-HOWTO-Collection/passdb.html 51 http://download.gna.org/smbldap-tools/docs/samba-ldap-howto/

122

Autenticacin de red La pgina principal de la Samba Ubuntu comunidad de documentacin52 tiene una gran cantidad de enlaces a artculos que puede resultar til.

# 52 https://help.ubuntu.com/community/Samba samba-ldap

123

Autenticacin de red

3. Kerberos
Kerberos es un sistema de autenticacin de red basada en el principio de una tercera parte de confianza. El otro dos partes siendo el usuario y el servicio que el usuario desee para autenticar. No todos los servicios y las aplicaciones pueden utilizar Kerberos, pero para aquellos que pueden, que aporta el entorno de red a un paso ms cerca de ser Single Sign On (SSO).

Esta seccin cubre la instalacin y configuracin de un servidor de Kerberos, y algn cliente ejemplo configuraciones.

3,1. Informacin general


Si usted es nuevo en Kerberos hay algunos trminos que son buenos para entender antes de configurar un servidor de Kerberos. La mayor parte de los trminos se refieren a cosas que usted puede estar familiarizado con el de otros ambientes: Director: los usuarios, equipos y servicios proporcionados por servidores tienen que ser definidos como Kerberos Los directores. Instancias: se utilizan para los directores de servicios especiales y los directores administrativos. Reinos: el mbito nico de control previstos por la instalacin de Kerberos. Piense en ello como el de dominio o grupo de sus anfitriones y de los usuarios pertenecen. Convencin dicta el reino debe estar en maysculas. Por defecto, Ubuntu usar el dominio DNS convierte a maysculas (EXAMPLE.COM) como el reino. Centro de distribucin de claves: (KDC) constar de tres partes, una base de datos de todos los directores, los autenticacin, y el servidor de tickets. Para cada esfera debe haber al menos un KDC. servidor de De concesin de vales de entradas: emitido por el servidor de autenticacin (AS), el billete de concesin de vales (TGT) se cifran en la contrasea del usuario, que slo es conocido por el usuario y el KDC. De concesin de vales del servidor: (TGS) emite tickets de servicio a los clientes que lo soliciten. Venta de entradas: confirmar la identidad de los dos principios. Una principal que es un usuario y el otro un servicio solicitado por el usuario. Entradas a establecer una clave de cifrado que se utiliza para la comunicacin segura durante la sesin autenticada. Keytab Archivos: son los archivos extrados de la base de datos principal KDC y contienen la clave de cifrado por un servicio o de acogida.

Para poner las piezas juntas, un reino tiene al menos un KDC, preferiblemente ms de redundancia, que contiene una base de datos de Directores. Cuando un director usuario inicia sesin en una estacin de trabajo que se configura para la autenticacin Kerberos, los KDC emite un vale de concesin de vales (TGT). Si el usuario suministra credenciales coinciden, el usuario autenticado y luego se puede solicitar entradas para los servicios de Kerberos el servidor de concesin de vales (TGS). Los tickets de servicio permite al usuario autenticarse en el servicio sin entrar en otro nombre de usuario y contrasea.

124

Autenticacin de red

3,2. Servidor Kerberos


3.2.1. Instalacin Para esta discusin, vamos a crear un dominio de Kerberos del MIT con las siguientes caractersticas (editarlos para se ajuste a sus necesidades): Reino: EXAMPLE.COM KDC principal: kdc01.example.com (192.168.0.1) KDC secundario: kdc02.example.com (192.168.0.2) Principal del usuario: steve Director de administracin: steve / admin Es fuertemente recomienda que los autenticados de la red los usuarios tienen su uid en una rango diferente (por ejemplo, a partir de 5000) que la de los usuarios locales. Antes de instalar el servidor de Kerberos un servidor DNS configurado correctamente es necesario para su dominio. Desde el reinado de Kerberos por convencin coincide con el nombre de dominio, en esta seccin utiliza el EXAMPLE.COM dominio configurado en Seccin 2.3, "Primary Master" [p. 142] del DNS documentacin. Adems, Kerberos es un protocolo sensible del tiempo. As que si la hora del sistema local entre un equipo cliente y el servidor difiere en ms de cinco minutos (por defecto), la estacin de trabajo no podr para autenticar. Para corregir el problema a todos los hosts deben tener su tiempo sincronizado con el mismo Network Time Protocol (NTP) servidor. Para obtener ms informacin sobre la configuracin de NTP ver Seccin 4: "El tiempo Sincronizacin con NTP "[p. 49]. El primer paso en la creacin de un reino Kerberos es el de instalar los paquetes krb5-kdc y krb5-administrador del servidor. Desde un terminal escriba:

sudo apt-get install krb5-kdc krb5-admin-server

Se le pedir a la final de la instalacin para suministrar el nombre de host para el Kerberos y servidores de administracin, que pueden o no ser el mismo servidor, para el reino. Por defecto, el reino se crea a partir del nombre de dominio del KDC.

A continuacin, cree el nuevo reino con la utilidad kdb5_newrealm:

krb5_newrealm sudo

3.2.2. Configuracin Las preguntas formuladas durante la instalacin se utilizan para configurar el / Etc/krb5.conf archivo. Si usted necesita para ajustar el Key Distribution Center (KDC) la configuracin slo tiene que editar el archivo y reiniciar el krb5kdc 125

Autenticacin de red

demonio. Si necesita volver a configurar Kerberos desde el principio, tal vez para cambiar el nombre de reino, Puede hacerlo escribiendo

sudo dpkg-reconfigure krb5-kdc

1.

Una vez que el KDC se ejecuta correctamente, un usuario administrador - el principal admin - Es necesario. Es recomienda el uso de un nombre de usuario diferente de su nombre de usuario todos los das. Usando el kadmin.local utilidad en una terminal escriba:

kadmin.local sudo Autenticacin como usuario root director / admin @ EXAMPLE.COM con contrasea. kadmin.local: addprinc steve / admin ADVERTENCIA: no existe una poltica especifica para steve / admin @ EXAMPLE.COM; incumplimiento de una poltica Introduzca la contrasea para el principal "steve / admin @ EXAMPLE.COM": Vuelva a introducir la contrasea para el principal "steve / admin @ EXAMPLE.COM": Principal "steve / admin @ EXAMPLE.COM" creado. kadmin.local: dejar de

En el ejemplo anterior steve es el Principal, / admin es un Instancia, y @ EXAMPLE.COM significa el reino. La "Todos los das" Principal, alias el principal de usuario, sera steve@EXAMPLE.COM, y debe tener slo derechos de los usuarios normales.

Reemplazar EXAMPLE.COM y steve con su Reino y nombre de usuario admin.

2.

A continuacin, el usuario admin nueva tiene que tener la lista de control de acceso correspondiente (ACL). Los permisos se configuran en el / Etc/krb5kdc/kadm5.acl archivo:

steve / admin @ EXAMPLE.COM

En virtud del presente entrada steve / admin la capacidad de realizar cualquier operacin en todos los principales del reino. directores con los privilegios ms restrictivos, lo cual es conveniente si usted necesita un Puede configurar los director de administracin que el personal subalterno puede utilizar en los clientes de Kerberos. Por favor vea el kadm5.acl La pgina man para ms detalles. 3. Ahora, reinicie el krb5-admin-servidor para la nueva ACL surtan efecto:

sudo / etc/init.d/krb5-admin-server reinicio

4.

El director nuevo usuario se puede probar mediante la utilidad kinit:

kinit steve / admin steve / admin @ EXAMPLE.COM 's Contrasea:

Despus de introducir la contrasea, utilice la utilidad klist para ver informacin acerca de la concesin de vales Vales (TGT):

126

Autenticacin de red

klist Cach de Verificacin de Poderes: file :/ tmp/krb5cc_1000 Director: Steve / admin @ EXAMPLE.COM Emitido Expira Principal

13 de julio 17:53:34 de julio 03:53:34 14 krbtgt / EXAMPLE.COM @ EXAMPLE.COM

Cuando el nombre del archivo cach krb5cc_1000 est compuesto por el prefijo krb5cc_ y el identificador de usuario (UID), que en este caso es 1000. Puede que tenga que aadir una entrada en el / Etc / hosts para el KDC por lo que el el cliente puede encontrar el KDC. Por ejemplo:

192.168.0.1

kdc01.example.com

kdc01

Sustitucin 192.168.0.1 con la direccin IP de su KDC. Esto suele suceder cuando se tiene un Realm de Kerberos que abarca las diferentes redes separadas por routers. 5. La mejor manera de permitir a los clientes para determinar automticamente el KDC para el Reino est usando DNS Registros SRV. Agregue lo siguiente al / Etc / named / db.example.com:
_kerberos._udp.EXAMPLE.COM. _kerberos._tcp.EXAMPLE.COM. _kerberos._udp.EXAMPLE.COM. _kerberos._tcp.EXAMPLE.COM. IN SRV 1 IN SRV 1 0 88 0 88 kdc01.example.com. kdc01.example.com. kdc02.example.com. kdc02.example.com.

IN SRV 10 0 88 IN SRV 10 0 88

_kerberos-adm._tcp.EXAMPLE.COM. IN SRV 1 _kpasswd._udp.EXAMPLE.COM.IN SRV 1

0 749 kdc01.example.com. 0 464 kdc01.example.com.

Reemplazar EXAMPLE.COM, kdc01, y kdc02 con su nombre de dominio, principal KDC, y el KDC secundario. Ver Captulo 8, el Servicio de Nombres de Dominio (DNS) [p. 139] para obtener instrucciones detalladas sobre cmo configurar DNS. Su nuevo territorio Kerberos est listo para autenticar a los clientes.

3,3. Secundaria KDC


Una vez que tenga un centro de distribucin de claves (KDC) en su red, es una buena prctica tener un KDC secundaria en caso de que el principal no est disponible. Adems, si usted tiene los clientes de Kerberos que son en redes diferentes (posiblemente separados por routers mediante NAT), es aconsejable colocar un KDC secundaria en cada una de dichas redes. 1. En primer lugar, instale los paquetes, y cuando se le pregunt por los nombres de servidor de Kerberos y Admin entrar en ella KDC principal: nombre de

sudo apt-get install krb5-kdc krb5-admin-server

2.

Una vez que tenga los paquetes instalados, crear la secundaria KDC principal del equipo. Desde un terminal, escriba:

127

Autenticacin de red

kadmin-q "addprinc-randkey host/kdc02.example.com"

Despus, la emisin de los comandos kadmin se le pedir para su nombre de usuario / admin@EXAMPLE.COM~~V la contrasea principal. 3. Extraiga el keytab archivo:

kadmin-q "ktadd-norandkey-k keytab.kdc02 host/kdc02.example.com"

4.

Ahora debe haber un keytab.kdc02 en el directorio actual, mover el archivo a / Etc / krb5.keytab:

sudo keytab.kdc02 mv / etc/krb5.keytab

Si la ruta de acceso al keytab.kdc02 archivo es diferente a los ajustes correspondientes. Adems, usted puede enumerar los principios de una tabla de claves, que puede ser til para solucionar problemas, mediante la utilidad klist:
sudo klist-k / etc/krb5.keytab

5.

La opcin-k indica que el archivo es un archivo de tabla de claves. A continuacin, es necesario que haya un kpropd.acl archivo en cada KDC que enumera todos los KDC para el Reino. Para ejemplo, en KDC tanto primaria como secundaria, crear / Etc/krb5kdc/kpropd.acl:

host/kdc01.example.com @ EXAMPLE.COM host/kdc02.example.com @ EXAMPLE.COM

6.

Crear una base de datos vaca en el KDC secundario:

sudo-s Crear kdb5_util

7.

Ahora inicie el demonio kpropd, que escucha las conexiones de la utilidad kprop. kprop se utiliza para transferir los archivos de volcado:
sudo kpropd-S

8.

Desde un terminal en el Primaria KDC, crear un archivo de volcado de la base de datos principal:

volcado kdb5_util sudo / var/lib/krb5kdc/dump

9.

Extracto de la Primaria KDC keytab presentar, con copia a / Etc/krb5.keytab:

kadmin-q "ktadd-k keytab.kdc01 host/kdc01.example.com" sudo keytab.kdc01 mv / etc/krb5.keytab

128

Autenticacin de red

Asegrese de que hay una anfitrin para kdc01.example.com antes de extraer la tabla de claves. 10. Uso de la utilidad kprop empujar la base de datos para el KDC secundario:

sudo kprop-r EXAMPLE.COM-f / kdc02.example.com var/lib/krb5kdc/dump

No debe haber un XITO mensaje si la propagacin trabajado. Si hay un error mensaje de verificacin / Var / log / syslog en el KDC secundaria para ms informacin. Tambin puede crear una tarea programada para actualizar peridicamente la base de datos en la secundaria KDC. Por ejemplo, el siguiente empujar la base de datos cada hora (vase la lnea de tiempo ha sido divididos de acuerdo al formato de este documento):

# M h dom lun dowcommand 0 **** / usr/sbin/kdb5_util volcado / var/lib/krb5kdc/dump && / Usr / bin / kprop-r EXAMPLE.COM-f / kdc02.example.com var/lib/krb5kdc/dump

11. De vuelta a la Secundaria KDC, crear una esconder presentar para sostener la clave maestra de Kerberos:
sudo alijo kdb5_util

12. Por ltimo, iniciar el demonio krb5-kdc en el KDC secundario:

sudo / etc/init.d/krb5-kdc inicio

La Secundaria KDC Ahora debera ser capaz de emitir boletos para el Reino. Puede probar esto al detener el demonio krb5-kdc en el KDC principal, a continuacin, mediante kinit para pedir un ticket. Si todo va bien deben recibir un boleto de la KDC secundario. De lo contrario, marque / Var / log / syslog y / Var / log /
auth.log

en el KDC secundario.

3,4. Kerberos Client Linux


Esta seccin cubre la configuracin de un sistema Linux como un cliente de Kerberos. Esto permitir el acceso a cualquiera servicios Kerberizados vez que un usuario ha iniciado una sesin en el sistema. 3.4.1. Instalacin Con el fin de autenticarse en un territorio Kerberos, la krb5-usuario y paquetes libpam-krb5 se necesitan, junto con algunos otros que no son estrictamente necesarios pero que hacen la vida ms fcil. Para instalar los paquetes escriba lo siguiente en una terminal:

sudo apt-get install krb5 usuario libpam-krb5 libpam-ccreds auth-client-config

El paquete de auth-client-config permite una sencilla configuracin de PAM para la autenticacin de mltiples fuentes, y los ccreds libpam-en cach las credenciales de autenticacin que le permite acceder en caso de

129

Autenticacin de red

Key Distribution Center (KDC) no est disponible. Este paquete tambin es til para los ordenadores porttiles que pueden autenticarse mediante Kerberos, mientras que en la red corporativa, sino que es necesario tener acceso de la red tambin. 3.4.2. Configuracin Para configurar el cliente en una terminal escriba:

sudo dpkg-reconfigure krb5-config

A continuacin se le pedir que introduzca el nombre del realm de Kerberos. Adems, si usted no tiene DNS configurado con Kerberos SRV registros, el men le pedir el nombre del host de la Llave Centro de Distribucin (KDC) y el Servidor de Administracin Reino.

El dpkg-reconfigure aade entradas a la / Etc/krb5.conf archivo para su Reino. Usted debe tener entradas similares a lo siguiente:

[Libdefaults] default_realm = EXAMPLE.COM ... [Reinos] EXAMPLE.COM =} kdc = 192.168.0.1 admin_server = 192.168.0.1 }

Si establece el UID de cada uno de sus autenticados en red a los usuarios comenzar en 5000, como se sugiere en Seccin 3.2.1, "Instalacin" [p. 125], A continuacin, puede decir pam probar slo para autenticar con los usuarios de Kerberos con uid> 5000:

# Kerberos slo se debe aplicar a LDAP / Kerberos los usuarios, no de los locales. for i in common-auth common-session common-account common-password, haz sudo sed-i-r \ -E 's/pam_krb5.so minimum_uid = 1000/pam_krb5.so minimum_uid = 5000 /' \ / Etc / pam.d / $ i hecho

Esto evitar que se le pedir la contrasea (inexistente) de Kerberos de un local usuario autenticado cuando se cambia la contrasea utilizando passwd. Usted puede probar la configuracin mediante la solicitud de un boleto mediante la utilidad kinit. Por ejemplo:
kinit steve@EXAMPLE.COM Contrasea para steve@EXAMPLE.COM:

Cuando un billete ha sido concedida, los detalles se pueden ver con klist:

130

Autenticacin de red

klist Cach de entradas: file :/ tmp/krb5cc_1000 Principal predeterminado: steve@EXAMPLE.COM

Vlido a partir

Expira

Principal de servicio

07/24/08 05:18:56 07/24/08 15:18:56 krbtgt / EXAMPLE.COM @ EXAMPLE.COM prorrogar hasta el 07/25/08 05:18:57

Kerberos 4 entradas de cach: / tmp/tkt1000 klist: No tiene entradas en cach

A continuacin, utilice el auth-client-config para configurar el mdulo de libpam-krb5 para pedir un ticket durante el inicio de sesin:
sudo auth-client-config-a-p kerberos_example

Usted debe ahora recibir un boleto en la autenticacin de inicio de sesin con xito.

3,5. Recursos
Para ms informacin sobre la versin del MIT de Kerberos, consulte la MIT Kerberos53 sitio. El Wiki de Ubuntu Kerberos54 pgina tiene ms detalles. O'Reilly Kerberos: The Definitive Guide55 es una gran referencia al configurar Kerberos. Adems, no duden en pasar por el # Ubuntu-server y # Kerberos Canales de IRC en Freenode56 si tiene preguntas de Kerberos.

53 http://web.mit.edu/Kerberos/ 54 https://help.ubuntu.com/community/Kerberos 55 http://oreilly.com/catalog/9780596004033/ 56 http://freenode.net/

131

Autenticacin de red

4. Kerberos y LDAP
La mayora de las personas no utilizan Kerberos por s misma, una vez que un usuario se autentica (Kerberos), tenemos que averiguar lo que este usuario puede hacer (autorizacin). Y eso sera el trabajo de programas como LDAP. Replicar una base de datos principal de Kerberos entre dos servidores puede ser complicado, y aade un base de datos de usuario adicional a la red. Afortunadamente, el MIT Kerberos puede ser configurado para usar un Directorio LDAP como una base de datos principal. Esta seccin cubre la configuracin de una primaria y secundaria kerberos servidor para utilizar OpenLDAP para la base de datos principal. Los ejemplos que se presentan aqu suponen MIT Kerberos y OpenLDAP.

4,1. Configuracin de OpenLDAP


En primer lugar, la necesaria esquema necesita ser cargado en un servidor OpenLDAP que tiene conectividad de red a los KDC primario y secundario. El resto de esta seccin se supone que tambin tienen LDAP configurada la replicacin entre al menos dos servidores. Para obtener ms informacin sobre la configuracin de OpenLDAP Santa Seccin 1, "OpenLDAP Server" [p. 91]. Tambin se requiere para configurar OpenLDAP para TLS y conexiones SSL, de modo que el trfico entre el Servidor KDC y LDAP se cifra. Ver Seccin 1.8, "TLS" [p. 105] para ms detalles.
cn = admin, cn = config es un

usuario que hemos creado con los derechos para editar la base de datos LDAP. Muchas veces es la rootdn. Cambie el valor para reflejar su configuracin. Para cargar el esquema en LDAP, en el servidor LDAP de instalar el paquete krb5-kdc-ldap. Desde un la terminal escriba:

sudo apt-get install krb5-kdc-ldap

A continuacin, extraer el kerberos.schema.gz archivo:

sudo gzip-d / usr/share/doc/krb5-kdc-ldap/kerberos.schema.gz sudo cp / usr/share/doc/krb5-kdc-ldap/kerberos.schema / etc / ldap / schema /

El kerberos esquema necesita ser aadido a la cn = config rbol. El procedimiento para agregar un nuevo esquema a slapd tambin se detalla en Seccin 1.4, "Modificacin de la base de datos de configuracin de slapd" [p. 96]. 1. En primer lugar, crear un archivo de configuracin llamado schema_convert.conf, O un nombre descriptivo similares, con las siguientes lneas:
include / etc / ldap / schema / core.schema include / etc / ldap / schema / collective.schema include / etc / ldap / schema / corba.schema include / etc / ldap / schema / cosine.schema

132

Autenticacin de red
include / etc / ldap / schema / duaconf.schema include / etc / ldap / schema / dyngroup.schema include / etc / ldap / schema / inetorgperson.schema include / etc / ldap / schema / java.schema include / etc / ldap / schema / misc.schema include / etc / ldap / schema / nis.schema include / etc / ldap / schema / openldap.schema include / etc / ldap / schema / ppolicy.schema include / etc / ldap / schema / kerberos.schema

2.

Cree un directorio temporal para guardar los archivos LDIF:

mkdir / tmp / ldif_output

3.

Ahora usa slapcat para convertir los archivos de esquema:


slapcat-f schema_convert.conf-f / tmp / ldif_output-n0-s \ "Cn = {12} kerberos, CN = Schema, cn = config"> / tmp / cn = kerberos.ldif

4.

Cambie los nombres anteriores de archivos y la ruta para que coincida con su cuenta si son diferentes. Edite el generado por el / Tmp / cn \ = kerberos.ldif archivo, cambiar los atributos siguientes:

dn: cn = kerberos, CN = Schema, cn = config ... cn: kerberos

Y elimine las siguientes lneas del final del archivo:

structuralObjectClass: olcSchemaConfig entryUUID: 18ccd010-746b-102d-9fbe-3760cca765dc creatorsName: cn = config createTimestamp: 20090111203515Z entryCSN: 20090111203515.326445Z # 000000 # 000 # 000000 modifiersName: cn = config modifyTimestamp: 20090111203515Z

5.

Los valores de los atributos pueden variar, slo asegrese de que los atributos son eliminados. Cargue el nuevo esquema con ldapadd:

ldapadd-x-D cn = admin, cn = config-W-f / tmp / cn \ = kerberos.ldif

6.

Aadir un ndice para el krb5principalname atributo:

ldapmodify-x-D cn = admin, cn = config-W Escriba la contrasea de LDAP: dn: olcDatabase = {1} hdb, cn = config aadir: olcDbIndex olcDbIndex: krbPrincipalName eq, pres, sub

133

Autenticacin de red
modificar la entrada "olcDatabase = {1} hdb, cn = config"

7.

Por ltimo, actualizar las listas de control de acceso (ACL):

ldapmodify-x-D cn = admin, cn = config-W Escriba la contrasea de LDAP: dn: olcDatabase = {1} hdb, cn = config reemplazar: olcAccess olcAccess: a attrs = userPassword, shadowLastChange, por krbPrincipalKey dn = "cn = admin, dc = ejemplo, dc = com" escribir con autenticacin annima por escritura s mismo por no * aadir: olcAccess olcAccess: a dn.base = "" por la lectura * aadir: olcAccess olcAccess: a * por dn = "cn = admin, dc = ejemplo, dc = com" write by * read

modificar la entrada "olcDatabase = {1} hdb, cn = config"

Eso es todo, su directorio LDAP ya est listo para servir como una base de datos principal de Kerberos.

4,2. Configuracin del KDC primario


Con OpenLDAP configurado es el momento de configurar el KDC. En primer lugar, instale los paquetes necesarios, desde una terminal escriba:
sudo apt-get install krb5-kdc krb5-admin-server krb5-kdc-ldap

Ahora edite / Etc/krb5.conf aadir las siguientes opciones a bajo las secciones correspondientes:

[Libdefaults] default_realm = EXAMPLE.COM ... [Reinos] EXAMPLE.COM = { kdc = kdc01.example.com kdc = kdc02.example.com admin_server = kdc01.example.com admin_server = kdc02.example.com default_domain = example.com database_module = openldap_ldapconf } ... [Domain_realm] . Example.com = EXAMPLE.COM

134

Autenticacin de red

... [Dbdefaults] ldap_kerberos_container_dn = dc = ejemplo, dc = com [Dbmodules] openldap_ldapconf = { db_library = kldap ldap_kdc_dn = "cn = admin, dc = ejemplo, dc = com" # Este objeto tiene que haber ledo los derechos de # El mbito contenedor, contenedor de dominio principal y sub-rboles ldap_kadmind_dn = "cn = admin, dc = ejemplo, dc = com" # Este objeto necesita tener derechos de lectura y escritura en # El mbito contenedor, contenedor de dominio principal y sub-rboles ldap_service_password_file = / etc/krb5kdc/service.keyfile ldap_servers = ldaps :/ / ldap01.example.com ldaps :/ / ldap02.example.com ldap_conns_per_server = 5 }

Cambiar example.com, dc = ejemplo, dc = com, cn = admin, dc = ejemplo, dc = com, y ldap01.example.com para el dominio, objeto LDAP y servidor LDAP para su red. A continuacin, utilice la utilidad kdb5_ldap_util para crear el reino:

sudo kdb5_ldap_util-D

cn = admin, dc = ejemplo, dc = com crear los subrboles \

dc = ejemplo, dc = com-r-s EXAMPLE.COM-H ldap :/ / ldap01.example.com

Crear un alijo de la contrasea utilizada para enlazar con el servidor LDAP. Esta contrasea es utilizada por el ldap_kdc_dn y ldap_kadmin_dn opciones en / Etc/krb5.conf:

sudo kdb5_ldap_util-D

cn = admin, dc = ejemplo, dc = com stashsrvpw-f \

/ Etc/krb5kdc/service.keyfile cn = admin, dc = ejemplo, dc = com

Copia del certificado de la CA del servidor LDAP:

scp ldap01 :/ etc / ssl / certs / cacert.pem. sudo cacert.pem cp / etc / ssl / certs

Y de edicin / Etc / ldap / ldap.conf para utilizar el certificado:


TLS_CACERT / etc / ssl / certs / cacert.pem

El certificado tambin deber ser copiados al KDC secundario, para permitir la conexin a los servidores LDAP que utilizan LDAP.

135

Autenticacin de red

Ahora puede agregar los principales de Kerberos a la base de datos LDAP, y se copiarn a cualquier otro Servidores LDAP configurado para la replicacin. Para aadir un director con la utilidad kadmin.local escriba:

kadmin.local sudo Autenticacin como usuario root director / admin @ EXAMPLE.COM con contrasea. kadmin.local: addprinc-x dn = "uid = Steve, ou = People, dc = ejemplo, dc = com" steve ADVERTENCIA: no existe una poltica especifica para steve@EXAMPLE.COM; incumplimiento de una poltica Introduzca la contrasea para el principal "steve@EXAMPLE.COM": Vuelva a introducir la contrasea para el principal "steve@EXAMPLE.COM": Principal "steve@EXAMPLE.COM" creado.

Ahora debe haber krbPrincipalName, krbPrincipalKey, krbLastPwdChange y krbExtraData atributos aade al uid = steve, ou = gente, dc = ejemplo, dc = com objeto de usuario. Utilice el kinit y klist utilidades para probar que el usuario es, en efecto recibir una multa.

Si el objeto de usuario ya est creado el -X dn = "..." opcin es necesaria para aadir el Kerberos los atributos. De lo contrario un nuevo principal objeto se crear en el mbito sub-rbol.

4,3. Configuracin del KDC secundario


Configuracin de un KDC secundario usando el backend LDAP es similar a configurar una con el normal de base de datos de Kerberos.

1.

En primer lugar, instalar los paquetes necesarios. En una terminal escriba:


sudo apt-get install krb5-kdc krb5-admin-server krb5-kdc-ldap

2.

A continuacin, modifique / Etc/krb5.conf usar el gestor de LDAP:


[Libdefaults] default_realm = EXAMPLE.COM ... [Reinos] EXAMPLE.COM = { kdc = kdc01.example.com kdc = kdc02.example.com admin_server = kdc01.example.com admin_server = kdc02.example.com default_domain = example.com database_module = openldap_ldapconf } ... [Domain_realm] . Example.com = EXAMPLE.COM

136

Autenticacin de red

... [Dbdefaults] ldap_kerberos_container_dn = dc = ejemplo, dc = com [Dbmodules] openldap_ldapconf = { db_library = kldap ldap_kdc_dn = "cn = admin, dc = ejemplo, dc = com"

# Este objeto tiene que haber ledo los derechos de # El mbito contenedor, contenedor de dominio principal y sub-rboles ldap_kadmind_dn = "cn = admin, dc = ejemplo, dc = com"

# Este objeto necesita tener derechos de lectura y escritura en # El mbito contenedor, contenedor de dominio principal y sub-rboles ldap_service_password_file = / etc/krb5kdc/service.keyfile ldap_servers = ldaps :/ / ldap01.example.com ldaps :/ / ldap02.example.com ldap_conns_per_server = 5

3.

Crear el alijo de la contrasea de enlace LDAP:

sudo kdb5_ldap_util-D

cn = admin, dc = ejemplo, dc = com stashsrvpw-f \

/ Etc/krb5kdc/service.keyfile cn = admin, dc = ejemplo, dc = com

4.

Ahora, en el Primaria KDC copiar el / Etc/krb5kdc/.k5.EXAMPLE.COM Llave maestra esconder a los el KDC secundario. Asegrese de copiar el archivo a travs de una conexin cifrada como scp, o en medios fsicos.

sudo scp / etc/krb5kdc/.k5.EXAMPLE.COM steve@kdc02.example.com: ~ sudo mv. k5.EXAMPLE.COM / etc/krb5kdc /

De nuevo, reemplazar EXAMPLE.COM con su mbito real.

5.

De vuelta a la Secundaria KDC, (Re) iniciar el servidor LDAP slo,

sudo service slapd restart

6.

Por ltimo, iniciar el demonio krb5-kdc:

sudo / etc/init.d/krb5-kdc inicio

7.

Verifique que los dos servidores LDAP y Kerberos (por extensin) estn sincronizados.

Ahora tiene KDC redundantes en la red, y con servidores LDAP redundantes que deberan ser capaz de seguir autenticar a los usuarios si un servidor LDAP, un servidor de Kerberos, LDAP o una y otra Kerberos del servidor no est disponible.

137

Autenticacin de red

4,4. Recursos
El Gua de administracin de Kerberos57 tiene algunos detalles adicionales. Para ms informacin sobre kdb5_ldap_util ver Seccin 5.658 y el pgina del manual de kdb5_ldap_util59. Otra opcin til es la krb5.conf pgina de manual60. Asimismo, consulte la Kerberos y LDAP61 pgina wiki de Ubuntu.

57 58 59 http://manpages.ubuntu.com/manpages/precise/en/man8/kdb5_ldap_util.8.html 60 http://manpages.ubuntu.com/manpages/precise/en/man5/krb5.conf.5.html # 61 https://help.ubuntu.com/community/Kerberos kerberos ldap-

138

Captulo 8. Domain Name Service (DNS)


Servicio de Nombres de Dominio (DNS) es un servicio de Internet que asigna direcciones IP y de dominio completo nombres (FQDN) entre s. De esta forma, DNS evita la necesidad de recordar las direcciones IP. Los equipos que se llaman DNS plazo servidores de nombres. Ubuntu viene con BIND (Berkeley Internet Naming Daemon), el programa ms utilizado para el mantenimiento de un servidor de nombres en Linux.

139

Domain Name Service (DNS)

1. Instalacin
En un terminal, introduzca el siguiente comando para instalar dns:

sudo apt-get install bind9

Un paquete muy til para probar y solucionar problemas de DNS es el paquete de dnsutils. Muy a menudo estas herramientas se ha instalado todava, pero para comprobar y / o instalar dnsutils escriba lo siguiente:

sudo apt-get install dnsutils

140

Domain Name Service (DNS)

2. Configuracin
Hay muchas maneras de configurar BIND9. Algunas de las configuraciones ms comunes son el almacenamiento en cach servidor de nombres, maestro primario, y como un maestro de secundaria. Cuando se configura como un servidor de nombres BIND9 almacenamiento en cach se encuentra la respuesta a consultas de nombres y recordar la respuesta cuando el dominio se volvi a preguntar. Como servidor primario BIND9 lee los datos de una zona de un archivo en su husped y es autoridad para esa zona. En una configuracin de maestro secundario BIND9 obtiene los datos de la zona de otro servidor de nombres autorizado para la zona.

2,1. Informacin general


Los archivos de configuracin de DNS se almacenan en la / Etc / bind directorio. El archivo de configuracin principal es / etc / bind / named.conf. La incluir lnea especifica el nombre del archivo que contiene las opciones de DNS. La directorio lnea en la / etc / bind / named.conf.options archivo indica DNS donde buscar los archivos. Todos los usos enlazar los archivos ser relativos a este directorio. El archivo con el nombre / Etc / bind / db.root describe la raz nameservers en el mundo. El cambio de servidores con el tiempo, de modo que el / Etc / bind / db.root archivo se debe mantener de vez en cuando. Esto se hace generalmente como las actualizaciones del paquete bind9. La zona seccin define un servidor maestro, y se almacenan en un archivo mencionado en el expediente opcin. Es posible configurar el mismo servidor para ser un servidor de nombres cach, maestro de primaria y secundaria maestro. Un servidor puede ser el inicio de autoridad (SOA) para una zona, mientras que proporciona servicio secundario por otra zona. Todo el tiempo la prestacin de servicios de almacenamiento en cach para las mquinas de la LAN local.

2,2. Nombre del servidor de almacenamiento en cach


La configuracin por defecto est configurado para actuar como un servidor de almacenamiento en cach. Todo lo que se requiere es simplemente aadir la Las direcciones IP de los servidores DNS de su ISP. Simplemente quite y editar el siguiente en / Etc / bind / named.conf.options:

forwarders { 1.2.3.4; 5.6.7.8; };

Reemplazar 1.2.3.4 y 5.6.7.8 con las direcciones IP de servidores de nombres reales.

Ahora reinicie el servidor DNS, para habilitar la nueva configuracin. Desde una terminal:

141

Domain Name Service (DNS)

sudo service bind9 reiniciar

Ver Seccin 3.1.2, "cavar" [p. 147] para obtener informacin sobre las pruebas un almacenamiento en cach del servidor DNS.

2,3. Maestro de Primaria


En esta seccin BIND9 ser configurado como el maestro primario para el dominio example.com. Simplemente reemplazar example.com con su nombre de dominio completo (Fully Qualified Domain Name). 2.3.1. Adelante Archivo de Zona Para agregar una zona DNS BIND9, convirtiendo BIND9 en un servidor maestro primario, el primer paso es editar / etc / bind / named.conf.local:

zone "example.com" { type master; archivo "/ etc / bind / db.example.com"; };

Ahora usa un archivo de zona existente como una plantilla para crear la / Etc / bind / db.example.com archivo:
sudo cp / etc / bind / db.local / etc / bind / db.example.com

Edite el nuevo archivo de zona / Etc / bind / db.example.com cambiar localhost. que el nombre completo dejando el adicional "." al final. Cambiar 127.0.0.1 a la direccin IP del servidor de nombres y servidor, de su root.localhost a una direccin de correo electrnico vlida, pero con un "." en lugar del habitual smbolo "@", dejando de nuevo el "." al final. Cambiar el comentario para indicar el dominio que este archivo es para el. Crear una Un registro para el dominio de base, example.com. Tambin, crear una Un registro para ns.example.com, el servidor de nombres en este ejemplo:

; ; BIND archivo de datos para example.com ; $ TTL @ 604800 EN SOA example.com. root.example.com. ( 2 604800 86400 2419200 604800) EN ; @ @ @ ns EN EN EN EN NS A AAAA A ns.example.com. 192.168.1.10 :: 1 192.168.1.10 A 192.168.1.10 ; De serie ; Actualizar ; Reintentar ; De Vencimiento ; Negativa de cach TTL

142

Domain Name Service (DNS)

Se debe incrementar el Nmero de serie cada vez que realice cambios en el archivo de zona. Si usted hace varios cambios antes de reiniciar BIND9, simplemente aumenta la serie una vez. Ahora, usted puede agregar registros DNS en el fondo del archivo de zona. Ver Seccin 4.1, "Registro Comn Tipos de "[p. 151] para ms detalles. Muchos administradores les gusta usar la ltima fecha editado como el de serie de una zona, tales como 2012010100 que es yyyymmddss (donde ss es el nmero de serie) Una vez que haya realizado cambios en el archivo de zona BIND9 tiene que ser reiniciado para que los cambios surtan efecto:
sudo service bind9 reiniciar

2.3.2. Invertir Archivo de Zona Ahora que la zona es la configuracin y la resolucin de nombres a IP Direcciones uno Invierta la zona Tambin se requiere. Apermite a los DNS para resolver una direccin a un Zona inversa nombre. Editar / etc / bind / named.conf.local y aadir lo siguiente:

zona "1.168.192.in-addr.arpa" { type master; archivo "/ etc/bind/db.192"; };

Reemplazar 1.168.192 con los primeros tres octetos de cualquier red que est utilizando. Adems, el nombre del archivo de zona / Etc/bind/db.192 apropiadamente. Debe coincidir con el primer octeto de su red. Ahora crea el / Etc/bind/db.192 archivo:

sudo cp / etc/bind/db.127 / etc/bind/db.192

La prxima edicin / Etc/bind/db.192 cambiando los bsicamente las mismas opciones / Etc / bind / db.example.com:
; ; Reverso los datos del archivo de BIND para la red local de 192.168.1.XXX ; $ TTL @ 604800 EN SOA ns.example.com. root.example.com. ( 2; serie 604800 86400 2419200 604800) ; ; Actualizar ; Reintentar ; De Vencimiento ; Negativa de cach TTL

143

Domain Name Service (DNS)


@ 10 EN EN NS PTR ns. ns.example.com.

La Nmero de serie en la zona inversa debe ser incrementado en cada cambio tambin. Para cada Un registro se configura en la / Etc / bind / db.example.com, Es decir, para una direccin diferente, es necesario crear una Registro PTR en / Etc/bind/db.192. Despus de crear el archivo de zona inversa reiniciar BIND9:

sudo service bind9 reiniciar

2,4. Maestro de Secundaria


Una vez que un Maestro de Primaria se ha configurado un Maestro de Secundaria se necesita para mantener el disponibilidad del dominio que el principal no est disponible. En primer lugar, en el servidor maestro primario, la transferencia de zona que se debe permitir. Aadir el allowtransfer opcin para el ejemplo de avance y retroceso en la definicin de zonas / Etc / bind / named.conf.local:
zone "example.com" { type master; archivo "/ etc / bind / db.example.com"; allow-transfer {192.168.1.11;}; }; zona "1.168.192.in-addr.arpa" { type master; archivo "/ etc/bind/db.192"; allow-transfer {192.168.1.11;}; };

Reemplazar 192.168.1.11 con la direccin IP de su servidor de nombres secundario.

Reinicie BIND9 en el maestro de primaria:

sudo service bind9 reiniciar

A continuacin, en el maestro secundario, instale el paquete bind9 la misma manera que en la primaria. A continuacin, edite la / Etc / bind / named.conf.local y aadir las siguientes declaraciones para el Avance y retroceso zonas:

zone "example.com" { tipo de esclavo; archivo "db.example.com"; maestros {192.168.1.10;}; };

144

Domain Name Service (DNS)

zona "1.168.192.in-addr.arpa" { tipo de esclavo; archivo "db.192"; maestros {192.168.1.10;}; };

Reemplazar 192.168.1.10 con la direccin IP de su servidor de nombres primario.

Reinicie BIND9 en el maestro secundario:

sudo service bind9 reiniciar

En / Var / log / syslog usted debe ver algo similar a (algunas lneas se han dividido de acuerdo al formato de este documento):

cliente 192.168.1.10 # 39448: recibi notificacin para la zona '1 .168.192 in-addr.arpa ". zona de 1.168.192.in-addr.arpa/IN: Transferencia de empezar. transferencia de '100 .18.172.in-addr.arpa/IN desde 192.168.1.10 # 53: conectado a travs de 192.168.1.11 # 37531 zona de 1.168.192.in-addr.arpa/IN: serie transferido 5 transferencia de '100 .18.172.in-addr.arpa/IN desde 192.168.1.10 # 53: Traslado completado: 1 mensajes 6 registros, 212 bytes, 0.002 secs (106000 bytes por segundo) zona de 1.168.192.in-addr.arpa/IN: notifica el envo de serie (5) cliente 192.168.1.10 # 20329: recibi notificacin de 'example.com' zona de zona example.com / EN: Transferencia de empezar. la transferencia de 'example.com / EN "de 192.168.1.10 # 53: conctate con 192.168.1.11 # 38577 zona example.com / EN: serie transferido 5 la transferencia de 'example.com / EN "de 192.168.1.10 # 53: Transferencia de datos completa: 1 mensajes 8 registros, 225 bytes, 0.002 secs (112500 bytes por segundo)

Nota: Una zona slo se transfiere si el Nmero de serie en el primario es mayor que el una en el secundario. Si usted quiere tener su DNS primario maestro notificar Secundaria Los servidores DNS de los cambios de zona, puede agregar Tambin a notificar {direccionip;}; en que /
Etc / bind / named.conf.local

como se muestra en el ejemplo siguiente:

zone "example.com" { type master; archivo "/ etc / bind / db.example.com"; allow-transfer {192.168.1.11;}; Tambin a notificar {192.168.1.11;}; }; zona "1.168.192.in-addr.arpa" { type master; archivo "/ etc/bind/db.192";

145

Domain Name Service (DNS)


allow-transfer {192.168.1.11;}; Tambin a notificar {192.168.1.11;}; };

El directorio por defecto para los archivos de zona no autorizada es / Var / cache / bind /. Este directorio tambin se configura en AppArmor para permitir que el demonio named para escribir en l. Para obtener informacin sobre AppArmor vea Seccin 4, "AppArmor" [p. 167]. ms

146

Domain Name Service (DNS)

3. Solucin de problemas
Esta seccin cubre las maneras de ayudar a determinar la causa cuando surgen problemas con el DNS y BIND9.

3,1. Pruebas
3.1.1. resolv.conf El primer paso en las pruebas de BIND9 es aadir la direccin IP del servidor de nombres para una resolucin de los ejrcitos. La primaria servidor de nombres debe ser configurado, as como otra mquina para doblar las cosas de verificacin. Basta con editar
/ Etc / resolv.conf

y aadir lo siguiente:

nameserver 192.168.1.10 nameserver 192.168.1.11

Tambin debe agregar la direccin IP del servidor de nombres secundario en el caso de la Primaria no est disponible.

3.1.2. cavar Si ha instalado el paquete de dnsutils usted puede probar su configuracin mediante la bsqueda de DNS excavacin de utilidad: Despus de instalar bind9 excavacin uso en contra de la interfaz de bucle invertido para asegurarse de que est escuchando en el puerto 53. Desde una terminal:
dig-x 127.0.0.1

Debera ver lneas similares al siguiente en la salida del comando:

;, El tiempo de consulta: 1 ms ;, Servidor: 192.168.1.10 # 53 (192.168.1.10)

Si se ha configurado como un BIND9 Almacenamiento en cach servidor de nombres "dig" un dominio externo para comprobar la tiempo de consulta:

dig ubuntu.com

Tenga en cuenta el tiempo de consulta hacia el final de la salida del comando:


;, El tiempo de consulta: 49 ms

Despus de una excavacin segundo debe haber mejoras:

;, El tiempo de consulta: 1 ms

147

Domain Name Service (DNS)

3.1.3. hacer ping Ahora bien, para demostrar cmo las aplicaciones que hacen uso de DNS para resolver un nombre de host utilizar la utilidad ping enviar una solicitud de eco ICMP. Desde una terminal escriba:
mesa de ping example.com

Esta es la prueba si el servidor de nombres puede resolver el nombre de ns.example.com a una direccin IP. El comando de salida debe ser similar a:
PING ns.example.com (192.168.1.10) 56 (84) bytes de datos. 64 bytes from 192.168.1.10: icmp_seq = 1 ttl = 64 tiempo = 0,800 ms 64 bytes from 192.168.1.10: icmp_seq = 2 ttl = 64 tiempo = 0,813 ms

3.1.4. named-checkzone Una gran manera de poner a prueba tus archivos de zona es mediante la utilidad llamado checkzone-instalado con el bind9 paquete. Esta herramienta le permite asegurarse de que la configuracin es correcta antes de reiniciar BIND9 y hacer los cambios vivir. Para probar nuestro ejemplo Adelante archivo de zona introduzca lo siguiente en un smbolo del sistema:
named-checkzone example.com / etc / bind / db.example.com

Si todo est configurado correctamente, debera ver una salida similar a:

zona example.com / IN: loaded serial 6 Aceptar

De manera similar, para probar el archivo de zona inversa introduzca lo siguiente:


named-checkzone 1.168.192.in-addr.arpa / etc/bind/db.192

La salida debera ser similar a:

zona de 1.168.192.in-addr.arpa/IN: serie 3 con carga Aceptar

La Nmero de serie de su archivo de zona ser probablemente diferente.

3,2. Inicio de sesin


BIND9 tiene una amplia variedad de opciones de registro de configuracin disponibles. Hay dos opciones principales. La canal opcin se configura en los registros de ir, y el categora opcin determina qu informacin registrar.

148

Domain Name Service (DNS)

Si no hay ninguna opcin de registro se ha configurado la opcin por defecto es:


registro { categora por defecto {default_syslog; default_debug;}; categora inigualable {null;}; };

Esta seccin cubre la configuracin de BIND9 para enviar depurar mensajes relacionados con las consultas DNS a una por separado archivo. En primer lugar, tenemos que configurar un canal para especificar qu archivo a enviar los mensajes. Editar /
Etc / bind / named.conf.local

y aadir lo siguiente:

registro { canal de query.log { archivo "/ var / log / query.log"; severidad de depuracin 3; }; };

A continuacin, configure una categora para enviar todas las consultas DNS al archivo de consulta:
registro { canal de query.log { archivo "/ var / log / query.log"; severidad de depuracin 3; }; consultas categora query.log {;} };

Nota: el depurar opcin se puede ajustar de 1 a 3. Si un nivel que no se especifica el nivel 1 es el valor predeterminado. Dado que el llamado demonio ejecuta como el se unen el usuario / Var / log / query.log archivo debe ser creado y la propiedad cambi:

sudo touch / var / log / query.log chown bind sudo / var / log / query.log

Antes de demonio named puede escribir en el nuevo archivo de registro del perfil de AppArmor se debe actualizar. En primer lugar, editar / Etc / apparmor.d / usr.sbin.named y aade:

/ Var / log / query.log w,

A continuacin, volver a cargar el perfil de:


cat / etc / apparmor.d / usr.sbin.named | sudo apparmor_parser-r

Para ms informacin sobre Novell AppArmor vea Seccin 4, "AppArmor" [p. 167]

149

Domain Name Service (DNS)

A continuacin, reinicie BIND9 para que los cambios surtan efecto:


sudo service bind9 reiniciar

Usted debe ver el archivo / Var / log / query.log llenar con la informacin de la consulta. Esta es una sencilla de las opciones de registro BIND9. Para la cobertura de opciones avanzadas, consultar Seccin 4.2, "Ms ejemplo De la informacin "[p. 151].

150

Domain Name Service (DNS)

4. Referencias
4,1. Tipos comunes de registro
Esta seccin cubre algunos de los tipos de registro DNS ms comunes. ARegistro: Este registro asigna una direccin IP a un nombre de host.

www

EN

192.168.1.12

CNAME Registro: Se utiliza para crear un alias a una ya existente un registro. No se puede crear un CNAME registro que apunta a otro registro CNAME.

web

EN

CNAME

www

MX Registro: Se utiliza para definir donde el correo electrnico deben enviarse a. Debe apuntar a un registro A, no un CNAME.
EN correo EN MX A 1 mail.example.com. 192.168.1.13

NS Registro: Se utiliza para definir qu servidores sirven copias de una zona. Debe apuntar a un registro A, no un CNAME. Aqu es donde los servidores primario y secundario se definen.

EN EN ns ns2 EN EN

NS NS A A

ns.example.com. ns2.example.com. 192.168.1.10 192.168.1.11

4,2. Ms informacin
El DNS COMO1 explica las opciones ms avanzadas para la configuracin de BIND9. Para la cobertura de la profundidad de DNS y BIND9 ver Bind9.net2. DNS and BIND3 es un libro muy popular ahora en su quinta edicin. Un gran lugar para pedir ayuda BIND9, y que se involucren con la comunidad de Ubuntu Server, se la # Ubuntu-server Canal de IRC en freenode4. Asimismo, consulte la BIND9 COMO Servidor5 en el Wiki de Ubuntu.

1 http://www.tldp.org/HOWTO/DNS-HOWTO.html 2 http://www.bind9.net/ 3 http://www.oreilly.com/catalog/dns5/index.html 4 http://freenode.net 5 https://help.ubuntu.com/community/BIND9ServerHowto

151

Captulo 9. Seguridad
La seguridad siempre debe tenerse en cuenta al instalar, implementar y usar cualquier tipo de ordenador sistema. A pesar de una instalacin nueva de Ubuntu es relativamente seguro para su uso inmediato en la Internet, Es importante tener una comprensin equilibrada de la situacin de seguridad en sistemas basados en la forma en que se se utiliza despus del despliegue. En este captulo se ofrece una visin general de temas relacionados con la seguridad, ya que pertenecer a Ubuntu 12.04 LTS Server Edition, y se esbozan las medidas simples que usted puede utilizar para proteger el servidor y la red de cualquier nmero de posibles amenazas de seguridad.

152

Seguridad

1. Gestin de usuarios
La administracin de usuarios es una parte fundamental de mantener un sistema seguro. Ineficaz de usuario y los privilegios la gestin de muchos sistemas a menudo conducen a que se vea comprometida. Por lo tanto, es importante que entender cmo usted puede proteger su servidor a travs de la gestin de la cuenta de usuario simple y eficaz tcnicas.

1,1. Dnde est la raz?


Los desarrolladores de Ubuntu tomado una decisin concienzuda para deshabilitar la cuenta de root por defecto administrativa en todas las instalaciones de Ubuntu. Esto no significa que la cuenta de raz se ha eliminado o que puede no puede acceder. Simplemente se le ha dado una contrasea que coincide con ningn valor encriptado posible, por lo tanto no puede acceder directamente por s mismo. En cambio, los usuarios estn invitados a hacer uso de una herramienta con el nombre de sudo para llevar a cabo el sistema las tareas administrativas. Sudo permite a un usuario autorizado para elevar temporalmente sus privilegios usando su propia contrasea en lugar de tener que saber la contrasea perteneciente a la cuenta de root. Esta metodologa sencilla y eficaz ofrece la rendicin de cuentas para todas las acciones del usuario, y da la de control del administrador granular sobre qu acciones puede realizar un usuario con dichos privilegios. Si por alguna razn usted desea habilitar la cuenta de root, slo tiene que dar una contrasea:

sudo passwd

Sudo le pedir su contrasea, y luego le pedir que proporcione una contrasea nueva para root, como se muestra a continuacin:
Contrasea [sudo] el nombre de usuario: (Introducir su propia contrasea) Escriba la nueva contrasea de UNIX: (Introducir una nueva contrasea para root) Vuelva a escribir la nueva contrasea de UNIX: (Repetir nueva contrasea para root) passwd: password updated successfully

Para desactivar la cuenta de root, utilice la sintaxis siguiente passwd:

sudo passwd-l root

Usted debe leer ms sobre Sudo por el control de su pgina de manual:

el hombre sudo

Por defecto, el usuario inicial creado por el instalador de Ubuntu es un miembro del grupo "admin", que es agrega al archivo / Etc / sudoers sudo como un usuario autorizado. Si desea dar a cualquier otra cuenta completa acceso de root a travs de sudo, slo tiene que aadir al grupo de administracin.

153

Seguridad

1,2. Agregar y eliminar usuarios


El proceso para la gestin de usuarios y grupos locales es directa y se diferencia muy poco de la mayora otras distribuciones GNU / Linux los sistemas operativos. Ubuntu y otras distribuciones basadas en Debian, fomentar el uso de la "adduser" paquete para la gestin de cuentas. Para agregar una cuenta de usuario, use la siguiente sintaxis, y siga las instrucciones para dar cuenta de un contrasea e identificable caractersticas tales como un nombre completo, nmero de telfono, etc

nombre de usuario sudo adduser

Para eliminar una cuenta de usuario y su grupo primario, use la siguiente sintaxis:

nombre de usuario deluser sudo

Eliminacin de una cuenta no elimina su carpeta de inicio correspondiente. Es hasta usted si o no que desea borrar manualmente la carpeta o la mantenga de acuerdo a sus polticas de retencin deseados.

Recuerde, cualquier usuario aadido ms tarde con el mismo UID / GID como el anterior propietario tendr ahora el acceso a esta carpeta si no ha tomado las precauciones necesarias.

Es posible que desee cambiar estos valores UID / GID a algo ms apropiado, como la raz teniendo en cuenta, y tal vez incluso la ubicacin de la carpeta para evitar conflictos en el futuro:

sudo chown-R root: root / home / usuario / sudo mkdir / home / archived_users / sudo mv / home / usuario / home / archived_users o

Para bloquear o desbloquear temporalmente una cuenta de usuario, use la sintaxis siguiente, respectivamente:
sudo passwd-l nombre de usuario sudo passwd-u nombre de usuario

Para agregar o eliminar un grupo personalizado, utilice la sintaxis siguiente, respectivamente:

sudo addgroup nombre de grupo sudo delgroup groupname

Para aadir un usuario a un grupo, utilice la siguiente sintaxis:

sudo adduser nombre de usuario nombre de grupo

1,3. Seguridad del usuario Perfil


Cuando un usuario se crea una nueva, la utilidad adduser crea un directorio de marca nuevo hogar llamado / Home / Nombre de usuario, Respectivamente. El perfil por defecto se basa en el contenido que se encuentra en el directorio de / etc / skel, Que incluye todos los aspectos bsicos del perfil. 154

Seguridad

Si su servidor ser el hogar de varios usuarios, se debe prestar mucha atencin a la home del usuario permisos de directorio para garantizar la confidencialidad. De forma predeterminada, los directorios personales de los usuarios de Ubuntu son creada con el mundo de lectura / permisos de ejecucin. Esto significa que todos los usuarios pueden buscar y acceder a la otros directorios de los usuarios. Esto puede no ser adecuado para su entorno. contenido de Para verificar sus usuarios actuales permisos del directorio de origen, utilice la siguiente sintaxis:

ls-ld / home / usuario

La siguiente salida muestra que el directorio / Home / usuario tiene permisos de lectura del mundo:

drwxr-xr-x

4096 10/02/2007 20:03 nombre de usuario 2 Nombre de usuario Nombre de usuario

Puede eliminar los permisos de lectura del mundo que utilizan la siguiente sintaxis:

sudo chmod 0750 / home / usuario

Algunas personas tienden a utilizar la opcin recursiva (-R) de manera indiscriminada, que modifica todas las subcarpetas y archivos, pero esto no es necesario, y puede dar otros resultados no deseados. El directorio padre solo es suficiente para impedir el acceso no autorizado a cualquier cosa por debajo de la matriz. Un enfoque mucho ms eficiente que el asunto sera la de modificar el valor predeterminado global adduser permisos al crear carpetas personales de los usuarios. Basta con editar el archivo / Etc / adduser.conf y modificar la DIR_MODE variable a algo ms apropiado, de modo que todos los directorios de casas nuevas recibir el permisos adecuados.

DIR_MODE = 0750

Despus de corregir los permisos del directorio utilizando cualquiera de las tcnicas mencionadas anteriormente, verifique los resultados utilizando la siguiente sintaxis:
ls-ld / home / usuario

Los siguientes resultados muestran que los permisos de lectura del mundo se han eliminado:

drwxr-x ---

4096 10/02/2007 20:03 nombre de usuario 2 Nombre de usuario Nombre de usuario

1,4. Directiva de contraseas


Una directiva de contraseas seguras es uno de los aspectos ms importantes de su postura de seguridad. Muchos infracciones de seguridad exitosas involucran la fuerza bruta y ataques de diccionario contra la debilidad contraseas. Si tiene la intencin de ofrecer ningn tipo de acceso remoto que involucre su contrasea del sistema local, asegurarse de que usted aborda adecuadamente los requisitos mnimos de complejidad de contrasea, contrasea de mxima vidas, y las auditoras frecuentes de sus sistemas de autenticacin. 155

Seguridad

1.4.1. Longitud mnima de la contrasea Por defecto, Ubuntu requiere una longitud mnima de la contrasea de 6 caracteres, as como de base alguna controles entropa. Estos valores son controlados en el archivo / Etc / pam.d / common-password, Que es se describe a continuacin.

contrasea

[xito = 2 por defecto = ignore]

pam_unix.so oscura sha512

Si desea ajustar la longitud mnima de 8 caracteres, cambie la variable adecuada para min = 8. La modificacin se exponen a continuacin.

contrasea

[xito = 2 por defecto = ignore]

pam_unix.so oscura sha512 min = 8

Controles bsicos de la entropa de contraseas y las normas mnimas de longitud no se aplican al administrador utilizando los comandos sudo nivel para configurar un nuevo usuario. 1.4.2. Caducidad de la contrasea Al crear cuentas de usuario, usted debe hacer una poltica de tener un mnimo y un mximo contrasea de la edad obliga a los usuarios cambiar sus contraseas cuando caducan. Para ver fcilmente el estado actual de una cuenta de usuario, use la siguiente sintaxis:

sudo chage-l nombre de usuario

La salida de abajo muestra datos interesantes sobre la cuenta de usuario, es decir, que no hay polticas aplica:

ltimo cambio de contrasea Contrasea expira Contrasea inactiva Cuenta caduca Nmero mnimo de das entre el cambio de contrasea El nmero mximo de das entre el cambio de contrasea Nmero de das de advertencia antes de que caduque la contrasea

: 20 de enero 2008 : Nunca : Nunca : Nunca : 0 : 99999 : 7

Para cambiar cualquiera de estos valores, basta con utilizar la siguiente sintaxis, y siga los mensajes interactivos:

nombre de usuario sudo chage

El siguiente es un ejemplo de cmo puede cambiar manualmente la fecha de caducidad explcita (E) al 01/31/2008, la edad mnima de la contrasea (-m) de 5 das, la edad mxima de la contrasea (-M) de 90 das, perodo de inactividad (-I) de 5 das despus de la expiracin de la contrasea, y un perodo de tiempo de aviso (-W), de 14 das antes de la caducidad de la contrasea.

chage-E sudo 01/31/2011-m 5-M 90-I-30 W 14 nombre de usuario

Para comprobar los cambios, utilice la misma sintaxis que se ha mencionado anteriormente: 156

Seguridad

sudo chage-l nombre de usuario

La salida de abajo muestra las nuevas polticas que se han establecido para la cuenta:

ltimo cambio de contrasea Contrasea expira Contrasea inactiva Cuenta caduca Nmero mnimo de das entre el cambio de contrasea El nmero mximo de das entre el cambio de contrasea Nmero de das de advertencia antes de que caduque la contrasea

: 20 de enero 2008 : 19 de abril 2008 : 19 de mayo 2008 : 31 de enero 2008 : 5 : 90 : 14

1,5. Otras consideraciones de seguridad


Muchas aplicaciones utilizan mecanismos alternativos de autenticacin que pueden ser fcilmente pasados por alto, incluso por los administradores de sistemas con experiencia. Por lo tanto, es importante para comprender y controlar cmo los usuarios autenticar y obtener acceso a los servicios y aplicaciones en el servidor. 1.5.1. SSH acceso de los usuarios de movilidad reducida Simplemente desactivar / bloqueo de una cuenta de usuario no impedir que un usuario inicie sesin en el servidor de forma remota si se ha configurado la autenticacin RSA de clave pblica. Todava ser capaz de ganar acceso a una consola para el servidor, sin necesidad de ninguna contrasea. Recuerde consultar a los usuarios Inicio gua para los archivos que permitan este tipo de acceso SSH autenticado. por ejemplo / Home /
nombre de usuario / .ssh / authorized_keys.

Quitar o cambiar el nombre del directorio de . Ssh / en la carpeta principal del usuario para evitar la autentificacin de SSH ms capacidades. Asegrese de comprobar que no existen conexiones SSH establecidas por el usuario con discapacidad, ya que es posible que puedan tienen las conexiones existentes de entrada o de salida. Matar a cualquiera que se encuentran. Restringir el acceso SSH a cuentas de usuario nico que debe tener. Por ejemplo, puede crear un grupo de llamado "sshlogin" y aadir el nombre del grupo como el valor asociado a la AllowGroups variable encuentra en el archivo / Etc / ssh / sshd_config.

AllowGroups sshlogin

A continuacin, agregue sus usuarios SSH permitidos al grupo "sshlogin", y reinicie el servicio SSH.

sudo adduser nombre de usuario sshlogin sudo service ssh restart

1.5.2. Base de datos de autenticacin de usuarios externos La mayora de las redes empresariales requieren controles centralizados de autenticacin y el acceso de todo el sistema recursos. Si ha configurado el servidor para autenticar a los usuarios contra las bases de datos externas, ya sea

157

Seguridad

asegrese de desactivar las cuentas de usuario, tanto externa como local, de esta manera se asegura de que reserva local de la autenticacin no es posible.

158

Seguridad

2. Seguridad de la consola
Como con cualquier otra barrera de seguridad se pone en su lugar para proteger su servidor, es bastante difcil de defender contra el dao incalculable causado por alguien con acceso fsico a su entorno, por ejemplo, robo de discos duros, de energa o la interrupcin del servicio, y as sucesivamente. Por lo tanto, la consola de la seguridad debe ser dirigida slo como un componente de su estrategia global de la seguridad fsica. Un cerrado "pantalla puerta" puede disuadir a un delincuente ocasional, o al menos frenar un determinado uno, por lo que sigue siendo recomendable realizar las precauciones bsicas en materia de seguridad de la consola. Las instrucciones siguientes le ayudarn a defender a su servidor contra los problemas que de otro modo podran producir muy consecuencias graves.

2,1. Desactivar Ctrl + Alt + Supr


En primer lugar, cualquier persona que tenga acceso fsico al teclado puede simplemente utilizar el Ctrl + Alt + Supr combinacin de teclas para reiniciar el servidor sin tener que iniciar sesin. Claro, alguien podra simplemente desconecte la fuente de alimentacin, pero debe evitar el uso de esta combinacin de teclas en un servidor de produccin. Esto obliga a un atacante tomar medidas ms drsticas para reiniciar el servidor, y evitar reinicios accidentales al mismo tiempo. Para desactivar la accin tomada por el reinicio presionando el Ctrl + Alt + Supr combinacin de teclas, como comentario la siguiente lnea en el archivo / Etc / init / control-alt-delete.conf.

# Exec shutdown-r now "Control-Alt-Supr presionado"

159

Seguridad

3. Firewall
3,1. Introduccin
El kernel Linux incluye el Netfilter subsistema, que se utiliza para manipular o decidir el destino del trfico de red dirigido hacia oa travs de su servidor. Todas las modernas soluciones de firewall de Linux utilizar este sistema de filtrado de paquetes. El ncleo del sistema de filtrado de paquetes sera de poca utilidad para los administradores, sin un espacio de usuario interfaz para su gestin. Este es el propsito de iptables. Cuando un paquete llega a su servidor, ser entregan al subsistema Netfilter para la aceptacin, la manipulacin, o el rechazo basado en las reglas suministrado a la misma desde el espacio de usuario a travs de iptables. As, iptables es todo lo que necesita para administrar su servidor de seguridad si usted est familiarizado con l, pero muchos estn disponibles interfaces para simplificar la tarea.

3,2. UFW - Firewall sin complicaciones


El firewall por defecto la herramienta de configuracin de Ubuntu es UFW. Desarrollado para facilitar el firewall iptables configuracin, UFW proporciona una manera fcil de usar para crear una direccin IPv4 o IPv6 firewall basado en host. UFW por defecto est desactivada inicialmente. Desde la pgina del manual de UFW: "UFW no est diseado para proporcionar la funcionalidad de servidor de seguridad completa a travs de su interfaz de comandos, pero en cambio ofrece una manera fcil de agregar o quitar reglas simples. En la actualidad se utiliza principalmente para la basada en host cortafuegos. " Los siguientes son algunos ejemplos de cmo utilizar UFW: En primer lugar, UFW tiene que estar habilitado. Desde una terminal escriba:

sudo enable UFW

Para abrir un puerto (ssh en este ejemplo):

UFW sudo permiten 22

Las reglas tambin se pueden aadir mediante un numerado formato:


insercin UFW sudo permite un 80

Del mismo modo, para cerrar un puerto abierto:

UFW sudo negar 22

Para eliminar una regla, utilice delete seguido de la regla:

sudo borrar UFW niega 22

Tambin es posible permitir el acceso de los ordenadores o redes especficos para un puerto. El siguiente ejemplo permite el acceso ssh desde el host 192.168.0.2 a cualquier direccin IP en el host:

160

Seguridad

UFW sudo permiten proto tcp desde 192.168.0.2 a cualquier puerto 22

Reemplazar 192.168.0.2 con 192.168.0.0/24 para permitir el acceso ssh desde la subred completa. Adicin de la - Dry-run opcin de un UFW comando mostrar las reglas resultantes, pero no los aplica. Por ejemplo, lo siguiente es lo que se aplicara si la apertura del puerto HTTP:

UFW sudo - dry-run permite http

* Filtro de : : : : : Ufw-user-input - [0:0] Ufw-user-salida - [0:0] Ufw-user-hacia adelante - [0:0] Ufw-user-lmite - [0:0] Ufw-user-lmite-aceptar - [0:0]

REGLAS # # # # # # # # # # # # Tupla permiten TCP 80 0.0.0.0 / 0 cualquier 0.0.0.0 / 0 -A tcp UFW-user-input-p - dport 80-j ACCEPT # # # END REGLAS # # # -A VOLVER UFW-user-input-j -A VOLVER UFW-user-output-j -A VOLVER UFW-user-hacia adelante-j -Un lmite de UFW-user-lmite-m - lmite 3/minute-j LOG - log-prefix "[LMITE UFW]:" -A UFW-user-limit-j REJECT -A UFW-user-lmite-accept-j ACCEPT COMMIT Reglas de actualizacin

UFW se puede desactivar por:

UFW sudo deshabilitar

Para ver el estado del firewall, escriba:

estado de UFW sudo

Y para obtener ms informacin sobre el estado detallado usar:


UFW sudo estado detallado

Para ver el numerado formato:

estado de UFW sudo contados

Si el puerto que desea abrir o cerrar se define en / Etc / services, Puede utilizar el puerto nombre en lugar del nmero. En los ejemplos anteriores, reemplazar 22 con ssh.

161

Seguridad

Esta es una breve introduccin al uso de UFW. Por favor refirase a la pgina del UFW para ms informacin. 3.2.1. UFW Integracin de Aplicaciones Las aplicaciones que los puertos abiertos pueden incluir un perfil de UFW, el cual detalla los puertos necesarios para el aplicacin para funcionar correctamente. Los perfiles se mantienen en / Etc / ufw / applications.d, Y puede editar si los puertos por defecto han sido cambiadas. ser Para ver las aplicaciones que ha instalado un perfil, escriba lo siguiente en una terminal:

UFW sudo lista de aplicaciones

Similar a la que permite el trfico a un puerto, con un perfil de aplicacin se lleva a cabo mediante la introduccin de:
UFW sudo permitir a Samba

Una sintaxis extendida est disponible, as:

UFW desde 192.168.0.0/24 permite a cualquier aplicacin de Samba

Reemplazar Samba y 192.168.0.0/24 con el perfil de aplicacin que est utilizando y el rango de direcciones IP de red. su No es necesario especificar el protocolo para la aplicacin, debido a que la informacin es detalla en el perfil. Adems, tenga en cuenta que el aplicacin reemplaza el nombre de puerto nmero. Para ver detalles sobre los puertos, protocolos, etc, se define para una aplicacin, entrar en:

UFW sudo aplicacin info Samba

No todas las aplicaciones que requieren la apertura de un puerto de red vienen con perfiles de agua no contabilizada,aplicacin y desea que el archivo se incluye en el paquete, por favor enva un error contra el perfilado una pero si usted tiene paquete en Launchpad.

ubuntu-bug nameofpackage

3,3. Enmascaramiento IP
El propsito de enmascaramiento IP es permitir que las mquinas con direcciones IP privadas, no se pueden enrutar en su la red para acceder a Internet a travs de la mquina que realiza el enmascaramiento. El trfico de la privada de la red destinado a Internet debe ser manipulado con las respuestas puedan encaminarse de nuevo a la mquina que realiz la solicitud. Para ello, el ncleo debe modificar el fuente Direccin IP de cada paquete de forma que respuestas sern enviados de nuevo a l, en lugar de a la direccin IP privada que hizo la solicitud, que es imposible a travs de Internet. Linux utiliza Conexin de seguimiento (Conntrack) para realizar un seguimiento de los cuales conexiones pertenencen a qu mquinas y reencaminar adecuadamente cada paquete de retorno. El trfico que sale la red privada es por lo que "disfraz" como que se origin a partir de su puerta de enlace de Ubuntu. Este proceso se denomina en la documentacin de Microsoft como Conexin compartida a Internet.

162

Seguridad

3.3.1. ufw Masquerading Enmascaramiento de IP se puede lograr utilizando reglas personalizadas UFW. Esto es posible porque la corriente de respaldo finales de UFW es iptables-restore con los archivos de reglas ubicados en / Etc / ufw / *. Normas. Estos archivos buen lugar para aadir iptables antiguas reglas que se usan sin UFW, y las reglas que son ms o gateway de la red son un puente de relacin. Las normas se dividen en dos archivos diferentes, reglas que se deben ejecutar antes de la lnea de comandos UFW normas y reglas que se ejecutan despus de las reglas de lnea de comandos UFW. En primer lugar, el reenvo de paquetes debe ser habilitada en UFW. Dos archivos de configuracin tendr que ser ajustado, en / Etc / default / ufw cambiar el DEFAULT_FORWARD_POLICY a "aceptar":
= DEFAULT_FORWARD_POLICY "ACEPTAR"

A continuacin, edite / Etc / UFW / sysctl.conf y elimine el comentario:


net/ipv4/ip_forward = 1

Del mismo modo, para descomentar el reenvo IPv6:

net/ipv6/conf/default/forwarding = 1

Ahora vamos a aadir reglas a la / Etc / ufw / before.rules archivo. Las reglas por defecto slo se configura el filtrar mesa, y habilitar el enmascarado de la nat mesa tendr que ser configurado. Agregue el siguiente a la parte superior del archivo justo despus de los comentarios de cabecera:

Nmero de nat reglas de mesa * NAT : POSTROUTING ACCEPT [0:0] # Reenviar el trfico de eth1 a travs de eth0. -A POSTROUTING-s 192.168.0.0/24-o eth0-j MASQUERADE # No elimine el 'commit' de lnea o estas reglas tabla NAT no ser procesado COMMIT

Los comentarios no son estrictamente necesarias, pero se considera una buena prctica documentar su configuracin. Adems, cuando la modificacin de cualquiera de los normas los archivos en / Etc / ufw, Asegrese de que estas lneas son la ltima lnea de cada tabla modificada:
# No elimine el 'commit' de lnea o estas reglas no ser procesado COMMIT

Para cada Mesa una correspondiente COMMIT declaracin se requiere. En estos ejemplos slo el nat y filtrar las tablas se muestran, pero tambin se puede aadir reglas para la crudo y mangle tablas. 163

Seguridad

En el ejemplo anterior reemplazar eth0, eth1, y 192.168.0.0/24 con la apropiada las interfaces y el rango de IP para su red. Por ltimo, desactivar y volver a habilitar la UFW para aplicar los cambios:
UFW sudo && sudo desactivar enable UFW

Enmascaramiento de IP ahora debe estar habilitado. Tambin puede agregar cualquier norma adicional hacia adelante a la / Etc / ufw / before.rules. Se recomienda que estas reglas adicionales se aaden a la UFW-antesadelante cadena. 3.3.2. iptables Masquerading iptables tambin se puede utilizar para habilitar enmascaramiento. Similar a la UFW, el primer paso es permitir el reenvo de paquetes IPv4 mediante la edicin de / Etc / sysctl.conf y descomentar la siguiente lnea
net.ipv4.ip_forward = 1

Si desea habilitar el reenvo IPv6 tambin se quite:

net.ipv6.conf.default.forwarding = 1

A continuacin, ejecute el comando sysctl para activar la nueva configuracin en el fichero de configuracin:
sudo sysctl-p

Enmascaramiento IP ahora se puede lograr con una sola regla de iptables, que pueden diferir ligeramente basado en la configuracin de red:

sudo iptables-t nat-A POSTROUTING-s MASQUERADE 192.168.0.0/16-o ppp0-j

El comando anterior supone que el espacio de direcciones privadas es 192.168.0.0/16 y que su Dispositivos orientados a Internet es ppp0. La sintaxis se descompone de la siguiente manera: -t nat - la regla es entrar en la tabla nat -A POSTROUTING - la regla se van a aadir (-A) a la cadena POSTROUTING -s 192.168.0.0/16 - la regla se aplica al trfico originado en el espacio de direcciones especificado -o ppp0 - la regla se aplica al trfico programado para ser enviadas a travs del dispositivo de red especificado -j MASQUERADE - el trfico coincidiendo esta regla es la de "saltar" (-j) al destino MASQUERADE para ser manipulados como se ha descrito anteriormente Adems, cada cadena en la tabla filter (la tabla por defecto, y donde la mayora o la totalidad filtrado de paquetes se produce) tiene un valor predeterminado poltica de ACCEPT, pero, si va a crear un servidor de seguridad, adems de un puede haber establecido las dispositivo de puerta de enlacepolticas a DROP o REJECT, en cuyo caso el trfico enmascarado necesita que se les permita a travs de la cadena FORWARD de la regla anterior para trabajar:

164

Seguridad

iptables-A FORWARD ACCEPT sudo-s 192.168.0.0/16-o ppp0-j iptables-A FORWARD-d sudo 192.168.0.0/16-m state \ - State ESTABLISHED, RELATED-i ppp0-j ACCEPT

Los comandos anteriores se permiten todas las conexiones de su red local a Internet y todos los trfico relacionado con esas conexiones para volver a la mquina que los inici. Si desea disfrazado para estar habilitado en el reinicio, el cual es probable que s, editar / Etc / rc.local y aadir los comandos utilizados por encima. Por ejemplo, agrega el primer comando sin filtro:

iptables-t nat-A POSTROUTING-s MASQUERADE 192.168.0.0/16-o ppp0-j

3,4. Registros
Los registros del firewall son esenciales para el reconocimiento de los ataques, solucionar los problemas de las reglas del cortafuegos, y darse cuenta de una actividad inusual en la red. Usted debe incluir reglas de registro en el servidor de seguridad para que sean generado, sin embargo, las reglas y el registro debe venir antes de cualquier norma aplicable en la terminacin (por regla general con una objetivo que decide el destino del paquete, como ACCEPT, DROP, o REJECT). Si est utilizando UFW, puede activar el registro, escriba lo siguiente en una terminal:

UFW sudo iniciar sesin

Para desactivar el registro en la UFW, basta con sustituir en con de En el comando anterior. Si el uso de iptables en lugar de UFW, escriba:

iptables-A INPUT-sudo estatales m - state NEW-p tcp - dport 80 \ -J LOG - log-prefix "NEW_HTTP_CONN:"

Una peticin en el puerto 80 desde la mquina local, entonces, generar un registro en dmesg que tiene este aspecto (Una sola lnea se dividi en tres para adaptarse a este documento):
[4304885.870000] NEW_HTTP_CONN: IN = OUT = MAC he = 00:00:00:00:00:00:00:00:00:00:00:00:08:00 SRC = 127.0.0.1 DST = 127.0.0.1 LEN = 60 TOS = 0x00 PREC = 0x00 TTL = 64 ID = 58288 DF PROTO = TCP SPT = 53981 DPT = 80 WINDOW = 32767 RES = 0x00 SYN URGP = 0

El registro anterior tambin aparecer en / Var / log / messages,/ Var / log / syslog, Y / Var / log / kern.log. Este comportamiento puede ser modificado mediante la edicin / Etc / syslog.conf adecuada o por la instalacin configurar ulogd y utilizando el objetivo ULOG en lugar de LOG. El demonio es un espacio de usuario ulogd y servidor que escucha las instrucciones de registro del ncleo especficamente para firewalls, y puede registrar a cualquier archivo que desee, o incluso a una base de datos MySQL o PostgreSQL. Dar sentido a los registros del firewall puede ser simplificada mediante el uso de una herramienta de anlisis de registro como logwatch, fwanalog, fwlogwatch o liras.

165

Seguridad

3,5. Otras herramientas


Hay muchas herramientas disponibles para ayudarle a construir un completo firewall sin el conocimiento ntimo de iptables. Para la interfaz grfica de usuario inclinada: fwbuilder1 es muy poderoso y le resultar familiar a un administrador que ha utilizado un comercial utilidad como servidor de seguridad de Checkpoint Firewall-1.

Si usted prefiere una herramienta de lnea de comandos con archivos de configuracin de texto sin formato: Shorewall2 es una solucin muy poderosa para ayudarle a configurar un firewall avanzado para cualquier red.

3,6. Referencias
El Ubuntu Firewall3 pgina wiki contiene informacin sobre el desarrollo de la UFW. Adems, la pgina de manual de UFW contiene informacin muy til: el hombre UFW. Consulte el de filtrado de paquetes-HOWTO4 para obtener ms informacin sobre el uso de iptables. El NAT-HOWTO5 contiene ms detalles sobre enmascaramiento. El IPTables HowTo6 en el wiki de Ubuntu es un gran recurso.

1 http://www.fwbuilder.org/~~V 2 http://www.shorewall.net/ 3 https://wiki.ubuntu.com/UncomplicatedFirewall 4 http://www.netfilter.org/documentation/HOWTO/packet-filtering-HOWTO.html 5 http://www.netfilter.org/documentation/HOWTO/NAT-HOWTO.html 6 https://help.ubuntu.com/community/IptablesHowTo

166

Seguridad

4. AppArmor
AppArmor es una implementacin del mdulo de seguridad de Linux sobre el nombre en los controles de acceso obligatorios. AppArmor limita programas individuales a un conjunto de archivos de la lista y POSIX capacidades de los proyectos de 1003.1e. AppArmor est instalado y cargado por defecto. Se utiliza perfiles de una aplicacin para determinar qu archivos y los permisos de la aplicacin requiere. Algunos paquetes a instalar sus propios perfiles, y adicionales perfiles se pueden encontrar en el paquete apparmor los perfiles.

Para instalar el paquete apparmor los perfiles de una terminal:

sudo apt-get install apparmor los perfiles

Perfiles de AppArmor tienen dos modos de ejecucin: Quejarse / aprendizaje: violacines perfil se permiten y se registran. til para pruebas y el desarrollo de nuevos perfiles. Aplicado / confinado: aplica las polticas de perfil, as como el registro de la violacin.

4,1. Usando AppArmor


El paquete de AppArmor-utils contiene utilidades de lnea de comandos que puede utilizar para cambiar el AppArmor el modo de ejecucin, ver el estado de un perfil, crear nuevos perfiles, etc apparmor_status se utiliza para ver el estado actual de los perfiles de AppArmor.

sudo apparmor_status

AA-se quejan de lugares en un perfil quejarse modo.

sudo aa-complain / ruta / a / bin

aa-enforce coloca un perfil en hacer cumplir modo.

sudo aa-enforce / ruta / a / bin

El / Etc / apparmor.d directorio es donde los perfiles de AppArmor se encuentran. Se puede utilizar para manipular el modo de todos los perfiles. Escriba el siguiente para colocar todos los perfiles en el modo de queja:

sudo aa-complain / etc / apparmor.d / *

Para colocar todos los perfiles en el modo de aplicacin:


sudo aa-enforce / etc / apparmor.d / *

167

Seguridad

Apparmor_parser Se utiliza para cargar un perfil en el ncleo. Tambin se puede utilizar para volver a cargar una actualmente perfil de carga utilizando la -R opcin. Para cargar un perfil:
cat / etc / apparmor.d / profile.name | apparmor_parser-a sudo

Para cargar un perfil:

cat / etc / apparmor.d / profile.name | sudo apparmor_parser-r

/ Etc / init.d / AppArmor se puede utilizar para recargar todos los perfiles:
sudo / etc / init.d / apparmor recarga

El / Etc / apparmor.d / desactivar directorio se puede utilizar junto con la opcin-R para apparmor_parser inhabilitar un perfil.

sudo ln-s / etc / apparmor.d / profile.name / etc / apparmor.d / desactivar / sudo apparmor_parser-R / etc / apparmor.d / profile.name

A volver a habilitar un perfil de personas con discapacidad eliminar el enlace simblico con el perfil en / Etc
/ apparmor.d / desactivar /. A continuacin,

cargar el perfil de uso de la -Un opcin.

sudo rm / etc / apparmor.d / desactivar / profile.name cat / etc / apparmor.d / profile.name | apparmor_parser-a sudo

AppArmor puede ser deshabilitado, y el mdulo del kernel descargado, escriba lo siguiente:

sudo / etc / init.d / apparmor parada sudo update-rc.d-f remove apparmor

Para volver a habilitar AppArmor escriba:

sudo / etc / init.d / apparmor inicio sudo update-rc.d apparmor por defecto

Reemplazar profile.name con el nombre del perfil que desea manipular. Adems, reemplace / ruta / a / bin / con la ruta del archivo ejecutable real. Por ejemplo, para el uso comando ping /
bin / ping

4,2. Perfiles
Perfiles de AppArmor son simples archivos de texto ubicados en / Etc / apparmor.d /. Los archivos se nombran despus del ruta completa al archivo ejecutable que el perfil de sustitucin de la "/" con ".". Por ejemplo / Etc / apparmor.d / bin.ping es el perfil de AppArmor para el / Bin / ping comando. Hay dos tipos principales de reglas utilizadas en los perfiles: Las entradas de Ruta: que detallan los archivos que una aplicacin puede acceder en el sistema de archivos. 168

Seguridad

Capacidad de las entradas: determinar cules son los privilegios de un proceso confinado se le permite utilizar. A modo de ejemplo echar un vistazo a / Etc / apparmor.d / bin.ping:
# Include <tunables/global> / Bin / ping flags = (complain) { # Include <abstractions/base> # Include <abstractions/consoles> # Include <abstractions/nameservice>

capacidad de net_raw, capacidad de setuid, de red sin inet,

/ Bin / ping Mixr, / Etc / modules.conf r, }

# Include <tunables/global>: incluyen las declaraciones de otros archivos. Esto permite que las declaraciones relativas a mltiples aplicaciones que se colocan en un archivo comn. / Bin / ping flags = (complain): ruta hacia el programa perfilado, tambin para establecer el modo se quejan. capacidad de net_raw,: permite que el acceso a las aplicaciones de la capacidad CAP_NET_RAW POSIX.1e. / Bin / ping Mixr,: permite la aplicacin leer y ejecutar el acceso al archivo. Despus de editar un archivo de perfil el perfil debe ser recargada. Ver Seccin 4.1, "Uso de AppArmor "[p. 167] para ms detalles. 4.2.1. Creacin de un perfil Disear un plan de pruebas: Trate de pensar en cmo la aplicacin debe ser ejercida. El plan de pruebas debe se divide en los casos de prueba pequeas. Cada caso de prueba debe tener una pequea descripcin y una lista de los pasos para seguir. Algunos casos de prueba estndar son: Puesta en marcha del programa. Detencin del programa. Recarga del programa. Prueba de todos los comandos soportados por el guin de inicio. Generar el nuevo perfil: Utilice aa-genprof para generar un nuevo perfil. Desde un terminal:

sudo aa-genprof ejecutable

Por ejemplo:

sudo aa-genprof slapd

169

Seguridad

Para obtener su nuevo perfil incluido en el paquete apparmor los perfiles, cursa un bug en el Launchpad contra la AppArmor7 paquete: Incluya a su plan de pruebas y casos de prueba. Conecte su nuevo perfil para el error. 4.2.2. Actualizacin de perfiles Cuando el programa se est portando mal, los mensajes de auditora son enviados a los archivos de registro. El programa de AA-logprof puede ser utilizado para escanear los archivos de registro de mensajes de auditora AppArmor, revisarlos y actualizar los perfiles. Desde un terminal:
sudo aa-logprof

4,3. Referencias
Consulte el Gua de administracin de Novell AppArmor8 para las opciones de configuracin avanzadas. Para ms detalles con AppArmor con otras versiones de Ubuntu ver el AppArmor Wiki de la Comunidad9 pgina. El OpenSUSE AppArmorDe 10 pginas es otra introduccin a AppArmor. Un gran lugar para pedir ayuda AppArmor, e involucrarse con el servidor de Ubuntu comunidad, es el # Ubuntu-server Canal de IRC en freenode11.

7 https://bugs.launchpad.net/ubuntu/+source/apparmor/+filebug 8

apparmor201_sp10_admin/data/book_apparmor_admin.html
9 https://help.ubuntu.com/community/AppArmor 10 http://en.opensuse.org/SDB:AppArmor_geeks 11 http://freenode.net

170

Seguridad

5. Certificados
Una de las formas ms comunes de criptografa hoy es de clave pblica criptografa. De clave pblica criptografa utiliza un clave pblica y un la clave privada. El sistema funciona encriptacin informacin utilizando la clave pblica. La informacin puede ser slo descifrado utilizando la clave privada.

Un uso comn de criptografa de clave pblica es el cifrado del trfico de aplicaciones utilizando una conexin segura Layer (SSL) o la capa de transporte de conexin Security (TLS). Por ejemplo, la configuracin de Apache para proporcionar HTTPS, el protocolo HTTP sobre SSL. Esto permite que una manera de cifrar el trfico mediante un protocolo que no se proporciona cifrado. ACertificado es un mtodo utilizado para distribuir un clave pblica y otra informacin sobre un servidor y la organizacin que es responsable de ello. Los certificados pueden ser firmados digitalmente por un Certificacin Autoridad o CA. Una CA es un tercero de confianza que se ha confirmado que la informacin contenida en el certificado es exacta.

5,1. Tipos de certificados


Para configurar un servidor seguro utilizando criptografa de clave pblica, en la mayora de los casos, le enviaremos su certificado peticin (incluyendo su clave pblica), una prueba de identidad de su empresa, y el pago a la CA. La CA verifica la solicitud de certificado y su identidad, y luego enva de vuelta un certificado para su seguridad servidor. Alternativamente, usted puede crear su propio auto-firmado certificado. Tenga en cuenta que los certificados con firma personal no debe ser utilizado en la mayora de entornos de produccin.

Continuando con el ejemplo HTTPS, un certificado firmado por una CA proporciona dos importantes capacidades que una certificado auto-firmado no lo hace: Los navegadores (normalmente) reconocen automticamente el certificado y permiten una conexin segura para ser sin preguntar al usuario. Cuando una CA emite un certificado firmado, est garantizando la identidad de la organizacin que es proporcionando las pginas web al navegador. La mayora de los navegadores de Internet y computadoras, que soportan SSL tienen una lista de CAs cuyos certificados aceptan automticamente. Si el navegador encuentra un certificado autorizado por una CA que no est en la lista, la navegador pregunta al usuario si desea aceptar o rechazar la conexin. Adems, otras aplicaciones pueden generar un mensaje de error cuando se utiliza un certificado auto-chamuscado.

El proceso de obtencin de un certificado de una CA es bastante sencillo. Un vistazo rpido a lo siguiente: 1. Crear un par de cifrado de clave pblica y privada. 2. Crear una solicitud de certificado sobre la base de la clave pblica. La peticin contiene informacin acerca de su servidor y la compaa que lo hospeda.

171

Seguridad

3. Enviar la solicitud de certificado, junto con documentos que prueben su identidad, a la CA. No podemos decir que el certificado que la autoridad de elegir. Su decisin puede estar basada en sus experiencias pasadas, o en las experiencias de sus amigos o colegas, o simplemente en factores monetarios.

Una vez que haya decidido por un CA, necesitar seguir las instrucciones que se le indiquen para obtener un certificado de los mismos. 4. Cuando la CA est satisfecha de que usted es quien dice ser, le enva una cmara digital certificado. 5. Instale este certificado en su servidor seguro, y configurar las aplicaciones necesarias para utilizar el certificado.

5,2. Generar una peticin de firma de certificado (CSR)


Ya sea que usted est recibiendo un certificado de una CA o generando su propio certificado auto-firmado, el primer paso consiste en generar una clave. Si el certificado se utilizar por los demonios de servicios, tales como Apache, Postfix, Dovecot, etc, una clave sin una palabra de paso es a menudo apropiado. No tener una frase de paso permite que los servicios se inicie sin intervencin manual, por lo general la mejor manera de iniciar un demonio.

Esta seccin cubre la generacin de una clave con una contrasea, y otro sin l. La clave no passphrase a continuacin, se utiliza para generar un certificado que se puede utilizar con diversos demonios de servicio. El funcionamiento de su servicio de seguro sin una frase de paso es conveniente porque usted no tendr que para ingresar la contrasea cada vez que inicie el servicio de seguro. Sin embargo, es inseguro y un compromiso de la clave significa un compromiso del servidor. Para generar el claves para la solicitud de firma de certificado (CSR), ejecute el comando siguiente desde un terminal:

openssl genrsa-des3-out server.key 2048

Generacin de una clave privada RSA de 2048 bits mdulo de tiempo .......................... + + + + + + ....... + + + + + + e es 65537 (0x10001) Escriba una frase de la server.key:

Ahora puede introducir su contrasea. Para mayor seguridad, que deber contener al menos ocho caracteres. La longitud mnima al especificar-des3 es de cuatro caracteres. Se debe incluir nmeros y / o puntuacion y no ser una palabra en un diccionario. Tambin recuerde que su contrasea distingue entre maysculas y minsculas. Vuelva a escribir la contrasea, para verificar. Una vez que haya que volver a escribir correctamente, la clave del servidor se genera y se almacenada en el server.key archivo. Ahora crear la clave de la inseguridad, el que no tiene una contrasea, y barajar los nombres de las teclas: 172

Seguridad

openssl rsa-in-out server.key server.key.insecure mv server.key server.key.secure mv server.key.insecure server.key

La clave de la inseguridad se llama ahora server.key, Y usted puede utilizar este archivo para generar la responsabilidad social, sin frase de contrasea. Para crear el CSR, ejecute el siguiente comando en una terminal:

openssl req-new-key server.key-out server.csr

Se le pedir que introduzca la contrasea. Si introduce la contrasea correcta, se le pedir que introduzca Nombre de la empresa, Nombre del sitio, Identificacin del email, etc Una vez que entre todos estos detalles, la RSE se crear y se almacena en el server.csr archivo. Ahora puede enviar ese archivo CSR a una CA para su procesamiento. El CA se utiliza este archivo CSR y emitir el certificado. Por otro lado, puede crear un certificado autofirmado utilizando este CSR.

5,3. Creacin de un certificado autofirmado


Para crear un certificado auto-firmado, ejecute el siguiente comando en una terminal:

openssl x509-req-days 365-in-server.csr signkey server.key-out server.crt

El comando anterior le pedir que introduzca la contrasea. Una vez que ingrese la contrasea correcta, su certificado, se crear y se guardar en el server.crt archivo. Si su servidor seguro se va a utilizar en un entorno de produccin, es probable que tenga un CAcertificado firmado. No se recomienda el uso de un certificado autofirmado.

5,4. Instalacin del certificado


Puede instalar el archivo de clave server.key y el archivo de certificado server.crt, O el archivo de certificado expedido mediante la ejecucin de comandos siguientes en una terminal: por su CA,

sudo server.crt cp / etc / ssl / certs sudo cp server.key / etc / ssl / private

Ahora slo tiene que configurar todas las aplicaciones, con la posibilidad de utilizar criptografa de clave pblica, para utilizar el certificado y clave archivos. Por ejemplo, Apache puede proporcionar HTTPS, Dovecot puede proveer IMAPS y POP3S, etc

5,5. Autoridad de Certificacin


Si los servicios de la red requiere ms que unos pocos certificados con firma personal puede ser vale la pena el esfuerzo adicional para configurar su propia interna Autoridad de Certificacin (CA). Uso de los certificados de firma 173

Seguridad

por su propia CA, permite a los distintos servicios que utilizan los certificados a confiar fcilmente otros servicios que utilizan certificados emitidos por la misma CA. 1. En primer lugar, crear los directorios para sostener el certificado de la CA y los archivos relacionados:
sudo mkdir / etc / ssl / CA sudo mkdir / etc / ssl / newcerts

2.

La CA tiene unos pocos archivos adicionales para funcionar, uno para realizar un seguimiento del ltimo nmero de serie utilizado por la CA, todos los certificados debern tener un nmero de serie nico, y otro archivo para registrar qu certificados han sido emitidos:

sudo sh-c "echo '01 '> / etc / ssl / CA / de serie" sudo touch / etc / ssl / CA / index.txt

3.

El tercer archivo es un archivo de configuracin de CA. Aunque no es estrictamente necesario, es muy conveniente al emitir varios certificados. Editar / Etc / ssl / openssl.cnf, Y en el [CA_default] cambiar:
dir base de datos certificado de serie private_key = / Etc / ssl / = $ Dir archivo = $ Dir = $ Dir # Si todo se mantiene

/ CA / index.txt ndice de base de datos de #. / certs / cacert.pem # El certificado de CA / CA / serie # El nmero de serie actual

= $ Dir / private / cakey.pem # La clave privada

4.

A continuacin, cree el certificado raz autochamuscado:


openssl req-new-x509-extensiones-v3_ca keyout cakey.pem Salida cacert.pem das de 3650

A continuacin se le pedir que introduzca los detalles sobre el certificado. 5. Ahora instalar el certificado raz y la clave:

sudo mv cakey.pem / etc / ssl / private / sudo cacert.pem mv / etc / ssl / certs /

6.

Ahora est listo para iniciar la firma de los certificados. El primer elemento necesario es una firma de certificado Solicitud de la empresa (RSE), consulte Seccin 5.2, "Generacin de una solicitud de firma de certificado (CSR)" [p. 172] para ms detalles. Una vez que usted tiene una responsabilidad social, escriba lo siguiente para generar un certificado firmado por la CA:
sudo openssl ca-in-server.csr de configuracin / etc / ssl / openssl.cnf

Despus de introducir la contrasea de la clave de la CA, se le pedir que firme el certificado y, de nuevo para confirmar el nuevo certificado. A continuacin, debera ver una cantidad algo grande de la produccin relacionados con la creacin de certificados. 7. Ahora debe haber un nuevo archivo, / Etc/ssl/newcerts/01.pem, Que contiene la misma salida. Copiar y la pasta de inicio todo con la lnea: ----- BEGIN CERTIFICATE ----- y continuando a travs de la lnea: ---- END CERTIFICATE ----- lneas a un archivo cuyo nombre el nombre de host del

174

Seguridad

servidor en el que el certificado se instalar. Por ejemplo mail.example.com.crt, Es un buen nombre descriptivo. Certificados subsecuentes sern nombrados 02.pem,03.pem, Etc Reemplazar mail.example.com.crt con su propio nombre descriptivo.

8.

Por ltimo, copie el nuevo certificado a la mquina que necesita, y configurar la adecuada aplicaciones para usarlo. La ubicacin predeterminada para instalar certificados es / Etc / ssl / certs. Esto permite mltiples servicios a utilizar el mismo certificado, sin los permisos de archivos demasiado complicadas. Para las aplicaciones que se pueden configurar para utilizar un certificado de la CA, tambin debe copiar el /
Etc / ssl / certs / cacert.pem

presentar a la / Etc / ssl / certs / directorio en cada servidor.

5,6. Referencias
Para obtener instrucciones ms detalladas sobre el uso de la criptografa de ver el Certificados SSL HOWTO12 por tlpd.org La Wikipedia HTTPS13 pgina tiene ms informacin sobre HTTPS. Para ms informacin sobre OpenSSL vase el OpenSSL Pgina de inicio14. Adems, O'Reilly Red de Seguridad con OpenSSL15 es una buena referencia en profundidad.

12 http://tldp.org/HOWTO/SSL-Certificates-HOWTO/index.html 13 http://en.wikipedia.org/wiki/Https 14 http://www.openssl.org/~~V 15 http://oreilly.com/catalog/9780596002701/

175

Seguridad

6. eCryptfs
eCryptfs es un POSIX de clase empresarial sistema de archivos de cifrado apilado para Linux. Estratificacin en la parte superior de la capa de sistema de ficheros eCryptfs protege los archivos sin importar el sistema de archivos subyacente, la particin tipo, etc Durante la instalacin hay una opcin para encriptar el / Home particin. Esto configurar automticamente todo lo necesario para cifrar y montar la particin. Como ejemplo, esta seccin incluye la configuracin de / Srv que se cifran utilizando eCryptfs.

6,1. Usando eCryptfs


En primer lugar, instalar los paquetes necesarios. Desde una terminal escriba:

sudo apt-get install ecryptfs-utils

Ahora montar la particin a cifrar:

sudo mount-t ecryptfs / srv / srv

A continuacin se le pedir algunos detalles sobre cmo ecryptfs debe cifrar los datos. Para probar que los archivos colocados en / Srv de hecho son copia cifrada de la / Etc / default carpeta para / Srv:
sudo cp-r / etc / default / srv

Ahora desmontar / Srv, Y tratar de ver un archivo:

sudo umount / srv cat / srv / default / cron

Remontar / Srv utilizando ecryptfs har que los datos visibles de nuevo.

6,2. Montaje automtico de particiones cifradas


Hay un par de maneras de montar automticamente un sistema de ficheros cifrado ecryptfs en el arranque. Este ejemplo se utiliza un / Root / .ecryptfsrc archivo que contiene las opciones de montaje, junto con un archivo de contrasea que reside en una llave USB. En primer lugar, crear / Root / .ecryptfsrc que contiene:
clave = contrasea: passphrase_passwd_file = / mnt / usb / passwd_file.txt ecryptfs_sig = 5826dd62cf81c615 ecryptfs_cipher = aes ecryptfs_key_bytes = 16

176

Seguridad
ecryptfs_passthrough = n ecryptfs_enable_filename_crypto = n

Ajuste el ecryptfs_sig a la firma en / Root / .ecryptfs / sig-cache.txt.

A continuacin, crear el / Mnt / usb / passwd_file.txt frase de contrasea del archivo:


passphrase_passwd = [secretos]

Ahora aada las lneas necesarias para / Etc / fstab:

/ Dev/sdb1/mnt/usbext3 / Srv / srv eCryptfs defaults 0 0

ro

0 0

Asegrese de que la unidad USB se monta antes de la particin cifrada. Por ltimo, reiniciar el sistema y el / Srv debe montarse utilizando eCryptfs.

6,3. Otras Utilidades


El paquete ecryptfs-utils incluye varias utilidades tiles: ecryptfs-setup-private: crea una ~ / Privado directorio que contiene la informacin codificada. Esta utilidad puede ser ejecutado por usuarios sin privilegios para mantener los datos privados de otros usuarios en el sistema. ecryptfs-mount-privada y ecryptfs-umount privado: se puede montar y desmontar, respectivamente, a los usuarios una ~ / Privado directorio. ecryptfs-aade-contrasea: aade una nueva frase de contrasea para el archivo de claves del kernel. ecryptfs-manager: administra los objetos tales como llaves eCryptfs. ecryptfs-stat: le permite ver la informacin de metadatos ecryptfs de un archivo.

6,4. Referencias
Para ms informacin sobre eCryptfs vase el Plataforma de lanzamiento del proyecto la pgina16. Existe tambin una Linux Journal17 El artculo que cubre eCryptfs. Adems, para ms opciones eCryptfs ver el ecryptfs pgina de manual18. El eCryptfs Wiki de Ubuntu19 pgina tambin cuenta con ms detalles.

16 https://launchpad.net/ecryptfs 17 http://www.linuxjournal.com/article/9400 18 http://manpages.ubuntu.com/manpages/precise/en/man7/ecryptfs.7.html 19 https://help.ubuntu.com/community/eCryptfs

177

Captulo 10. Monitoreo

178

Monitoreo

1. Informacin general
La supervisin de los servidores y servicios esenciales es una parte importante de la administracin del sistema. La mayora de los servicios de red son monitoreados para el funcionamiento, disponibilidad, o ambas cosas. En esta seccin se cubrir instalacin y configuracin de Nagios para supervisar la disponibilidad y Munin para el desempeo seguimiento. Los ejemplos de esta seccin se utilizan dos servidores con nombres de host servidor01 y Server02. Servidor01 se configurar con Nagios para supervisar los servicios en s mismo y Server02. Servidor01 tambin ser configurado con el paquete munin para recabar informacin de la red. Usando el paquete munin-node, Server02 se puede configurar para enviar informacin a server01.

Espero que estos sencillos ejemplos le permitir supervisar los servidores y servicios adicionales en su red.

179

Monitoreo

2. Nagios
2,1. Instalacin
En primer lugar, sobre servidor01 instalar el paquete de nagios. En una terminal escriba:
sudo apt-get install nagios-nagios3 nrpe-plug-in

Se le pedir que introduzca una contrasea para la nagiosadmin usuario. Las credenciales del usuario se almacenan en
/ etc/nagios3/htpasswd.users.

Para cambiar el nagiosadmin de su clave o agregar usuarios adicionales a la Nagios scripts CGI, utilice el htpasswd que forma parte del paquete apache2-utils. Por ejemplo, para cambiar la contrasea de la nagiosadmin usuario introduzca:

sudo htpasswd / etc/nagios3/htpasswd.users nagiosadmin

Para aadir un usuario:

sudo htpasswd / etc/nagios3/htpasswd.users steve

A continuacin, sobre Server02 instalar el paquete nagios-nrpe-servidor. Desde un terminal en Server02 escriba:
sudo apt-get install nagios-nrpe-servidor

NRPE le permite realizar controles locales en hosts remotos. Hay otras formas de lograr esto a travs de plugins de Nagios otros, as como otros controles.

2,2. Introduccin a la Configuracin


Hay un par de directorios que contienen archivos de configuracin de Nagios y de verificacin. / Etc/nagios3: Contiene los archivos de configuracin para el funcionamiento del daemon de nagios, los archivos CGI, hosts, etc / Etc / nagios-plugins: Casas de archivos de configuracin para las revisiones de servicio. / Etc / nagios: En el host remoto contiene los archivos de configuracin de nagios-nrpe-servidor. / Usr / lib / nagios / plugins /: En los archivos binarios de verificacin se almacenan. Para ver las opciones de uso de verificacin la -H opcin. Por ejemplo: / Usr / lib / nagios / plugins / h check_dhcpHay una gran cantidad de cheques de Nagios puede ser configurado para ejecutar para cualquier husped. Por esta Nagios ejemplo se configurar para comprobar el espacio en disco, el DNS, y un hostgroup MySQL. El DNS comprobar estar en Server02, y la hostgroup MySQL incluir tanto servidor01 y Server02.

180

Monitoreo

Ver Seccin 1, "HTTPD - Servidor web Apache 2" [p. 187] para ms detalles sobre la configuracin de Apache, Captulo 8, el Servicio de Nombres de Dominio (DNS) [p. 139] para el DNS, y Seccin 1, "MySQL" [p. 206] para MySQL. Adems, hay algunos trminos que, una vez explicado se espera que haga la comprensin de Nagios configuracin ms fcil: Anfitrin: un servidor, estacin de trabajo, dispositivo de red, etc que se est supervisando. Anfitrin del grupo: un grupo de hosts similares. Por ejemplo, puede agrupar todos los servidores web, servidor de archivos, etc Servicio: el servicio est monitoreando en el host. Tal como HTTP, DNS, NFS, etc Servicio de grupo: le permite agrupar varios servicios juntos. Esto es til para agrupar mltiples HTTP, por ejemplo. Pngase en contacto con: persona que deba ser notificado cuando un evento se lleva a cabo. Nagios puede ser configurado para enviar mensajes de correo electrnico, Mensajes SMS, etc Por defecto est configurado Nagios para comprobar HTTP, espacio en disco, SSH, los usuarios actuales, los procesos, y la carga en el localhost. Nagios tambin hacer ping a comprobar la puerta de enlace. Nagios instalaciones grandes pueden ser muy difciles de configurar. Generalmente es mejor empezar poco a poco, uno o dos ejrcitos, se configuran las cosas de la forma que desee a continuacin, expanda.

2,3. Configuracin
1. En primer lugar, crear un anfitrin archivo de configuracin para el Server02. A menos que se especifique lo contrario, ejecute todas estas comandos en server01. En una terminal escriba:
sudo cp / etc/nagios3/conf.d/localhost_nagios2.cfg \ / Etc/nagios3/conf.d/server02.cfg

En los ejemplos de comandos anteriores y el siguiente, reemplace "Server01", "Server02" 172.18.100.100, y 172.18.100.101 con los nombres de host y direcciones IP de su servidores. 2. A continuacin, modifique /
Etc/nagios3/conf.d/server02.cfg: define host { utilizar nombre_host alias direccin } # Verifica el servicio DNS. definir el servicio { utilizar nombre_host service_description generic-service Server02 DNS genrico de acogida ; Nombre de la plantilla de host para utilizar Server02 Servidor 02 172.18.100.101

181

Monitoreo
check_command } check_dns! 172.18.100.101

3.

Reinicie el demonio de nagios para habilitar la nueva configuracin:

sudo / etc/init.d/nagios3 reinicio

1.

Ahora aade una definicin de servicio para la verificacin de MySQL aadiendo lo siguiente a la /
Etc/nagios3 / conf.d/services_nagios2.cfg:

# Comprobar servidores MySQL. definir el servicio { hostgroup_name service_description check_command utilizar notification_interval mysql-servidores MySQL check_mysql_cmdlinecred! nagios! secretas $ HOSTADDRESS generic-service 0; configurar> 0 si desea que se le nueva notificacin

2.

Amysql-servidores hostgroup ahora debe ser definido. Editar / Etc/nagios3/conf.d / hostgroups_nagios2.cfg y agreg:

# MySQL hostgroup. definir hostgroup { hostgroup_name alias miembros } mysql-servidores MySQL servidores localhost, Server02

3.

La comprobacin de Nagios necesita para autenticar a MySQL. Para agregar un nagios de usuario de MySQL escriba:
mysql-u root-p-e "crear nagios usuario identificado por" secreto ";"

La nagios usuario tendr que aadir todos los hosts en el mysql-servidores hostgroup.

4.

Reiniciar Nagios para empezar a comprobar los servidores MySQL.


sudo / etc/init.d/nagios3 reinicio

1.

Por ltimo configurar NRPE para comprobar el espacio en disco en Server02. En servidor01 agregar el servicio de comprobacin de / Etc/nagios3/conf.d/server02.cfg:
Disco # NRPE comprobar. definir el servicio { utilizar nombre_host service_description check_command } generic-service Server02 nrpe disco check_nrpe_1arg! check_all_disks! 172.18.100.101

182

Monitoreo

2.

Ahora, en Server02 editar / Etc / nagios / nrpe.cfg cambiando:

allowed_hosts = 172.18.100.100

Y a continuacin en el rea de definicin del comando aadir:


comando [check_all_disks] = / usr / lib / nagios / plugins / check_disk w-20-c% al 10%-e

3.

Por ltimo, reinicie nagios-nrpe-servidor:

sudo / etc / init.d / nagios-nrpe-reiniciar el servidor

4.

Asimismo, el servidor01 reiniciar nagios:

sudo / etc/init.d/nagios3 reinicio

Ahora debera ser capaz de ver la acogida y los cheques de servicios en los archivos de Nagios CGI. Para acceder a ellos sealar con el navegador para http://server01/nagios3. A continuacin se le pedir la nagiosadmin Nombre de usuario y una contrasea.

2,4. Referencias
En esta seccin se ha araado la superficie de las caractersticas de Nagios. El nagios-plugins-extra y nagiossnmp-plugins contiene revisiones de servicio muchos ms. Para obtener ms informacin, consulte NagiosUn sitio web. En concreto, el Documentacin en lnea2 sitio. Tambin existe una lista de librosRelacionado con Nagios y supervisin de la red 3: El Nagios Wiki de Ubuntu4 pgina tambin cuenta con ms detalles.

1 http://www.nagios.org/~~V 2 http://nagios.sourceforge.net/docs/3_0/ 3 http://www.nagios.org/propaganda/books/ 4 https://help.ubuntu.com/community/Nagios

183

Monitoreo

3. Munin
3,1. Instalacin
Antes de instalar Munin en servidor01 apache2 tendr que ser instalado. La configuracin por defecto est muy bien para ejecutar un servidor de Munin. Para obtener ms informacin, consulte Seccin 1, "HTTPD Web Apache2 Servidor "[p. 187]. En primer lugar, sobre servidor01 instalar Munin. En una terminal escriba:
sudo apt-get install munin

Ahora, en Server02 instalar el paquete munin-nodo:

sudo apt-get install munin-node

3,2. Configuracin
En servidor01 editar la / Etc / munin / munin.conf aadiendo la direccin IP de Server02:

# # En primer lugar nuestro "normal" de acogida. [Server02] la direccin 172.18.100.101

Reemplazar Server02 y 172.18.100.101 con la direccin real de host e IP para su servidor. A continuacin, configure munin-nodo en Server02. Editar / Etc / munin / munin-node.conf para permitir el acceso por servidor01:
permiten ^ 172 \ .18 \ .100 \ .100 $

Reemplazar ^ 172 \ .18 \ .100 \ .100 $ con la direccin IP de su servidor de Munin. Ahora reinicia munin-nodo en Server02 para que los cambios surtan efecto:

sudo / etc / init.d / reinicio munin-nodo

Finalmente, en un navegador, vaya al http://server01/munin, y usted debera ver los enlaces a los grficos que muestran buenos informacin de la norma munin-plugins para el disco, la red, los procesos y del sistema. Como se trata de una nueva instalacin puede tardar algn tiempo para que los grficos para mostrar algo til.

184

Monitoreo

3,3. Plugins adicionales


El paquete munin-plugins-extra contiene las pruebas de rendimiento de servicios adicionales tales como DNS, DHCP, Samba, etc Para instalar el paquete, desde un terminal escriba:

sudo apt-get install munin-plugins-extra

Asegrese de instalar el paquete en el servidor y las mquinas de los nodos.

3,4. Referencias
Consulte el Munin5 sitio web para ms detalles. En concreto, el Munin Documentacin6 pgina incluye informacin sobre los plugins adicionales, por escrito plugins, etc Adems, hay un libro en alemn por la prensa de cdigo abierto: Graphisches Munin Netzwerk-und sistema Monitoreo7. Otro recurso es la Munin Wiki de Ubuntu8 pginas.

5 http://munin.projects.linpro.no/ 6 http://munin.projects.linpro.no/wiki/Documentation 7 https://www.opensourcepress.de/index.php?26&backPID=178&tt_products=152 8 https://help.ubuntu.com/community/Munin

185

Captulo 11. Servidores Web


Un servidor Web es un software responsable de aceptar las peticiones HTTP de los clientes, que se conocen como navegadores web, y que les presten las respuestas HTTP junto con el contenido de los datos opcionales, los cuales por lo general son las pginas Web, tales como documentos HTML y objetos enlazados (imgenes, etc.)

186

Servidores Web

1. HTTPD - Servidor web Apache 2


Apache es el servidor web ms utilizado en los sistemas Linux. Servidores Web se utilizan para servir Las pginas Web solicitadas por los equipos cliente. Los clientes suelen solicitar y ver pginas Web con Web Las aplicaciones de navegador como Firefox, Opera, cromo, o Mozilla. Los usuarios introducen un Localizador Uniforme de Recursos (URL) para que apunte a un servidor Web a travs de su completo De nombres de dominio (FQDN) y una ruta de acceso al recurso solicitado. Por ejemplo, para ver la casa pgina del Sitio web de Ubuntu1 un usuario introducir nicamente el FQDN:

www.ubuntu.com

Para ver el comunidadDos sub-pgina, el usuario introduzca el FQDN seguido de una ruta:

www.ubuntu.com / comunidad

El protocolo ms comn que se utiliza para transferir las pginas Web es el Hyper Text Transfer Protocol (HTTP). Protocolos como el Protocolo de transferencia de hipertexto sobre Secure Sockets Layer (HTTPS) y Archivo Transfer Protocol (FTP), un protocolo para la carga y descarga de archivos, tambin se apoyan.

Servidores web Apache se utilizan a menudo en combinacin con el motor de base de datos MySQL, el hipertexto Preprocessor (PHP) el lenguaje de scripting, y otros lenguajes de scripting populares como Python y Perl. Esta configuracin se denomina LAMP (Linux, Apache, MySQL y Perl / Python / PHP) y forma un plataforma potente y robusta para el desarrollo y despliegue de aplicaciones basadas en Web.

1,1. Instalacin
El servidor web Apache 2 est disponible en Ubuntu Linux. Para instalar Apache 2: En un terminal escriba el siguiente comando:

sudo apt-get install apache2

1,2. Configuracin
Apache2 se configura mediante la colocacin directivas en los archivos de texto plano de configuracin. Estos directivas sonlos siguientes archivos y directorios: divisin entre apache2.conf: el principal archivo de configuracin de Apache 2. Contiene la configuracin que son global de Apache2. conf.d: contiene los archivos de configuracin que se aplican a nivel mundial de Apache2. Otros paquetes que utilizan Apache2 para servir el contenido puede agregar archivos o enlaces simblicos, a este directorio. envvars: presentar en Apache2 medio ambiente las variables estn ajustadas.
1 http://www.ubuntu.com 2 http://www.ubuntu.com/community

187

Servidores Web

httpd.conf: Histricamente, el principal archivo de configuracin de Apache 2, llamado as por el demonio httpd. Ahora el archivo est normalmente vaca, como la mayora de las opciones de configuracin se han trasladado a la siguiente referencia a los directorios. El archivo puede ser utilizado para usuario especfico opciones de configuracin que a nivel mundial efecto de Apache2. mods-available: este directorio contiene los archivos de configuracin tanto para la carga mdulos y configurar ellos. No todos los mdulos se tienen archivos de configuracin especficos, sin embargo. mods-enabled: tiene enlaces simblicos a los archivos en / Etc/apache2/mods-available. Cuando un mdulo de configuracin es un enlace simblico que se habilitar el apache2 vez que se reinicia. archivo ports.conf: casas de las directivas que determinan qu puertos TCP Apache 2 est escuchando. sites-available: este directorio tiene archivos de configuracin de Apache 2 Mquinas virtuales. Mquinas virtuales permiten Apache2 sea configurado para varios sitios que tienen configuraciones diferentes. sites-enabled: como mods-enabled, sites-enabled contiene enlaces simblicos a la / Etc/apache2/sitesdisponible directorio. Del mismo modo, cuando un archivo de configuracin en los sitios disponibles-es un enlace simblico, el sitio configura estar activo una vez que se reinicie Apache2. Adems, otros archivos de configuracin se pueden aadir mediante el Incluir directiva, y los comodines pueden ser utiliza para incluir muchos archivos de configuracin. Cualquier directiva puede colocarse en cualquiera de estos configuracin archivos. Los cambios en los archivos principales de configuracin slo son reconocidos por Apache2 cuando se inicia o reinicia. El servidor tambin lee un archivo que contiene los tipos mime de documentos, el nombre del archivo es fijado por el TypesConfig Directiva, por lo general a travs de / Etc/apache2/mods-available/mime.conf, Que tambin podra incluir adiciones y sustituciones, y es / Etc / mime.types por defecto. 1.2.1. Configuracin bsica Esta seccin explica los parmetros del servidor Apache2 esenciales de configuracin. Consulte el Apache2 Documentacin3 para ms detalles. Los Apache2 trae una configuracin por defecto virtual-host de usar. Es decir, se configura con una nico servidor virtual predeterminado (usando el VirtualHost Directiva), que puede ser modificado o utilizado tal cual si tiene una ubicacin nica, o se utiliza como una plantilla para servidores virtuales adicionales si usted tiene mltiples sitios. Si se deja solo, el servidor virtual predeterminado funcionar como su sitio de forma predeterminada, o los usuarios del sitio vern si la URL entran no coincide con el ServerName Directiva de cualquiera de sus sitios personalizados. Para modificar el host virtual por defecto, modifique el archivo / Etc/apache2/sites-available/default. Las directivas establecidas para una mquina virtual slo se aplican a esa mquina virtual. Si una directiva se establece a nivel de servidor y no se define dentro de la configuracin de la mquina virtual, la configuracin predeterminada es utilizada. Por ejemplo, puede definir una direccin de correo electrnico webmaster y no definir individuales direcciones de correo electrnico para cada host virtual. Si desea configurar un nuevo husped o sitio virtual, copiar ese archivo en el mismo directorio con un nombre que usted elija. Por ejemplo:

3 http://httpd.apache.org/docs/2.2/

188

Servidores Web

sudo cp / etc/apache2/sites-available/default / etc/apache2/sites-available/minuevositio

Edite el nuevo archivo para configurar el nuevo sitio usando algunas de las directivas que se describen a continuacin. El ServerAdmin Directiva especifica la direccin de correo electrnico para ser objeto de publicidad para el servidor de valor por defecto es webmaster @ localhost. Esto debe cambiar a un correo electrnico administrador. El direccin que se entrega a usted (si usted es el administrador del servidor). Si su sitio web tiene un problema, Apache2 mostrar un mensaje de error que contiene la siguiente direccin de correo electrnico para informar del problema a. La directiva se encuentra en el archivo de configuracin de su sitio en / etc/apache2/sites-available. El Escuchar Directiva especifica el puerto, y, opcionalmente, la direccin IP, Apache2 debe escuchar. Si la direccin IP no se especifica, Apache2 escuchar en todas las direcciones IP asignada a la mquina que se ejecuta. El valor predeterminado de la directiva Listen es 80. Cambiar a 127.0.0.1:80 provocar Apache2 slo escuche por su dispositivo loopback de forma que no estar disponible a Internet, a (por ejemplo) 81 para cambiar el puerto que escucha en el, o dejarlo como est para el funcionamiento normal. Este directiva se puede encontrar y cambiar en su propio archivo, / Etc/apache2/ports.conf

El ServerName Directiva es opcional y especifica lo que FQDN su sitio debe responder. La host virtual por defecto no tiene ninguna directiva ServerName especifica, por lo que responder a todas las solicitudes que no se corresponden con una directiva ServerName en otra mquina virtual. Si usted acaba de adquirir el dominio Nombre ubuntumola.com, y desea alojar en su servidor de Ubuntu, el valor de la ServerName Directiva en su archivo de configuracin del host virtual, debe ser ubunturocks.com. Aada esta directiva al el nuevo archivo de host virtual que ha creado anteriormente ( / Etc/apache2/sites-available/minuevositio).

Usted tambin puede querer que su sitio responda a www.ubunturocks.com, ya que muchos usuarios asumen que el prefijo www es apropiado. Utilice el ServerAlias Directiva para esto. Tambin puede usar comodines en la directiva ServerAlias. Por ejemplo, la siguiente configuracin har que su sitio para responder a cualquier solicitud de dominio terminando en . Ubunturocks.com.

ServerAlias *. Ubunturocks.com

El DocumentRoot Directiva especifica dnde Apache2 debe buscar los archivos que componen el sitio. El valor predeterminado es / var / www, como se especifica en / Etc/apache2/sites-available/default. Si lo desea, cambie este valor en el archivo de su sitio mquina virtual, y recuerde crear ese directorio si es necesario!

Habilitar el nuevo VirtualHost mediante la utilidad a2ensite y reiniciar Apache2:

sudo mynewsite a2ensite sudo service apache2 reiniciar

Asegrese de reemplazar mynewsite con un nombre ms descriptivo para el host virtual. Un mtodo es el nombre del archivo despus de la ServerName Directiva del VirtualHost.

189

Servidores Web

Del mismo modo, utilizar la utilidad a2dissite para desactivar los sitios. Esto es puede ser til para solucionar problemas problemas de configuracin con mltiples servidores virtuales:
sudo mynewsite a2dissite sudo service apache2 reiniciar

1.2.2. Configuracin por defecto En esta seccin se explica la configuracin de las configuraciones predeterminadas del servidor Apache2. Por ejemplo, si se agrega un mquina virtual, la configuracin se configuran para la mquina virtual tienen prioridad para ese host virtual. Para una directiva no est definida dentro de la configuracin del host virtual, el valor por defecto se utiliza. El DirectoryIndex es la pgina por defecto que entrega el servidor cuando un usuario solicita un ndice de un directorio especificado con una barra diagonal (/) al final del nombre del directorio.

Por ejemplo, cuando un usuario solicita la pgina http://www.example.com/this_directory/, l o ella obtendr la pgina DirectoryIndex si existe, una lista de directorios generado por el servidor si no lo hace y la opcin de ndices se especifica, o una pgina Permiso Denegado si no es verdad. El servidor intentar para encontrar uno de los archivos enumerados en la directiva DirectoryIndex y le entregar el primero que encuentre. Si no encuentra ninguno de estos archivos y si Opciones Indices est configurado para ese directorio, el servidor

generar y devolver una lista, en formato HTML, de los subdirectorios y los archivos en el directorio. La valor por defecto, que se encuentra en el / Etc/apache2/mods-available/dir.conf es "index.html, index.pl index.php index.htm index.xhtml ". Por lo tanto, si Apache2 encuentra un archivo en un directorio solicitado que se ajusta cualquiera de estos nombres, el primero se mostrar. El ErrorDocument directiva le permite especificar un archivo de Apache 2 que se utilizar para error especfico eventos. Por ejemplo, si un usuario solicita un recurso que no existe, un error de 404 va a producir. Por por defecto, Apache2 slo devolver un cdigo de retorno HTTP 404. Leer / Etc/apache2/conf.d /
localiza las pginas de para obtener error-

instrucciones detalladas para el uso de ErrorDocument, incluyendo la

archivos de ejemplo.

ubicacin de

De forma predeterminada, el servidor escribe el registro de la transferencia al archivo / Var/log/apache2/access.log. Usted puede cambiar esto en funcin de cada sitio en los archivos de configuracin de la mquina virtual con el CustomLog Directiva, o dejar de aceptar el valor predeterminado, especificado en el / Etc/apache2/conf.d/other-vhosts-accessTambin puede especificar el archivo en el que los errores se registran, a travs de la ErrorLog Directiva, cuya log. por defecto es / Var/log/apache2/error.log. Estos se mantienen separados de los registros de transferencias para ayudar a en la solucin de problemas con el servidor Apache 2. Tambin puede especificar el LogLevel (El valor por defecto es "advertir") y el LogFormat (Ver / Etc/apache2/apache2.conf para el valor predeterminado valor). Algunas opciones se especifican en funcin de cada directorio en lugar de por servidor. Opciones es uno de estos directivas. Un parrafo Directory es encerrado en XML, como las etiquetas, as:

<Directory /var/www/mynewsite> ... </ Directory>

190

Servidores Web

La Opciones Directiva en un parrafo Directory acepta uno o ms de los siguientes valores (Entre otros), separados por espacios: ExecCGI - Permite la ejecucin de scripts CGI. Los scripts no se ejecutan si esta opcin no est elegido. La mayora de los archivos no deben ser ejecutados como scripts CGI. Esto sera muy peligroso. CGI las secuencias de comandos debe mantenerse en un directorio aparte y fuera de su DocumentRoot, y Slo de este directorio debe tener el conjunto de opciones ExecCGI. Este es el valor predeterminado, y el ubicacin por defecto para los scripts CGI es / Usr / lib / cgi-bin. Incluye - Permitir el lado del servidor incluye. Del lado del servidor incluye permitir que un archivo HTML para incluir otro archivos. Ver Apache SSI documentacin (la comunidad de Ubuntu)4 para ms informacin. IncludesNOEXEC - Permitir el lado del servidor incluye, pero anula los # Exec y # Include comandos en los scripts CGI. ndices - Muestra una lista formateada de los contenidos de un directorio, si no DirectoryIndex (Tales como index.html) existe en el directorio solicitado.

Por razones de seguridad, esto no debe fijarse por lo general, y ciertamente no se deben establecer en el directorio DocumentRoot. Activar esta opcin con cuidado sobre una base por directorio slo si est seguro de que desea que los usuarios ver el contenido completo del directorio. Multiview - Soporte de contenido negociados MultiViews, esta opcin est desactivada de forma predeterminada para razones de seguridad. Vase el Apache2 documentacin sobre esta opcin5. SymLinksIfOwnerMatch - Solo seguir enlaces simblicos si el fichero o directorio tiene la mismo propietario que el enlace. 1.2.3. Configuracin de httpd Esta seccin explica algunas opciones de configuracin bsicas httpd demonio. LockFile - La directiva LockFile establece la ruta al fichero de bloqueo usado cuando el servidor est compilado con USE_FCNTL_SERIALIZED_ACCEPT o USE_FLOCK_SERIALIZED_ACCEPT. Debe ser almacenada en el disco local. Se debe dejar el valor por defecto a menos que el directorio de registros se encuentra en un NFS accin. Si este es el caso, el valor por defecto debera ser cambiado a una posicin en el disco local y al un directorio que slo es legible por el root. PidFile - La directiva PidFile establece el fichero en el que el servidor graba su ID de proceso (PID). Este archivo slo deben ser legibles por el root. En la mayora de los casos, se debe dejar el valor por defecto.

Usuario - La directiva User establece el userid usado por el servidor para responder a las solicitudes. Este ajuste determina el acceso del servidor. Todos los archivos inaccesibles para este usuario tambin se podr acceder a su sitio web los visitantes. El valor predeterminado de usuario es "www-data".

4 https://help.ubuntu.com/community/ServerSideIncludes 5 Nmero de http://httpd.apache.org/docs/2.2/mod/mod_negotiation.html MultiViews

191

Servidores Web

A menos que sepa exactamente lo que ests haciendo, no configure la directiva User al root. Uso root como el usuario puede crear grandes agujeros de seguridad de su servidor Web. Grupo - La directiva es similar a la directiva de usuario. Group establece el grupo en las que el servidor atender las peticiones. El grupo por defecto es "www-data". 1.2.4. Mdulos de Apache2 Apache2 es un servidor modular. Esto implica que slo la funcionalidad ms bsica est incluido en el Server Core. Las caractersticas extendidas estn disponibles a travs de mdulos que se pueden cargar en Apache 2. Por por defecto, un conjunto base de mdulos se incluye en el servidor en tiempo de compilacin. Si el servidor est compilado para usar carga dinmica de mdulos, a continuacin, los mdulos pueden ser compilados por separado, y aadi en cualquier momento con la directiva LoadModule. De lo contrario, debe volver a compilar Apache 2 para agregar o quitar mdulos. Ubuntu compila Apache2 para permitir la carga dinmica de mdulos. Las directivas de configuracin pueden ser condicionalmente incluido en la presencia de un mdulo en particular incluyendo entre ellas en un <IfModule> bloquear.

Puede instalar mdulos adicionales de Apache2 y usarlos con su servidor Web. Por ejemplo, ejecute el siguiente comando en una terminal para instalar el MySQL autenticacin mdulo:

sudo apt-get install libapache2-mod-auth-mysql

Vase el / Etc/apache2/mods-available directorio, para los mdulos adicionales. Use la utilidad a2enmod para habilitar un mdulo:

sudo a2enmod auth_mysql sudo service apache2 reiniciar

Del mismo modo, se a2dismod desactivar un mdulo:

sudo auth_mysql a2dismod sudo service apache2 reiniciar

1,3. Configuracin de HTTPS


El mdulo mod_ssl aade una importante caracterstica al servidor Apache2 - la habilidad de encriptar comunicaciones. Por lo tanto, cuando el navegador se comunica con SSL, el prefijo https:// al el comienzo de la Uniform Resource Locator (URL) en la barra de navegacin del navegador.

El mdulo mod_ssl est disponible en paquete apache2-common. Ejecute el siguiente comando de una terminal para activar el mdulo mod_ssl:

sudo a2enmod ssl

192

Servidores Web

Hay un archivo de configuracin por defecto de HTTPS en / Etc/apache2/sites-available/default-ssl. En Para que Apache 2 para proporcionar HTTPS, un certificado y clave archivo tambin son necesarios. El valor por defecto HTTPS configuracin utilizar un certificado y una clave generada por el paquete ssl-cert. Son buenos para las pruebas, pero el certificado generado automticamente y la clave debe ser sustituido por un certificado especfico para el sitio o servidor. Para obtener informacin sobre la generacin de una clave y obtener un certificado de ver Seccin 5, "Certificados" [p. 171] Para configurar Apache2 para HTTPS, escriba lo siguiente:

a2ensite sudo default-ssl

Los directorios / Etc / ssl / certs y / Etc / ssl / private son las ubicaciones predeterminadas. Si instalar el certificado y la clave en otro directorio, asegrese de cambiar SSLCertificateFile y SSLCertificateKeyFile apropiadamente. Con Apache2 ahora configurado para HTTPS, reiniciar el servicio para activar la nueva configuracin:

sudo service apache2 reiniciar

Dependiendo de cmo haya obtenido su certificado puede ser necesario introducir una contrasea cuando se Apache2 se inicia. Puede acceder a las pginas del servidor seguro escribiendo en su https://your_hostname/url/ de direcciones del navegador bar.

1,4. Compartir permiso de escritura


Por ms de un usuario para poder escribir en el mismo directorio que ser necesario otorgar escritura permiso a un grupo que tienen en comn. El siguiente ejemplo se concede el permiso de escritura compartida a / Var / www al grupo de "webmasters".

sudo chgrp-R webmasters / var / www sudo find / var / www-type d-exec chmod g = rwxs "{}" \; sudo find / var / www tipo F-exec chmod g = RW "{}" \;

Si el acceso debe ser otorgado a ms de un grupo por cada directorio, habilite Access Control Lists (ACL).

1,5. Referencias
Apache2 Documentacin6 contiene informacin en profundidad sobre Apache2 directivas de configuracin. Adems, ver el paquete apache2-doc para la documentacin oficial de Apache 2. Consulte el Mod SSL Documentacin7 sitio para obtener informacin relacionada con ms de SSL.
6 http://httpd.apache.org/docs/2.2/ 7 http://www.modssl.org/docs/

193

Servidores Web O'Reilly Apache Cookbook8 es un buen recurso para el cumplimiento de Apache2 especfica configuraciones. En el caso de Ubuntu especficos Apache2 duda, consulte en la # Ubuntu-server Canal de IRC en freenode.net9. Por lo general, integrado con PHP y MySQL el Apache MySQL PHP Wiki de Ubuntu De 10 pginas es una buena recurso.

8 http://oreilly.com/catalog/9780596001919/ 9 http://freenode.net/ 10 https://help.ubuntu.com/community/ApacheMySQLPHP

194

Servidores Web

2. PHP5 - Lenguaje de scripting


PHP es un lenguaje de scripting de propsito general ideal para el desarrollo Web. El script PHP puede ser embebido en pginas HTML. En esta seccin se explica cmo instalar y configurar PHP5 en un sistema Ubuntu con Apache2 y MySQL.

En esta seccin se asume que usted ha instalado y configurado el servidor web Apache2 y la base de datos MySQL Server. Puede referirse a Apache2 seccin y las secciones de MySQL en este documento para instalar y configurar Apache 2 y MySQL respectivamente.

2,1. Instalacin
El PHP5 est disponible en Ubuntu Linux. A diferencia de Python y Perl, que se instalan en la base sistema, PHP debe ser aadido. Para instalar PHP5 puede introducir el siguiente comando en el terminal:

sudo apt-get install php5 libapache2-mod-php5

Se puede ejecutar scripts de PHP5 desde la lnea de comandos. Para ejecutar scripts de PHP5 desde la lnea de comando que debe instalar el paquete php5-cli. Para instalar php5-cli puede introducir el siguiente comando en el terminal:

sudo apt-get install php5-cli

Tambin se puede ejecutar scripts de PHP5 sin necesidad de instalar PHP5 mdulo de Apache. Para lograr esto, debe instalar el paquete php5-cgi. Puede ejecutar el siguiente comando en una terminal de sistema para instalar el paquete php5-cgi:

sudo apt-get install php5-cgi

Para usar MySQL con PHP5 debe instalar el paquete php5-mysql. Para instalar php5-mysql que puede introducir el siguiente comando en el terminal:

sudo apt-get install php5-mysql

Del mismo modo, para usar PostgreSQL con PHP5 debe instalar el paquete php5-pgsql. Para instalar php5pgsql debe ingresar el siguiente comando en el terminal:

sudo apt-get install php5-pgsql

2,2. Configuracin
Cuando haya instalado PHP5, podr ejecutar scripts de PHP5 desde su navegador web. Si ha instalado php5paquete de clima, puede ejecutar scripts de PHP5 desde el smbolo del sistema.

195

Servidores Web

Por defecto, el servidor web Apache 2 est configurado para ejecutar scripts de PHP5. En otras palabras, la PHP5 mdulo est habilitado en el servidor web Apache 2 automticamente al instalar el mdulo. Por favor, verifique si los archivos / Etc/apache2/mods-enabled/php5.conf y / Etc/apache2/mods-enabled/php5.load existir. Si no existe, se puede habilitar el mdulo con a2enmod comando. Una vez que instale paquetes relativos a PHP5 y permiti a PHP5 mdulo Apache 2, deber reiniciar Apache2 servidor Web para ejecutar scripts de PHP5. Puede ejecutar el siguiente comando en el indicador de la terminal para reiniciar el servidor web:
sudo service apache2 reiniciar

2,3. Pruebas
Para verificar la instalacin, puede ejecutar el siguiente script de PHP5 phpinfo:

<? Php phpinfo (); >

Puede guardar el contenido de un archivo phpinfo.php y colocarlo en DocumentRoot directorio de El servidor web Apache2. Al escribir en el navegador http://hostname/phpinfo.php, Sera mostrar Los valores de los diversos parmetros de configuracin de PHP5.

2,4. Referencias
Para informacin ms detallada consulte php.net11 documentos. Hay una gran cantidad de libros sobre PHP. Dos buenos libros de O'Reilly son Aprender PHP 512 y la PHP libro de cocina13. Asimismo, consulte la Apache MySQL PHP Wiki de UbuntuPgina 14 para ms informacin.

11 http://www.php.net/docs.php 12 http://oreilly.com/catalog/9780596005603/ 13 http://oreilly.com/catalog/9781565926813/ 14 https://help.ubuntu.com/community/ApacheMySQLPHP

196

Servidores Web

3. Squid - Servidor Proxy


Squid es una completa herramienta web proxy cach de la aplicacin de servidor que proporciona servicios de proxy y cach para Hyper Text Transport Protocol (HTTP), File Transfer Protocol (FTP), y otra popular red protocolos. Squid puede servir de almacenamiento en cach y proxy de Secure Sockets Layer (SSL) y almacenamiento en cach del servidor de nombres de dominio (DNS), y proporciona servicios de cach transparente. Squid tambin soporta una amplia variedad de protocolos de almacenamiento en cach, como protocolo de cach de Internet (ICP) Texto almacenamiento de la tecnologa Hyper en cach de Protocolo (HTCP) el Cache Array Routing Protocol (CARP) y la cach de web Coordinacin Protocolo. (WCCP) El servidor proxy cach Squid es una solucin excelente para una variedad de proxy y servidor de almacenamiento en cach necesidades, y las escalas de la sucursal a las redes de nivel empresarial al tiempo que proporciona amplias, granulares mecanismos de control de acceso y el seguimiento de parmetros crticos a travs de la red simple Management Protocol (SNMP). Cuando se selecciona un sistema informtico para su uso como Squid dedicado proxy o servidor de cach, asegurarse de que su sistema est configurado con una gran cantidad de memoria fsica, puesto que Squid mantiene una cach en la memoria para aumentar el rendimiento.

3,1. Instalacin
En un terminal, introduzca el siguiente comando para instalar el servidor Squid:

sudo apt-get install squid

3,2. Configuracin
Squid se configura editando las directivas contenidas en el / Etc / squid / squid.conf archivo de configuracin. Los siguientes ejemplos ilustran algunas de las directrices que pueden ser modificados para afectar el comportamiento del servidor Squid. Para obtener ms en profundidad la configuracin de Squid, vea las referencias seccin. Antes de editar el fichero de configuracin, debe hacer una copia del archivo original y proteger contra escritura por lo que tendr la configuracin original como referencia, y volver a utilizar como necesario. Copie el / Etc / squid / squid.conf presentar y proteger contra escritura con los siguientes comandos introducidos en un terminal:

sudo cp / etc / squid / squid.conf / etc / squid / squid.conf.original sudo chmod a-w / etc / squid / squid.conf.original

Para configurar el servidor Squid escuche en el puerto TCP 8888 en lugar del puerto TCP por defecto 3128, el cambio la directiva http_port como sigue:
http_port 8888

197

Servidores Web

Cambie la directiva visible_hostname con el fin de dar al servidor Squid tenga un nombre de host especfico. Este nombre no tiene por qu ser el equipo es el nombre de host. En este ejemplo se ha establecido para weezie

weezie visible_hostname

El uso del control de acceso de Squid, puede configurar el uso de los servicios de Internet delegados por Squid est disponibles slo los usuarios con Protocolo de Internet seguro (IP). Por ejemplo, vamos a ilustrar el acceso de los usuarios de la subred 192.168.42.0/24 nicamente:

Agregue lo siguiente a la fondo de la seccin de ligamento cruzado anterior de su / Etc / squid / squid.conf archivo:
acl src 192.168.42.0/24 fortytwo_network

A continuacin, agregue lo siguiente a la superior de la seccin http_access de su archivo / Etc / squid / squid.conf archivo:
http_access allow fortytwo_network

Uso de las funciones de control de acceso a excelentes Squid, puede configurar el uso de los servicios de Internet delegados por Squid est disponible slo durante las horas normales de oficina. Por ejemplo, vamos a ilustrar el acceso de los empleados de una empresa que opera entre las 9:00 am y 5:00 pm, de lunes a viernes, y que utiliza el 10.1.42.0/42 subred:

Agregue lo siguiente a la fondo de la seccin de ligamento cruzado anterior de su / Etc / squid / squid.conf archivo:
acl src biz_network 10.1.42.0/24 acl biz_hours momento M T W T F 09:00-17:00

A continuacin, agregue lo siguiente a la superior de la seccin http_access de su archivo / Etc / squid / squid.conf archivo:
http_access allow biz_hours biz_network

Despus de realizar cambios en el / Etc / squid / squid.conf archivo, guardar el archivo y reinicie el calamar aplicacin de servidor para efectuar los cambios con el siguiente comando en una terminal de entrada del sistema:

sudo / etc / init.d / squid restart

3,3. Referencias
Squid Web15 Wiki de Ubuntu Squid16 pginas.
15 http://www.squid-cache.org/~~V 16 https://help.ubuntu.com/community/Squid

198

Servidores Web

4. Ruby on Rails
Ruby on Rails es un framework web de cdigo abierto para desarrollar aplicaciones de bases de datos respaldados por la web. Lo est optimizado para la productividad sostenible de los programadores, ya que permite al programador escribir el cdigo por convencin, favoreciendo sobre la configuracin.

4,1. Instalacin
Antes de instalar los carriles debe instalar Apache y MySQL. Para instalar el paquete de Apache, por favor referirse a Seccin 1, "HTTPD - Servidor web Apache 2" [p. 187]. Para obtener instrucciones sobre la instalacin de MySQL referirse a Seccin 1, "MySQL" [p. 206]. Una vez que tenga los paquetes de Apache y MySQL instalado, est listo para instalar Ruby on Rails paquete. Para instalar los paquetes bsicos de Ruby y Ruby on Rails, puede introducir el siguiente comando en el terminal:

sudo apt-get install rieles

4,2. Configuracin
Modificar el / Etc/apache2/sites-available/default archivo de configuracin para configurar sus dominios. Lo primero que debe cambiar es la DocumentRoot Directiva:

DocumentRoot / ruta / al / rails / application / pblica

A continuacin, cambie la directiva "/path/to/rails/application/public"> <Directory:

<Directory "/path/to/rails/application/public"> Opciones ndices FollowSymLinks MultiViews ExecCGI AllowOverride All Order allow, deny Dejar de todas las AddHandler cgi-script. Cgi </ Directory>

Tambin debe activar el mdulo mod_rewrite de Apache. Para habilitar el mdulo mod_rewrite, por favor introducir el siguiente comando en una terminal:

a2enmod rewrite sudo

Por ltimo, tendr que cambiar la propiedad de la / Ruta / al / rails / application / pblica y / ruta / al / rails / application / tmp directorios a los que el usuario utiliza para ejecutar el proceso de Apache: 199

Servidores Web

sudo chown-R www-data: www-data / ruta rieles / Hasta / / aplicaciones / public sudo chown-R www-data: www-data / ruta rieles / Hasta / / aplicaciones / tmp

Eso es! Ahora que tenemos un servidor listo para sus aplicaciones de Ruby on Rails.

4,3. Referencias
Consulte el Ruby on Rails17 sitio web para ms informacin. Tambin se Desarrollo gil con Rails18 es un gran recurso. Otro lugar para obtener ms informacin es el Ruby on Rails Wiki de Ubuntu19 pginas.

17 http://rubyonrails.org/~~V 18 http://pragprog.com/titles/rails3/agile-web-development-with-rails-third-edition 19 https://help.ubuntu.com/community/RubyOnRails

200

Servidores Web

5. Apache Tomcat
Apache Tomcat es un contenedor web que le permite servir a Java Servlets y JSP (Java Server Pages) aplicaciones web. Los paquetes de Tomcat 6.0 en Ubuntu admiten dos formas diferentes de ejecutar Tomcat. Puede instalar como un clsico nico en todo el sistema de instancia, que ser ejecutado durante el arranque se ejecutar con la tomcat6 usuario sin privilegios. Pero tambin se puede implementar instancias privadas que se ejecutar con su propia derechos de los usuarios, y que debe iniciar y detener por s mismo. Esta segunda forma es particularmente til en un contexto de desarrollo del servidor, donde varios usuarios necesitan para poner a prueba en sus propias instancias de Tomcat privadas.

5,1. Todo el sistema de instalacin


Para instalar el servidor Tomcat, puede introducir el siguiente comando en el terminal:

sudo apt-get install tomcat6

Esto instalar un servidor Tomcat con slo una aplicacin web por defecto ROOT que muestra un mnimo de "Funciona" la pgina por defecto.

5,2. Configuracin
Archivos de configuracin de Tomcat se puede encontrar en / Etc/tomcat6. Slo unos pocos ajustes de configuracin comunes se describe aqu, por favor consulte Documentacin de Tomcat 6.020 para obtener ms. 5.2.1. Cambio de puertos por defecto Por defecto Tomcat 6.0 corre un conector HTTP en el puerto 8080 y un conector AJP en el puerto 8009. Usted que desee cambiar los puertos predeterminados para evitar conflictos con otro servidor en el sistema. Es hace cambiando las siguientes lneas en / Etc/tomcat6/server.xml:

<Connector port = "8080" protocol = "HTTP/1.1" connectionTimeout = "20000" redirectPort = "8443" /> ... <Connector Port="8009" protocol="AJP/1.3" redirectPort="8443" />

5.2.2. Cambio de JVM utiliza Por defecto Tomcat correr preferentemente con OpenJDK-6, a continuacin, intente JVM de Sun, a continuacin, intente alguna otra JVM. Si usted tiene varias mquinas virtuales de Java instalado, se puede establecer que debe ser utilizado JAVA_HOME en / Etc/default/tomcat6: mediante el establecimiento de

JAVA_HOME = / usr/lib/jvm/java-6-sun
20 http://tomcat.apache.org/tomcat-6.0-doc/index.html

201

Servidores Web

5.2.3. Declarar los usuarios y roles Nombres de usuario, contraseas y roles (grupos) se puede definir centralmente en un contenedor de Servlets. En Tomcat 6,0 esto se hace en el / Etc/tomcat6/tomcat-users.xml archivo:

<role rolename="admin"/> usuario> username="tomcat" password="s3cret" roles="admin"/>

5,3. Uso de aplicaciones web Tomcat estndar


Tomcat viene con aplicaciones web que se puede instalar la documentacin, la administracin o de demostracin propsitos. 5.3.1. Tomcat documentacin El paquete tomcat6-docs contiene documentacin de Tomcat 6.0, empaquetado como una aplicacin web que puede acceder de forma predeterminada en http://yourserver:8080/docs. Puede instalarlo escribiendo lo siguiente comando en el terminal:

sudo apt-get install tomcat6-docs

5.3.2. Tomcat administracin de aplicaciones web El paquete tomcat6-admin contiene dos webapps de que se pueden utilizar para administrar el servidor Tomcat utilizando una interfaz web. Se pueden instalar con el comando siguiente en el terminal del sistema:

sudo apt-get install tomcat6-admin

El primero es el gerente webapp, que se puede acceder de forma predeterminada en http://yourserver:8080/ jefe / html. Se utiliza sobre todo para obtener el estado del servidor y reiniciar aplicaciones web. El acceso al gerente aplicacin est protegida por defecto: es necesario definir un usuario con el papel de "director", en / Etc/tomcat6/tomcat-users.xml antes de poder acceder a l. El segundo es el de acogida-manager webapp, que se puede acceder de forma predeterminada en http:// suservidor: 8080/host-manager/html. Se puede utilizar para crear mquinas virtuales dinmicamente. El acceso al de acogida-manager la aplicacin tambin est protegido por defecto: es necesario definir un usuario con el rol "admin" en / Etc/tomcat6/tomcat-users.xml antes de poder acceder a l. Por razones de seguridad, el usuario tomcat6 no se puede escribir a la / Etc/tomcat6 directorio por defecto. Algunos caractersticas de estas aplicaciones web (administrador de implementacin de aplicaciones, la creacin de mquinas virtuales) necesita acceso de escritura a ese directorio. Si desea utilizar las funciones de ejecutar la siguiente, para dar a los usuarios en el tomcat6 agrupar los derechos necesarios:

202

Servidores Web

sudo chgrp-R tomcat6 / etc/tomcat6 sudo chmod-R g + w / etc/tomcat6

5.3.3. Ejemplos de aplicaciones web Tomcat El paquete tomcat6-ejemplos contiene dos Webapps que pueden ser utilizados para probar o demostrar Servlets y JSP caractersticas, que se puede acceder a ellos de manera predeterminada en http://yourserver:8080/examples. Usted puede instlelos con el comando siguiente en el terminal:

sudo apt-get install tomcat6-ejemplos

5,4. Uso de instancias privadas


Tomcat es muy usada en los escenarios de desarrollo y las pruebas donde el uso de una sola en todo el sistema instancia no cumple los requisitos de los usuarios mltiples en un solo sistema. Los paquetes de Tomcat 6.0 en Ubuntu vienen con herramientas para ayudar a implementar sus propias instancias orientadas al usuario, permitiendo a cada usuario en un sistema para funcionar (sin derechos de root) separados instancias privadas sin dejar de utilizar el sistema instalado bibliotecas.

Es posible ejecutar el ejemplo de todo el sistema y los casos particulares en paralelo, siempre y cuando que no utilizan los mismos puertos TCP. 5.4.1. Instalacin de apoyo de instancia privada Se puede instalar todo lo necesario para ejecutar instancias privadas introduciendo el siguiente comando en de la terminal:

sudo apt-get install tomcat6 usuario

5.4.2. Creacin de una instancia privada Se puede crear un directorio de la instancia privada introduciendo el siguiente comando en la terminal del sistema:

tomcat6-ejemplo-crear mi instancia

Esto crear una nueva mi instancia directorio con todos los subdirectorios y los scripts necesarios. Usted Por ejemplo, puede instalar sus bibliotecas comunes en el lib / subdirectorio y desplegar sus aplicaciones web en el la webapps / subdirectorio. No hay aplicaciones web se han desplegado por defecto. 5.4.3. Configuracin de la instancia privada Va a encontrar los archivos de configuracin de Tomcat clsicos de la instancia privada en el conf / subdirectorio. Usted debe, por ejemplo, sin duda modificar la conf / server.xml archivo para cambiar el valor por defecto puertos utilizados por la instancia de Tomcat privada para evitar conflictos con otros casos que podran ser ejecutando.

203

Servidores Web

5.4.4. Iniciar / detener la instancia privada Usted puede comenzar su instancia privada introduciendo el siguiente comando en el smbolo de la terminal (Suponiendo que su ejemplo se encuentra en el mi instancia directorio):

my-instance/bin/startup.sh

Usted debe verificar la logs / subdirectorio de cualquier error. Si usted tiene un java.net.BindException: Direccin ya est en uso <null>: 8080 error, significa que el puerto usted est utilizando ya est tomada y que se debe cambiar.

Puede detener la instancia entrando el mandato siguiente en el smbolo de la terminal (en el supuesto su ejemplo se encuentra en el mi instancia directorio):

my-instance/bin/shutdown.sh

5,5. Referencias
Consulte el Apache Tomcat21 sitio web para ms informacin. Tomcat: The Definitive Guide22 es un buen recurso para la construccin de aplicaciones web con Tomcat. Para los libros adicionales, consulte la Tomcat Libros23 lista de la pgina. Tambin, vea theUbuntu Wiki Apache Tomcat24 pginas.

21 http://tomcat.apache.org/~~V 22 http://oreilly.com/catalog/9780596003180/ 23 http://wiki.apache.org/tomcat/Tomcat/Books 24 https://help.ubuntu.com/community/ApacheTomcat5

204

Captulo 12. Bases de datos de dos servidores de bases de datos populares. Ellos Ubuntu dispone
son: MySQL PostgreSQL Estn disponibles en el repositorio principal. En esta seccin se explica cmo instalar y configurar estos servidores de bases de datos.

205

Bases de datos

1. MySQL
MySQL es un rpido, multi-threaded, multi-usuario, y el servidor robusta base de datos SQL. Est destinado a de misin crtica, con alta carga de los sistemas de produccin, as como para integrarse en desplegado software.

1,1. Instalacin
Para instalar MySQL, ejecute el siguiente comando en una terminal:

sudo apt-get install mysql-server

A partir de Ubuntu 12.04, MySQL 5.5 se instala por defecto. Si bien esto es 100% compatible con MySQL 5.1 en caso de necesitar la instalacin de 5,1 (por ejemplo, para ser un esclavo de otra MySQL 5.1 servidores) que puede instalar el paquete mysql-server-5.1 en su lugar.

Durante el proceso de instalacin se le pedir que introduzca una contrasea para el usuario root de MySQL. Una vez completada la instalacin, el servidor MySQL se iniciar automticamente. Puede ejecutar el el siguiente comando en una terminal para comprobar si el servidor MySQL se est ejecutando:

sudo netstat-tap | grep mysql

Al ejecutar este comando, debe ver la siguiente lnea o algo similar:

tcp

0 localhost: mysql

*: *

ESCUCHAR

2556/mysqld

Si el servidor no se est ejecutando correctamente, puede escribir el siguiente comando para iniciarlo:

sudo service mysql restart

1,2. Configuracin
Puede editar el / Etc / mysql / my.cnf presentar para configurar las opciones bsicas - archivo de registro, nmero de puerto, etcpara configurar MySQL para escuchar las conexiones de mquinas de la red, cambiar el bindPor ejemplo, direccin Directiva a la direccin IP del servidor:

bind-address

= 192.168.0.5

Reemplazar 192.168.0.5 con la direccin correspondiente.

Despus de hacer un cambio en / Etc / mysql / my.cnf el demonio de MySQL es necesario reiniciar:

206

Bases de datos

sudo service mysql restart

Si desea cambiar el MySQL raz contrasea, introducir en un terminal:

sudo dpkg-reconfigure mysql-server-5.5

El demonio de MySQL se detuvo, y se le pedir que introduzca una nueva contrasea.

1,3. Los motores de bases de datos


Si bien la configuracin por defecto de MySQL proporcionado por los paquetes de Ubuntu es perfectamente funcional y funciona bien, hay cosas que usted puede desear para considerar antes de continuar. MySQL est diseado para permitir que los datos se almacenan en diferentes maneras. Estos mtodos se conocen como ya sea de base de datos o almacenamiento de los motores. Hay dos motores principales que usted va a estar interesado en: InnoDB y MyISAM. Motores de almacenamiento son transparentes para el usuario final. MySQL se encargar de las cosas de manera diferente bajo la superficie, pero a pesar de que el motor de almacenamiento est en uso, que va a interactuar con la base de datos de la misma manera. Cada motor tiene sus propias ventajas y desventajas. Si bien es posible, y puede ser ventajoso para mezclar y combinar los motores de base de datos en un nivel de la mesa, esto reduce la eficacia de la optimizacin del rendimiento que puede hacer lo que ser la divisin de la recursos entre los dos motores en vez de dedicarlos a uno. MyISAM es el mayor de los dos. Puede ser ms rpido que InnoDB en determinadas circunstancias y a favor de una carga de trabajo de slo lectura. Algunas aplicaciones web se han ajustado en torno MyISAM (aunque eso no quiere decir que se retrasar en InnoDB). MyISAM soporta el texto completo tipo de datos, que permite bsquedas muy rpidas de grandes cantidades de datos de texto. Sin embargo MyISAM es slo es capaz de bloquear toda una tabla para escribir. Esto significa que slo un proceso puede actualizar una tabla a la vez. Como cualquier aplicacin que utiliza las escalas de mesa que esto puede llegar a ser un obstculo. Tambin carece de diario, lo que hace que sea ms difcil para los datos que deben recuperarse despus de un accidente. En el siguiente enlace ofrece es un motor de base de datos ms moderno, diseado para ser ACID compatible que produccin1. InnoDB algunos puntos para su examen sobre el uso de MyISAM en una base de datos2de garantiza transacciones de base de datos se procesan de forma fiable. Escribir bloqueo puede ocurrir sobre una base a nivel de fila en una mesa. Eso significa que puede ocurrir varias actualizaciones en una sola tabla de forma simultnea. El almacenamiento en cach de datos es tambin se manejan en la memoria en el motor de base de datos, permitiendo el almacenamiento en cach a nivel de fila ms eficiente base en lugar de bloque de archivo. Para satisfacer el cumplimiento de todas las transacciones ACID se registran en el diario independiente de las mesas principales. Esto permite la recuperacin de datos mucho ms fiables como la consistencia de datos marcada. puede ser A partir de MySQL 5.5 InnoDB es el motor por defecto, y es muy recomendable sobre MyISAM a menos tiene necesidad especfica de caractersticas nicas para el motor.
1 http://www.mysqlperformanceblog.com/2006/06/17/using-myisam-in-production/ 2 http://en.wikipedia.org/wiki/ACID

207

Bases de datos

1,4. Configuracin avanzada


1.4.1. Creacin de un archivo my.cnf sintonizado Hay un nmero de parmetros que se puede ajustar dentro de archivo de configuracin de MySQL que le permitir mejorar el rendimiento del servidor con el tiempo. Para la configuracin inicial se puede encontrar Herramienta de generacin de Percona de my.cnf3 til. Esta herramienta ayudar a generar un fichero my.cnf que ser mucho ms optimizado para sus funciones de servidor especficas y sus requisitos.

No reemplazar el archivo my.cnf existente con un Percona, si ya ha cargado los datos en el base de datos. Algunos de los cambios que estarn en el archivo no ser compatible si alteran la cantidad de datos es almacenados en el disco duro y usted no podr iniciar MySQL. Si usted desea utilizarlo y tener que los datos existentes, ser necesario llevar a cabo un mysqldump y vuelva a cargar:

mysqldump - all-databases - todas las rutinas de-u root-p> del ~ o fulldump.sql

Este le pedir la contrasea de root antes de crear una copia de los datos. Es aconsejable asegurarse de que no hay otros usuarios o procesos que utilizan la base de datos, mientras esto ocurre. Dependiendo la cantidad de datos que tienes en tu base de datos, esto puede tardar un tiempo. No se ve nada en la pantalla durante este proceso.

Una vez que el vertedero se ha completado, apague MySQL:

sudo service mysql stop

Ahora copia de seguridad del fichero my.cnf y sustituirlo por uno nuevo:

sudo cp / etc / my.cnf / etc / my.cnf.backup sudo cp / ruta / al / nuevo / my.cnf / etc / my.cnf

A continuacin, elimine y vuelva a inicializar el espacio de base de datos y que la propiedad sea la correcta antes de reiniciar MySQL:

sudo rm-rf / var / lib / mysql / * mysql_install_db sudo sudo chown-R mysql: / var / lib / mysql sudo service mysql start

Finalmente lo nico que queda es volver a importar los datos. Para darnos una idea de hasta qu punto el proceso de importacin encontrar la utilidad 'Visor de Pipe', pv, til. A continuacin se muestra cmo instalar y utilizar PV usted puede tiene este caso, pero si prefieres no usarlo basta con sustituir pv con el gato en el siguiente comando. Ignore cualquier Los tiempos de ETA producidos por pv, que estn basadas en el tiempo medio de tramitacin de cada fila del archivo, pero la velocidad de la insercin puede variar enormemente de una fila a otra, con mysqldumps:

3 http://tools.percona.com/members/wizard

208

Bases de datos

sudo apt-get install pv pv del ~ o fulldump.sql | mysql

Una vez que se complete todo es bueno para ir! Esto no es necesario que todos los cambios my.cnf. La mayora de las variables que puede que desee cambiar para mejorar el rendimiento son ajustables, incluso mientras el servidor est en ejecucin. Como con cualquier cosa, asegrese de tener una buena copia de seguridad de archivos de configuracin y los datos antes de realizar cambios. 1.4.2. MySQL Tuner Sintonizador de MySQL es una herramienta til que se conectar a un funcionamiento de las sugerencias de instancias de MySQL y la oferta de cmo puede ser mejor configurado para su carga de trabajo. Cuanto ms tiempo que el servidor ha estado funcionando durante, al mejor el mysqltuner consejos puede ofrecer. En un entorno de produccin, considere esperar por lo menos 24 horas antes de ejecutar la herramienta. Usted puede conseguir instalar mysqltuner de los repositorios de Ubuntu:
sudo apt-get install mysqltuner

Entonces una vez que la haya instalado, se ejecuta:


mysqltuner

y esperar a que su informe final. La seccin superior se ofrece informacin general sobre el servidor de base de datos, y la parte inferior proporciona sugerencias para el ajuste de alterar en su my.cnf. La mayora de estos puede ser alterado en vivo en el servidor sin necesidad de reiniciar, busca a travs de la documentacin oficial de MySQL (enlace en la seccin de Recursos) para las variables relevantes para el cambio en la produccin. La siguiente es parte de un informe ejemplo de una base de datos de produccin que muestra que puede haber algn beneficio de aumentar la cantidad de cach de consultas:

-------- Recomendaciones ----------------------------------------- -----------Recomendaciones generales: Ejecutar OPTIMIZE TABLE para desfragmentar tablas para un mejor rendimiento Aumentar table_cache gradualmente para evitar los lmites de descriptores de fichero Las variables a ajustar: key_buffer_size (> 1,4 g) query_cache_size (> 32M) table_cache (> 64) innodb_buffer_pool_size (> = 22G)

Un comentario final sobre las bases de datos de ajuste: Mientras que en trminos generales se puede decir que ciertos ajustes son los mejores, el rendimiento puede variar de una aplicacin a otra. Por ejemplo, lo que funciona mejor para Wordpress podra no ser lo mejor para Drupal, Joomla o aplicaciones propietarias. Su rendimiento depende del los tipos de consultas, el uso de ndices, el grado de eficiencia en el diseo de base de datos es y as sucesivamente. Usted puede encontrar que es til para pasar un tiempo en busca de consejos de ajuste de bases de datos basado en las aplicaciones que estnpara. Una vez que llegue all de cierto punto los ajustes que realice slo se traducir en menores usar mejoras, y usted va a estar mejor ya sea la mejora de la aplicacin, o mirando a la ampliacin de su medio ambiente a travs de bases de datos o bien utilizando un hardware ms potente o mediante la adicin de los servidores esclavos.

209

Bases de datos

1,5. Recursos
Consulte el MySQL Home Page4 para ms informacin. La documentacin completa est disponible en los formatos online y offline de la Desarrolladores de MySQL portal5 Para ver informacin general de SQL Uso de SQL Edition Especial6 por Rafe Colburn. El Apache MySQL PHP Wiki de Ubuntu7 pgina tambin tiene informacin til.

4 http://www.mysql.com/ 5 http://dev.mysql.com/doc/ 6 http://www.informit.com/store/product.aspx?isbn=0768664128 7 https://help.ubuntu.com/community/ApacheMySQLPHP

210

Bases de datos

2. PostgreSQL
PostgreSQL es un sistema de base de datos objeto-relacional que tiene las caractersticas de las entidades comerciales tradicionales los sistemas de bases de datos con las mejoras que se encuentran en la prxima generacin de sistemas DBMS.

2,1. Instalacin
Para instalar PostgreSQL, ejecute el comando siguiente en el smbolo del sistema:

sudo apt-get install postgresql

Una vez completada la instalacin, debe configurar el servidor PostgreSQL en base a sus necesidades, aunque la configuracin por defecto es viable.

2,2. Configuracin
De forma predeterminada, la conexin a travs de TCP / IP est deshabilitado. PostgreSQL soporta la autenticacin de clientes mltiples mtodos. Mtodo de autenticacin IDENT se utiliza para los usuarios de postgres y locales, a menos que configurado. Por favor, consulte el Administrador de PostgreSQL si desea configurar alternativas como Kerberos8. La discusin siguiente se supone que se desea habilitar las conexiones TCP / IP y utilizar el MD5 mtodo de autenticacin del cliente. Archivos de configuracin de PostgreSQL se almacenan en la / Etc /
postgresql / <versin> / main

directorio. Por ejemplo, si instala PostgreSQL 8.4, los archivos de configuracin son almacenada en el / Etc/postgresql/8.4/main directorio. Para configurar ident autenticacin, aadir entradas a la / Etc/postgresql/8.4/main / pg_ident.conf archivo. Hay observaciones detalladas en el archivo que te gue. Para habilitar las conexiones TCP / IP, edite el archivo / Etc/postgresql/8.4/main/postgresql.conf Busque la lnea # Listen_addresses = 'localhost' y cambiar a:

listen_addresses 'localhost' =

Para permitir que otros equipos para conectarse a su servidor PostgreSQL sustituir 'localhost' con la Direccin IP de su servidor, o, alternativamente, '0 .0.0.0 'para obligar a todas las interfaces. Tambin puede editar todos los dems parmetros, si sabes lo que ests haciendo! Para obtener ms informacin, consulte la archivo de configuracin o de la documentacin de PostgreSQL. Ahora que podemos conectar a nuestro servidor PostgreSQL, el siguiente paso es establecer una contrasea para el postgres usuario. Ejecute el siguiente comando en una terminal para conectarse a la plantilla predeterminada de PostgreSQL base de datos:
8 http://www.postgresql.org/docs/8.4/static/admin.html

211

Bases de datos

sudo-u postgres psql template1

El comando de arriba se conecta a la base de datos PostgreSQL template1 como usuario postgres. Una vez que se conecte con el servidor PostgreSQL, que ser en el intrprete de SQL. Puede ejecutar el comando SQL siguiente en el indicador de psql para establecer la contrasea para el usuario postgres.

ALTER USER postgres con contrasea cifrada "su_contrasea ';

Despus de configurar la contrasea, edite el archivo / Etc/postgresql/8.4/main/pg_hba.conf para utilizar MD5 la autenticacin con el postgres usuario:

local

todo

postgres

md5

Por ltimo, debe reiniciar el servicio de PostgreSQL para inicializar la nueva configuracin. Desde un terminal ingrese el siguiente para reiniciar PostgreSQL:

sudo / etc/init.d/postgresql-8.4 reinicio

La configuracin anterior no est completa, por cualquier medio. Por favor, consulte PostgreSQL Gua del administrador9 para configurar ms parmetros.

2,3. Recursos
Como se mencion anteriormente la Gua del administrador10 es un excelente recurso. La gua tambin est disponible en el paquete postgresql-doc-8.4. Ejecute lo siguiente en una terminal para instalar el paquete:

sudo apt-get install postgresql-doc-8.4

Para ver la gua de entrar en file :/ / / usr/share/doc/postgresql-doc-8.4/html/index.html en la direccin barra de su navegador. Para ver informacin general de SQL Uso de SQL Edition Especial11 por Rafe Colburn. Asimismo, consulte la PostgreSQL Wiki de UbuntuPgina 12 para ms informacin.

9 http://www.postgresql.org/docs/8.4/static/admin.html 10 http://www.postgresql.org/docs/8.4/static/admin.html 11 http://www.informit.com/store/product.aspx?isbn=0768664128 12 https://help.ubuntu.com/community/PostgreSQL

212

Captulo 13. Aplicaciones LAMP

213

Aplicaciones LAMP

1. Informacin general
Instalaciones de LAMP (Linux + Apache + MySQL + PHP / Perl / Python) son un montaje muy popular para Ubuntu servidores. Hay un gran nmero de aplicaciones de cdigo abierto escrito usando la pila de aplicaciones LAMP. Algunas aplicaciones LAMP populares son Wiki, Sistemas de Gestin de Contenidos y Gestin Software como phpMyAdmin. Una de las ventajas de la lmpara es la flexibilidad sustancial para la base de datos, servidor web, y las secuencias de comandos idiomas. Sustitutos populares para MySQL incluye PostgreSQL y SQLite. Python, Perl y Ruby Tambin se utiliza con frecuencia en lugar de PHP. Mientras que Nginx, Cherokee y Lighttpd puede sustituir a Apache. La forma ms rpida para empezar es instalar LAMP utilizando tasksel. Tasksel es una herramienta de Debian / Ubuntu que instala varios paquetes relacionados como una coordinada "tarea" en su sistema. Para instalar una lmpara servidor: En un terminal escriba el siguiente comando:

sudo tasksel install lamp-servidor

Despus de instalarlo usted ser capaz de instalar a la mayor parte LMPARA aplicaciones de esta manera: Descargar un archivo que contiene los archivos de origen de la aplicacin. Descomprima el archivo, por lo general en un directorio accesible a un servidor web. Dependiendo de donde se extrajo la fuente, configurar un servidor web para servir a los archivos. Configurar la aplicacin para conectarse a la base de datos. Ejecutar un script, o navegar a una pgina de la aplicacin, para instalar la base de datos que necesita el aplicacin. Una vez que los pasos anteriores, o medidas similares, se han completado ya est listo para comenzar a utilizar la aplicacin. Una desventaja del uso de este enfoque es que los archivos de la aplicacin no se colocan en el sistema de archivos en una forma estndar, lo cual puede causar confusin en cuanto a donde se instala la aplicacin. Otro ms grande desventaja es la actualizacin de la aplicacin. Cuando una nueva versin es liberada, el mismo proceso utilizado para instalar la aplicacin que se necesita para aplicar las actualizaciones. Afortunadamente, un nmero de LMPARA aplicaciones ya estn empacados para Ubuntu, y estn disponibles para instalacin de la misma manera como aplicaciones LAMP no. Dependiendo de la aplicacin adicional alguna los pasos de configuracin y puesta en marcha puede ser necesaria, sin embargo.

En esta seccin se explica cmo instalar algn LMPARA aplicaciones.

214

Aplicaciones LAMP

2. Moin Moin
MoinMoin es un motor Wiki implementado en Python, basado en el motor PikiPiki Wiki, y con licencia bajo la GNU GPL.

2,1. Instalacin
Para instalar MoinMoin, ejecute el comando siguiente en el smbolo del sistema:

sudo apt-get install python-moinmoin

Tambin debe instalar el servidor web Apache2. Para instalar apache2 servidor web, por favor vaya a Seccin 1.1, "Instalacin" [p. 187] sub-seccin en Seccin 1, "HTTPD - Servidor web Apache 2" [p. 187] seccin.

2,2. Configuracin
Para configurar la aplicacin Wiki en primer lugar, por favor, ejecute el siguiente conjunto de comandos. Supongamos que va a crear un Wiki llamado MyWiki:

cd / usr / share / moin sudo mkdir MyWiki sudo cp-R de datos MyWiki sudo cp-R subyacente MyWiki sudo cp / servidor moin.cgi MyWiki sudo chown-R www-data-data.www MyWiki sudo chmod-R ug + rwX MyWiki sudo chmod-R o-rwx MyWiki

Ahora debe configurar MoinMoin para encontrar su nuevo Wiki MyWiki. Para configurar MoinMoin, abra / etc / moin / mywiki.py presentar y cambiar la siguiente lnea:
data_dir = '/ org / MyWiki / datos'

a
data_dir = '/ usr / share / moin / MyWiki / datos'

Adems, debajo del data_dir opcin de aadir el data_underlay_dir:

data_underlay_dir = '/ usr / share / moin / MyWiki / subyacente "

Si el / Etc / moin / mywiki.py archivo no existe, debe copiar / Usr / share / moin /
config / wikifarm / mywiki.py presentar

cambiar.

a la / Etc / moin / mywiki.py presentar y hacer lo antes mencionado

Si usted ha nombrado a su Wiki como my_wiki_name debe insertar una lnea "(" my_wiki_name ", r ". *") "en / Etc / moin / farmconfig.py presentar despus de la lnea "(" MyWiki ", r". * ")".

215

Aplicaciones LAMP

Una vez que haya configurado MoinMoin para encontrar su aplicacin Wiki primero MyWiki, debe configurar apache2 y que quede listo para su aplicacin Wiki. Usted debe agregar las siguientes lneas en / Etc/apache2/sites-available/default archivo dentro de la "*> <VirtualHost" Tag:

# # # Moin ScriptAlias / MyWiki "/ usr / share / moin / MyWiki / moin.cgi" alias o moin_static193 "/ usr / share / moin / htdocs" <Directory /usr/share/moin/htdocs> Order allow, deny Dejar de todas las </ Directory> # # # End moin

Una vez que configure el servidor web apache2 y que quede listo para su aplicacin Wiki, usted debe reiniciarlo. Puede ejecutar el siguiente comando para reiniciar el servidor web apache2:

sudo service apache2 reiniciar

2,3. Verificacin
Usted puede verificar la aplicacin Wiki y ver si funciona apuntando desde su navegador web a la siguiente URL:

http://localhost/mywiki

Para ms detalles, consulte el MoinMoinUn sitio web.

2,4. Referencias
Para obtener ms informacin, consulte la MoinMoin Wiki2. Asimismo, consulte la Ubuntu Wiki MoinMoin3 pgina.

1 http://moinmo.in/ 2 http://moinmo.in/ 3 https://help.ubuntu.com/community/MoinMoin

216

Aplicaciones LAMP

3. MediaWiki
MediaWiki es un software basado en Web Wiki escrito en el lenguaje PHP. Se puede utilizar tanto MySQL o Base de datos PostgreSQL Sistema de Gestin.

3,1. Instalacin
Antes de instalar MediaWiki tambin debe instalar Apache 2, el lenguaje de secuencias de comandos y PHP5 Base de datos de un Sistema de Gestin. MySQL o PostgreSQL son los ms comunes, elija una dependiendo de su necesidad. Por favor refirase a las secciones de este manual de instrucciones de instalacin.

Para instalar MediaWiki, ejecute el comando siguiente en el smbolo del sistema:

sudo apt-get install php5-gd mediawiki

Para funcionalidad adicional MediaWiki ver el paquete mediawiki-extensiones.

3,2. Configuracin
El archivo de configuracin de Apache mediawiki.conf para MediaWiki est instalado en / Etc/apache2/conf.d / directorio. Usted debe descomentar la siguiente lnea en este archivo para acceder a la aplicacin de MediaWiki.

# Alias / mediawiki / var / lib / mediawiki

Despus de que el comentario de la lnea anterior, reiniciar el servidor Apache y MediaWiki acceso mediante el siguiente url:

http://localhost/mediawiki/config/index.php

Por favor, lea el "entorno de Comprobacin ..." en este pgina. Debera ser capaz de fijar muchos temas de leer detenidamente esta seccin. Una vez completada la configuracin, debe copiar el LocalSettings.php presentar a la / Etc / mediawiki directorio:

sudo mv / var / lib / mediawiki / config / LocalSettings.php / etc / mediawiki /

Tambin es posible que desee editar / Etc / mediawiki / LocalSettings.php con el fin de establecer el lmite de la memoria (Desactivado por defecto):
ini_set ('memory_limit', '64M ');

3,3. Extensiones
Las extensiones de aadir nuevas caractersticas y mejoras para la aplicacin de MediaWiki. Las extensiones proporcionar a los administradores del wiki y los usuarios finales la posibilidad de personalizar MediaWiki a sus necesidades. 217

Aplicaciones LAMP

Puede descargar las extensiones de MediaWiki como un archivo o la salida de la subversin repositorio. Usted debe copiar / Var / lib / mediawiki / extensions directorio. Tambin debe agregar la siguiente lnea al final del archivo: / Etc / mediawiki / LocalSettings.php.

require_once "$ IP / extensions / ExtentionName / ExtentionName.php";

3,4. Referencias
Para ms detalles, consulte el MediaWiki4 sitio web. El Gua MediaWiki administradores 'Tutorial5 contiene una gran cantidad de informacin para los nuevos MediaWiki administradores. Adems, el Ubuntu MediaWiki6 pgina es un buen recurso.

4 http://www.mediawiki.org 5 http://www.packtpub.com/Mediawiki/book 6 https://help.ubuntu.com/community/MediaWiki

218

Aplicaciones LAMP

4. phpMyAdmin
phpMyAdmin es una aplicacin LMPARA escrito especficamente para la administracin de servidores MySQL. Escrito en PHP, y se accede a travs de un navegador web, phpMyAdmin proporciona una interfaz grfica para las tareas de base de datos de administracin.

4,1. Instalacin
Antes de instalar phpMyAdmin tendr acceso a una base de datos MySQL, ya sea en la misma mquina que phpMyAdmin que est instalado en, o en un host accesible a travs de la red. Para obtener ms informacin, consulte Seccin 1, "MySQL" [p. 206]. Desde una terminal escriba:

sudo apt-get install phpmyadmin

En el sistema elige qu servidor web para ser configurado para phpMyAdmin. El resto de esta seccin usar Apache2 para el servidor web. En un navegador, vaya al http://servername/phpmyadmin, sustitucin de serveranme con real del servidor nombre de host. En el inicio de sesin, pgina, escriba raz para el nombre de usuario, u otro usuario de MySQL si ningn tipo de configuracin, e introduzca la contrasea del usuario de MySQL. Una vez conectado se puede restablecer el raz contrasea si es necesario, crear usuarios, crear / destruir bases de datos y tablas, etc

4,2. Configuracin
Los archivos de configuracin para phpMyAdmin se encuentran en / Etc / phpmyadmin. La configuracin principal archivo / Etc / phpmyadmin / config.inc.php. Este archivo contiene las opciones de configuracin que se aplican a nivel mundial a phpMyAdmin. Para utilizar phpMyAdmin para administrar una base de datos MySQL alojada en otro servidor, ajuste los siguientes en / Etc / phpmyadmin / config.inc.php:

$ Cfg ['Servers'] [$ i] ['host'] = 'db_server';

Reemplazar db_server con el nombre real del servidor remoto de base de datos o direccin IP. Adems, asegrese de phpMyAdmin tiene permisos para acceder a la base de datos remota. que el anfitrin Una vez configurado, la sesin de phpMyAdmin y de nuevo, y usted debe tener acceso al nuevo servidor. La config.header.inc.php y config.footer.inc.php archivos se utilizan para agregar un encabezado HTML y pie de pgina a phpMyAdmin. Otro archivo de configuracin importante es / Etc / phpmyadmin / apache.conf, Este archivo es un enlace simblico a/ etc/apache2/conf.d/phpmyadmin.conf, Y se utiliza para configurar Apache2 para servir a la phpMyAdmin 219

Aplicaciones LAMP

sitio. El archivo contiene las directivas para la carga de PHP, los permisos de directorio, etc Para ms informacin sobre la configuracin de Apache2 ver Seccin 1, "HTTPD - Servidor web Apache 2" [p. 187].

4,3. Referencias
La documentacin de phpMyAdmin viene instalado con el paquete y se puede acceder desde el phpMyAdmin Documentacin enlace (un signo de interrogacin con una caja alrededor de l) en el marco del phpMyAdmin logotipo. La documentacin oficial tambin puede ser el acceso a la phpMyAdmin7 sitio. Por otra parte, Dominar phpMyAdmin8 es un gran recurso. Un tercer recurso es el phpMyAdmin Wiki de Ubuntu9 pgina.

7 http://www.phpmyadmin.net/home_page/docs.php 8 http://www.packtpub.com/phpmyadmin-3rd-edition/book 9 https://help.ubuntu.com/community/phpMyAdmin

220

Captulo 14. Servidores de archivos un ordenador en una sola red. En algn momento usted probablemente tendr que Si usted tiene ms de
compartir archivos entre ellos. En esta seccin se describe la instalacin y configuracin de FTP, NFS y CUPS.

221

Servidores de archivos

1. Servidor FTP
File Transfer Protocol (FTP) es un protocolo TCP para la descarga de archivos entre ordenadores. En el pasado, se ha utilizado tambin para la carga, pero, como ese mtodo no utiliza cifrado, credenciales del usuario as como los datos transferidos en la clara y son interceptados fcilmente. As que si ests aqu en busca de una forma de cargar y descargar archivos de forma segura, consulte la seccin sobre OpenSSH en El captulo 6, a distancia Administracin [p. 79] en su lugar. FTP trabaja en un modelo cliente / servidor. El componente de servidor que se llama un FTP daemon. De manera continua escucha las peticiones FTP de clientes remotos. Cuando se recibe una peticin, gestiona el inicio de sesin y establece la conexin. Durante la duracin de la sesin ejecuta las rdenes enviadas por el cliente FTP. El acceso a un servidor FTP se pueden gestionar de dos formas: Annimo Autenticado En el modo Annimo, los clientes remotos pueden acceder al servidor FTP usando la cuenta de usuario por defecto llamada "annima" o "ftp" y enviando una direccin de correo electrnico como contrasea. En el modo autenticado el usuario debe tener una cuenta y una contrasea. Esta ltima opcin es muy insegura y no debera ser utilizada, salvo en circunstancias especiales. Si usted est buscando para transferir archivos de forma segura SFTP ver en el seccin sobre openssh-server. El acceso del usuario a los directorios del servidor FTP y archivos depende de la permisos definidos para la cuenta utilizada al iniciar la sesin. Como regla general, el demonio FTP oculta el el directorio raz del servidor FTP y cambiar al directorio de inicio del FTP. Esto oculta el resto del del sistema de archivos de las sesiones remotas.

1,1. vsftpd - Instalacin de Servidor FTP


vsftpd es un demonio FTP disponible en Ubuntu. Es fcil de instalar, configurar y mantener. Para instalar vsftpd puede ejecutar el siguiente comando:

sudo apt-get install vsftpd

1,2. Configuracin FTP Annimo


Por defecto, vsftpd es no configurado para permitir la descarga annima. Si desea habilitar el anonimato descarga edicin / Etc / vsftpd.conf mediante el cambio:
anonymous_enable = S

Durante la instalacin de una ftp usuario se crea con un directorio de inicio de la / Srv / ftp. Este es el FTP por defecto directorio. Si desea cambiar esta ubicacin, para / Srv / files / ftp por ejemplo, basta con crear un directorio en el otro lugar y cambiar el ftp usuario directorio home:

222

Servidores de archivos

sudo mkdir / srv / files / ftp sudo usermod-d / srv / files / ftp ftp

Despus de hacer el cambio de reiniciar vsftpd:

vsftpd restart sudo

Finalmente, copie todos los archivos y directorios que le gustara poner a disposicin a travs de FTP annimo para / srv / files / ftp, O / Srv / ftp si desea utilizar la opcin predeterminada.

1,3. Usuario autenticado Configuracin FTP


Por defecto, vsftpd est configurado para autenticar a los usuarios del sistema y permitir que se descarguen archivos. Si desea que los usuarios podrn subir archivos, editar / Etc / vsftpd.conf:

write_enable = SI

Ahora reiniciar vsftpd:

vsftpd restart sudo

Ahora, cuando los usuarios del sistema acceder a FTP que se iniciar en su casa directorios donde pueden descargar, cargar, crear directorios, etc Del mismo modo, por defecto, los usuarios annimos no pueden subir archivos al servidor FTP. Para cambiar esta configuracin, debe descomentar la siguiente lnea y reiniciar vsftpd:

anon_upload_enable = SI

Habilitacin de carga FTP annimo puede ser un riesgo para la seguridad extrema. Lo mejor es no permitir que Annimo carga en los servidores de acceso directamente desde Internet. El archivo de configuracin se compone de muchos parmetros de configuracin. La informacin acerca de cada parmetro est disponible en el fichero de configuracin. Alternativamente, puede consultar la pgina del manual, man 5 vsftpd.conf para los detalles de cada parmetro.

1,4. Proteccin de FTP


Hay opciones en / Etc / vsftpd.conf para ayudar a que vsftpd sea ms seguro. Por ejemplo los usuarios pueden serlimitan a sus directorios de inicio, quitando los comentarios: se

chroot_local_user = SI

Tambin puede limitar una lista especfica de los usuarios a sus directorios de inicio slo: 223

Servidores de archivos

chroot_list_enable = SI chroot_list_file = / etc / vsftpd.chroot_list

Tras descomentar las opciones anteriores, crear un / Etc / vsftpd.chroot_list que contiene una lista de usuarios uno por lnea. A continuacin, reinicie vsftpd:
vsftpd restart sudo

Adems, el / Etc / ftpusers archivo es una lista de usuarios que son rechazado Acceso a FTP. La lista predeterminada incluye root, daemon, nadie, etc Para deshabilitar el acceso FTP a los usuarios adicionales, simplemente aadirlos a la lista. FTP tambin pueden ser encriptados usando FTPS. A diferencia de SFTP, FTPS es FTP a travs de Secure Socket Layer (SSL). SFTP es un cliente de FTP como a travs de una sesin de cifrado SSH conexin. Una diferencia importante es que Los usuarios de SFTP necesita tener una concha cuenta en el sistema, en lugar de una nologin concha. Proporcionar toda la los usuarios con un depsito no puede ser ideal para algunos entornos, como por ejemplo un proveedor de alojamiento web compartido. Sin embargo, se Es posible restringir dichas cuentas a SFTP solamente y deshabilitar la interaccin de comandos. Vea la seccin de Openssh-server para ms. Para configurar FTPS, editar / Etc / vsftpd.conf y en la parte inferior agregar:
ssl_enable = S

Tambin, observe el certificado y la clave de opciones relacionadas con:


rsa_cert_file = / etc / ssl / certs / ssl-cert-snakeoil.pem rsa_private_key_file = / etc / ssl / private / ssl-cert-snakeoil.key

Por defecto estas opciones se establecen en el certificado y la clave proporcionada por el paquete ssl-cert. En una entorno de produccin estos deben ser reemplazados con un certificado y la clave generada por el especfico de acogida. Para ms informacin sobre certificados, consulte Seccin 5, "certificados" [p. 171].

Ahora reiniciar vsftpd, y no a los usuarios annimos se ven obligados a utilizar FTPS:

vsftpd restart sudo

Para permitir a los usuarios con una cscara de / Usr / sbin / nologin el acceso a FTP, pero no tienen acceso a una consola, aadiendo Etc / conchas edicin / el nologin shell:

# / Etc / shells: cscaras de inicio de sesin vlidos / Bin / csh / Bin / sh / Usr / bin / es / Usr / bin / ksh / Bin / ksh / Usr / bin / rc

224

Servidores de archivos
/ Usr / bin / tcsh / Bin / tcsh / Usr / bin / esh / Bin / dash / Bin / bash / Bin / rbash / Usr / bin / pantalla / Usr / sbin / nologin

Esto es necesario porque, por defecto, vsftpd utiliza PAM para la autenticacin, y la / Etc / pam.d / vsftpd archivo de configuracin contiene:

auth

necesario

pam_shells.so

La conchas Mdulo PAM restringe el acceso a los depsitos que figuran en el / Etc / shells archivo. Los clientes FTP ms populares se puede configurar para conectarse a travs de FTPS. El lftp lnea de comandos FTP cliente tiene la capacidad de utilizar FTPS tambin.

1,5. Referencias
Consulte el sitio web de vsftpd1 para ms informacin. Para informacin detallada / Etc / vsftpd.conf las opciones de ver el pgina del manual de vsftpd.conf2.

1 http://vsftpd.beasts.org/vsftpd_conf.html 2 http://manpages.ubuntu.com/manpages/precise/en/man5/vsftpd.conf.5.html

225

Servidores de archivos

2. Network File System (NFS)


NFS permite a un sistema para compartir directorios y archivos con otros en una red. Mediante el uso de NFS, los usuarios y los programas pueden acceder a archivos en sistemas remotos casi como si fueran archivos locales. Algunos de los beneficios ms notables que el NFS suministra son los siguientes: Las estaciones de trabajo locales utilizan menos espacio en el disco porque los datos de uso comn se pueden almacenar en un nico mquina y permanecern accesibles a otros a travs de la red. No es necesario que los usuarios tengan directorios de inicio separados en cada mquina de la red. Casa directorios se podra establecer en el servidor NFS y estar disponibles en toda la red. Los dispositivos de almacenamiento como disquetes, CDROM y dispositivos USB pueden ser utilizados por otros mquinas de la red. Esto puede reducir el nmero de unidades de medios extrables en todo el red.

2,1. Instalacin
En un terminal escriba el siguiente comando para instalar el servidor NFS:

sudo apt-get install nfs-kernel-server

2,2. Configuracin
Puede configurar los directorios sean exportados mediante la adicin de ellos a la / Etc / exports archivo. Para ejemplo:

/ Ubuntu / Home

* (Ro, sync, no_root_squash) * (Rw, sync, no_root_squash)

Puede reemplazar * con uno de los formatos de nombre de host. Hacer la declaracin de nombre de host lo ms especfico posibles sistemas de manera no deseados no puede acceder al montaje NFS. Para iniciar el servidor NFS, puede ejecutar el siguiente comando en una terminal:

sudo / etc / init.d / nfs-kernel-server inicio

2,3. Configuracin de clientes NFS


Utilice el comando mount para montar directorio de NFS compartido desde otra mquina, escribiendo un comando similar al siguiente en una terminal de lnea:

sudo mount example.hostname.com :/ ubuntu / local / ubuntu

El directorio de punto de montaje / Local / ubuntu debe existir. No deben existir archivos o subdirectorios en el / Local / ubuntu directorio.

226

Servidores de archivos Un mtodo alternativo para montar datos compartidos mediante NFS es aadir una lnea a la / Etc / fstab archivo. La lnea debe incluir el nombre del servidor NFS, el directorio en el servidor que se exportan, y el directorio en la mquina local, donde el recurso NFS para ser montados.

La sintaxis general para la lnea en / Etc / fstab archivo es como sigue:

example.hostname.com :/ ubuntu / local / ubuntu nfs rsize = 8192, wsize = 8192, timeo = 14, intr

Si tiene problemas para montar un recurso compartido NFS, asegrese de que el paquete nfs-common est instalado en su cliente. Para instalar nfs-common introducir el siguiente comando en el terminal:
sudo apt-get install nfs-common

2,4. Referencias
Linux NFS preguntas frecuentes3 Wiki de Ubuntu NFS Howto4

3 http://nfs.sourceforge.net/ 4 https://help.ubuntu.com/community/NFSv4Howto

227

Servidores de archivos

3. Iniciador iSCSI
iSCSI (Internet Small Computer System Interface) es un protocolo que permite a los comandos SCSI para ser transmitida a travs de una red. Normalmente iSCSI se implementa en una red SAN (Storage Area Network) para permitir que los servidores para acceder a un gran almacn de espacio en disco duro. El protocolo iSCSI se refiere a los clientes como iniciadores iSCSI y servidores como objetivos. Ubuntu Server puede ser configurado como un iniator iSCSI y un destino. Esta gua proporciona comandos y opciones de configuracin para configurar un iniciador iSCSI. Se supone que usted ya tiene un iSCSI orientar en la red local y tienen los derechos adecuados para conectarse a ella. Las instrucciones para el establecimiento de un objetivo varan considerablemente entre los proveedores de hardware, as que consulte la documentacin del proveedor de configurar el especfico destino iSCSI.

3,1. Iniciador iSCSI de instalacin


Para configurar el servidor de Ubuntu como un iniciador iSCSI instalar el paquete open-iscsi. En una terminal escriba:
sudo apt-get install open-iscsi

3,2. Iniciador iSCSI de configuracin


Una vez que el paquete open-iscsi se ha instalado, editar / Etc / iscsi / iscsid.conf cambiando el siguiente:

node.startup = automtico

Puede comprobar qu objetivos se encuentran disponibles mediante la utilidad iscsiadm. Escriba lo siguiente en una terminal:
sudo iscsiadm m descubrimiento ST-T p 192.168.0.10

-M: determina el modo que iscsiadm ejecuta pulg -T: especifica el tipo de descubrimiento. -T: opcin indica la direccin IP de destino. Ejemplo, el cambio 192.168.0.10 a la direccin IP de destino en la red.

Si el destino est disponible debera ver una salida similar a lo siguiente:

192.168.0.10:3260,1 iqn.1992-05.com.emc: sl7b92030000520000-2

La iqn direccin, nmero de IP y por encima de variar dependiendo de su hardware.

228

Servidores de archivos Ahora debera ser capaz de conectar con el destino de iSCSI, y dependiendo de la configuracin de su destino que podr tiene que introducir las credenciales del usuario. Inicie sesin en el nodo iSCSI:
sudo iscsiadm-nodo m - de inicio de sesin

Asegrese de que el nuevo disco se ha detectado con dmesg:

dmesg | grep sd [ [ [ [ [ [ 4.322384] sd 2:0:0:0: Attached SCSI de tipo genrico sg1 0 4.322797] 4.322843] 4.322846] 4.322896] 4.322899] sd sd sd sd sd 2:0:0:0: 2:0:0:0: 2:0:0:0: 2:0:0:0: 2:0:0:0: [Sda] [Sda] [Sda] [Sda] [Sda] 41943040 bloques de 512 bytes lgicos: (21,4 GB/20.0 GiB) De proteccin contra escritura est desactivada Mode Sense: 03 00 00 00 Datos de la cach no disponibles Suponiendo cach de la unidad: escribir a travs de

[ [ [ [ [

4.323230] sd 2:0:0:0: [sda] datos de la cach no est disponible 4.323233] sd 2:0:0:0: [sda] cach suponiendo que la unidad: escribir a travs de 4.325312] sda: sda1 sda2 <sda5>

4.325729] sd 2:0:0:0: [sda] datos de la cach no est disponible 4.325732] sd 2:0:0:0: [sda] cach suponiendo que la unidad: escribir a travs de [4.325735] sd 2:0:0:0: [sda] Attached SCSI de disco [2486.941805] sd 4:0:0:3: Attached SCSI de tipo genrico sg3 0 [2486.952093] sd 4:0:0:3: [sdb] 1126400000 bloques de 512 bytes lgicos: (576 GB/537 GB) [2486.954195] sd 4:0:0:3: [sdb] Write Protect est desactivado [2486.954200] sd 4:0:0:3: [sdb] Mode Sense: 8f 00 00 08 [2486.954692] sd 4:0:0:3: [sdb] cach de escritura: discapacitados, cach de lectura: activado, no apoyo DPO o FUA [2486.960577] sdb: sdb1

[2486.964862] sd 4:0:0:3: [sdb] Attached SCSI de disco

En la salida anterior sdb es el nuevo disco iSCSI. Recuerde que este es slo un ejemplo, la salida se ve en la pantalla pueden variar. A continuacin, cree una particin, formatear el sistema de archivos, y montar el nuevo disco iSCSI. En una terminal escriba:
sudo fdisk / dev / sdb n p entrar w

Los siguientes comandos son del interior de la utilidad fdisk, consulte el hombre fdisk para ms detalle instrucciones. Adems, la utilidad cfdisk a veces es ms fcil de usar. Ahora formatear el sistema de archivos y montar a / Srv como ejemplo:

sudo mkfs.ext4 / dev/sdb1 sudo mount / dev/sdb1 / srv

229

Servidores de archivos Por ltimo, aadir una entrada a / Etc / fstab para montar la unidad iSCSI durante el arranque:
/ Dev/sdb1 / Srv ext4 por defecto, los automviles, _netdev 0 0

Es una buena idea para asegurarse de que todo est funcionando como se esperaba al reiniciar el servidor.

3,3. Referencias
Open-iSCSI de Sitio Web5 Debian Open-iSCSI de la pgina6

5 http://www.open-iscsi.org/~~V 6 http://wiki.debian.org/SAN/iSCSI/open-iscsi

230

Servidores de archivos

4. - Servidor de impresin CUPS


El principal mecanismo para la impresin de Ubuntu y servicios de impresin es el Impresin Comn de UNIX Sistema (CUPS). Este sistema de impresin es una libremente disponible, capa de impresin porttil que se ha convertido el nuevo estndar para la impresin en la mayora de las distribuciones de Linux. CUPS gestiona los trabajos y las colas, y proporciona impresin de red utilizando el estndar de Internet Printing Protocol (IPP), que dispone de soporte para una gama muy amplia de impresoras, desde matriciales al lser y muchos en el medio. CUPS tambin soporta PostScript Printer Description (PPD) y autodeteccin de impresoras de red, y cuenta con una sencilla configuracin basada en web y una herramienta de administracin.

4,1. Instalacin
Para instalar CUPS en su equipo Ubuntu, simplemente use sudo con el comando apt-get y dar la los paquetes a instalar como primer parmetro. Una instalacin completa de CUPS tiene muchas dependencias de paquetes, pero todos ellos pueden ser especificados en la misma lnea de comandos. Escriba lo siguiente en una terminal para instalar CUPS:

sudo apt-get install tazas

Tras autenticarse con su contrasea de usuario, los paquetes deben ser descargados e instalados sin error. Al concluir la instalacin, el servidor CUPS se iniciar automticamente. Para solucionar problemas, puede acceder a los errores del servidor CUPS a travs del archivo de registro de errores en: / Var / log / cups / error_log. Si el registro de errores no muestra suficiente informacin para resolver cualquier problema se encuentra, el nivel de detalle del registro de CUPS puede incrementarse cambiando el LogLevel directiva en el archivo de configuracin (vase ms adelante) a "depurar" o incluso "debug2", que registra todo, desde el valor predeterminado de "info". Si usted hace este cambio, recuerde volver a cambiarlo una vez que haya solucionado su problema, para evitar que el archivo de registro crezca demasiado grande.

4,2. Configuracin
El comportamiento del servidor de Impresin Comn de Unix System se configura a travs de las directrices contenidas en el archivo / Etc / cups / cupsd.conf. El archivo de configuracin de CUPS tiene la misma sintaxis que la archivo principal de configuracin del servidor HTTP Apache, por lo que los usuarios familiarizados con la edicin de Apache archivo de configuracin debe sentirse a gusto cuando se edita el fichero de configuracin de CUPS. Algunos ejemplos de ajustes que usted puede desear cambiar inicialmente se presenta aqu. Antes de editar el fichero de configuracin, debe hacer una copia del archivo original y protegerlo de la escritura, por lo que tendr la configuracin original como referencia, y reutilizar como necesario.

Copie el / Etc / cups / cupsd.conf presentar y proteger contra escritura con los siguientes comandos, emitidos en un terminal:

231

Servidores de archivos

sudo cp / etc / cups / cupsd.conf / etc / cups / cupsd.conf.original sudo chmod a-w / etc / cups / cupsd.conf.original

ServerAdmin: Para configurar la direccin de correo electrnico del administrador designado por el servidor CUPS, Simplemente edita el / Etc / cups / cupsd.conf archivo de configuracin con su editor de texto preferido, y agregar o modificar la ServerAdmin alinearse en consecuencia. Por ejemplo, si usted es el administrador de el servidor CUPS, y su direccin de correo electrnico es 'bjoy@somebigco.com', entonces podra modificar el ServerAdmin la lnea para que aparezca como tal:

ServerAdmin bjoy@somebigco.com

Escuche: Por defecto en Ubuntu, la instalacin del servidor CUPS escucha slo por la interfaz loopback en la direccin IP 127.0.0.1. Con el fin de que el servidor CUPS escuche en un adaptador de red real de Direccin IP, debe especificar un nombre de host, la direccin IP, u opcionalmente, una direccin IP / puerto de emparejamiento a travs de la adicin de una directiva Listen. Por ejemplo, si su servidor CUPS reside en un local red en la direccin IP 192.168.10.250 y que le gustara para que sea accesible a los otros sistemas en esta subred, puede editar el / Etc / cups / cupsd.conf y aadir una directiva Listen, como por ejemplo:

Listen 127.0.0.1:631

# Existentes loopback Listen

Escuchar / var / run / cups o cups.sock toma existente # Escuchar Escuche 192.168.10.250:631 # escuchar en la interfaz LAN, el puerto 631 (IPP)

En el ejemplo anterior, usted puede comentar o eliminar la referencia a la direccin de bucle invertido (127.0.0.1) si no desea que cupsd escuche por esa interfaz, sino que ms bien tendran que slo escuchan en las interfaces Ethernet de la red de rea local (LAN). Para activar la escucha por toda la red interfaces a las que un nombre de host est obligado, incluyendo el loopback, se podra crear una Listen entrada para el nombre de host Scrates como tales:

Listen socrates: 631 # Escuchar en todas las interfaces para la mquina 'socrates'

o por la omisin de la directiva Listen y usando Puerto En su lugar, como en:

El puerto 631Escuchando en el puerto 631 en todas las # interfaces

Para ms ejemplos de directivas de configuracin en el fichero de configuracin del servidor CUPS, ver el pgina de manual asociada introduciendo el siguiente comando en una terminal:

el hombre cupsd.conf

Siempre que haga cambios en el / Etc / cups / cupsd.conf archivo de configuracin, tendr que para reiniciar el servidor CUPS tecleando el siguiente comando en una terminal:

sudo / etc / init.d / cups restart

232

Servidores de archivos

4,3. Interfaz Web


CUPS se puede configurar y monitorizar utilizando una interfaz web, que por defecto est disponible en http://localhost:631/admin. La interfaz web se puede utilizar para llevar a cabo todas las impresoras las tareas de gestin. Con el fin de realizar tareas administrativas a travs de la interfaz web, usted debe tener la cuenta de root habilitado en su servidor, o autenticar un usuario en el lpadmin grupo. Por razones de seguridad, CUPS no autenticar a un usuario que no tiene una contrasea.

Para aadir un usuario a la lpadmin grupo, ejecute en el terminal:

sudo usermod-aG lpadmin nombre de usuario

Documentacin adicional est disponible en el Documentacin / Ayuda pestaa de la interfaz web.

4,4. Referencias
Sitio web de CUPS7 Debian Open-iSCSI de la pgina8

7 http://www.cups.org/~~V 8 http://wiki.debian.org/SAN/iSCSI/open-iscsi

233

Captulo 15. Servicios de correo electrnico un correo electrnico de una persona a otra a travs de una red o de Internet implica El proceso de obtencin de
muchos sistemas trabajando juntos. Cada uno de estos sistemas deben estar configurados correctamente para que el proceso trabajar. El emisor utiliza un El correo del Agente del usuario (MUA) o cliente de correo electrnico, para enviar el mensaje a travs de uno o ms Agentes de transferencia de correo (MTA), el ltimo de los cuales va a entregar a un Agente de entrega de correo (MDA) para su entrega al buzn del destinatario, de la cual se recuperar por el cliente de correo electrnico del destinatario, por lo general a travs de un servidor POP3 o IMAP.

234

Servicios de correo electrnico

1. Sufijo
Postfix es el agente de transferencia de correo por defecto (MTA) en Ubuntu. Se trata de ser rpido y fcil administrar y asegurar. Es compatible con el MTA sendmail. En esta seccin se explica cmo instalar y configurar postfix. Tambin se explica cmo configurarlo como un servidor SMTP utilizando una conexin segura (Para el envo de mensajes de correo electrnico de forma segura). Esta gua no cubre la creacin de Postfix Dominios virtuales, para obtener informacin sobre Virtual Dominios y otras configuraciones avanzadas, consultar Seccin 1.7.3, "Referencias" [p. 240].

1,1. Instalacin
Para instalar postfix ejecute el siguiente comando:

sudo apt-get install postfix

Slo tiene que pulsar retorno cuando el proceso de instalacin hace preguntas, la configuracin se har en mayor detalle en la siguiente etapa.

1,2. Configuracin bsica


Para configurar postfix, ejecute el comando siguiente:

sudo dpkg-reconfigure postfix

La interfaz de usuario se mostrar. En cada pantalla, seleccione los siguientes valores: Sitio de Internet mail.example.com Steve mail.example.com, localhost.localdomain, localhost No se 127.0.0.0 / 8 [:: ffff: 127.0.0.0] / 104 [:: 1] / 128 192.168.0.0/24 0 + todas las Reemplace mail.example.com con el dominio para el que usted acepta el correo electrnico, 192.168.0.0/24 con la red actual y el rango de clase de su servidor de correo, y Steve con la adecuada nombre de usuario. Ahora es un buen momento para decidir qu formato de buzn que desea utilizar. Por defecto Postfix utilizar mbox para el formato de buzn. En lugar de editar el archivo de configuracin, puede utilizar el postconf comando para configurar todos los parmetros de postfix. Los parmetros de configuracin se almacena en

235

Servicios de correo electrnico


/ Etc / postfix / main.cf archivo. Posteriormente,

si desea volver a configurar un parmetro en particular, puede hacer lo ejecutar el comando o cambiar de forma manual en el archivo. Para configurar el formato de buzn de Maildir:

postconf-e sudo 'home_mailbox = Maildir /'

Esto har que el correo nuevo en / home / usuario / Maildir por lo que tendr que configurar su Agente de entrega de correo (MDA) para utilizar el mismo camino.

1,3. Autenticacin SMTP


SMTP-AUTH permite a un cliente para identificarse a travs de un mecanismo de autentificacin (SASL). Transport Layer Security (TLS) debe ser utilizado para cifrar el proceso de autenticacin. Una vez autenticado el servidor SMTP permitir al cliente para retransmitir el correo.

1.

Configurar Postfix para SMTP-AUTH usando SASL (Dovecot SASL):

postconf-e sudo 'smtpd_sasl_type = dovecot' postconf-e sudo '= smtpd_sasl_path privada / auth-client' postconf-e sudo 'smtpd_sasl_local_domain =' postconf-e sudo 'smtpd_sasl_security_options = noanonymous' postconf-e sudo 'broken_sasl_auth_clients = yes' postconf-e sudo 'smtpd_sasl_auth_enable = yes' postconf-e sudo 'smtpd_recipient_restrictions = \ permit_mynetworks permit_sasl_authenticated, reject_unauth_destination '

La smtpd_sasl_path configuracin es una ruta relativa al directorio de la cola de Postfix.

2.

A continuacin, generar u obtener un certificado digital para TLS. Ver Seccin 5, "certificados" [p. 171] para detalles. Este ejemplo tambin se utiliza una entidad emisora de certificados (CA). Para obtener informacin sobre la generacin de una CA certificado de ver Seccin 5.5, "Autoridad de Certificacin" [p. 173]. MUA para conectarse a su servidor de correo mediante TLS tendr que reconocer el certificado de utiliza para TLS. Esto puede llevarse a cabo mediante un certificado de una CA comercial o con un certificado autofirmado que los usuarios instalar manualmente / aceptar. Para MTA a MTA Certficates TLS no se validan, sin acuerdo previo del afectado organizaciones. Para MTA a MTA TLS, a menos que la poltica local lo requiere, no hay razn para no utilizar un certificado autofirmado. Referirse a Seccin 5.3, "Creacin de una firma automtica Certificado de "[p. 173] para ms detalles.

3.

Una vez que tenga un certificado, configurar Postfix para proporcionar el cifrado TLS para el entrante y correo saliente:

postconf-e sudo 'smtp_tls_security_level = mayo' postconf-e sudo 'smtpd_tls_security_level = mayo'

236

Servicios de correo electrnico


postconf-e sudo 'smtp_tls_note_starttls_offer = yes' postconf-e sudo 'smtpd_tls_key_file = / etc / ssl / private / server.key " postconf-e sudo 'smtpd_tls_cert_file = / etc / ssl / certs / server.crt' postconf-e sudo 'smtpd_tls_loglevel = 1' sudo postconf-e 'smtpd_tls_received_header = yes' sudo postconf-e 'myhostname = mail.example.com "

4.

Si usted est utilizando su propia Autoridad de Certificacin para firmar el certificado de entrar en:
postconf-e sudo 'smtpd_tls_CAfile = / etc / ssl / certs / cacert.pem'

Una vez ms, para ms detalles sobre certificados, consulte Seccin 5, "certificados" [p. 171]. Despus de ejecutar todos los comandos, Postfix est configurado para SMTP-AUTH y una firma de autocertificado ha sido creado para el cifrado TLS. Ahora, el archivo / Etc / postfix / main.cf debe ser similar este1. La configuracin inicial de postfix se ha completado. Ejecute el comando siguiente para reiniciar el postfix demonio:

sudo / etc / init.d / postfix restart

Postfix admite los protocolos SMTP-AUTH como se define en RFC25542. Se basa en SASL3. Sin embargo, es todava necesaria para configurar la autenticacin SASL para poder utilizar SMTP-AUTH.

1,4. Configuracin de SASL


Postfix soporta dos implementaciones SASL SASL de Cyrus SASL y el palomar. Para habilitar Dovecot SASL el paquete dovecot-comn tendr que ser instalado. Desde una terminal entrar en el siguientes:

sudo apt-get install dovecot-common

A continuacin, tendr que editar / Etc / dovecot / dovecot.conf. En el autenticacin por defecto descomentar la seccin de socket de escucha opcin y cambiar lo siguiente:
socket de escucha { # Principal { # Maestro toma proporciona el acceso a la informacin userdb. Es por lo general # Usado para dar acceso a locales de Dovecot agente de entrega de userdb por lo que # Puede encontrar la ubicacin de los buzones. / var / run / dovecot / auth-master # Path = # Mode = 0600 # Por defecto el usuario / grupo es el que comenz dovecot-auth (raz)

1 .. / sample / postfix_configuration 2 http://www.ietf.org/rfc/rfc2554.txt 3 http://www.ietf.org/rfc/rfc2222.txt

237

Servicios de correo electrnico


# User = # = Grupo #} {cliente # El socket de cliente es generalmente seguro para exportar a todo el mundo. El uso tpico # Es para exportar a su servidor SMTP por lo que puede hacer bsquedas de SMTP AUTH # Utilizando. path = / var / spool / postfix / private / auth-client mode = 0660 user = postfix = grupo postfix } }

Con el fin de permitir que los clientes de Outlook utilizar SMTP-AUTH, en el autenticacin por defecto seccin de / etc / dovecot / dovecot.conf complemento "Login":
mecanismos de acceso = normal

Una vez que haya configurado Dovecot reincielo con:

sudo / etc / init.d / dovecot restart

1,5. Correo-Pila de Suministro


Otra opcin para configurar Postfix para SMTP-AUTH est utilizando el paquete mail-pila a la entrega (Previamente empaquetado como dovecot-postfix). Este paquete instalar Dovecot y configurar Postfix para usarlo tanto para la autenticacin SASL y como Agente de entrega de correo (MDA). El paquete tambin configura Dovecot para IMAP, IMAPS, POP3 y POP3S.

Usted puede o no desea ejecutar IMAP, IMAPS, POP3 o POP3S en su servidor de correo. Para ejemplo, si va a configurar el servidor para ser un gateway de correo, el spam / virus de filtro, etc Si este es el caso, puede ser ms fcil de usar los comandos anteriores para configurar Postfix para SMTP AUTH.

Para instalar el paquete, de una terminal escriba:

sudo apt-get install-mail pila de entrega

Ahora debe tener un servidor de correo de trabajo, pero hay algunas opciones que usted puede desear ampliar personalizar. Por ejemplo, el paquete utiliza el certificado y la clave del paquete ssl-cert, y en un entorno de produccin se debe utilizar un certificado y una clave generada por el anfitrin. Ver Seccin 5, "Certificados" [p. 171] para ms detalles. Una vez que tenga un certificado personalizado y la clave para el host, cambie las siguientes opciones en / Etc / postfix / main.cf:

238

Servicios de correo electrnico


smtpd_tls_cert_file = / etc / ssl / certs / ssl-mail.pem smtpd_tls_key_file = / etc / ssl / private / ssl-mail.key

A continuacin, reinicie Postfix:


sudo / etc / init.d / postfix restart

1,6. Pruebas
SMTP-AUTH de configuracin se ha completado. Ahora es el momento de probar la configuracin. Para ver si SMTP-AUTH y TLS funcione correctamente, ejecute el comando siguiente:

telnet mail.example.com 25

Despus de haber establecido la conexin con el servidor de correo Postfix, escriba:

ehlo mail.example.com

Si usted ve las siguientes lneas, entre otros, entonces todo est funcionando perfectamente. Tipo dejar de para salir.

250-STARTTLS 250-AUTH LOGIN PLAIN 250-AUTH = LOGIN PLAIN 250 8BITMIME

1,7. Solucin de problemas


Esta seccin presenta algunos aspectos comunes para determinar la causa si surgen problemas. 1.7.1. Escapar chroot El paquete postfix Ubuntu de forma predeterminada en una instalacin chroot entorno por razones de seguridad. Esto puede aadir una mayor complejidad para solucionar problemas. Para desactivar la operacin de chroot localizar la siguiente lnea en el / Etc / postfix / master.cf archivo de configuracin:

smtp

inet

smtpd

y modificar como sigue:

smtp

inet

smtpd

A continuacin, tendr que reiniciar Postfix para que utilice la nueva configuracin. Desde una terminal escriba:

sudo / etc / init.d / postfix restart

239

Servicios de correo electrnico 1.7.2. Archivos de registro Postfix enva todos los mensajes de registro / Var / log / mail.log. Sin embargo los mensajes de error y aviso puede a veces se pierden en la salida del registro normal, de modo que tambin se registran en / Var / log / mail.err y / log Var / mail.warnrespectivamente. Para ver los mensajes ingresados en los registros en tiempo real se puede utilizar el comando tail-f:

tail-f / var / log / mail.err

La cantidad de detalles que se registran en los registros puede ser aumentada. A continuacin se presentan algunos configuracin aumentar el nivel de registro para algunas de las reas cubiertas por opciones para encima. Para aumentar TLS el registro de la actividad de establecer el smtpd_tls_loglevel opcin para un valor de 1 a 4.
postconf-e sudo 'smtpd_tls_loglevel = 4'

Si usted est teniendo problemas para enviar o recibir correo de un dominio especfico puede agregar el dominio al debug_peer_list parmetro.

postconf-e sudo 'debug_peer_list = problem.domain'

Puede aumentar el nivel de detalle de cualquier proceso de demonio de Postfix mediante la edicin del / Etc /
postfix / master.cf

y la adicin de un -V despus de la entrada. Por ejemplo, editar la smtp entrada:


unix smtp-V

smtp

Es importante notar que despus de hacer uno de los cambios en el registro por encima de la Postfix proceso tendr que ser recargada con el fin de reconocer la nueva configuracin: sudo / etc / init.d / postfix reload Para aumentar la cantidad de informacin registrada para solucionar problemas SASL cuestiones que se pueden establecer la siguientes opciones en / Etc / dovecot / dovecot.conf

auth_debug = yes auth_debug_passwords = yes

Al igual que Postfix si se cambia una configuracin de Dovecot el proceso tendr que volver a cargar: sudo / etc / init.d / dovecot recarga. Algunas de las opciones anteriores puede aumentar drsticamente la cantidad de informacin enviada en el registro archivos. Recuerde devolver el nivel de registro a la normalidad despus de haber corregido el problema. A continuacin, volver a cargar el diablillo apropiado para la nueva configuracin surta efecto. 1.7.3. Referencias La administracin de un servidor Postfix puede ser una tarea muy complicada. En algn momento puede que tenga que recurrir a la comunidad de Ubuntu en busca de ayuda con ms experiencia. 240

Servicios de correo electrnico Un gran lugar para pedir ayuda Postfix, y que se involucren con la comunidad de Ubuntu Server, es el # Ubuntu-server Canal de IRC en freenode4. Tambin puede enviar un mensaje a uno de los Web Foros5. Para informacin en profundidad Postfix los desarrolladores de Ubuntu recomendamos: El libro de Postfix6. Por ltimo, el Sufijo7 sitio web tambin tiene excelente documentacin sobre todas las diferentes opciones de configuracin disponible. Adems, el Wiki de Ubuntu Postfix8 pgina tiene ms informacin.

4 http://freenode.net 5 http://www.ubuntu.com/support/community/webforums 6 http://www.postfix-book.com/ 7 http://www.postfix.org/documentation.html 8 https://help.ubuntu.com/community/Postfix

241

Servicios de correo electrnico

2. Exim4
Exim4 es otro agente de transferencia de mensajes (MTA) desarrollado en la Universidad de Cambridge para su uso en sistemas Unix conectados a Internet. Exim puede ser instalado en lugar de sendmail, aunque el configuracin de exim es bastante diferente a la de sendmail.

2,1. Instalacin
Para instalar exim4, ejecute el comando siguiente:

sudo apt-get install exim4

2,2. Configuracin
Para configurar exim4, ejecute el comando siguiente:

sudo dpkg-reconfigure exim4-config

La interfaz de usuario se mostrar. La interfaz de usuario le permite configurar muchos parmetros. Para ejemplo, en Exim4 los archivos de configuracin se dividen entre varios archivos. Si desea tenerlos en un archivo que se puede configurar de acuerdo en esta interfaz de usuario.

Todos los parmetros se configuran en la interfaz de usuario se almacenan en / Etc/exim4/update-exim4.conf archivo. Si desea volver a configurar, ya sea que usted vuelva a ejecutar el asistente de configuracin o editar manualmente este archivo usando su editor favorito. Una vez configurada, puede ejecutar el comando siguiente para generar el principal fichero de configuracin:

sudo update-exim4.conf

El archivo de configuracin maestro, se genera y se almacena en / Var/lib/exim4 / config.autogenerated. En cualquier momento, no se debe editar el archivo de configuracin principal, / Var/lib/exim4 / config.autogenerated manualmente. Se actualiza automticamente cada vez que se ejecuta Actualizaexim4.conf Puede ejecutar el siguiente comando para iniciar el demonio Exim4.

sudo / etc/init.d/exim4 inicio

2,3. Autenticacin SMTP


Esta seccin cubre la configuracin de Exim4 para utilizar SMTP-AUTH con TLS y SASL.

242

Servicios de correo electrnico El primer paso es crear un certificado para el uso con TLS. Escriba lo siguiente en una terminal:

sudo / usr/share/doc/exim4-base/examples/exim-gencert

Ahora Exim4 necesita ser configurado para TLS mediante la edicin de / Etc/exim4/conf.d/main/03_exim4config_tlsoptions agregar lo siguiente:

MAIN_TLS_ENABLE = yes

A continuacin, debe configurar Exim4 para utilizar el saslauthd para la autenticacin. Editar / Etc/exim4 / conf.d/auth/30_exim4-config_examples y el comentario de la plain_saslauthd_server y login_saslauthd_server secciones:

plain_saslauthd_server: Driver = texto public_name = PLAIN server_condition = $ {if saslauthd {{$} {$ auth2 auth3}} {1} {0}} server_set_id = $ auth2 server_prompts =: . Ifndef AUTH_SERVER_ALLOW_NOTLS_PASSWORDS server_advertise_condition = $ {if eq {$ tls_cipher} {} {} {*}} . Endif # login_saslauthd_server: Driver = texto public_name = LOGIN server_prompts = "Nombre de usuario Contrasea ::: ::" # No enva las contraseas del sistema a travs de conexiones cifradas server_condition = $ {if saslauthd {{$} {$ auth1 auth2}} {1} {0}} server_set_id = $ auth1 . Ifndef AUTH_SERVER_ALLOW_NOTLS_PASSWORDS server_advertise_condition = $ {if eq {$ tls_cipher} {} {} {*}} . Endif

Adems, a fin de que fuera cliente de correo para poder conectarse al nuevo servidor exim, nuevo usuario necesita que se aaden a exim con los siguientes comandos.

sudo / usr/share/doc/exim4/examples/exim-adduser

Los usuarios deben proteger los archivos exim nueva contrasea con los siguientes comandos.

sudo chown root: Debian-exim / etc/exim4/passwd sudo chmod 640 / etc/exim4/passwd

Por ltimo, actualizar la configuracin de exim4 y reiniciar el servicio:

sudo update-exim4.conf

243

Servicios de correo electrnico


sudo / etc/init.d/exim4 reinicio

2,4. Configuracin de SASL


Esta seccin proporciona detalles sobre la configuracin del saslauthd para proporcionar autenticacin de Exim4. El primer paso es instalar el paquete sasl2 papelera. Desde una terminal escriba lo siguiente:

sudo apt-get install sasl2-bin

Para configurar saslauthd editar el fichero de configuracin / etc / default / saslauthd y establecer START = no a:
START = yes

A continuacin, el Debian-exim usuario necesita ser parte del sasl grupo a fin de que Exim4 para utilizar el saslauthd servicio:

sudo adduser de Debian-exim sasl

Ahora iniciar el servicio saslauthd:

sudo / etc / init.d / saslauthd inicio

Exim4 est ahora configurada con SMTP-AUTH con TLS y SASL.

2,5. Referencias
Ver exim.org9 para ms informacin. Existe tambin una Exim4 LibroDispone de 10. Otro recurso es la Exim4 Wiki de Ubuntu 11 pginas.

9 http://www.exim.org/~~V 10 http://www.uit.co.uk/content/exim-smtp-mail-server 11 https://help.ubuntu.com/community/Exim4

244

Servicios de correo electrnico

3. Servidor Dovecot
Dovecot es un Agente de entrega de correo, escrito con la seguridad sobre todo en la mente. Es compatible con los principales formatos de buzones: mbox o Maildir. En esta seccin se explica cmo configurarlo como un servidor IMAP o POP3.

3,1. Instalacin
Para instalar dovecot, ejecute el comando siguiente en el smbolo del sistema:

sudo apt-get install dovecot-imapd dovecot-pop3d

3,2. Configuracin
Para configurar dovecot, puede editar el archivo / Etc / dovecot / dovecot.conf. Usted puede elegir el protocolo que use. Podra ser POP3, POP3S (pop3 seguro), IMAP y imaps (imap seguro). Una descripcin de estos protocolos est fuera del alcance de esta gua. Para ms informacin, consulte la Wikipedia artculos sobre POP312 y IMAP13.

IMAPS y POP3S son ms seguras que la simple IMAP y POP3, ya que utilizan SSL cifrado de la conexin. Una vez que haya elegido el protocolo, modificar la siguiente lnea en el archivo / Etc / dovecot / dovecot.conf:

protocolos POP3 pop3s = imap imaps

A continuacin, seleccione el buzn que desea utilizar. Dovecot apoya maildir y mbox formatos. Estos son los formatos de buzn ms comnmente utilizados. Ambos tienen sus propios beneficios y se discuten en el sitio web de Dovecot14.

Una vez que haya elegido el tipo de buzn, edite el archivo / Etc / dovecot / dovecot.conf y cambiar el siguiendo la lnea:

mail_location = maildir: ~ / Maildir # (para maildir) o mail_location = mbox: ~ / mail: INBOX = / var / spool / mail /% u # (para mbox)

Usted debe configurar el Agente de Transporte de Correo (MTA) para transferir el correo entrante este tipo de buzn de correo si es diferente a la que ha configurado. Una vez que haya configurado dovecot, reiniciar el demonio de dovecot con el fin de probar la instalacin:

sudo / etc / init.d / dovecot restart


12 http://en.wikipedia.org/wiki/POP3 13 http://en.wikipedia.org/wiki/Internet_Message_Access_Protocol 14 http://wiki.dovecot.org/MailboxFormat

245

Servicios de correo electrnico Si ha habilitado IMAP o POP3, tambin puede tratar de conectarse con los comandos telnet localhost pop3 o telnet localhost imap2. Si usted ve algo como lo siguiente, la instalacin ha sido xito:

bhuvan @ arco iris: ~ $ telnet localhost pop3 Trying 127.0.0.1 ... Conectado a localhost. Carcter de escape es '^]'. + OK Dovecot listo.

3,3. Configuracin de Dovecot SSL


Para configurar dovecot para que utilice SSL, usted puede editar el archivo / Etc / dovecot / dovecot.conf y enmendar las lneas siguientes:
ssl_cert_file = / etc / ssl / certs / ssl-cert-snakeoil.pem ssl_key_file = / etc / ssl / private / ssl-cert-snakeoil.key ssl_disable = no disable_plaintext_auth = no

Usted puede obtener el certificado SSL de una Autoridad emisora de certificados o usted puede crear su propia firma SSL certificado. Esta ltima es una buena opcin para correo electrnico, ya que los clientes SMTP rara vez se quejan de "autocertificadosSSL autofirmado. Una consulte Seccin 5, "certificados" archivo de clave y un certificado certificado firmados ". Por favor vez creado el certificado, tendr un [p. 171] para obtener ms informacin acerca de cmo crear favor, copiar a la ubicacin indicada en el / Etc / dovecot / dovecot.conf archivo de configuracin. archivo. Por

3,4. Configuracin del firewall para un servidor de correo electrnico


Para acceder a su servidor de correo desde otro equipo, debe configurar su firewall para permitir conexiones con el servidor en los puertos necesarios. IMAP - 143 Los IMAPS - 993 POP3 - 110 Los POP3S - 995

3,5. Referencias
Consulte el Sitio web de Dovecot15 para ms informacin. Adems, el Dovecot Wiki de Ubuntu16 pginas tiene ms detalles.

15 http://www.dovecot.org/~~V Https://help.ubuntu.com/community/Dovecot 16

246

Servicios de correo electrnico

4. Cartero
Mailman es un programa open source para la gestin de las discusiones de correo electrnico y listas de e-newsletter. Muchas listas abiertas de correo de origen (incluyendo todos los Listas de correo de Ubuntu17) usar Mailman como su correo lista de software. Es potente y fcil de instalar y mantener.

4,1. Instalacin
Mailman proporciona una interfaz web para los administradores y usuarios, utilizando un servidor de correo externo enviar y recibir mensajes de correo electrnico. Funciona perfectamente con los servidores de correo siguientes: Postfix Exim Sendmail Qmail Vamos a ver cmo instalar y configurar Mailman con, el servidor web Apache, Postfix y, o bien la o el servidor de correo Exim. Si desea instalar Mailman con otro servidor de correo, por favor refirase a la seccin de referencias.

Usted slo tiene que instalar un servidor de correo Postfix, y es el de transferencia de correo predeterminado en Ubuntu Agente. 4.1.1. Apache2 Para instalar apache2 que se refieren a Seccin 1.1, "Instalacin" [p. 187] para ms detalles. 4.1.2. Sufijo Para obtener instrucciones sobre cmo instalar y configurar Postfix se refieren a Seccin 1, "Postfix" [p. 235] 4.1.3. Exim4 Para instalar Exim4 se refieren a Seccin 2, "Exim4" [p. 242]. Una vez que se ha instalado exim4, los archivos de configuracin se guardan en la / Etc/exim4 directorio. En Ubuntu, por predeterminada, los archivos de configuracin de exim4 se dividen en diferentes archivos. Puede cambiar este cambiando la siguiente variable en el / Etc/exim4/update-exim4.conf archivo: comportamiento

dc_use_split_config = 'true'

4.1.4. Cartero Para instalar Mailman, ejecute el comando siguiente en una terminal:
17 http://lists.ubuntu.com

247

Servicios de correo electrnico

sudo apt-get install mailman

Se copia a los archivos de instalacin en / var / lib / mailman. Se instala los scripts CGI en / usr/lib/cgibin / mailman. Se crea lista usuario de linux. Se crea el lista linux grupo. El proceso de cartero sern propiedad de este usuario.

4,2. Configuracin
En esta seccin se asume que usted ha instalado con xito mailman, apache2 y postfix o exim4. Ahora slo tienes que configurarlos. 4.2.1. Apache2 Un ejemplo de archivo de configuracin de Apache viene con Mailman y se coloca en / Etc / mailman / apache.conf. Con el fin de Apache para que utilice el archivo de configuracin que necesita para ser copiado a /
Etc/apache2 / sites-available:

sudo cp / etc / mailman / apache.conf / etc/apache2/sites-available/mailman.conf

Esto configurar un nuevo Apache VirtualHost para el sitio de administracin de Mailman. Ahora permitir que el nuevo la configuracin y reiniciar Apache:
mailman.conf a2ensite sudo sudo service apache2 reiniciar

Mailman usa apache2 para hacer sus scripts CGI. Los scripts cgi de mailman se instalan en el directorio / usr / lib / cgi-bin/mailman directorio. Por lo tanto, la url ser http://hostname/cgi-bin/mailman/ cartero. Usted puede realizar cambios en el / Etc/apache2/sites-available/mailman.conf presentar si desea cambiar esta comportamiento. 4.2.2. Sufijo Para la integracin de Postfix, vamos a asociar el lists.example.com de dominio con las listas de correo. Por favor, reemplazar lists.example.com con el dominio de su eleccin. Puede utilizar el comando postconf para aadir la configuracin necesaria para / Etc / postfix / main.cf:

sudo postconf-e '= relay_domains lists.example.com' postconf-e sudo 'transport_maps = hash :/ etc / postfix / transport' postconf-e sudo 'mailman_destination_recipient_limit = 1'

En / Etc / postfix / master.cf vuelva a comprobar que tiene el transporte siguiente:

cartero

unix

tubo

flags = FR user = lista argv = / usr / lib / mailman / bin / postfix-tomailman.py

248

Servicios de correo electrnico


$ {} $ {NextHop usuario}

Se llama a la postfix a mailman.py secuencia de comandos cuando uno se entrega el correo a una lista. Asociar el lists.example.com de dominio para el transporte Mailman con el mapa de transporte. Editar el archivo / Etc / postfix / transport:

lists.example.com

Mailman:

Ahora tiene Postfix construir el mapa de transporte, escriba lo siguiente en una terminal:

sudo postmap-v / etc / postfix / transport

A continuacin, reinicie Postfix para que las nuevas configuraciones:


sudo / etc / init.d / postfix restart

4.2.3. Exim4 Una vez que Exim4 est instalado, usted puede iniciar el servidor Exim usando el siguiente comando en una terminal del sistema:

sudo / etc/init.d/exim4 inicio

Con el fin de hacer que el trabajo cartero con Exim4, necesita configurar Exim4. Como se mencion anteriormente, Por defecto, exim4 usa varios archivos de configuracin de distintos tipos. Para obtener ms informacin, consulte la Exim18 sitios web. Para ejecutar mailman, hay que aadir un nuevo archivo de configuracin para los siguientes tipos de configuracin: Principal Transporte Router Exim crea un archivo de configuracin principal, clasificando todos los archivos de configuracin de mini. As, el orden de estos archivos de configuracin es muy importante. 4.2.4. Principal Todos los archivos de configuracin que pertenecen al tipo principal se almacenan en el / Etc/exim4/conf.d/main
/

directorio. Puede aadir el siguiente contenido en un archivo nuevo, llamado 04_exim4-config_mailman:


# Inicia el # Inicio directorio para la instalacin de Mailman - prefix Mailman tambin conocido como el # Directorio. # En Ubuntu esto debera ser "/ var / lib / mailman"
18 http://www.exim.org

249

Servicios de correo electrnico


# Este es normalmente el mismo que ~ cartero MM_HOME = / var / lib / mailman # # El usuario y el grupo de Mailman, debe coincidir con la opcin - withmail-gid # Del script de configuracin de Mailman. El valor es normalmente "cartero" MM_UID = lista MM_GID = lista # # Los dominios que se encuentran en las listas - la lista separada por dos puntos # Es posible que desee agregar en local_domains as mm_domains DomainList = hostname.com # # - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = = - = - = - = - = - = - = - = - = - = - = - = # # Estos valores se derivan de los de arriba y no es necesario # Cambiarse a menos que haya manipulado su instalacin de mailman # # La ruta del script Mailman envoltorio electrnico MM_WRAP = MM_HOME / mail / mailman #

# La ruta del archivo de configuracin de la lista (se utiliza como un archivo requerido cuando # Verificacin de direcciones de la lista) MM_LISTCHK = MM_HOME / lists / $ {lc :: $ local_part} / config.pck # End

4.2.5. Transporte Todos los archivos de configuracin pertenecientes al tipo de transporte se almacenan en el /
Etc/exim4/conf.d / de transporte / directorio. config_mailman:

Puede aadir el siguiente contenido en un nuevo archivo llamado 40_exim4-

mailman_transport: Driver = tubera command = MM_WRAP \ '$ {If def: local_part_suffix \ {$ {Sg {$ local_part_suffix} {- (\ \ w +) (. \ \ + *)} {\ $ 1}}} \ {Mensaje}} '\ $ Local_part current_directory = MM_HOME home_directory = MM_HOME user = MM_UID = grupo MM_GID

4.2.6. Router Todos los archivos de configuracin correspondientes a un tipo de encaminamiento se almacenan en la /
Etc/exim4/conf.d/router /

directorio. Puede aadir el siguiente contenido en un nuevo archivo llamado 101_exim4-config_mailman:


mailman_router: controlador = aceptar

250

Servicios de correo electrnico


require_files = MM_HOME / lists / $ local_part / config.pck local_part_suffix_optional local_part_suffix =-Rebotes:-bounces + *: \ A confirmar + *:-join:-licencia: \ -Propietario:-peticin:-admin transport = mailman_transport

El orden de los archivos principales de configuracin y el transporte puede ser en cualquier orden. Pero, el orden de los archivos de configuracin del router debe ser el mismo. Este archivo en particular debe aparecer antes de el archivo 200_exim4-config_primary. Estos dos archivos de configuracin contienen el mismo tipo de informacin. El primer archivo tiene prioridad. Para ms detalles, consulte el seccin de referencias. 4.2.7. Cartero Una vez que mailman est instalado, se puede ejecutar con el siguiente comando:

sudo / etc / init.d / mailman inicio

Una vez que mailman est instalado, usted debe crear la lista de correo por defecto. Ejecute el siguiente comando para crear la lista de correo:

sudo / usr / bin / mailman newlist

Introduzca la direccin de correo electrnico de la persona que ejecuta la lista: bhuvan en ubuntu.com cartero inicial: Contrasea Para terminar de crear su lista de correo, debe editar el archivo / etc / aliases (o equivalente), aadiendo las siguientes lneas, y, posiblemente, ejecutar el `Newaliases 'del programa: # # Cartero lista de correo Mailman: mailman-admin: mailman-bounces: mailman-confirm: mailman-join: cartero de baja por: mailman-propietario: mailman-request: mailman-subscribe: mailman-unsubscribe: "| / Var / lib / "| / Var / lib / administracin" "| / Var / lib / "| / Var / lib / "| / Var / cartero" "| / Var / licencia" "| / Var / "| / Var / mailman / mail / mailman cartero mensaje" mailman / mail / mailman cartero de mailman / mail / mailman cartero rebota" mailman / mail / mailman confirm mailman"

lib / mailman / mail / mailman unirse a lib / mailman / mail / mailman cartero lib / mailman / mail / mailman cartero titular" lib / mailman / mail / mailman cartero peticin"

"| / Var / lib / mailman / mail / mailman subscribe mailman" "| / Var / lib / mailman / mail / mailman mailman unsubscribe"

Pulsa Intro para notificar a dueo de cartero ... #

Hemos configurado ya sea Postfix o exim4 para reconocer a todos los correos electrnicos de cartero. As, es no es obligatorio realizar las nuevas inscripciones en el / Etc / aliases. Si ha realizado algn cambio en la archivos de configuracin, por favor asegrese de reiniciar esos servicios antes de continuar a la siguiente seccin.

251

Servicios de correo electrnico El Exim4 no utiliza los alias de arriba para reenviar correos a Mailman, ya que utiliza una descubrir enfoque. Para suprimir los alias al crear la lista, puede agregar MTA = Ninguno lnea en Mailman archivo de configuracin, / Etc / mailman / mm_cfg.py.

4,3. Administracin
Suponemos que usted tiene una instalacin por defecto. Los scripts cgi de mailman todava estn en el directorio / usr / lib / cgi-bin / mailman /. Mailman proporciona una facilidad de administracin web. Para acceder a esta pgina, punto su navegador a la siguiente direccin: http://hostname/cgi-bin/mailman/admin La lista de correo por defecto, cartero, aparecer en la pantalla. Si hace clic en el nombre de la lista de correo, lo har pedir su contrasea de autenticacin. Si introduce la contrasea correcta, usted ser capaz de cambiar la configuracin administrativa de esta lista de correo. Puede crear una nueva lista de correo utilizando la lnea de comandos utilidad (/ usr / bin / newlist). Como alternativa, puede crear una nueva lista de correo usando el interfaz web.

4,4. Usuarios
Mailman proporciona una interfaz basada en web para los usuarios. Para acceder a esta pgina, dirija su navegador a la siguiente url: http://hostname/cgi-bin/mailman/listinfo La lista de correo por defecto, cartero, aparecer en la pantalla. Si hace clic en el nombre de la lista de correo, lo har mostrar el formulario de suscripcin. Puedes ingresar tu direccin de correo electrnico, nombre (opcional), y una contrasea para suscribirse. Una invitacin por correo electrnico ser enviado a usted. Puede seguir las instrucciones del correo electrnico a suscribirse.

4,5. Referencias
GNU Mailman - Manual de Instalacin19 HOWTO - Uso de Exim 4 y Mailman 2.1, junto20 Adems, vea la Mailman Wiki de Ubuntu21 pginas.

19 http://www.list.org/mailman-install/index.html 20 http://www.exim.org/howto/mailman21.html 21 https://help.ubuntu.com/community/Mailman

252

Servicios de correo electrnico

5. Filtrado de Correo
Uno de los mayores problemas con el correo electrnico hoy en da es el problema del correo electrnico masivo no solicitado (UBE). Tambin conocido como spam, ese tipo de mensajes tambin pueden contener virus y otras formas de malware. De acuerdo algunos informes estos mensajes constituyen la mayor parte de todo el trfico de correo con electrnico en Internet. Esta seccin cubre la integracin de Amavisd-new, Spamassassin y ClamAV con el correo Postfix Agente de Transporte (MTA). Postfix tambin puede comprobar la validez de correo electrnico pasndolo a travs de contenido externo filtros. Estos filtros pueden a veces determinar si un mensaje es spam sin necesidad de procesar con ms intensivo de recursos de aplicaciones. Dos filtros comunes son opendkim y python-spf-Policyd. Amavisd-new es un programa contenedor que se puede llamar a cualquier nmero de programas de filtrado de contenidos para el spam deteccin, antivirus, etc Spamassassin usa una variedad de mecanismos para filtrar el correo electrnico basado en el contenido del mensaje. ClamAV es una aplicacin de cdigo abierto antivirus. opendkim implementa un filtro de correo Sendmail (milter) para los DomainKeys Identified Mail (DKIM) estndar. python-Policyd-SPF permite a Sender Policy Framework (SPF) de cheques con Postfix. As es como encajan las piezas: Un mensaje de correo electrnico es aceptado por Postfix. El mensaje se transmite a travs de los filtros externos opendkim y python-Policyd spf-en este caso. Amavisd-new procesa el mensaje. ClamAV se utiliza para explorar el mensaje. Si el mensaje contiene un virus Postfix rechace el mensaje. Limpie los mensajes sern analizados por SpamAssassin para saber si el mensaje es spam. Spamassassin luego aade una cabecera X-lneas permitiendo Amavisd-new para manipular an ms la mensaje. Por ejemplo, si un mensaje tiene una puntuacin de spam de ms de cincuenta aos que el mensaje podra ser eliminada automticamente de la cola sin que el destinatario tener que ser molestado. Otra forma, para manejar marcado mensajes es para entregar al Agente de Usuario de Correo (MUA) que permite al usuario hacer frente con el mensaje como mejor les parezca.

5,1. Instalacin
Ver Seccin 1, "Postfix" [p. 235] para obtener instrucciones sobre cmo instalar y configurar Postfix. Para instalar el resto de las aplicaciones introduzca lo siguiente en una terminal:

sudo apt-get install amavisd-new spamassassin clamav-daemon sudo apt-get install postfix-opendkim Policyd-spf-python

Hay algunos paquetes opcionales que se integran con Spamassassin para la deteccin de spam mejor:

253

Servicios de correo electrnico

sudo apt-get install pyzor de afeitar

Junto con las principales aplicaciones de filtrado de utilidades de compresin son necesarios para procesar el correo electronico archivos adjuntos:
sudo apt-get install cabextract arj lha cpio nomarca personas rar unrar zip unzip

Si algunos paquetes no se encontr, compruebe que el multiverso repositorio est habilitado en / Etc / apt
/ sources.list

Si realiza cambios en el archivo, asegrese de ejecutar sudo apt-get update antes de instalarlo nuevo.

5,2. Configuracin
Ahora configure todo para trabajar en conjunto y filtrar el correo electrnico. 5.2.1. ClamAV El comportamiento predeterminado de ClamAV se ajuste a nuestras necesidades. Para obtener ms opciones de configuracin de ClamAV, compruebe los archivos de configuracin en / Etc / clamav. Aadir el clamav usuario al amavis grupo con el fin de Amavisd-new tener el acceso adecuado a los analizar los archivos:
sudo adduser clamav amavis sudo adduser clamav amavis

5.2.2. Spamassassin Spamassassin detecta automticamente los componentes opcionales y las usarn si estn presentes. Este significa que no hay necesidad de configurar pyzor y maquinilla de afeitar. Editar / Etc / default / spamassassin para activar el demonio SpamAssassin. Cambiar ENABLED = 0 a:

ENABLED = 1

Ahora inicie el demonio:

sudo / etc / init.d / spamassassin inicio

5.2.3. Amavisd-new En primer lugar activar la deteccin de spam y antivirus en Amavisd-new editando / Etc/amavis/conf.d/15content_filter_mode:

254

Servicios de correo electrnico


use strict; # Se puede modificar este archivo para la comprobacin de SPAM volver a habilitar a travs de spamassassin # Y volver a habilitar la comprobacin de antivirus. # # Por defecto el modo de control de antivirus # Elimine las dos lneas de abajo para permitir que #

@ Bypass_virus_checks_maps = ( \ Bypass_virus_checks%, \ @ bypass_virus_checks_acl, \ $ bypass_virus_checks_re);

# # SPAM por defecto el modo de control de # Elimine las dos lneas de abajo para permitir que #

@ Bypass_spam_checks_maps = ( \ Bypass_spam_checks%, \ @ bypass_spam_checks_acl, \ $ bypass_spam_checks_re); 1; # Asegurar un retorno definido

Bouncing spam puede ser una mala idea ya la direccin de retorno es a menudo falso. Considere la posibilidad de editar
/ Etc / amavis / conf.d/20-debian_defaults

para establecer $ Final_spam_destiny a D_DISCARD en lugar de D_BOUNCE,

como sigue:

$ Final_spam_destiny

= D_DISCARD;

Adems, es posible que desee ajustar las siguientes opciones para marcar ms mensajes como spam:

$ Sa_tag_level_deflt = -999; # agregar encabezados de spam informacin si es, o por encima de ese nivel $ Sa_tag2_level_deflt = 6,0; # aade 'spam detectado "encabezados en ese nivel $ Sa_kill_level_deflt = 21,0; # desencadenantes de spam acciones evasivas $ Sa_dsn_cutoff_level = 4; # nivel de spam a partir del cual un DSN no se enva

Si el servidor nombre de host es diferente del registro MX del dominio puede que tenga que configurar manualmente la $ Myhostname opcin. Adems, si el servidor recibe correo para varios dominios de la @ Local_domains_acl opcin tendr que ser personalizado. Edite el / Etc/amavis/conf.d/50-user archivo:

$ Myhostname = 'mail.example.com "; @ Local_domains_acl = ("example.com", "example.org");

Si usted desea cubrir varios dominios puede utilizar el siguiente en el / Etc/amavis/conf.d/50-user

@ Local_domains_acl = qw (.);

Despus de la configuracin Amavisd-new necesita ser reiniciado:

255

Servicios de correo electrnico

sudo / etc / init.d / amavis restart

5.2.3.1. DKIM lista blanca Amavisd-nuevo puede ser configurado para automticamente Lista blanca Las direcciones de los dominios con las claves vlidas de dominio. Hay algunos dominios pre-configurados en el / Etc/amavis/conf.d/40policy_banks. Hay varias formas de configurar la lista blanca de un dominio: 'Example.com' => 'lista blanca',: se lista blanca cualquier direccin desde el dominio "example.com". '. Example.com' => 'lista blanca',: se lista blanca cualquier direccin de cualquier subdominios de "Example.com", que tiene una firma vlida. 'Example.com / @ example.com.' => 'Lista blanca',: se subdominios lista blanca de "example.com", que utilizar la firma de example.com el dominio principal. . / @ Example.com '=>' lista blanca ',: agrega direcciones que tienen una firma vlida desde "Example.com". Esto se utiliza generalmente para grupos de discusin que firman sus mensajes. Un dominio tambin puede tener varias configuraciones de lista blanca. Despus de editar el archivo, reinicie amavisdnew:
sudo / etc / init.d / amavis restart

En este contexto, una vez que un dominio ha sido aadido a la lista blanca el mensaje no recibir ningn tipo de filtro anti-virus o spam. Esto puede o no puede ser el comportamiento previsto desea para un dominio. 5.2.4. Sufijo Para la integracin de Postfix, introduzca lo siguiente en una terminal:

sudo postconf-e 'content_filter = smtp-amavis: [127.0.0.1]: 10024'

La prxima edicin / Etc / postfix / master.cf y aadir lo siguiente al final del archivo:

smtp-amavis

unix

smtp

-O smtp_data_done_timeout = 1200 -O smtp_send_xforward_command = yes -O disable_dns_lookups = yes -O = 20 max_use 127.0.0.1:10025 inet n smtpd

-O content_filter = -O local_recipient_maps = -O relay_recipient_maps = -O smtpd_restriction_classes = -O smtpd_delay_reject = no -O smtpd_client_restrictions = permit_mynetworks, rechazar

256

Servicios de correo electrnico


-O smtpd_helo_restrictions = -O smtpd_sender_restrictions = -O smtpd_recipient_restrictions = permit_mynetworks, rechazar -O smtpd_data_restrictions = reject_unauth_pipelining -O smtpd_end_of_data_restrictions = -O mynetworks = 127.0.0.0 / 8 -O smtpd_error_sleep_time = 0 -O smtpd_soft_error_limit = 1001 -O smtpd_hard_error_limit = 1000 -O smtpd_client_connection_count_limit = 0 -O smtpd_client_connection_rate_limit = 0 -O receive_override_options = no_header_body_checks y no_unknown_recipient_checks

Tambin aada las dos lneas siguientes inmediatamente debajo de la "Pickup" Servicio de transporte:
-O content_filter = -O receive_override_options = no_header_body_checks

Esto evitar que los mensajes que se generan para informar sobre el spam de ser clasificado como spam. Ahora reiniciar Postfix:

sudo / etc / init.d / postfix restart

Filtrado de contenidos con el spam y la deteccin de virus est ahora habilitado. 5.2.5. Amavisd-new y spamassassin Al integrar Amavisd-new con Spamassassin, si decide desactivar el filtrado de Bayes por edicin / Etc / spamassassin / local.cf y usar cron para actualizar las reglas de todas las noches, el resultado puede causar una situacin en la que se envan una gran cantidad de mensajes de error al amavis usuario a travs del cron amavisd-new trabajo. Hay varias formas de manejar esta situacin: Configurar el MDA para filtrar los mensajes que no desea ver. Cambio / Usr / sbin / amavisd-new-cronjob para comprobar use_bayes 0. Por ejemplo, editar / Usr / bin / amavisd-new-cronjob y aadir lo siguiente a la cima antes de que el prueba declaraciones:

egrep-q "^ [\ t] * use_bayes [\ t] * 0" / etc / spamassassin / local.cf && exit 0

5,3. Pruebas
En primer lugar, prueba de que el SMTP Amavisd-new est escuchando:
telnet localhost 10024 Trying 127.0.0.1 ... Connected to localhost. Carcter de escape es '^]'.

257

Servicios de correo electrnico


220 [127.0.0.1] ESMTP amavisd-new servicio listo ^]

En el encabezado de los mensajes que pasan por el filtro de contenido que usted debe ver:

X-Spam-Level: X-Virus-escaneada: Debian amavisd-new at example.com X-Spam-Status: No, hits = -2.3 tagged_above = -1000,0 requerida = 5.0 tests = AWL, BAYES_00 X-Spam-Level:

Su salida puede variar, pero lo importante es que hay X-Virus-Scanned y XSpam-Status entradas.

5,4. Solucin de problemas


La mejor manera de averiguar por qu algo va mal es comprobar los archivos de registro. Para obtener instrucciones sobre el registro de Postfix ver el Seccin 1.7, "Resolucin de problemas" [p. 239] seccin. Amavisd-new utiliza syslog para enviar mensajes a / Var / log / mail.log. La cantidad de detalles puede ser aumentarse aadiendo el $ Log_level opcin para / Etc/amavis/conf.d/50-user, Y establecer el valor 1 a 5.

$ Log_level = 2;

Cuando el Amavisd-new salida del registro se aument la produccin de Spamassassin registro tambin se incrementa. El nivel de registro de ClamAV se puede aumentar mediante la edicin de / Etc / clamav / clamd.conf y estableciendo el siguiente opcin:
LogVerbose verdad

De forma predeterminada ClamAV enviar mensajes de registro para / Var / log / clamav / clamav.log. Despus de cambiar una configuracin de las aplicaciones de registro de acuerdo para reiniciar el servicio para el nuevo efecto. Adems, una vez el problema que est solucionando problemas se resuelve la configuracin surta que es una buena idea de cambiar la configuracin del registro a la normalidad.

5,5. Referencias
Para ms informacin sobre el filtrado de correo ver los siguientes enlaces: Amavisd-new Documentacin22 ClamAV Documentacin23 y ClamAV Wiki24
22 http://www.ijs.si/software/amavisd/amavisd-new-docs.html 23 http://www.clamav.net/doc/latest/html/ 24 http://wiki.clamav.net/Main/WebHome

258

Servicios de correo electrnico Spamassassin Wiki25 Pyzor Pgina de inicio26 Razor Pgina de inicio27 DKIM.org28 Postfix Amavis Nueva29 Adems, no dude en hacer preguntas en el # Ubuntu-server Canal de IRC en freenode30.

25 http://wiki.apache.org/spamassassin/ 26 http://sourceforge.net/apps/trac/pyzor/ 27 http://razor.sourceforge.net/ 28 http://dkim.org/~~V 29 https://help.ubuntu.com/community/PostfixAmavisNew 30 http://freenode.net

259

Captulo 16. Aplicaciones de chat

260

Aplicaciones de chat

1. Informacin general
En esta seccin, vamos a discutir cmo instalar y configurar un servidor de IRC, ircd-IRc2. Tambin se discutir la forma de instalar y configurar Jabber, un servidor de mensajera ejemplo.

261

Aplicaciones de chat

2. IRC Server
El repositorio de Ubuntu tiene muchos servidores de Internet Relay Chat. En esta seccin se explica cmo instalar y configurar el servidor original de IRC-ircd IRc2.

2,1. Instalacin
Para instalar ircd-IRc2, ejecute el comando siguiente en el smbolo del sistema:

sudo apt-get install-ircd IRc2

Los archivos de configuracin se guardan en / Etc / ircd directorio. Los documentos estn disponibles en /
Usr / share/doc/ircd-irc2

directorio.

2,2. Configuracin
Los ajustes de IRC se puede hacer en el archivo de configuracin / Etc / ircd / ircd.conf. Puede configurar el IRC nombre de host en el archivo mediante la edicin de la siguiente lnea:
M: irc.localhost :: Debian ircd configuracin por defecto :: 000A

Por favor, asegrese de aadir alias de DNS para el nombre de host del IRC. Por ejemplo, si se establece irc.livecipher.com como nombre de host del IRC, por favor haga irc.livecipher.com que se puede resolver en su Servidor de Nombres de Dominio. El nombre de host del IRC no debe ser el mismo que el nombre de host. Los detalles de administrador de IRC se puede configurar mediante la edicin de la siguiente lnea:
A: Organizacin, IRC departamento:. <ircd@example.irc.org> Demonio: Client Server :: IRCnet:

Se deben agregar las lneas especficas para configurar la lista de puertos de IRC para escuchar, para configurar operador credenciales, para configurar la autenticacin de cliente, etc Para ms informacin, consulte el ejemplo archivo de configuracin / Usr/share/doc/ircd-irc2/ircd.conf.example.gz. La bandera de IRC que se mostrar en el cliente de IRC, cuando el usuario se conecta al servidor se puede establecer en
/ etc / ircd / ircd.motd

archivo.

Despus de hacer los cambios necesarios en el fichero de configuracin, puede reiniciar el servidor de IRC con el siguiente comando:

sudo / etc/init.d/ircd-irc2 reinicio

2,3. Referencias
Usted tambin podra estar interesado en echar un vistazo a otros servidores IRC disponibles en el repositorio de Ubuntu. Lo incluye, ircd ircd-UCRI y la hbrida. 262

Aplicaciones de chat Consulte IRCD Preguntas frecuentes1 para ms detalles sobre el servidor IRC.

1 http://www.irc.org/tech_docs/ircnet/faq.html

263

Aplicaciones de chat

3. Servidor de mensajera instantnea Jabber


Farfullar un protocolo de mensajera instantnea populares se basa en XMPP, un estndar abierto para mensajera instantnea, y utilizado por muchas aplicaciones populares. Esta seccin abarca la creacin de un Jabberd 2 servidor en un local LAN. Esta configuracin tambin se puede adaptar para proporcionar servicios de mensajera a los usuarios sobre el Internet.

3,1. Instalacin
Para instalar jabberd2, en una terminal escriba:

sudo apt-get install jabberd2

3,2. Configuracin
Hace un par de archivos de configuracin XML se utiliza para configurar jabberd2 de Berkeley DB usuario autenticacin. Esta es una forma muy simple de autenticacin. Sin embargo, jabberd2 puede ser configurado para usar LDAP, MySQL, PostgreSQL, etc para la autenticacin del usuario.

En primer lugar, editar / Etc/jabberd2/sm.xml cambiando:


<id> jabber.example.com </ id>

Reemplazar jabber.example.com con el ID de nombre de host, o de otra ndole, de su servidor. Ahora bien, en la seccin <Almacenamiento> cambiar el <controlador> a:
<controlador> db </ controlador>

A continuacin, modifique / Etc/jabberd2/c2s.xml en el <local> seccin de cambio:


<id> jabber.example.com </ id>

Y en la seccin <authreg> ajustar la seccin <module> a:

<module> db </ modulo>

Por ltimo, reinicie jabberd2 para permitir que la nueva configuracin:


sudo / etc/init.d/jabberd2 reinicio

Ahora debera ser capaz de conectarse al servidor usando un cliente Jabber como Pidgin por ejemplo.

264

Aplicaciones de chat

La ventaja de utilizar Berkeley DB para los datos de usuario es que despus de ser configurado sin de mantenimiento adicional. Si necesita ms control sobre las cuentas de usuario y las credenciales de otro mtodo de autenticacin que se recomienda.

3,3. Referencias
El Jabberd2 Sitio Web2 contiene ms detalles sobre la configuracin de jabberd2. Para las opciones de autenticacin ms ver el Jabberd2 Gua de instalacin3. Adems, el Configuracin de Jabber Wiki de Ubuntu Server4 pgina tiene ms informacin.

2 http://codex.xiaoka.com/wiki/jabberd2:start 3 http://www.jabberdoc.org/~~V 4 https://help.ubuntu.com/community/SettingUpJabberServer

265

Captulo 17. Versin del sistema de control


El control de versiones es el arte de manejar cambios en la informacin. Ha sido durante mucho tiempo una herramienta crtica para programadores, quienes tpicamente emplean su tiempo haciendo pequeos cambios al software y luego deshaciendo esos cambios al da siguiente. Pero software. En cualquier lugar se pueden encontrar las personas que utilizan las la lmites del mundo de desarrollo de la utilidad del software de control de versiones se extiende mucho ms all de computadoras para manejar informacin que cambia a menudo, hay espacio para el control de versiones.

266

Versin del sistema de control

1. Bazar
Bazaar es un sistema de control de versiones patrocinado por Canonical, la empresa comercial que hay detrs Ubuntu. A diferencia de CVS, Subversion y que slo admiten un modelo de repositorio central, el bazar tambin apoya la versin de control distribuido, dando a la gente la capacidad de colaborar de manera ms eficiente. En Bazar en particular, est diseada para maximizar el nivel de participacin de la comunidad en el cdigo abierto proyectos.

1,1. Instalacin
En un terminal, introduzca el siguiente comando para instalar bzr:

sudo apt-get install bzr

1,2. Configuracin
Para presentarse a bzr, utilice el whoami comando como este:

$ Bzr whoami 'Joe Doe <joe.doe@gmail.com>'

1,3. Aprendiendo Bazaar


Bazar viene con la documentacin paquete instala en / usr / share / doc / bzr / html por defecto. La tutorial es un buen lugar para empezar. El comando bzr tambin viene con una funcin de ayuda:
$ Bzr ayuda

Para obtener ms informacin acerca de la foo comando:


$ Bzr ayuda foo

1,4. Launchpad Integracin


Aunque es muy til como un sistema autnomo, el bazar tiene una buena integracin, opcional con Launchpad1, el sistema de desarrollo de colaboracin utilizada por Canonical y la comunidad del cdigo abierto para gestionar y ampliar Ubuntu en s. Para informacin sobre cmo Bazaar se puede utilizar con Launchpad colaborar en proyectos de cdigo abierto, consulte http://bazaar-vcs.org/LaunchpadIntegration2.

1 https://launchpad.net/ 2 http://bazaar-vcs.org/LaunchpadIntegration/

267

Versin del sistema de control

2. Subversin
Subversion es una versin de cdigo abierto sistema de control. Uso de Subversion, puede registrar la historia de archivos de cdigo fuente y documentos. Gestiona archivos y directorios a travs del tiempo. Un rbol de ficheros se coloca en un repositorio central. El repositorio es como un servidor de archivos ordinario, salvo que recuerda todos los los cambios hechos a los archivos y directorios.

2,1. Instalacin
Para acceder a un repositorio de Subversion mediante el protocolo HTTP, debe instalar y configurar una red servidor. Apache2 ha demostrado funcionar bien con Subversion. Por favor, consulte la subseccin HTTP en el Apache2 seccin para instalar y configurar Apache 2. Para acceder al repositorio de Subversion mediante el El protocolo HTTPS, debe instalar y configurar un certificado digital en su servidor web Apache 2. Por favor, consulte la subseccin HTTPS en la seccin de Apache2 para instalar y configurar la era digital certificado.

Para instalar Subversion, ejecute el siguiente comando en una terminal:

sudo apt-get install subversion libapache2-svn

2,2. Configuracin del servidor


Este paso asume que usted ha instalado por encima de los paquetes mencionados en su sistema. En esta seccin se explica cmo crear un repositorio de Subversion y acceder al proyecto. 2.2.1. Crear un repositorio Subversion El repositorio Subversion puede ser creado con el siguiente comando en una terminal:

svnadmin create / path / al / repositorio / proyecto

2.2.2. Importacin de archivos Una vez creado el repositorio, puede importar archivos en el repositorio. Para importar un directorio, introduzca lo siguiente en una terminal:

svn import / ruta / a / importacin / directorio file :/ / / ruta / al / repositorio / proyecto

2,3. Mtodos de acceso


Los repositorios de Subversion se puede acceder (check out) a travs de muchos mtodos diversos - en locales disco, oa travs de varios protocolos de red. Ubicacin de un repositorio, sin embargo, es siempre una direccin URL. La tabla se describe cmo diferentes esquemas de URL se asignan a los mtodos de acceso disponibles.

268

Versin del sistema de control

Tabla 17.1. Mtodos de acceso


Esquema file :/ / http:// https:// svn :/ / svn + ssh :/ / Mtodo de acceso acceso directo al repositorio (en el disco local) Acceso mediante el protocolo WebDAV para Subversion consciente de servidor web Apache 2 Lo mismo que http://, pero con encriptacin SSL El acceso a travs de un protocolo personalizado a un servidor svnserve Igual que svn :/ /, sino a travs de un tnel SSH

En esta seccin veremos cmo configurar Subversion para todos estos mtodos de acceso. Aqu, cubrimos los conceptos bsicos. Para obtener ms informacin de uso ms avanzadas, se refieren a la svn libro3. 2.3.1. Acceso directo al repositorio (file :/ /) Este es el ms simple de todos los mtodos de acceso. No se requiere ningn proceso de servidor de Subversion para ser ejecutando. Este mtodo de acceso se utiliza para acceder a Subversion desde la misma mquina. La sintaxis de la comando, introducido en un sistema de terminal, es la siguiente:

svn co file :/ / / ruta / al / repositorio / proyecto

svn co file :/ / localhost / ruta / al / repositorio / proyecto

Si no se especifica el nombre del host, hay tres barras diagonales (/ / /) - dos para el protocolo (archivo, en este caso), adems de la barra que lleva en el camino. Si se especifica el nombre de host, debe utilizar dos barras inclinadas (/ /). Los permisos del repositorio dependen de los permisos del sistema de archivos. Si el usuario ha ledo / permiso de escritura, se puede desde la que obtener y comprometerse con el repositorio. 2.3.2. Acceso mediante el protocolo WebDAV (http://) Para acceder al repositorio de Subversion mediante el protocolo WebDAV, debe configurar el Apache 2 Web servidor. Aadir el siguiente cdigo entre el <VirtualHost> y </ VirtualHost> elementos en / Etc /
apache2/sites-available/default,

u otro archivo de host virtual:

<Location /svn> DAV svn SVNPath / home / svn AuthType Basic AuthName "El nombre del repositorio"
3 http://svnbook.red-bean.com/

269

Versin del sistema de control


AuthUserFile / etc / subversion / passwd Require valid-user </ Location>

El fragmento de la configuracin anterior supone que los repositorios de Subversion se crean en / Home / svn / directorio utilizando svnadmin comando. Ellos pueden ser accesibles mediante http:// nombre de host / svn / repos_name url. Para importar o cometer archivos a su repositorio de Subversion a travs de HTTP, el depsito debe ser propiedad del usuario HTTP. En los sistemas de Ubuntu, por lo general el usuario HTTP es www-data. Para cambiar el la propiedad de los archivos del repositorio introducir el siguiente comando de terminal:
sudo chown-R www-data: www-data / ruta / al / repositorio

Al cambiar la propiedad de repositorio www-data usted no ser capaz de importar o comprometerse en el repositorio de archivos mediante la ejecucin de svn import file :/ / / comando como a cualquier otro usuario de www-data. A continuacin, debe crear la / Etc / subversion / passwd archivo que contendr los detalles de autenticacin de usuario. Para crear un problema de archivo de el siguiente comando en un smbolo del sistema (que va a crear el archivo y el primer usuario): agregue

sudo htpasswd-c / etc / subversion / passwd nombre_usuario

Para aadir usuarios adicionales omitir el "-C" opcin ya que esta opcin reemplaza el archivo antiguo. En lugar de utilizar el siguiente formulario:
sudo htpasswd / etc / subversion / passwd nombre_usuario

Este comando le pedir que introduzca la contrasea. Una vez que introduzca la contrasea, el usuario se agrega. Ahora, para acceder al repositorio puede ejecutar el siguiente comando:
svn co http://servername/svn

La contrasea se transmite como texto sin formato. Si usted est preocupado por la adivinacin de contraseas, que Se recomienda usar el cifrado SSL. Para obtener ms informacin, consulte la siguiente seccin. 2.3.3. Acceso mediante el protocolo WebDAV con cifrado SSL (https://) Acceso a un repositorio de Subversion mediante el protocolo WebDAV con cifrado SSL (https://) es similar al http:// excepto en que debe instalar y configurar el certificado digital en su web Apache2 servidor. Para usar SSL con Subversion aade lo anterior Apache2 configuracin / Etc/apache2/sitesdisponible / default-ssl. Para obtener ms informacin sobre la configuracin de Apache 2 con SSL ve Seccin 1.3, "Configuracin de HTTPS" [p. 192]. Puede instalar un certificado digital emitido por una autoridad de certificacin. Alternativamente, usted puede instalar su propio certificado autofirmado.

270

Versin del sistema de control

Este paso asume que usted ha instalado y configurado un certificado digital en su servidor web Apache 2. Ahora, para acceder al repositorio de Subversion, por favor refirase a la seccin de arriba! Los mtodos de acceso son exactamente el mismo, excepto el protocolo. Usted debe usar https:// para acceder al repositorio de Subversion.

2.3.4. Acceso a travs de un protocolo personalizado (svn :/ /) Una vez que el repositorio Subversion es creado, usted puede configurar el control de acceso. Puede editar el / ruta / al / repositorio / proyecto / conf / svnserve.conf archivo para configurar el control de acceso. Por ejemplo, para configurar la autenticacin, puede descomentar las siguientes lneas en el fichero de configuracin:
# [General] # Password-db = passwd

Despus de descomentar las lneas anteriores, se puede mantener la lista de usuarios en el archivo passwd. Por lo tanto, modificar el archivo passwd en el mismo directorio y aadir el nuevo usuario. La sintaxis es como sigue:
nombre de usuario = contrasea

Para ms detalles, consulte el archivo. Ahora, para acceder a Subversion a travs del svn :/ / protocolo personalizado, ya sea desde la misma mquina o diferentes uno mquina, puede ejecutar svnserver usando la orden svnserve. La sintaxis es como sigue:
$ Svnserve-d - foreground-r / ruta / al / repositorio #-D - modo demonio # - Foreground - ejecutar en primer plano (til para depurar) #-R - raz del directorio del que servir Para ms detalles de uso, por favor referirse a: $ Svnserve - help

Una vez que se ejecuta este comando, Subversion empieza a escuchar en el puerto por defecto (3690). Para acceder al proyecto repositorio, debe ejecutar el siguiente comando en una terminal:

svn co svn :/ / hostname / proyecto del proyecto - nombre de usuario Nombre de usuario

Sobre la base de la configuracin del servidor, se le pedir la contrasea. Una vez autenticado, se desprotege el cdigo desde el repositorio Subversion. Para sincronizar el repositorio del proyecto con la copia local, puede ejecutar el actualizar sub-comandos. La sintaxis del comando, entr en el indicador de la terminal, es tan sigue:

cd project_dir; svn update

Para ms detalles sobre el uso de cada sub-orden de Subversion, puede consultar el manual. Para ejemplo, para aprender ms acerca de la co (checkout) de comandos, por favor, ejecute el comando siguiente desde un terminal:

svn co ayuda

271

Versin del sistema de control

2.3.5. El acceso a travs de un protocolo personalizado con cifrado SSL (svn + ssh :/ /) El proceso de configuracin y el servidor es el mismo que en el mtodo svn :/ /. Para obtener ms informacin, consulte la la seccin anterior. Este paso asume que usted ha seguido los pasos anteriores y se inici el servidor de Subversion usando la orden svnserve. Tambin se asume que el servidor ssh se est ejecutando en esa mquina, y que est permitiendo que de entrada conexiones. Para confirmar, por favor, intenta iniciar sesin en esa mquina usando ssh. Si usted puede entrar, todo est perfecto. Si no puede ingresar, por favor dirigirse antes de seguir adelante.

El svn + ssh :/ / protocolo se utiliza para acceder al repositorio de Subversion usando el cifrado SSL. La la transferencia de datos se cifran mediante este mtodo. Para acceder al repositorio del proyecto (por ejemplo con un compra), deber utilizar la siguiente sintaxis:

svn co svn + ssh :/ / hostname / var / svn / repos / proyecto

Usted debe usar la ruta completa (/ ruta / al / repositorio / proyecto) para acceder al repositorio de Subversion utilizando este mtodo de acceso. Sobre la base de la configuracin del servidor, se le pedir la contrasea. Debe introducir la contrasea que utiliza para iniciar sesin a travs de ssh. Cuando se haya autenticado, se comprueba el cdigo desde el repositorio Subversion.

272

Versin del sistema de control

3. Servidor CVS
CVS es un sistema de control de versiones. Puede usarlo para grabar la historia de los archivos de origen.

3,1. Instalacin
Para instalar CVS, ejecute el siguiente comando en una terminal:

sudo apt-get install cvs

Despus de instalar cvs, debe instalar xinetd para iniciar / parar el servidor CVS. Cuando se le indique, introduzca el el siguiente comando para instalar xinetd:

sudo apt-get install xinetd

3,2. Configuracin
Una vez instalado cvs, el repositorio se inicializar automticamente. De forma predeterminada, el repositorio residir en el directorio / srv / cvs. Puede cambiar esta ruta ejecutando el siguiente comando:

cvs-d / su / nuevo / cvs / repo init

Una vez que el depsito inicial se establece, usted puede configurar xinetd para iniciar el servidor CVS. Usted puede copiar las siguientes lneas a la / Etc / xinetd.d / cvspserver archivo.

servicio de cvspserver { port = 2401 socket_type = corriente protocol = tcp user = root = sin esperar type = No Cotizadas servidor = / usr / bin / cvs server_args =-f - allow-root / srv / cvs pserver disable = no }

Asegrese de editar el repositorio si ha cambiado el repositorio por defecto (/ srv / cvs).

Una vez que haya configurado el xinetd podr iniciar el servidor cvs ejecutando el siguiente comando:

sudo / etc / init.d / xinetd restart

Usted puede confirmar que el servidor CVS se est ejecutando el comando siguiente:

273

Versin del sistema de control

sudo netstat-tap | grep cvs

Al ejecutar este comando, debe ver la siguiente lnea o algo similar:

tcp

0 *: cvspserver

*: * LISTEN

Desde aqu se puede continuar aadiendo usuarios, nuevos proyectos, y gestionar el servidor CVS. CVS permite al usuario aadir usuarios independientemente del sistema operativo subyacente. Probablemente la forma ms sencilla es utilizar los usuarios de Linux para el CVS, aunque tiene problemas de seguridad potenciales. Por favor, consulte el manual de CVS para ms detalles.

3,3. Aadir Proyectos


En esta seccin se explica cmo aadir un nuevo proyecto al repositorio CVS. Cree el directorio y aadir documento necesario y archivos de cdigo fuente en el directorio. Ahora, ejecute el comando siguiente para agregar este proyecto al repositorio CVS:

cd su / proyecto cvs-d: pserver: username@hostname.com :/ srv / cvs import-m \ "Importacin de mi proyecto al repositorio CVS". nuevo_proyecto inicio

Puede utilizar la variable de entorno CVSROOT para guardar el directorio raz CVS. Una vez que exportar la variable de entorno CVSROOT, podr evitar el uso de la opcin-d en los cvs de arriba comando. La cadena nuevo_proyecto es una etiqueta de vendedor, y comenzar es una etiqueta de versin. Ellos no sirven a ningn propsito en este contexto, pero como CVS los requiere, deben estar presentes. Cuando se agrega un nuevo proyecto, el usuario CVS que utilice deber tener acceso de escritura al CVS repositorio (/ srv / cvs). De forma predeterminada, el grupo src tiene acceso de escritura al repositorio CVS. As, puede agregar el usuario a este grupo, y as l podr aadir y gestionar proyectos en el CVS repositorio.

274

Versin del sistema de control

4. Referencias
Bazaar Pgina de inicio4 Launchpad5 Subversion Pgina de inicio6 Libro de Subversion7 Manual de CVS8 Fcil Bazar pgina Wiki de Ubuntu9 Wiki de Ubuntu la pgina de Subversion10

4 http://bazaar.canonical.com/en/ 5 https://launchpad.net/ 6 http://subversion.tigris.org/~~V 7 http://svnbook.red-bean.com/ 8 http://ximbiot.com/cvs/manual/cvs-1.11.21/cvs_toc.html 9 https://help.ubuntu.com/community/EasyBazaar 10 https://help.ubuntu.com/community/Subversion

275

Captulo 18. De red de Windows


Las redes de ordenadores a menudo se compone de diversos sistemas, y mientras opera una red formada por totalmente de escritorio Ubuntu y servidores sin duda sera divertido, algunos entornos de red debe consistir en Ubuntu y los sistemas de Microsoft Windows trabajando juntos en armona. Este seccin de la Gua de Ubuntu Server introduce los principios y las herramientas utilizadas en la configuracin de tu Ubuntu Servidor para compartir recursos de red con ordenadores Windows.

276

De red de Windows

1. Introduccin
La creacin de redes con xito su sistema Ubuntu con clientes Windows implica la provisin y la integracin con los servicios comunes a los entornos de Windows. Estos servicios asistir a la puesta en comn de datos y la informacin sobre los equipos y usuarios implicados en la red, y pueden clasificarse en tres grandes categoras de funcionalidad: Servicios de archivos e impresoras de uso compartido. Utilizando el Server Message Block (SMB) para facilitar la el intercambio de archivos, carpetas, volmenes, y la distribucin de impresoras en la red. Servicios de directorio. El intercambio de informacin vital acerca de los equipos y usuarios de la red con tecnologas tales como el Lightweight Directory Access Protocol (LDAP) y Microsoft Active Directory . De autenticacin y acceso. El establecimiento de la identidad de un equipo o usuario de la red y determinar la informacin que el equipo o el usuario est autorizado a acceder usando estos principios y tecnologas como los permisos de archivos, las polticas de grupo, y el servicio de autenticacin Kerberos.

Afortunadamente, su sistema Ubuntu puede proporcionar todas las facilidades a los clientes de Windows y compartir recursos de la red entre ellos. Una de las principales piezas de su software de sistema de Ubuntu incluye de red de Windows es la suite de aplicaciones de servidor Samba SMB y herramientas.

Esta seccin de la Gua de Ubuntu Server va a introducir algunos de los casos de uso comunes de Samba, y cmo instalar y configurar los paquetes necesarios. Documentacin adicional detallada y informacin sobre Samba se puede encontrar en el Samba pgina web1.

1 http://www.samba.org

277

De red de Windows

2. Servidor de Archivos Samba


Una de las maneras ms comunes de la red de Ubuntu y Windows es configurar Samba como un servidor de archivos. Esta seccin abarca la creacin de un servidor Samba para compartir archivos con clientes Windows. El servidor se configura para compartir archivos con cualquier cliente de la red sin pedir un contrasea. Si su entorno requiere estrictos controles de acceso a ver Seccin 4, "Asegurar un servidor Samba Servidor de archivos e impresin "[p. 283]

2,1. Instalacin
El primer paso es instalar el paquete samba. Desde una terminal escriba:

sudo apt-get install samba

Eso es todo lo que hay que hacer, que ahora est listo para configurar Samba para compartir archivos.

2,2. Configuracin
El principal archivo de configuracin de Samba se encuentra en / Etc / samba / smb.conf. El archivo de configuracin por defecto tiene una gran cantidad de comentarios con el fin de documentar las diversas directivas de configuracin. No todas las opciones disponibles se incluyen en el fichero de configuracin por defecto. Vase el smb.conf el hombre o la pgina de Samba HOWTO Collection2 para ms detalles. 1. En primer lugar, edite los siguientes pares clave / valor en el [Global] seccin de / Etc / samba / smb.conf:
Ejemplo de grupo de trabajo = ... security = user

La seguridad parmetro es ms abajo en la seccin [global], y se comenta de forma predeterminada. Adems, el cambio Ejemplo para adaptarse mejor a su entorno. 2. Crear una nueva seccin en la parte inferior del archivo, o quite uno de los ejemplos, para el directorio compartido:

[Compartir] comment = Compartir Ubuntu servidor de archivos path = / srv / samba / share navegable = yes guest ok = yes read only = no create mask = 0755
2 http://samba.org/samba/docs/man/Samba-HOWTO-Collection/

278

De red de Windows

comentarios: una breve descripcin de la accin. Ajuste de acuerdo a sus necesidades. ruta: la ruta de acceso al directorio a compartir. Este ejemplo se utiliza / Srv / samba / sharename porque, de acuerdo con el Jerarqua del sistema de archivos Standard (FHS), / srv3 es donde datos especficos del sitio deben ser servidos. Tcnicamente Samba acciones se puede colocar en cualquier parte del sistema de archivos siempre y cuando los permisos son correctos, pero la adhesin a las normas se recomienda. navegable: permite a los clientes de Windows para navegar por el directorio compartido mediante el Explorador de Windows. guest ok: permite a los clientes conectarse al recurso compartido sin proporcionar una contrasea. de slo lectura: determina si el porcentaje es de slo lectura o si los privilegios de escritura se les concede. Escribir privilegios se les permite slo cuando el valor es No, como se ve en este ejemplo. Si el valor es s, entonces el acceso a la participacin es de slo lectura. crear la mscara: determina los archivos nuevos permisos tendrn cuando se cre. 3. Ahora que Samba est configurado, el directorio debe ser creado y cambiado los permisos. Desde un terminal escriba:

sudo mkdir-p / srv / samba / share sudo chown nobody.nogroup / srv / samba / share /

La -P le dice a mkdir para crear el rbol de directorios completo si no existe.

4.

Por ltimo, reinicie los servicios samba para habilitar la nueva configuracin:

reinicio sudo smbd reinicio sudo nmbd

Una vez ms, la configuracin anterior muestra todo el acceso a cualquier cliente en la red local. Para una configuracin ms segura ver Seccin 4, "Asegurar un archivo de Samba y servidor de impresin" [p. 283]. Desde un cliente de Windows ahora debera ser capaz de navegar por el servidor de archivos de Ubuntu y ver la compartida directorio. Si el cliente no se presenta de forma automtica su parte, intentar acceder a su servidor por su IP direccin, por ejemplo, \ \ 192.168.1.1, en una ventana del Explorador de Windows. Para comprobar que todo est funcionando tratar la creacin de un directorio de Windows. Para crear acciones adicionales, simplemente crear nuevos [Dir] secciones en / Etc / samba / smb.confY reinicie Samba. Slo asegrese de que el directorio que desea compartir existe realmente y son los permisos corregir.

La cuota de archivo con el nombre "[Share]" y la ruta / Srv / samba / share son slo algunos ejemplos. Ajustar la proporcin y la ruta de los nombres que se adaptan a su entorno. Es una buena idea nombrar a una parte despus de un
3 http://www.pathname.com/fhs/pub/fhs-2.3.html # SRVDATAFORSERVICESPROVIDEDBYSYSTEM

279

De red de Windows

directorio en el sistema de archivos. Otro ejemplo podra ser un nombre de parte de los [Q] con una trayectoria de / Srv / samba / qa.

2,3. Recursos
Para una configuracin ms detallada Samba, consulte la Samba HOWTO Collection4 La gua tambin est disponible en formato impreso5. O'Reilly Usar el sistema Samba6 es otra buena referencia. El Wiki de Ubuntu Samba 7 pgina.

4 http://samba.org/samba/docs/man/Samba-HOWTO-Collection/ 5 http://www.amazon.com/exec/obidos/tg/detail/-/0131882228 6 http://www.oreilly.com/catalog/9780596007690/ 7 https://help.ubuntu.com/community/Samba

280

De red de Windows

3. Samba Servidor de impresin


Otro uso comn de Samba es configurarlo para compartir impresoras instaladas, ya sea localmente oa travs de la red, en un servidor de Ubuntu. Similar a Seccin 2, "Servidor de archivos Samba" [p. 278] esta seccin configurar Samba para permitir que cualquier cliente de la red local para usar las impresoras instaladas sin solicita un nombre de usuario y contrasea. Para una configuracin ms segura ver Seccin 4, "Asegurar un archivo de Samba y servidor de impresin" [p. 283].

3,1. Instalacin
Antes de la instalacin y configuracin de Samba es mejor tener ya una instalacin de trabajo de CUPS. Ver Seccin 4, "CUPS - Servidor de impresin" [p. 231] para ms detalles. Para instalar el paquete samba, desde una terminal escriba:

sudo apt-get install samba

3,2. Configuracin
Despus de instalar samba edicin / Etc / samba / smb.conf. Cambie el grupo de trabajo atribuir a lo que es adecuada para su red, y el cambio seguridad a usuario:

Ejemplo de grupo de trabajo = ... security = user

En el [Impresoras] seccin de cambiar el guest ok opcin para s:

navegable = yes guest ok = yes

Despus de editar smb.conf reiniciar Samba:

reinicio sudo smbd reinicio sudo nmbd

La configuracin por defecto de Samba automticamente compartir las impresoras instaladas. Simplemente instale el la impresora de forma local en los clientes de Windows.

3,3. Recursos
Para una configuracin ms detallada Samba, consulte la Samba HOWTO Collection8
8 http://samba.org/samba/docs/man/Samba-HOWTO-Collection/

281

De red de Windows La gua tambin est disponible en formato impreso9. O'Reilly Usar el sistema Samba10 es otra buena referencia. Asimismo, consulte la Sitio web de CUPS11 para obtener ms informacin sobre la configuracin de CUPS. El Wiki de Ubuntu Samba 12 pginas.

9 http://www.amazon.com/exec/obidos/tg/detail/-/0131882228 10 http://www.oreilly.com/catalog/9780596007690/ 11 http://www.cups.org/~~V 12 https://help.ubuntu.com/community/Samba

282

De red de Windows

4. Asegurar un archivo de Samba y servidor de impresin


4,1. Samba de seguridad Modos
Hay dos niveles de seguridad disponibles en el sistema de archivos de Internet comn (CIFS) de protocolo de red de nivel de usuario y a nivel de recurso. Samba modo de seguridad la aplicacin permite una mayor flexibilidad, proporcionando cuatro formas de aplicar a nivel de usuario la seguridad y una forma de implementar a nivel de recurso: security = user: exige a los clientes para suministrar un nombre de usuario y contrasea para conectarse a los recursos compartidos. Samba las cuentas de usuario son independientes de las cuentas del sistema, pero el paquete libpam-smbpass se sincroniza el sistema usuarios y contraseas con la base de datos de usuarios de Samba. seguridad = dominio: este modo permite que el servidor Samba parece que los clientes de Windows como una primaria Controlador de dominio (PDC), controlador de dominio de reserva (BDC), o un servidor miembro de dominio (DMS). Ver Seccin 5, "Samba como un controlador de dominio" [p. 288] para ms informacin. security = ADS: permite que el servidor Samba para unirse a un dominio de Active Directory, como miembro de origen. Ver Seccin 6, "Samba Integracin con Active Directory" [p. 292] para ms detalles. security = server: este modo se deja encima de antes de Samba podra convertirse en un servidor miembro, y debido a algunos problemas de seguridad no se debe utilizar. Vase el Servidor de seguridad13, Seccin de la Samba gua para ms detalles. security = share: permite a los clientes conectarse a las acciones sin necesidad de suministrar un nombre de usuario y una contrasea. El modo de seguridad que usted elija depender de su entorno y lo que necesita el servidor de Samba llevar a cabo.

4,2. Seguridad = Usuario


En esta seccin se volver a configurar el archivo de Samba y servidor de impresin, de Seccin 2, "Servidor de archivos Samba" [p. 278] y Seccin 3, "Samba Server de impresin" [p. 281], para requerir autenticacin. En primer lugar, instalar el paquete libpam-smbpass que sincronizar los usuarios del sistema para el usuario de Samba base de datos:
sudo apt-get install libpam-smbpass

Si elige la Samba Server trabajo durante la instalacin libpam-smbpass ya est instalado.

Editar / Etc / samba / smb.conf, Y en el [Compartir] seccin de cambio:

guest ok = no

Por ltimo, reinicie Samba para la nueva configuracin surta efecto:


# 13 http://samba.org/samba/docs/man/Samba-HOWTO-Collection/ServerType.html id349531

283

De red de Windows

reinicio sudo smbd reinicio sudo nmbd

Ahora cuando se conecta a los directorios compartidos o impresoras se le solicitar un nombre de usuario y una contrasea. Si decide asignar una unidad de red al recurso compartido se puede comprobar la "Conectar de nuevo al inicio de sesin" casilla de verificacin, lo que requerir que introduzca slo el nombre de usuario y contrasea una vez, por hasta que lo menos los cambios de contrasea.

4,3. Compartir la Seguridad


Hay varias opciones disponibles para aumentar la seguridad para cada directorio individual compartido. Uso la [Compartir] ejemplo, esta seccin incluye algunas opciones comunes. 4.3.1. Grupos Los grupos definen una coleccin de equipos o usuarios que tienen un nivel comn de acceso a particular, recursos de la red y ofrecen un nivel de granularidad para controlar el acceso a tales recursos. Para ejemplo, si un grupo qa se define y contiene los usuarios freda, Danika, y robar y un segundo grupo apoyar se define y se compone de los usuarios Danika, Jeremy, y vincent a continuacin algunos recursos de la red configurado para permitir el acceso por el qa Grupo que ms tarde va a permitir el acceso a los usuarios freda, Danika, y robar, pero no Jeremy o Vincent. Dado que el usuario Danika pertenece tanto a la qa y apoyar grupos, que lo har ser capaz de acceder a recursos configurados para el acceso por ambos grupos, mientras que los dems usuarios tendrn slo el acceso a los recursos que permitan de forma explcita el grupo al que pertenecen. Por defecto Samba busca los grupos de sistemas locales definidas en el / Etc / group para determinar qu los usuarios pertenecen a qu grupos. Para obtener ms informacin sobre cmo agregar y quitar usuarios de grupos ven Seccin 1.2, "Agregar y eliminar usuarios" [p. 154]. Al definir los grupos en el archivo de configuracin de Samba, / Etc / samba / smb.conf, La sintaxis reconocida es anteponer el nombre del grupo con un smbolo "@". Por ejemplo, si desea definir un grupo nombre administrador de sistemas en un sector determinado de la / Etc / samba / smb.conf, Que lo hara por entrar en el nombre del grupo como @ Sysadmin. 4.3.2. Permisos de archivos Permisos de Archivo definen los derechos explcitos que un equipo o usuario tiene a un directorio determinado archivo, o un conjunto de archivos. Tales permisos puede definirse mediante la edicin del / Etc / samba / smb.conf y la especificacin de archivo los permisos explcitos de un recurso compartido de archivos definidos. Por ejemplo, si se ha definido un recurso compartido de Samba llamada parte y el deseo de dar slo lectura permisos al grupo de usuarios conocido como control de calidad, pero quiere permitir la escritura en el recurso compartido por el grupo llamado administrador de sistemas y el usuario llamado Vicente, entonces usted puede editar el / Etc / samba / smb.conf presentar, y aadir el el marco del [Compartir] siguientes entradas en entrada: 284

De red de Windows

leer la lista de @ = qa write list = @ sysadmin, Vicente

Otro posible permiso de Samba es declarar administrativo permisos a un particular, compartida recurso. Los usuarios que tienen permisos administrativos podrn leer, escribir o modificar cualquier informacin contenida en el recurso que el usuario haya sido concedidos los permisos administrativos a. Por ejemplo, si desea dar al usuario toronjil permisos administrativos en el parte ejemplo, puede editar el / Etc / samba / smb.conf archivo, y aadir la siguiente lnea en el marco del [Compartir] entrada:

usuarios administradores = melissa

Despus de editar / Etc / samba / smb.conf, Reiniciar Samba para que los cambios surtan efecto:
reinicio sudo smbd reinicio sudo nmbd

Para el leer la lista y escribir la lista para trabajar en el modo de seguridad de Samba debe no se establecer en seguridad = parte Ahora que Samba ha sido configurado para limitar los grupos que tienen acceso al directorio compartido, el los permisos de sistema de ficheros necesitan ser actualizados. Tradicionales de los permisos de archivos de Linux no se asignan tambin a Windows NT listas de control de acceso (ACL). Afortunadamente POSIX ACL estn disponibles en los servidores de Ubuntu que proporcionan un control de grano ms fino. Para ejemplo, para habilitar ACLs en / Srv un sistema de archivos ext3, edita / Etc / fstab aadiendo el acl opcin:
UUID = 66bcdd2e-8861-4fb0-b7e4-e61c569fe17d / srv ext3 noatime, relatime, acl 0 1

A continuacin, volver a montar la particin:


sudo mount-v-o remount / srv

En el ejemplo anterior se supone / Srv en una particin separada. Si / Srv, O dondequiera que usted tiene configurado la ruta del recurso compartido, es parte de la /particin de un reinicio puede ser requerida. Para que coincida con la configuracin de Samba por encima de la administrador de sistemas grupo se le dar lectura, escritura y ejecucin permisos a / Srv / samba / share, El qa grupo se le dar lectura y ejecucin, y la archivos sern propiedad del usuario melissa. Escriba lo siguiente en una terminal:

sudo chown-R melisa / srv / samba / share / sudo chgrp-R sysadmin / srv / samba / share / sudo setfacl-R-m g: qa: rx / srv / samba / share /

El comando setfacl anterior muestra ejecutar permisos a todos los archivos de la / Srv / samba / share directorio, que puede o no quiere.

285

De red de Windows

Ahora desde un cliente Windows usted debe notar los nuevos permisos del archivo se implementan. Ver la ACL y las pginas setfacl man para obtener ms informacin sobre ACL de POSIX.

4,4. Samba perfiles de Novell AppArmor


Ubuntu viene con el mdulo de seguridad AppArmor, que proporciona controles de acceso obligatorios. La AppArmor perfil predeterminado para Samba tendr que ser adaptado a la configuracin. Para obtener ms detalles sobre el uso de AppArmor vea Seccin 4, "AppArmor" [p. 167].

Hay perfiles predeterminados para AppArmor / Usr / sbin / smbd y / Usr / sbin / nmbd, El demonio Samba binarios, como parte de los paquetes apparmor los perfiles. Para instalar el paquete, desde un indicador de la terminal escriba:

sudo apt-get install apparmor los perfiles de AppArmor-utils

Este paquete contiene los perfiles de varios otros binarios.

Por defecto, los perfiles de smbd y nmbd estn en quejarse modo de permitir que Samba para trabajar sin modificar el perfil, y slo el registro de errores. Para colocar el perfil en smbd hacer cumplir modo, y tienen Samba trabajo como se esperaba, el perfil tendr que ser modificado para reflejar los directorios que se comparten. Editar / Etc / apparmor.d / usr.sbin.smbd la adicin de informacin para [Compartir] en el ejemplo del servidor de archivos:
/ Srv / samba / share / r, / Srv / samba / share / rwkix **,

Ahora coloque el perfil en hacer cumplir y vuelva a cargar:

sudo aa-enforce / usr / sbin / smbd cat / etc / apparmor.d / usr.sbin.smbd | sudo apparmor_parser-r

Ahora debera ser capaz de leer, escribir y ejecutar archivos en el directorio compartido de forma normal, y el binaria smbd tendr acceso slo a los archivos y directorios configurados. Asegrese de aadir las entradas de cada directorio que configurar Samba para compartir. Adems, los errores se registran en / Var / log / syslog.

4,5. Recursos
Para una configuracin ms detallada Samba, consulte la Samba HOWTO Collection14 La gua tambin est disponible en formato impreso15. O'Reilly Usar el sistema Samba16 es tambin una buena referencia. Captulo 1817 de la coleccin de HOWTOs de Samba est dedicado a la seguridad.
14 http://samba.org/samba/docs/man/Samba-HOWTO-Collection/ 15 http://www.amazon.com/exec/obidos/tg/detail/-/0131882228 16 http://www.oreilly.com/catalog/9780596007690/ 17 http://samba.org/samba/docs/man/Samba-HOWTO-Collection/securing-samba.html

286

De red de Windows Para ms informacin sobre Samba y ver la ACL Samba ACL pgina 18. El Wiki de Ubuntu Samba 19 pginas.

# 18 http://samba.org/samba/docs/man/Samba-HOWTO-Collection/AccessControls.html id397568 19 https://help.ubuntu.com/community/Samba

287

De red de Windows

5. Samba como un controlador de dominio


A pesar de que no puede actuar como un dominio de Active Directory controlador principal (PDC), un servidor Samba se puede configurar para que aparezca como un controlador de dominio Windows NT4 estilo. Una ventaja importante de este configuracin es la capacidad para centralizar las credenciales del usuario y la mquina. Samba tambin puede utilizar mltiples backends para almacenar la informacin del usuario.

5,1. Primary Domain Controller


Esta seccin cubre la configuracin de Samba como controlador de dominio primario (PDC), utilizando el valor por defecto motor smbpasswd. 1. En primer lugar, instale Samba y libpam-smbpass para sincronizar las cuentas de usuario, escribiendo lo siguiente en el una terminal:
sudo apt-get install samba libpam-smbpass

2.

A continuacin, configure Samba editando / Etc / samba / smb.conf. La seguridad modo se debe establecer en usuario, y el grupo de trabajo deben estar relacionados con su organizacin:
Ejemplo de grupo de trabajo = ... security = user

3.

En el coment: "Dominios" seccin de agregar o descomentar la siguiente (la ltima lnea ha sido divididos de acuerdo al formato de este documento):

los inicios de sesin de dominio = s de inicio de sesin path = \ \% N \% U \ perfil inicio de sesin de disco = H: logon home = \ \% N \% U secuencia de comandos de inicio de sesin = logon.cmd agregar secuencias de comandos de la mquina = sudo / usr / sbin / useradd-g Nmquinas-c Machine-d / Var / lib / samba-s / bin / false% u

Si usted no desea usar Perfiles mviles dejar el de inicio de sesin en casa y inicio de sesin de ruta opciones coment. los inicios de sesin de dominio: ofrece el servicio netlogon causando a Samba actuar como un controlador de dominio. inicio de sesin de ruta: coloca el perfil del usuario de Windows en su directorio personal. Tambin es posible configurar un [Perfiles] compartir la colocacin de todos los perfiles en un solo directorio. inicio de sesin de la unidad: especifica la ruta de directorio local. de inicio de sesin de inicio: especifica la ubicacin del directorio principal. inicio de sesin de secuencia de comandos: determina la secuencia de comandos que se ejecutan de forma local, una vez que un usuario ha iniciado sesin pulg El script necesita para ser colocado en el [Netlogon] accin. 288

De red de Windows

agregar secuencias de comandos de la mquina: un script que crear automticamente la Mquina cuenta fiduciaria necesario para una estacin de trabajo para unirse al dominio. En este ejemplo el mquinas el grupo tendr que ser creado utilizando la herramienta addgroup ver Seccin 1.2, "Agregar y eliminar usuarios" [p. 154] para ms detalles. 4. Elimine el comentario de [Homes] compartir para permitir que el de inicio de sesin en casa que se asigna:
[Homes] un comentario = Home Directories browseable = no read only = no create mask = 0700 directory mask = 0700 vlida usuarios% = S

5.

Cuando se configura como un controlador de dominio una [Netlogon] participacin tiene que ser configurado. Para permitir que el accin, quite los comentarios:
[Netlogon] un comentario de la red = servicio de inicio de sesin path = / srv / samba / netlogon guest ok = yes read only = yes share modes = no

El original netlogon ruta del recurso compartido es / Home / samba / netlogon, Pero de acuerdo con el Filesystem Hierarchy Standard (FHS), / Srv20 es la ubicacin correcta de datos especficos del sitio proporcionada por el sistema. 6. Ahora crea el netlogon directorio, y vaciar una (por ahora) logon.cmd archivo de script:

sudo mkdir-p / srv / samba / netlogon sudo touch / srv / samba / netlogon / logon.cmd

Puede acceder a todos los comandos de script de Windows normales de inicio de sesin en el logon.cmd para personalizar el entorno de cliente. 7. Reiniciar Samba para que el nuevo controlador de dominio:

reinicio sudo smbd reinicio sudo nmbd

8.

Por ltimo, hay algunos comandos adicionales necesarios para configurar los derechos correspondientes. Con raz est desactivada por defecto, con el fin de unirse a una estacin de trabajo al dominio, un grupo de sistemas se debe asignar a la carpeta Windows Administradores de dominio grupo. Uso de la utilidad neta, desde un terminal escriba:

# 20 http://www.pathname.com/fhs/pub/fhs-2.3.html SRVDATAFORSERVICESPROVIDEDBYSYSTEM

289

De red de Windows

sudo add neta groupMap ntgroup = "Administradores de dominio" unixgroup = sysadmin rid = 512 type = d

Cambiar administrador de sistemas a cualquier grupo que prefiera. Adems, el usuario utiliza para unir el dominio necesidades a ser un miembro de la administrador de sistemas grupo, as como un miembro del sistemaLa administracin grupo permite el uso de grupo. administracin sudo. Si el usuario no tiene credenciales de Samba, sin embargo, usted puede agregar a la smbpasswd utilidad, cambiar el administrador de sistemas nombre de usuario de forma adecuada:

sudo smbpasswd-un administrador de sistemas

Adems, los derechos deben ser explcitamente a la Administradores de dominio grupo para permitir que el agregar la mquina guin (Y otras funciones de administracin) para trabajar. Esto se logra mediante la ejecucin de:
net rpc los derechos de subvencin-U administrador de sistemas "EJEMPLO \ Administradores de dominio" SeMachineAccountPrivilege \ SePrintOperatorPrivilege SeAddUsersPrivilege SeDiskOperatorPrivilege \ SeRemoteShutdownPrivilege

9.

Ahora debera ser capaz de unirse a los clientes de Windows con el dominio de la misma manera como unirse a un dominio NT4 que se ejecuta en un servidor Windows.

5,2. Controlador de dominio de copia de seguridad


Con un controlador de dominio primario (PDC) en la red, lo mejor es tener un dominio de reserva Controller (BDC), as. Esto permitir a los clientes para autenticar en el caso de que el PDC se convierte en no est disponible. En la configuracin de Samba como BDC se necesita una manera de sincronizar la informacin de cuenta con el PDC. Hay son maneras de realizar esta scp, rsync, o mediante el uso de LDAP como el passdb backend. Uso de LDAP es la forma ms robusta para sincronizar informacin de la cuenta, ya que tanto los controladores de dominio puede utilizar la misma informacin en tiempo real. Sin embargo, la creacin de un servidor LDAP puede ser demasiado complicado para un pequeo nmero de usuario y de equipo. Ver Seccin 2, "Samba y LDAP "[p. 117] para ms detalles. 1. En primer lugar, instale samba y libpam smbpass. Desde un terminal escriba:

sudo apt-get install samba libpam-smbpass

2.

Ahora, edita / Etc / samba / smb.conf y descomentamos la siguiente en el [Global]:

Ejemplo de grupo de trabajo = ... security = user

3.

En el comentario Dominios comentario, o agregar:

290

De red de Windows

los inicios de sesin de dominio = s dominio principal = no

4.

Asegrese de que el usuario tiene derechos para leer los archivos en / Var / lib / samba. Por ejemplo, para permitir a los usuarios en la administracin grupo scp los archivos, escriba:
sudo chgrp-R admin / var / lib / samba

5.

A continuacin, sincronizar las cuentas de usuario, usando scp para copiar el / Var / lib / samba directorio del PDC:
sudo scp-r usuario @ pdc :/ var / lib / samba / var / lib

6.

Reemplazar Nombre de usuario con un nombre de usuario y PDC con la Direccin de host o direccin IP del el PDC real. Por ltimo, reiniciar samba:

reinicio sudo smbd reinicio sudo nmbd

Usted puede probar que el controlador de dominio de copia de seguridad est trabajando por detener el demonio de Samba en el PDC, luego tratar de acceder a un cliente de Windows unido al dominio. Otra cosa a tener en cuenta es si se ha configurado el de inicio de sesin en casa opcin como un directorio en el PDC y el PDC no est disponible, el acceso al usuario de Casa unidad tambin estar disponible. Para esta razn lo mejor es configurar el de inicio de sesin en casa a residir en un servidor de archivos independiente de la PDC y BDC.

5,3. Recursos
Para una configuracin ms detallada Samba, consulte la Samba HOWTO Collection21 La gua tambin est disponible en formato impreso22. O'Reilly Usar el sistema Samba23 es tambin una buena referencia. Captulo 424 de la coleccin de HOWTOs de Samba explica la creacin de un controlador de dominio principal. Captulo 525 de la coleccin de HOWTOs de Samba explica la creacin de un controlador de dominio de copia de seguridad. El Wiki de Ubuntu Samba 26 pginas.

21 http://samba.org/samba/docs/man/Samba-HOWTO-Collection/ 22 http://www.amazon.com/exec/obidos/tg/detail/-/0131882228 23 http://www.oreilly.com/catalog/9780596007690/ 24 http://samba.org/samba/docs/man/Samba-HOWTO-Collection/samba-pdc.html 25 http://us3.samba.org/samba/docs/man/Samba-HOWTO-Collection/samba-bdc.html 26 https://help.ubuntu.com/community/Samba

291

De red de Windows

6. Samba Integracin con Active Directory


6,1. Acceso a una comparticin Samba
Otro, el uso de Samba es integrar en una red existente de Windows. Una vez que parte de un activo Dominio de Active Directory, Samba puede proporcionar servicios de archivos e impresin para los usuarios de AD. La forma ms sencilla de unirse a un dominio de AD es el uso de la misma manera abierta. Para obtener instrucciones detalladas, vase el abierta y Gua de Del mismo modo la instalacin administracin27. Una vez que parte del dominio de Active Directory, escriba el siguiente comando en el terminal:

sudo apt-get install samba smbfs smbclient

A continuacin, modifique / Etc / samba / smb.conf cambiando:


Ejemplo de grupo de trabajo = ... security = ads realm = EXAMPLE.COM ... idmap backend = lwopen idmap uid = 50-9999999999 idmap gid = 50-9999999999

Reinicie samba para la nueva configuracin surta efecto:

reinicio sudo smbd reinicio sudo nmbd

Ahora debera ser capaz de acceder a los recursos compartidos de Samba desde un cliente Windows. Sin embargo, asegrese de dar los usuarios de AD o de acceso adecuados a los grupos el directorio compartido. Ver Seccin 4, "Asegurar un servidor Samba Servidor de archivos e impresin "[p. 283] para ms detalles.

6,2. El acceso a un recurso compartido de Windows


Ahora que el servidor Samba es parte del dominio de Active Directory, puede acceder a cualquier servidor de Windows acciones: Para montar un recurso compartido de archivos de Windows escriba lo siguiente en una terminal:
mount.cifs / / fs01.example.com/share punto_montaje

Tambin es posible acceder a recursos compartidos en los equipos que no forman parte de un dominio de AD, pero un nombre de usuario y contrasea tendr que ser proporcionado.
27 http://www.likewise.com/resources/documentation_library/manuals/open/likewise-open-guide.html

292

De red de Windows

Para montar el recurso compartido en el lugar de arranque de una entrada en / Etc / fstab, Por ejemplo:
/ / 192.168.0.5/share / mnt / windows cifs auto, username = Steve, password = secreto, rw 0 0

Otra forma de copiar archivos desde un servidor Windows es utilizar la herramienta smbclient. Para listar los archivos en un recurso compartido de Windows:
smbclient / / fs01.example.com/share-k-c "ls"

Para copiar un archivo desde el recurso compartido, escriba:


smbclient / / fs01.example.com/share-k-c "get archivo.txt"

Esto copiar la archivo.txt en el directorio actual. Y para copiar un archivo a la participacin:

smbclient / / fs01.example.com/share-k-c "poner / etc / hosts los ejrcitos"

Esto copiar la / Etc / hosts a / / Fs01.example.com/share/hosts. El -C opcin utilizada anteriormente le permite ejecutar el comando smbclient todos a la vez. Esto es til para la escritura y las operaciones de menores de archivos. Para entrar en el smb: \> del sistema, un cliente de FTP como sistema en el que puede ejecutar el archivo normal y comandos de directorio, ejecute simplemente:

smbclient / / fs01.example.com/share-k

Vuelva a colocar todas las instancias de fs01.example.com/share, / / 192.168.0.5/share, contrasea secreta =, y archivo.txt con su servidor de IP, nombre de host, username = Steve, compartir, nombre de archivo y real de un nombre de usuario y una contrasea con derechos a la participacin.

6,3. Recursos
Para obtener ms opciones smbclient consulte la pgina: el hombre smbclient, tambin disponible en lnea28. Los mount.cifs La pgina man29 es tambin til para obtener informacin ms detallada. La Wiki de Ubuntu Samba 30 pginas.

28 http://manpages.ubuntu.com/manpages/precise/en/man1/smbclient.1.html 29 http://manpages.ubuntu.com/manpages/precise/en/man8/mount.cifs.8.html 30 https://help.ubuntu.com/community/Samba

293

Captulo 19. Copias de seguridad hacer copias de seguridad de una instalacin de Ubuntu. Lo ms importante acerca de las Hay muchas maneras de
copias de seguridad es desarrollar un un plan de respaldo que consiste en lo que a la reserva, donde para realizar copias de seguridad, y cmo restaurarla. En las secciones siguientes se describen diversas formas de realizar estas tareas.

294

Copias de seguridad

1. Shell Scripts
Una de las maneras ms sencillas de copia de seguridad de un sistema que se utiliza un script de shell. Por ejemplo, una secuencia de comandos se de copia de seguridad, y pasar esos directorios como argumentos de la utilidad tar, para configurar los directorios puede utilizar que crea un archivo. El archivo histrico se puede mover o copiar a otra ubicacin. La archivo tambin se puede crear en un sistema de archivos remoto, como un NFS montar.

La utilidad tar crea un archivo de almacenamiento de archivos o directorios. tar tambin puede filtrar los archivos a travs de herramientas de compresin, lo que reduce el tamao del archivo de almacenamiento.

1,1. Simple script de shell


El siguiente script de shell usa tar para crear un archivo en un sistema de archivos NFS montado de forma remota. El nombre del archivo se determina utilizando los servicios adicionales de lnea de comandos.

#! / Bin / sh # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # Copia de seguridad en NFS guin de montaje. # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # Qu hacer copias de seguridad. backup_files = "/ home / var / spool / mail / etc / root / boot / opt"

# Dnde copia de seguridad. dest = "/ mnt / backup"

# Creacin de nombre de archivo. da = $ (date +% A) hostname = $ (hostname-s) archive_file = "$ $ hostname-day.tgz"

# Imprime el mensaje de estado de inicio. echo "Copia de seguridad de $ backup_files a $ dest / $ archive_file" fecha eco # Copia de seguridad de los archivos utilizando tar. tar CZF $ dest / $ $ archive_file backup_files # Imprime el mensaje de estado final. eco echo "Copia de seguridad terminada" fecha # Lista larga de archivos en $ dest para comprobar los tamaos de archivo. ls-lh $ dest

295

Copias de seguridad $ Backup_files: una lista variable de los directorios que desea respaldar. La lista debe ser personalizado para adaptarse a sus necesidades. $ Da: una variable que contiene el da de la semana (lunes, martes, mircoles, etc.) Esto se utiliza para crear un archivo por cada da de la semana, dando un historial de copia de seguridad de siete das. Hay otras formas de lograr esto incluyendo el uso de la utilidad de la fecha. $ Nombre de host: variable que contiene el corto nombre de host del sistema. Usando el nombre de host en el archivo de nombre de archivo que da la opcin de colocar archivos diarios de mltiples sistemas en el mismo directorio. $ Archive_file: el nombre del archivo completo. $ Dest: destino del archivo de almacenamiento. El directorio debe ser creado y en este caso montado antes de ejecutar el script. Ver Seccin 2, "Network File System (NFS)" [p. 226] para detalles de la utilizacin NFS. mensajes de estado: Mensajes opcional en la consola con la utilidad del eco. tar CZF $ dest / $ $ archive_file backup_files: el comando tar para crear el archivo histrico. c: crea un archivo. z: filtrar el archivo a travs de la utilidad gzip comprimir el archivo. f: de salida en un archivo histrico. Contrario, la salida de alquitrn se enviar a STDOUT. ls-lh $ dest: sentencia opcional que imprime una -L larga lista de -H formato legible por humanos del destino directorio. Esto es til para un chequeo rpido de tamao de archivo del archivo de almacenamiento. Esta comprobacin no debe sustituir a probar el archivo de almacenamiento. Este es un ejemplo sencillo de un script de shell de copia de seguridad, sin embargo hay muchas opciones que pueden ser incluido en una secuencia de comandos. Ver Seccin 1.4, "Referencias" [p. 298] de enlaces a recursos que proporcionan ms a fondo la informacin de secuencias de comandos de shell.

1,2. Ejecucin de la secuencia de comandos


1.2.1. Ejecutar desde una Terminal La forma ms sencilla de ejecutar el script de arriba es para copiar y pegar el contenido en un archivo. backup.sh por ejemplo. Entonces, desde una terminal:

sudo backup.sh fiesta

Esta es una gran manera de probar el script para asegurarse de que todo funciona como se esperaba. 1.2.2. Ejecutando con cron La utilidad cron se pueden utilizar para automatizar la ejecucin del script. El demonio cron permite la ejecucin de scripts o comandos, en una hora y fecha. cron se configura a travs de las entradas de una crontab archivo. crontab ficheros se dividen en campos:

296

Copias de seguridad

# M h dom lun Dow

comando

m: minutos el comando se ejecuta en, entre 0 y 59. h: horas el comando se ejecuta en, entre 0 y 23. dom: da del mes el comando se ejecuta en. mon: del mes se ejecuta el comando de entre 1 y 12. Dow: El da de la semana se ejecuta el comando en, entre 0 y 7. Domingo puede ser especificado por utilizando el 0 y 7, ambos valores son vlidos. comando: el comando a ejecutar. Para agregar o cambiar las entradas en una crontab presentar el comando crontab-e debe ser utilizado. Asimismo, los contenidos de un crontab archivo se puede ver utilizando el comando crontab-l. Para ejecutar el script backup.sh menciona arriba, usando cron. Escriba lo siguiente en una terminal:

sudo crontab-e

Utilizar sudo con el comando crontab-e edita la raz crontab del usuario. Esto es necesario si va a realizar copias de seguridad de directorios slo el usuario root tiene acceso. Agregue la siguiente entrada a la crontab archivo:

# M h dom lun Dow

comando

0 0 *** bash / usr / local / bin / backup.sh

El guin backup.sh ahora se ejecutar todos los das a las 12:00 am. El guin backup.sh tendr que ser copiado en el / Usr / local / bin / directorio para que esta entrada se ejecute correctamente. El script puede residir en cualquier parte del sistema de archivos, simplemente cambiar la ruta del script adecuadamente. Para obtener ms en profundidad las opciones de crontab vea Seccin 1.4, "Referencias" [p. 298].

1,3. Restauracin del Archivo


Una vez que un archivo ha sido creado, es importante probar el archivo. El archivo puede ser probada por lista de los archivos que contiene, sino la mejor prueba es que restaurar un archivo desde el archivo. Para ver un listado de los contenidos del archivo. Desde un terminal de sistema, escriba:
tar-tzvf / mnt / backup / host Monday.tgz

Para restaurar un archivo desde el archivo en un directorio diferente escriba:

tar-xzvf / mnt / backup / host Monday.tgz-C / tmp etc / hosts

297

Copias de seguridad La -C opcin de tar redirige los archivos extrados en el directorio especificado. El resultado del ejemplo extraer el / Etc / hosts presentar a la / Tmp / etc / hosts. tar recrea la estructura de directorios que contiene. Tambin, observe el lder "/" se deja fuera de la ruta del archivo a restaurar. Para restaurar todos los archivos en el archivo escriba lo siguiente:

cd / sudo tar-xzvf / mnt / backup / host Monday.tgz

Esto sobrescribir los archivos actualmente en el sistema de archivos.

1,4. Referencias
Para ms informacin sobre secuencias de comandos shell ver el Advanced Bash-Scripting Guide1 El libro Aprendiendo Programacin Shell en 24 horas2 est disponible en lnea y un gran recurso de secuencias de comandos shell. El CronHowto pgina wiki3 contiene informacin sobre las opciones avanzadas de cron. Consulte el GNU tar Manual4 para ms opciones de alquitrn. La Wikipedia Esquema de rotacin de copia de seguridad5 El artculo contiene informacin sobre la rotacin de copia de seguridad de
otros

esquemas. La secuencia de comandos de shell usa tar para crear el archivo, pero hay muchas otras utilidades de lnea de comandos que puede ser utilizado. Por ejemplo: cpio6: se utiliza para copiar archivos desde y hacia archivos. dd7: parte del paquete coreutils. Una utilidad de bajo nivel que puede copiar datos de un formato a otro. rsnapshot8: un sistema de archivo de la utilidad instantnea que permite crear copias de un sistema de archivos. rsync9: una herramienta flexible que permite crear copias incrementales de archivos.

1 http://tldp.org/LDP/abs/html/ 2 http://safari.samspublishing.com/0672323583 3 https://help.ubuntu.com/community/CronHowto 4 http://www.gnu.org/software/tar/manual/index.html 5 http://en.wikipedia.org/wiki/Backup_rotation_scheme 6 http://www.gnu.org/software/cpio/ 7 http://www.gnu.org/software/coreutils/ 8 http://www.rsnapshot.org/~~V 9 http://www.samba.org/ftp/rsync/rsync.html

298

Copias de seguridad

2. Archivo de rotacin
El script de shell en el Seccin 1, "Secuencias de comandos de Shell" [p. 295] slo permite siete archivos diferentes. Paradatos no cambian a menudo, esto puede ser suficiente. Si el servidor tiene una gran cantidad de datos, un servidor cuyos una esquema de rotacin ms compleja se debe utilizar.

2,1. Rotacin de Archivos NFS


En esta seccin, el script de shell se ha modificado ligeramente para implantar una rotacin de su abuelo-padre-hijo plan (mensual, semanal, diaria): La rotacin va a hacer un diario copia de seguridad de domingo a viernes. El sbado, un semanal se hace copia de seguridad que le da cuatro copias de seguridad semanales al mes. El mensual copia de seguridad se realiza en el primer da del mes girar dos copias de seguridad mensuales sobre la base de si la meses es par o impar. Aqu est el nuevo guin:

#! / Bin / bash # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # Copia de seguridad en NFS guin de montaje con # Abuelo-padre-hijo de la rotacin. # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # Qu hacer copias de seguridad. backup_files = "/ home / var / spool / mail / etc / root / boot / opt"

# Dnde copia de seguridad. dest = "/ mnt / backup"

# Define variables para el nombre del archivo. da = $ (date +% A) hostname = $ (hostname-s) # Buscar que la semana del mes es 4.1. day_num = $ (date +% d) if (($ day_num <= 7)), a continuacin, week_file = "$ host-week1.tgz" elif (($ day_num> 7 && $ day_num <= 14)), a continuacin, week_file = "$ host-week2.tgz" elif (($ day_num> 14 && $ day_num <= 21)), a continuacin, week_file = "$ host-week3.tgz" elif (($ day_num> 21 && $ day_num <32)), a continuacin, week_file = "$ host-week4.tgz" fi

299

Copias de seguridad
# Encuentra si el mes es par o impar. month_num = $ (date +% m) mes = $ (expr $ month_num% 2) if [$ mes-eq 0], y luego month_file = "$ host-month2.tgz" ms month_file = "$ host-month1.tgz" fi # Creacin de nombre de archivo. if [$ day_num == 1], y luego archive_file = $ month_file elif [$ day = "Sbado"!], y luego archive_file = "$ $ hostname-day.tgz" ms archive_file = $ week_file fi

# Imprime el mensaje de estado de inicio. echo "Copia de seguridad de $ backup_files a $ dest / $ archive_file" fecha eco # Copia de seguridad de los archivos utilizando tar. tar CZF $ dest / $ $ archive_file backup_files

# Imprime el mensaje de estado final. eco echo "Copia de seguridad terminada" fecha # Lista larga de archivos en $ dest para comprobar los tamaos de archivo. ls-lh $ dest /

La secuencia de comandos se pueden ejecutar con los mismos mtodos que en el Seccin 1.2, "Ejecucin de la secuencia de comandos" [p. 296]. Es una buena prctica para tomar los medios de copia de seguridad fuera de sitio en caso de un desastre. En el ejemplo del script de shell copia de seguridad de los medios de comunicacin es otro servidor que proporciona una comparticin NFS. Con toda probabilidad, teniendo que el servidor NFS otro lugar no sera prctico. Dependiendo de la velocidad de conexin puede ser una opcin para copie el archivo en un enlace WAN a un servidor en otro lugar. Otra opcin es copiar el archivo en un disco duro externo que puede ser tomado fuera de sitio. Dado que el precio de los discos duros externos continan disminuyendo, puede ser rentable el uso de dos unidades para cada nivel de archivo. Esto le permite tener un disco duro externo conectado al servidor de copia de seguridad y una en otra ubicacin.

2,2. Unidades de cinta


Una unidad de cinta conectada al servidor se puede utilizar en lugar de un recurso compartido NFS. Usando una unidad de cinta simplifica rotacin de archivos, y hace que la toma de los medios fuera del sitio ms fcil as. 300

Copias de seguridad Cuando se utiliza una unidad de cinta, las porciones de nombre de archivo de la secuencia de comandos no son necesarios porque los datos se envan directamente al dispositivo de cinta. Algunos comandos para manipular la cinta se necesitan. Esto se logra utilizando toneladas, un control de cinta magntica parte de la utilidad del paquete cpio. Aqu est el script de shell modificado para utilizar una unidad de cinta:
#! / Bin / bash # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # Copia de seguridad de secuencia de comandos de la unidad de cinta. # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # Qu hacer copias de seguridad. backup_files = "/ home / var / spool / mail / etc / root / boot / opt"

# Dnde copia de seguridad. dest = "/ dev/st0"

# Imprime el mensaje de estado de inicio. echo "Copia de seguridad de $ backup_files a $ dest" fecha eco # Asegrese de que la cinta se rebobina. mt-f $ dest rebobinado

# Copia de seguridad de los archivos utilizando tar. tar CZF $ dest $ backup_files # Rebobinar y expulsar la cinta. mt-f $ dest rewoffl # Imprime el mensaje de estado final. eco echo "Copia de seguridad terminada" fecha

El nombre del dispositivo por defecto para una unidad de cinta SCSI es / Dev/st0. Utilice la ruta de dispositivo adecuado para su sistema. Restauracin a partir de una unidad de cinta es bsicamente la misma que la restauracin de un archivo. Basta con rebobinar la cinta y utilizar la ruta de dispositivo en lugar de una ruta de archivo. Por ejemplo, para restaurar el / Etc / hosts presentar a los ejrcitos: / la / Tmp / etc

mt-f / rebobinado dev/st0 tar-xzf / dev/st0-C / tmp etc / hosts

301

Copias de seguridad

3. Bacula
Bacula es un programa de copia de seguridad que le permite realizar copias de seguridad, restaurar y verificar los datos en la red. Bacula para Linux, Windows y Mac OS X - por lo que es una red multi-plataforma Hay clientes de solucin de ancho.

3,1. Informacin general


Bacula se compone de varios componentes y servicios utilizados para administrar los archivos de copia de seguridad y ubicaciones de copia de seguridad: Bacula Director: un servicio que controla todas las copias de seguridad, restaurar, verificar, y las operaciones de archivo. Consola de Bacula: una aplicacin que permite la comunicacin con el Director. Hay tres versiones de la consola: Texto de comandos basado en la versin de lnea. Gnome basada en GTK + Interfaz grfica de usuario (GUI) de la interfaz. wxWidgets interfaz grfica de usuario. Bacula File: tambin conocido como el programa cliente de Bacula. Esta aplicacin se instala en las mquinas para una copia de seguridad, y es responsable de los datos solicitados por el Director. Bacula Storage: los programas que llevan a cabo el almacenamiento y recuperacin de datos a los medios fsicos. Catlogo de Bacula: es responsable de mantener los ndices de archivos y bases de datos de volumen para todos los archivos una copia de seguridad, lo que permite una rpida localizacin y restauracin de archivos comprimidos. El Catlogo soporta tres diferentes bases de datos MySQL, PostgreSQL y SQLite. Bacula Monitor: permite la supervisin del Director, los demonios de archivos, y los demonios de almacenamiento. Actualmente, el monitor slo est disponible como una aplicacin GTK + GUI. Estos servicios y aplicaciones pueden ejecutarse en mltiples servidores y clientes, o se puede instalar en una mquina, si la copia de seguridad de un solo disco o volumen.

3,2. Instalacin
Si se utiliza MySQL o PostgreSQL como base de datos, usted ya debe contar con los servicios disponible. Bacula no los instala por ti. Hay varios paquetes que contienen los diferentes componentes de Bacula. Para instalar Bacula, desde un terminal introduzca:

sudo apt-get install bacula

Por defecto la instalacin del paquete bacula utilizar una base de datos MySQL para el Catlogo. Si desea usar SQLite o PostgreSQL, para el Catlogo, instale bacula-director-sqlite3 o bacula-director-pgsql respectivamente.

302

Copias de seguridad Durante el proceso de instalacin se le pedir que proporcione las credenciales de la base de datos administrador y la bacula base de datos propietario. El administrador de base de datos tendr que tener los derechos adecuados para crear una base de datos, consulte Seccin 1, "MySQL" [p. 206] para ms informacin.

3,3. Configuracin
Bacula archivos de configuracin se basa en el formato recursos que comprende de directivas rodeado por "{}" Llaves. Cada componente de Bacula tiene un archivo individual en el / Etc / bacula directorio. Los diversos componentes de Bacula deben autorizar el uno al otro. Esto se logra utilizando la contrasea Directiva. Por ejemplo, el Almacenamiento recurso clave en la / Etc/bacula/baculadir.conf archivo debe coincidir con el Director de los recursos clave en / Etc / bacula / bacula-sd.conf.

Por defecto, el trabajo de copia de seguridad denominado Cliente1 est configurado para archivar el catlogo de Bacula. Si usted planea en utilizando el servidor de copia de seguridad de ms de un cliente debe cambiar el nombre de este trabajo a algo ms descriptivo. Para cambiar los nombres de edicin / Etc / bacula / bacula-dir.conf:
# # Definir la principal tarea de copia de seguridad nocturna de ahorro # Por defecto, este trabajo ser una copia de seguridad en Job { el disco en Name = "BackupServer" JobDefs = "DefaultJob" Escribir Bootstrap = "/ var/lib/bacula/Client1.bsr" }

El ejemplo anterior cambia el nombre de trabajo que BackupServer juego de acogida de la mquina nombre. Vuelva a colocar "BackupServer" con su nombre descriptivo apropiado nombre de host, o de otro tipo. La Consola se puede utilizar para consultar el Director acerca de los trabajos, pero para utilizar la consola con un no root usuario, el usuario tiene que estar en el bacula grupo. Para aadir un usuario al grupo bacula introduzca lo siguiente desde un terminal:

$ sudo adduser nombre de usuario bacula

Reemplazar $ Nombre de usuario con el nombre de usuario real. Adems, si va a agregar el usuario actual a la grupo que debe salir y volver en el de los nuevos permisos para tener efecto.

3,4. Localhost de copia de seguridad


En esta seccin se describe cmo hacer copia de seguridad de los directorios especificados en un solo host a una unidad de cinta local. En primer lugar, el Almacenamiento dispositivo debe estar configurado. Editar / Etc / bacula / bacula-sd.conf aadir:
Dispositivo { Name = "la unidad de cinta" Tipo de dispositivo de cinta =

303

Copias de seguridad
Tipo de papel = DDS-4 Archivo Device = / dev/st0 Finales del hardware de medio = no; AutomaticMount = yes; AlwaysOpen = S; RemovableMedia = yes; RandomAccess = no; Alerta Comando = "sh-c 'tapeinfo-f% c | grep TapeAlert'" } # Cuando el dispositivo se abri, lo ley

El ejemplo es para un DDS-4 la unidad de cinta. Ajuste el "Tipo de papel" y "Dispositivo de Archivo" para que coincida con su hardware. Tambin puede descomentar uno de los otros ejemplos en el archivo. Despus de la edicin / Etc / bacula / bacula-sd.conf el demonio de almacenamiento tendr que ser reiniciado:
sudo / etc / init.d / bacula-sd reiniciar

A continuacin, aadir un Almacenamiento recursos en / Etc / bacula / bacula-dir.conf para usar el nuevo dispositivo:
# Definicin de dispositivo de "unidad de cinta" de almacenamiento Almacenamiento { Nombre = tapedrive # No utilizar "localhost" aqu Direccin = backupserver SDPort = 9103 Password = "Cv70F6pf1t6pBopT4vQOnigDrR0v3LT3Cgkiyjc" Device = "cinta" Tipo de soporte de cinta = }

# N.B. Use un nombre completo aqu

La Direccin Directiva debe ser el nombre de dominio completo (FQDN) del servidor. Cambiar backupserver al nombre de host real. Adems, asegrese de que el Contrasea Directiva coincide con la cadena de contrasea en el /
Etc/bacula/baculasd.conf.

Crear un nuevo Conjunto de archivos, que va a determinar qu directorios de copia de seguridad, aadiendo:
# LocalhostBacup conjunto de archivos. Conjunto de archivos { Name = "LocalhostFiles" Incluya { Opciones { signature = MD5 la compresin GZIP = } = El archivo / etc File = / home }

304

Copias de seguridad
}

Este Conjunto de archivos se copia de seguridad del / Etc y / Home directorios. La Opciones directivas de recursos configurar el conjunto de archivos para crear una firma MD5 para cada archivo de copia de seguridad, y para comprimir los archivos a travs de GZIP. A continuacin, cree un nuevo Programar para el trabajo de copia de seguridad:
# LocalhostBackup Calendario - diario. Horario { Name = "LocalhostDaily" Ejecutar todos los das = completo a las 00:01 }

La tarea se ejecutar todos los das a las 00:01 oa las 12:01 am. Hay muchas otras opciones de programacin disponible. Por ltimo crear la Trabajo:

# Copia de seguridad de host local. Job { Name = "LocalhostBackup" JobDefs = "DefaultJob" Activado = s = Nivel completo Conjunto de archivos = "LocalhostFiles" Horario = "LocalhostDaily" Almacenamiento = tapedrive Escribir Bootstrap = "/ var / lib / bacula / LocalhostBackup.bsr" }

El trabajo llevar a cabo un Completo copia de seguridad de todos los das a la unidad de cinta. Cada cinta utilizada deber tener un Etiqueta. Si la cinta actual no tiene una etiqueta Bacula enviar un correo electrnico que le permite saber. Para etiquetar una cinta con la Consola de entrar en la siguiente en un terminal:
bconsole

En el indicador de Bacula consola escriba:

etiqueta

A continuacin se le pedir la Almacenamiento de los recursos:

Catlogo selecciona automticamente: MyCatalog Utilizando el catlogo "MyCatalog" Los recursos de almacenamiento definidos son: 1: Archivo 2: tapedrive Seleccione los recursos de almacenamiento (1-2): 2

305

Copias de seguridad

Introduzca el nuevo Volumen Nombre:

Escriba el nombre nuevo volumen: Domingo definidos: Piscinas 1: Por defecto 2: Scratch

Reemplazar Domingo con la etiqueta deseada. A continuacin, seleccione el Piscina:

Seleccione el grupo (1-2): 1 Conexin con el demonio de almacenamiento tapedrive en backupserver: 9103 ... El envo de comandos etiqueta de volumen "Domingo" ranura 0 ...

Felicidades, usted ha configurado ahora Bacula una copia de seguridad de la mquina local a una unidad de cinta adhesiva.

3,5. Recursos
Para obtener ms Bacula opciones de configuracin se refieren a la Manual del usuario de Bacula10 El Bacula Pgina de inicio11 contiene las ltimas noticias y desarrollos de Bacula. Asimismo, consulte la Bacula Wiki de Ubuntu12 pginas.

10 http://www.bacula.org/en/rel-manual/index.html 11 http://www.bacula.org/~~V 12 https://help.ubuntu.com/community/Bacula

306

Captulo 20. Virtualizacin


La virtualizacin est siendo adoptada en muchos entornos y situaciones diferentes. Si usted es un desarrollador, virtualizacin le puede proporcionar un ambiente contenido en el que con seguridad se puede hacer casi cualquier tipo de desarrollo seguro de ensuciar el entorno de trabajo principal. Si usted es un sistemas de administrador, puede utilizar la virtualizacin para separar ms fcilmente sus servicios y moverlos basado en la demanda. La tecnologa de virtualizacin apoyado por defecto en Ubuntu es KVM, una tecnologa que aprovecha de las extensiones de virtualizacin incorporadas en el hardware de Intel y AMD. Para el hardware sin virtualizacin extensiones de Xen y Qemu son soluciones populares.

307

Virtualizacin

1. libvirt
La biblioteca libvirt se utiliza para interactuar con diferentes tecnologas de virtualizacin. Antes de empezar con libvirt lo mejor es asegurarse de que su hardware es compatible con las extensiones de virtualizacin necesarios para KVM. Escriba lo siguiente en una terminal:

kvm-ok

Un mensaje ser impreso que le informa si su CPU hace o no soporte de hardware virtualizacin. En la mayora de ordenador cuyo procesador es compatible con la virtualizacin, es necesario activar un opcin en la BIOS para activarla.

1,1. Redes virtuales


Hay algunas maneras diferentes para permitir un acceso a la mquina virtual a la red externa. El valor por defecto configuracin de la red virtual es usermode la creacin de redes, que utiliza el protocolo SLIRP y el trfico es NATeado a travs de la interfaz de host a la red exterior.

Para habilitar los servidores externos para acceder directamente a los servicios en las mquinas virtuales de un puente necesidades para ser configurado. Esto permite que las interfaces virtuales para conectarse a la red exterior a travs de la fsica interfaz, haciendo que aparezcan como anfitriones normales al resto de la red. Para obtener informacin sobre un puente de ver Seccin 1.4, "Puente" [p. 39].

1,2. Instalacin
Para instalar los paquetes necesarios, de una terminal escriba:

sudo apt-get install kvm libvirt-bin

Despus de instalar libvirt-bin, el usuario utiliza para administrar mquinas virtuales tendr que ser aadido a la libvirtd grupo. Si lo hace, concede al usuario el acceso a las opciones avanzadas de red. En una terminal escriba:

sudo adduser $ USER libvirtd

Si el usuario elige es el usuario actual, tendr que salir y volver a entrar para el nuevo grupo pertenencia a surtir efecto. Ahora est listo para instalar un Invitado el sistema operativo. Instalacin de una mquina virtual sigue el mismo procesar como instalar el sistema operativo directamente en el hardware. Usted necesita una manera de automatizar la instalacin, o un teclado y el monitor tendr que ser conectado a la mquina fsica.

308

Virtualizacin

En el caso de las mquinas virtuales de una interfaz grfica de usuario (GUI) es anlogo al uso de una fsica teclado y el ratn. En lugar de instalar una interfaz grfica de usuario de la aplicacin virt-viewer se puede utilizar para conectar a la consola de una mquina virtual usando VNC. Ver Seccin 1.6, "Visor Virtual Machine" [p. 311] para ms informacin. Hay varias maneras de automatizar el proceso de instalacin de Ubuntu, por ejemplo usando preseeds, kickstart, etc, consultar el Gua de instalacin de Ubuntu1 para ms detalles. Sin embargo, otra forma de instalar una mquina virtual de Ubuntu es el uso de ubuntu-vm-builder. ubuntu-vm-builder le permite configurar particiones avanzadas, ejecutar instalacin personalizada post-scripts, etc Para ms detalles ver Seccin 2, "JeOS y vmbuilder" [p. 313]

1,3. virt-install
virt-install es parte del paquete de virtinst. Para instalarlo, en una terminal escriba:

sudo apt-get install virtinst

Hay varias opciones disponibles cuando se utiliza virt-install. Por ejemplo:

sudo virt-install-n-r web_devel 256 \ - Ruta de disco = / var / lib / libvirt images / web_devel.img, autobs = virtio, size = 4-c \ jeos.iso - acelerar - la red de la red = por defecto, el modelo de virtio = \ - Connect = qemu :/ / / system - vnc - noautoconsole-v

-N web_devel: el nombre de la nueva mquina virtual ser web_devel en este ejemplo. -R 256: especifica la cantidad de memoria de la mquina virtual utilizar en megabytes. - El disco path = / var / lib / libvirt images / web_devel.img, size = 4: indica la ruta de acceso al disco virtual que puede ser un archivo, particin o volumen lgico. En este ejemplo un archivo denominado web_devel.img en el directorio / var / lib / libvirt / images /, con un tamao de 4 GB, y el uso de virtio para el bus de disco. -C jeos.iso: presentar para ser utilizado como un virtual CD-ROM. El archivo puede ser un archivo ISO o la ruta de acceso a la dispositivo de CD-ROM de acogida. - Acelerar: permite a las tecnologas del ncleo de aceleracin. - La red proporciona los detalles relacionados con la interfaz de red de la VM. Aqu el defecto red se utiliza, y el modelo de interfaz est configurada para virtio. - VNC: exporta la consola virtual del invitado mediante VNC. - Noautoconsole: No se conectar automticamente a la consola de la mquina virtual. -V: crea un husped totalmente virtualizado. Despus de lanzar virt-install se puede conectar a la consola de la mquina virtual de forma local mediante una interfaz grfica de usuario o con la utilidad virt-viewer.
Https://help.ubuntu.com/12.04/installation-guide/ 1

309

Virtualizacin

1,4. virt-clone
La aplicacin virt-clone se puede usar para copiar una mquina virtual a otro. Por ejemplo:

sudo virt-clone-o-n web_devel database_devel-f / ruta / a / database_devel.img \ - Connect = qemu :/ / / sistema de

-O: mquina virtual original. -N: nombre de la nueva mquina virtual. -F: ruta de acceso al archivo, volumen lgico o particin para ser utilizado por la nueva mquina virtual. - Conectar: especifica el hipervisor para conectarse a. Asimismo, el uso -D o - Debug opcin para ayudar a solucionar problemas con virt-clone. Reemplazar web_devel y database_devel con las correspondientes nombres de las mquinas virtuales.

1,5. Virtual Machine Management


1.5.1. virsh Hay varias utilidades disponibles para gestionar mquinas virtuales y libvirt. La utilidad virsh puede ser utilizar desde la lnea de comandos. Algunos ejemplos: Para una lista de mquinas virtuales en ejecucin:
virsh-c qemu :/ / / sistema de listas

Para iniciar una mquina virtual:

virsh-c qemu :/ / / sistema de arranque web_devel

Del mismo modo, al iniciar una mquina virtual en el arranque:


virsh-c qemu :/ / / sistema de arranque automtico web_devel

Vuelva a arrancar una mquina virtual con:

virsh-c qemu :/ / / reiniciar el sistema web_devel

El estado mquinas virtuales de se pueden guardar en un archivo con el fin de ser restaurado ms tarde. El siguiente guardar el estado de la mquina virtual en un archivo con el nombre de acuerdo a la fecha:

virsh-c qemu :/ / / sistema de ahorro de web_devel web_devel-022708.state

Una vez guardada la mquina virtual ya no se est ejecutando. Una mquina virtual guardado puede ser restaurada utilizando: 310

Virtualizacin

virsh-c qemu :/ / / restauracin del sistema web_devel-022708.state

Para apagar una mquina virtual haga:

virsh-c qemu :/ / / apagado del sistema web_devel

Un dispositivo de CD-ROM se puede montar en una mquina virtual mediante la introduccin de:
virsh-c qemu :/ / / sistema de conectar el disco web_devel / dev / cdrom / media / cdrom

En los ejemplos anteriores reemplazar web_devel con el nombre de la mquina virtual correspondiente, y web_devel-022708.state con un nombre de archivo descriptivo. 1.5.2. Virtual Machine Manager El paquete virt-manager contiene una utilidad grfica para administrar mquinas virtuales locales y remotos. Para instalar virt-manager escriba:

sudo apt-get install virt-manager

Desde virt-manager requiere una interfaz de usuario grfica (GUI) el medio ambiente, se recomienda ser instalado en una estacin de trabajo o una mquina de ensayo en lugar de un servidor de produccin. Para conectarse a la configuracin servicio de libvirt escriba:

virt-manager-c qemu :/ / / sistema de

Puede conectarse al servicio de libvirt que se ejecuta en otro host, escriba lo siguiente en una terminal del sistema:

virt-manager-c qemu + ssh :/ / virtnode1.mydomain.com/system

En el ejemplo anterior se supone que la conectividad SSH entre el sistema de gestin virtnode1.mydomain.com y ya se ha configurado, y utiliza claves SSH para autenticacin. SSH claves son necesarias porque libvirt enva la solicitud de contrasea a otra proceso. Para obtener ms informacin sobre la configuracin de SSH ver Seccin 1: "OpenSSH Server" [p. 80]

1,6. Visor Virtual Machine


La aplicacin virt-viewer le permite conectarse a la consola de la mquina virtual. virt-viewer hace requieren una interfaz de usuario grfica (GUI) para interactuar con la mquina virtual. Para instalar virt-viewer desde una terminal escriba:

sudo apt-get install virt-viewer

311

Virtualizacin

Una vez que una mquina virtual est instalado y funcionando se puede conectar a la consola de la mquina virtual de mediante:

virt-viewer-c qemu :/ / / sistema de web_devel

Al igual que en virt-manager, virt-viewer puede conectarse a un host remoto a travs de SSH con autenticacin de clave, as:
virt-viewer-c qemu + ssh :/ / web_devel virtnode1.mydomain.com/system

Asegrese de reemplazar web_devel con el nombre de la mquina virtual correspondiente. Si est configurado para utilizar un puente interfaz de red tambin se puede configurar el acceso SSH a la mquina virtual. Ver Seccin 1: "OpenSSH Server" [p. 80] y Seccin 1.4, "Puente" [p. 39] para ms detalles.

1,7. Recursos
Consulte el KVM2 tu pgina de inicio para ms detalles. Para ms informacin sobre libvirt ver el pgina de inicio libvirt3 El Virtual Machine Manager4 sitio tiene ms informacin sobre el desarrollo de virt-manager. Adems, pasar por la # Ubuntu-virt Canal de IRC en freenode5 para discutir la tecnologa de virtualizacin en el Ubuntu. Otro buen recurso es la Wiki de Ubuntu KVM6 pgina.

2 http://kvm.qumranet.com/kvmwiki 3 http://libvirt.org/~~V 4 http://virt-manager.et.redhat.com/ 5 http://freenode.net/ 6 https://help.ubuntu.com/community/KVM

312

Virtualizacin

2. JeOS y vmbuilder
2,1. Introduccin
2.1.1. Qu es JeOS Ubuntu JeOS (Pronunciado "Juice") es una variante eficaz del sistema operativo Ubuntu Server, configurado especficamente para dispositivos virtuales. Ya no est disponible como un CD-ROM ISO para su descarga, pero slo como una opcin ya sea: Durante la instalacin de la ISO Server Edition (presionando F4 en la primera pantalla le permitir elegir "Instalacin mnima", que es la seleccin de paquetes equivalentes a JeOS). O que se construirn con vmbuilder de Ubuntu, que se describe aqu. JeOS es una instalacin especializada de Ubuntu Server Edition con un ncleo ajustado que slo contiene el elementos bsicos necesarios para ejecutar en un entorno virtualizado. Ubuntu JeOS ha sido adaptado para aprovechar las tecnologas clave de rendimiento en la ltima productos de virtualizacin de VMware. Esta combinacin de tamao reducido y un rendimiento optimizado asegura que Ubuntu JeOS Edition proporciona un uso altamente eficiente de los recursos del servidor en el virtual grande despliegues. Sin controladores innecesarios, y slo los paquetes requeridos mnimos, los ISVs pueden configurar su apoyo operativo tal y como requieren. Ellos tienen la tranquilidad de saber que las actualizaciones, ya sea para la seguridad o por razones de mejora, se limitar a la cantidad mnima de lo que se requiere en su especfica medio ambiente. A su vez, los usuarios que utilicen los equipos virtuales creados por encima de JeOS tendr que pasar pormenor nmero de actualizaciones y mantenimiento por lo tanto, menos de lo que han tenido que con un un completo estndar la instalacin de un servidor. 2.1.2. Qu es vmbuilder Con vmbuilder, no hay necesidad de descargar una ISO de JeOS ms. vmbuilder obtendr los diversos empaquetar y construir una mquina virtual adaptada a sus necesidades en un minuto. vmbuilder es una secuencia de comandos que automatiza el proceso de crear una mquina virtual lista para su uso basado en Linux. El apoyo en la actualidad hipervisores son KVM y Xen. Puede pasar las opciones de lnea de comandos para agregar paquetes adicionales, eliminar paquetes, seleccione la versin de Ubuntu, que reflejan etc En reciente de hardware con un montn de memoria RAM, en tmpdir / Dev / shm o utilizando un tmpfs, y un espejo local, puede arrancar una mquina virtual en menos de un minuto. Presentado por primera vez como un script de shell en Ubuntu 8.04 LTS, Ubuntu-vm-builder comenz con poco nfasis como un truco para ayudar a los desarrolladores probar su nuevo cdigo en una mquina virtual sin tener que reiniciar desde cero cada vez. adaptndolo para el caso de usode Ubuntu comenz a notar esta secuencia deycomandos, algunos de en la mejora y Como algunos administradores tantos que Soren Hansen (el autor del guin ellos fueron en virtualizacin de Ubuntu, no el jugador de golf) decidi volver a escribir desde cero para Intrepid como Especialista un script en Python con un nuevo diseo de los objetivos ltimos:

313

Virtualizacin

Desarrollar de modo que puede ser reutilizado por otras distribuciones. Utilice un mecanismo de plugin para todas las interacciones de virtualizacin para que los dems pueden aadir fcilmente la lgica de otros entornos de virtualizacin. Proporcionar una interfaz de fcil de mantener Internet como una opcin para la interfaz de lnea de comandos. Sin embargo, los principios generales y los comandos siguen siendo los mismos.

2,2. Configuracin Inicial


Se supone que usted ha instalado y configurado libvirt y KVM localmente en la mquina que son utilizando. Para obtener ms informacin sobre cmo realizar esto, por favor referirse a: Seccin 1, "libvirt" [p. 308] El KVM7 de pginas wiki. Tambin se asume que usted sabe cmo usar un editor de texto basado en texto como nano o vi. Si usted no tiene utilizar alguno de ellos antes, usted puede obtener una visin general de los editores de texto disponibles diversas mediante la lectura del PowerUsersTextEditors8 pginas. Este tutorial se ha hecho en KVM, pero si el principio general permanecer en otras tecnologas de virtualizacin. 2.2.1. Instale vmbuilder El nombre del paquete que necesitamos instalar es python-vm-builder. En una terminal escriba:

sudo apt-get install python-vm-builder

Si est ejecutando Hardy, todava se puede realizar la mayor parte de esta utilizando la versin anterior de la paquete llamado ubuntu-vm-builder, hay slo unos pocos cambios en la sintaxis de la herramienta.

2,3. Definicin de su mquina virtual


Definicin de una mquina virtual con Ubuntu vmbuilder es muy simple, pero aqu hay una cosa que unos pocos tener en cuenta: Si usted planea en el envo de un dispositivo virtual, no suponga que el usuario final va a saber cmo ampliar el tamao del disco para adaptarse a sus necesidades, por lo que cualquier plan para un disco virtual de gran tamao para permitir a su aparato de crecer, o explicar bastante bien en la documentacin de la forma de asignar ms espacio. En realidad podra ser una buena idea para almacenar datos en un almacenamiento externo independiente. Dado que la memoria RAM es mucho ms fcil de asignar en una mquina virtual, tamao de la RAM se debe establecer en lo que usted piensa es un mnimo de seguridad para su aparato. El comando vmbuilder tiene 2 parmetros principales: la tecnologa de virtualizacin (hipervisor) y el blanco distribucin. Los parmetros opcionales son muy numerosas y se pueden encontrar con el siguiente comando:
7 https://help.ubuntu.com/community/KVM 8 https://help.ubuntu.com/community/PowerUsersTextEditors

314

Virtualizacin

vmbuilder kvm ubuntu - ayuda

2.3.1. Parmetros bsicos Como este ejemplo est basado en KVM y Ubuntu 12.04 LTS (preciso Pangolin), y es probable para reconstruir el mismo tiempo de varias mquinas virtuales, vamos a invocar vmbuilder con la siguiente, primero se parmetros:

sudo vmbuilder kvm ubuntu - suite precisa - el sabor virtual - i386 arco -O - libvirt qemu :/ / / sistema de

La - Suite define la versin de Ubuntu, la - Sabor especifica que queremos utilizar el ncleo virtual de (Que es el que se utiliza para construir una imagen JeOS), la - Arco de dice que desea utilizar una mquina de 32 bits, el odice vmbuilder para sobrescribir la versin anterior de la mquina virtual y la - Libvirt dice que informar a la local, entorno de virtualizacin para agregar la mquina virtual resultante a la lista de mquinas disponibles. Notas: Debido a la naturaleza de las operaciones realizadas por vmbuilder, es necesario tener privilegios de root, por lo tanto, el uso de sudo. Si la mquina virtual necesita usar ms de 3 GB de RAM, se debe construir una mquina de 64 bits (arco de amd64). Hasta que Ubuntu 8.10, el kernel virtual fue construido slo para la arquitectura de 32 bits, as que si quieres definir una mquina amd64 en Hardy, usted debe utilizar - Sabor servidor en lugar. 2.3.2. JeOS los parmetros de instalacin 2.3.2.1. JeOS Red 2.3.2.1.1. Asignacin de una direccin IP fija Como un dispositivo virtual que puede ser implementado en varias redes muy diferentes, es muy difcil saber cul es el real de la red se ver as. Con el fin de simplificar la configuracin, es una buena idea adoptar un enfoque similar a lo que los vendedores de hardware de red suelen hacer, es decir, la asignacin de un la direccin inicial de IP fija para el aparato en una red de clase privada que se le dio en su documentacin. Una direccin en el rango de 192.168.0.0/255 suele ser una buena opcin.

Para ello vamos a utilizar los siguientes parmetros: - Direccin IP: Direccin IP en forma de puntos (por defecto el DHCP si no se especifica) - Nombre de host: Establecer NOMBRE como el nombre de host del cliente. - Mscara de VALOR: Mscara de IP en forma de puntos (por defecto: 255.255.255.0) - Valor neto: Direccin de red IP (por defecto: X.X.X.0) - BCAST VALOR: IP de difusin (por defecto: X.X.X.255)

315

Virtualizacin

- Gw DIRECCIN: Puerta de enlace de la direccin (por defecto: X.X.X.1) - Direccin DNS: Nombre de la direccin del servidor (por defecto: X.X.X.1) Suponemos que por el momento que los valores por defecto son bastante buenos, por lo que la invocacin resultante se convierte en:
sudo vmbuilder kvm ubuntu - suite precisa - el sabor virtual - i386 arco de \ -O - libvirt qemu :/ / system / - IP 192.168.0.100 - myvm nombre de host

2.3.2.1.2. Bridging Debido a que nuestro aparato es probable que haya necesidad de acceder a mquinas remotas, es necesario configurar libvirt, para que el aparato utiliza las redes puente. Para ello, agregue el - Puente opcin para el comando:

sudo vmbuilder kvm ubuntu - suite precisa - el sabor virtual - i386 arco de \ -O - libvirt qemu :/ / system / - IP 192.168.0.100 - myvm nombre de host - puente br0

Usted tendr que configurar previamente una interfaz de puente, consulte Seccin 1.4, "Puente" [p. 39] para ms informacin. Adems, si el nombre de la interfaz es diferente cambio br0 a la real puente de la interfaz.

2.3.2.2. Particiones Particin de la aplicacin virtual tendr que tener en cuenta lo que usted est planeando hacer con lo es. Debido a que la mayora de los aparatos quieren tener un dispositivo de almacenamiento independiente para los datos, con una separada / Var tendra sentido. Con el fin de hacer esto vmbuilder nos proporciona - Parte:

- Parte de la ruta Le permite especificar una tabla de particiones en un archivo de la particin, ubicado en el path. Cada lnea del archivo de la particin debera especificar (root): punto de montaje de tamao donde el tamao es en megabytes. Puede tener hasta 4 discos virtuales, un nuevo disco se inicia en una lnea con '---'. es decir: raz de 1000 / Opt 1000 intercambian 256 --/ Var 2000 / Log 1500

En nuestro caso vamos a definir un nombre de archivo de texto vmbuilder.partition que contendr lo siguiente:

raz de 8000 intercambiar 4000 ---

316

Virtualizacin
/ Var 20000

Tenga en cuenta que como estamos usando imgenes de disco virtuales, los tamaos reales que ponemos aqu es mxima dimensiones para estos volmenes. Nuestra lnea de comandos ahora se ve as:

sudo vmbuilder kvm ubuntu - suite precisa - el sabor virtual - i386 arco de \ -O - libvirt qemu :/ / system / - IP 192.168.0.100 - myvm nombre de host - vmbuilder.partition parte

El uso de un "\" en un comando permitir largas cadenas de mando pase a la siguiente lnea.

2.3.2.3. De usuario y contrasea Una vez ms la creacin de un dispositivo virtual, usted tendr que proporcionar a un usuario y contrasea por defecto que es genrica para que pueda incluirlo en su documentacin. Veremos ms adelante en este tutorial de cmo proporcionar algo de seguridad mediante la definicin de un script que se ejecutar la primera vez que un usuario inicia una sesin en la realidad aparato, que, entre otras cosas, le pido que cambie su contrasea. En este ejemplo voy a utilizar 'Usuario' como mi nombre de usuario y 'Default' como la contrasea. Para ello se utilizan los siguientes parmetros opcionales: - Nombre de usuario: Establece el nombre del usuario que se agregar. Por defecto: Ubuntu. - Nombre FULLNAME: Establece el nombre completo del usuario que desea agregar. Por defecto: Ubuntu. - Pass CONTRASEA: Establece la contrasea para el usuario. Por defecto: Ubuntu. Nuestra lnea de comandos resultante se convierte en:
sudo vmbuilder kvm ubuntu - suite precisa - el sabor virtual - i386 arco de \ -O - libvirt qemu :/ / system / - IP 192.168.0.100 - myvm nombre de host - parte \ vmbuilder.partition - Usuario - Nombre de usuario - contrasea predeterminada

2.3.3. Instalacin de paquetes necesarios En este ejemplo vamos a instalar un paquete (Limesurvey) que accede a una base de datos MySQL y tiene una interfaz web. Por lo tanto, se requieren de nuestra sistema operativo que nos proporcione: Apache PHP MySQL Servidor OpenSSH Limesurvey (como una aplicacin de ejemplo que hemos empaquetado) Esto se hace usando vmbuilder especificando la opcin - addpkg varias veces:

317

Virtualizacin

- Addpkg PKG Instalar PKG en el husped (se puede cia especificados varias veces)

Sin embargo, debido a la forma vmbuilder opera, paquetes que tienen que hacer preguntas al usuario durante la fase posterior a la instalacin no son compatibles y en su lugar se debe instalar, mientras que la interactividad puede ocurrir. Este es el caso de LimeSurvey, que vamos a tener que instalar ms tarde, una vez que el usuario inicia sesin Otros paquetes que se haga la pregunta debconf sencilla, como mysql-server pidiendo para establecer una contrasea, la paquete se puede instalar de inmediato, pero vamos a tener que volver a configurar la primera vez que el usuario inicia sesin Si algunos paquetes que tenemos que instalar no se encuentran en principal, tenemos que activar los repositorios adicionales con - comp y - ppa:
- Los componentes COMP1, COMP2, ..., COMPN Una lista separada por comas de los componentes de tu distribucin para incluir (por ejemplo principal, el universo). El valor predeterminado es "principal" - Ppa = PPA Aadir ppa que pertenece a la APP en la sources.list de la mquina virtual.

Limesurvey no ser parte del archivo en el momento, vamos a especificar que es PPA (Personal Package archivo) direccin de modo que se aade a la VM / Etc / apt / source.list, Por lo que se aade el siguiente opciones a la lnea de comandos:

- Addpkg apache2 - addpkg apache2-mpm-prefork - addpkg apache2-utils \ - Addpkg apache2.2-common - addpkg dbconfig-common - addpkg libapache2-mod-php5 \ - Addpkg mysql-client - addpkg php5-cli - addpkg php5-gd - addpkg php5-ldap \ - Addpkg php5-mysql - addpkg wwwconfig-comn - addpkg mysql-server - ppa nijaba

2.3.4. Consideraciones de velocidad 2.3.4.1. Paquete de almacenamiento en cach Cuando se crea vmbuilder construye su sistema, tiene que ir a buscar a cada uno de los paquetes que componen sobre la red a uno de los repositorios oficiales, que, dependiendo de su conexin a Internet la velocidad y la carga del espejo, puede tener un gran impacto en el actual momento de la construccin. Con el fin de reducir esto, se recomienda tener ya sea un repositorio local (que pueden ser creados usando apt-mirror) o usando un proxy cach como apt-proxy. Esta ltima opcin es mucho ms sencillo de implementar y requiere menos espacio en disco, es el que tomar en este tutorial. Para instalarlo, simplemente escriba:

sudo apt-get install apt-proxy

Una vez completado esto, su (vaca) de proxy est listo para su uso en http://mirroraddress:9999 y encontrarn Ubuntu repositorio bajo / ubuntu. Para vmbuilder usarlo, vamos a tener que utilizar el - Espejo opcin:

- Mirror = URL El uso del espejo de Ubuntu en el URL en lugar del predeterminado, quehttp://archive.ubuntu.com/ubuntu oficial para el es

318

Virtualizacin
arcos y http://ports.ubuntu.com/ubuntu-ports de otra manera

Por lo tanto, aadir a la lnea de comandos:

- Espejo de http://mirroraddress:9999/ubuntu

La direccin de espejo especificado aqu tambin se utilizar en el / Etc / apt / sources.list de los recin creado husped, lo que es til para especificar aqu una direccin que puede ser resuelto por el invitado o para planificar el reseteo esta direccin ms adelante.

2.3.4.2. Instalar una rplica local Si estamos en un entorno ms amplio, puede tener sentido para configurar una rplica local del Ubuntu repositorios. El paquete apt-mirror le proporciona una secuencia de comandos que se encargar de la creacin de reflejo para usted. Usted debe planear en tener unos 20 gigabytes de espacio libre por la liberacin el apoyo y la arquitectura. Por omisin, apt-mirror utiliza el archivo de configuracin en / Etc / apt / mirror.list. Como est establecido, lo har reproducir slo la arquitectura de la mquina local. Si usted desea apoyar a otras arquitecturas de su espejo, simplemente duplicar las lneas que comienzan con "deb", en sustitucin de la palabra clave deb / deb-{arch} donde arch puede ser i386, amd64, etc .. Por ejemplo, en una mquina amd64, para tener los archivos i386 as, usted tendr que (algunas lneas se han dividido de acuerdo al formato de este documento):

deb

http://archive.ubuntu.com/ubuntu precisa multiverso principales universo restringido http://archive.ubuntu.com/ubuntu precisa multiverso principales universo restringido

/ Deb-i386

deb http://archive.ubuntu.com/ubuntu precisos-updates multiverse principales universo restringido / Deb-i386 http://archive.ubuntu.com/ubuntu~~HEAD=NNS precisa de actualizaciones principal restringido universe multiverse deb http://archive.ubuntu.com/ubuntu/ precisa-backports multiverso principales universo restringido / Deb-i386 http://archive.ubuntu.com/ubuntu precisa-backports principal restringido universe multiverse

deb http://security.ubuntu.com/ubuntu precisa de seguridad multiverso principales universo restringido / Deb-i386 http://security.ubuntu.com/ubuntu precisa-principal de seguridad restringido universe multiverse deb http://archive.ubuntu.com/ubuntu precisa principal / debian-installer restringido / debian-installer universo / multiverso debian-installer / debian-installer / Deb-i386 http://archive.ubuntu.com/ubuntu precisa principal / debian-installer restringido / debian-installer universo / multiverso debian-installer / debian-installer

Tenga en cuenta que los paquetes de cdigo fuente no se reflejan, ya que rara vez se utilizan en comparacin con los binarios y que toman un espacio mucho ms, pero que pueden ser fcilmente aadidos a la lista. Una vez que el espejo ha terminado de replicar (y esto puede ser muy largo), es necesario configurar Apache de modo que sus archivos de espejo (en / Var / spool / apt-mirror si no cambia el valor predeterminado), se publican 319

Virtualizacin

por el servidor Apache. Para obtener ms informacin sobre Apache vea Seccin 1, "HTTPD - Web Apache2 Servidor "[p. 187].

2,4. Empaquetar la aplicacin


Dos opciones estn disponibles para nosotros: El mtodo recomendado para hacerlo es hacer una Debian paquete. Dado que este se encuentra fuera del alcance de este tutorial, no vamos a realizar esto aqu e invitar al lector a leer la documentacin sobre cmo hacer esto en el Ubuntu Gua Embalaje9. En este caso tambin es una buena idea configurar un depsito de su paquete para que las actualizaciones pueden ser convenientemente retirado de la misma. Vase el Debian Administracin10 artculo para un tutorial sobre este. Instalacin manual de la aplicacin bajo / Opt como se recomienda por el FHS directrices11. En nuestro caso vamos a utilizar Limesurvey como ejemplo de aplicacin web para el que queremos dar un virtual aparato. Como se ha sealado antes, hemos hecho una versin del paquete disponible en un PPA (Personal Archivo del paquete).

2,5. Las adiciones tiles


2.5.1. Configuracin de Actualizaciones automticas Para que su sistema puede configurar para que se actualice de forma peridica, slo se instalar desatendida actualizaciones, por lo que aadir la siguiente opcin para nuestra lnea de comandos:
- Addpkg desatendida de actualizaciones

Como hemos puesto nuestro paquete de aplicacin en un PPA, el proceso se actualizar no slo el sistema, pero tambin la aplicacin cada vez que actualicemos la versin de la PPA. 2.5.2. ACPI Manejo de Eventos Para que su mquina virtual para ser capaz de manejar el reinicio y eventos de cierre que se est enviando, es una buena idea de instalar el paquete acpid tambin. Para ello slo tiene que aadir la siguiente opcin:

- Addpkg acpid

2,6. Mando final


Este es el comando con todas las opciones que se discutieron anteriormente:
sudo vmbuilder kvm ubuntu - suite precisa - el sabor virtual - arch i386-o \
9 https://wiki.ubuntu.com/PackagingGuide 10 http://www.debian-administration.org/articles/286 11 http://www.pathname.com/fhs/

320

Virtualizacin

- Libvirt qemu :/ / system / - IP 192.168.0.100 - myvm nombre de host \ - Parte vmbuilder.partition - Usuario - Nombre de usuario - por defecto de paso \ - Addpkg apache2 - addpkg apache2-mpm-prefork - addpkg apache2-utils \ - Addpkg apache2.2-common - addpkg dbconfig-common \ - Addpkg libapache2-mod-php5 - addpkg mysql-client - addpkg php5-cli \ - Addpkg php5-gd - addpkg php5-ldap - addpkg php5-mysql \ - Addpkg wwwconfig-comn - addpkg mysql-server \ - Addpkg desatendida de actualizaciones - addpkg acpid - ppa nijaba \ - Espejo de http://mirroraddress:9999/ubuntu

2,7. Recursos
Si usted est interesado en aprender ms, tiene preguntas o sugerencias, por favor pngase en contacto con el servidor de Ubuntu Equipo en: IRC: # ubuntu-server en freenode Lista de correo: ubuntu-server en lists.ubuntu.com 12 Asimismo, consulte la JeOSVMBuilder Wiki de Ubuntu13 pginas.

12 https://lists.ubuntu.com/mailman/listinfo/ubuntu-server 13 https://help.ubuntu.com/community/JeOSVMBuilder

321

Virtualizacin

3. UEC
3,1. Informacin general
UEC (Ubuntu Enterprise Cloud) est depracated a favor de la UC (Ubuntu Cloud). La primero se basa en eucalipto y el segundo se basa en Openstack. Esta seccin de la gua se eliminar en versiones futuras.

Este tutorial cubre la instalacin de la UEC de Ubuntu 12.04 LTS Server Edition CD, y asume una topologa de la red bsica, con un nico sistema que acta como "Todo-en-un controlador", y una o ms los nodos conectados.

A partir de este tutorial, aprender a instalar, configurar, registrar y realizar varias operaciones en una configuracin bsica UEC que se traduce en una nube con un controlador de un "Front-end" y una o varias nodo (s) para el funcionamiento de la mquina virtual (VM) de los casos. Tambin se utilizan ejemplos para ayudar a empezar a utilizar su propia nube privada de clculo.

3,2. Requisitos previos


Para implementar una infraestructura de nube mnimo, usted necesitar por lo menos dos sistemas dedicados: Una interfaz. Uno o ms nodos (s). Las siguientes son recomendaciones, en lugar de requisitos fijos. Sin embargo, nuestra experiencia en el desarrollo de esta documentacin que se indica las siguientes sugerencias. 3.2.1. Requisitos Front End Utilice la siguiente tabla para un sistema que se ejecutar una o ms de: Controlador de nubes (CLC) Cluster Controller (CC) Morsa (el servicio de almacenamiento S3-like) Controlador de almacenamiento (SC)

322

Virtualizacin

Tabla 20.1. UEC Requisitos Front End


Hardware CPU Mnimo De 1 GHz Sugerido 2 x 2 GHz Notas Para una todo-en-uno extremo frontal, que ayuda a tener al menos un doble del procesador. ncleo Los beneficios de Java Web front-end de un montn de espacio disponible memoria. Ms lenta de los discos va a funcionar, pero rendir ejemplo, mucho ms tiempo los tiempos de arranque. 40 GB es espacio suficiente para una sola imagen de cach, etc, el eucalipto no le gusta que se quede sin espacio en disco.

Memoria

2 GB

4 GB

Disco

5400 RPM IDE

7200 RPM SATA 200 GB

Espacio en disco de 40 GB

Red de 100 Mbps

1000 imgenes de la mquina Mbps son cientos de MB, y la necesidad de ser copiado travs de la red a los nodos.

3.2.2. Requisitos de nodo El otro sistema (s) son nodos, que se desarrollar: El Controlador de Nodos (NC)

Tabla 20.2. UEC nodo requisitos


Hardware mnimo sugerido CPU VTVT, de 64-bit, Extensiones de Multicore Notas De 64 bits puede funcionar tanto en i386, amd64 y las instancias, por por defecto, el eucalipto slo se ejecutar una VM por ncleo de la CPU en un nodo.

Memoria Disco

1 GB

La memoria adicional significa que los huspedes ms y ms grande. 5400 RPM 7200 nodos son RPMEucalyptus uso intensivo del disco, E / S de espera probable que se IDESATA o SCSI ser el cuello de botella de rendimiento. Las imgenes se almacenan en cach a nivel local, el eucalipto no le gusta se queda sin espacio en disco. Imgenes de la mquina son cientos de MB, y tienen que ser copiado travs de la red a los nodos.

4 GB

Espacio en disco de 40 GB 100 GB

Red de 100 Mbps

1000 Mbps

3,3. Instalacin del servidor de aplicaciones para la nube / cluster / Almacenamiento / morsa Fin
1. 2. Descargar Ubuntu 12.04 LTS servidor de archivos ISO y grabarla en un CD. Al iniciar, seleccione "Instalar Ubuntu Enterprise Cloud". El programa de instalacin detectar si cualquier otro Componentes de eucalipto estn presentes. 323

Virtualizacin A continuacin, puede elegir los componentes a instalar, en base a sus elegidos topologa14. Cuando se le pregunt si desea un "Cluster" o un "Nodo" instalar, seleccione "Cluster". Se le pedir a otros dos en la nube preguntas especficas durante el curso de la instalacin: Nombre del clster. por ejemplo, cluster1. Un rango de direcciones IP pblicas de la LAN que la nube puede asignar a los casos. por ejemplo, 192.168.1.200-192.168.1.249.

3. 4. 5.

3,4. Instalacin del Controlador de Nodos (s)


La instalacin de controlador de nodo es an ms simple. Slo asegrese de que est conectado a la red en que el controlador de la nube / cluster ya se est ejecutando.

1. 2. 3. 4. 5. 6.

Arrancar desde el ISO mismos en el nodo (s). Al iniciar, seleccione "Instalar Ubuntu Enterprise Cloud". Seleccionar "Instalar Ubuntu Enterprise Cloud". Se debe detectar el Cluster y preseleccin "Nodo" instalar por usted. Confirmar el esquema de particin. El resto de la instalacin debe proceder sin interrupcin, completa la instalacin y reinicie el nodo.

3,5. Registrar el nodo (s)


1. Los nodos son los sistemas fsicos dentro de la UEC que realmente explotan las instancias de mquinas virtuales de la nube. Todo registro de componentes debe ser automtica, en el supuesto: una. Pblicos claves SSH se han intercambiado adecuadamente. b. Los servicios estn configurados correctamente. c. El caso UEC-componente de escucha se est ejecutando. d. Comprobar el registro. Pasos de un correo que slo debe ser necesario si usted est utilizando el UEC / PackageInstall15 mtodo. De lo contrario, si usted est siguiendo esta gua, estas medidas ya se completa de forma automtica para usted, y por lo tanto, puede omitir "Uno" a "E".

2.

Cambio de claves pblicas

14 https://help.ubuntu.com/community/UEC/Topologies~~V 15 https://help.ubuntu.com/community/UEC/PackageInstall

324

Virtualizacin

El controlador de la nube de eucalipto usuario necesita tener acceso SSH a la morsa del controlador, Controlador del clster, y el Controlador de almacenamiento como el usuario de eucalipto.

Instalar el controlador de la nube eucalipto clave pblica del usuario SSH por: En el controlador de destino, de forma temporal establecer una contrasea para el usuario de eucalipto:
eucaliptos sudo passwd

A continuacin, en el controlador de la nube:


sudo-u eucaliptos ssh-copy-id-i ~ eucalipto / .ssh / id_rsa.pub \ eucaliptos @ <IP_OF_NODE>

Ahora se puede eliminar la contrasea de la cuenta de eucalipto en el controlador de destino, si desea:

sudo passwd-d eucaliptos

3.

Configuracin de los servicios En el Nube de control: Para el El regulador de grupo Registro: Definir la variable de shell en el CC_NAME / Etc / eucalipto / eucalipto cc.conf Definir la variable de shell en el CC_IP_ADDR / Etc / eucalipto / eucalipto ipaddr.conf, Como una lista separada por espacios de una o ms direcciones IP. Para el Morsa controlador Registro: Definir la variable de shell en el WALRUS_IP_ADDR / Etc/eucalyptus/eucalyptusipaddr.conf, Como una nica direccin IP.

En el El regulador de grupo: En el caso Controlador de almacenamiento Registro: Definir la variable de shell en el CC_NAME / Etc / eucalipto / eucalipto cc.conf Definir la variable de shell en el SC_IP_ADDR / Etc / eucalipto / eucalipto ipaddr.conf, Como una lista separada por espacios de una o ms direcciones IP. 4. Publicar Ahora empieza a los servicios de publicacin. Morsa de control:

inicio sudo eucalipto morsa publicacin

El regulador de grupo: 325

Virtualizacin

inicio sudo eucaliptos-cc-la publicacin

Controlador de almacenamiento:
inicio sudo eucaliptos-sc-publicacin

Controlador de Nodos:

inicio sudo eucalyptus-nc-publicacin

5.

Inicio del proceso de escucha En el Nube de controlador y el El regulador de grupo (s), ejecute:

inicio sudo UEC-componente de escucha

6.

Comprobar el registro

cat / var / log / eucalipto / registration.log 04/08/2010 15:46:36-05:00 | 24243 -> Llamadas nodo cluster1 nodo 10.1.1.75 04/08/2010 15:46:36-05:00 | 24243 -> euca_conf - registro de los nodos devuelto 0 04/08/2010 15:48:47-05:00 | 25858 -> 10.1.1.71 llamadas morsa morsa 04/08/2010 15:48:51-05:00 | 25858 -> euca_conf - registro de morsa devuelto 0 04/08/2010 15:49:04-05:00 | 26237 -> Llamadas grupo cluster1 10.1.1.71 04/08/2010 15:49:08-05:00 | 26237 -> euca_conf - registro del clster ha devuelto 0 04/08/2010 15:49:17-05:00 | 26644 -> Llamadas de almacenamiento de almacenamiento cluster1 10.1.1.71 04/08/2010 15:49:18-05:00 | 26644 -> euca_conf - registro-sc ha devuelto 0

La salida en el equipo pueden variar en el ejemplo anterior.

3,6. Obtener Credenciales


Despus de instalar y arrancar el Nube de Contralor, los usuarios de la nube se necesita para recuperar su credenciales. Esto se puede hacer a travs de un navegador web, o en la lnea de comandos. 3.6.1. Desde un navegador Web 1. Desde su navegador de Internet (ya sea de forma remota o en el servidor de Ubuntu) acceder a la siguiente direccin URL:
https:// <cloud-controller-ip-address>: 8443 /

Debe utilizar una conexin segura, as que asegrate de utilizar "https" y no "http" en su URL. Usted recibir una advertencia de certificado de seguridad. Usted tendr que aadir una excepcin para ver la pgina. Si no lo aceptan que no ser capaz de ver el eucalipto configuracin de la pgina. 2. Utilizar nombre de usuario 'Admin' y la contrasea 'Admin' para el primer inicio de sesin (se le pedir que cambiar la contrasea). A continuacin, siga las instrucciones en pantalla para actualizar la contrasea de administrador y la direccin de correo electrnico.

3.

326

Virtualizacin

4.

5. 6. 7.

Una vez que el proceso de configuracin en tiempo primero se haya completado, haga clic en el Las credenciales de los pestaa situada en el porcin superior izquierda de la pantalla. Haga clic en el "Descarga de Verificacin de Poderes" botn para obtener sus certificados. Guardar a ~ /. EUCA. Descomprimir el archivo zip en un lugar seguro ( ~ /. EUCA).

unzip-d ~ /. EUCA mycreds.zip

3.6.2. Desde una lnea de comandos Por otra parte, si usted est en la lnea de comandos de la Nube de Contralor, puede ejecutar:

mkdir-p ~ /. EUCA chmod 700 ~ /. EUCA cd ~ /. EUCA euca_conf sudo - get-credenciales mycreds.zip descomprimir mycreds.zip ln-s ~ / .euca / eucarc ~ /. eucarc cd -

3.6.3. Extraccin y Uso de credenciales Ahora usted tendr que configurar EC2 API y herramientas de IAM en el servidor con los certificados X.509. 1. Instalar las herramientas de la nube de usuario requeridos:
sudo apt-get install euca2ools

2.

Para validar que todo funciona correctamente, tener detalles sobre la disponibilidad del clster local:

. ~ / .euca / Eucarc EUCA-describe-la disponibilidad de zonas de detallado AVAILABILITYZONEmyowncloud AVAILABILITYZONE AVAILABILITYZONE AVAILABILITYZONE AVAILABILITYZONE AVAILABILITYZONE AVAILABILITYZONE | - Tipos vm | - M1.small | - C1.medium | - M1.large | - M1.xlarge | - C1.xlarge 192.168.1.1 gratis / max 0004/0004 0004/0004 0002/0002 0002/0002 0001/0001 cpu 1 1 2 2 4 carnero disco 128 256 512 1024 2048 2 5 10 20 20

Su salida del comando anterior puede variar.

3,7. Instalar una imagen de la tienda


La siguiente es, con mucho, la forma ms sencilla de instalar una imagen. Sin embargo, los usuarios avanzados pueden ser en aprender a Paquete de su propia imagen16. interesado

16 https://help.ubuntu.com/community/UEC/BundlingImages

327

Virtualizacin

La forma ms sencilla de agregar una imagen a la UEC es que lo instale desde el almacn de imgenes en la web UEC interfaz. 1. El acceso a la interfaz web en la siguiente URL (Asegrese de especificar https):

https:// <cloud-controller-ip-address>: 8443 /

2. 3. 4. 5.

Ingrese su usuario y contrasea (si se solicita, ya que todava se pueden registrar desde antes). Haga clic en el Almacenar ficha. Examinar imgenes disponibles. Hacer clic en instalar de la imagen que desea.

Una vez que la imagen ha sido descargado e instalado, puede hacer clic en "Cmo funciona?" que ser aparece debajo del botn de la imagen para ver el comando a ejecutar para crear una instancia (inicio) esta imagen. La imagen tambin aparecer en la lista que figura en el Imagen ficha.

3,8. Ejecutar una imagen


Hay varias formas de ejecutar una imagen en la UEC: Utilizar la lnea de comandos. Utilice una de las herramientas de gestin de la UEC compatibles, tales como Paisaje. Utilice el ElasticFox17 extensin para Firefox. Aqu vamos a describir el proceso desde la lnea de comandos: 1. Antes de ejecutar una instancia de su imagen, primero debe crear una par de claves (Ssh key) que puede utilizar para iniciar sesin en la instancia como root, una vez que se inicie. La clave se almacena, por lo que slo tendr que hacer esto una vez. Ejecute el siguiente comando:

if [! -E ~ / .euca / mykey.priv], y luego mkdir-p-m 700 ~ /. EUCA touch ~ / .euca / mykey.priv chmod 0600 ~ / .euca / mykey.priv EUCA-add-par de llaves MyKey> ~ / .euca / mykey.priv fi

Usted puede llamar a la clave de lo que quieras (en este ejemplo, la clave se llama "MyKey"), pero recordar lo que se llama. Si se olvida, siempre se puede correr EUCA-describe-pares de claves para obtener una lista de claves creadas almacenados en el sistema. 2. Tambin debe permitir el acceso al puerto 22 en los casos:

17 https://help.ubuntu.com/community/UEC/ElasticFox

328

Virtualizacin

EUCA autorizar por defecto-P tcp-p 22-s 0.0.0.0 / 0

3.

A continuacin, puede crear instancias de su imagen social:

EUCA plazo de instancias $ EMI-k-t MyKey m1.small

Si recibe un error con respecto a image_id, usted puede encontrar viendo la pgina de imgenes o clic "Cmo ejecutar" en el Almacenar la pgina para ver el comando de la muestra. 4. La primera vez que ejecute una instancia, el sistema ser la creacin de cachs para la imagen de la que se crear. A menudo, esto puede tomar algn tiempo la primera vez que se ejecuta una instancia teniendo en cuenta que VM las imgenes son generalmente bastante grande. Para supervisar el estado de la instancia, ejecute:

reloj-N5 EUCA-describe-instances

En la salida, usted debe ver la informacin acerca de la instancia, incluyendo su estado. Mientras que por primera vez el almacenamiento en cach se est realizando, el estado del ejemplar ser 5. "Pendiente". Cuando la instancia est completamente encendido, el estado anterior se convertir en 'Corriendo'. Mira la direccin IP asignado a la instancia en la salida, a continuacin, conecte a la misma:
IPADDR = $ (EUCA-describe-instances | grep $ EMI | grep corriendo | \ la cola-n1 | awk '{print $ 4}') ssh-i ~ / .euca / mykey.priv ubuntu @ $ IPADDR

6.

Y cuando haya terminado con este caso, salir de su conexin SSH, y luego terminar su ejemplo:

Instancia = $ (EUCA-describe-instances | grep $ EMI | grep corriendo | \ la cola-n1 | awk '{print $ 2}') EUCA-Terminate-instancias $ INSTANCEID

3.8.1. First Boot El paquete de inicio en la nube ofrece "el primer arranque" la funcionalidad de las imgenes de Ubuntu UEC. Es el encargado imagen de sistema de archivos genrica que se est iniciando y la personalizacin de este caso en de tomar la particular. Esto incluye cosas como: Configuracin del nombre de host. Colocacin de las previstas en las claves pblicas de ssh ~ Ubuntu / .ssh / authorized_keys. Ejecucin de una secuencia de comandos de usuario proporcionada, o de lo contrario modificar la imagen. Ajuste de nombre de host y la configuracin de un sistema para que la persona que lo lanz en realidad puede acceder a l se no muy interesante. Las cosas interesantes que se pueden hacer con la nube-init son posibles gracias a los datos proporcionados en el momento de lanzamiento llamada de datos de usuario18.

18 http://developer.amazonwebservices.com/connect/entry.jspa?externalID=1085

329

Virtualizacin

En primer lugar, instalar el paquete en la nube de inicio:


sudo apt-get install-init nubes

Si el usuario de datos se inicia con '#!', a continuacin, se almacena y se ejecuta como root al final del proceso de arranque de El primer arranque de la instancia (similar a una tradicional 'rc.local' script). La salida de la secuencia de comandos se la consola. dirige a Por ejemplo, cree un archivo llamado ud.txt que contiene:

#! / Bin / sh eco ========== Hola a todos: $ (date) ========== echo "He estado por $ (cut-d \ F-1 </ proc / uptime) s "

Ahora empieza una instancia con el - El usuario del archivo de datos opcin:
EUCA plazo de instancias $ EMI-k-t MyKey m1.small - El usuario del archivo de datos = ud.txt

Espera ahora por el sistema para llegar a la consola y que est disponible. Para ver el resultado del archivo de datos comandos escriba:

EUCA-get-consola de salida de $ EMI | grep - after-context = 1 Hola ========== Hola a todos: Lun Mar 29 18:05:05 UTC 2010 ========== He estado funcionando durante 28,26 segundos

Su salida puede variar.

El enfoque simple muestra anterior muestra una gran cantidad de energa. El usuario de datos puede contener una secuencia de comandos en cualquiera de las lenguas en que un intrprete ya existe en la imagen (#! / bin / sh, #! / usr / bin / python, #! / usr / bin / perl #! / usr / bin / awk ... ). Para muchos casos, el usuario puede no estar interesado en escribir un programa. Para este caso, la nube de inicio proporciona "Nube-config", un enfoque hacia la configuracin basada en la personalizacin. Para utilizar la nube-config la sintaxis, el suministro de datos de usuario debe comenzar con una '# Cloud-config'. Por ejemplo, crear un archivo de texto llamado nube config.txt que contiene:

# Cloud-config apt_upgrade: true apt_sources: - Fuente: "ppa: ubuntu-server-edgers/server-edgers-apache"

paquetes: - Build-essential - Pastebinit

330

Virtualizacin
runcmd: - ======= Echo Hola Mundo ===== - Echo "He estado por $ (cut-d \ F-1 </ proc / uptime) s "

Crear una nueva instancia:

EUCA plazo de instancias $ EMI-k-t MyKey m1.small - el usuario del archivo de datos = nube config.txt

Ahora, cuando el sistema anterior se ha arrancado, se tiene: Se ha aadido el Apache Bordeadoras PPA. Ejecutar una actualizacin para obtener todas las actualizaciones disponibles Se instala el "build-essential 'y los paquetes de los pastebinit Impreso un mensaje similar a la secuencia de comandos La Apache Bordeadoras PPA, en el ejemplo anterior, contiene la ltima versin de Apache desde el repositorios del proveedor de origen. Versiones de los paquetes en el PPA no son compatibles, y en funcin de su situacin, esto puede o puede no ser deseable. Vase el Ubuntu Server Bordeadoras19 Web la pgina para ms detalles.

La 'Runcmd' comandos se ejecutan en el mismo punto de arranque en el que la '#!' secuencia de comandos que se ejecutan en el anterior ejemplo. Est presente para que pueda obtener toda la potencia de un lenguaje de script, si lo necesita, sin el abandono la nube de configuracin. Para ms informacin sobre qu tipo de cosas se puede hacer con la nube de configuracin, consulte doc / examples20 en la fuente.

3,9. Ms informacin
Como utilizar el Controlador de almacenamiento21 El control de los servicios de eucalipto: Servicio de sudo de eucalipto [start | stop | restart] (en el Convenio de Responsabilidad Civil / CC / SC / lateral morsa) sudo servicio de eucalyptus-nc [start | stop | restart] (en el lado del nodo) La ubicacin de algunos archivos importantes: Archivos de registro: / var / log / eucaliptos Los archivos de configuracin: / etc / eucaliptos Base de datos:
19 https://launchpad.net/~~HEAD=NNS del ~ ubuntu-servercanteadoras 20 http://bazaar.launchpad.net/ ~ cloud-init-dev/cloud-init/trunk/files/head :/ doc / examples / 21 https://help.ubuntu.com/community/UEC/StorageController

331

Virtualizacin

/ var / lib / eucalipto / db Llaves: / var / lib / eucaliptos / var / lib / eucalipto / .ssh No se olvide de su fuente ~ / .euca / Eucarc antes de ejecutar las herramientas de cliente.

3,10. Referencias
Para obtener informacin sobre los casos de carga de ver el Eucalyptus Wiki22 pginas. Sitio del Proyecto Eucalipto (foros, documentacin, descargas) 23. El eucalipto en Launchpad (bugs, cdigo)24. Solucin de problemas de eucalipto (1,5)25. Registre su nube con RightScale26. Tambin puede encontrar ayuda en el # Ubuntu-virt, # eucalipto, y # Ubuntu-server Canales de IRC en Freenode27.

22 https://help.ubuntu.com/community/Eucalyptus 23 http://open.eucalyptus.com/ 24 https://launchpad.net/eucalyptus/ 25 http://open.eucalyptus.com/wiki/EucalyptusTroubleshooting_v1.5 26 27 http://freenode.net

332

Virtualizacin

4. Nube de Ubuntu
Cloud computing es un modelo de computacin que permite vastas reservas de recursos que deben asignarse a la carta. Estos recursos, como el almacenamiento, potencia de clculo, software de red y se abstraen y se entregan como un servicio a travs de Internet en cualquier lugar ya cualquier hora. Estos servicios se facturan por tiempo consumido similares a los utilizados por los servicios pblicos tales como electricidad, agua y telefona. Nube de Ubuntu Infraestructura utiliza el software de cdigo abierto OpenStack para ayudar a construir altamente escalable, el cloud computing tanto para nubes pblicas y privadas.

4,1. Informacin general


Este tutorial cubre la instalacin de la OpenStack Ubuntu 12.04 LTS Server Edition CD, y asume una topologa de la red bsica, con un nico sistema que sirve como el "todo-en-una nube infraestructura ". Debido a la simplicidad del tutorial, las instrucciones tal cual no se contempla la creacin de servidores de produccin a pesar de que le permite tener un POC (prueba de concepto) de la nube de Ubuntu con OpenStack.

4,2. Requisitos previos


Para desplegar una mnima infraestructura de Ubuntu Cloud, usted necesitar por lo menos: Un sistema dedicado. Dos rangos de direcciones de red (red privada y red pblica). Asegrese de que el host en cuestin soporta VT (Virtualization Technology), ya que vamos a utilizar KVM como la tecnologa de virtualizacin. Hipervisores Otros tambin estn soportados como QEMU, UML, VMware ESX / ESXi y Xen. LXC (Linux Containers) tambin se apoya a travs de libvirt.

Comprueba si tu sistema es compatible con KVM emisin sudo kvm-ok en una terminal de linux. La "Topologa mnima" recomienda el uso de la produccin es el uso de tres nodos - Un maestro servidor que ejecuta los servicios de Nova (con excepcin de cmputo) y dos servidores que ejecutan nova de clculo. Esta configuracin es no es redundante y el servidor maestro es un punto de fallo (Single Point of Failure).

4,3. Preconfiguracin de la red


Antes de iniciar la instalacin de OpenStack tenemos que asegurarnos de que se han instalado puentes de apoyo, un de datos MySQL y un servidor de hora del centro (NTP). Esto asegurar que hemos instanciado mquinas Base y los anfitriones en sincrona. En este ejemplo, la "red privada" estar en el rango 10.0.0.0/24 en eth1. Todo el interior la comunicacin entre las instancias va a suceder all, mientras que la "red pblica" estar en el Rango 10.153.107.0/29 en eth0.

4.3.1. Instalacin de puente de apoyo

333

Virtualizacin

sudo apt-get install bridge-utils

4.3.2. Instalacin y configuracin de NTP

sudo apt-get install ntp

Aadir estas dos lneas al final de la / Etc / ntp.conf archivo.

servidor 127.127.1.0 fudge 127.127.1.0 estrato 10

Reinicie el servicio NTP

sudo servicio de ntp restart

4.3.3. Instalacin y configuracin de MySQL

sudo apt-get install mysql-server

Crear una base de datos mysql y el usuario de OpenStack

sudo mysql-uroot-ppassword-e "CREATE DATABASE nova"; sudo mysql-uroot-ppassword-e "GRANT ALL ON nova. * A novauser @ localhost \ IDENTIFICADO POR 'novapassword' ";

El carcter de continuacin de lnea "\" implica que se debe incluir la lnea siguiente como parte de la comando actual.

4,4. Instalar OpenStack Compute (Nova)


OpenStack Compute (Nova) es un tejido de controlador de la computacin en nube (la parte principal de un IaaS sistema). Est escrito en Python, utilizando el Eventlet y los marcos trenzados, y se basa en el estndar AMQP protocolo de mensajera, y SQLAlchemy para acceder al almacn de datos. Instale los componentes de Nova OpenStack

sudo apt-get install nova nova-api-red-nova nova volumen de ObjectStore-nova-Scheduler \ nova-computacin euca2ools unzip

Reinicie libvirt-bin slo para hacer libvirtd que es consciente de ebtables.

sudo servicio libvirt-bin reinicio

Instale RabbitMQ - Advanced Message Queue Server (protocolo AMQP)

334

Virtualizacin

sudo apt-get install RabbitMQ-servidor

Editar / Etc / nova / nova.conf y aadir lo siguiente:

# Nova de configuracin FlatDHCPManager - Sql_connection = mysql :/ / novauser: novapassword @ localhost / nova Flat_injected = true Network_manager = nova.network.manager.FlatDHCPManager Fixed_range = 10.0.0.0/24 Floating_range = 10.153.107.72/29 Flat_network_dhcp_start = 10.0.0.2 Flat_network_bridge = BR100 Flat_interface = eth1 Public_interface = eth0

Reinicie los servicios de OpenStack

for i in nova nova-api-red-nova nova ObjectStore-programador-nova nova volumen de cmputo; \ no sudo dejar de $ i; sueo 2; hacer

for i in nova nova-api-red-nova nova ObjectStore-programador-nova nova volumen de cmputo; \ no sudo empezar a $ i; sueo 2; hacer

Migrar base de datos de Nova sqlite db a MySQL db. Se puede tomar un tiempo.

sudo nova-Manage db sincronizacin

Definir una red privada especfica en todas las instancias se ejecutar. Esto ser utilizado en la red de Ips fijos establecidos en el interior nova.conf .

sudo-nova gestin de la red crear - fixed_range_v4 10.0.0.0/24 - etiqueta privada \ - Bridge_interface BR100

Definir una red pblica especfica y la asignacin de 6 (utilizable) Flotando Las direcciones IP pblicas para su uso con la casos a partir de 10.153.107.72.
sudo nova gestionar flotante crear - ip_range = 10.153.107.72/29

Crear un usuario (usuario1), un proyecto (proyecto 1), credenciales de descarga y la fuente de su archivo de configuracin.
cd; mkdir nova, nova cd sudo nova gestionar usuario admin usuario1 sudo-nova, la gestin del proyecto crear proyecto1 usuario1 sudo-nova, la gestin del proyecto zip proyecto1 usuario1 descomprimir nova.zip fuente de novarc

Verifique la instalacin OpenStack Compute escribiendo:

335

Virtualizacin

sudo-nova gestionar el servicio de lista de sudo nova-Manage versin de lista

Si los servicios de Nova no se muestran correctamente reiniciar los servicios OpenStack como se describi anteriormente. Para obtener ms informacin por favor consulte la seccin de solucin de problemas en esta gua.

4,5. Instalar Imaging Service (Vistazo)


Nova utiliza el servicio vistazo para administrar las imgenes del sistema operativo que necesita para la crianza de los casos. Vistazo puede utilizar varios tipos de backends de almacenamiento, como almacn de archivos, etc s3 Vistazo tiene dos componentes -vistazo de la API y la mirada del registro. stos se pueden controlar con los trabajos de advenedizos en cuestin de servicios. Para este caso especfico vamos a utilizar MySQL como backend de almacenamiento. Instale Vistazo

sudo apt-get install vista

Crear una base de datos y el usuario para la vista

sudo mysql-uroot-ppassword-e "CREAR BASE DE DATOS vista"; sudo mysql-uroot-ppassword-e "GRANT ALL ON vistazo. * A glanceuser @ localhost \ IDENTIFICADO POR 'glancepassword' ";

Editar el archivo / etc / vista / vista-registry.conf y editar la lnea que contiene la opcin "Sql_connection =" a esto:
sql_connection = mysql :/ / glanceuser: glancepassword @ localhost / vista

Retire la base de datos SQLite

rm-rf / var / lib / vista / glance.sqlite

Reinicie mirada-registro despus de realizar cambios a / etc / Visin / vista-registry.conf. El MySQL base de datos se rellenan automticamente.

reinicio sudo registro vistazo

Si usted encuentra problemas de echar un vistazo a el archivo de registro en / var / log / vista / api.log y / var / log / vista / registry.log.

4,6. Ejecucin de instancias


Antes de que usted puede crear instancias de las imgenes, primero tiene que configurar las credenciales del usuario. Una vez que este primer paso es logrado tambin es necesario para cargar las imgenes que desea ejecutar en la nube. Una vez que tenga estos Las imgenes subidas a la nube en que ser capaz de correr y conectarse a ellos. Estos son los pasos que debe seguir para obtener OpenStack Nova instancias en ejecucin:

336

Virtualizacin

Descargar, registrar y publicar una imagen de la nube de Ubuntu

distro = lcida http://cloud-images.ubuntu.com/ wget $ distro / current / $ distro-server-cloudimg-amd64.tar.gz la nube de publicacin-tar "$ distro"-server-cloudimg-amd64.tar.gz "$ distro" _amd64

Crear un par de claves e iniciar una instancia

cd ~ / nova fuente de novarc EUCA-add-par de claves usuario1> user1.priv chmod 0600 user1.priv

Permitir ICMP (ping) y el acceso ssh a las instancias

EUCA autorizar por defecto-P tcp-p 22-s 0.0.0.0 / 0 EUCA autorizar-p icmp-t -1: -1 por defecto

Ejecutar una instancia

ami = `EUCA-describe-las imgenes |

awk {'print $ 2'} | grep-m1 ami `

EUCA plazo de instancias $ ami-k usuario1-t m1.tiny EUCA-describe-instances

Asignacin de la direccin pblica a la instancia.

EUCA-asignar direccin EUCA-socio-direccin-i instance_id public_ip_address EUCA-describe-instances

Debe ingresar por encima de la instance_id (IAM) y public_ip_address se ha mostrado anteriormente-describeEUCA casos y los comandos de eucaliptos a asignar electrnico. Ahora usted debera ser capaz de SSH a la instancia

ssh-i user1.priv ubuntu @ direccionip

Para finalizar las instancias

EUCA-Terminate-casos instance_id

4,7. Instalacin de la Infraestructura de almacenamiento (Swift)


Swift es una de alta disponibilidad, distribuida, eventualmente consistentes objeto / burbuja tienda. Es utilizado por el OpenStack infraestructura para proporcionar servicios de almacenamiento S3, como las nubes. Tambin es compatible con API S3 amazon.

337

Virtualizacin

Las organizaciones utilizan Swift para almacenar gran cantidad de datos de manera eficiente, segura y barata que las aplicaciones utilizan una API especial para la interfaz entre las aplicaciones y los objetos almacenados en Swift. Aunque puede instalar Swift en un nico servidor, la instalacin de varios servidores es necesaria para entornos de produccin. Si desea instalar Almacenamiento OpenStack Object (Swift) en un nico nodo de con fines de desarrollo o de prueba, utilice el All In One Swift instrucciones sobre Ubuntu.

Para obtener ms informacin, consulte: http://swift.openstack.org/development_saio.html


28.

4,8. Soporte y solucin de problemas


Apoyo a la Comunidad OpenStack lista de correo29 La bsqueda Wiki OpenStack 30 Launchpad errores rea de31 Participe en el canal de IRC # openstack en freenode.

4,9. Recursos
Cloud Computing - Servicio de modelos32 OpenStack Compute33 OpenStack Image Service34 OpenStack Object Storage Gua de administracin de Instalacin de almacenamiento de objetos OpenStack en Ubuntu35 http://cloudglossary.com/

4.10. Glosario
La documentacin de la nube Ubuntu utiliza una terminologa que puede ser familiar para algunos lectores. Este la pgina tiene como objetivo proporcionar un glosario de trminos y acrnimos. Nube - Un conjunto federado de mquinas fsicas que ofrecen los recursos informticos a travs de Virtual mquinas, aprovisionarse y recogido de forma dinmica. IaaS - Infraestructura como Servicio - servicios en la nube de infraestructura, mediante el cual un virtualizado ambiente se entrega como un servicio a travs de Internet por el proveedor. La infraestructura puede el medio son los servidores, equipos de red y software.
28 http://swift.openstack.org/development_saio.html 29 https://launchpad.net/ ~ openstack 30 http://wiki.openstack.org 31 https://bugs.launchpad.net/nova 32 Nmero de http://en.wikipedia.org/wiki/Cloud_computing Service_Models 33 docs.openstack.org / trunk / openstack a calcular / 34 http://docs.openstack.org/diablo/openstack-compute/starter/content/GlanceMS-d2s21.html 35

338

Virtualizacin

EBS - Almacenamiento bloque elstico. EC2 - Elastic Compute Cloud. Pago por horas-de Amazon, pagar-por-el-gigabyte nube pblica de computacin que ofrece. Nodo - Un nodo es un equipo fsico que es capaz de ejecutar mquinas virtuales, ejecutar un nodo de controlador. Dentro de Ubuntu, esto generalmente significa que la CPU tiene extensiones VT, y puede ejecutar la Hipervisor KVM. S3 - Simple Storage Service. Pago-por-el-gigabyte de Amazon solucin de almacenamiento persistente para EC2. Nube de Ubuntu - Ubuntu Cloud. Ubuntu solucin de cloud computing, sobre la base de OpenStack. VM - Virtual Machine. VT - La tecnologa de virtualizacin. Una caracterstica opcional de algunas CPU moderna, permitiendo acelerados de alojamiento de mquinas virtuales.

339

Virtualizacin

5. LXC
Los contenedores son una tecnologa de virtualizacin de peso ligero. Ellos se parecen ms a una jaula mayor que el a la virtualizacin completa como Qemu o VMware, tanto porque no emular el hardware y porque contenedores de compartir el mismo sistema operativo que el host. Por lo tanto los contenedores estn mejor en comparacin con Zonas de Solaris o BSD crceles. Linux-vserver y OpenVZ son dos pre-existente, desarrollada de forma independiente implementaciones de contenedores-al igual que la funcionalidad de Linux. De hecho, los contenedores se produjo como resultado de los trabajos que aguas arriba del vserver y la funcionalidad de OpenVZ. Algunos vserver y OpenVZ funcionalidad que an falta en los contenedores, sin embargo, los recipientes se pueden arrancar muchas distribuciones de Linux y tienen la ventaja de que pueden ser utilizados con un ncleo aguas arriba sin modificar. Hay dos implementaciones en espacio de usuario de los contenedores, cada uno aprovechando las caractersticas del kernel mismo. Libvirt permite el uso de los contenedores a travs del controlador LXC mediante la conexin a ':/ LXC / /'. Esto puede ser muy conveniente, ya que soporta el mismo uso que los otros conductores. La aplicacin otro, llamado simplemente "LXC ', no es compatible con libvirt, pero es ms flexible, con herramientas de usuario ms. Es posible cambiar entre los dos, aunque existen algunas peculiaridades que pueden causar confusin. En este documento se describir principalmente el paquete LXC. Hacia el final, vamos a describir cmo utilizar el controlador de LXC libvirt. En este documento, un nombre de contenedor se muestra como CN, C1, o C2.

5,1. Instalacin
El paquete LXC puede ser instalado utilizando

sudo apt-get install LXC

Esto har que en las dependencias necesarias y recomendadas, incluyendo cgroup-lite, lvm2, y debootstrap. Para utilizar libvirt-LXC, instalar libvirt-bin. LXC y libvirt LXC-puede ser instalado y utilizado en la mismo tiempo.

5,2. Configuracin de Host


5.2.1. Disposicin bsica de los archivos LXC Lo que sigue es una descripcin de los archivos y directorios que estn instalados y utilizados por LXC. Hay dos puestos de trabajo advenedizos: / Etc / init / LXC-net.conf: es un trabajo opcional que slo se ejecuta si / Etc / default / LXC especifica USE_LXC_BRIDGE (true por defecto). Establece un puente de NAT para los contenedores para su uso. / Etc / init / lxc.conf: se ejecuta si LXC_AUTO (true por defecto) se establece en true en el / Etc / default / LXC. Busca entradas en / Etc / LXC / auto / que son enlaces simblicos a los archivos de configuracin para el contenedores que se debe iniciar en el arranque.

340

Virtualizacin

/ Etc / LXC / lxc.conf: No es un contenedor por defecto la creacin de archivos de configuracin, / Etc / LXC
/ lxc.conf, Que dirige los recipientes a utilizar el puente LXC creado por el trabajo advenedizo LXC-net. Si no hay archivo de configuracin se especifica cuando se crea un contenedor, entonces ste ser utilizado.

Ejemplos de otros archivos de configuracin de creacin de contenedores se encuentran en / Usr / share / doc /
LXC / ejemplos.

Estos muestran cmo crear contenedores sin una red privada, o el uso de macvlan, VLAN, o de otros esquemas de la red.

Las diversas herramientas de administracin de contenedores se encuentran en / Usr / bin. / Usr / lib / LXC / init-LXC es un binario init muy mnima y ligera que es utilizada por LXCejecutar. En lugar de `arrancar 'un contenedor lleno, de forma manual se monta un sistema de ficheros, siendo los / proc, Y ejecuta sus argumentos. No es probable que tenga que consultar manualmente este archivo. / Usr / lib / LXC / templates / contiene las plantillas `'que pueden ser utilizados para crear nuevos envases de varias distribuciones y sabores. No todas las plantillas estn disponibles actualmente. / Etc / apparmor.d / LXC / LXC-default contiene el valor por defecto Apparmor poltica MAC que trabaja para proteger al husped de contenedores. Por favor vea el Seccin 5.2.6, "AppArmor" [p. 342] para ms informacin. / Etc / apparmor.d / usr.bin.lxc de inicio contiene un perfil para proteger al husped de LXC-inicio mientras que es la creacin del contenedor. / Etc / apparmor.d / LXC-contenedores hace que todos los perfiles definidos en / Etc / apparmor.d / LXC a ser cargados en el arranque. Hay varias pginas man para las herramientas de administracin de LXC, as como la lxc.conf contenedor archivo de configuracin. / Var / lib / LXC Es aqu donde los contenedores y su informacin de configuracin se guardan. / Var / cache / LXC es donde los caches de datos de distribucin se almacenan para acelerar el envase mltiple creaciones. 5.2.2. lxcbr0 Cuando USE_LXC_BRIDGE se establece en true en / etc / default / LXC (como est por defecto), un puente llamado lxcbr0 en el inicio. Este puente se da la direccin privada 10.0.3.1, y los contenedores con este puente se crea tendr una direccin 10.0.3.0/24. Una instancia de dnsmasq se ejecuta escuchando en ese puente, por lo que si otra dnsmasq se ha unido a todas las interfaces antes de que el trabajo de advenedizo LXC-net se ejecuta, LXC-net no se podr iniciar y lxcbr0 no existe. Si usted tiene otro puente - por defecto libvirt de virbr0, o un puente br0 de su tarjeta de red por defecto - se puede utilizar ese puente en lugar de lxcbr0 de sus contenedores. 5.2.3. El uso de un sistema de ficheros separado para el almacn de contenedores LXC contenedor almacena la informacin y (con el depsito de seguridad por defecto) sistema de archivos raz en /
Var / lib / LXC. Plantillas en / Var / cache / LXC.

de creacin de contenedores tambin tienden a almacenar en cach la informacin de distribucin

341

Virtualizacin

Si desea utilizar otro sistema de archivos de / Var, Se puede montar un sistema de archivos que tiene ms espacio en esos lugares. Si usted tiene un disco dedicado para esto, slo tiene que montar en / Var / lib / LXC. Si desea utilizar otra ubicacin, como / Srv, Se puede enlazar montar o usar un enlace simblico. Para ejemplo, si / Srv es un sistema de archivos de gran monta, crear y enlace a dos directorios:

sudo mkdir / srv / lxclib / srv / lxccache sudo rm-rf / var / lib / LXC / var / cache / LXC sudo ln-s / srv / lxclib / var / lib / LXC sudo ln-s / srv / lxccache / var / cache / LXC

o, el uso de bases de vinculacin:

sudo mkdir / srv / lxclib / srv / lxccache sudo sed-i '$ a \ / Srv / lxclib / var / lib / por defecto, se unen lxcnone 0 0 \ / Srv / lxccache / var / cache / defaults LXC ninguno, se unen 0 0 '/ etc / fstab sudo mount-a

5.2.4. Contenedores respaldados por lvm Es posible utilizar particiones LVM como los almacenes de respaldo para los contenedores. Las ventajas de este incluyen flexibilidad en la gestin del almacenamiento y la clonacin de contenedores rpido. Las herramientas por defecto a la utilizacin de un VG (volumen grupo) llamadorespaldo contenedor, se puede utilizar aarchivos de configuracin siguecomandos.Var / lib / LXC / un almacn de LXC, pero otra VG el contenedor de travs de opciones de lnea de siendo / Cuando un LV se utilizaconfig, Pero el CN / como entrada raz fs en ese archivo (lxc.rootfs) apuntar al nombre del dispositivo IV bloque, es decir, / Dev / LXC / NC. Los contenedores de rbol de directorios y las tiendas de LVM de respaldo pueden coexistir. 5.2.5. Btrfs Si el anfitrin tiene un btrfs / Var, Las herramientas de administracin LXC lo detectar y automticamente lo explotan por contenedores de clonacin usando instantneas Btrfs. 5.2.6. AppArmor Barcos LXC con un perfil de AppArmor la intencin de proteger al husped de mal uso accidental de privilegio dentro del recipiente. Por ejemplo, el contenedor no ser capaz de escribir a / Proc / sysrq de gatillo fcil o para ms / Sys archivos.

La usr.bin.lxc de inicio perfil se introduce mediante la ejecucin LXC de inicio. Este perfil principalmente impide LXC- montaje de nuevos sistemas de ficheros fuera del sistema de archivos raz del contenedor. Antes de comenzar de ejecutar el contenedor init, LXC peticiones de un interruptor para el perfil del contenedor. Por defecto, este perfil es el LXCcontenedores por defecto poltica que se define en / Etc / apparmor.d / LXC / LXC-default. Este perfil evita que el contenedor de acceso a muchos caminos peligrosos, y de montaje en la mayora de los sistemas de archivos. 342

Virtualizacin

Si usted encuentra que LXC-inicio est fallando debido a un acceso legtimo que se le niega por su Apparmor la poltica, usted puede desactivar el perfil LXC-Comience por hacer:

sudo apparmor_parser-R / etc / apparmor.d / usr.bin.lxc de inicio sudo ln-s / etc / apparmor.d / usr.bin.lxc de inicio / etc / apparmor.d / desactivado /

Esto har que LXC-inicio corren no confinados, sino que siguen para confinar el propio envase. Si usted tambin desea para inhabilitar el confinamiento del contenedor, a continuacin, adems de la desactivacin usr.bin.lxc de inicio perfil, debe agregar:

lxc.aa_profile = confinados

al archivo de configuracin del contenedor. Si desea ejecutar un contenedor en un perfil personalizado, puede crear un nuevo perfil bajo / Etc / apparmor.d / LXC /. Su nombre debe empezar con LXC- a fin de que LXC-inicio para ser permite la transicin a dicho perfil. Despus de crear la poltica, hay que cargarlo con:

sudo apparmor_parser-r / etc / apparmor.d / LXC-contenedores

El perfil se cargar automticamente despus de un reinicio, ya que tiene su origen en el archivo / Etc /
apparmor.d / LXC-contenedores. Finalmente, para

hacer contenedor NC utilizar esta nueva LXC-NC-el perfil, Agrega el siguiendo la lnea a su fichero de configuracin:

lxc.aa_profile = LXC-NC-el perfil

LXC a ejecutar no entrar en un perfil de AppArmor, pero el envase que se genera se limita. 5.2.7. Grupos de Control Los grupos de control (cgroups) son una caracterstica del ncleo facilitar la concentracin de tareas jerrquico y por cgroupcontabilidad de recursos y los lmites. Se utilizan en contenedores para limitar el acceso al dispositivo de bloque y y congelar carcter (suspender) los contenedores. Pueden usarse adems para limitar el uso de la memoria y el bloque i / o, garantizar el mnimo de acciones de la CPU, y para fijar los contenedores para las CPUs especficas. De forma predeterminada, LXC depende de el paquete cgroup-lite para ser instalado, que proporciona la inicializacin cgroup adecuada en el arranque. La cgroup-lite paquete se monta cada subsistema por separado en cgroup / Sys / fs / cgroup / SS, Donde SS es el nombre del subsistema. Por ejemplo, el subsistema congelador est montado bajo / Sys / fs / cgroup /
congelador. LXC cgroup

se mantienen bajo / Sys / fs / cgroup / SS / init / LXC, Donde INIT es la tarea de inicio de cgroup. Es /por defecto, as que al final de la cgroup congelador durante NC contenedores sera / Sys / fs / cgroup / congelador / LXC / NC. 5.2.8. Privilegio Las herramientas de administracin de contenedores debe ejecutarse con privilegios de usuario root. Una utilidad llamada LXC-setup fue escrito con la intencin de proporcionar las herramientas con las capacidades de los archivos necesarios para permitir los no sea root queusuarios para ejecutar las herramientas con privilegios suficientes. Sin embargo, como usuario root en un contenedor que an no puede ser fiable 343

Virtualizacin

contenida, esto no vale la pena. Por tanto, se recomienda no utilizar LXC-setup, Y para proporcionar los administradores LXC el sudo es necesario privilegio. El espacio de nombres de usuario, que se espera que est disponible en el siguiente apoyo a largo plazo (LTS) de liberacin, permitir contencin del usuario root contenedor, as como reducir la cantidad de privilegio requerido para crear y administrar contenedores. 5.2.9. Trabajos LXC Upstart Como se mencion anteriormente, el paquete incluye dos puestos de trabajo LXC advenedizos. La primera, LXC-net, Siempre se inicia cuando el otro, LXC, Est a punto de comenzar, y se detiene cuando se detiene. Si la variable se establece en USE_LXC_BRIDGE falsa en / Etc / defaults / LXC, Entonces inmediatamente se cerrar. Si bien es cierto, y se produce un error traer hasta el puente LXC, entonces el LXC trabajo no se iniciar. LXC-net har bajar el puente cuando LXC detenido, a menos que un recipiente que se est ejecutando se utiliza ese puente. La LXC trabajo se inicia en el nivel de ejecucin 2.5. Si la variable LXC_AUTO se establece en true, entonces se ver en / Etc / LXC los contenedores que se debe iniciar automticamente. Cuando el LXC trabajo se detiene, ya sea manualmente o mediante la introduccin de niveles 0, 1 6, se detendr dichos contenedores. Para inscribirse en un contenedor que se inicie automticamente, crear un enlace simblico / Etc / default / LXC
/ name.conf

apuntando a un archivo de configuracin del contenedor. Por ejemplo, el archivo de configuracin para un contenedor NC es / Var / lib / LXC / CN / config. Para hacer que el contenedor se inicia automticamente, utilice el comando:

sudo ln-s / var / lib / LXC / CN / configuracin / etc / LXC / auto / CN.conf

5,3. Contenedor de Administracin


5.3.1. Creacin de Contenedores La forma ms sencilla de crear contenedores est utilizando LXC a crear. Esta secuencia de comandos utiliza la distribucin especfica de plantillas bajo / Usr / lib / LXC / templates / la creacin de contenedores de fcil chroot en / Var / lib / LXC / CN / rootfs, E inicializar la configuracin en / Var / lib / LXC / CN / fstab y / Var / lib / LXC /
CN / config,

Donde NC es el nombre del contenedor

El comando ms simple contenedor de la creacin se vera as:

sudo LXC-create-t ubuntu-n NC

Esto le dice a LXC a crear para usar la plantilla de Ubuntu (Ubuntu-t) y para llamar el contenedor CN (CN-n). Desde ningn archivo de configuracin se ha especificado (lo que se han hecho con '-f archivo'), se utilizar el valor por defecto archivo de configuracin en / Etc / LXC / lxc.conf. Esto le da al envase una nica interfaz de red veth unida al puente lxcbr0.

344

Virtualizacin

Las plantillas de creacin de contenedores tambin puede aceptar los argumentos. Estos pueden aparecer luego de -. Por ejemplo

sudo LXC-create-t ubuntu-n oneiric1 --- r onrico

pasa los argumentos a '-r oneiric1 "la plantilla de Ubuntu. 5.3.1.1. Ayuda Ayuda en el smbolo del LXC a crear puede ser visto mediante el uso de LXC-create-h. Sin embargo, las plantillas tambin tienen sus propias opciones. Si lo hace

sudo LXC-create-t ubuntu-h

a continuacin, el general LXC a crear ayuda ser seguido por la salida de ayuda especfica a la plantilla de ubuntu. Si no hay plantilla se especifica, entonces slo ayuda a los LXC a crear misma se muestran. 5.3.1.2. Ubuntu plantilla La plantilla ubuntu se puede utilizar para crear contenedores Ubuntu del sistema con cualquier liberacin al menos tan nuevo en 10.04. Se utiliza debootstrap para crear un sistema de archivos de contenedores en cach que se copia en su lugar cada vez que un contenedor se crea. La imagen se guardar en cach y slo volver a generar, al crear un recipiente utilizando el -F (Ras) opcin de la plantilla, es decir:

sudo LXC-create-t ubuntu-n NC --- F

La versin de Ubuntu instalado por la plantilla ser la misma que en el host, salvo especificado con el -R opcin, es decir,

sudo LXC-create-t ubuntu-n NC --- r lcida

Si desea crear un contenedor de 32 bits en un host de 64-bit, pasar -I386 al contenedor. Si usted tiene la qemu-user-esttica paquete instalado, entonces usted puede crear un contenedor con cualquier arquitectura compatible por qemu-user-esttica. El contenedor tiene un usuario llamado Ubuntu cuya contrasea es Ubuntu y que es miembro de la sudo grupo. Si se desea incorporar a un pblico clave ssh para la Ubuntu usuario, puede hacerlo con -S sshkey.pub. Tambin puede se unen el usuario jperez desde el host en el recipiente con el -B jperez opcin. Esto copiar jperez contrasea y las entradas de sombra en el contenedor, asegrese de que su grupo por defecto y la cscara son 345

Virtualizacin

disponibles, lo agregue al grupo sudo, y se unen a montar su directorio home en el recipiente cuando el recipiente se ha iniciado. Cuando un recipiente se crea, el liberacin de actualizaciones archivo se aade a la del recipiente sources.list, y su archivo de paquetes sern actualizados. Si la liberacin del recipiente es mayor que 12.04 LTS, entonces el lxcguest paquete se instala automticamente. Alternativamente, si el - Cortar se especifica la opcin, a continuacin, la lxcguest paquete no se instalar, y muchos servicios se retira del recipiente. Esto dar lugar a un ms rpido el arranque, pero menos de actualizacin-capaz contenedor.

5.3.1.3. Ubuntu-nube de plantilla La plantilla de Ubuntu-nube crea contenedores de Ubuntu por descargar y extraer el publicado Ubuntu imgenes de nubes. Acepta algunas de las mismas opciones que la plantilla de ubuntu, es decir, -R puesta en libertad, -S sshkey.pub,-un arco, y -F para limpiar la imagen almacenada en cach. Tambin acepta algunas opciones adicionales. La -C opcin crear una nube recipiente, configurado para su uso con un servicio de metadatos. La -U opcin acepta una nube-init por el usuario del archivo de datos para configurar el contenedor en el arranque. Si -L es pasado, entonces no habr lugares instalado. La -T opcin se puede utilizar para elegir una ubicacin para extraer archivo comprimido en lugar de la publicacin nube tarball de la imagen. Por ltimo, el -I opcin establece un identificador de anfitrin de la nube de inicio, que por defecto se establece en un cadena aleatoria. 5.3.1.4. Otras plantillas Las plantillas de ubuntu y ubuntu en la nube estn bien soportados. Otras plantillas estn disponibles sin embargo. La plantilla de Debian crea un contenedor basado en Debian, usando debootstrap tanto como la plantilla de Ubuntu hace. Por defecto se instala un debian squeeze imagen. Un comunicado de alternativa se puede elegir mediante el establecimiento de la SUITE variable de entorno, es decir:

sudo SUITE sid = LXC-create-t debian-n d1

Dado que debian no se puede arrancar de forma segura dentro de un contenedor, los contenedores de Debian se va a recortar, como con la - Cortar opcin de la plantilla de Ubuntu. Para purgar la cach de imgenes de contenedores, llame a la plantilla directamente y le pasa el - Limpiar opcin.

sudo SUITE = sid / usr / lib / LXC / templates / LXC-debian - limpias

Una plantilla de Fedora existe, lo que genera los contenedores sobre la base de versiones de Fedora <= 14. Fedora versin 15 y mayores se basan en systemd, que la plantilla an no es capaz de convertir en un contenedor la configuracin de arranque. Antes de la plantilla de fedora es capaz de correr, usted tendr que asegurarse de que yum y rizo estn instalados. Un contenedor de Fedora 12 se pueden crear con

346

Virtualizacin

sudo LXC-create-t fedora-n Fedora12 --- R 12

Una plantilla de OpenSuSE existe, pero requiere que la zypper programa, que an no est empaquetado. La Plantilla de OpenSuSE tanto, no se admite. Dos plantillas de ms existen principalmente con propsitos experimentales. La plantilla busybox crea una muy recipiente pequeo sistema basado enteramente en busybox. La plantilla de sshd crea un contenedor de aplicaciones sshd corriendo en un espacio de red privada. La biblioteca de la acogida y los directorios de binarios son bindmontada en el recipiente, aunque no su / Home o / Root. Para crear, iniciar y ssh en un ssh contenedor, usted puede:

sudo LXC-create-t-n sshd ssh1 ssh-keygen-f Identificacin sudo mkdir / var/lib/lxc/ssh1/rootfs/root/.ssh sudo cp id.pub / var/lib/lxc/ssh1/rootfs/root/.ssh/authorized_keys sudo LXC-start-n-d ssh1 ssh-i id root @ SSH1.

5.3.1.5. Tiendas de Acompaamiento De forma predeterminada, LXC a crear pone sistema de archivos del contenedor raz como un rbol de directorios en el / Var / lib / LXC / CN / rootfs. Otra opcin es utilizar volmenes lgicos. Si un grupo de volmenes llamado LXC existe, puede crear un contenedor de lvm respaldado llama NC con:

sudo LXC-create-t ubuntu-n CN-B lvm

Si desea utilizar un grupo de volmenes llamado schroots, con un sistema de ficheros XFS 5G, entonces deberas usar

sudo LXC-create-t ubuntu-n CN-B lvm - schroots nombre_grupo_volmenes - fssize 5G - fstype xfs

5.3.2. Clonacin Para un rpido aprovisionamiento, puede que desee personalizar un contenedor cannica de acuerdo a sus necesidades y luego hacer varias copias de la misma. Esto puede hacerse con el LXC-clone programa. Dada una existente contenedor llamado C1, un nuevo contenedor denominado C2 pueden ser creados usando

LXC-clon-o sudo C1-C2 n

347

Virtualizacin

Si / Var / lib / LXC es un sistema de ficheros Btrfs, a continuacin, LXC-clone crear sistema de archivos C2 como una instantnea de la C1. Si sistema de archivos del contenedor raz es respaldado por LVM, entonces usted puede especificar el -S opcin para crear el nuevo rootfs como una instantnea de LVM del original de la siguiente manera:

LXC-clon-s-o sudo C1-C2 n

Ambas instantneas de LVM y btrfs proporcionar una clonacin rpida con el uso de disco muy pequeo inicial. 5.3.3. Inicio y detencin Para iniciar un contenedor, utilice LXC-comienzo-n NC. Por defecto LXC-inicio ejecutar / Sbin / init en el recipiente. Puede proporcionar un programa diferente para ejecutar, adems de los argumentos, como argumentos adicionales a los LXC de inicio:

sudo LXC-start-n de contenedores / sbin / init nivel de registro de depuracin =

Si no se especifica el -D (Demonio) opcin, entonces usted ver una consola (en el de contenedores / Dev / ver Seccin la consola, 5.3.5, "Consolas" [p. 350] para ms informacin) en el terminal. Si especificar el -D opcin, no se ve que la consola, y LXC de inicio de inmediato saldr el xito - incluso si una parte posterior de inicio contenedor ha fallado. Usted puede usar LXC-espera o LXC-monitor (Ver Seccin 5.3.4, "Supervisin del rgimen de contenedor" [p. 349]) para verificar el xito o fracaso de la puesta en marcha de contenedores. Para obtener informacin de depuracin LXC, utilice -O nombre-l debuglevel, por ejemplo:

sudo LXC-inicio-o lxc.debug-l-n DEBUG contenedor

Por ltimo, puede especificar los parmetros de configuracin en lnea con -S. Sin embargo, es generalmente recomienda colocarlos en el archivo de configuracin del contenedor en su lugar. Asimismo, una totalmente archivo de configuracin alternativo se puede especificar con la -F opcin, pero esto no se recomienda generalmente. Mientras que LXC-inicio corre el contenedor / Sbin / init,LXC a ejecutar utiliza un programa mnimo init llama LXCinit, que intenta montar / Proc,/ Dev / mqueue, Y / Dev / shm, Ejecuta los programas especificados en la lnea de comandos, y espera a que los termine de ejecutarse. LXC-inicio se destina a ser utilizado para sistema contenedores, mientras que LXC a ejecutar est diseado para contenedores de aplicaciones (Ver este artculo36 para ms). Puede detener un contenedor de varias maneras. Usted puede usar apagado, poweroff y reiniciar mientras est conectado en el recipiente. Para cerrar sin errores un contenedor externo (es decir, desde el host), puede emitir la LXC sudo shutdown-NC-n comando. Esto tiene un valor de tiempo de espera opcional. Si no se especifica,
36 https://www.ibm.com/developerworks/linux/library/l-lxc-containers/

348

Virtualizacin

las cuestiones de mando una seal SIGPWR al contenedor y vuelve inmediatamente. Si la opcin es utilizada, como en LXC sudo shutdown-n-CN-t 10, a continuacin, el comando esperar el nmero especificado de segundos para el contenedor para cerrar sin errores. Entonces, si el envase est todava funcionando, lo matar (Y todas las aplicaciones en ejecucin). Tambin se puede matar de inmediato el contenedor (sin ninguna posibilidad de aplicaciones a cerrar sin errores), utilizando sudo LXC-stop-n NC. Por ltimo, LXC matar se puede utilizar ms en general, para enviar seal a cualquier nmero del contenedor es de inicio. Mientras que el contenedor se est cerrando, usted puede esperar ver algunos mensajes de error (inofensiva), como sigue:
$ Sudo poweroff Contrasea [sudo] para Ubuntu: = $ = Difundir mensaje de ubuntu @ CN1 (/ Dev / LXC / consola) a las 18:17 ... El sistema se est cerrando para apagar AHORA! * Pedir a todos los dems procesos para terminar ... ... Hecho. * Todos los procesos de finalizado el plazo de 1 segundo .... ... Hecho. * Desconfigurar las interfaces de red ... ... Hecho. * Desactivacin de intercambio ... No ...! umount: / run / bloqueo: no est montado umount: / dev / shm: sin montar Montaje: / est ocupado * Ahora se detendr

Un contenedor puede ser congelado con sudo LXC-congelacin-n NC. Esto bloquear todos los procesos hasta que el recipiente es posterior descongelado utilizando sudo LXC-descongelar-n NC. 5.3.4. Supervisin del rgimen de depsito Dos comandos estn disponibles para controlar los cambios de contenedores del estado. LXC-monitor monitores uno o ms contenedores para los cambios de estado. Se necesita un nombre de contenedor como es habitual con el -N opcin, pero en este caso el nombre del contenedor puede ser una expresin posix regular para permitir el seguimiento conjuntos deseables de los contenedores. LXC-monitor contina funcionando, ya que imprime cambios de contenedores. LXC-espera espera a que un estado cambiar y luego se cierra. Por ejemplo, especfico

sudo LXC-monitor-n cont [0-5] *

que imprimir todos los cambios de estado a los contenedores que coincidan con la expresin regular, mientras que la lista 349

Virtualizacin

sudo LXC-espera-n CONT1-s 'DETENIDO | CONGELADOS'

esperar hasta que el recipiente CONT1 entra en el estado DETENIDO o estado congelada y luego salir. 5.3.5. Consolas Los contenedores tienen un nmero configurable de las consolas. Uno siempre existe en el recipiente de / Dev / la consola. Esto se muestra en el terminal desde el que ejecut LXC de inicio, a menos que el -D opcin es especificado. La salida en / Dev / console se puede redirigir a un archivo utilizando el -C-archivo de la consola opcin para LXC de inicio. El nmero de consolas adicionales se especifica por el lxc.tty variable, y normalmente se establece a 4. Estas consolas se muestran en / Dev / ttyn (Para 1 <= n <= 4). Para acceder a la consola 3 desde el host, utilice

sudo LXC-consola-n de contenedores-t 3

o si el N-t opcin no se especifica, una consola sin usar se seleccionar automticamente. Para salir de la consola, utilice la secuencia de escape Ctrl-a q. Tenga en cuenta que la secuencia de escape no funciona en la consola resultante de LXC-inicio sin el -D opcin.

Cada consola es en realidad un contenedor de pty Unix98 en el de acogida (no de los huspedes) pty montaje, se unenmontado sobre el invitado de / Dev / ttyn y / Dev / console. Por lo tanto, si el cliente desmonta los o de lo contrario intenta acceder al dispositivo de carcter real 4: N, no se sirve getty al LXC consolas. (Con la configuracin predeterminada, el contenedor no podr acceder a dicho dispositivo de la fuente y getty por lo tanto, se producir un error.) Esto puede suceder fcilmente cuando un script de arranque ciegamente monta una nueva / Dev. 5.3.6. Inspeccin de contenedores Varios comandos estn disponibles para recoger informacin sobre los contenedores existentes. LXC-ls informar de todos los los contenedores existentes en su primera lnea de salida, y todos los recipientes se ejecutan en la segunda lnea. LXClist proporciona la misma informacinproporcionar listas detallado, lista de contenedores se ejecutan primero ps detuvo contenedores prximos. LXC-PS en un formato ms de procesos en los contenedores. Para proporcionar y se argumentos para LXCps, anteponer con -. Por ejemplo, para la inclusin de todos los procesos en el llano de contenedores,

sudo LXC-ps-n normal --- EF

LXC-info proporciona el estado de un contenedor y el pid del proceso de inicializacin. LXC-cgroup se puede utilizar para consultar o establecer los valores de los lmites de un contenedor del grupo de control e informacin. Esto puede ser ms conveniente que la se est ejecutando permite el acceso, se puede utilizar que un contenedor interaccin con el cgroup sistema de archivos. Por ejemplo, para consultar la lista de dispositivos

350

Virtualizacin

sudo LXC-cgroup-n NC devices.list

o para agregar mknod, leer y escribir en el acceso a la / Dev / sda,

sudo LXC-cgroup-n NC devices.allow "b 8: * RWM"

y, para limitarlo a 300M de memoria RAM,

LXC-cgroup-n NC memory.limit_in_bytes 300000000

LXC-netstat ejecuta netstat en el contenedor en ejecucin, que le da una idea de su estado de la red. LXC-copia de seguridad va a crear copias de seguridad de los sistemas de archivos raz de todos los contenedores existentes (excepto LVM basado en unos), utilizando rsync realizar una copia de los contenidos en el marco de / Var/lib/lxc/CN/rootfs.backup.1. Estas copias de seguridad se pueden restaurar utilizando LXC-restauracin. Sin embargo, LXC-copia de seguridad y LXC-restauracin son frgiles con respecto a personalizaciones y por lo tanto su uso no se recomienda. 5.3.7. La destruccin de los envases Utilizar LXC-destruir para destruir a un contenedor existente.

sudo LXC-destruir-n NC

Si el contenedor est en funcionamiento, LXC-destruir terminar con un mensaje que le informa que puede forzar detener y destruir el recipiente con

sudo LXC-destruir-n CN-f

5.3.8. El uso de espacio de nombres avanzada Una de las caractersticas del kernel de Linux utilizado por LXC para crear contenedores de espacios de nombres es privado. Los espacios de nombres permiten una serie de tareas que tienen asignaciones privados de nombres a los recursos para cosas como rutas de acceso y los identificadores de otras caractersticas de montaje"Recursos" [p. utilizan para crearms A diferencia de los grupos de control y proceso. (Vase Seccin 5.9, que tambin se 360] un enlace a los informacin). los espacios de nombres contenedores, no puede ser manipulado utilizando una interfaz de sistema de archivos. Por lo tanto, barcos LXC con el LXC-deje de compartir programa, que es principalmente para la prueba. Se ofrece la posibilidad de crear nuevas tareas en los espacios de nombres particulares. Por ejemplo, 351

Virtualizacin

sudo LXC-deje de compartir-s 'MONTAJE | PID / bin / bash

crea un shell bash con pid privada y los espacios de montaje. En esta capa, que puede hacer

root @ root @ UIDPID root10 raz

ubuntu: ~ # mount-t proc proc / proc ubuntu: ~ # ps-ef PPID C STIME TTYTIME CMD 6 10:20 pts/900: 00:00 / bin / bash 110 1 0 10:20 pts / 9 00:00:00 ps-ef

de modo que ps slo muestra las tareas en el nuevo espacio de nombres. 5.3.9. Contenedores efmeras Contenedores son efmeros de una sola vez los contenedores. Dado un CN contenedor existente, puede ejecutar una comando en un contenedor de lo efmero creado en base a CN, con el usuario jperez del husped obligado en la recipiente, utilizando:

LXC-start-efmera-jperez b-o CN - / home / jperez / run_my_job

Cuando el trabajo est terminado, el contenedor ser descartado. 5.3.10. Los comandos de contenedores A continuacin se presenta una tabla de todos los comandos de contenedores:

Tabla 20.3. Comandos de contenedores


Comando LXC a colocar LXC-copia de seguridad LXC-cgroup LXC-checkConfig LXC-puesto de control LXC-clone LXC-console LXC a crear LXC-destruir LXC a ejecutar Sinopsis (No soportado) Ejecutar un comando en un recipiente corriendo Copia de seguridad de los sistemas de archivos raz para todos los contenedores lvm respaldados Ver y configurar la configuracin del grupo de control de contenedores Verificar el apoyo de acogida para los contenedores (No soportado) Checkpoint un recipiente corriendo Clonar un nuevo envase de uno ya existente Abra una consola en un recipiente corriendo Crear un nuevo contenedor Destruye un contenedor existente Ejecutar un comando en un contenedor de aplicaciones (no funciona)

352

Virtualizacin

Comando LXC-congelacin LXC-info LXC matar LXC-list LXC-ls LXC-monitor LXC-netstat LXC-PS LXC-restart LXC-restauracin LXC-setcap LXC-setuid LXC-apagado LXC-inicio LXC-start-efmera LXC-stop LXC-descongelar LXC-deje de compartir LXC-versin LXC-espera

Sinopsis Congelar un recipiente corriendo Imprimir informacin sobre el estado de un contenedor Enviar una seal a un contenedor de inicio Lista de todos los contenedores Lista de todos los contenedores con una menor produccin que LXC-list Controlar los cambios de estado de uno o ms recipientes Ejecutar netstat en un recipiente corriendo Ver informacin del proceso en un recipiente corriendo (No soportado) Reiniciar un contenedor de punto de control Restaurar los contenedores de copias de seguridad realizadas por LXC-copia de seguridad (NO RECOMENDADO) Establecer las capacidades de archivo en las herramientas LXC (NO RECOMENDADO) Establecer o quitar los bits setuid en las herramientas LXC Con seguridad apagar un contenedor Iniciar un contenedor parado Iniciar un efmero (una sola vez) de contenedores Inmediatamente deje correr un contenedor Liberar un recipiente congelado Prueba de herramienta para dejar de compartir espacios de nombres de forma manual Imprimir la versin de las herramientas LXC Espere a que un contenedor para llegar a un estado particular

5,4. Archivo de configuracin


Contenedores LXC son muy flexibles. El paquete Ubuntu LXC establece valores predeterminados para la creacin de Ubuntu los recipientes del sistema lo ms simple posible. Si necesita ms flexibilidad, este captulo se mostrar cmo afinar sus contenedores como sea necesario. La informacin detallada est disponible en el lxc.conf (5) La pgina man. Tenga en cuenta que las configuraciones por defecto creado por las plantillas de ubuntu son razonables para un contenedor de sistema y por lo general no es necesario personalizacin. 5.4.1. Seleccin de los archivos de configuracin y opciones La configuracin de recipiente es controlado por las opciones de configuracin LXC. Las opciones pueden ser especificadas en varios puntos: Durante la creacin del contenedor, un archivo de configuracin se puede especificar. Sin embargo, la creacin de plantillas, es habitual insertar sus propias opciones de configuracin, as que por lo general slo se especifican las opciones de configuracin de red en 353

Virtualizacin

este punto. Por otra configuracin, por lo general es mejor para editar el fichero de configuracin que el contenedor creacin. El archivo / Var / lib / LXC / CN / config se utiliza en el inicio de contenedores por defecto. LXC-inicio acepta un archivo de configuracin alternativa con el -F nombre de archivo opcin. Las variables especficas de configuracin se puede anular en LXC-inicio uso -S clave = valor. En general, es mejor para editar el archivo de configuracin del contenedor. 5.4.2. Configuracin de la red La creacin de redes de contenedores en LXC es muy flexible. Se desencadena por el lxc.network.type configuracin las entradas del archivo. Si no hay entradas que existan, a continuacin, el contenedor ser compartir la pila de la red de acogida. Servicios y las conexiones iniciadas en el contenedor va a utilizar la direccin IP del anfitrin. Si al menos uno lxc.network.type la entrada est presente, entonces el contenedor tendr una privada (nivel 2) de la red pila. Tendr sus propias interfaces de red y las reglas de firewall. Hay varias opciones para lxc.network.type: lxc.network.type = vaco: El contenedor no tienen interfaces de red que no sean de bucle invertido. lxc.network.type = veth: Este es el valor predeterminado cuando se utilizan las plantillas de Ubuntu o Ubuntu en la nube, y crea un tnel de red veth. Un extremo de este tnel se convierte en la interfaz de red en el interior del recipiente. El otro extremo est conectado a un puente sobre el husped. Cualquier nmero de tales tneles puede ser creado mediante la adicin de ms lxc.network.type = veth entradas en el archivo de configuracin del contenedor. La puente para que el extremo del host del tnel se adjunta se especifica con lxc.network.link = lxcbr0. lxc.network.type = phys Un interfaz de red fsica (es decir, eth2) se hace pasar al interior del recipiente. Las otras dos opciones son utilizar VLAN o macvlan, sin embargo, su uso es ms complicado y no es se describe aqu. Algunas otras opciones de red existen: lxc.network.flags Slo se puede establecer a hasta y asegura que la interfaz de red es de hasta. lxc.network.hwaddr especifica una direccin MAC para asignar la tarjeta del interior del contenedor. lxc.network.ipv4 y lxc.network.ipv6 establecer las direcciones IP correspondientes, si los que deben ser estticos. lxc.network.name especifica un nombre para asignar el interior del recipiente. Si esto no se especifica, una buena por defecto (es decir, eth0 para la primera NIC) que se elija. lxc.network.lxcscript.up especifica un script que se llamar despus de que el lado del host de la red tiene ha creado. Vase el lxc.conf (5) pgina del manual para ms detalles. 5.4.3. Control de grupo de configuracin Cgroup opciones se puede especificar mediante lxc.cgroup entradas. lxc.cgroup.subsystem.item = valor LXC instruye para establecer cgroup elemento del subsistema a valor. Tal vez sea ms fcil de darse cuenta de que esta voluntad simplemente escriba valor en el fichero artculo para el grupo control del contenedor para el subsistema subsistema. Para ejemplo, para establecer el lmite de memoria de 320M, puede agregar

354

Virtualizacin

lxc.cgroup.memory.limit_in_bytes = 320000000

lo que provocar 320000000 que se escriben en el archivo / Sys / fs / cgroup / memoria / LXC /
CN / limit_in_bytes.

5.4.4. Rootfs, montes y fstab Una parte importante de la configuracin del contenedor es el montaje de sistemas de ficheros diferentes en su lugar. El siguiente es un ejemplo de configuracin extracto de archivo mostrando las opciones de configuracin de uso comn:

lxc.rootfs = / var / lib / LXC / CN / rootfs lxc.mount.entry = proc / var / lib / LXC / CN / rootfs / proc proc nodev, noexec, nosuid 0 0 lxc.mount = / var / lib / LXC / CN / fstab

La primera lnea dice que el sistema de archivos del contenedor de la raz ya est montado en el / Var / lib / LXC / CN / rootfs. Si el sistema de archivos es un dispositivo de bloques (por ejemplo, un volumen lgico LVM), entonces la ruta de acceso al dispositivo de bloques se debe dar lugar. Cada lxc.mount.entry lnea debe contener un elemento para montar en formato fstab vlido. El directorio de destino debe ser precedido por / Var / lib / LXC / CN / rootfs, Incluso si lxc.rootfs apunta a un dispositivo de bloque. Por ltimo, lxc.mount apunta a un archivo, en formato fstab, que contiene elementos adicionales para montar. Ntese que todas estas entradas sern las organizadas por la mquina antes de que el contenedor de init se ha iniciado. De esta manera es posible de obligar a montar varios directorios desde el host en el recipiente. 5.4.5. Otras opciones de configuracin lxc.cap.drop se puede utilizar para evitar que el recipiente de tener u obtener siempre la lista capacidades. Por ejemplo, incluyendo

lxc.cap.drop = sys_admin

evitar que el contenedor de sistemas de ficheros de montaje, as como todas las otras acciones que requieren CAP_SYS_ADMIN. Vase el capacidades (7) pgina del manual para una lista de capacidades y sus significados. lxc.aa_profile = LXC-NC-el perfil especifica un perfil de AppArmor personalizada en la que para iniciar el recipiente. Ver Seccin 5.2.6, "AppArmor" [p. 342] para ms informacin. lxc.console = / ruta / a / consolefile har que los mensajes de consola que se escriben en el archivo especificado. lxc.arch especifica la arquitectura para el contenedor, por ejemplo x86 o x86_64. lxc.tty = 5 especifica que 5 consolas (adems de / Dev / console) Debe ser creado. Esto es, consolas estar disponible en / Dev/tty1 a travs de / Dev/tty5. Las plantillas de ubuntu establecer este valor en 4.

355

Virtualizacin

lxc.pts = 1024 especifica que el recipiente debe tener una empresa privada (Unix98) devpts sistema de archivos de montaje. Si esto no se especifica, a continuacin, el contenedor se comparten / Dev / pts con el anfitrin, que raramente se desea. El nmero 1024 significa que 1024 ptys debe permitirse en elLXC va a hacer (esencialmente) un ignora actualmente. Antes de comenzar el envase de inicio, contenedor, sin embargo, este nmero es

sudo mount-t devpts-o nueva-ventana devpts / dev / pts

dentro del recipiente. Es importante darse cuenta de que el contenedor no deben montar sistemas de ficheros devpts propia. Se puede hacer con seguridad montajes se unen o se mueven de su montaje / Dev / pts. Pero si lo hace

sudo mount-t devpts devpts / dev / pts

que volver a montarse ejemplo, el anfitrin devpts. Si se aade la opcin de montaje nueva-ventana, entonces ser montar un nuevo privado (vaco) ejemplo. En ningn caso va a volver a montar la instancia que se cre por LXC. Por esta razn, y para evitar que el recipiente de utilizar ptys del husped, el valor predeterminado La poltica de AppArmor no permitir que los contenedores para montar sistemas de ficheros devpts despus de que el init de contenedores tiene ha iniciado. lxc.devttydir especifica un directorio bajo / Dev en el que LXC crear sus dispositivos de consola. Si esta opcin no se especifica, a continuacin, los ptys no sern vinculantes a montarse sobre / Dev / console y /
Dev / ttyn. Sin

embargo, las actualizaciones de paquetes raros puede tratar a ciegas rm-f y, a continuacin mknod dichos dispositivos. Ellos no (porque el archivo ha sido montado en aprieto), haciendo que el paquete de actualizacin a fallar. Cuando lxc.devttydir es ajustado a LXC, por ejemplo, a continuacin, LXC se unir a montar la consola en los ptys / Dev / LXC / consola / LXC / ttyn, y, posteriormente, simblicamente vincularlos a / Dev / console y / Dev y / Dev / ttyn. Esto permite que las actualizaciones de paquetes para tener xito, aun a riesgo de hacer gettys futuras en esas consolas no hasta el siguiente reinicio. Este problema se resuelve con idealmente dispositivo espacios de nombres.

5,5. Las actualizaciones de Ubuntu contenedores


Debido a algunas limitaciones que se colocan en los contenedores, la actualizacin de paquetes, a veces puede fallar. Para ejemplo, un paquete de instalacin o actualizacin puede fallar si no se le permite crear o abrir un dispositivo de Esto a menudo bloquea todas las actualizaciones futuras hasta que el problema se ha resuelto. En algunos casos, puede bloques. evitar esto Instalando el contenedor, para evitar las restricciones de contenedores, y completar la actualizacin en de la jaula. Algunas de las cosas concretas que se denominan en ocasiones para impedir la actualizacin de paquetes incluyen: Las modificaciones de contenedores se realiza cuando la creacin de contenedores con la opcin - de corte. Las acciones que realiza lxcguest. Por ejemplo, debido / Lib / init / fstab se unen de montaje de la otro archivo, las actualizaciones mountall que insisten en la sustitucin de ese archivo puede fallar.

356

Virtualizacin

El exceso de montaje de los dispositivos de consola con ptys desde el host puede causar problemas con udev actualizaciones. Apparmor la poltica y las restricciones de los dispositivos de cgroup puede impedir la actualizacin de paquetes de realizar ciertas acciones. Capacidades cay por el uso de lxc.cap.drop Asimismo, puede dejar de realizar actualizaciones de los paquetes ciertas acciones.

5,6. LXC Libvirt


Libvirt es una potente solucin de gestin de hipervisor con el que podrs administrar Qemu, Xen y LXC mquinas virtuales, tanto local como remoto. El conductor LXC libvirt es una aplicacin independiente de lo que normalmente llamamos LXC. Algunas diferencias son: La configuracin se almacenan en formato XML No existen herramientas para facilitar la creacin de contenedores Por defecto no hay ninguna consola / Dev / console No hay apoyo (an) para reiniciar el envase o cierre total 5.6.1. La conversin de un contenedor de libvirt-LXC LXC Seccin 5.3.1, "Creacin de Contenedores" [p. 344] mostr cmo crear contenedores LXC. Si usted tiene crea un contenedor vlido LXC de esta manera, se puede manejar con libvirt. Recuperar un archivo XML de ejemplo de

wget http://people.canonical.com/ ~ serge/o1.xml

Editar este archivo para reemplazar el nombre del contenedor y la ubicacin del sistema de archivos raz. A continuacin, puede definir el recipiente con:

virsh-c LXC :/ / / definir o1.xml

5.6.2. Creacin de un contenedor de imagen de la nube Si prefiere crear un contenedor prstina nuevo slo para LXC, puede descargar una nube de Ubuntu imagen, extraer, y un punto libvirt LXC xml a la misma. Por ejemplo, encontrar la URL de un archivo comprimido raz de el ltimo da de Ubuntu 12.04 LTS imagen de la nube utilizando

url1 = `ubuntu-cloudimg-consulta precisa todos los das $ arch - formato"% {url} \ n "` url = `echo $ url1 | sed-e 's / .tar.gz / root \ 0 /'`

357

Virtualizacin

wget $ url filename = `basename $ url`

Extraer el tarball descargado, por ejemplo

mkdir $ HOME/c1 cd $ HOME/c1 sudo tar zxf $ nombre_archivo

Descargue la plantilla xml

wget http://people.canonical.com/ ~ serge/o1.xml

En la plantilla de XML, reemplace el nombre con o1 c1 y el directorio de origen / Var/lib/lxc/o1/rootfs con $ HOME/c1. A continuacin, defina el recipiente con

virsh define o1.xml

5.6.3. La interaccin con los contenedores libvirt Como hemos visto, puede crear un contenedor con libvirt-LXC

virsh-c LXC :/ / / definir container.xml

Para iniciar un recipiente llamado recipiente, utilizar

virsh-c LXC :/ / / inicio de contenedores

Para detener un contenedor en ejecucin, utilice

virsh-c LXC :/ / / destruir el recipiente

Obsrvese que mientras que el LXC-destruir comando elimina el contenedor, el virsh destruir comando detiene un contenedor de funcionamiento. Para eliminar la definicin de contenedor, utilice

358

Virtualizacin

virsh-c LXC :/ / / contenedor undefine

Para conseguir una consola a un contenedor en ejecucin, utilice

virsh-c LXC :/ / / consola de contenedores

Salir de la consola pulsando simultneamente las teclas Control y].

5,7. El paquete de lxcguest


En los 11.04 (Natty) y 11.10 (onrico) las emisiones de Ubuntu, un paquete se introdujo llamada lxcguest. Una imagen raz no modificado no pudo ser arrancado de forma segura dentro de un contenedor, pero una imagen con el lxcguest paquete instalado se poda iniciar como un contenedor, en hardware desnudo, o en un Xen, KVM, o VMware Virtual Machine.

A partir de la versin 12.04 LTS, el trabajo realizado anteriormente por el paquete de lxcguest pas a un segundo los paquetes principales, y el paquete fue eliminado en lxcguest. Como resultado, una no modificada 12,04 LTS imagen se puede arrancar como un contenedor, en hardware desnudo, o en un Xen, KVM, o de la mquina virtual de VMware. Para utilizar una versin anterior, el paquete de lxcguest se deben utilizar.

5,8. Seguridad
Un espacio de nombres identificadores de mapas a los recursos. Al no proporcionar un recipiente con cualquier ID que hacer referencia a una recurso, el recurso puede ser protegido. Esta es la base de algunas de la seguridad que proporciona al contenedor usuarios. Por ejemplo, los espacios de nombres de la CIP estn completamente aislados. Otros espacios de nombres, sin embargo, tienen diversos fugas que permiten el privilegio de ser inapropiada ejercida desde un recipiente a otro recipiente o al host. De forma predeterminada, los contenedores LXC se inician en una poltica de AppArmor para restringir algunas acciones. Sin embargo, al mismo tiempo una mayor seguridad es un objetivo para futuras versiones, en 12.04 LTS el objetivo de la poltica de AppArmor es no dejar de acciones maliciosas, sino ms bien dejar de dao accidental de la mquina por el husped. Vase el LXC de seguridad37 pgina wiki para ms, una informacin actualizada. 5.8.1. Llamadas explotables del sistema Es una caracterstica fundamental de que los recipientes contenedores compartir un ncleo con el host. Por lo tanto, si el ncleo contiene ninguna llamada del sistema explotables, el contenedor puede explotar stos tambin. Una vez que el contenedor controla el ncleo se puede controlar totalmente cualquier recurso a la hueste.
37 http://wiki.ubuntu.com/LxcSecurity

359

Virtualizacin

5,9. Recursos
El artculo de DeveloperWorks LXC: Herramientas contenedores Linux38 fue una introduccin temprana al uso de contenedores. El Contenedores Cookbook seguro39 demostr el uso de mdulos de seguridad para hacer los envases ms seguro. Las pginas del manual se hace referencia anteriormente se pueden encontrar en:
capacidades40 lxc.conf41

El proyecto de aguas arriba LXC est alojado en Sourceforge42. Los problemas de seguridad LXC se enumeran y se discuten en el el Consejo de Seguridad LXC pgina wiki43 Para ms informacin sobre espacios de nombres en Linux, vase: S. Bhattiprolu, Biederman EW, Hallyn SE, y D. Lezcano. Servidores virtuales y Check Point-/ reinicio en la corriente principal de Linux. SIGOPS Op-erating Revisin de los sistemas, de 42 aos (5), 2008.

38 https://www.ibm.com/developerworks/linux/library/l-lxc-containers/ 39 http://www.ibm.com/developerworks/linux/library/l-lxc-security/index.html 40 http://manpages.ubuntu.com/manpages/en/man7/capabilities.7.html 41 http://manpages.ubuntu.com/manpages/en/man5/lxc.conf.5.html 42 http://lxc.sf.net 43 http://wiki.ubuntu.com/LxcSecurity

360

Captulo 21. Clustering

361

Clustering

1. DRBD
Distribuida Replicated Block Device (DRBD) refleja los dispositivos de bloque entre varios hosts. La replicacin es transparente para otras aplicaciones en los sistemas host. Cualquier bloque discos duros de dispositivos, particiones, los dispositivos RAID, volmenes lgicos, etc se puede reflejar. Para empezar a utilizar DRBD, en primer lugar instalar los paquetes necesarios. Desde un terminal escriba:
sudo apt-get install drbd8-utils

Si est utilizando el virtual del ncleo como parte de una mquina virtual tendr que manualmente compilar el mdulo drbd. Puede ser ms fcil para instalar el paquete linux-servidor dentro de la mquina virtual.

Esta seccin abarca la creacin de un drbd para replicar una por separado / Srv particin, con un sistema de archivos ext3 entre dos hosts. El tamao de la particin no es particularmente relevante, pero ambas particiones tienen que ser los mismo tamao.

1,1. Configuracin
Los dos anfitriones de este ejemplo se llamar drbd01 y drbd02. Ellos tendrn que tener el nombre resolucin de configurarse a travs de DNS o el / Etc / hosts archivo. Ver Captulo 8, de nombres de dominio Service (DNS) [p. 139] para ms detalles. Para configurar drbd, en la edicin de acogida primeros / Etc / drbd.conf:
mundial {contador de uso no;} comn {{syncer tasa 100M;}} recursos r0 { protocolo C; inicio { WFC-tiempo de espera de 15; degr-WFC-tiempo de espera de 60 aos; } net { CRAM-HMAC-SHA1 alg; secreto compartido "secreto"; } el drbd01 { dispositivo / dev/drbd0; disco / dev/sdb1; Direccin 192.168.0.1:7788; meta-disco interno; } el drbd02 { dispositivo / dev/drbd0; disco / dev/sdb1; Direccin 192.168.0.2:7788;

362

Clustering
meta-disco interno; } }

Hay muchas otras opciones en / Etc / drbd.conf, Pero para este ejemplo su valor por defecto los valores estn muy bien. Ahora copia / Etc / drbd.conf el segundo anfitrin:

scp / etc / drbd.conf drbd02: ~

Y, por drbd02 mover el archivo a / Etc:

drbd.conf sudo mv / etc /

Ahora con la utilidad drbdadm inicializar el almacenamiento de datos meta. En cada servidor ejecute:

sudo drbdadm create-md r0

A continuacin, en ambas mquinas, inicie el demonio drbd:


sudo / etc / init.d / drbd inicio

En el drbd01, o cualquier host que desea ser el principal, escriba lo siguiente:

sudo ---- drbdadm sobrescribir los datos de toda la primaria-peer

Despus de ejecutar el comando anterior, los datos se iniciar la sincronizacin con el host secundario. Para ver el progreso, en drbd02 escriba lo siguiente:

reloj-n1 cat / proc / drbd

Para dejar de ver la prensa de salida Ctrl + c. Por ltimo, aadir un sistema de archivos para / Dev/drbd0 y montar:
sudo mkfs.ext3 / dev/drbd0 sudo mount / dev/drbd0 / srv

1,2. Pruebas
Para comprobar que los datos son en realidad la sincronizacin entre los ejrcitos copiar algunos archivos en el drbd01, la, primaria a / Srv:
sudo cp-r / etc / default / srv

Desmontar A continuacin, / Srv:


sudo umount / srv

363

Clustering

Degradar la primario servidor al secundario papel:

sudo drbdadm secundaria r0

Ahora, en el secundario servidor promover al primario papel:

sudo drbdadm primaria r0

Por ltimo, montar la particin:

sudo mount / dev/drbd0 / srv

Uso ls usted debe ver / Srv / default copia de la antigua primario anfitrin drbd01.

1,3. Referencias
Para ms informacin sobre DRBD ver el DRBD sitio web1. El drbd.conf pgina de manual2 contiene detalles sobre las opciones que no estn cubiertos en esta gua. Asimismo, consulte la drbdadm pgina de manual3. El DRBD Wiki de Ubuntu4 pgina tambin tiene ms informacin.

1 http://www.drbd.org/~~V 2 http://manpages.ubuntu.com/manpages/precise/en/man5/drbd.conf.5.html 3 http://manpages.ubuntu.com/manpages/precise/en/man8/drbdadm.8.html 4 https://help.ubuntu.com/community/DRBD

364

Captulo 22. VPN


OpenVPN es una red privada virtual (VPN) previsto en los repositorios de Ubuntu. Es flexible, fiable y seguro. Pertenece a la familia de SSL / TLS VPN de pilas (diferente de IPSec VPN). En este captulo se describe la instalacin y configuracin de OpenVPN para crear una VPN.

365

VPN

1. OpenVPN
Si desea algo ms que claves pre-compartidas OpenVPN hace que sea fcil de configurar y usar una clave pblica Infraestructura (PKI) para uso de certificados SSL / TLS para la autenticacin y el intercambio de claves entre los el servidor VPN y los clientes. OpenVPN puede ser utilizado en un modo de VPN ruta o un puente y puede ser configurado para utilizar UDP o TCP. El nmero de puerto puede ser configurado as, pero es el puerto 1194 de la oficial. Y slo se utiliza ese puerto nico para todas las comunicaciones. Implementaciones de los clientes VPN

estn disponibles para casi cualquier cosa, incluyendo todas las distribuciones de Linux, OS X, Windows y OpenWRT basadas en routers WLAN.

1,1. De instalacin del servidor


Para instalar openvpn en una terminal escriba:

sudo apt-get install openvpn

1,2. Instalacin de infraestructura de clave pblica


El primer paso en la construccin de una configuracin de OpenVPN es establecer una PKI (infraestructura de clave pblica). compone de: La PKI se un certificado separado (tambin conocido como una clave pblica) y la clave privada para el servidor y cada cliente, y un certificado de maestro de Autoridad (CA) certificado y la clave que se utiliza para firmar cada uno de los servidores y certificados de cliente. OpenVPN soporta la autenticacin bidireccional basada en certificados, lo que significa que el cliente debe autentificar el certificado de servidor y el servidor debe autenticar el certificado de cliente antes de mutua se establece la confianza.

Tanto el servidor y el cliente se autentique la otra, en primer lugar verificar que el certificado presentado fue firmado por la autoridad principal de certificacin (CA), y luego probando la informacin en el ahoracertificado autenticado de cabecera, como el nombre comn del certificado o el certificado de tipo (cliente o servidor).

1.2.1. Certificado de instalacin de la Autoridad Para configurar su propia autoridad de certificacin (CA) y la generacin de certificados y las claves para una OpenVPN clientes del servidor y mltiples primero copiar el easy-rsa directorio para / Etc / openvpn. Esto asegurar que cualquier cambio en las secuencias de comandos no se perdern cuando el paquete se actualiza. Desde un terminal para el cambio usuario root y:

mkdir / etc / openvpn / easy-rsa / cp-r / usr/share/doc/openvpn/examples/easy-rsa/2.0 / * / etc / openvpn / easy-rsa /

366

VPN

A continuacin, modifique / Etc / openvpn / easy-rsa o vars ajustando el siguiente a su entorno:

exportar KEY_COUNTRY = "EE.UU." exportacin KEY_PROVINCE = "NC" exportar KEY_CITY = "Winston-Salem" exportar KEY_ORG = "Ejemplo de empresa" exportacin KEY_EMAIL = "steve@example.com"

Escriba el siguiente para generar el certificado de maestro de Autoridad de certificacin (CA) y la clave:

cd / etc / openvpn / easy-rsa / vars fuente . / Clean-all . / Build-ca

1.2.2. Certificados de servidor A continuacin, vamos a generar un certificado y la clave privada para el servidor:
. / Build-key-server NombreDelServidor

Como en el paso anterior, la mayora de los parmetros pueden ser de pago. Dos otras consultas requieren positivo las respuestas, "Sign the certificate? [Y / n]" y "1 de 1 solicitudes de certificados certificados, se comprometen? [s / n]". Parmetros Diffie Hellman deben ser generados por el servidor OpenVPN:

. / Build-dh

Todos los certificados y las claves se han generado en las claves subdirectorio /. La prctica comn es copiar a / etc / openvpn /:

claves de cd / cp myservername.crt myservername.key ca.crt dh1024.pem / etc / openvpn /

1.2.3. Certificados de cliente El cliente VPN tambin se necesita un certificado para autenticarse en el servidor. Por lo general, se crea un certificado diferente para cada cliente. Para crear el certificado, escriba lo siguiente en una terminal, mientras que siendo usuario root:

cd / etc / openvpn / easy-rsa / vars fuente . / Build-key cliente1

Copie los siguientes archivos en el cliente utilizando un mtodo seguro:

367

VPN

/ etc / openvpn / ca.crt / etc/openvpn/easy-rsa/keys/client1.crt / etc/openvpn/easy-rsa/keys/client1.key A medida que los certificados de cliente y las claves slo son necesarios en la mquina cliente, debe eliminar desde el servidor.

1,3. Configuracin del servidor simple


Junto con la instalacin de OpenVPN tienes estos archivos de configuracin de ejemplo (y muchos ms, si si cheque):

root @ servidor :/ # ls-l / usr / share / doc / openvpn / examples / sample-configarchivos o total de 68 -Rw-r - r - 1 root root 3427 07/04/2011 15:09 client.conf -Rw-r - r - 1 root root 4141 07/04/2011 15:09 server.conf.gz

Comience con la copia y el desembalaje server.conf.gz a / etc / openvpn / server.conf.

sudo cp / usr / share / doc / openvpn ejemplos / / configuracin de la muestra-de los archivos / server.conf.gz / etc / openvpn / sudo gzip-d / etc / openvpn / server.conf.gz

Editar / Etc / openvpn / server.conf para asegurarse de que las siguientes lneas que enlazan con los certificados y claves que ha creado en la seccin anterior.
ca ca.crt cert myservername.crt clave myservername.key dh dh1024.pem

Eso es lo mnimo que tiene que configurar para tener un servidor OpenVPN de trabajo. Usted puede utilizar toda la configuracin predeterminada en el archivo server.conf muestra. Ahora iniciamos el servidor. Usted encontrar la tala y el error los mensajes de syslog.
root @ servidor :/ etc / openvpn # / etc / init.d / openvpn inicio * Iniciando el demonio de red privada virtual (s) ... * Autoarranque 'servidor' VPN [OK]

Ahora compruebe si OpenVPN creado una interfaz tun0:

root @ servidor :/ etc / openvpn # ifconfig tun0 tun0 Link encap: indeterm HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 inet addr: 10.8.0.1 punto a punto: 10.8.0.2 Mscara: 255.255.255.255 UP pointopoint RUNNING MULTICAST NOARP [...] MTU: 1500 Mtrica: 1

368

VPN

1,4. Configuracin del cliente simple


Hay varias implementaciones diferentes de clientes OpenVPN con y sin interfaces grficas de usuario. Usted puede leer ms acerca de los clientes en una seccin posterior. Por ahora se utiliza el cliente OpenVPN para Ubuntu, que es el mismo ejecutable que el servidor. As que tienes que instalar el paquete openvpn vez ms en el cliente la mquina:

sudo apt-get install openvpn

Esta copia en tiempo de la muestra client.conf archivo de configuracin a / etc / openvpn /.


sudo cp / usr / share / doc / openvpn ejemplos / / configuracin de la muestra-de los archivos / client.conf / etc / openvpn /

Copie las claves del cliente y el certificado de la CA que ha creado en la seccin anterior para, por ejemplo, / Etc / openvpn / y editar / Etc / openvpn / client.conf para asegurarse de que las siguientes lneas que enlazan con los archivos. Si tiene los archivos en / etc / openvpn / se puede omitir el paso.

ca ca.crt cert client1.crt clave client1.key

Y usted tiene que especificar al menos el nombre del servidor o la direccin de OpenVPN. Asegrese de que el cliente clave es en la configuracin. Eso es lo que activa el modo cliente.

cliente distancia vpnserver.example.com 1194

Ahora inicie el cliente OpenVPN:

root @ cliente :/ etc / openvpn # / etc / init.d / openvpn inicio * Iniciando el demonio de red privada virtual (s) ... * Autoarranque "cliente" VPN [OK]

Compruebe que ha creado una interfaz de tun0:

root @ cliente :/ etc / openvpn # ifconfig tun0 tun0 Link encap: indeterm HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 inet addr: 10.8.0.6 P-t-P: 10.8.0.5 Mscara: 255.255.255.255 MTU: 1500 Mtrica: 1 UP pointopoint RUNNING MULTICAST NOARP

Compruebe si puede hacer ping al servidor OpenVPN:

root @ cliente :/ etc / openvpn # ping 10.8.0.1 PING 10.8.0.1 (10.8.0.1) 56 (84) bytes de datos. 64 bytes from 10.8.0.1: icmp_req = 1 ttl = 64 tiempo = 0,920 ms

369

VPN

El servidor OpenVPN siempre utiliza la primera direccin IP utilizable en la red del cliente y slo que la propiedad intelectual es pingable. Por ejemplo si se ha configurado un / 24 de la mscara de red del cliente, la direccin 0.1 se utilizar. La direccin punto a punto que se ve en el resultado de ifconfig por encima de lo general no se responde de ping. solicitudes Echa un vistazo a las rutas:

root @ cliente :/ etc / openvpn # netstat-rn IP del Kernel de la tabla de enrutamiento DestinationGateway 10.8.0.50.0.0.0 10.8.0.110.8.0.5 192.168.42.0 0.0.0.0 0.0.0.0 192.168.42.1 GenmaskFlags 255.255.255.255 UH 255.255.255.255 UGH 255.255.255.0 0.0.0.0 U UG MSS Window 0 0 0 0 0 0 0 0 irtt Iface Tun0 0 Tun0 0 0 eth0 0 eth0

1,5. En primer lugar la resolucin de problemas


Si lo anterior no funciona para usted, revise lo siguiente: Revise su registro de sistema, por ejemplo, grep-i VPN / var / log / syslog Puede el cliente conectarse a la mquina del servidor? Tal vez un firewall est bloqueando el acceso? Compruebe syslog en el servidor. Cliente y servidor debe utilizar el mismo protocolo y el puerto, por ejemplo, El puerto UDP 1194, consulte configuracin del puerto y proto opcin Cliente y servidor debe usar misma configuracin en relacin con la compresin, vea comp-lzo opcin de configuracin Cliente y servidor debe usar misma configuracin en relacin con el modo versus puente encaminado, consulte el servidor vs servidor puente de una opcin de configuracin

1,6. Configuracin de Advanved


1.6.1. Advanced VPN enrutada de configuracin en el servidor Lo anterior es una VPN muy simple de trabajo. El cliente puede acceder a servicios en el equipo servidor VPN a travs de un tnel encriptado. Si quieres llegar a ms servidores o cualquier cosa en otras redes, impulsar algunas de las rutas a los clientes. Por ejemplo si la red de su empresa se puede resumir a la red 192.168.0.0/16, se puede llevar este camino a los clientes. Pero tambin tendr que cambiar la ruta para el camino de regreso - los servidores que necesita saber una ruta hacia el cliente VPN de la red.

O usted puede empujar una puerta de enlace predeterminada a todos los clientes para enviar todo su trfico de Internet puerta de enlace y de all a travs del firewall de la compaa en la internet. En esta seccin se muestran primera a la VPN algunas las opciones posibles. Presione rutas al cliente para que pueda llegar a otras subredes privadas detrs del servidor. Recuerde que estas subredes privadas tambin se necesita saber para dirigir el conjunto de direcciones del cliente OpenVPN (10.8.0.0/24) de vuelta al servidor OpenVPN.

370

VPN

impulsar "la ruta 10.0.0.0 255.0.0.0"

Si se habilita, esta directiva va a configurar todos los clientes para redirigir su puerta de enlace predeterminada a travs de la red la VPN, lo que todo el trfico IP, tales como la navegacin web y las bsquedas de DNS, y para ir a travs de la VPN (La mquina del servidor OpenVPN o el servidor de seguridad central, puede ser necesario NAT la interfaz TUN / TAP para que esto funcione correctamente). Internet para

push "redirect-gateway DEF1 by-pass-dhcp"

Configurar el modo de servidor y suministro de una subred VPN OpenVPN para dibujar las direcciones de los clientes de. La servidor se llevar a 10.8.0.1 por s mismo, el resto ser puesto a disposicin de los clientes. Cada cliente podr llegar al servidor en 10.8.0.1. Comenta esta lnea si usted est Ethernet puente.

servidor 10.8.0.0 255.255.255.0

Mantener un registro de cliente para las asociaciones virtuales de direcciones IP en este archivo. Si se cae o OpenVPN se reinicia, los clientes de reconexin se le puede asignar la misma direccin IP virtual de la piscina que era asignado previamente.

ifconfig-pool-persist ipp.txt

Presione servidores DNS para el cliente.

push "dhcp-option DNS 10.0.0.2" push "dhcp-option DNS 10.1.0.2"

Permitir al cliente que la comunicacin del cliente.


de cliente a cliente

Habilitar la compresin en el enlace de VPN.

comp-lzo

La directiva keepalive causa como mesa de ping-que se enven mensajes de ida y vuelta a travs del enlace de manera que cada lado sabe cuando la otra parte se ha reducido. Ping cada 1 segundo, se supone que es distancia entre pares de abajo si no hay mesa de ping recibidos durante un perodo de tiempo de 3 segundos.

keepalive 1 3

Es una buena idea para reducir los privilegios del demonio OpenVPN despus de la inicializacin.
usuario nobody grupo nogroup

371

VPN

OpenVPN 2.0 incluye una caracterstica que permite que el servidor OpenVPN para obtener con seguridad un nombre de usuario y contrasea de un cliente que se conecta, y utilizar esa informacin como base para la autenticacin del cliente. Para utilizar este mtodo de autenticacin, agregue primero la directiva de autenticacin del usuario de paso a la configuracin del OpenVPN para solicitar al usuario un nombre de usuario / contrasea, que pasa que en el servidor dirigir el cliente cliente. Lo sobre el canal seguro TLS.

# Configuracin del cliente! autenticacin de usuario de paso

Esto le dir al servidor OpenVPN para validar el usuario / contrasea introducidos por los clientes que utilizan la ingresa el mdulo PAM. Es til si usted tiene la autenticacin centralizada con, por ejemplo Kerberos.

plugin / usr / lib / openvpn / openvpn-auth-pam.so de inicio de sesin

Por favor lea la OpenVPN endurecimiento de la Gua de seguridadUn consejo de seguridad adicional.

1.6.2. Configuracin avanzada de puente VPN en el servidor OpenVPN puede configurar ya sea para una ruta o un puente modo de VPN. A veces esto se conoce tambin como capa del modelo OSI-2-3 en comparacin con la capa de VPN. En una VPN de capa-puente todos los 2 cuadros - POR EJEMPLO todas las tramas Ethernet - Se envan a los socios de VPN y VPN en un enrutados a slo 3 capas paquetes se envan a los socios de VPN. En el modo de puente todo el trfico, incluido el trfico que era tradicionalmente la LAN local como de red local emisiones, peticiones DHCP, etc peticiones ARP se envan a los socios VPN, mientras que en modo enrutado este se filtr. 1.6.2.1. Preparar la interfaz de configuracin para tender un puente en el servidor Asegrese de que tiene el paquete bridge-utils instalado:

sudo apt-get install bridge-utils

Antes de configurar OpenVPN en modo puente que necesita para cambiar su configuracin de la interfaz. Vamos a asumir que su servidor tiene una interfaz eth0 conectado a Internet y una interfaz eth1 conectada a de la LAN que desea salvar. El archivo / etc / network / interfaces que de esta manera:

auto eth0 iface eth0 inet static direccin 1.2.3.4 mscara de red 255.255.255.248 por defecto 1.2.3.1 auto eth1 iface eth1 inet static

# 1 http://openvpn.net/index.php/open-source/documentation/howto.html de seguridad

372

VPN
la direccin 10.0.0.4 mscara de red 255.255.255.0

Esta interfaz de configuracin recta hacia adelante hay que cambiar a un modo de puente, como en la configuracin de interfaz eth1 se mueve a la nueva interfaz br0. Adems, podemos configurar que debera llenar la interfaz br0 eth1. Tambin tenemos que asegurarnos de que la interfaz eth1 est siempre en modo promiscuo - le dice al Interfaz para desviar todas las tramas de Ethernet a la pila IP.

auto eth0 iface eth0 inet static direccin 1.2.3.4 mscara de red 255.255.255.248 por defecto 1.2.3.1

auto eth1 iface eth1 inet manual de por ip link set $ IFACE hasta el promisc

auto br0 iface br0 inet static la direccin 10.0.0.4 mscara de red 255.255.255.0 bridge_ports eth1

En este punto es necesario reiniciar la red. Est preparado para que esto podra no funcionar como se esperaba y que perder la conectividad remota. Asegrese de que puede resolver los problemas que tienen acceso local.

sudo / etc / init.d / network restart

1.6.2.2. Preparar el servidor de configuracin de puente Editar / Etc / openvpn / server.conf cambiar las siguientes opciones para:

; Dev tun dev tap arriba "/ etc / openvpn / up.sh br0 eth1" , Servidor 10.8.0.0 255.255.255.0 servidor de puente 10.0.0.4 255.255.255.0 10.0.0.128 10.0.0.254

A continuacin, cree un script de ayuda para agregar el aprovechar interfaz para el puente y para asegurarse de que es eth1 modo promiscuo. Crear / Etc / openvpn / up.sh:
#! / Bin / sh BR = $ 1 ETHDEV = $ 2 TAPDEV = $ 3 / Sbin / ip link set "$ TAPDEV" hasta

373

VPN
/ Sbin / ip link set "$ ETHDEV" promisc de / Sbin / brctl addif $ BR $ TAPDEV

A continuacin, hacerlo ejecutable:

sudo chmod 755 / etc / openvpn / up.sh

Despus de configurar el servidor, reinicie openvpn introduciendo:

sudo / etc / init.d / openvpn restart

1.6.2.3. Configuracin del cliente En primer lugar, instale openvpn en el cliente:

sudo apt-get install openvpn

Luego, con el servidor configurado y los certificados de cliente copia en el / Etc / openvpn / directorio, crear un archivo de configuracin de cliente copiando el ejemplo. En una terminal en la mquina cliente escriba:

sudo cp / usr / share / doc / openvpn ejemplos / / configuracin de la muestra-de los archivos / client.conf / etc / openvpn

Ahora edita / Etc / openvpn / client.conf cambiando las siguientes opciones:

dev tap ; Dev tun

Por ltimo, reinicie openvpn:

sudo / etc / init.d / openvpn restart

Ahora debera ser capaz de conectarse a la red LAN remota a travs de la VPN.

1,7. Implementaciones de software del cliente


1.7.1. Linux Network-Manager GUI para OpenVPN Muchas distribuciones de Linux, incluyendo las variantes de escritorio de Ubuntu vienen con Network Manager, un buen Interfaz grfica para configurar la configuracin de red. Tambin puede administrar las conexiones VPN. Asegrese de que tienen el paquete network-manager-openvpn instalado. Aqu puede ver que la instalacin instala todos los dems los paquetes requeridos, as:

root @ cliente: ~ # apt-get install network-manager-openvpn Leyendo lista de paquetes ... Hecho Creando rbol de dependencias Leyendo la informacin de estado ... Hecho

374

VPN
Los siguientes paquetes extras sern instalados: liblzo2-2-libpkcs11 helper1 network-manager-openvpn-gnome openvpn Paquetes sugeridos: resolvconf Los siguientes paquetes se instalarn: liblzo2-2-libpkcs11 helper1 network-manager-openvpn network-manager-openvpn-gnome openvpn 0 actualizados, 5 nuevos instalados, 0 para eliminar y 631 no actualizados. Necesito descargar 700 kB de archivos. Despus de esta operacin, 3.031 kB de espacio de disco adicional se utilizar. Desea continuar [S / n]?

Para informar a network-manager acerca de los nuevos paquetes instalados se tendr que reiniciar:

root @ cliente: ~ # reiniciar el gestor de red network-manager de arranque / funcionamiento, el proceso de 3078

Abra el Administrador de Red de interfaz grfica de usuario, seleccione la pestaa de VPN y luego el botn 'Aadir'. Seleccione OpenVPN como el tipo de VPN en el solicitante de la apertura y pulse en 'Crear'. En la siguiente ventana de agregar el OpenVPN servidor de nombres como el 'Gateway' set 'tipo' a los certificados (TLS) "," Certificado de Usuario "punto a su usuario certificado, "Certificado CA 'a su certificado de la CA y la" clave privada "a su archivo de clave privada. Utilice el botn Opciones avanzadas para habilitar la compresin u otros ajustes especiales se establecen en el servidor. Ahora trata de la VPN. establecer 1.7.2. OpenVPN con interfaz grfica de usuario para Mac OS X: Tunnelblick Tunnelblick es una excelente aplicacin gratuita y de cdigo abierto de una interfaz grfica para OpenVPN para OS X. La pgina de inicio del proyecto se encuentra en http://code.google.com/p/tunnelblick/. Descarga la ltima versin del sistema operativo de instalacin de X a partir de /ah e instalarlo. Entonces ponga Support / Tunnelblick de configuracin junto con los certificados y las en / Users usuario / Library / Application su client.ovpn fichero / Configuraciones / y Tunnelblick lauch claves de la carpeta de aplicaciones.

# Muestra client.ovpn de Tunnelblick cliente distancia blue.example.com puerto 1194 proto udp dev tun dev tun tipo ns-cert-tipo de servidor reneg seg-86400 autenticacin de usuario de paso auth-nocache auth-retry interactuar comp-lzo s 3 verbo ca ca.crt cert client.crt clave client.key

375

VPN

1.7.3. OpenVPN con interfaz grfica de usuario para Windows 7 Primero descargar e instalar la ltima versin OpenVPN Windows Installer2. OpenVPN 2.2.1 es la ltima cuando esto fue escrito. Adems descarga una alternativa Open VPN GUI de Windows. La OpenVPN GUI desde MI http://openvpn-mi-gui.inside-security.de parece ser uno bueno para Windows 7. Descargue la versin ms reciente. 20110624 fue la versin ms reciente cuando esto fue escrito. Es necesario para iniciar el servicio OpenVPN. Ir a Inicio> Equipo> Administrar> Servicios y Aplicaciones> Servicios. Encuentre el servicio OpenVPN y ponerlo en marcha. Establezca su tipo de inicio a automtico. Cuando se inicia el OpenVPN GUI MI primera vez que hay que ejecutar como administrador. Tiene hacer clic derecho sobre l y vers esa opcin. Usted tendr que escribir su configuracin de OpenVPN en un archivo de texto y colocarlo en C: \ Archivos de programa \ OpenVPN \ Config \ client.ovpn junto con el certificado de la CA. Se puede poner el certificado de usuario en el hogar del usuario directorio como en el ejemplo siguientes aparatos.

# C: \ Archivos de programa \ OpenVPN \ config \ client.ovpn cliente remota server.example.com puerto 1194 proto udp dev tun dev tun tipo ns-cert-tipo de servidor reneg seg-86400 autenticacin de usuario de paso auth-retry interactuar comp-lzo s 3 verbo ca ca.crt cert "C: \ \ Users \ \ \ username \ Mis documentos \ \ OpenVPN \ \ client.crt" tecla "C: \ \ Users \ \ nombre de usuario \ \ Mis documentos \ \ OpenVPN \ gestin 127.0.0.1 1194 \ client.key" gestin de retencin consulta gestin de contraseas auth-retry interactuar

1.7.4. OpenVPN para OpenWRT OpenWRT se describe como una distribucin de Linux para dispositivos embebidos como router WLAN. Hay ciertos tipos de routers WLAN, que puede ser flasheado a correr OpenWRT. Dependiendo de la disposicin la memoria en el router OpenWRT puede ejecutar software como OpenVPN y que podra, por ejemplo construccin de un pequeo router de bajo costo de la sucursal con conectividad VPN a la oficina central. Ms informacin sobre OpenVPN en OpenWRT es aqu3. Y aqu est la pgina del proyecto OpenWRT de: http:// openwrt.org
2 http://www.openvpn.net/index.php/open-source/downloads.html 3 http://wiki.openwrt.org/doc/howto/vpn.overview

376

VPN

Inicie sesin en el router OpenWRT e instalar OpenVPN:

opkg actualizacin opkg instalar OpenVPN

Echa un vistazo a / etc / config / openvpn y te ponen el cliente de configuracin en ese pas. Copia certificada de las teclas y para / etc / openvpn /

configuracin de openvpn cliente1 opcin de permitir a un opcin cliente 1 opcin dev tap # opcin dev tun opcin proto udp opcin ca / etc / openvpn / ca.crt

opcin de cert / etc / openvpn / client.crt tecla de opcin / etc / openvpn / client.key opcin de una comp_lzo

Reiniciar OpenVPN:

/ Etc / init.d / openvpn restart

Usted tendr que ver si es necesario ajustar el enrutamiento del router y las reglas del cortafuegos.

1,8. Referencias
Consulte el OpenVPN4 pgina web para obtener informacin adicional. OpenVPN endurecimiento de la Gua de seguridad5 Adems, los Pakt OpenVPN: construccin e integracin de redes privadas virtuales 6 es un buen recurso.

4 http://openvpn.net/ 5 # http://openvpn.net/index.php/open-source/documentation/howto.html de seguridad 6 http://www.packtpub.com/openvpn/book

377

Captulo 23. Otras aplicaciones tiles


Hay muchas aplicaciones muy tiles desarrollados por el equipo de Ubuntu Server, y otros que son bien integrado con Ubuntu Server Edition, que no pueden ser bien conocidos. En este captulo se mostrar algunas aplicaciones tiles que pueden hacer que la administracin de un servidor de Ubuntu, o muchos servidores de Ubuntu, que mucho ms fcil.

378

Otras aplicaciones tiles

1. pam_motd
Al iniciar sesin en un servidor de Ubuntu te habrs dado cuenta el mensaje informativo del Da (MOTD). Esta informacin se obtiene y se muestra mediante un par de paquetes: paisaje comn: proporciona las bibliotecas del ncleo del paisaje y el cliente, que pueden ser utilizadas para administrar sistemas que utilizan la web en base Paisaje aplicacin. El paquete incluye el / usr/bin/landscapeutilidad sysinfo que se utiliza para recopilar la informacin que aparece en el MOTD. update-notifier-common: se utiliza para actualizar automticamente el MOTD a travs del mdulo pam_motd. pam_motd ejecuta las secuencias de comandos en / Etc / update-motd.d en el orden basado en el nmero antepuesto el guin. La salida de los guiones se escriben en / Var / run / motd, Manteniendo el orden numrico, entonces concatenado con / Etc / motd.tail. Usted puede agregar la informacin de su propia dinmica a la MOTD. Por ejemplo, para aadir el clima local informacin: En primer lugar, instalar el paquete clima-util:

sudo apt-get install tiempo-util

La utilidad del tiempo utiliza los datos METAR de la Administracin Nacional Ocenica y Atmosfrica y las previsiones del Servicio Meteorolgico Nacional. Con el fin de encontrar informacin local tendr el de 4 caracteres Indicador de lugar OACI. Esto puede ser determinado por la navegacin a la Nacional El tiempo de servicioUn sitio.

Aunque el Servicio Meteorolgico Nacional es una agencia de gobierno de Estados Unidos no son el clima estaciones disponibles en todo el mundo. Sin embargo, la informacin del tiempo local para todas las ubicaciones fuera de los EE.UU. puede no estar disponible. Crear / Usr / local / bin / local a la intemperie, Un simple script de shell para utilizar el tiempo con su oficina local de la OACI Indicador:
#! / Bin / sh # # # Imprime la informacin del tiempo local para el MOTD. # #

# Vuelva a colocar KINT con su estacin meteorolgica local. # Estaciones locales se puede encontrar aqu: http://www.weather.gov/tg/siteloc.shtml eco el clima i KINT eco

1 http://www.weather.gov/tg/siteloc.shtml

379

Otras aplicaciones tiles

Haga el script ejecutable:

sudo chmod 755 / usr / local / bin / local a la intemperie

A continuacin, cree un enlace simblico a / Etc/update-motd.d/98-localweather:


sudo ln-s / usr / local / bin / local a la intemperie / etc/update-motd.d/98-local-weather

Por ltimo, salir del servidor y volver a entrar para ver el MOTD nuevo. Ahora debera ser recibido con un poco de informacin til, y alguna informacin sobre el local El tiempo que puede no ser tan til. Esperemos que el ejemplo local de clima demuestra la flexibilidad de pam_motd.

380

Otras aplicaciones tiles

2. etckeeper
etckeeper permite que el contenido de / Etc ser fcilmente almacenado en el control de versiones del sistema (VCS) repositorio. Se engancha a tienden a comprometerse de forma automtica los cambios en / Etc cuando los paquetes se han instalado o actualizado. Colocacin / Etc bajo control de versiones se considera una mejor prctica del sector, y es el objetivo de etckeeper para que este proceso sea lo menos doloroso posible. Instale etckeeper escribiendo lo siguiente en una terminal:

sudo apt-get install etckeeper

El archivo de configuracin principal, / Etc / etckeeper / etckeeper.conf, Es bastante simple. La opcin principal es que VCS para su uso. De forma predeterminada etckeeper est configurado para usar bzr para el control de versiones. El repositorio es inicializa automticamente (y se comprometieron por primera vez) durante la instalacin del paquete. Es posible deshacer esta introduciendo el siguiente comando:
No inic etckeeper sudo

De forma predeterminada, se compromete etckeeper cambios no confirmados realizados a / etc todos los das. Esto se puede desactivar utilizando la opcin de configuracin AVOID_DAILY_AUTOCOMMITS. Se har tambin de forma automtica confirmar los cambios antes y despus de la instalacin del paquete. Para un seguimiento ms preciso de los cambios, es recomienda confirmar los cambios manualmente, junto con un mensaje de confirmacin, mediante:

etckeeper sudo cometer ".. La razn para el cambio de configuracin .."

Con los comandos de control de versiones se puede ver informacin acerca de los archivos de registro en la / Etc:
registro de bzr sudo / etc / passwd

Para demostrar la integracin con el sistema de gestin de paquetes, instalar postfix:

sudo apt-get install postfix

Cuando la instalacin haya finalizado, todos los archivos de configuracin de sufijo debe estar comprometido con el repositorio:
Comprometerse a: / etc / aadido aliases.db modificacin del grupo grupo modificado gshadow modificado gshadow-modificado modificado passwd modificado passwdaadido postfix

381

Otras aplicaciones tiles


resolvconf aadido aadido rsyslog.d modificada por la sombra sombra-modificado aadido init.d / postfix aadido network / if-down.d / postfix aadido network / if-up.d / postfix aadido postfix / dynamicmaps.cf aadido postfix / main.cf aadido postfix / master.cf aadido postfix aadido postfix aadido postfix aadido postfix / / / / post-instalacin postfix-archivos postfix-script sasl

aadido ppp / ip-down.d aadido ppp / ip-down.d / postfix aadido ppp / ip-up.d / postfix aadido rc0.d/K20postfix aadido rc1.d/K20postfix aadido rc2.d/S20postfix

aadido rc3.d/S20postfix aadido rc4.d/S20postfix aadido rc5.d/S20postfix aadido rc6.d/K20postfix resolvconf aadido / actualizacin libc.dresolvconf aadido / update-libc.d / postfix aadido rsyslog.d / postfix.conf aadido UFW / applications.d / postfix Comprometidos con la revisin 2.

Para un ejemplo de cmo etckeeper seguimiento de los cambios manuales, aadir un nuevo host para / Etc / hosts. Usando bzr puede ver qu archivos han sido modificados:
estado de bzr sudo / etc / modificada por: los ejrcitos

Ahora aplicar los cambios:

etckeeper sudo cometer "nuevo husped"

Para ms informacin sobre bzr ver Seccin 1, "Bazar" [p. 267].

382

Otras aplicaciones tiles

3. Byobu
Una de las aplicaciones ms tiles para cualquier administrador del sistema es la pantalla. Se permite la ejecucin de proyectiles mltiples en una sola terminal. Para hacer un poco de la pantalla de las funciones avanzadas ms fcil de usar, y proporcionar informacin til sobre el sistema, el paquete fue creado byobu. Cuando se ejecuta pulsando el byobu F9 clave que aparezca el men de configuracin. Este men se le permiten: Ver el men Ayuda El color de fondo del cambio Byobu El color de primer plano Cambiar Byobu Las notificaciones de estado de palanca Cambie el conjunto de combinacin de teclas Cambie la secuencia de escape Crear nuevas ventanas Gestionar la predeterminada de Windows Byobu actualmente no se ejecuta al iniciar la sesin (activar) La combinaciones de teclas determinar aspectos tales como la secuencia de escape, una nueva ventana, la ventana de cambio, etc Hay dos grupos principales de unin para elegir teclas de funcin y evacuacin de pantalla de las teclas. Si originales combinaciones de teclas elegir el ninguno desea utilizar el establecido. byobu ofrece un men que muestra la versin de Ubuntu, la informacin del procesador, la memoria informacin, y la fecha y la hora. El efecto es similar a un men de escritorio. Utilizando el "Byobu actualmente no se ejecuta al iniciar la sesin (de alternancia en)" opcin har que byobu ser ejecutada en cualquier momento se abre un terminal. Los cambios realizados en byobu estn en funcin de cada afectar a otros usuarios en el sistema. usuario, y no se Una diferencia cuando se utiliza byobu es el scrollback modo. Pulse el botn F7 para entrar en el modo de scroll. El modo de scroll le permite navegar a la salida el pasado con vi como comandos. Aqu est una lista rpida de comandos de movimiento: h- Mueva el cursor a la izquierda un carcter j- Mover el cursor hacia abajo por una lnea k- Mover el cursor hacia arriba por una lnea l- Mover el cursor hacia la derecha por un carcter 0- Ir al principio de la lnea actual $- Ir al final de la lnea actual G- Pasa a la lnea indicada (por defecto el final del bfer) /- Bsqueda hacia delante

383

Otras aplicaciones tiles

?- Buscar hacia atrs n- Pasa a la siguiente coincidencia, ya sea hacia adelante o hacia backword

384

Otras aplicaciones tiles

4. Referencias
Consulte el update-motd pgina man2 para ms opciones disponibles para actualizar-motd. El paquete Debian del Da tiempo3 El artculo tiene ms detalles sobre cmo usar el weatherutility. Consulte el etckeeper4 sitio para obtener ms informacin sobre el uso de etckeeper. El etckeeper Wiki de Ubuntu5 pgina. Para conocer las ltimas noticias e informacin sobre bzr ver el bzr6 sitio web. Para obtener ms informacin en la pantalla de ver el pantalla de sitio web7. Y el Wiki de Ubuntu la pantalla8 pginas. Adems, vea la byobu Pgina del proyecto9 para ms informacin.

2 http://manpages.ubuntu.com/manpages/precise/en/man1/update-motd.1.html 3 4 http://kitenet.net/ ~ joey / code / etckeeper / 5 https://help.ubuntu.com/community/etckeeper 6 http://bazaar-vcs.org/~~V 7 http://www.gnu.org/software/screen/ 8 https://help.ubuntu.com/community/Screen 9 https://launchpad.net/byobu

385

Apndice A. Apndice

386

Apndice

1. Informar sobre Fallos en Ubuntu Server Edition


Mientras que el proyecto Ubuntu intenta liberar el software con el mayor nmero posible de errores, que se producen. Usted puede ayudar a corregir estos errores al reportar los que se encuentran en el proyecto. El proyecto Ubuntu usa Launchpad1 a realizar un seguimiento de sus informes de error. Con el fin de presentar un bug de Ubuntu Server en Launchpad, tendr que crear una cuenta2.

1,1. Informar sobre Fallos con ubuntu-bug


La mejor forma de informar de un error es con el comando ubuntu-bug. La herramienta de ubuntu-bug rene informacin sobre el sistema til para los desarrolladores en diagnosticar el problema inform que luego se se incluirn en el informe de error presentado en Launchpad. Los informes de errores en Ubuntu necesita ser presentada en contra de un paquete de software especfico, de ah el nombre del paquete que el error se produce en las necesidades que debe darse a ubuntu-bug:

ubuntu-bug NOMBREPAQUETE

Por ejemplo, para presentar un error contra el paquete openssh-server, puede hacer:

ubuntu-bug openssh-server

Puede especificar un paquete binario o el paquete de fuentes para ubuntu-bug. Una vez ms usando opensshservidor como un ejemplo, tambin puede generar el informe en contra del paquete de fuentes de opensshservidor, OpenSSH:

ubuntu-bug openssh

Ver Captulo 3, La administracin de paquetes [p. 20] Para obtener ms informacin acerca de los paquetes de Ubuntu. El comando ubuntu-bug reunir informacin sobre el sistema en cuestin, que pueden incluir informacin especfica para el paquete especificado, y luego hacer lo que te gustara hacer con la informacin recopilada:

ubuntu-bug postgresql La recogida de informacin *** problema La informacin recopilada puede ser enviado a los desarrolladores para mejorar la aplicacin. Esta operacin puede tardar unos minutos. ..........

1 https://launchpad.net/ 2 https://help.launchpad.net/YourAccount/NewAccount

387

Apndice
*** Enviar informe de problemas a los desarrolladores? Despus de que el informe de problemas ha sido enviado, por favor llene el formulario en el abre automticamente navegador web. Qu te gustara hacer? Sus opciones son: S: Enva el informe (1,7 Kb) V: Ver informe K: Mantener archivo de informe para el envo fuera de plazo o copiar a otra parte C: Cancelar Por favor, elija (S / V / M / C):

Las opciones disponibles son: Enviar Seleccin Enviar informe presenta la informacin recopilada a Launchpad como parte de la el proceso de presentar un informe de error. Se le dar la oportunidad de describir la situacin que condujo a la aparicin del error.

Carga de informacin del problema *** La informacin recogida se enva al sistema de seguimiento de fallos. Esta operacin puede tardar unos minutos. 91% *** Para continuar, debes visitar el siguiente URL: https://bugs.launchpad.net/ubuntu/+source/postgresql-8.4/+filebug/kc6eSnTLnLxF8u0t3e56EukFeqJ? Se puede lanzar un navegador de ahora, o copiar la URL en un navegador a otro ordenador.

Opciones: 1: Abra el navegador de hoy C: Cancelar Por favor, elija (1 / C):

Si usted decide iniciar un navegador, de forma predeterminada el texto basado en w3m navegador web se utilizar para terminar presentar el informe de error. Alternativamente, usted puede copiar la URL dada a un navegador web actualmente en funcionamiento. Ver informe La seleccin Ver informe hace que la informacin recopilada para que se muestre a la terminales para su revisin.

Package: postgresql 8.4.2-2 PackageArchitecture: todos Tags: lucidos ProblemType: Bug ProcEnviron: LANG = es_ES.UTF-8 SHELL = / bin / bash Uname: Linux 6.2.32-16-server x86_64 Dependencias:

388

Apndice
adduser 3.112ubuntu1 base-files 5.0.0ubuntu10 base-passwd 05/03/22 coreutils 7.4-2ubuntu2 ...

Despus de ver el informe, se le trajo de vuelta a la misma carta preguntando qu le gustara ver con el informe. Mantener archivo de los informes Seleccin de mantener el archivo Informe hace que la informacin recopilada para ser escrito a un archivo. Este archivo puede ser utilizado para presentar despus un informe de error o transferido a otro sistema de Ubuntu para la presentacin de informes. Para enviar el archivo de informe, slo tiene que dar como un argumento para el comando de ubuntu-bug:
Qu te gustara hacer? Sus opciones son: S: Enva el informe (1,7 Kb) V: Ver informe K: Mantener archivo de informe para el envo fuera de plazo o copiar a otra parte C: Cancelar Por favor, elija (S / V / M / C): k Problema archivo de informe: / tmp/apport.postgresql.v4MQas.apport ubuntu-bug / tmp/apport.postgresql.v4MQas.apport *** Enviar informe de problemas a los desarrolladores? ...

Cancelar Si selecciona Cancelar hace que la informacin recopilada para ser desechado.

1,2. Los accidentes de informes de aplicacin


El paquete de software que proporciona la utilidad ubuntu-bug, apport, se puede configurar para activar cuando las aplicaciones del accidente. Esto est desactivado por defecto, como la captura de un accidente puede consumir muchos recursos dependiendo de la cantidad de memoria de la aplicacin que se estrell estaba usando como capturas y el apport procesa el volcado de memoria. Configuracin de apport para capturar informacin sobre las aplicaciones que se estrellan requiere un par de pasos. En primer lugar, el BGF tiene que ser instalado, no se instala por defecto en Ubuntu Server Edition.

sudo apt-get install gdb

Ver Captulo 3, La administracin de paquetes [p. 20] Para obtener ms informacin sobre el manejo de paquetes en Ubuntu. Una vez que se han asegurado de que el gdb est instalado, abra el archivo / Etc / default / apport en su editor de texto, el activado fijar a ser 1de este modo: y cambiar

# Set a 0 para desactivar el apport, o 1 para habilitarla # Temporalmente puede reemplazar esto con # Sudo servicio de apport inicio force_start = 1

389

Apndice
enabled = 1 # Set bsico de vertido mxima de tamao de archivo (por defecto: 209715200 bytes == 200 MB) maxsize = 209715200

Una vez que haya terminado de editar / Etc / default / apport, Inicie el servicio apport:

apport inicio sudo

Despus de una aplicacin se bloquea, utilice el comando apport-cli para buscar el informe de errores existente guardado informacin:
apport-cli Tablero *** cerr inesperadamente el 11/03/2010 a las 21:40:59. Si no estaban haciendo nada confidencial (contraseas u otros que entran en informacin privada), puede ayudar a mejorar la aplicacin por la presentacin de informes el problema. Qu te gustara hacer? Sus opciones son: R: informe de problemas ... I: Cancelar e ignorar los accidentes en el futuro de esta versin del programa C: Cancelar Por favor, elija (R / E / C):

Seleccin Informe de Incidencia le guiar a travs de medidas similares cuando se utiliza como ubuntu-bug. Uno diferencia importante es que un informe de choque ser marcado como privado, cuando present en Launchpad, lo que significa que ser visible slo a un conjunto limitado de triagers de errores. Estos triagers revisar la recogida de datos para obtener informacin privada antes de hacer el informe de error visible para el pblico.

1,3. Recursos
Consulte el Informar sobre Fallos3 Ubuntu wiki de la pgina. Adems, el Apport4 pgina tiene alguna informacin til. Aunque algunos de los que se refiere al uso de una interfaz grfica de usuario.

3 https://help.ubuntu.com/community/ReportingBugs 4 https://wiki.ubuntu.com/Apport

390

Vous aimerez peut-être aussi