Scribe AD » Historique » Version 16
Benjamin Bohard, 10/01/2018 15:35
| 1 | 1 | Benjamin Bohard | h1. Scribe AD |
|---|---|---|---|
| 2 | 1 | Benjamin Bohard | |
| 3 | 1 | Benjamin Bohard | h2. Actions |
| 4 | 1 | Benjamin Bohard | |
| 5 | 2 | Benjamin Bohard | h3. Migration du Scribe NT vers Scribe AD |
| 6 | 1 | Benjamin Bohard | |
| 7 | 1 | Benjamin Bohard | h4. Procédure classicupgrade |
| 8 | 3 | Benjamin Bohard | |
| 9 | 3 | Benjamin Bohard | La procédure classicupgrade nécessite des interventions complémentaires (pouvant être scriptées). |
| 10 | 3 | Benjamin Bohard | |
| 11 | 3 | Benjamin Bohard | En partant d’un Scribe fonctionnel instancié avec import de comptes |
| 12 | 3 | Benjamin Bohard | |
| 13 | 3 | Benjamin Bohard | h5. stopper et désactiver les services de samba en mode NT (smbd, nmbd, winbind), |
| 14 | 10 | Benjamin Bohard | |
| 15 | 3 | Benjamin Bohard | <pre> |
| 16 | 3 | Benjamin Bohard | systemctl stop nmbd |
| 17 | 3 | Benjamin Bohard | systemctl stop smbd |
| 18 | 3 | Benjamin Bohard | systemctl stop winbind |
| 19 | 3 | Benjamin Bohard | systemctl disable nmbd |
| 20 | 3 | Benjamin Bohard | systemctl disable smbd |
| 21 | 3 | Benjamin Bohard | systemctl disable winbind |
| 22 | 3 | Benjamin Bohard | </pre> |
| 23 | 3 | Benjamin Bohard | |
| 24 | 3 | Benjamin Bohard | h5. installer les outils nécessaires : |
| 25 | 10 | Benjamin Bohard | |
| 26 | 3 | Benjamin Bohard | <pre> |
| 27 | 11 | Benjamin Bohard | apt-get install krb5-user ldb-tools |
| 28 | 3 | Benjamin Bohard | </pre> |
| 29 | 3 | Benjamin Bohard | |
| 30 | 3 | Benjamin Bohard | h5. patcher nsswitch.conf.default, ldap.conf |
| 31 | 3 | Benjamin Bohard | |
| 32 | 3 | Benjamin Bohard | <pre> |
| 33 | 3 | Benjamin Bohard | --- distrib/nsswitch.conf.default 2017-05-15 11:18:44.000000000 +0200 |
| 34 | 3 | Benjamin Bohard | +++ modif/nsswitch.conf.default 2018-01-09 15:12:53.260292570 +0100 |
| 35 | 3 | Benjamin Bohard | @@ -7,8 +7,8 @@ |
| 36 | 3 | Benjamin Bohard | ######################################################## |
| 37 | 3 | Benjamin Bohard | # /etc/nsswitch.conf |
| 38 | 3 | Benjamin Bohard | |
| 39 | 3 | Benjamin Bohard | -%set %%active_winbind = %%getVar('activer_winbind', 'non') == 'oui' |
| 40 | 3 | Benjamin Bohard | -%set %%active_ldap = %%getVar('ldap_nss', 'non') == 'oui' |
| 41 | 3 | Benjamin Bohard | +%set %%active_winbind = True |
| 42 | 3 | Benjamin Bohard | +%set %%active_ldap = False |
| 43 | 3 | Benjamin Bohard | |
| 44 | 3 | Benjamin Bohard | passwd: compat %slurp |
| 45 | 3 | Benjamin Bohard | %if %%active_ldap |
| 46 | 3 | Benjamin Bohard | </pre> |
| 47 | 3 | Benjamin Bohard | |
| 48 | 12 | Benjamin Bohard | <pre> |
| 49 | 12 | Benjamin Bohard | --- distrib/ldap.conf 2017-04-05 12:25:55.000000000 +0200 |
| 50 | 12 | Benjamin Bohard | +++ modif/ldap.conf 2018-01-10 14:39:19.008000000 +0100 |
| 51 | 12 | Benjamin Bohard | @@ -13,7 +13,7 @@ |
| 52 | 12 | Benjamin Bohard | |
| 53 | 12 | Benjamin Bohard | %if %%active_ldap == 'oui' |
| 54 | 12 | Benjamin Bohard | host %%adresse_ip_ldap |
| 55 | 12 | Benjamin Bohard | -base %%ldap_base_dn |
| 56 | 12 | Benjamin Bohard | +base DC=etb1,DC=lan |
| 57 | 12 | Benjamin Bohard | port %%ldap_port |
| 58 | 12 | Benjamin Bohard | timelimit 10 |
| 59 | 12 | Benjamin Bohard | bind_time_limit 10 |
| 60 | 12 | Benjamin Bohard | @@ -23,8 +23,8 @@ |
| 61 | 12 | Benjamin Bohard | pam_login_attribute uid |
| 62 | 12 | Benjamin Bohard | pam_password md5 |
| 63 | 12 | Benjamin Bohard | nss_map_attribute gecos displayName |
| 64 | 12 | Benjamin Bohard | -nss_base_passwd %%ldap_base_dn?sub |
| 65 | 12 | Benjamin Bohard | -nss_base_group %%ldap_base_dn?sub |
| 66 | 12 | Benjamin Bohard | +nss_base_passwd DC=etb1,DC=lan?sub |
| 67 | 12 | Benjamin Bohard | +nss_base_group DC=etb1,DC=lan?sub |
| 68 | 12 | Benjamin Bohard | #fixe #1809 |
| 69 | 12 | Benjamin Bohard | nss_initgroups_ignoreusers root |
| 70 | 12 | Benjamin Bohard | %if %%ldap_tls == 'oui' |
| 71 | 12 | Benjamin Bohard | </pre> |
| 72 | 12 | Benjamin Bohard | |
| 73 | 3 | Benjamin Bohard | h5. déplacer la configuration samba actuelle dans un répertoire de travail |
| 74 | 3 | Benjamin Bohard | |
| 75 | 3 | Benjamin Bohard | <pre> |
| 76 | 3 | Benjamin Bohard | mv /etc/samba/ /etc/samba.PDC/ |
| 77 | 3 | Benjamin Bohard | </pre> |
| 78 | 3 | Benjamin Bohard | |
| 79 | 3 | Benjamin Bohard | h5. renommer le fichier de configuration smb.conf de ce répertoire de travail, |
| 80 | 3 | Benjamin Bohard | |
| 81 | 3 | Benjamin Bohard | <pre> |
| 82 | 3 | Benjamin Bohard | mv /etc/samba.PDC/smb.conf /etc/samba.PDC/smb.PDC.conf |
| 83 | 3 | Benjamin Bohard | </pre> |
| 84 | 3 | Benjamin Bohard | |
| 85 | 3 | Benjamin Bohard | h5. copier les bases de données de samba dans un sous-répertoire du répertoire de travail |
| 86 | 3 | Benjamin Bohard | |
| 87 | 3 | Benjamin Bohard | <pre> |
| 88 | 14 | Benjamin Bohard | mkdir /etc/samba.PDC/dbdir/ |
| 89 | 13 | Benjamin Bohard | cp -p /var/lib/samba/private/secrets.tdb /etc/samba.PDC/dbdir/ |
| 90 | 13 | Benjamin Bohard | cp -p /var/lib/samba/private/schannel_store.tdb /etc/samba.PDC/dbdir/ |
| 91 | 13 | Benjamin Bohard | cp -p /var/lib/samba/private/passdb.tdb /etc/samba.PDC/dbdir/ |
| 92 | 15 | Benjamin Bohard | #cp -p /var/lib/samba/var/lock/gencache_notrans.tdb /etc/samba.PDC/dbdir/ |
| 93 | 15 | Benjamin Bohard | cp -p /var/lib/samba/group_mapping.tdb /etc/samba.PDC/dbdir/ |
| 94 | 15 | Benjamin Bohard | cp -p /var/lib/samba/account_policy.tdb /etc/samba.PDC/dbdir/ |
| 95 | 1 | Benjamin Bohard | </pre> |
| 96 | 3 | Benjamin Bohard | |
| 97 | 8 | Benjamin Bohard | h5. lancer la commande samba-tool domain classicupgrade |
| 98 | 8 | Benjamin Bohard | |
| 99 | 1 | Benjamin Bohard | <pre> |
| 100 | 8 | Benjamin Bohard | realm=$(CreoleGet nom_domaine_local) |
| 101 | 8 | Benjamin Bohard | samba-tool domain classicupgrade --dbdir=/etc/samba.PDC/dbdir --use-xattrs=yes --realm=${realm^^} --dns-backend=SAMBA_INTERNAL /etc/samba.PDC/smb.PDC.conf |
| 102 | 8 | Benjamin Bohard | </pre> |
| 103 | 8 | Benjamin Bohard | |
| 104 | 8 | Benjamin Bohard | h5. créer le patch smb.conf à partir du nouveau fichier créer par samba-tool |
| 105 | 8 | Benjamin Bohard | |
| 106 | 8 | Benjamin Bohard | h5. stopper et désactiver le service slapd |
| 107 | 8 | Benjamin Bohard | |
| 108 | 8 | Benjamin Bohard | <pre> |
| 109 | 8 | Benjamin Bohard | systemctl stop slapd |
| 110 | 8 | Benjamin Bohard | systemctl disable slapd |
| 111 | 8 | Benjamin Bohard | </pre> |
| 112 | 8 | Benjamin Bohard | |
| 113 | 8 | Benjamin Bohard | h5. créer le compte reader |
| 114 | 8 | Benjamin Bohard | |
| 115 | 8 | Benjamin Bohard | <pre> |
| 116 | 8 | Benjamin Bohard | cat /root/.reader |
| 117 | 8 | Benjamin Bohard | samba-tool user create reader |
| 118 | 8 | Benjamin Bohard | </pre> |
| 119 | 8 | Benjamin Bohard | |
| 120 | 8 | Benjamin Bohard | h5. modifier les variables |
| 121 | 8 | Benjamin Bohard | |
| 122 | 8 | Benjamin Bohard | Le base DN est maintenant du type DC=etb1,DC=lan. |
| 123 | 8 | Benjamin Bohard | |
| 124 | 8 | Benjamin Bohard | Le compte reader est maintenant du type CN=reader,CN=Users,DC=etb1,DC=lan. |
| 125 | 8 | Benjamin Bohard | |
| 126 | 8 | Benjamin Bohard | h5. modifier les scripts de posttemplate 00-annuaire, 02-annuaire et 04-fichier |
| 127 | 8 | Benjamin Bohard | |
| 128 | 8 | Benjamin Bohard | exit 0 ajouté en tête des fichiers pour ne pas faire les traitements. |
| 129 | 8 | Benjamin Bohard | |
| 130 | 8 | Benjamin Bohard | h5. activer et démarrer le service samba-ad-dc |
| 131 | 8 | Benjamin Bohard | |
| 132 | 8 | Benjamin Bohard | <pre> |
| 133 | 8 | Benjamin Bohard | systemctl enable samba-ad-dc |
| 134 | 8 | Benjamin Bohard | systemctl start samba-ad-dc |
| 135 | 8 | Benjamin Bohard | </pre> |
| 136 | 8 | Benjamin Bohard | |
| 137 | 8 | Benjamin Bohard | h5. reconfigure |
| 138 | 8 | Benjamin Bohard | |
| 139 | 8 | Benjamin Bohard | h5. stopper le service nmbd |
| 140 | 8 | Benjamin Bohard | |
| 141 | 8 | Benjamin Bohard | Le service nmbd est démarré automatiquement par creole |
| 142 | 8 | Benjamin Bohard | <pre> |
| 143 | 8 | Benjamin Bohard | systemctl stop nmbd |
| 144 | 3 | Benjamin Bohard | </pre> |
| 145 | 1 | Benjamin Bohard | |
| 146 | 10 | Benjamin Bohard | h4. Points à traiter |
| 147 | 10 | Benjamin Bohard | |
| 148 | 10 | Benjamin Bohard | h5. service nmbd |
| 149 | 10 | Benjamin Bohard | |
| 150 | 10 | Benjamin Bohard | Le service nmbd est géré par creole et sa désactivation manuelle n’est pas suffisante |
| 151 | 10 | Benjamin Bohard | |
| 152 | 10 | Benjamin Bohard | h5. variables creole |
| 153 | 10 | Benjamin Bohard | |
| 154 | 10 | Benjamin Bohard | Les variables concernant l’annuaire sont verrouillées (même après import du fichier de configuration : valeurs par défaut). |
| 155 | 10 | Benjamin Bohard | |
| 156 | 10 | Benjamin Bohard | Il n’est pas possible de modifier, hors des patchs, les valeurs pour le base DN, le protocole (ldaps), etc. |
| 157 | 10 | Benjamin Bohard | |
| 158 | 10 | Benjamin Bohard | h5. dns |
| 159 | 10 | Benjamin Bohard | |
| 160 | 10 | Benjamin Bohard | Un problème subsiste pour le dns, peut-être lié à un problème kerberos |
| 161 | 10 | Benjamin Bohard | |
| 162 | 10 | Benjamin Bohard | <pre> |
| 163 | 10 | Benjamin Bohard | janv. 10 11:49:15 scribe samba[15840]: [2018/01/10 11:49:15.837313, 0] ../lib/util/util_runcmd.c:328(samba_runcmd_io_handler) |
| 164 | 10 | Benjamin Bohard | janv. 10 11:49:15 scribe samba[15840]: /usr/sbin/samba_dnsupdate: Traceback (most recent call last): |
| 165 | 10 | Benjamin Bohard | janv. 10 11:49:15 scribe samba[15840]: [2018/01/10 11:49:15.837535, 0] ../lib/util/util_runcmd.c:328(samba_runcmd_io_handler) |
| 166 | 10 | Benjamin Bohard | janv. 10 11:49:15 scribe samba[15840]: /usr/sbin/samba_dnsupdate: File "/usr/sbin/samba_dnsupdate", line 621, in <module> |
| 167 | 10 | Benjamin Bohard | janv. 10 11:49:15 scribe samba[15840]: [2018/01/10 11:49:15.837579, 0] ../lib/util/util_runcmd.c:328(samba_runcmd_io_handler) |
| 168 | 10 | Benjamin Bohard | janv. 10 11:49:15 scribe samba[15840]: /usr/sbin/samba_dnsupdate: get_credentials(lp) |
| 169 | 10 | Benjamin Bohard | janv. 10 11:49:15 scribe samba[15840]: [2018/01/10 11:49:15.837630, 0] ../lib/util/util_runcmd.c:328(samba_runcmd_io_handler) |
| 170 | 10 | Benjamin Bohard | janv. 10 11:49:15 scribe samba[15840]: /usr/sbin/samba_dnsupdate: File "/usr/sbin/samba_dnsupdate", line 125, in get_credentials |
| 171 | 10 | Benjamin Bohard | janv. 10 11:49:15 scribe samba[15840]: [2018/01/10 11:49:15.837691, 0] ../lib/util/util_runcmd.c:328(samba_runcmd_io_handler) |
| 172 | 10 | Benjamin Bohard | janv. 10 11:49:15 scribe samba[15840]: /usr/sbin/samba_dnsupdate: raise e |
| 173 | 10 | Benjamin Bohard | janv. 10 11:49:15 scribe samba[15840]: [2018/01/10 11:49:15.837737, 0] ../lib/util/util_runcmd.c:328(samba_runcmd_io_handler) |
| 174 | 10 | Benjamin Bohard | janv. 10 11:49:15 scribe samba[15840]: /usr/sbin/samba_dnsupdate: RuntimeError: kinit for SCRIBE$@ETB1.LAN failed (Cannot contact any KDC f |
| 175 | 10 | Benjamin Bohard | janv. 10 11:49:15 scribe samba[15840]: [2018/01/10 11:49:15.837778, 0] ../lib/util/util_runcmd.c:328(samba_runcmd_io_handler) |
| 176 | 10 | Benjamin Bohard | janv. 10 11:49:15 scribe samba[15840]: /usr/sbin/samba_dnsupdate: |
| 177 | 10 | Benjamin Bohard | janv. 10 11:49:15 scribe samba[15840]: [2018/01/10 11:49:15.853639, 0] ../source4/dsdb/dns/dns_update.c:294(dnsupdate_nameupdate_done) |
| 178 | 10 | Benjamin Bohard | janv. 10 11:49:15 scribe samba[15840]: ../source4/dsdb/dns/dns_update.c:294: Failed DNS update - NT_STATUS_ACCESS_DENIED |
| 179 | 10 | Benjamin Bohard | </pre> |
| 180 | 10 | Benjamin Bohard | |
| 181 | 10 | Benjamin Bohard | Un essai de modification de la configuration de kerberos (krb5.conf) a été tenté mais les résultats sont incertains. |
| 182 | 10 | Benjamin Bohard | |
| 183 | 16 | Benjamin Bohard | Il est peut-être nécessaire de renseigner un DNS forwarder dans la configuration de samba. |
| 184 | 16 | Benjamin Bohard | |
| 185 | 10 | Benjamin Bohard | <pre> |
| 186 | 10 | Benjamin Bohard | [libdefaults] |
| 187 | 10 | Benjamin Bohard | default_realm = ETB1.LAN |
| 188 | 10 | Benjamin Bohard | dns_lookup_kdc = true |
| 189 | 10 | Benjamin Bohard | dns_lookup_realm = true |
| 190 | 10 | Benjamin Bohard | </pre> |
| 191 | 4 | Benjamin Bohard | |
| 192 | 9 | Philippe Caseiro | h2. Pistes de travail pour la migration de l'annuaire |
| 193 | 9 | Philippe Caseiro | |
| 194 | 9 | Philippe Caseiro | Proposition de méthode pour arriver a un Scribe AD en utilisant malgré-tout une |
| 195 | 9 | Philippe Caseiro | partie du travail déjà fait par l'équipe samba dans sa procédure |
| 196 | 9 | Philippe Caseiro | classicupgrade. |
| 197 | 9 | Philippe Caseiro | |
| 198 | 9 | Philippe Caseiro | La procédure proprement dite n'est pas suffisante pour nous et l'utilisation |
| 199 | 9 | Philippe Caseiro | brute de l'outil samba non plus, cet outil réalise le provisionning AD et les |
| 200 | 9 | Philippe Caseiro | initialisations des fichiers db, hors pour bien faire nous avons besoin que samba ai |
| 201 | 9 | Philippe Caseiro | connaissance des schemas complémentaires du scribe (radius, eole, ent ...). |
| 202 | 9 | Philippe Caseiro | avant la migration des comptes. Pour lui ajouter les dit schémas il faut que |
| 203 | 9 | Philippe Caseiro | les fichiers db soient initialisées, donc l'utilisation de l'outil est |
| 204 | 9 | Philippe Caseiro | impossible. Par chance il utilise la lib python samaba, ce qui nous ouvre des |
| 205 | 9 | Philippe Caseiro | possibilités. Sans oublié que l'outil samba crée la configuration pour samba |
| 206 | 9 | Philippe Caseiro | a partir de l'ancienne et cette fonctionnalités ne nous ai pas vraiment utile. |
| 207 | 9 | Philippe Caseiro | |
| 208 | 9 | Philippe Caseiro | Donc l'idée est de recréer une procédure de migration complête pour nos |
| 209 | 9 | Philippe Caseiro | besoins. |
| 210 | 9 | Philippe Caseiro | |
| 211 | 9 | Philippe Caseiro | Il faut donc refaire le provisionning de l'AD ce qui est fait dans Seth donc |
| 212 | 9 | Philippe Caseiro | nous pouvons utiliser cette base de travail |
| 213 | 9 | Philippe Caseiro | |
| 214 | 9 | Philippe Caseiro | Migrer les shemas complémentaires actuels au format lisible par samba4. |
| 215 | 9 | Philippe Caseiro | |
| 216 | 9 | Philippe Caseiro | Créer un script de migration des comptes qui ajoute les schemas, utilise la |
| 217 | 9 | Philippe Caseiro | lib python samba4 pour migrer les comptes et ensuite mettre à jour les comptes |
| 218 | 9 | Philippe Caseiro | avec les attributs supplémentaires de l'ancien annuaire. |