Proyecto Final Sistemas Operativos II
Enviado por Jerry • 26 de Octubre de 2018 • 1.927 Palabras (8 Páginas) • 511 Visitas
...
[pic 31]
La imagen de arriba nos muestra el menú referente al inciso a del segundo punto y el inciso a del tercer ejercicio. Para realizar dicho programa fueron necesarios los siguientes pasos:
- Crear archivo llamado pro.sh en el directorio home mediante nano pro.sh
- Pondremos el siguiente código dentro del archivo:
[pic 32]
- Guardamos y salimos, pero antes explicaremos mas a fondo las partes del código
← Línea por default al principio[pic 33]
← El comando trap nos sirve para evitar que se pueda teclar combinaciones en el teclado, de tal forma que pueda acceder a la consola
← El comando echo se usa para mostrar una línea de texto en pantalla
← El comando read con el parámetro -p muestra un mensaje y después captura en una variable lo que teclee el usuario
[pic 34]
La imagen de arriba representa la estructura de lo que comúnmente conocemos como switch. Cuando el usuario, por ejemplo, tecla 1, el programa pedirá que ingrese el nombre del usuario que desea agregar, y o que teclee el usuario se guardara en la variable agrega, después mediante el comando sudo adduser $agrega, se agregara el nuevo usuario con el nombre que guardo la variable agrega. Los demás casos trabajan de forma similar, (capturar datos, guardarlos en variables, ejecutar el comando correspondiente) pero es de notar que al final de cada caso esta la línea sudo sh /home/pro.sh;; donde este comando ejecutara el programa recursivamente para que el usuario pueda volver a ingresar una opción y el ;; nos indica el final de un case. Para terminar el switch solo deberemos escribir de forma inversa case (esac) al final de todos los case.
Restaurar consola
Al momento de que modificamos el archivo profile de la carpeta etc, modificamos el inicio, en este caso lo primero que se ejecutara será el menú de la administración de usuarios. Si queremos que nuestro servidor vuelva a cargar con la consola deberemos seguir estos pasos:
- Reiniciar la maquina virtual
- Seleccionar la opción Opciones avanzadas
- Seleccionar la opción que nos indique que es el modo recovery
[pic 35]
- Cuando termine de cargar los archivos necesarios nos mostrara la siguiente pantalla
[pic 36]
- Seleccionamos la opción root Consola de superusuario
- Ingresamos nuestra contraseña y damos enter
- Ahora ingresaremos el siguiente comando mount -o rw,remount /, esto para obtener permisos de lectura y escritura para poder restaurar el archivo que recién modificamos (profile) y asi restaurar el inicio
- Nos dirigimos a etc con cd /etc y abrimos el archivo profile (nano profile)
[pic 37]
Ahora pusimos un # al principio de la línea que agregamos, esto para que se convierta en comentario y no se tome en cuenta a la hora de la ejecución, finalmente guardamos los cambios e ingresamos init 6 para reiniciar la máquina y veremos cómo nuestra consola volverá a iniciar como de costumbre
Seguridad (autenticación centralizada)
Antes de comenzar, hay que aclarar que se hizo uso de 3 maquinas virtuales, una para el servidor kerberos, una para el servicio ssh y otra para el cliente. Primero iremos a la maquina donde instalaremos el servidor kerberos.
Para instalar el servidor ejecutaremos el comando sudo apt-get install krb5-admin-server krb5-kdc. Durante el proceso nos aparecerán tres ventanas (en caso de no haber configurado el DNS) donde estableceremos nuestro dominio, el administrador kerberos y los servidores kerberos, algo como asi: (NOTA: los datos que se introdujeron se actualizaron en el dns por problemas de conexión)
[pic 38]
[pic 39]
[pic 40]
Antes de conectarnos es necesario hacerle unas modificaciones al archivo de configuración ubicado en /etc/krb5.conf
[pic 41]
[pic 42]
(NOTA: los demás dominios no hacen falta, por lo que se borraron)
Ahora crearemos un nuevo dominio para crear la base de datos, tecleamos en la consola krb5_newrealm
[pic 43]
Nos pedirá que ingresemos una contraseña, después de confirmarla se habrá creado nuestra base de datos.
Vamos a conectarnos a kadmin.local para agregar principales
[pic 44]
Ahora agregamos al usuario root y a root/admin mediante el comando addprinc root y addprinc root/admin posteriormente. Para ambos casos nos pedirá asignar una contraseña. Para verificar si los ha agregado tecleamos listprincs
[pic 45]
Nos salimos tecleando q o exit para pedir un “ticket” al servidor tecleando kinit root (porque así se llama el usuario que acabamos de agregar). Nos pedirá ingresar su contraseña y si todo sale bien nos saldrá algo así:
[pic 46]
Para ver la caducidad y otros datos de nuestro ticket teclearemos klist
[pic 47]
Ahora vamos a editar el fichero kadm5.acl ubicado en /etc/krb5kdc/ y descomentamos la última línea, así cualquier persona que tenga /admin podrá acceder al servidor kerberos
[pic 48]
Ahora ingresaremos nuevamente a kadmin.local para crear el acceso ssh que configuraremos posteriormente. Se hara de la siguiente forma
[pic 49]
Y ahora teclearemos lo siguiente ktadd -k /tmp/ssh.com.keytab host/ssh.com (es importante que el hostname de nuestra maquina
...