Autenticación de usuarios usando Kerberos

En una entrada anterior ya vimos como instalar y configurar Kerberos en cliente y servidor. Ahora vamos a explicar como autenticar usuarios usando Kerberos.

 

En nuestro cliente creamos un usuario llamado Kerberos que es el que vamos a utilizar para comprobar la autenticación contra Kerberos. Usamos adduser y con getent passwd vemos como se nos ha creado el usuario:

 

 

Ahora vamos a crear ese mismo usuario en el servidor Kerberos. Esto podemos hacerlo incluso desde el cliente usando kadmin:

 

 

Se ha creado en el servidor el usuario Kerberos. Se le ha puesto una contraseña distinta a la que tenía localmente el cliente para comprobar que efectivamente se autentica con Kerberos.

 

Instalamos el paquete libpam-krb5. Una vez instalado él solo se encargará de configurar PAM para que autentique mediante Kerberos.

 

 

Ahora vamos a probar a autenticarnos con el usuario kerberos. Hacemos un su kerberos y usamos la contraseña que introducimos antes en el servidor Kerberos.

 

 

Nos autentica perfectamente con una contraseña que no se encuentra en el cliente, por tanto está auntenticando con Kerberos. Vamos al servidor a ver que ocurre allí.

 

Hacemos un tail /var/log/auth.log

 

 

Esas entradas en el log indican que ha habido un proceso de autenticación por parte del servidor Kerberos. Por tanto podemos afirmar que el cliente se está autenticando mediante Kerberos.

Haremos la última prueba. Vamos a iniciar sesión con el usuario kerberos introdución la contraseña del servidor Kerberos que recuerdo que es distinta a la contraseña local:

Vemos como entra sin problemas

 

Fuentes:

www.luisguillen.es

Cómo configurar las Listas de Control de Acceso en Linux

Mediante un caso práctico vamos a ver como podemos configurar las listas de control de acceso (ACL’s) en Linux para indicar que usuarios pueden acceder a ciertas carpeta y cuales no.

Imaginemos entonces que estamos en un instituto y que dentro del departamento general (al que pertenecen todos los usuarios) tenemos un departamento de informática y otro de matemáticas. Al departamento de informática solo podrá acceder los usuarios que pertenezcan al grupo informática y de igual modo a matemáticas solo podrán acceder los grupos que estén en el grupo matemáticas.

Para hacer un resumen tenemos 3 grupos: departamento, informática y matemáticas. En el grupo “departamento” tenemos a los 2 usuarios. En el grupo “informatica” hemos metido a un usuario llamado albertoinf y en el grupo “matematicas” a un usuario llamado albertomat.

Lo primero que tendremos que hacer será instalar el paquete acl. En mi caso ya lo tengo instalado.

Una vez instalado tendremos que habilitar el uso de acl en el dispositivos que vayamos a utilizar. Para ello editamos el fichero /etc/fstab y añadimos lo siguiente. Si no queremos reiniciar podemos montarlo con mount -a.

Antes de cambiar los permisos veremos los permisos actuales que tiene cada una de las carpetas. Como podemos observar ahora mismo todas las carpetas pertenecen al usuario con el que las hemos creado, en este caso “usuario”.

Tendremos por lo tanto que asignar los permisos necesarios para la situación que hemos dispuesto. Lo primero que haremos será asignarle a la carpeta Departamento el grupo departamento. Como observamos solo le damos permisos de ejecución y de lectura para que no puedan escribir en esta carpeta.
Ahora aplicamos los permisos a cada uno de los departamentos. Esta vez si le damos permiso de escritura a cada uno de los grupos de los departamentos.
Veamos ahora si los cambios se han realizado correctamente.
Por último accedemos con el usuario albertoinf y probaremos a realizar tres pruebas simples:
Crear un fichero prueba1 en Departamentos.
Crear un fichero prueba2 en Matemáticas.
Crear un fichero prueba3 en Informática.
Como vemos funciona correctamente. Es fácil de implementar y añade un apartado más de seguridad a nuestro sistema.
Podéis encontrarme en Twitter o en mi web personal.

Cambia los atributos de tus ficheros con Chattr

En la entrada de hoy vamos a ver el comando chattr en Linux. Es un comando útil para ciertos aspecto de seguridad en algún fichero o conjunto de ellos (por ejemplo una carpeta que no queramos que nadie recupere o que nadie modifique).

¿Qué hace Chattr?

Es una utilidad que permite cambiar los atributos a los ficheros en Linux. Tiene una sintaxis bastante similar a chmod y por lo tanto su uso es sencillo.

Opciones y Operadores.

Como hemos mencionado en el punto anterior, la sintaxis es similar a chmod por lo que tanto las opciones como los operadores son los mismos. Podéis verlos en el siguiente cuadro.

1. Opciones.

2. Operadores.

 

Atributos.

Estructura.

La estructura a seguir para aplicar estos atributos es la siguiente:
chattr [-RV] +-=[AacDdijsSu] [-v versión] ficheros

Tipos de atributos.

 

Probando el comando.

Voy a realizar una serie de pruebas para que podáis ver como funciona el comando. Lo primero que haremos será aplicarle el atributo -i al un fichero de texto para que no se puede modificar, eliminar o renombrar el fichero. Una vez aplicado el atributo al intentar eliminarlo no nos lo permite.
Por ejemplo si nos encontramos en una empresa y queremos aumentar la seguridad del sistema podríamos denegar el uso del montaje automático de la siguiente manera. De esta manera solo el root podría permitir que podamos montar automáticamente.
Por último vamos a probar el atributo a para que solo podamos introducir datos en el fichero. Para ello lo primero que haremos será quitarle el atributo i y probar a meter un dato y a eliminar el fichero.
Pero si podemos mostrar la información que contiene el archivo.
Podéis encontrarme en Twitter o en mi web personal
 
 
 

Diferencias entre Windows 2003 Server y Windows 2008 Server

Características de windows 2003 Server

 

  • Sistema de archivos NTFS:
  1. Cuotas
  2. Cifrado y compresión de archivos, carpetas y no unidades completas.
  3. Permite montar dispositivos de almacenamiento sobre sistemas de archivos de otros dispositivos al estilo unix.
  • Gestión de almacenamiento, backups… incluye gestión jerárquica del almacenamiento, consiste en utilizar un algoritmo de caché para pasar los datos menos usados de discos duros a medios ópticos o similares más lentos, y volverlos a leer a disco duro cuando se necesitan.
  • Windows Driver Model: Implementación básica de los dispositivos más utilizados, de esa manera los fabricantes de dispositivos sólo han de programar ciertas especificaciones de su hardware.
  • ActiveDirectory Directorio de organización basado en LDAP, permite gestionar de forma centralizada la seguridad de una red corporativa a nivel local.
  • Autentificación Kerberos5
  • DNS dinámico con registro de IP’s (DHCP)
  • Políticas de seguridad

 

 

Características de windows 2008 Server.

 

  • Nuevo proceso de reparación de sistemas NTFS: proceso en segundo plano que repara los archivos dañados.
  • Creación de sesiones de usuario en paralelo: reduce tiempos de espera en los Terminal Services y en la creación de sesiones de usuario a gran escala.
  • Cierre limpio de Servicios.
  • Sistema de archivos SMB2: de 30 a 40 veces más rápido el acceso a los servidores multimedia.El protocolo Bloque de mensajes del servidor (SMB) versión 2 es una extensión del SMB. original. Los equipos cliente usan SMB para solicitar servicios de archivos e impresión desde un sistema de servidor a través de la red.
  • Address Space Load Randomization (ASLR): protección contra malware en la carga de controladores en memoria.
  • Windows Hardware Error Architecture (WHEA): protocolo mejorado y estandarizado de reporte de errores. Proporciona una infraestructura común para el manejo de errores de hardware para plataformas Windows. WHEA pretende reducir el tiempo medio de recuperación de errores graves de hardware a través de los informes de errores más ricos y reducir los fallos del sistema relacionados con errores de hardware a través del sistema de recuperación de errores de hardware funcionamiento eficaz y vigilancia de la salud.
  • Virtualización de Windows Server: mejoras en el rendimiento de la virtualización.
  • PowerShell: es una interfaz de consola (CLI) con posibilidad de escritura y conjunción de comandos por medio de guiones (scripts en inglés).
  • Server Core: el núcleo del sistema se ha renovado con muchas y nuevas mejoras. (No disponible en Windows 2003 Server)

 

¿Cuáles son las diferencias más notables?

  • Requisitos del sistema2003 vs 2008
  • Gran diferencia visuala que a partir de Windows Vista y Windows 2008, ya no tenemos la parte de instalación en interfaz texto. Ahora se utiliza, incluso para la resolución de problemas, la interfaz gráfica de WinPE 2.0.
  • En Windows Server 2008, el disco de instalación incluye todas las versiones del sistema operativo  y la instalación del mismo depende de tener el Serial del CD correcto y en Windows 2003, la versión del sistema operativo depende de tener el CD correcto.
  • La opción de instalación “Windows 2008 Server CORE”. Esta opción es una instalación mínima del sistema que incluso no incluye interfase gráfica.
  • Windows Server 2008 pide menos información;  por ejemplo, no nos pide clave de administrador (por defecto es admin), ni nombre de Máquina ni configuración de TCP/IP, ni Grupo de trabajo o dominio, durante la instalación del sistema, todos estos datos se proporcionan después de que el sistema operativo queda instalado. En Windows 2003 estos se piden durante el proceso de instalación.

 

Ediciones de Windows 2008 Server:

 

  • Windows Server 2008 Standard Edition (x86 y x86-64)
  • Windows Server 2008 Todas las Ediciones (Solo 64Bit)
  • Windows Server 2008 Enterprise Edition (x86 y x86-64)
  • Windows Server 2008 Datacenter Edition (x86 y x86-64)
  • Windows Server 2008 R2 Standard Edition (Solo 64Bit)
  • Windows Server 2008 R2 Todas las Ediciones (Solo 64Bit)
  • Windows Server 2008 R2 Enterprise Edition (Solo 64Bit)
  • Windows Server 2008 R2 Datacenter Edition (Solo 64Bit)
  • Windows HPC Server 2008 (reemplaza Windows Compute Cluster Server 2003)
  • Windows Web Server 2008 R2 (Solo 64Bit)
  • Windows Storage Server 2008 (x86 y x86-64)
  • Windows Small Business Server 2008 (Nombre clave “Cougar”) (x86-64) para pequeñas empresas
  • Windows Essential Business Server 2008 (Nombre clave “Centro”) (x86-64) para empresas de tamaño medio
  • Windows Server 2008 para sistemas basados en Itanium
  • Windows Server 2008 R2 Foundation Server

 

Server Core está disponible en las ediciones Web, Standard, Enterprise y Datacenter, aunque no es posible usarla en la edición ItaniumServer Core es simplemente una opción de instalación alterna soportada y en sí no es una edición propiamente dicha.

 

En cuanto a las mejoras, es muy notable la inclusión de un número de nuevas características de virtualización incluyendo:

 

  • Live Migration (con Hyper-V): es la capacidad de mover una máquina virtual que se encuentra corriendo, entre dos máquinas físicas, de manera transparente para el usuario. Para esto necesitamos trabajar con un clúster de conmutación por error: podemos mover la máquina de un nodo a otro, sin reducción de la conexión de red ni tiempo de inactividad. El resultado, es una máquina virtual con alta disponibilidad, minimizando considerablemente las interrupciones y disrupciones en el trabajo.
  • Cluster Shared Volumes (CSV): es un disco compartido que contiene un NTFS volumen que se hace accesible para las operaciones de lectura y escritura en todos los nodos de un clúster de conmutación por error de Windows Server.
  • Un reducido consumo de energía.
  • Un nuevo conjunto de herramientas de administración
  • Nuevas características Active Directory como una “papelera de reciclaje” para objetos AD borrados. 
  • Una nueva versión de IIS (7.5) que incluye un renovado servidor FTP, soporte para DNSSEC y el aumento del número de núcleos de procesamiento de 64 a 256. 
  • Los procesadores de 32-bits ya no están soportados en las ultimas ediciones. 

 

Algunas mejoras en la opción de instalación Server Core incluyen la eliminacion total del entorno gráfico del sistema operativo (pues la mayoría de los ataques se producen por entorno gráfico), y el soporte a .NET Framework, incluyendo aplicaciones ASP.NET y soporte para Windows PowerShell.