Você está na página 1de 54

Escuela Tcnica Superior de Ingeniera

Universidad de Huelva

Memoria de Prcticas
A DMINISTRACIN DE S ERVIDORES
Grado en Ingeniera Informtica

Autor: Jos Manuel Daz Gonzlez


1 de diciembre de 2015

Resumen
1. Monitorizacin de los distintos recursos del sistema: Uso de distintos comandos para la monitorizacin del estado del sistema.

Palabras clave: vmstat,ps,gcc,monitorizacin,recursos

ndice general
1. PRCTICA DE MONITORIZACIN. TOPIC 200
1.1. Introduccin . . . . . . . . . . . . . . . . . .
1.1.1. Objetivos . . . . . . . . . . . . . . . .
1.2. Procedimiento . . . . . . . . . . . . . . . . .
1.3. Conclusin . . . . . . . . . . . . . . . . . . .
1.4. Bibliografa . . . . . . . . . . . . . . . . . . .

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

5
5
5
7
19
20

2. PRCTICA CONFIGURACIN DE RED. TOPIC 205


2.1. Introduccin . . . . . . . . . . . . . . . . . . . . .
2.1.1. Objetivos . . . . . . . . . . . . . . . . . . .
2.2. Procedimiento . . . . . . . . . . . . . . . . . . . .
2.3. Conclusin . . . . . . . . . . . . . . . . . . . . . .
2.4. Bibliografa . . . . . . . . . . . . . . . . . . . . . .

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

21
21
22
23
32
33

.
.
.
.
.

34
34
35
36
52
53

.
.
.
.
.

.
.
.
.
.

3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC 206


3.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . .
3.2. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3. Procedimiento . . . . . . . . . . . . . . . . . . . . . . . .
3.4. Conclusin . . . . . . . . . . . . . . . . . . . . . . . . . .
3.5. Bibliografa . . . . . . . . . . . . . . . . . . . . . . . . . .

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

ndice de figuras
1.1. Creacin equipo para Centos . . . . . . . . . . . . . . . . . .
1.2. Iniciando instalacin Centos . . . . . . . . . . . . . . . . . .
1.3. Instalando Centos . . . . . . . . . . . . . . . . . . . . . . . . .
1.4. Centos iniciado . . . . . . . . . . . . . . . . . . . . . . . . . .
1.5. Configuracin red NAT . . . . . . . . . . . . . . . . . . . . . .
1.6. Configuracin reenvio de puertos . . . . . . . . . . . . . . .
1.7. Asignacion de nombre (ethX) a MAC . . . . . . . . . . . . . .
1.8. Asignacion de nombre (ethX) a MAC 2 . . . . . . . . . . . . .
1.9. Levantamiento de la NIC . . . . . . . . . . . . . . . . . . . .
1.10.Configuracin levantamiento automtico NIC . . . . . . . .
1.11.Conexin ssh (maquina anfitriona y virtualizada) . . . . . .
1.12.Ejecucin vmstat (Monitorizacin 512Mb RAM) . . . . . . .
1.13.Ejecucin vmstat (Monitorizacin 1Gb RAM) . . . . . . . .
1.14.Ejecucin comando free . . . . . . . . . . . . . . . . . . . . .
1.15.Ejecucin comando ps -ef . . . . . . . . . . . . . . . . . . . .
1.16.Ejecucin comando w . . . . . . . . . . . . . . . . . . . . . .
1.17.Ejecucin comando top . . . . . . . . . . . . . . . . . . . . .
1.18.Ejecucin comando netstat . . . . . . . . . . . . . . . . . . .
1.19.Ejecucin comando df . . . . . . . . . . . . . . . . . . . . . .
1.20.Ejecucin de programa y monitorizacin de recursos . . . .
1.21.Ejecucin de programa y monitorizacin de recursos . . . .
1.22.Ejecucin de programa y visualizacin de proceso zombie.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

7
8
8
9
10
11
11
12
12
12
13
14
14
15
15
15
16
16
16
17
17
18

2.1.
2.2.
2.3.
2.4.
2.5.
2.6.
2.7.
2.8.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

22
23
23
24
25
26
27
27

Maqueta a implementar . . . . . . . . . . . . .
Editar network . . . . . . . . . . . . . . . . . . .
Editar hostname y reiniciar systema network .
Comprobacin cambio de nombre . . . . . . .
NIC internas (Choco, Gamba y router) . . . . .
Configuracin tarjetas de red . . . . . . . . . .
Comprobacin de Fordwarding . . . . . . . . .
Fordwarding temporal . . . . . . . . . . . . . .
3

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

ndice de figuras

ndice de figuras

2.9. Fordwarding fijo . . . . . . . . . . . . .


2.10.Configuracin firewall . . . . . . . . .
2.11.Configuracin archivo de hosts . . . .
2.12.Agregar tarjeta Solo-anfitrin . . . . .
2.13.Configuracin NIC Solo-anfitrin . .
2.14.Conexion Putty usando Solo-anfitrin

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

27
28
28
29
30
30

3.1. Configuracion dns y prueba ping . . . . . . . . .


3.2. Instalacin herramientas de desarrollo . . . . .
3.3. Instalacin herramientas de desarrollo . . . . .
3.4. Instalacin wget) . . . . . . . . . . . . . . . . . .
3.5. Descarga del cdigo fuente JOE 4.9.2) . . . . . .
3.6. Listado del directorio de descarga actual . . . .
3.7. Listado del directorio de descarga actual . . . .
3.8. Comandos a ejecutar segn README . . . . . .
3.9. Error make . . . . . . . . . . . . . . . . . . . . . .
3.10.Ver lo que podemos instalar . . . . . . . . . . . .
3.11.Ejecucin comando make . . . . . . . . . . . . .
3.12.Instalacin de JOE . . . . . . . . . . . . . . . . .
3.13.Finalizar instalacin con make clean . . . . . .
3.14.Ejecucin JOE . . . . . . . . . . . . . . . . . . . .
3.15.Creacin archivo para exportar JOE . . . . . . .
3.16.Empaquetado para exportar (tar) . . . . . . . . .
3.17.Archivo a exportar a Gamba (tar) . . . . . . . . .
3.18.Exportado de archivo entre 2 nodos (scp) . . . .
3.19.Extraccin de fichero transferido en Gamba . .
3.20.Ejecucin de JOE en Gamba . . . . . . . . . . . .
3.21.Envio de mensaje a usuarios conectados . . . .
3.22.Envio de mensaje a usuarios desconectados . .
3.23.Creacin directorio backups . . . . . . . . . . .
3.24.Error no instalado rsync . . . . . . . . . . . . . .
3.25.Instalacin rsync . . . . . . . . . . . . . . . . . .
3.26.Realizacin backup . . . . . . . . . . . . . . . . .
3.27.Generacin clave privada y pblica . . . . . . .
3.28.Copiar clave pblica por ssh-copy-id . . . . . .
3.29.Configurar backup hora precisa con crontab -e
3.30.Contenido archivo backup programada . . . . .

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

36
36
37
37
37
38
38
38
39
39
40
41
41
42
43
43
44
44
45
45
46
46
47
47
48
49
50
50
51
51

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

Captulo 1
PRCTICA DE MONITORIZACIN.
TOPIC 200
1.1. Introduccin
Este capitulo se centra en los distintos mtodos (herramientas y comandos)
que podemos emplear para obtener una vista de la utilizacin que hace nuestro
sistema de sus recursos internos (memoria, cpu, discos duros...).
Defincin de un pie de pgina1

1.1.1. Objetivos
El objetivo de esta prcticas es que el alumno se familiarice con los diferentes comandos existente para monitorizar los recursos de un servidor. Para ello
requiere cumplementar cada uno de los siguientes aspectos.
1. Conseguir crear una mquina virtual basada en virtualbox que contega
un sistema centos 6.3 mnimo.
2. Conseguir una conexin de tipo NAT con redireccin de puertos.
3. Conocer el uso de comandos para monitorizar el comportamiento del
sistema y actuar en funcin de dichos estados. Como varan las monitorizaciones conforme varan los requisitos.
4. Compilar y ejecutar el siguiente programa y monitorizar los recursos cada
5 segundos.
1

Esto es un pie de pgina

1.1. Introduccin

Captulo 1. PRCTICA DE MONITORIZACIN. TOPIC 200

#include <stdio.h>
#include <stdlib.h>
int main()
{
char str[] = "This is tutorialspoint.com";
FILE *fd = fopen("prueba.txt","w");
int i,j;
for (i=0; i < 30000 ; i++)
for (j=0; j < 30000 ; j++)
fwrite(str , 1 , sizeof(str) , fd);
fclose(fd);
return 0;
}

5. Usando el comando ps comprobar como afecta al sistema la ejecucin


del siguiente cdigo.

#include <stdlib.h>
#include <sys/types.h>
#include <unistd.h>
int main ()
{
pid_t child_pid;
child_pid = fork ();
if (child_pid > 0) {
sleep (60);
}
else {
exit (0);
}
return 0;
}
6

Captulo 1. PRCTICA DE MONITORIZACIN. TOPIC 200 1.2. Procedimiento

1.2. Procedimiento
1. El primer requisito que necesitamos es una aplicacin, donde virtualizar
el sistema operativo, en este caso he usado VirtualBox 4.3. Dentro de esta aplicacin se ha virtualizado el SO Centos 6.4 minimal i386, el cual es una versin
de linux servidora reducida. Para realizar la virtualizacin lo primero que debo
hacer es preparar la mquina en VirtualBox en la cual vamos a instalar el SO.
Esta mquina la he preparado con las siguientes caractersticas:
- Linux
- Red-Hat X86
- RAM 512 Mb
- HDD 8Gb (Dinmico)

Figura 1.1: Creacin equipo para Centos


7

1.2. Procedimiento Captulo 1. PRCTICA DE MONITORIZACIN. TOPIC 200

Una vez definida la mquina con los requisitos, para instalar Centos procedemos a su instalacin. Para ello arrancamos la mquina indicando el dispositivo desde el que se desea que arranque la primera vez (en mi caso un archivo
ISO que contiene el SO).
Luego, se abrir un men que nos permitir realizar la instalacin de Centos
entre otras opciones. Imgen a continuacin.

Figura 1.2: Iniciando instalacin Centos


En el caso de que seleccionemos la instalacin, como es mi caso, esta dar comienzo haciendo las preguntas y comprobaciones tpicas que se hacen a la hora de instalar un sistema operativo. (Seleccin y comprobacin de disco, sistema de ficheros a usar, idioma, modelo de teclado...) Uno de los pasos importantes a la hora de configurar estos parmetos es recordar la clave que asignemos
al usuario root.
Una vez que nos a solicitado la configuracin que le asignar al SO, dar comienzo la instalacin con dichos parmetos

Figura 1.3: Instalando Centos


A continuacin, una vez instalado el SO, nos pedir que se reinicie el sistema,
8

Captulo 1. PRCTICA DE MONITORIZACIN. TOPIC 200 1.2. Procedimiento

de manera que cuando este vuelve a arrancar ya nos muestra el SO, donde una
vez logueados podremos empezar a utilarlo.

Figura 1.4: Centos iniciado

1.2. Procedimiento Captulo 1. PRCTICA DE MONITORIZACIN. TOPIC 200

2. Una vez conseguido el paso anterior vamos a configurar una red NAT con
redireccin de puertos. Esto permitir que nuestro sistema virtualizado tenga
salida a internet. En cuanto a la redireccin de puerto, ser algo que configuremos en la configuracin de VirtualBox.
Para ello debemos acceder a la configuracin de nuestra mquina dentro del
VirtualBox, una vez aqu tenemos que acceder al apartado de red, para as indicar la configuracin de red que usar nuestra instalacin. En la imagen que
se muestra a continuacin tendremos que preparar la interfaz de red para la
conexin por NAT.

Figura 1.5: Configuracin red NAT


Adems de indicar que la configuracin a usar ser NAT, tambin tendremos que configurar la redireccin de puertos. Esto nos permite enlazar puertos
de la mquina anfitriona con la mquina virtual. De esta forma podemos asignar el uso de un puerto, por ejemplo el puerto 22, de la mquina anfitriona con
un puerto de la mquina virtual 2222. As podremos usar ssh entre la mquina
anfitriona y la mquina virtual. Esta configuracin mencionada se muestra en
la siguiente imgen.
Para comprobar que toda la configuracin de la red funciona correctamente
podemos iniciar el sistema virtualizado y comprobar que tenga conectividad a
internet.
Conforme arrancamos el sistema Centos e intentamos hacer un ping vemos
10

Captulo 1. PRCTICA DE MONITORIZACIN. TOPIC 200 1.2. Procedimiento

Figura 1.6: Configuracin reenvio de puertos


que no se produce un error y este no funciona, esto es debido a que no est
levantada la interfaz de red. Para proceder a levantarla usamos el comando ifup
ethX. "X"ser el nmero de nuestra interfaz de red, este ser incrementado cada
vez que reiniciemos la MAC de nuestra NIC (tarjeta de red) ya que Centos la
detectar como si se tratara de una nueva NIC. En la imagen que se muestra a
continuacin observamos un error al intentar levantar la NIC, esto es debido a
lo que acabamos de mencionar del reinicio de MAC.
Para conseguir solucionar ese error y as lograr levantar la NIC de nuestra
mquina debemos, en primer lugar saber el valor de la X de ehtX que le corresponde a nuestra NIC. Para ello podemos usar el comando que se muestra a
continuacin para consultar la tabla de NIC.

Figura 1.7: Asignacion de nombre (ethX) a MAC


A continuacin, en la imagen 1.8 se puede apreciar como se le asigna un
nombre a una MAC de la interfaz de red, de forma que observando en este archivo el valor de la MAC podemos saber el nombre que tiene nuestra interfaz
de red en nuestro sistema Centos.
Ahora una vez que sabemos el nombre exacto de la NIC que tiene instalada
nuestro sistema, podemos proceder a levantarla usando como ya mencionamos anteriormente el comando ifup ethX. En la imagen 1.9 se muestra la ejecucin correspondiente del comando para proceder a levantar la interfaz.
11

1.2. Procedimiento Captulo 1. PRCTICA DE MONITORIZACIN. TOPIC 200

Figura 1.8: Asignacion de nombre (ethX) a MAC 2

Figura 1.9: Levantamiento de la NIC


Para evitar tener que levantar la NIC cada vez que se arranque el sistema
podemos hacerlo configurando el archivo de carga de nuestro sistema. Para
ello vamos configurar el archivo ifcfg-ethx. Este archivo se encuentra en el path
/etc/sysconfig/network-scripts. La X de ethx corresponde con el valor que le ha
asignado nuestro sistema a nuestra NIC. Para configurar el levantamiento automtico solo tenemos que abrir el archivo de configuracin correspondiente
a nuestra tarjeta y modificar el parmetro ONBOOT=yes como se muestra en la
figura 1.10 que se muestra a continuacin.

Figura 1.10: Configuracin levantamiento automtico NIC


Como ltimo apartado de este punto, para probar que todo funciona correctamente hemos realizado una conexin shh desde la mquina anfitriona
hacia la mquina servidora, de esta forma estamos comprobando que a parte de que tenga conexin que se haya realizado correctamente el reenvio de
puertos. La imgen 1.11 muestra el proceso para realizar una conexin ssh en12

Captulo 1. PRCTICA DE MONITORIZACIN. TOPIC 200 1.2. Procedimiento

tre ambas mquinas. La opcin -p que aparece en el comando ssh nos permite
indicarle el puerto de reenvio entre ambas mquinas.

Figura 1.11: Conexin ssh (maquina anfitriona y virtualizada)

13

1.2. Procedimiento Captulo 1. PRCTICA DE MONITORIZACIN. TOPIC 200

3. Una vez que los puntos anteriores han funcionado, se ha consultado varios parmetros de monitorizacin del sistema. Esto nos permite saber el estado actual de los recursos que disponemos en nuestra mquina con el objetivo
de solucionar un problema o poder evirtarlo mediante la modificacin de alguna configuracin o en su caso realizando alguna mejora HW.
Se ha usado el comando vmstat para monitorizar los recursos del sistema, ya
que este muestra numerosas mtricas de los recursos del sistema en tiempo
real (colas de procesos, informacin de memoria, n de bloques R/W...). En la
imagen siguiente podemos apreciar la informacin del sistema que nos devuelve este comando.

Figura 1.12: Ejecucin vmstat (Monitorizacin 512Mb RAM)


Si detenemos nuestra mquina y simulamos una mejora de RAM, al volver a
arrancar la mquina y lanzar de nuevo este comando, podemos apreciar que los
cambios realizados se han llevado a cabo correctamente. Este es el contenido
que muestra la imagen que se muestra a continuacin.

Figura 1.13: Ejecucin vmstat (Monitorizacin 1Gb RAM)


Hay que mencionar que la informacin de este comando es actual sobre el
momento en el que se ejecuta, pero esta informacin variar en cada instante,
por eso, vmstat nos permite ejecutarlo con un parametro x (vmstat x) en el que
indicamos sucesivas ejecuciones de este comando cada x segundos.
Existen otros comandos que tambin nos permite obtener una monitorizacin
sobre los recursos del sistema como pueden ser:
14

Captulo 1. PRCTICA DE MONITORIZACIN. TOPIC 200 1.2. Procedimiento

Comando free: Muestra informacin de la memoria.

Figura 1.14: Ejecucin comando free

Comando ps: Muestra procesos del sistema. Usando los parmetros -efjh
nos muestra informacin sobre las relaciones padres/hijos.

Figura 1.15: Ejecucin comando ps -ef

Comando w: Muestra informacin sobre los usuarios conectados y sus


procesos.

Figura 1.16: Ejecucin comando w

Comando top: Muestra informacin constantemente actualizada de los


procesos.
15

1.2. Procedimiento Captulo 1. PRCTICA DE MONITORIZACIN. TOPIC 200

Figura 1.17: Ejecucin comando top


Comando netstat: Muestra informacin del estado de la red.

Figura 1.18: Ejecucin comando netstat

Comando df: Muestra informacin del estado de los discos duros.

Figura 1.19: Ejecucin comando df

4. Para poder ejecutar el programa he tenido que crearlo dentro de la mquina y compilarlo. Para realizar la compilacin he usado el comando gcc -o
bucle bucle.c, esto me genera el ejecutable con el cdigo mostrado en el enunciado.
Ahora si analizamos o ejecutamos el cdigo del programa en cuestin, podemos observar que lo que hace es escribir en el disco en el fichero prueba.txt.
Podemos comprobar con el comando vmstat los bloques escritos.
La siguiente imagen muestra el estado del sistema (vmstat) antes de lanzar la
16

Captulo 1. PRCTICA DE MONITORIZACIN. TOPIC 200 1.2. Procedimiento

ejecucin del programa que acabamos de compilar y unos segundos despues


volvemos a lanzar vmstat. Observando la imagen podemos comprobar como
est aumentando el nmero de bloquees escritos en el sistema. Esta informacin se encuentra bajo el encabezado io concretamente bajo bo.

Figura 1.20: Ejecucin de programa y monitorizacin de recursos


Este cambio en el uso de los recursos del sistema, tambin podemos observarlo usando el comando iostat, siguiendo el mismo procedimiento que se
ha seguido con el comando vmstat (lanzandolo antes y un tiempo despus de
ejecutar el programa compilado). La imagen que se muestra a continuacin
muestra la informacin de dicho comando.

Figura 1.21: Ejecucin de programa y monitorizacin de recursos

17

1.2. Procedimiento Captulo 1. PRCTICA DE MONITORIZACIN. TOPIC 200

5. El cdigo de este programa lo que hace es crear un proceso hijo, el proceso hijo muere, pero el padre no ha hecho wait(). El proceso hijo queda zombie
hasta que el proceso padre muere ya que los procesos zombis no se pueden
matar.
Si usamos el comando ps -efjH podemos ver los procesos hijos que ha creado
cada proceso(imagn siguiente).

Figura 1.22: Ejecucin de programa y visualizacin de proceso zombie.

18

Captulo 1. PRCTICA DE MONITORIZACIN. TOPIC 200

1.3. Conclusin

1.3. Conclusin
Comandos bastante importante para la monitorizacin de los recursos de
nuestro servidor. Importancia de estos para una buena administracin del sistema.

19

1.4. Bibliografa

Captulo 1. PRCTICA DE MONITORIZACIN. TOPIC 200

1.4. Bibliografa
1. http://ocw.um.es/gat/contenidos/ldaniel/ipu_docs/latex/tema6.

html/
2. http://www.linuxtotal.com.mx/?cont=info_admon_010/

20

Captulo 2
PRCTICA CONFIGURACIN DE
RED. TOPIC 205
2.1. Introduccin
Este capitulo se centra en la realizacin de y configuracin de una red, en
la cual coexistirn dos redes conectadas a un router y estas redes deben tener
salida al exterior (internet).

21

2.1. Introduccin
Captulo 2. PRCTICA CONFIGURACIN DE RED. TOPIC 205

2.1.1. Objetivos
La empresa ACME S.A, dispone de una red formado por tres ordenadores:
1. Choco: equipado con CentOS, un disco duro y una tarjeta de red.
2. Gamba: equipado con CentOS, un disco duro y una tarjeta de red
3. Router: equipado con CentOS y cuatro tarjetas de red
El ordenador router acta como pasarela para las subredes en las que se encuentran gamba y choco. Adems, router permite tanto el acceso a internet de
todos los equipos (choco, gamba, router) como el acceso del equipo anfitrin
al router.

Figura 2.1: Maqueta a implementar

22

Captulo 2. PRCTICA CONFIGURACIN DE RED. TOPIC 205


2.2. Procedimiento

2.2. Procedimiento
1.Creacin de mquinas. Lo primero que hemos de realizar, partiendo desde la prctica anterior, es la clonacin de la mquina ya utilizada, para evitar
tener que realizar las instalacin del sistema desde cero. Para ello simplemente
necesitamos hacer clic encima del sistema instalado y hacer clic en clonar, esto nos genera una copia idntica del sistema. Usando este mtodo varias veces
tenemos las 3 mquinas que necesitamos.

2.Asignacin de nombres. Ahora una vez que tenemos las mquinas que
necesitamos para identificarlas vamos a asignarle el nombre que viene en la
maqueta a implementar (Choco, Gamba y Router).
Para ello en cada una de las mquinas creadas tenemos que realizar los siguientes pasos:
1. Cambiar el nombre dentro del archivo network. Este est en la ruta /etc/sysconfig/network, para ello usamos el comando vi como se muestra
en la siguiente figura y le damos el nombre que desehemos al equipo
(HOSTNAME=NOMBREEQUIPO.DOMINIO).

Figura 2.2: Editar network

2. Modificar el hostname con el comando (HOSTNAME nombreequipo) y


reiniciar el servicio de red (service network restart)

Figura 2.3: Editar hostname y reiniciar systema network

23

2.2. Procedimiento
Captulo 2. PRCTICA CONFIGURACIN DE RED. TOPIC 205

3. Por ltimo para comprobar que el cambio de nombre a funcionado correctamente reiniciamos el sistema con comando reboot y cuando arranca en el prompt podemos observar el nombre que le hemos dado al equipo.

Figura 2.4: Comprobacin cambio de nombre

24

Captulo 2. PRCTICA CONFIGURACIN DE RED. TOPIC 205


2.2. Procedimiento

3. Configurar las interfaces de red.


Para configurar las NIC necesarisas para la realizacin de la maqueta enunciada debemos crear en las mquinas choco,gamba y router una interfaz interna
para cada una de ellas y dos para la mquina router. Como se muestra en la
siguiente imagen.

Figura 2.5: NIC internas (Choco, Gamba y router)


En todos los equipos hay que configurar las las tarjetas de red (NIC) de forma que inicien automticamente al arrancar el sistema. A dems hay que configurar las direcciones IP como estticas para que todo tenga el funcionamiento que se desea. Para ello modificamos el fichero de configuracin de la tarjeta /etc/sysconfig/network-script/ifcfg-ethx como se muestra en la siguiente
imagen para la creacin de las dos subredes.

25

2.2. Procedimiento
Captulo 2. PRCTICA CONFIGURACIN DE RED. TOPIC 205

Choco
Gamba
Router-Choco
Router-Gamba

IP
10.0.3.16
10.0.2.16
10.0.3.15
10.0.2.15

MSCARA
255.255.255.0
255.255.255.0
255.255.255.0
255.255.255.0

RED
10.0.3.0
10.0.2.0
10.0.3.0
10.0.2.0

GATEWAY
10.0.3.15
10.0.2.15
"DirPuente"
"DirPuente "

BROADCAST
10.0.3.255
10.0.2.255
10.0.3.255
10.0.2.255

Cuadro 2.1: Configuracin IP de NIC maqueta


Cabe destacar que en el equipo que hace la funcin de router, la interfaz
que tenemos conectada como NAT no tenemos que agregar la puerta de enlace
(GATEWAY). Por el resto la configuracin de cada tarjeta ser identica cambiando los parmetros de red.

Figura 2.6: Configuracin tarjetas de red

26

Captulo 2. PRCTICA CONFIGURACIN DE RED. TOPIC 205


2.2. Procedimiento

4.Habilitar configuracin para ping entre todos. Para conseguir que desde cualquier equipo podamos realizar un ping hacia cualquier otro de la maqueta (aunque sea de redes distintas) debemos habilitar el fordwarding en el
equipo que hace de intermediario de redes (router). Podemos usar el comando
fordwarding y comprobar si est activo o no. Si no lo est mostrar un 0 como
ocurre en la siguiente imagen.

Figura 2.7: Comprobacin de Fordwarding


Para activarlo podemos hacerlo de dos maneras, temporal o fija. La manera
temporal se pierde la configuracin al reiniciar el sistema.
La imagen que se muestra a continuacin es la manera de hacerlo temporal.

Figura 2.8: Fordwarding temporal


La imagen que se muestra a continuacin es la manera de hacerlo temporal.

Figura 2.9: Fordwarding fijo


Una vez que hemos llegado a este punto ya est hecha la redireccin entre distintas subredes, pero sin embargo si comprobamos un ping de la red del
equipo Choco a la red del equipo Gamba, este no llegar nunca a su destino.
Esto es devido a que el firewall de router est rechazando los paquetes ICMP
del ping.
Para poder conseguir que se haga el ping debemos deshabilitar el firewall, pero
como mejor solucin vamos a crear una regla dentro del firewall que permita
este paso, de esta manera nuestro servidor seguir teniendo mayor seguridad.
La configuracin del firewall podemos consultarla en el archivo /etc/sysconfig/iptables. Ahora lo que vamos a modificar dentro de este archivo es comentar las lneas que no deseemos, en este caso vamos a comentar las lneas que
ponen redirect. Esto debe quedar como muestra la imagen que se muestra a
continuacin.
27

2.2. Procedimiento
Captulo 2. PRCTICA CONFIGURACIN DE RED. TOPIC 205

Figura 2.10: Configuracin firewall


Una vez llegado a este punto s podemos hacer ping entre las mquinas
Choco y Gamba las cuales se encuentran en redes distintas, pero debemos conocer su ip. Para hacerlo con mayor comodidad vamos a cambiar los las asignaciones de ip con nombres de equipos. Esto se hace modificando el archivo
de hosts. Este archivo se encuentra en la ruta /etc/hosts

Figura 2.11: Configuracin archivo de hosts

28

Captulo 2. PRCTICA CONFIGURACIN DE RED. TOPIC 205


2.2. Procedimiento

5.Configuracin interfaz Solo-Anfitrin La configuracin de esta interfaz


como solo-anfitrin nos permitir conectarnos por ssh a la mquina router sin
necesidad de salir a internet. (En el captulo anterior nos conectabamos a travs
de NAT, por lo tanto necesitabamos salir a internet para realizar la conexin).
Para esto lo primero que debemos hacer es agregar una interfaz de tipo solo
anfitrin al equipo router, con el procedimiento habitual que hemos seguido
cada vez que se ha agregado una nueva NIC, solo que en este caso debemos
indicar conectado a Adaptador slo-anfitrin y elegir el nombre de la interfaz.
Cuando iniciamos la mquina, debemos configurar el interfaz en su archivo de
cocnfiguracin como ya se ha visto al principio de este captulo. (vi /etc/systconfig/networkscript/ifcfg-eth7). Este archivo debe quedar como se muestra en la siguiente
figura.

Figura 2.12: Agregar tarjeta Solo-anfitrin


Una vez agregada la NIC al equipo Router, debemos de configurar dicha
interfaz, para ello realizamos los pasaos vistos anteriormente para modificar
el archivo de configuracin de la interfaz. La configuracin dada debe quedar
como muestra la siguiente imagen.
Una vez configurada la NIC de esa forma podemos levantarla con el fomando ifup eth4 o reiniciando el sistema, ya que le hemos indicado en la configuracin el arranque automtico.
29

2.2. Procedimiento
Captulo 2. PRCTICA CONFIGURACIN DE RED. TOPIC 205

Figura 2.13: Configuracin NIC Solo-anfitrin

Ahora que ya esta levantada y funcionando nuestra interfaz anfitrin podemos


realizar una conecin por ssh, en mi caso como muestra la imagen siguiente la
realizo usando putty. Para facilitar la conexin, antes de realizar la conexin he
modificado el archivo de host del equipo anfitrin, para asignarle la direccin
dada al nombre Router.

Figura 2.14: Conexion Putty usando Solo-anfitrin

30

Captulo 2. PRCTICA CONFIGURACIN DE RED. TOPIC 205


2.2. Procedimiento

6.Configurar salida a internet. Para configurar la salida a internet, he usado


la configuracin usada en el captulo anterior de la configuracin NAT.

31

2.3. ConclusinCaptulo 2. PRCTICA CONFIGURACIN DE RED. TOPIC 205

2.3. Conclusin
Comandos bastante elementales y otros ms avanzados para la configuracin completa de redes. Estos comandos son de bastante utilidad ya que permiten comunicar nodos de distintas sedes o departamentos que es una tarea
muy comn a realizar en la vida real.

32

Captulo 2. PRCTICA CONFIGURACIN DE RED. TOPIC 2052.4. Bibliografa

2.4. Bibliografa
1. http://www.alcancelibre.org/staticpages/index.php/08-parametros-red/
2. http://moodle.uhu.es/contenidos2/pluginfile.php/173870/mod_

resource/content/28/dist/index.html/
3. http://www.linuxtechtips.com/2013/12/configure-centos-as-a-router.

html

33

Captulo 3
PRCTICA MANTENIMIENTO DEL
SISTEMA. TOPIC 206
3.1. Introduccin
Este captula trata la instalacin de un software desde un cdigo fuente,
pasando por todo el proceso de compilacin, instalacion...
Adems aborda otros puntos como son la programacin de copias de seguridad
en distintos equipos.

34

Captulo 3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC3.2.


206Objetivos

3.2. Objetivos
En Choco realizar lo siguiente:
1. Instalar desde el cdigo fuentre la versin 2.9.4 del JOE. Ser necesaria la
instalacin de otras herramientas para poder realizar la compilacin.
Una vez hecho el punto anterior, vamos a hacerlo en Gamba. 1. Usando el comando oportuno, hacer una copia de seguridad de todos los ficheros que se
creearon durante la instalacin del JOE.
2. Transferir el fichero resultante a Gamba usando el comando scp o rsync.
3. Descomprimir el fichero y comprobar que funciona.
Tras realizar la instalacin de dicho software, mande un mensaje a todos los
usuarios de choco y gamba (estn o no conectados) indicando que est disponible este nuevo editor.
Por ltimo, se propone realizar un sistema de copias de seguridad incrementales de los directorios /home de choco y gamba. Estas copias se realizarn todos los das. La idea es que las copias de seguridad de choco se almacenen en
el directorio /backups/ de gamba y las de gamba en el directorio /backups/ de
choco. Para programar las copias de seguridad use el comando cron.

35

3.3. Procedimiento
Captulo 3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC 206

3.3. Procedimiento
1. Para solventar el primer apartado de la prctica, lo primero que debemos
hacer es arrancar Choco y comprobar que tenga conectividad a internet (requisito dns bien configurados). La siguiente imagen muestra la configuracin
dns de nuestro equipo Choco y realiza un ping a www.google.es para asegurar
la conectividad total del equipo.

Figura 3.1: Configuracion dns y prueba ping


Hay que recordar que para que los nodos tengan salida al exterior desde las
redes de UHU debemos configurar sus DNS propios 172.16.3.2
Una vez comprobada la conectividad vamos tenemos que instalar unas herramientas de desarrollo que necesitares para realizar la compilacin del cdigo
fuente del editor que descargaremos posteriormente.
Para ello usamos la sentencia de la siguiente imgen.

Figura 3.2: Instalacin herramientas de desarrollo


Ahora solo tenemos que aceptar (yes) y esperar a que se realice la instalacin. Cuando la instalacin de estas herramientas acabe mostrar un mensaje
parecido al que podemos observar en la siguiente imagen indicandonos que el
proceso a finalizado.
Adems de haber realizado la instalacin de estas herramientas de desarrollo tambin necesitaremos tener instalado el wget para conseguir el cdigo fuente del editor que estamos tratando de instalar. As que lo instalaremos
36

Captulo 3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC


3.3. Procedimiento
206

Figura 3.3: Instalacin herramientas de desarrollo

Figura 3.4: Instalacin wget)


usando el comando usado anteriormente Yum. La siguiente imagen muestra el
proceso de instalacin.
Una vez que tenemos todos estos requisitos a nuestra disposicin podemos proceder a descargar el cdigo fuente del Editor a instalar (JOE). Para ello
usamos la utilidad wget que acabamos de instalar y le indicaremos el enlace
de donde se encuentra el codigo fuente a descargar. En la siguiente imagen se
muestra la realizacin de este paso.

Figura 3.5: Descarga del cdigo fuente JOE 4.9.2)


Una vez descargado podemos observar el archivo, en el directorio en el cual
nos encontramos. Uso del comand ls para listar contenido de un directorio.
Una vez llegado a este punto, que tenemos descargado el cdigo fuente,
podemos observar que viene en un archivo comprimido (tgz), por tanto el si37

3.3. Procedimiento
Captulo 3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC 206

Figura 3.6: Listado del directorio de descarga actual


guiente paso a realizar debe ser la extraccin y desempaquetacin. Para realizar
esto podemos usar el comando tar como se muestra en la siguiente figura.

Figura 3.7: Listado del directorio de descarga actual


Ahora, una vez tenemos desempaquetado el cdigo lo primero que se debe
hacer es leer el archivo README", el cual nos dice los pasos a realizar para que
podamos realizar la instalacin.
El archivo README de este paquete dice que debemos ejecutar los siguientes
comandos (make, make install, make clean). Esto puede observarse en la imagen que se muestra a continuacin.

Figura 3.8: Comandos a ejecutar segn README


Cuando ejecutamos el primer comando (make) se produce un error, que
podemos observar en la siguiente imagen.
Para solucionar el error que aparece en la imagen anterior lo nico que hay
que hacer es modificar el archivo vs.c, en l vamos a cambiar el include <varargs.h>por <stdarg.h>.
Una vez realizada la modificacin volvemos a ejecutar el comando make para
que se ejecute correctamente y asi poder proseguir con la instalacin de JOE.
Pero al ejecutarlo aparece un nuevo error, en este caso el error dado es que no
38

Captulo 3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC


3.3. Procedimiento
206

Figura 3.9: Error make


encuentra la librera ncurses, as que debemos instalar dicha librera para que
el comando pueda ejecutarse.

Figura 3.10: Ver lo que podemos instalar


Analizando la imagen de arriba podemos comprobar que podemos instalar
la libreria ncurses-static. As que la instalamos usando el comando yum como
lo hemos visto en los puntos anteirores (yum install ncurses-static).
Ahora que ya se ha instalado la librera que faltaba probamos a volver a ejecutr
el comando make y podemos comprobar que ahora s se ejecuta correctamente. La imagen que se muestra a continuacin muestra la ejecucin de make.
Ahora podemos proceder a instalar el editor, para ello usamos el comando
make install como se muestra en la siguiente imagen, en ella podemos apreciar
que da un error, pero este es debido a que no encuentra el directorio de "man",
pero esto ocurre porque este no est instalado.
Como el error que aparece en la figura no tiene immportancia y la instalacin se ha realizado correctamente podemos ejecutar el siguiente comando
39

3.3. Procedimiento
Captulo 3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC 206

Figura 3.11: Ejecucin comando make


para finalizar este apartado (make clean)
Ahora ya podemos usar el nuevo editor que acabamos de instalar. Simplemente necesitamos llamarlo (joe).

40

Captulo 3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC


3.3. Procedimiento
206

Figura 3.12: Instalacin de JOE

Figura 3.13: Finalizar instalacin con make clean

41

3.3. Procedimiento
Captulo 3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC 206

Figura 3.14: Ejecucin JOE

42

Captulo 3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC


3.3. Procedimiento
206

2. La siguiente parte de la prctica consiste en pasar JOE de choco a Gamba.


Para ello vamos a usar la utilidad "tar".
Lo primero que vamos a hacer es crear un fichero con la ruta a todos los archivos que vamos a incluir dentro del tar que copiaremos en Gamba.
Para poder observar que ficheros son los que se copian con la instalacin y donde se copian podemos lanzar el comando make install nuevamente.
Para crear el fichero usamos un editor cualquiera, en este caso vamos a usar el
que acabamos de instalar JOE.

Figura 3.15: Creacin archivo para exportar JOE


Una vez creado el archivo, lo que tenemos que hacer es empaquetar los archivos a exportar. Para ello usamos el comando tar como muestra la siguiente
imagen.

Figura 3.16: Empaquetado para exportar (tar)


Como resultado de la ejecucin del comando de la imagen de arriba podemos ver el archivo creado, asi confirmaremos que se ha ejecutado correctamente. Esto se muestra en la imagen que se muestra a continuacin.
Ahora ya tenemos empaquetado todos los archivos necesarios para instalar
el editor JOE en Gamba. Para ello vamos a usar el comando scp para copiarlo
de un equipo a otro. Este proceso se puede observar en la imagen siguiente.
Ahora nos dirigimos a Gamba y podemos observar que se encuentra el archivo (joe.tar) que hemos transferido. Pero ahora para realizar la instalacin
no necesitamos compilar los fuentes ni nada de lo que hemos realizado en el
equipo Choco, aqu solo con extraer el archivo transferido ya podremos usar el
editor JOE en Gamba.
En la imagen que se muestra a continuacin, se observa el proceso de extraccin en Gamba.
43

3.3. Procedimiento
Captulo 3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC 206

Figura 3.17: Archivo a exportar a Gamba (tar)

Figura 3.18: Exportado de archivo entre 2 nodos (scp)


En la siguiente imagen se aprecia una ejecucin de JOE en el equipo Gamba.

44

Captulo 3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC


3.3. Procedimiento
206

Figura 3.19: Extraccin de fichero transferido en Gamba

Figura 3.20: Ejecucin de JOE en Gamba

45

3.3. Procedimiento
Captulo 3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC 206

3. Aviso a los usuario conectados y no conectados Parar que todos los


usuarios puedan empezar a usar JOE vamos a informarle con un mensaje a
todos los conectados al sistema.
Los pasos que se describen a continuacin deben realizarse en Gamba y Choco, para ello usaremos el comando wall tal como se puede observar en la figura
que se muestra a continuacin. Esto tiene el inconveniente de que los usuarios

Figura 3.21: Envio de mensaje a usuarios conectados


que no estn online no se enterarn de que JOE ha sido instalado y que puede
usarse. Para ello vamos a dejar un mensaje para que lo vean los usuarios que
que no estn conectados. Esto podemos realizarlo modificando el archivo motd
que se encuentra en /etc. La imagen que se muestra a continuacin muetra la
modificacin de dicho archivo.

Figura 3.22: Envio de mensaje a usuarios desconectados


En el fichero existe una lnea en blanco debajo del mensaje "JOE INSTALADO"para que el mensaje no se mezcle con el promt al iniciar sesin los usuarios.

46

Captulo 3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC


3.3. Procedimiento
206

4. Copia de Seguridad Gamba y Choco Antes que nada, para realizar este
apartado, vamos a crear un directorio donde se almacenarn las copias de seguridad creadas. En este caso vamos a crear el directorio backup en el raiz. Para
ello uso mkdir como muestra la imagen siguiente.

Figura 3.23: Creacin directorio backups


Aunque en esta gua vamos a mostrar los pasos realizndolos sobre la mquina Gamba, los mismos pasos deben ser realizados sobre la mquina Choco.
Ahora que ya tenemos el directorio para almacenar las copias creado, vamos
a realizar el primer backup usando el comando rsync. Al ejecutar rsync en la
mquina gamba nos da el error que se aprecia en la siguiente imagen, indicndonos que no est instalado. Esto lo sulucionamos instalando las herramientas
que instalamos en Choco para poder compilar el cdigo fuente de JOE. (yum
install "Development Tools")o instalar directamente dicho comando (yum install rsync).

Figura 3.24: Error no instalado rsync


En mi caso he decidido instalar el comando rsync como muestra la siguiente figura.
Antes de realizar la copia de seguridad vamos a crear un documento en
Gamba para que copie algo sino no har backup de nada. La siguiehnte imagen muestra como realizo la copia de seguridad y como compruebo que se ha
realizado accediendo al directorio destino (/backup/)
Ahora una vez que la copias se hacen correctamente vamos a programarlas
para que se realicen una vez al da, pero como hemos comprobado al realizar la
copia con rsync nos pide al contrasea de acceso al equipo. As que para evitar
47

3.3. Procedimiento
Captulo 3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC 206

Figura 3.25: Instalacin rsync

esto debemos seguir los siguientes pasos.


textbf1 Paso: Crear claves usando ssh-keygen en el host local La imagen que se
muestra a continuacin muestra como generamos las claves privadas y pblicas.
textbf2 Paso: Copiamos la clave pblica al host remoto usando el comando
ssh-copy-id La imagen que se muestra a continuacin se aprecia como se copia
la clave pblica entre los dos equipos. Aunque en la imagen se muestra solo
realizndose en un equipo habra que hacerlo tanto en Choco como en Gamba.
Una vez hecho esto el host remoto no nos va a pedir la clave cuando intentemso realizar alguna opcin sobre l, esto nos permitir automatizar procesos.
Una vez hecho esto ya podemos programar la copia de seguridad diria, para
ello accedemos a la carpeta /etc/cron.daily/", todo lo que haya en este directorio se ejecutar una vez al da, pero no seremos consciente de el momento
exacto en el que se ejecuta, esto ser decidido por el sistema operativo.
Podramos obligar a que se realizara enuna hora concreta todos los das, para
ello tendremos que usar el comando rontab -e configurarlo conforme indica
la siguiente imagen.
2

48

Captulo 3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC


3.3. Procedimiento
206

Figura 3.26: Realizacin backup


Ahora tendremos que crear un archivo que llamaremos backup que contendr las lneas que muestra la siguiente imagen.
Como ltimo paso debemos darle permisos de ejecucin al archivo que
acabamos de crear, para ello usamos el comando chmod (chmod +x backup).

49

3.3. Procedimiento
Captulo 3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC 206

Figura 3.27: Generacin clave privada y pblica

Figura 3.28: Copiar clave pblica por ssh-copy-id

50

Captulo 3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC


3.3. Procedimiento
206

Figura 3.29: Configurar backup hora precisa con crontab -e

Figura 3.30: Contenido archivo backup programada

51

3.4. Conclusin
Captulo 3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC 206

3.4. Conclusin
Comandos bastante importantes para poder realizar un buen manteniemiento del sistema, especialmente me parece de mucha utilidad la manera de
automatizar las copias de seguridad.

52

Captulo 3. PRCTICA MANTENIMIENTO DEL SISTEMA. TOPIC


3.5.206
Bibliografa

3.5. Bibliografa
1. https://lc.fie.umich.mx/~rochoa/Manuales/Linux_Curso_1/Joe.

php
2. http://moodle.uhu.es/contenidos2/pluginfile.php/212939/mod_

resource/content/2/dist/index.html
3. http://moodle.uhu.es/contenidos2/pluginfile.php/210733/mod_

resource/content/3/dist/index.html
4. Distintos recursos de mantenimiento de la plataforma Moodle

53

Você também pode gostar