miércoles, 2 de septiembre de 2009

Descargar Documentos de II Unidad

Para descargar las diapositivas e informes de II Unidad... Hacer clic aqui. Las descargas incluyen instalacion de PHP, MySql, y Apache, instalacion de drivers, llamadas al sistema en Centos y una aplicación con Php, mysql y apache.

martes, 28 de julio de 2009

Descargas

Para descargar todos los informes de I Unidad ... Hacer clic aqui (Esta descarga incluye los informes de : Instalación de PHP - MySQL en Centos, Instalación de Sist. Op. CentOS, MINIX, Creación de Usuarios y Grupos).

Para descargar las diapositivas de I Unidad... Hacer clic aqui

miércoles, 17 de junio de 2009

Centos

  • INTRODUCCIÓN

GNU/Linux es un sistema operativo con muchas características y una de estas es el estar diseñado para ser utilizado por múltiples usuarios. Aún cuando se tenga una PC con un único usuario, es importante recordar que no es conveniente realizar el trabajo diario desde la cuenta de root, misma que solo debe utilizarse para la administración del sistema.
Una cuenta de usuario contiene las restricciones necesarias para impedir que se ejecuten comandos que puedan dañar el sistema -programas troyanos como el Bliss-, se alteren accidentalmente la configuración del sistema, los servicios que trabajan en el trasfondo, los permisos y ubicación de los archivos y directorios de sistema, etc.
El sistema de permisos en Linux se basa en un esquema de usuarios/grupos que lo convierte en la base principal de la seguridad en Linux, a estos usuarios y grupos se les asignan distintos derechos sobre los archivos y directorios.
Esta es una de las características que ayudan a que Linux sea casi inmune a los Virus de computadora, los virus deben ser capaces de escribir sobre un archivo para poder infectarlo y ejecutarse de alguna manera para poder infectar mas archivos, con el sistema de permisos de Linux los virus no pueden copiarse a cualquier archivo, si el usuario carece de permisos el virus no podrá infectar más archivos y por lo tanto no podrá reproducirse.
Todos los archivos y directorios en Linux tienen permisos que verifican quien puede hacer o no alguna acción con él.

  • CONTENIDO
  1. Creación de un usuario: Existen varias formas de crear los usuarios, ya sea por interface o por la línea de comandos.

Primera forma: Para crear un usuario se debe modificar el archivo /etc/passwd. Podemos hacerlo de forma segura utilizando el comando de linux vipw (sirve para bloquear el archivo mientras lo estés modificando de forma que nadie más pueda editarlo).
vipw /etc/passwd vipw /etc/passwd
En este archivo se guardan los usuarios del sistema. Para añadir otro, se crea una nueva línea con esta información:
nombreusuario:*:1000:1000:Nombre,,,:/home/nombreusuario:/bin/bash

Es el nombre con el que el usuario podrá loguearse* -

Sirve para que la cuenta esté deshabilitada, normalmente este campo contendrá una x que significa que tiene una contraseña asignada en el archivo /etc/shadow

1000 - es el id del usuario (User Id). Es un identificador único que no puede estar repetido.

1000 - es el id del grupo de ese usuario. En linux cada usuario tiene un grupo con el mismo nombre que crearemos luego.Nombre,,, - Son campos de información del usuario como el Nombre, Apellidos, etc separados por coma./home/nombreusuario - es la carpeta que le corresponde al usuario./bin/bash - es la shell o aplicación que se ejecutará cuando el usuario se loguee. Por ejemplo, otra forma para que un usuario no pudiera acceder al sistema sería poniendo aquí un programa que no se lo permitiera.

Segunda Forma: Generalmente el paso que procede a una instalación de GNU/Linux es la creación de cuantas de usuario. Existen distintos métodos, todos son sencillos y permiten crear una cuenta con su propio directorio de trabajo y los archivos necesarios.

  • Creando una cuenta en el modo de texto: useradd y passwd

Este procedimiento puede realizarse de forma segura tanto fuera de X Windows como desde una ventana terminal en el entorno gráfico del que se disponga. Fue el método comúnmente utilizado antes de la aparición de programas como YaST y Linuxconf. Sin embargo aún resulta útil para la administración de servidores, cuando no se tiene instalado X Windows, no se tienen instalados YaST o Linuxconf -o las versiones de estos que se han instalado no trabajan correctamente-, o bien se tienen limitaciones o problemas para utilizar un entorno gráfico.

  • El primer paso: el comando useradd.

El primer paso para crear una nueva cuenta consiste en utilizar el comando useradd del siguiente modo: useradd nombre_del_usuario
Ejemplo: useradd joel

  • El segundo paso: el comando passwd.


Después de crear la nueva cuenta con useradd o que sigue a continuación es especificar una contraseña para el usuario. Determine una que le resulte fácil de recordar, que mezcle números, mayúsculas y minúsculas y que, preferentemente, no contenga palabras que se encontrarían fácilmente en el diccionario. Existen otras recomendaciones más, por lo que es conveniente leer, antes de continuar, los comentarios finales acerca de la seguridad incluida en este mismo artículo.
Aunque el sistema siempre tratará de prevenirlo cuando se escoja una mala contraseña, el sistema no le impedirá que lo haga. Especificar una nueva contraseña para un usuario, o bien cambiar la existente, se puede realizar utilizando el comando passwd del siguiente modo:passwd nombre_del_usuario
Ejemplo:passwd joel
El sistema solicitará entonces que proceda a teclear la nueva contraseña para el usuario y que repita ésta para confirmar. No verá el echo, por seguridad, el sistema no mostrará los caracteres tecleados, por lo que debe hacerlo con cuidado. Si se considera que tal vez se cometieron errores de tecleado, puede presionarse las veces que sean necesarias la tecla o . De cualquier forma el sistema le informará si coincide o no lo tecleado. Si todo salió bien recibirá como respuesta del sistema code 0. Si en cambio recibe code 1, significa que deberá repetir el procedimiento, ya que ocurrió un error.
Este procedimiento también puede utilizarse para cambiar una contraseña existente.

  • Opciones avanzadas.

En muchos casos pueden no ser necesarios, pero si se está administrando un servidor o estación de trabajo, o bien se es un usuario un poco más experimentado, y se quiere crear una cuenta con mayores o menores restricciones, atributos y/o permisos, pueden utilizarse las siguientes opciones de useradd:
Opciones más usuales del comando useradd
-c (comment )
Se utiliza para especificar el archivo de comentario de campo para la nueva cuenta.
-d( home dir )
Se utiliza para establecer el directorio de trabajo del usuario. Es conveniente, a fin de tener un sistema bien organizado, que este se localice dentro del directorio /home.
-e (expire date )
Se utiliza para establecerla fecha de expiración de una cuenta de usuario. Esta debe ingresarse en el siguiente formato: AA-MM-DD.
-g (initial group )
Se utiliza para establecer el grupo inicial al que pertenecerá el usuario. De forma predeterminada se establece como único grupo; se debe de tener en cuenta que el grupo asignado debe de existir.
-G (group,[...] )
Se utiliza para establecer grupos adicionales a los que pertenecerá el usuario. Estos deben separarse utilizando una coma y sin espacios. Esto es muy conveniente cuando se desea que el usuario tenga acceso a determinados recursos del sistema, como acceso a la unidad de disquetes, administración de cuentas PPP y POP. Se debe de tener en cuenta que el grupo asignado debe de existir.
-m
Se utiliza para especificar que el directorio de trabajo del usuario debe ser creado si acaso este no existiese, y se copiaran dentro de este los archivos especificados en /etc/skel.
-s (shell )
Se utiliza para establecer el Shell que podrá utilizar el usuario.
-u ( uid )
Se utiliza para establecer el UID, es decir, la ID del usuario. Este debe ser único. De forma predeterminada se establece como UID el número mínimo mayor a 99 y mayor que el de otro usuario existente. Los UID entre 0 y 99 son reservados para las cuentas de los servicios del sistema.

Ejemplo:
useradd -u 500 -d /home/Joel -G floppy,pppusers,popusers Joel
Esto creará una cuenta de usuario llamada Joel, que se encuentra incluido en los grupos floppy, pppusers y popusers, que tendrá un
UID=500, utilizará Bash como shell y tendrá un directorio de trabajo en /home/Joel.

2. Crear el grupo

Existen varias formas de crear los grupos, ya sea por interfaces o por la línea de comandos.
Primera Forma
Modificando el archivo /etc/groups
En linux cada usuario tiene un grupo con el mismo nombre, ahora crearemos este grupo utilizando el comando vigrp de linux, para bloquear el archivo /etc/groups mientras lo editamos:
vipw /etc/passwd

Hay que añadir el nuevo grupo asegurando que es el mismo nombre que el usuario, y el GID (Id de Grupo) que hemos puesto al crear el usuario
nombreusuario:x:1000:

A los grupos también se les puede asignar passwords, pero en este caso no será necesario y ponemos una x.
Segunda Forma
Utilizando el comando groupadd
Con el comando groupadd se puede crear un nuevo grupo. El comando groupadd crea una nueva cuenta de grupo utlizando los valores especificado en la línea de comandos y los valores por defecto del sistema.
Sintaxis:
groupadd [Opciones] Grupo
Opciones:
-f : evita la creación de un nuevo grupo, cuando se hace uso del comando groupadd, si este grupo ya existe.
-g gid : valor númerico del ID de grupo, debe ser un valor único a menos que se utilice conjuntamente con la opción -o.
-o : esta opción del comando groupadd permite agregar un grupo cuyo valor de ID no sea único.

Fichero: /etc/group

Descripción: información sobre las cuentas de grupos

Fichero: /etc/gshadow
Descripción: información sobre la seguridad de las cuentas de grupos
Ejemplo: groupadd -f operadores

3. Asignación de Privilegios

Los permisos propiamente dichos son tres:

  • r: read (lectura): Cuando el permiso de lectura está activo sobre un directorio significa que se podrá listar los recursos almacenados en él, si está asignado a un archivo se podrá leer su contenido.
  • w: write (escritura): Cuando el permiso de escritura está activo sobre un directorio significa que se podrá crear y borrar archivos en su interior, si esta activado para un archivo significa que se podrá modificar su contenido.
  • x: execute (ejecución): Si el permiso de ejecución está activo sobre un directorio significa que el usuario podrá realizar otras funciones dentro de él mediante los otros permisos de lectura y escritura, y si está activo sobre un archivo se podrá ejecutarlo desde la línea de comandos. [3]

4. Comandos relacionados.

Linux dispone de 3 comandos que permite cambiar los permisos, el propietario y el grupo de un archivo y/o directorio respectivamente:

  • Comando chmod : se utiliza para cambiar los permisos del archivo o directoriochmod [opciones] XXX nomFichero/nomCarpeta
    donde en opciones podemos expecificar por ejemplo cosas como -R, XXX es el número de permisos tal y como especificamos a continuación:
  • Relación Numérica con los Permisos

0 = Ningún permiso (Lectura = 0 + Escritura = 0 + Ejecución = 0)

1 = Permiso de Ejecución (Lectura = 0 + Escritura = 0 + Ejecución = 1)

2 = Permiso de Escritura (Lectura = 0 + Escritura = 2 + Ejecución = 0)

3 = Permiso de Escritura y Ejecución (Lectura = 0, Escritura = 2, Ejecución = 1)

4 = Permiso de Lectura (Lectura = 4 + Escritura = 0 + Ejecución = 0)

5 = Permiso de Lectura y Ejecución (Lectura = 4 + Escritura = 0 + Ejecución = 1)

6 = Permiso de Lectura y Escritura (Lectura = 4 + Escritura = 2 + Ejecución = 0)

7 = Permiso de Lectura, Escritura y Ejecución (Lectura = 4 + Escritura = 2 + Ejecución = 1)

Luego, por cada Identidad, podemos obtener un número comprendido entre 0 y 7, que delimitarán por Identidad, claramente, sus privilegios en particular sobre un archivo o carpeta.


¿Entonces, que es, por ejemplo, chmod 644? Son los Permisos que tiene asignados cada Identidad, sobre un archivo o carpeta, según su Relación Numérica. Siempre siguiendo este orden:
Propietario = 6 (Puede Leer y Escribir)

Grupo = 4 (solo puede Leer)

Otros = 4 (solo puede Leer)
La relación entre los permisos se especifica mejor a través de la siguiente tabla donde 1 significa un permiso activo y el 0 que no lo esta.

Lectura escritura ejecución

0 0 0 = 0

0 0 1 = 1

0 1 0 = 2

0 1 1 = 3

1 0 0 = 4

1 0 1 = 5

1 1 0 = 6

1 1 1 = 7

  • Comando chown : se utiliza para cambiar el propietario del archivo o directorio# chown [nuevo usuario propietario] [archivo/directorio] [opciones]
  • Comando chgrp : utilizado para cambiar el grupo del archivo o directorio# chgrp [nuevo grupo] [archivo/directorio] [opciones]

5. Conclusiones.

Los usuarios de un sistema GNU/Linux disponen normalmente de una cuenta asociada con sus datos, junto con el espacio en disco para que puedan desarrollar sus archivos y directorios. Este espacio está asignado al usuario, y sólo puede ser usado por éste (a no ser que los permisos especifiquen cosas diferentes. Dentro de las cuentas asociadas a usuarios podemos encontrar diferentes tipos:
• La del administrador, con identificador root, que sólo es (o debería ser) utilizada para las operaciones de administración. El usuario root es el que dispone de más permisos y acceso completo a la máquina y a los archivos de configuración. Por lo tanto, también es el que más daño puede causar por errores u omisiones. Es mejor evitar usar la cuenta de root como si fuese un usuario más, por lo que se recomienda dejarla sólo para operaciones de administración. [4]
• Cuentas de usuarios: las cuentas normales para cualquier usuario de la máquina tienen los permisos restringidos al uso de ficheros de su cuenta, y a algunas otras zonas particulares (por ejemplo, los temporales en /tmp), así como a utilizar algunos dispositivos para los que se le haya habilitado.
Otro tema que habrá que controlar en el caso de los ficheros y directorios es el de los permisos que queremos establecer en cada uno de ellos, recordando que cada fichero puede disponer de la serie de permisos:
rwxrwxrwx donde se corresponden con rwx del propietario, rwx del grupo al que el usuario pertenece, y rwx para otros usuarios. En cada uno se puede establecer el permiso de lectura (r), escritura (w) o ejecución (x). En el caso de un directorio, x denota el permiso para poder entrar en ese directorio (con el comando cd, por ejemplo).

domingo, 14 de junio de 2009

Instalación del Sistema Operativo CentOS

  • Requerimientos de Sistema

Memoria RAM: 192 MB (Mínimo).
Espacio en Disco Duro: 850 MB (Mínimo) - 2 GB (Recomendado).

Procesador: Intel Pentium I/II/III/IV/Celeron, AMD K6/II/III, AMD Duron, AMD Athlon/XP/MP.

  • Proceso de Instalación
  1. Arranque de CD-ROM:
    Primeramente debe asegurarse que su BIOS se encuentre configurado para leer el CD-ROM al momento de inicializarse su PC o Servidor, esto es necesario para que se ejecute el "Shell" de instalación CentOS en lugar del sistema operativo que tiene instalado en su disco duro.

  2. Arranque de CentOS: Inicialice su sistema con el Disco 1 de CentOS colocado en su lector de CD-ROM. Si configuró correctamente su BIOS para leer CD-ROM's al arranque, debe observar una pantalla como la siguiente :


  3. Proceso inicial y detección de Hardware: Estando en la pantalla anterior, simplemente esperando u oprimiendo Enter, iniciará el proceso para detección de Hardware y proceso de instalación a través de una consola gráfica, esta secuencia puede durar entre 10 o 15 segundos, mientras observa mensajes descriptivos sobre su sistema. Si desea realizar su proceso de instalación mediante línea de comandos, entonces deberá introducir la secuencia linux text.


  4. Verificación de medios (CD-ROM's): Posteriormente será presentado con la opción de realizar una prueba de integridad sobre los CD-ROM's de instalación CentOS, esta prueba dura entre 10 y 15 minutos para los 4 CD's de instalación. Si no desea realizar esta prueba, seleccione la opción Skip. La pantalla es la siguiente:



  5. Bienvenida: Es desplegado un mensaje de bienvenida de CentOS con instrucciones de navegación, simplemente oprima Next para continuar con el proceso.


  6. Lenguaje del Sistema: La siguiente selección que debe hacer es sobre el idioma que desea para su proceso de instalación y sistema, puede elegir castellano (Spanish):


  7. Configuración de Teclado: Seleccione el tipo de teclado en base a su sistema; Español si posee un teclado con tecla eñe y caracteres latinos, o bien, estadounidense de lo contrario.
  8. Tipo de Instalación (Actualización, Escritorio personal, Estación de Trabajo, Servidor, Personalizada): Seguido, será realizado un proceso de auto-detección para determinar si posee una instalación pre-existente de CentOS, de encontrarse será presentado con una opción de actualización, de lo contrario, podrá elegir entre 4 modalidades -- Escritorio Personal, Estación de Trabajo, Servidor o Personalizada -- cada una de éstas presenta una breve descripción de su funcionamiento. Para el caso de esta guía, se asumirá una configuración de Servidor, ya que CentOS se caracteriza por su estabilidad en esta área. A continuación se muestra esta consola :




  9. Partición de Disco Duro: Posteriormente, debe realizar el particionalmente de su disco duro, CentOS le ofrece dos alternativas para llevar a cabo este proceso. (NOTA: Es recomendable lea el proceso de Pre-Instalación en caso que no esté familiarizado con el concepto de particionar discos duros).

  10. Particionamiento Automático: Como su nombre lo implica, CentOS realiza el particionamiento del disco duro a dimensiones pre-determinadas, sin embargo, esto implica generalmente que debe borrar toda la información existente en su disco duro.

  11. Partición manual con Disk Druid: Para usuarios con amplio conocimiento del proceso de partición, pueden optar por hacer su propia distribución de espacio con esta opción. La pantalla es la siguiente :


  12. Administrador de Arranque ("Boot Loader"): Posteriormente debe confirmar la instalación del administrador de arranque ("Boot Loader") GRUB; si CentOS será el único sistema operativo instalado en su equipo, este paso no debe ser de mayor trascendencia. Sin embargo, si posee más de un disco duro, o bien, además de CentOS existirá otro sistema operativo, esta configuración tiene implicaciones en la manera que es inicializado su sistema. La pantalla es la siguiente :



  13. Configuración de Red: Seguido debe indicar los parámetros para acceso a red, ya sea manualmente con información de nodos IP y DNS , o bien, indicando una configuración automática vía DHCP.
  14. Configuración Coratfuegos ("Firewall"): Aquí debe especificar si desea instalar un mecanismo de "Firewall" para proteger su sistema. De ser así, también tiene la opción de habilitar determinados servicios para que éstos no sean afectados por el "Firewall", tales como: SSH, Servidores Web , Servidores de Correo y FTP. La pantalla es la siguiente :


  15. Idiomas adicionales para Sistema : Esta consola le permitirá definir idiomas alternos para su sistema, además del seleccionado en primeras instancias :





  16. Zona Horaria del Sistema: Aquí debe definir la zona horaria para su instalación. La pantalla es la siguiente :



  17. Definición de usuario raíz (root): Posteriormente debe indicar una contraseña para el usuario raíz ("root") del sistema, como su nombre lo indica, éste será el usuario maestro de la instalación y tendrá control absoluto de acceso sobre toda aplicación en CentOS. La pantalla se muestra a continuación :




  18. Selección de Aplicaciones/ Paquetes : En esta consola tiene la opción de elegir la serie de aplicaciones que serán instalados, por "default" se encontraran seleccionados una serie de paquetes que corresponden a una configuración típica de servidor, esto debido a que con anterioridad fue seleccionado este tipo de instalación. No obstante, puede agregar aplicaciones a su discreción, tales como un ambiente gráfico u otra función necesaria para cumplir con sus requerimientos. A continuación se muestra esta consola :


  19. Selección de Aplicaciones/ Paquetes: Seleccionadas las aplicaciones, al oprimir el botón Siguiente iniciará la instalación de aplicaciones, dependiendo de su Hardware, este paso puede demorar entre 20 o 40 minutos. Asegúrese también de tener cerca de su PC los discos de instalación y no dejarla desatendida, ya que durante este proceso necesitará colocar los distintos CD-ROM's conforme los requiera su instalación. A continuación se muestra esta consola :


  20. Ultimo paso: Ha terminado de instalar satisfactoriamente CentOS Linux. Ahora sólo debe reinicializar su sistema para entrar a su ambiente Linux. La pantalla se muestra a continuación :