Download Instalación y administración de servidores GNU/Linux - EHU-OCW
Document related concepts
Transcript
OpenCourseWare (UPV/EHU) Copyright © 2013,2014 Gorka Prieto, Maider Huarte Servicios Telemáticos Avanzados Práctica 1: Instalación y administración de servidores GNU/Linux Objetivo El objetivo de esta primera práctica es familiarizarse con algunas de las operaciones básicas de la administración de servidores UNIX. En el resto de la asignatura desarrollaremos servicios web que tendrán que alojarse en un servidor. Este servidor lo administraremos nosotros y para ello emplearemos los conocimientos aprendidos aquí. Instalación del sistema operativo GNU/Linux En esta sección instalaremos el sistema operativo GNU/Linux sobre una máquina virtual de forma que tengamos control total sobre la misma para administrarla e implementar servicios. 1. Con el programa VirtualBox, cread una nueva máquina virtual de nombre “STA2013-2014_KUbuntu12-04”, en la que posteriormente (no durante su creación) se instalará el sistema operativo Kubuntu 12.04 LTS. Las características de la máquina virtual deberán ser las adecuadas para albergar dicho sistema operativo teniendo en cuenta la máquina real: a) Asignad 2 GB de RAM b) Asignad 4 CPUs c) Asignad el máximo de memoria de la tarjeta gráfica d) Configurad un disco duro de 30 GB 2. Una vez creada la máquina, habrá que comprobar que en su configuración tiene habilitadas las siguientes características: a) El controlador USB b) Un adaptador de red de tipo NAT 3. Instalad la distribución Kubuntu 12.04 LTS desde un DVD virtualizado. Durante el proceso de instalación se debe elegir particionado manual y crear las siguientes particiones: a) 14 GB para sistema (/) b) 14 GB para datos de usuario (/home) 1/6 OpenCourseWare (UPV/EHU) Copyright © 2013,2014 Gorka Prieto, Maider Huarte Servicios Telemáticos Avanzados Práctica 1: Instalación y administración de servidores GNU/Linux c) 2 GB para intercambio (swap) 4. Así mismo, se debe crear un acceso directo a la consola en la barra de tareas. Guest additions Para que la máquina virtual vaya lo más fluida posible es necesario instalar en nuestro sistema operativo invitado los drivers de la propia máquina virtual. Para ello: 1. En la solapa-menú de VirtualBox, ejecutad Dispositivos->Instalar <<Guest Additions>>... Con esto aparecerá un nuevo CD-ROM que debemos montar. 2. Abrid una consola en esa ubicación (basta con pulsar F4 sobre el directorio) y ejecutad: $ sudo su # apt-get install build-essential # ./VBoxLinuxAdditions.run Instalación y actualización de aplicaciones Una de las tareas básicas de administración de un equipo es gestionar las aplicaciones que tenemos instaladas. Practicaremos con algunos comandos que posteriormente emplearemos para instalar aplicaciones servidoras. 1. Mediante dpkg: a) Listad los paquetes disponibles y volcar esta lista en un fichero b) Descargad e instalar el paquete para Adobe Acrobat Reader1. c) Borrad el del disco duro el fichero .deb y ejecutar acroread. ¿Funciona?, ¿por qué?. Desinstalad el paquete adobereader-enu. 2. Mediante apt: a) Actualizad el paquete kate ya existente a su última versión. b) Instalad el servidor web Apache, que emplearemos en la siguiente práctica. c) Instalad oracle-java7-installer añadiendo al sources.list el repositorio 1 Desde su página web http://get.adobe.com/es/reader 2/6 OpenCourseWare (UPV/EHU) Copyright © 2013,2014 Gorka Prieto, Maider Huarte Servicios Telemáticos Avanzados Práctica 1: Instalación y administración de servidores GNU/Linux personal (PPA) de webupd8team, para ello seguid los pasos indicados en 2. d) En las prácticas finales emplearemos una base de datos, con lo que vamos a dejar ya instalados el servidor MySQL (paquete mysql-server), un cliente de consola (mysql-client) y como cliente gráfico el MySQL Workbench. Además, como también accederemos a las bases de datos desde Java, será necesario instalar el conector que ofrece el paquete libmysql-java. e) Instalad el comando rcconf que lo usaremos en la siguiente práctica para configurar qué servicios queremos que se arranquen automáticamente. f) Finalmente instalad la aplicación Wireshark que será de utilidad para analizar el tráfico de nuestras aplicaciones web. 3. De forma manual: a) Instalad la versión Kepler del IDE Eclipse con soporte para desarrollo Java EE. Este IDE será el que usemos en las prácticas restantes. La instalación no la haremos por APT ya que esta última versión no está disponible aún, así que la descargaremos de forma manual 3 y la descomprimimos en una carpeta del home. Ejecutadlo con ./eclipse desde la carpeta donde lo habéis descomprimirlo e indicadle un workspace cuando se os pregunte. El workspace es el directorio donde van a guardarse todos nuestros proyectos. b) Instalad el servidor de aplicaciones JBoss que usaremos posteriormente en las prácticas de Java EE. De nuevo no vamos a usar APT ya que el paquete disponible de JBoss no está todavía en un estado utilizable, por lo que nos bajaremos el software de la web4 y lo instalaremos manualmente. c) Desde Eclipse acceded al market en "Help" -> "Eclipse Marketplace..." e instalad "JBoss Tools (Kepler)". 2 3 4 http://www.webupd8.org/2012/01/install-oracle-java-jdk-7-in-ubuntu-via.html http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/keplersr1 http://download.jboss.org/jbossas/7.1/jboss-as-7.1.1.Final/jboss-as-7.1.1.Final.tar.gz 3/6 OpenCourseWare (UPV/EHU) Copyright © 2013,2014 Gorka Prieto, Maider Huarte Servicios Telemáticos Avanzados Práctica 1: Instalación y administración de servidores GNU/Linux Gestión de usuarios5 Otra de las labores básicas de administración de un servidor es gestionar los usuarios y permisos. Es más, las aplicaciones servidoras suelen ejecutarse con un usuario específico y necesitaremos saber asignarles permisos para que funcionen correctamente. 1. Desde la consola practicad con los comandos useradd, userdel, groupadd, groupdel y passwd comprobando los ficheros de /etc que se actualizan. 2. Adicionalmente estableced una fecha de expiración del password mediante el comando chage. 3. Permisos (ya visto en Fundamentos de Programación): ved permisos de un fichero y cambiadlos. Runlevels En esta sección practicaremos con el arranque o la parada de servicios: 1. Comprobad el runlevel en el que se encuentra actualmente arrancado el sistema. 2. Guardad todos los datos que tengáis sin salvar y cambiar a runlevel 0, ¿qué secuencia de pasos está siguiendo el sistema? 3. Editad GRUB para que salte siempre el menú al arrancar la máquina. 4. A continuación iniciad el sistema en runlevel 1, ¿qué diferencia observas?, ¿cómo mejorarías la seguridad del sistema? 5. Probad a iniciar/detener/reiniciar el demonio cron, mediante: a) UNIX System V. Comprobad el estado en el que queda con inspeccionad los procesos del sistema. b) upstart. Comprobad el estado en el que queda con initctl. 5 https://help.ubuntu.com/8.04/serverguide/C/user-management.html 4/6 OpenCourseWare (UPV/EHU) Copyright © 2013,2014 Gorka Prieto, Maider Huarte Servicios Telemáticos Avanzados Práctica 1: Instalación y administración de servidores GNU/Linux AMPLIACIÓN DE LA PRÁCTICA Scripts Al administrar un sistema muchas veces se recurre a la automatización de tareas mediante scripts. Además saber manejarse en el shell puede ahorrar mucho tiempo. 1. Realizad un script que permita dar de alta y de baja a usuarios del sistema GNU/Linux indicados como argumento: script alta|baja <nombre> <ap1> <ap2> [<grupo>] a) El login del usuario será su nombre. Adicionalmente, se podrá modificar el script para que asigne como login un identificador con formato jtaXXYYZ, donde XX son las dos primeras letras del apellido 1, YY son las dos primeras letras del apellido 2 y Z es la inicial del nombre. b) En caso de no indicar el grupo al que pertenecerá, se creará un nuevo grupo con el mismo identificativo que el usuario. Ejecutar el script comprobando que los ficheros de /etc se modifican correctamente y que en /home se crean/eliminan los directorios correspondientes. 2. Adicionalmente, se podrá modificar el script de manera que permita leer los datos personales de varios usuarios desde un fichero de texto. Asimismo, se podrá asignar una cuota6 a la cuenta de cada usuario. Automatización de tareas El sistema cron nos permite ejecutar tareas de forma periódica. 1. Realizad la configuración adecuada del sistema para que cada 5 minutos comprima el contenido de las cuentas de usuario del sistema (/home) en un único fichero backup.tar.gz en la cuenta del administrador del sistema (/root). 2. Una vez comprobado el correcto funcionamiento del ejercicio, devolver el sistema a su configuración inicial. 3. ¿Cuál sería la configuración a realizar para que la tarea se ejecute automáticamente todos los domingos a las 2 de la madrugada? 6 http://www.tldp.org/HOWTO/Quota.html 5/6 OpenCourseWare (UPV/EHU) Copyright © 2013,2014 Gorka Prieto, Maider Huarte Servicios Telemáticos Avanzados Práctica 1: Instalación y administración de servidores GNU/Linux 4. ¿Cómo haría un usuario sin permisos de administrador para programar un backup automático de sus datos? 6/6