domingo, 22 de febrero de 2015

Instalar Gnome


Los requisitos mínimos «recomendados», teniendo en cuenta los efectos de escritorio son :

    * Procesador x86 a 1 GHz.
    * Memoria RAM de 1 GB.
    * Disco Duro de 15 GB (swap incluida).
    * Tarjeta gráfica y monitor capaz de soportar una resolución de 800x600.
    * Lector de CD-ROM, puerto USB o tarjeta de red.
    * Conexión a Internet puede ser útil.

Los efectos de escritorio se activan por defecto en las siguientes tarjetas gráficas:

    * Intel (i915 o superior, excepto GMA 500, nombre en clave «Poulsbo»)
    * NVidia (con su controlador propietario o el controlar abierto incorporado    Nouveau)
    * ATI (a partir del modelo Radeon HD 2000 puede ser necesario el controlador propietario)

Con una máquina con un procesador de 64 bits (x86-64), y especialmente si dispone de más de 3 GB de RAM, se recomienda utilizar la versión de Ubuntu para sistemas de 64 bits.






martes, 17 de febrero de 2015

Configuración de la red



A la hora de configurar un dominio hay que proveer al sistema de los siguientes servicios.

  • Servidor dhcp 
  • Servidor DNS
  • Cortafuegos 

La mayoría se proveen desde fuera del servidor de dominio, pero también se puede configurar desde este
En este tema nos centraremos en el cortafuegos

Esquema de red

Configuración de la red 

Las tarjetas de red se configuran durante el arranque 
Eth0, eth1… 
Se puede hacer mediante ifconfig pero solo servirá hasta el siguiente reinicio 
  • ifconfig 192,168,1,2 netmask 255,255,255,0 up 
  • ifconfig eth0 down 
  • ifconfig eth0 up 
  • route add –nt 0/0 gw 192,168,1,1 eth0 (puerta de enlace)
Archivo de configuración 

/etc/network/interfaces
lo auto 
iface eth0 inet static 
address 192.168.1.2 
netmask 255.255.255.0 
network 192.168.1.0 
broadcast 192.168.1.255 
gateway 192.168.1.1 

Otros ficheros 

Nombre del equipo 
        /etc/hostname
              Escribir el nombre 

Servidores DNS 

DNS locales 
     /etc/hosts 

DNS Internet 
     /etc/resolv.conf 
            nameserver 8,8,8,8 

Actualizar los cambios 
       /etc/init.d/networking restart | stop | start | force-reload

Otros servicios de red 
  • Dhcp -dhcp3-server 
  • DNS -/etc/hosts 
  • SERVIDOR WEB-apache 
  • CORREO ELECTRÓNICO -sendmail 
  • FIREWALL Y NAT-Iptables 
  • Escritorio Remoto -vnc, teamviewer


LDAP


LDAP es un protocolo de aplicación que permite el acceso a un dominio. Protocolo de Acceso a Directorio Ligero.Es un protocolo estándar que permite administrar directorios, esto es, acceder a bases de información de usuarios de una red mediante protocolosTCP/IP.

Usan BD como backend para almacenar y gestionar las entradas de directorio
Se pueden crear subdominios para:

  • Rendimiento 
  • Localización geográfica
  • Cuestiones administrativas
Modelos LDAP (tipos de servicios) 

Modelo de información 
  • Estructura y tipos de datos del directorio 
  • Directorios = entradas estructuradas (árbol) 
  • Cada entrada = atributos (nombre + valor) 
Modelo de asignación de nombres 
  • Referencia de las entradas y datos. Nombre único. 
  • Cada entrada un ID único (DN: Distinguished name) a partir del RDN (Relative DN) 
Modelo funcional 
  • Operaciones para acceder al árbol: autenticación, solicitudes y actualizaciones 
Modelo de seguridad 
  • Cliente: probar su identidad 
  • Servidor: controlar el acceso
OpenLDAP

Implementación de LDAP de código abierto 

Características 
  • Licencia libre 
  • Multiplataforma 
  • Integración con aplicaciones 
  • IPv6, LDAPv3 y Referrals (esquema distribuido) 
  • Permite operaciones de publicación de esquemas 
  • Internacionalización (UTF8) 
  • Soporta extensiones y muchas BD 
  • Contiene un esquema de mapeo 
  • Mecanismos avanzados de búsqueda
Componentes OpenLDAP 

sladpd: demonio principal 
slurpd: demonio del servidor de replicación 
Librerías 
Herramientas, utilidades y clientes

Instalación y Configuración 

apt-get install slapd ldap-utils
service slapd {start | stop | restart} 
  • Arrancar o reiniciar el servidor LDAP sudo /etc/init.d/slapd restart 
  • Parar el servidor LDAP sudo /etc/init.d/slapd stop 
En el directorio /etc/ldap 
  • Archivos de configuración 
  • Schemas
Configuración mediante el asistente 

sudo dpkg-reconfigure slapd









Administración: Cargar plantillas 

Hay que instalar unas plantillas para manejar usuarios y grupos

Instalar plantillas para almacenamiento de usuarios unix

sudo ldapadd -Y EXTERNAL -H ldapi:/// -f  /etc/ldap/schema/cosine.ldif 
sudo ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/ldap/schema/nis.ldif 
sudo ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/ldap/schema/inetorgperson.ldif


Configuración esquema básico 
  • Base del directorio: parámetro olcSuffix. dc=majada,dc=com 
  • Nombre de usuario administrador: parámetro olcRootDN . cn=admin,dc=majada,dc=com Contraseña: parámetro olcRootPW. ldapadmin 
  • Permiso de acceso a contraseñas: parámetro olcAccess: to attrs=userPassword. administrador permiso de escritura y a cada usuario para cambiar su propia contraseña 
  • Permiso de acceso global al directorio: parámetro olcAccess:to *. Daremos al usuario administrador permiso de escritura y a todos los usuarios, permisos de lectura Ejemplo de configuración del archivo ldif
Ejemplo de configuración

Unidades organizativas 

Hay que crear una unidad organizativa para usuarios y otra para grupos 
  • dn: ou=users 
  • dn: ou=groups 

Sólo cuando estén creados dominio y administrador.

Después podemos crear usuarios y grupos para hacer pruebas. Crearemos los usuarios javier, joaquin y miguel en el grupo profesores y los usuarios jessica y joel en el grupo alumnos. 

Ejemplo de configuración 



Últimos pasos 

Cargar en el directorio los archivos ldif 

sudo ldapadd -Y EXTERNAL -H ldapi:/// -f /tmp/ldapcurso-esquema-basico.ldif 
sudo ldapadd -c -x -D cn=admin, dc=majada, dc=com -W -f /tmp/ldapcurso-usuarios.ldif 

Comprobación de las entradas añadidas 

ldapsearch -xLLL –b “dc=majada,dc=com” uid=juan sn givenName cn

Herramientas y utilidades 

Cliente 
  • ldapmodify :modificar entradas de un directorio 
  • ldapadd :añade entradas al directorio 
  • Ldapsearch :busca entradas en el directorio 
  • Ldapdelete :elimina entradas en el directorio 

Servidor 
  • slapadd :añadir entradas desde un fichero ldif 
  • slapcat :extraer de una BD en formato ldif 
  • slapindex :regeneración de índices 
  • slappaswd :genera una contraseña de usuario
Servidor de autenticación 

Instalación 

sudo apt-get install ldap-auth-client nscd 

Configuración 

sudo auth-client-config -t nss -p lac_ldap 

Librería (para que conecte con el servidor al autenticar) 

sudo apt-get install libpam-ldapd 

Actualización de PAM 

sudo pam-auth-update 

Probar la autenticación 

sudo /etc/init.d/nscd restart 
pamtest passwd jessica (autenticación de la contraseña) 
Trying to authenticate for service . Password: // Introducimos el password de jessica 
Authentication successful. // La autentificación ha sido satisfactoria 

finger joel -finger para usuarios que están solo en el dominio 
Login: joel Name: Joel Javier 
Directory: /home/www/alumnos Shell: /bin/sh 
Last login Tue Sep 27 18:02 (CEST) on pts/3 from 192.168.1.213 
No mail.
No Plan

Herramientas gráficas 
  • lat -LDAP Admin Tool 
  • PhpLdapAdmin -Entorno web 
  • JXplorer


lunes, 2 de febrero de 2015

Procesos



Definición


Un proceso puede informalmente entenderse como un programa en ejecución. El concepto se refiere a la ejecución de diversas instrucciones por parte del microprocesador


Formalmente un proceso es "Una unidad de actividad que se caracteriza por la ejecución de una secuencia de instrucciones, un estado actual, y un conjunto de recursos del sistema asociados".

El sistema operativo  se encarga de gestionar los procesos pudiendo crear y borrar los procesos y  establecer comunicaciones entre ellos.

Un proceso informático puede atravesar diferentes estados. Puede estar en ejecución (cuando está utilizando el microprocesador), bloqueado (su ejecución requiere que se realice otro evento) o listo (cuando libera el microprocesador).


Es posible distinguir entre diferentes tipos de procesos. Los procesos cooperativos, son aquellos que son gestionados por varias configuraciones de hardware. Los procesos distribuidos, en cambio, se encuentran repartidos entre varios elementos de un sistema. También existen los procesos paralelos, que se asemejan a los sistemas más importantes.

1 programa cuenta con varios procesos. Se dividen: 

  • SO necesita algo 
  • Entrada de un nuevo usuario (paralelo)
           -2 usuarios ejecutando un programa
          - Si lo ejecuta al entrar termina al salir 


Procesos creados por el SO: 

  • Errores 
  • Instrucciones inválidas 
  • Fallos E/S
Dos tipos de procesos 
  • Usuarios 
  • Sistema 
Se ejecutan por prioridad

Bloque de control de Procesos BCP

Se almacenan los atributos del proceso 


Simula a una imagen del proceso en un momento concreto 
  • Registros 
  • Ubicación de variables 
  • Pila
Cada proceso -1 BCP 

Se usa para concurrencia (los procesos entran y salen de la CPU constantemente)

Información del BCP

Identificadores 
  • Proceso 
  • Proceso padre 
  • Usuario 
Información sobre el estado del proceso (condición de la última instrucción, por dónde va…) 

Información sobre el control del proceso 
  • Prioridad 
  • Tiempo de espera 
  • Procesos hijos generados
Tabla de BCP

Al crearse el proceso se crea el BCP y se almacena en una tabla de BCP’s 

La tabla puede ser 
  • Estática (tiene un nº máximo) 
  • Dinámica (sin límite) 
Al cargarse el proceso, se cargan los datos (registros, variables…) en el BCP y al parar el proceso es al revés 

Todo lo gestiona el SO por lo que necesita conocer el estado en que se encuentra el proceso


Acciones de los procesos 
  • Salvar contexto del proceso que abandona la ejecución 
  • Cambiar el estado del proceso 
  • Mover el BCP a otra cola (listo, bloqueado…) 
  • Solicitar otro proceso 
  • Actualizar el nuevo BCP 
  • Actualizar las estructuras de datos y memoria 
  • Volcar al procesador el contenido del nuevo proceso
Hilos 

División mínima de acciones

1 proceso -Varios hilos 

Ventajas de separar hilos y procesos 
  • La información de los hilos hay mucha que es común 
  • menos tiempo para consultarla 
  • Comunicación entre hilos más rápida porque están en zonas comunes de memoria 
  • Ejecución paralela de varios hilos 
Se suele trabajar a nivel de hilos: 
  • Fin de un proceso = fin de los hilos 
  • Suspensión de un proceso = suspensión de hilos y liberación de memoria 
  • Como ocupan menos recursos se liberan más
Interrupciones y Excepciones 

Interrupción 
  • Mecanismo para ejecutar un bloque de instrucciones interrumpiendo la ejecución de un programa 
  • Por ejemplo, las teclas del teclado 
Excepción  
  • Situaciones de error en un programa que requieren que se ejecute un bloque de instrucciones 
  • Por ejemplo, una división proporcionar una letra para una suma
Comandos para la automatización de tareas en linux 

CRON 
  • Ejecutar tareas programadas en un momento determinado 
  • Hay que instalarlo 
AT 
  • Ejecutar tareas programadas una sola vez 
  • Hay que instalarlo 
  • Ejercicio: Ejecutar un script cada vez que arranque el equipo