openldap-servers
openldap-clients
samba
samba-common
smbldap-tools
Mandriva MDS
Apache
ntpd
Voy a mover una bd de ldap de gentoo hacia centos.
En gentoo me traje los archivo de respaldo que sale ejecutando:
slapcat -l respaldo.ldif
Copie la misma configuracion que tenia en el gentoo hacia centos hablando de openldap y samba, hasta los schemas, si no hacen esto van a tener problemas, debe quedar igual que el server donde esta operando.
No necesite traer el contenido de la base de datos /var/lib/openldap-directory, por que con el puro archivo respaldo.ldif se van a recuperar los datos.
Lo unico que copie fue DB_CONFIG.example hacia el folder donde ldap va a almacenar sus datos /var/lib/ldap, pero ese lo instala openldap-servers.
Por ultimo activar el syslog para que ldap logie, asi si pasa algo podremos saber mas facil por donde buscarle para reparar el dano.
Agregamos esto a el /etc/syslog.conf
local4.* -/var/log/ldap.log
Salvamos, creamos ese archivo en /var/log
touch /var/log/ldap.conf
Reiniciamos syslogd
/etc/init.d/syslog restart
Cambiamos los permisos para que ldap sea el unico con derechos en ese folder
chown -R ldap:ldap /var/lib/ldap
chmod -R 600 /var/lib/ldap
Jalamos el respaldo
slapadd -l respaldo.ldif
De aqui que nos se les pase configurar a centos para que se autentifique con ldap para el es necesario configurar /etc/nsswitch.conf
slapd.conf
include /etc/openldap/schema/core.schema
include /etc/openldap/schema/cosine.schema
include /etc/openldap/schema/inetorgperson.schema
include /etc/openldap/schema/mmc.schema
include /etc/openldap/schema/nis.schema
#include /etc/openldap/schema/misc.schema
include /etc/openldap/schema/mail.schema
include /etc/openldap/schema/samba.schema
#################################
schemacheck on
allow bind_v2
pidfile /var/run/openldap/slapd.pid
argsfile /var/run/openldap/slapd.args
#######################################################################
# Logging Options (disable when everything is working fine)
#######################################################################
loglevel 256
#######################################################################
# LDBM database definitions
#######################################################################
database bdb
directory "/var/lib/ldap/mydominio"
cachesize 100000
dbcachesize 1000000
lastmod on
suffix "dc=midominio,dc=com"
rootdn "cn=root,dc=midominio,dc=com"
password-hash {crypt}
password-crypt-salt-format "$1$%.8$"
rootpw {CRYPT}asdasdasdasdasdasd.
access to attrs=userPassword,shadowLastChange,sambaLMPassword,sambaNTPassword
by dn="cn=root,dc=oakwest,dc=com" write
by anonymous auth
by self write
by * none
access to *
by * read
index objectClass,uidNumber,gidNumber eq
index cn,sn,uid,displayName pres,sub,eq
index memberUid,mail,givenname eq,subinitial
index sambaSID,sambaPrimaryGroupSID,sambaDomainName eq
index sambaGroupType,sambaSIDList,uniqueMember eq
Sin lo esto:
access to *
by * read
Centos no podra accesar la informacion de los usuarios.Respaldando Samba
Bien seguimos con samba, necesitamos traernos el respaldo de samba, ahi como lo ven samba tambien tiene sus archivos importantes que se deben respaldar si lo van a mover a otro servidor.
No solo el folder /etc/samba se debe respaldar, el tiene aparte unos archivos con extension "tdb" que regularmente los almacena en "/var/cache", "/var/lib/samba".
Este link les puede servir si desean adentrarse mas y entender a samba y sus archivos critcos.
Samba TDB
Segun dice que los importantes y sus rutas son en Centos:
account_policy --> /var/cache/samba
group_mapping --> /var/cache/samba
ntdrivers --> /var/cache/samba
ntforms --> /var/cache/samba
ntprinters --> /var/cache/samba
passdb --> No lo uso por que mi db es LDAP
registry --> /var/cache/samba
secrets --> /etc/samba
share_info --> /var/cache/samba
winbindd_idmap --> /var/cache/samba
Vamos iniciando por respaldar el archivo secrets.tdb, nos movemos a ese folder y hacemos esto:
cd /var/lib/samba/private
tdbbackup -s bak secrets.tdb
Si observa se acaba de crear ahi mismo un archivo de nombre secrets.tdbbak
Si leemos el man de esta herramienta dice que fue hecha para trabajar hasta cuando el servicio de samba esta operando, o sea que no es necesario apagar a samba para usarla, lo cual es beneficioso para nosotros que administramos este tipo de servicios.
Ahora seguimos con el folder /var/cache/samba/, un cd hasta haya y
tdbbackup -s bak *.tdb
Aqui son mas archivos, creamos ahi dentro un folder de nombre "cache-bak" y movemos todos los archivos con extension tdbbak hacia ahi:
mv *.tdbbak cache-bak/
Ya que jalemos este folder a el nuevo servidor, eliminamos los archivos que nos utiles segun la pagina de samba para que no nos causen problemas, de todos modos cuando samba arranca los crea por ello nos son importantes.
creamos un tar de cache-bak y lo jalamos a el nuevo servidor.
tar -cf cache-bak.tar /var/cache/cache-bak
Movemos ambos archivos a el nuevo servidor con Centos 5.4, ahi cambian las cosas poquito, porque el secrets lo marca en /etc/samba/ el cache esta donde mismo /var/cache/samba.
Copeamos cada archivo a su lugar, nos olvidamos de los temporales.
A la hora de copear solo debe asegurarse que tenga la extension tdb y no los muevan tal cual estan:
mv secrets.baktdb /etc/samba/secrets.tdb
Asi pueden mover todos los demas, cada uno a su respectivo sitio.
Como vamos a mover a samba, debemos checar su archivo de configuracion a ver si no es necesario hacerle algun cambio.
Si todo esta bien, ejecutamos samba.
service smb start
El proceso normal para leventar un PDC con samba es sacar el SID del servidor y darlo de alta en varias aplicaciones como samba, smbldap-tools. Aqui cambia un poco por que el SID ya lo tenemos, si lo modificamos tendriamos que modificar cada uno de nuestros clientes por que el SID es la firma del servidor.
Asi que en este caso lo que vamos hacer es grabar el que tenemos en el servidor de produccion, como ya tenemos este dato de los archivos de configuracion se lo tenemos que dar comando para eso es:
net setlocalsid
SID for domain PDC-SRV is: S-1-5-21-4251888864-2409518005-1441902238
net setlocalsid "TODA LA NUMERACION DEL VIEJO SERVIDOR"
Reiniciamos samba, no debe marcar error.
SMBLDAP-TOOLS
Lo configuramos igual que el servidor de produccion, pero no ejecutamos el smbldap-populate por que ya tenemos la estructura del dominio. Solo verficar que este igual que el de produccion.Ya que lo tenga listo prueban un smbldap-usershow, smbldap-passwd, etc.
Autentificacion Local
Tenemos que configurar a centos para que se autentifique localmente, para ello debemos tambien modificar el archivo /etc/openldap/ldap.conf y /etc/ldap.conf
/etc/openldap/ldap.conf
HOST 127.0.0.1
BASE dc=oakwest,dc=com
URI 127.0.0.1
/etc/ldap.conf
host 127.0.0.1
base dc=oakwest,dc=com
ldap_version 3
timelimit 120
bind_timelimit 120
bind_policy soft
idle_timelimit 3600
nss_initgroups_ignoreusers root,ldap,named,avahi,haldaemon,dbus,radvd,tomcat,radiusd,news,mailman,nscd,gdm
ssl no
tls_cacertdir /etc/openldap/cacerts
pam_password md5
Ejecutan
authconfig-tui
User Information --> ldap
Authentication --> agregan LDAP
Next--> checan los parametros, si todo esta correcto le dicen ok y listo, ya podra Centos usar los parametros del ldap localmente.
/etc/openldap/ldap.conf
HOST 127.0.0.1
BASE dc=oakwest,dc=com
URI 127.0.0.1
/etc/ldap.conf
host 127.0.0.1
base dc=oakwest,dc=com
ldap_version 3
timelimit 120
bind_timelimit 120
bind_policy soft
idle_timelimit 3600
nss_initgroups_ignoreusers root,ldap,named,avahi,haldaemon,dbus,radvd,tomcat,radiusd,news,mailman,nscd,gdm
ssl no
tls_cacertdir /etc/openldap/cacerts
pam_password md5
Ejecutan
authconfig-tui
User Information --> ldap
Authentication --> agregan LDAP
Next--> checan los parametros, si todo esta correcto le dicen ok y listo, ya podra Centos usar los parametros del ldap localmente.
Probando
Bien, vamos viendo si ldap esta operando sin problemas:
2 comentarios:
Ta bueno el procedimiento, yo siempre uso algo asi para hacer backup y recovery de servers ldap, por cierto te recomiendo usar las bases de datos tipo hdb, ahora ya es el nuevo tipo por defecto en openldap 2.4, tiene muchas mejoras en rendimiento y tolerancia a fallas, para migrar haces exactamente lo mismo que hiciste para migrar, pero antes de importar datos cambia el tip de bdb a hdb, arrancas slapd e importas el ldif.
Saludos.
Ya dijo, vamos a empezar ahorita el proceso en fresco.
Pero el unico detalle es que, la version 2.4 seria cambiar muchas cosas en los otros servidores, es el otro lado de la moneda.
Pero vamos a ver como nos va, gracias monito!!!
Publicar un comentario