martes, 14 de mayo de 2013

Conf. cliente para usar LDAP.


***Actualmente esta guía es para toda la versión 5 de CentOS***


Necesitamos configurar nuestros equipos clientes y servidores para que el login se realice vía LDAP, ya disponemos del LDAP, por lo que simplemente realizaremos los siguientes cambios en la configuración de los equipos:


Si es posible, se recomienda instalar estos paquetes, para evitar problemas y tener siempre la versión más actualizada (en caso de que no se pudiera, revisar al final del texto las compatibilidades):

#yum install openldap  openldap-clients nss_ldap

Modificaremos los siguientes ficheros:

#vi /etc/sysconfig/autofs

LDAP_URI=”ldap://URLoIPdelServidor”

SEARCH_BASE=”dc=dominio,dc=raiz”         (p.e: “dc=google,dc=com”)

Con esto indicamos la dirección del LDAP y la ruta donde ha de buscar los grupos y usuarios.

Continuamos modificando ficheros:

#vi /etc/pam.d/sshd

session    required     pam_mkhomedir.so skel=/etc/skel/  umask=0022


#vi /etc/pam.d/login

session    required     pam_mkhomedir.so skel=/etc/skel/  umask=0022

Esta modificación en ambos ficheros, permite que al hacer login con un usuario “nuevo”, se genere su home si esta no existe.

Ahora ejecutaremos el siguiente comando, que con la información que le demos, nos configurará automáticamente los ficheros /etc/ldap.conf y /etc/openldap/ldap.conf:

#authconfig-tui
- Marcaremos:
* Utilizar LDAP
* Utilizar contraseña MD5
* Utilizar contraseñas ocultas (shadow)
* Utilizar Autenticación LDAP
- Vamos a Siguiente:
* Servidor: ldap://URLoIPdelServidor
* DN base: dc=dominio,dc=raíz
Al finalizar, si revisamos los ficheros /etc/ldap.conf y /etc/openldap/ldap.conf podremos comprobar que se han añadido estas líneas.

Para ir finalizando, agregaremos el servicio nscd al inicio:

chkconfig --add nscd
chkconfig nscd on

# chkconfig --list |grep nscd
nscd            0:desactivado 1:desactivado 2:activo 3:activo 4:activo 5:activo 6:desactivado

Y reiniciaremos los siguientes servicios:

#/etc/init.d/autofs restart
#/etc/init.d/nscd restart

Si ahora intentamos logarnos con un usuario del LDAP, deberíamos poder acceder sin problemas.

Puede ser, que en alguna máquina nos muestre el siguiente error “This account is currently not available.”
Esto puede deberse a que en el local de la máquina esté nuestro usuario y esté configurado como /sbin/nologin, para ello, cambiaremos esto por un /bin/bash:

#usermod -s /bin/bash NombreUsuario

Como comentario final, indicar que esto es una guía básica, ya que vosotros deberíais tener el LDAP en modo seguro, eso implica que a los clientes tienes que copiarles los certificados del servidor LDAP e indicarlo en los ficheros /etc/ldap.conf y /etc/openldap/ldap.conf
Sobre esta configuración si que hay 200.000 guías, así que seguidlas, por que yo he juntado diferentes guías para montar estos posts.

viernes, 3 de mayo de 2013

Script para que otros puedan ver tus Snapshots.



Una de las cosas molonas que tiene Amazon, es que los snapshots que hagas, los puedes compartir, gráficamente haces click derecho sobre el snapshot -> Snapshots permissions  y añades el id de la cuenta de Amazon con la que quieres compartir este Snapshot.

Pero........
que pasa si tienes un script para que genere los snapshots automáticamente y quieres que se agreguen estos permisos automágicamente.....

Simplemente añadir estas líneas al script:

#Se agregan permisos de otro id de amazon a los 2 últimos snapshots creados.
SNAP_ID=`/opt/api-tools/bin/ec2-describe-snapshots | sort -k5 | (head -5 |tail -1) |awk '{printf $2}'`
/opt/api-tools/bin/ec2-modify-snapshot-attribute $SNAP_ID  -c --add id-cuenta-amazon


Lo que hace es, describir los snapshots que hay hechos, los ordena por fecha y coge el id del snapshot que se encuentra en la última línea, en mi caso suele haber 5 snapshots (head -5), en el caso de que tengáis mas o menos tendréis que modificar ese 5 por el número que os vaya mejor.

Ese id que ha cogido, lo mete en la variable SNAP_ID, que usamos en la siguiente línea, esto lo que hace es ejecutar el comando para agregar permisos, al id del snapshot correspondiente y da permisos al id de la cuenta de Amazon que queramos.

Si mejoro el script, automatizándolo mas todavía, lo actualizo.

Un saludo!!