Está en la página 1de 9

Práctica de Laboratorio 3 Scripts para la

administración de un servidor Linux usando


menú y tareas programadas

Grupo 4

Integrantes:

 Pablo Cedeño Núñez


 Tatiana Sánchez Paredes
 Ángelo Alejandro Vera
 Jefferson Del Barco Piloso

Profesora: Adriana Collaguazo Jaramillo

Fecha de Inicio: 02/05/17 Fecha de conclusión: 03/06/17


Actividad 1
▪ Desarrolle un script que se ejecute apenas inicie sesión el usuario admin
presentándole un menú con las siguientes opciones para la administración de un
servidor Linux:
1. Interfaces: Muestra todas las interfaces del servidor con paginación.
2. Cambio de IP WAN: Primera muestra la dirección IP WAN actual de la interfaz
enp0s3 y luego pedirá que se ingrese la nueva dirección IP, máscara de subred y puerta
de enlace predeterminada.
3. Usuarios: Lista de los usuarios existentes en el servidor.
4. Ping: Conectividad hacia una página web.
5. Sniffer: Permite analizar el tráfico que pasa por la interfaz enp0s3.
6. Logs del sistema: Muestra de los logs del sistema en tiempo real.
7. Reiniciar: Permite reiniciar el servidor.
8. Apagar: Permite apagar el servidor.
9. Salir: Permite salir del menú de consola de administración del servidor

Script:
#!/bin/bash

function uno(){

echo -e "1)$(ifconfig | sed -n '1p' | cut -f1 -d:)"

echo -e "2)$(ifconfig | sed -n '10p' | cut -f1 -d:)"

echo -e "3)$(ifconfig | sed -n '19p' | cut -f1 -d:)"

function dos(){

read -p "Ingrese la ip que ud quiera cambiar: " ip

read -p "Ingrese la mascara de subred a la que quiera cambiar:" mask

read -p "Ingrese el gateway al que desea cambiar:" gatew

ifconfig enp0s3 $ip netmask $mask

route add default gw $gatew enp0s3

ifconfig

route
}

function tres(){

cat /etc/passwd | cut -f1 -d:

function cuatro(){

echo 'Ingrese la pagina web a la quele desea hacer PING:'

read pagina

ping -c 10 $pagina

function cinco(){

tcpdump -c 10 -i enp0s3

function seis(){

more /var/log/messages

function siete(){

init 6

function ocho(){

init 0

function nueve(){

break

function Menu(){

echo "Script: Menu con opciones para la administracion de un servidor linux"

echo "Desarrollado por: Grupo 4"

echo "Eliga la opcion que desea realizar:"

echo "1. Interfaces"

echo "2. Cambio de IP WAM"

echo "3. Usuarios"


echo "4. Ping"

echo "5. Sniffer"

echo "6. Logs del sistema"

echo "7. Reiniciar"

echo "8. Apagar"

echo "9. Salir"

echo "Seleccione una opcion [1 - 9]"

read opcion

case $opcion in

1) clear;uno;;

2) clear;dos;;

3) clear;tres;;

4) clear;cuatro;;

5) clear;cinco;;

7) clear;siete;;

8) clear;ocho;;

9) clear;nueve;;

esac

while true;

do

Menu

Done

Ejecución:
Script: Menu con opciones para la administracion de un servidor linux

Desarrollado por: Grupo 4

Eliga la opcion que desea realizar:

1. Interfaces

2. Cambio de IP WAM

3. Usuarios

4. Ping
5. Sniffer

6. Logs del sistema

7. Reiniciar

8. Apagar

9. Salir

Seleccione una opcion [1 – 9]

1)enp0s3

2)inet6

3)ether 52

root

bin

daemon

adm

lp

sync

shutdown

halt

mail

operator

games

ftp

nobody

systemd-bus-proxy

systemd-network

dbus

polkitd

abrt

unbound

tss
libstoragemgmt

rpc

colord

usbmuxd

saslauth

geoclue

rtkit

radvd

rpcuser

nfsnobody

qemu

chrony

setroubleshoot

pulse

gdm

gnome-initial-setup

sshd

avahi

postfix

ntp

tcpdump

pafecede

Ingrese la pagina web a la quele desea hacer PING:

google.com

PING google.com (216.58.219.142) 56(84) bytes of data.

64 bytes from mia07s26-in-f14.1e100.net (216.58.219.142): icmp_seq=1 ttl=52 time=105 ms

64 bytes from mia07s26-in-f14.1e100.net (216.58.219.142): icmp_seq=3 ttl=52 time=108 ms

64 bytes from mia07s26-in-f14.1e100.net (216.58.219.142): icmp_seq=4 ttl=52 time=109 ms


64 bytes from mia07s26-in-f14.1e100.net (216.58.219.142): icmp_seq=5 ttl=52 time=108 ms

64 bytes from mia07s26-in-f14.1e100.net (216.58.219.142): icmp_seq=6 ttl=52 time=133 ms

64 bytes from mia07s26-in-f14.1e100.net (216.58.219.142): icmp_seq=7 ttl=52 time=111 ms

64 bytes from mia07s26-in-f14.1e100.net (216.58.219.142): icmp_seq=8 ttl=52 time=121 ms

64 bytes from mia07s26-in-f14.1e100.net (216.58.219.142): icmp_seq=9 ttl=52 time=115 ms

64 bytes from mia07s26-in-f14.1e100.net (216.58.219.142): icmp_seq=10 ttl=52 time=131 ms

--- google.com ping statistics ---

10 packets transmitted, 9 received, 10% packet loss, time 9009ms

rtt min/avg/max/mdev = 105.454/116.174/133.394/9.850 ms

Actividad 2
Desarrolle un script para reiniciar el servidor y que se ejecute a través de una tarea
programada el primer día de cada mes a las 23h59. Sugerencia: Servicio crond en el
archivo /etc/crontab.

Script:
#!/bin/bash
reboot

en el directorio bin se agrega el script y se crea un lazo


[root@localhost bin]# cp reiniciar.sh /bin
[root@localhost bin]# ln -sf reiniciar.sh reiniciar

Se configura el crontab para ingresar la configuracion de la fecha de reinicio:


[root@localhost jefferson]# cd /etc/
[root@localhost etc]# nano crontab -e

Se inserta la linea de comando para que reinicie el programa en una fecha


determinada
GNU nano 2.3.1 Fichero: crontab Modificado

SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
# For details see man 4 crontabs
# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,$
#| | | | |
# * * * * * user-name command to be executed
59 23 1 * * /bin/reiniciar

Actividad 3
Desarrolle un script para agregar una ruta y almacenarla en el archivo /etc/rc.local, y
que se ejecute a través de una tarea programada los días 15 de manera trimestral a las
09h20. Sugerencia: Servicio crond en el archivo /etc/crontab

Script:
#!/bin/bash

echo "Ingrese la ruta que desea ingresar en /etc/rc.local: "


read ruta

echo $ruta >> /etc/rc.local


luego se debe crear una tarea programada en el crontab
20 9 15 1 * /bin/agregarRuta
20 9 15 4 * /bin/agregarRuta
20 9 15 7 * /bin/agregarRuta
20 9 15 10 * /bin/agregarRuta
Conclusiones:
Pablo Cedeño:
Durante la práctica se aprendió al manejo de las estructuras de control para elaborar
scripts, además se aprendió a crear usuarios con privilegios de administrador y a crear
tareas programadas es decir scripts que se ejecuten en determinado tiempo del dia o
talvez del mes, también e aprendió cómo crear lazos, se aprendieron nuevos comandos
para la elaboración de scripts en Linux.

Jefferson Del Barco:


en esta práctica se puede observar la gran utilidad del comando crontab, que sirve para
realizar alguna tarea específica en una o varias fechas determinadas, además el uso
adecuado de comandos para crear un menú de fácil uso que incluye varias opciones del
sistema donde el usuario no usuaria comandos sino ingresaría el número de la tarea y
se ejecutoría implícitamente esos comandos para realizar dicha tarea.
Ángelo Alejandro:
En la práctica logramos aplicar conceptos de manejo de menúes y tareas programadas
a través de crontab. Los scripts escritos realizaban las tareas de cada menú, a través del
uso de funciones en bash.
Tatiana Sánchez:

También podría gustarte