<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="es">
	<id>https://manuais.iessanclemente.net/index.php?action=history&amp;feed=atom&amp;title=Instalaci%C3%B3n_do_servidor_samba._Configuraci%C3%B3n_LDAP</id>
	<title>Instalación do servidor samba. Configuración LDAP - Historial de revisiones</title>
	<link rel="self" type="application/atom+xml" href="https://manuais.iessanclemente.net/index.php?action=history&amp;feed=atom&amp;title=Instalaci%C3%B3n_do_servidor_samba._Configuraci%C3%B3n_LDAP"/>
	<link rel="alternate" type="text/html" href="https://manuais.iessanclemente.net/index.php?title=Instalaci%C3%B3n_do_servidor_samba._Configuraci%C3%B3n_LDAP&amp;action=history"/>
	<updated>2026-10-28T06:35:12Z</updated>
	<subtitle>Historial de revisiones de esta página en la wiki</subtitle>
	<generator>MediaWiki 1.46.2</generator>
	<entry>
		<id>https://manuais.iessanclemente.net/index.php?title=Instalaci%C3%B3n_do_servidor_samba._Configuraci%C3%B3n_LDAP&amp;diff=62841&amp;oldid=prev</id>
		<title>Carrion: /* Instalación do servidor Samba */</title>
		<link rel="alternate" type="text/html" href="https://manuais.iessanclemente.net/index.php?title=Instalaci%C3%B3n_do_servidor_samba._Configuraci%C3%B3n_LDAP&amp;diff=62841&amp;oldid=prev"/>
		<updated>2017-10-19T22:07:02Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Instalación do servidor Samba&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Página nueva&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Introdución==&lt;br /&gt;
&lt;br /&gt;
*Neste apartado abordaremos os pasos necesarios para instalar o servidor Samba e configuralo para que use como base de datos de usuarios o servidor LDAP.&lt;br /&gt;
*Pero en primeiro lugar, teremos que engadir no LDAP o esquema de samba, que define unha serie de atributos que o servidor samba precisará almacenar para as propiedades dos usuarios do dominio Windows.&lt;br /&gt;
&lt;br /&gt;
*Imos configurar o servidor SAMBA para que use como backend o servizo LDAP.&lt;br /&gt;
[[Imagen:00Platega_U910_server_Escenario_04.1.jpg|600px]]&lt;br /&gt;
&lt;br /&gt;
== Instalación do servidor Samba ==&lt;br /&gt;
&lt;br /&gt;
*Imos instalar tres paquetes: &lt;br /&gt;
**servidor samba, &lt;br /&gt;
**a documentación &lt;br /&gt;
**utilidades para xestionar os usuarios e grupos de samba no LDAP:&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;apt-get install samba smbldap-tools winbind smbclient samba-testsuite samba-common-bin samba-common registry-tools libsmbclient libpam-winbind&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Podemos comprobar que a versión do paquete instalado é a 4.X, aínda que o usaremos en modo de compatibilidade de Samba3:&lt;br /&gt;
 root@dserver00:~# samba --version&lt;br /&gt;
 Version 4.X.X-Debian&lt;br /&gt;
&lt;br /&gt;
== Configurar o servidor LDAP para servir de base de datos de samba ==&lt;br /&gt;
&lt;br /&gt;
=== Incluír o esquema de samba no servidor LDAP ===&lt;br /&gt;
*Para incluír o esquema no servizo LDAP, precisamos realizar unha serie de pasos:&lt;br /&gt;
&lt;br /&gt;
====Copiar o ficheiro samba.schema a /etc/ldap e estudo do mesmo====&lt;br /&gt;
&lt;br /&gt;
* O paquete &amp;#039;&amp;#039;&amp;#039;samba-doc&amp;#039;&amp;#039;&amp;#039; inclúe o esquema de samba para o LDAP en formato &amp;#039;&amp;#039;schema&amp;#039;&amp;#039;,&lt;br /&gt;
* Así que, descomprimirémolo a /etc/ldap/schema e converterémolo a formato LDIF para introducir o esquema no LDAP.&lt;br /&gt;
&lt;br /&gt;
* Descomprimimos o ficheiro co esquema samba:&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;zcat /usr/share/doc/samba/examples/LDAP/samba.schema.gz &amp;gt; /etc/ldap/schema/samba.schema&lt;br /&gt;
&lt;br /&gt;
*O contido do esquema pódese ver en: [https://www.mail-archive.com/debian-bugs-dist@lists.debian.org/msg1217965/samba.schema samba.schema]&lt;br /&gt;
&lt;br /&gt;
*Imos ver os &amp;#039;&amp;#039;&amp;#039;objectClass&amp;#039;&amp;#039;&amp;#039; que define:&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;cat /etc/ldap/schema/samba.schema | grep objectclass&lt;br /&gt;
  ## 1.3.6.1.4.1.7165.2.2.x - objectclasses&lt;br /&gt;
  ## 1.3.6.1.4.1.7165.2.3.2.x - objectclasses&lt;br /&gt;
  ## 1.3.6.1.4.1.7165.4.2.x - objectclasses&lt;br /&gt;
  ##   objectclass ( 1.3.6.1.4.1.7165.2.2.XX NAME ....&lt;br /&gt;
  ##    &amp;lt;attributetype|objectclass&amp;gt; ( 1.3.6.1.4.1.7165.2.XX.XX NAME ....&lt;br /&gt;
  ## The smbPasswordEntry objectclass has been depreciated in favor of the&lt;br /&gt;
  ## sambaAccount objectclass&lt;br /&gt;
  #objectclass ( 1.3.6.1.4.1.7165.2.2.1 NAME &amp;#039;smbPasswordEntry&amp;#039; SUP top AUXILIARY&lt;br /&gt;
  #objectclass ( 1.3.6.1.4.1.7165.2.2.2 NAME &amp;#039;sambaAccount&amp;#039; SUP top STRUCTURAL&lt;br /&gt;
  #objectclass ( 1.3.6.1.4.1.7165.2.2.3 NAME &amp;#039;sambaAccount&amp;#039; SUP top AUXILIARY&lt;br /&gt;
  objectclass ( 1.3.6.1.4.1.7165.2.2.6 NAME &amp;#039;sambaSamAccount&amp;#039; SUP top AUXILIARY&lt;br /&gt;
  objectclass ( 1.3.6.1.4.1.7165.2.2.4 NAME &amp;#039;sambaGroupMapping&amp;#039; SUP top AUXILIARY&lt;br /&gt;
  objectclass ( 1.3.6.1.4.1.7165.2.2.14 NAME &amp;#039;sambaTrustPassword&amp;#039; SUP top STRUCTURAL&lt;br /&gt;
  objectclass ( 1.3.6.1.4.1.7165.2.2.15 NAME &amp;#039;sambaTrustedDomainPassword&amp;#039; SUP top STRUCTURAL&lt;br /&gt;
  objectclass ( 1.3.6.1.4.1.7165.2.2.5 NAME &amp;#039;sambaDomain&amp;#039; SUP top STRUCTURAL&lt;br /&gt;
  objectclass ( 1.3.6.1.4.1.7165.2.2.7 NAME &amp;#039;sambaUnixIdPool&amp;#039; SUP top AUXILIARY&lt;br /&gt;
  objectclass ( 1.3.6.1.4.1.7165.2.2.8 NAME &amp;#039;sambaIdmapEntry&amp;#039; SUP top AUXILIARY&lt;br /&gt;
  objectclass ( 1.3.6.1.4.1.7165.2.2.9 NAME &amp;#039;sambaSidEntry&amp;#039; SUP top STRUCTURAL&lt;br /&gt;
  objectclass ( 1.3.6.1.4.1.7165.2.2.10 NAME &amp;#039;sambaConfig&amp;#039; SUP top AUXILIARY&lt;br /&gt;
  objectclass ( 1.3.6.1.4.1.7165.2.2.11 NAME &amp;#039;sambaShare&amp;#039; SUP top STRUCTURAL&lt;br /&gt;
  objectclass ( 1.3.6.1.4.1.7165.2.2.12 NAME &amp;#039;sambaConfigOption&amp;#039; SUP top STRUCTURAL&lt;br /&gt;
  ##objectclass ( 1.3.6.1.4.1.7165.2.2.13 NAME &amp;#039;sambaPrivilege&amp;#039; SUP top AUXILIARY&lt;br /&gt;
  objectclass ( 1.3.6.1.4.1.7165.2.2.16 NAME &amp;#039;sambaTrustedDomain&amp;#039; SUP top STRUCTURAL&lt;br /&gt;
&lt;br /&gt;
* Observar que hai unhas cantas clases de obxectos comentadas, por evolución nas versións de samba. &lt;br /&gt;
* Por mencionar algunha clase de obxectos: sambaAccount, sambaDomain, sambaShare&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;Os atributos que define son: &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cat /etc/ldap/schema/samba.schema | grep attributetype&lt;br /&gt;
## 1.3.6.1.4.1.7165.2.1.x - attributetypes&lt;br /&gt;
## 1.3.6.1.4.1.7165.2.3.1.x - attributetypes&lt;br /&gt;
## 1.3.6.1.4.1.7165.4.1.x - attributetypes&lt;br /&gt;
##   attributetype ( 1.3.6.1.4.1.7165.2.1.XX NAME ....&lt;br /&gt;
##    &amp;lt;attributetype|objectclass&amp;gt; ( 1.3.6.1.4.1.7165.2.XX.XX NAME ....&lt;br /&gt;
#attributetype ( 1.3.6.1.4.1.7165.2.1.1 NAME &amp;#039;lmPassword&amp;#039;&lt;br /&gt;
#attributetype ( 1.3.6.1.4.1.7165.2.1.2 NAME &amp;#039;ntPassword&amp;#039;&lt;br /&gt;
#attributetype ( 1.3.6.1.4.1.7165.2.1.4 NAME &amp;#039;acctFlags&amp;#039;&lt;br /&gt;
#attributetype ( 1.3.6.1.4.1.7165.2.1.3 NAME &amp;#039;pwdLastSet&amp;#039;&lt;br /&gt;
#attributetype ( 1.3.6.1.4.1.7165.2.1.5 NAME &amp;#039;logonTime&amp;#039;&lt;br /&gt;
#attributetype ( 1.3.6.1.4.1.7165.2.1.6 NAME &amp;#039;logoffTime&amp;#039;&lt;br /&gt;
#attributetype ( 1.3.6.1.4.1.7165.2.1.7 NAME &amp;#039;kickoffTime&amp;#039;&lt;br /&gt;
#attributetype ( 1.3.6.1.4.1.7165.2.1.8 NAME &amp;#039;pwdCanChange&amp;#039;&lt;br /&gt;
#attributetype ( 1.3.6.1.4.1.7165.2.1.9 NAME &amp;#039;pwdMustChange&amp;#039;&lt;br /&gt;
#attributetype ( 1.3.6.1.4.1.7165.2.1.10 NAME &amp;#039;homeDrive&amp;#039;&lt;br /&gt;
#attributetype ( 1.3.6.1.4.1.7165.2.1.11 NAME &amp;#039;scriptPath&amp;#039;&lt;br /&gt;
#attributetype ( 1.3.6.1.4.1.7165.2.1.12 NAME &amp;#039;profilePath&amp;#039;&lt;br /&gt;
#attributetype ( 1.3.6.1.4.1.7165.2.1.13 NAME &amp;#039;userWorkstations&amp;#039;&lt;br /&gt;
#attributetype ( 1.3.6.1.4.1.7165.2.1.17 NAME &amp;#039;smbHome&amp;#039;&lt;br /&gt;
#attributetype ( 1.3.6.1.4.1.7165.2.1.18 NAME &amp;#039;domain&amp;#039;&lt;br /&gt;
#attributetype ( 1.3.6.1.4.1.7165.2.1.14 NAME &amp;#039;rid&amp;#039;&lt;br /&gt;
#attributetype ( 1.3.6.1.4.1.7165.2.1.15 NAME &amp;#039;primaryGroupID&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.24 NAME &amp;#039;sambaLMPassword&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.25 NAME &amp;#039;sambaNTPassword&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.26 NAME &amp;#039;sambaAcctFlags&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.27 NAME &amp;#039;sambaPwdLastSet&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.28 NAME &amp;#039;sambaPwdCanChange&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.29 NAME &amp;#039;sambaPwdMustChange&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.30 NAME &amp;#039;sambaLogonTime&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.31 NAME &amp;#039;sambaLogoffTime&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.32 NAME &amp;#039;sambaKickoffTime&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.48 NAME &amp;#039;sambaBadPasswordCount&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.49 NAME &amp;#039;sambaBadPasswordTime&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.55 NAME &amp;#039;sambaLogonHours&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.33 NAME &amp;#039;sambaHomeDrive&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.34 NAME &amp;#039;sambaLogonScript&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.35 NAME &amp;#039;sambaProfilePath&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.36 NAME &amp;#039;sambaUserWorkstations&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.37 NAME &amp;#039;sambaHomePath&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.38 NAME &amp;#039;sambaDomainName&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.47 NAME &amp;#039;sambaMungedDial&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.54 NAME &amp;#039;sambaPasswordHistory&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.20 NAME &amp;#039;sambaSID&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.23 NAME &amp;#039;sambaPrimaryGroupSID&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.51 NAME &amp;#039;sambaSIDList&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.19 NAME &amp;#039;sambaGroupType&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.21 NAME &amp;#039;sambaNextUserRid&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.22 NAME &amp;#039;sambaNextGroupRid&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.39 NAME &amp;#039;sambaNextRid&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.40 NAME &amp;#039;sambaAlgorithmicRidBase&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.41 NAME &amp;#039;sambaShareName&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.42 NAME &amp;#039;sambaOptionName&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.43 NAME &amp;#039;sambaBoolOption&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.44 NAME &amp;#039;sambaIntegerOption&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.45 NAME &amp;#039;sambaStringOption&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.46 NAME &amp;#039;sambaStringListOption&amp;#039;&lt;br /&gt;
##attributetype ( 1.3.6.1.4.1.7165.2.1.50 NAME &amp;#039;sambaPrivName&amp;#039; &lt;br /&gt;
##attributetype ( 1.3.6.1.4.1.7165.2.1.52 NAME &amp;#039;sambaPrivilegeList&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.53 NAME &amp;#039;sambaTrustFlags&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.58 NAME &amp;#039;sambaMinPwdLength&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.59 NAME &amp;#039;sambaPwdHistoryLength&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.60 NAME &amp;#039;sambaLogonToChgPwd&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.61 NAME &amp;#039;sambaMaxPwdAge&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.62 NAME &amp;#039;sambaMinPwdAge&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.63 NAME &amp;#039;sambaLockoutDuration&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.64 NAME &amp;#039;sambaLockoutObservationWindow&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.65 NAME &amp;#039;sambaLockoutThreshold&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.66 NAME &amp;#039;sambaForceLogoff&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.67 NAME &amp;#039;sambaRefuseMachinePwdChange&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.68 NAME &amp;#039;sambaClearTextPassword&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.69 NAME &amp;#039;sambaPreviousClearTextPassword&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.70 NAME &amp;#039;sambaTrustType&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.71 NAME &amp;#039;sambaTrustAttributes&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.72 NAME &amp;#039;sambaTrustDirection&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.73 NAME &amp;#039;sambaTrustPartner&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.74 NAME &amp;#039;sambaFlatName&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.75 NAME &amp;#039;sambaTrustAuthOutgoing&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.76 NAME &amp;#039;sambaTrustAuthIncoming&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.77 NAME &amp;#039;sambaSecurityIdentifier&amp;#039;&lt;br /&gt;
attributetype ( 1.3.6.1.4.1.7165.2.1.78 NAME &amp;#039;sambaTrustForestTrustInfo&amp;#039;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*Botarlle un ollo aos distintos atributos, seguro que moitos son familiares.&lt;br /&gt;
&lt;br /&gt;
====Transformar o ficheiro samba.schema en formato LDIF====&lt;br /&gt;
&lt;br /&gt;
*Imos agora &amp;#039;&amp;#039;&amp;#039;transformar samba.schema en formato LDIF&amp;#039;&amp;#039;&amp;#039; para poder engadilo no LDAP&lt;br /&gt;
&lt;br /&gt;
* Creamos o ficheiro &amp;#039;&amp;#039;&amp;#039;schema_convert.conf&amp;#039;&amp;#039;&amp;#039; co seguinte contido:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
include /etc/ldap/schema/core.schema&lt;br /&gt;
include /etc/ldap/schema/cosine.schema&lt;br /&gt;
include /etc/ldap/schema/inetorgperson.schema&lt;br /&gt;
include /etc/ldap/schema/nis.schema&lt;br /&gt;
include /etc/ldap/schema/samba.schema&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Creamos un directorio temporal para almacenar o ficheiros LDIF:&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;mkdir /tmp/ldif&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Usamos o comando &amp;#039;&amp;#039;&amp;#039;slaptest&amp;#039;&amp;#039;&amp;#039; para converter o ficheiro de esquema a LDIF:&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;slaptest -f schema_convert.conf -F /tmp/ldif&lt;br /&gt;
&lt;br /&gt;
*Podemos ver no directorio temporal todo o que se creou, e entre outros, o ficheiro &amp;#039;&amp;#039;&amp;#039;cn={4}samba.ldif&amp;#039;&amp;#039;&amp;#039; que é o que cargaremos no LDAP.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
tree /tmp/ldif&lt;br /&gt;
/tmp/ldif&lt;br /&gt;
├── cn=config&lt;br /&gt;
│   ├── cn=schema&lt;br /&gt;
│   │   ├── cn={0}core.ldif&lt;br /&gt;
│   │   ├── cn={1}cosine.ldif&lt;br /&gt;
│   │   ├── cn={2}inetorgperson.ldif&lt;br /&gt;
│   │   ├── cn={3}nis.ldif&lt;br /&gt;
│   │   └── cn={4}samba.ldif&lt;br /&gt;
│   ├── cn=schema.ldif&lt;br /&gt;
│   ├── olcDatabase={0}config.ldif&lt;br /&gt;
│   └── olcDatabase={-1}frontend.ldif&lt;br /&gt;
└── cn=config.ldif&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Cargar o ficheiro LDIF no ldap====&lt;br /&gt;
*Temos dúas opcións:&lt;br /&gt;
**Usando o comando &amp;#039;&amp;#039;&amp;#039;ldapadd&amp;#039;&amp;#039;&amp;#039;, precisamos facer uns cambios no ficheiro, pero non hai que reiniciar o servizo.&lt;br /&gt;
**Copiando o ficheiro ldif a &amp;#039;&amp;#039;&amp;#039;/etc/ldap/slapd.d/cn=config/cn=schema&amp;#039;&amp;#039;&amp;#039;, pero hai que reiniciar o servizo ldap.&lt;br /&gt;
* En calquera caso imos facer unha copia do ficheiro ldif a &amp;#039;&amp;#039;/etc/ldap/schema&amp;#039;&amp;#039; que é onde tiñamos os outros esquemas e os seus ficheiros ldif asociados, e así témolos todos xuntos.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ls /etc/ldap/schema/&lt;br /&gt;
collective.ldif    duaconf.ldif		 misc.ldif	  ppolicy.ldif&lt;br /&gt;
collective.schema  duaconf.schema	 misc.schema	  ppolicy.schema&lt;br /&gt;
corba.ldif	   dyngroup.ldif	 nis.ldif	  README&lt;br /&gt;
corba.schema	   dyngroup.schema	 nis.schema	  samba.schema&lt;br /&gt;
core.ldif	   inetorgperson.ldif	 openldap.ldif	  &lt;br /&gt;
core.schema	   inetorgperson.schema  openldap.schema&lt;br /&gt;
cosine.ldif	   java.ldif		 pmi.ldif&lt;br /&gt;
cosine.schema	   java.schema		 pmi.schema&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Copiamos o ficheiro ao directorio anterior&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;cp &amp;quot;/tmp/ldif/cn=config/cn=schema/cn={4}samba.ldif&amp;quot; &amp;quot;/etc/ldap/schema/samba.ldif&amp;quot;&lt;br /&gt;
&lt;br /&gt;
*O ficheiro copiado (/etc/ldap/schema/samba.ldif) precisa que realicemos nel as seguintes modificacións, cambiando estes dous atributos:&lt;br /&gt;
 dn: cn=samba,cn=schema,cn=config&lt;br /&gt;
 ...&lt;br /&gt;
 cn: samba&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* e borrando as seguintes liñas que se atopan ao final do ficheiro:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
structuralObjectClass: olcSchemaConfig&lt;br /&gt;
entryUUID: b53b75ca-083f-102d-9fff-2f64fd123c95&lt;br /&gt;
creatorsName: cn=config&lt;br /&gt;
createTimestamp: 20080827045234Z&lt;br /&gt;
entryCSN: 20080827045234.341425Z#000000#000#000000&lt;br /&gt;
modifiersName: cn=config&lt;br /&gt;
modifyTimestamp: 20080827045234Z&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Antes de cargar o LDIF no servizo LDAP imos ver que esquemas están cargados:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
tree /etc/ldap&lt;br /&gt;
/etc/ldap&lt;br /&gt;
├── ldap.conf&lt;br /&gt;
├── sasl2&lt;br /&gt;
├── schema&lt;br /&gt;
│   ├── collective.ldif&lt;br /&gt;
...&lt;br /&gt;
│   ├── core.ldif&lt;br /&gt;
│   ├── core.schema&lt;br /&gt;
│   ├── cosine.ldif&lt;br /&gt;
│   ├── cosine.schema&lt;br /&gt;
...&lt;br /&gt;
│   ├── inetorgperson.ldif&lt;br /&gt;
│   ├── inetorgperson.schema&lt;br /&gt;
...&lt;br /&gt;
│   ├── nis.ldif&lt;br /&gt;
│   ├── nis.schema&lt;br /&gt;
...&lt;br /&gt;
│   ├── samba.ldif&lt;br /&gt;
│   └── samba.schema&lt;br /&gt;
└── slapd.d&lt;br /&gt;
    ├── cn=config&lt;br /&gt;
    │   ├── cn=module{0}.ldif&lt;br /&gt;
    │   ├── cn=schema&lt;br /&gt;
    │   │   ├── cn={0}core.ldif&lt;br /&gt;
    │   │   ├── cn={1}cosine.ldif&lt;br /&gt;
    │   │   ├── cn={2}nis.ldif&lt;br /&gt;
    │   │   └── cn={3}inetorgperson.ldif&lt;br /&gt;
    │   ├── cn=schema.ldif&lt;br /&gt;
    │   ├── olcBackend={0}mdb.ldif&lt;br /&gt;
    │   ├── olcDatabase={0}config.ldif&lt;br /&gt;
    │   ├── olcDatabase={-1}frontend.ldif&lt;br /&gt;
    │   └── olcDatabase={1}mdb.ldif&lt;br /&gt;
    └── cn=config.ldif&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Vemos que en &amp;#039;&amp;#039;&amp;#039;/etc/ldap/slap.d/cn=config/cn=schema&amp;#039;&amp;#039;&amp;#039; están os esquemas que actualmente están cargados no ldap.&lt;br /&gt;
&lt;br /&gt;
*Tamén o podemos ver consultado o directorio ldap.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ldapsearch -LLLQY EXTERNAL -H ldapi:/// -b cn=schema,cn=config &amp;quot;(objectClass=olcSchemaConfig)&amp;quot; dn&lt;br /&gt;
dn: cn=schema,cn=config&lt;br /&gt;
&lt;br /&gt;
dn: cn={0}core,cn=schema,cn=config&lt;br /&gt;
&lt;br /&gt;
dn: cn={1}cosine,cn=schema,cn=config&lt;br /&gt;
&lt;br /&gt;
dn: cn={2}nis,cn=schema,cn=config&lt;br /&gt;
&lt;br /&gt;
dn: cn={3}inetorgperson,cn=schema,cn=config&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*&amp;#039;&amp;#039;&amp;#039;Opción A: cargar o esquema sen reiniciar o servizo: ldapadd&lt;br /&gt;
*Cargamos o ficheiro samba.ldif modificado anteriormente&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/ldap/schema/samba.ldif&lt;br /&gt;
   &amp;#039;&amp;#039;adding new entry &amp;quot;cn=samba,cn=schema,cn=config&amp;quot;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Comprobación do realizado.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ldapsearch -LLLQY EXTERNAL -H ldapi:/// -b cn=schema,cn=config &amp;quot;(objectClass=olcSchemaConfig)&amp;quot; dn&lt;br /&gt;
&lt;br /&gt;
dn: cn=schema,cn=config&lt;br /&gt;
&lt;br /&gt;
dn: cn={0}core,cn=schema,cn=config&lt;br /&gt;
&lt;br /&gt;
dn: cn={1}cosine,cn=schema,cn=config&lt;br /&gt;
&lt;br /&gt;
dn: cn={2}nis,cn=schema,cn=config&lt;br /&gt;
&lt;br /&gt;
dn: cn={3}inetorgperson,cn=schema,cn=config&lt;br /&gt;
&lt;br /&gt;
dn: cn={4}samba,cn=schema,cn=config&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Vemos que en &amp;#039;&amp;#039;&amp;#039;/etc/ldap/slap.d/cn=config/cn=schema&amp;#039;&amp;#039;&amp;#039; está cargado o novo esquema.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
tree /etc/ldap&lt;br /&gt;
/etc/ldap&lt;br /&gt;
├── ldap.conf&lt;br /&gt;
├── sasl2&lt;br /&gt;
├── schema&lt;br /&gt;
│   ├── collective.ldif&lt;br /&gt;
...&lt;br /&gt;
│   ├── core.ldif&lt;br /&gt;
│   ├── core.schema&lt;br /&gt;
│   ├── cosine.ldif&lt;br /&gt;
│   ├── cosine.schema&lt;br /&gt;
...&lt;br /&gt;
│   ├── inetorgperson.ldif&lt;br /&gt;
│   ├── inetorgperson.schema&lt;br /&gt;
...&lt;br /&gt;
│   ├── nis.ldif&lt;br /&gt;
│   ├── nis.schema&lt;br /&gt;
...&lt;br /&gt;
│   ├── samba.ldif&lt;br /&gt;
│   └── samba.schema&lt;br /&gt;
└── slapd.d&lt;br /&gt;
    ├── cn=config&lt;br /&gt;
    │   ├── cn=module{0}.ldif&lt;br /&gt;
    │   ├── cn=schema&lt;br /&gt;
    │   │   ├── cn={0}core.ldif&lt;br /&gt;
    │   │   ├── cn={1}cosine.ldif&lt;br /&gt;
    │   │   ├── cn={2}nis.ldif&lt;br /&gt;
    │   │   ├── cn={3}inetorgperson.ldif&lt;br /&gt;
    │   │   └── cn={4}samba.ldif&lt;br /&gt;
    │   ├── cn=schema.ldif&lt;br /&gt;
    │   ├── olcBackend={0}mdb.ldif&lt;br /&gt;
    │   ├── olcDatabase={0}config.ldif&lt;br /&gt;
    │   ├── olcDatabase={-1}frontend.ldif&lt;br /&gt;
    │   └── olcDatabase={1}mdb.ldif&lt;br /&gt;
    └── cn=config.ldif&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;OPCIÓN B: reiniciando o servidor pero sen modificar o ficheiro:&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;cp &amp;quot;/tmp/ldif/cn=config/cn=schema/cn={4}samba.ldif&amp;quot; &amp;quot;/etc/ldap/slapd.d/cn=config/cn=schema&amp;quot;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;chown openldap: &amp;#039;/etc/ldap/slapd.d/cn=config/cn=schema/cn={4}samba.ldif&amp;#039;&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;service slapd restart&lt;br /&gt;
&lt;br /&gt;
=== Engadir os índices necesarios para as buscas de samba ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Neste caso imos engadir un conxunto de campos bastante grande que van ser índices no LDAP, así que os introduciremos nun ficheiro. Introducimos o seguinte contido no ficheiro &amp;#039;&amp;#039;&amp;#039;samba_indices_1.ldif&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
dn: olcDatabase={1}mdb,cn=config&lt;br /&gt;
changetype: modify&lt;br /&gt;
add: olcDbIndex&lt;br /&gt;
olcDbIndex: loginShell eq&lt;br /&gt;
olcDbIndex: uniqueMember eq,pres&lt;br /&gt;
olcDbIndex: sambaSID eq&lt;br /&gt;
olcDbIndex: sambaPrimaryGroupSID eq&lt;br /&gt;
olcDbIndex: sambaGroupType eq&lt;br /&gt;
olcDbIndex: sambaSIDList eq&lt;br /&gt;
olcDbIndex: sambaDomainName eq&lt;br /&gt;
olcDbIndex: default sub&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* E cargamos os índices no LDAP con &amp;#039;&amp;#039;&amp;#039;ldapadd&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;ldapadd -Y EXTERNAL -H ldapi:/// -f samba_indices_1.ldif&lt;br /&gt;
  &amp;#039;&amp;#039;modifying entry &amp;quot;olcDatabase={1}mdb,cn=config&amp;quot;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Reemplazamos índices que xa existen. Creamos o ficheiro: samba_indices_2.ldif&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
dn: olcDatabase={1}mdb,cn=config&lt;br /&gt;
changetype: modify&lt;br /&gt;
replace: olcDbIndex&lt;br /&gt;
olcDbIndex: uidNumber eq&lt;br /&gt;
olcDbIndex: gidNumber eq&lt;br /&gt;
olcDbIndex: memberUid eq,pres,sub&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Aplicamos os cambios no LDAP con &amp;#039;&amp;#039;&amp;#039;ldapadd&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
 &amp;#039;&amp;#039;&amp;#039;ldapadd -Y EXTERNAL -H ldapi:/// -f samba_indices_2.ldif&lt;br /&gt;
  &amp;#039;&amp;#039;modifying entry &amp;quot;olcDatabase={1}mdb,cn=config&amp;quot;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
-- [[Usuario:antonio| Antonio de Andrés Lema]] e [[Usuario:Carrion| Carlos Carrión Álvarez]]&lt;/div&gt;</summary>
		<author><name>Carrion</name></author>
	</entry>
</feed>