Sistemas Operativos

Monday, July 31, 2006

Laboratorio #1

1) Preguntas a Resolver:

1.1 ¿Qué significa el número que se coloca en man? Pruebe man man.
R// El numero le indica al comando man que debe desplegar el manual de comando de la especifica sección. Dichas secciones son:

1 Comandos de Usuario
Comandos de usuario como ls, cp y grep.

2 System Calls
Rutinas de bajo nivel de interfaz directa con el Kernel.

3 Librería de Rutinas
Subrutinas en lenguaje C de alto nivel.

4 Archivos de Dispositivo
Describe los dispositivos en el directorio /dev.

5 Formatos de Archivo
Formatos de archivos manejados por varias utilidades y subrutinas.

6 Juegos

7 Misceláneo
Macro Paquetes, Selecciones Misceláneas.

8 Utilidades del Sistema
Comandos para el administrador de sistema.

9 Documentos
Manuales amplios que exponen algunos comandos con más detalle.


1.2
¿Qué hace el comando apropos? Pruebe man apropos.
R// Proporciona las línea de descripciones para las secciones de manual de comandos, en otras palabras, da una breve descripción de las funciones que realiza cada comando documentadas en una sección de manual respectiva.


1.3
¿Qué es considerado una contraseña fuerte (o “Strong Password”)?
R// Para que una contraseña sea considerada fuerte (“Strong Password”) debe cumplir con los siguientes requisitos:

- Debe ser al menos de siete caracteres de largo, esto debido a la manera en que las contraseñas son encriptadas, las contraseñas más seguras son de siete a catorce caracteres de lorgo.

- Debe contener caracteres de cada uno de los siguientes tres grupos: letras (en mayusculas o minisculas), numerales y símbolos (todos los caracteres que no sean considerados letras o numerales).

- Tiene por lo menos un carácter de símbolo entre la segunda y sexta posición.

-Debe ser significativamente diferente a las contraseñas anteriores.

- No debe contener su nombre o nombre de usuario.

- No debe ser una palabra o nombre común.


1.4
Explique ¿qué es mandatory access control (MAC)?
R// El mandatory access o cntrol de acceso obligatorio permite que nuevos módulos de control de seguridad sean cargados, implementando nuevas políticas de seguridad en un sistema. Los varios módulos de políticas de seguridad provistos por la estructura MAC pueden ser usados para proteger la red y los sistemas de archivos, bloquear usuarios para que no accedan ciertos puertos, sockets, y más. MAC mezcla los módulos de políticas de seguridad para crear un ambiente de seguridad multicapa. En un ambiente de seguridad multicapa, múltiples módulos de políticas de acceso están dispuestos efectivamente para mantener la seguridad. Algunos aspectos negativos del MAC son la carga administrativa en casos de sistemas de archivos con etiquetas múltiples y las configuraciones de control de acceso a red usuario por usuario, entre otros.


1.5
Explique ¿qué es una NAT?
R// La Traducción de Direcciones de Red o NAT (Network Address Translation), es un estándar creado por la Internet Engineering Task Force (IETF) el cual utiliza una o más direcciones IP para conectar varios computadoras a otra red (normalmente a Internet), los cuales tienen una dirección IP completamente distinta. Se puede utilizar para dar salida a redes públicas a computadoras que se encuentran con direccionamiento privado o para proteger máquinas públicas. Una NAT es necesaria cuando la cantidad de direcciones IP que nos haya asignado nuestro proveedor de Internet sea inferior a la cantidad de ordenadores que queramos que accedan a Internet.

Un puente NAT cambia la dirección origen en cada paquete de salida y, dependiendo del método, también el puerto origen para que sea único. Estas traducciones de dirección se almacenan en una tabla, para recordar que dirección y puerto le corresponde a cada dispositivo cliente y así saber donde deben regresar los paquetes de respuesta. Si un paquete que intenta ingresar a la red interna no existe en la tabla de traducciones, entonces es descartado. Debido a este comportamiento, se puede definir en la tabla que en un determinado puerto y dirección, se pueda acceder a un determinado dispositivo, como por ejemplo un servidor web, lo que se denomina NAT inverso o DNAT (Destination NAT).

NAT tiene muchas formas de funcionamiento, entre las que destaca el NAT estático que realiza un mapeo en la que una dirección IP privada se traduce a una correspondiente dirección IP pública de forma unívoca (normalmente se utiliza cuando un dispositivo necesita ser accesible desde fuera de la red privada) y el NAT dinámico, el mas utilizado, que traduce una dirección IP privada a un grupo de direcciones públicas (implementando esta forma de NAT se genera automáticamente un firewall entre la red pública y la privada, ya que sólo se permite la conexión que se origina desde ésta última).

1.6 ¿Qué es DHCP?
R// DHCP son las siglas en inglés de Protocolo de configuración dinámica de servidores (Dynamic Host Configuration Protocol). Es un protocolo de red en el que un servidor provee los parámetros de configuración a las computadoras conectadas a la red informática que los requieran (máscara, puerta de enlace y otros) y también incluye un mecanismo de asignación de direcciones de IP.

El DHCP le permite al administrador supervisar y distribuir de forma centralizada las direcciones IP necesarias y, automáticamente, asignar y enviar una nueva IP si el ordenador es conectado en un lugar diferente de la red.


2) Comandos Básicos:

2.1 Cambie el password del root a “minixrules” usando el comando passwd.

El comando passwd me permite cambiar el password de usuario.


2.2 ¿Qué sucede si se cambia el password de root y después se intenta cambiarlo como el que tenia anteriormente (espacio en blaco)?
R// El minix muestra una advertencia informándome que el password del root no puede ser nulo o vació y que intente introducirlo nuevamente.


2.3 Cambie el passwor del root por “minixrules”, salga de la sesión e ingrese nuevamente pero esta vez introduzca en el password del root “minixruleunitec” ¿Qué sucede? ¿Cuál es la debilidad de manejo de passwords en este sistema? Revisar el codigo fuente del comando passwd que se encuentra en el directorio /usr/src/commands/simple/passwd.c.

- Al introducir el password “minixruleunitec” logro ingresar al sistema.

- La debilidad de manejo de password del minix se debe a que solo requiere de ocho caracteres, ya que al ingresar un password largo que contenga en sus primeros ocho caracteres el password requerido, el sistema trunca la cadena y toma los primeros ocho caracteres como contraseña valida.

- El comando passwd es el comando que me permite cambiar el password del sistema. En el código fuente de este comando se puede ver que al ingresar un nuevo password éste tiene como de requisitos no ser nulo o vacío, que la cadena sea de tamaño nueve.


2.4 pwd (parent current directory)
Indique el directorio si se ejecuta:

2.4.1 # cd /usr/src
2.4.2 # cd
2.4.2 # cd /usr/src
2.4.4 # cd boot
2.4.5 # cd

¿Qué ocurre en 2.4.2 y 2.4.5 al ejecutar el comando? Use el comando pwd (parent current directory).

R// Al emplear el comando cd en 2.4.2 y 2.4.5 ingreso el directorio especifico por medio del path que introducido.

El comando pwd me muestra el path completo del directorio en el que estoy trabajando (o directorio actual).


2.5 cat
¿Cuál es el contenido de archivo /root/.profile y para que sirve?
R// El contenido mostrado es el siguiente:


2.6 find
¿En que directorio se encuentra el archivo proc.c?
R// El comando find busca el archivo en el arbol de archivos desde el directorio especificado chequeando cada archivo de cada subdirectorio. Si encuentra el archivo debuelve la ruta completa con el nobre de archivo. El archivo proc.c esta en el directorio /usr/src/kernel/, y su ruta completa es /usr/src/kernel/proc.c.


2.7 mkdir
Genere un directorio /usr/

El comando mkdir me permite crear un directorio nuevo en un directorio específico. Existe un comando en Minix llamado rmdir que hace lo contrario del mkdir.


2.8 cp
Copie el archivo /etc/passwd al directorio /usr/

El comando cp me permite copiar un archivo que se encuentra en una ruta específica a un directorio específico.


2.9 chgrp
Cambie el grupo del archivo /usr//passwd para que sea other

El comando chgrp me permite cambiar el grupo de archivo. En este comano aplican restricciones en algunos archivos que solo pueden ser modificados por un superusuario y archivos propios de usuario.


2.10 chmod
Cambio de permisos de propietario (owner) a permisos de lectura, escritura y ejecución, de grupo (group) a permisos de lectura y ejecución, y el resto (other) a permisos de ejecución.


2.11 grep

1) Uso del comando grep para mostrar las líneas de texto en el archivo /usr/src/kernel/main.c que contienen el texto include.


2) Impresión de todas las líneas de todos los archivo en el directorio /usr/src/kernel/ que contienen el texto POSIX.


2.12 su
¿Para qué sirve?
R// Convierte temporalmente el usuario en Superusuario u otro usuario. Su puede ser usado temporalmente para correr una Shell sobre otras Shell bajo la identidad del superusuario o de otros usuarios.

Su – construye un nuevo medio consistente del PATH, USER, LOGNAME, HOME, SHELL, TERN, TERMCAP, y variables TZ. Al igual que su, su – crea una nueva instancia de Shell sobre una Shell previa pero esta tiene un carácter maas independiente pues algunas variables del Shell anterior no se conservan.

Si se ejecuta su en el logged in del root se crea una nueva instancia de shell, y si sale de esta, se retorna a la instancia de Shell anterior, que en este caso es root.


2.13 adduser
Generacion de una nueva cuenta de usuario de user “homer”, mediante el comando adduser.


2.14
Ingreso a la nueva cuenta generada en inciso anterior.


2.14.1
Cambio del password del usuario “homer”.


2.14.2
Ejecución del comando su desde la cuenta de usuario “homer”.


2.14.2.1
Al ejecutar el comando su ¿qué se le solicita?
R// Se solicita el password del usuario.

2.14.2.2
¿Sucede lo mismo que en 2.12.2? ¿Por qué?
R// Ocurre lo mismo que lo anterior, ya que si en el sistema hay más de un usuario se necesita especificar que usuario esta solicitando la creación de una nueva instancia de Shell y si este es el correcto.


2.15 rm
Suprima el archivo lusrllpasswd

El comando rm me elimina el archivo en la ruta específica.


2.16 ps
¿Cuantos procesos de usuario tiene ejecutando? indique cuantas procesos están corriendo en el sistema

El comando ps me muestra el estado de los procesos activos.


2.17 mkdfs
El comando mkdfs genera un filesystem para un disco virtual.

1) Creación de un disco RAM de 1MB.


2) Creación de un filesystem en el disco RAM.


12.18 mount
Este comando me monta un disco virtual en el directorio específico.

Uso del comando mount para montar el disco virtual en el directorio /mnt.


12.19 df
El comando df muestra los filesystem que se encuentran montados.

1) ¿Que espacio libre y ocupado tienen todos los filesystems montados? (En
KBYTES).
R// Es espacio es el siguiente:


2) Al intentar ejecutar el comando de copiado sugerido en la guía, se presenta un mensaje que notifica que la operación no es realizada por que en el disco virtual no tiene suficiente espacio.


2.20 umount

Desmonta el filesystem del disco virtual del directorio en el que se encuentra.


2.20.1

Desmontaje del disco RAM del directorio /mnt.

2.20.2

Montaje del disco RAM como read-only en el directorio /mnt.


2.20.3

Desmontaje del disco RAM del directorio /mnt.


2.21 fsck
Revisa la consistencia de las acciones de los filesystems.

Revisión de la consistencia de filesystem del disco RAM.


0 Comments:

Post a Comment

Links to this post:

Create a Link

<< Home