Projet

Général

Profil

Scribe AD » Historique » Version 9

Philippe Caseiro, 10/01/2018 11:46

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 3 Benjamin Bohard
<pre>
15 3 Benjamin Bohard
systemctl stop nmbd
16 3 Benjamin Bohard
systemctl stop smbd
17 3 Benjamin Bohard
systemctl stop winbind
18 3 Benjamin Bohard
systemctl disable nmbd
19 3 Benjamin Bohard
systemctl disable smbd
20 3 Benjamin Bohard
systemctl disable winbind
21 3 Benjamin Bohard
</pre>
22 3 Benjamin Bohard
23 3 Benjamin Bohard
h5. installer les outils nécessaires :
24 3 Benjamin Bohard
<pre>
25 3 Benjamin Bohard
apt-get install krb5-user lbd-tools
26 3 Benjamin Bohard
</pre>
27 3 Benjamin Bohard
28 3 Benjamin Bohard
h5. patcher nsswitch.conf.default, ldap.conf
29 3 Benjamin Bohard
30 3 Benjamin Bohard
<pre>
31 3 Benjamin Bohard
--- distrib/nsswitch.conf.default	2017-05-15 11:18:44.000000000 +0200
32 3 Benjamin Bohard
+++ modif/nsswitch.conf.default	2018-01-09 15:12:53.260292570 +0100
33 3 Benjamin Bohard
@@ -7,8 +7,8 @@
34 3 Benjamin Bohard
 ########################################################
35 3 Benjamin Bohard
 # /etc/nsswitch.conf
36 3 Benjamin Bohard
 
37 3 Benjamin Bohard
-%set %%active_winbind = %%getVar('activer_winbind', 'non') == 'oui'
38 3 Benjamin Bohard
-%set %%active_ldap =  %%getVar('ldap_nss', 'non') == 'oui'
39 3 Benjamin Bohard
+%set %%active_winbind = True
40 3 Benjamin Bohard
+%set %%active_ldap =  False
41 3 Benjamin Bohard
 
42 3 Benjamin Bohard
 passwd:         compat %slurp
43 3 Benjamin Bohard
 %if %%active_ldap
44 3 Benjamin Bohard
</pre>
45 3 Benjamin Bohard
46 3 Benjamin Bohard
h5. déplacer la configuration samba actuelle dans un répertoire de travail
47 3 Benjamin Bohard
48 3 Benjamin Bohard
<pre>
49 3 Benjamin Bohard
mv /etc/samba/ /etc/samba.PDC/
50 3 Benjamin Bohard
</pre>
51 3 Benjamin Bohard
52 3 Benjamin Bohard
h5. renommer le fichier de configuration smb.conf de ce répertoire de travail,
53 3 Benjamin Bohard
54 3 Benjamin Bohard
<pre>
55 3 Benjamin Bohard
mv /etc/samba.PDC/smb.conf /etc/samba.PDC/smb.PDC.conf
56 3 Benjamin Bohard
</pre>
57 3 Benjamin Bohard
58 3 Benjamin Bohard
h5. copier les bases de données de samba dans un sous-répertoire du répertoire de travail
59 3 Benjamin Bohard
60 3 Benjamin Bohard
<pre>
61 3 Benjamin Bohard
mkdir /etcsamba.PDC/dbdir/
62 3 Benjamin Bohard
cp -p /etc/samba.PDC/private/secrets.tdb /etc/samba.PDC/dbdir/
63 3 Benjamin Bohard
cp -p /etc/samba.PDC/private/schannel_store.tdb /etc/samba.PDC/dbdir/
64 3 Benjamin Bohard
cp -p /etc/samba.PDC/private/passdb.tdb /etc/samba.PDC/dbdir/
65 3 Benjamin Bohard
cp -p /etc/samba.PDC/var/lock/gencache_notrans.tdb /etc/samba.PDC/dbdir/
66 3 Benjamin Bohard
cp -p /etc/samba.PDC/var/locks/group_mapping.tdb /etc/samba.PDC/dbdir/
67 1 Benjamin Bohard
cp -p /etc/samba.PDC/var/locks/account_policy.tdb /etc/samba.PDC/dbdir/
68 1 Benjamin Bohard
</pre>
69 3 Benjamin Bohard
70 8 Benjamin Bohard
h5. lancer la commande samba-tool domain classicupgrade
71 8 Benjamin Bohard
72 1 Benjamin Bohard
<pre>
73 8 Benjamin Bohard
realm=$(CreoleGet nom_domaine_local)
74 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
75 8 Benjamin Bohard
</pre>
76 8 Benjamin Bohard
77 8 Benjamin Bohard
h5. créer le patch smb.conf à partir du nouveau fichier créer par samba-tool
78 8 Benjamin Bohard
79 8 Benjamin Bohard
h5. stopper et désactiver le service slapd
80 8 Benjamin Bohard
81 8 Benjamin Bohard
<pre>
82 8 Benjamin Bohard
systemctl stop slapd
83 8 Benjamin Bohard
systemctl disable slapd
84 8 Benjamin Bohard
</pre>
85 8 Benjamin Bohard
86 8 Benjamin Bohard
h5. créer le compte reader
87 8 Benjamin Bohard
88 8 Benjamin Bohard
<pre>
89 8 Benjamin Bohard
cat /root/.reader
90 8 Benjamin Bohard
samba-tool user create reader
91 8 Benjamin Bohard
</pre>
92 8 Benjamin Bohard
93 8 Benjamin Bohard
h5. modifier les variables
94 8 Benjamin Bohard
95 8 Benjamin Bohard
Le base DN est maintenant du type DC=etb1,DC=lan.
96 8 Benjamin Bohard
97 8 Benjamin Bohard
Le compte reader est maintenant du type CN=reader,CN=Users,DC=etb1,DC=lan.
98 8 Benjamin Bohard
99 8 Benjamin Bohard
h5. modifier les scripts de posttemplate 00-annuaire, 02-annuaire et 04-fichier
100 8 Benjamin Bohard
101 8 Benjamin Bohard
exit 0 ajouté en tête des fichiers pour ne pas faire les traitements.
102 8 Benjamin Bohard
103 8 Benjamin Bohard
h5. activer et démarrer le service samba-ad-dc
104 8 Benjamin Bohard
105 8 Benjamin Bohard
<pre>
106 8 Benjamin Bohard
systemctl enable samba-ad-dc
107 8 Benjamin Bohard
systemctl start samba-ad-dc
108 8 Benjamin Bohard
</pre>
109 8 Benjamin Bohard
110 8 Benjamin Bohard
h5. reconfigure
111 8 Benjamin Bohard
112 8 Benjamin Bohard
h5. stopper le service nmbd
113 8 Benjamin Bohard
114 8 Benjamin Bohard
Le service nmbd est démarré automatiquement par creole
115 8 Benjamin Bohard
<pre>
116 8 Benjamin Bohard
systemctl stop nmbd
117 3 Benjamin Bohard
</pre>
118 3 Benjamin Bohard
119 3 Benjamin Bohard
En suspens : gestion du service nmbd, problèmes dns (piste : variables dns_lookup_realm et dns_lookup_kdc dans le fichier de configuration krb5.conf)
120 4 Benjamin Bohard
121 9 Philippe Caseiro
h2. Pistes de travail pour la migration de l'annuaire
122 9 Philippe Caseiro
123 9 Philippe Caseiro
Proposition de méthode pour arriver a un Scribe AD en utilisant malgré-tout une
124 9 Philippe Caseiro
partie du travail déjà fait par l'équipe samba dans sa procédure
125 9 Philippe Caseiro
classicupgrade.
126 9 Philippe Caseiro
127 9 Philippe Caseiro
La procédure proprement dite n'est pas suffisante pour nous et l'utilisation
128 9 Philippe Caseiro
brute de l'outil samba non plus, cet outil réalise le provisionning AD et les
129 9 Philippe Caseiro
initialisations des fichiers db, hors pour bien faire nous avons besoin que samba ai
130 9 Philippe Caseiro
connaissance des schemas complémentaires du scribe (radius, eole, ent ...).
131 9 Philippe Caseiro
avant la migration des comptes. Pour lui ajouter les dit schémas il faut que
132 9 Philippe Caseiro
les fichiers db soient initialisées, donc l'utilisation de l'outil est
133 9 Philippe Caseiro
impossible. Par chance il utilise la lib python samaba, ce qui nous ouvre des
134 9 Philippe Caseiro
possibilités. Sans oublié que l'outil samba crée la configuration pour samba
135 9 Philippe Caseiro
a partir de l'ancienne et cette fonctionnalités ne nous ai pas vraiment utile.
136 9 Philippe Caseiro
137 9 Philippe Caseiro
Donc l'idée est de recréer une procédure de migration complête pour nos
138 9 Philippe Caseiro
besoins.
139 9 Philippe Caseiro
140 9 Philippe Caseiro
Il faut donc refaire le provisionning de l'AD ce qui est fait dans Seth donc
141 9 Philippe Caseiro
nous pouvons utiliser cette base de travail
142 9 Philippe Caseiro
143 9 Philippe Caseiro
Migrer les shemas complémentaires actuels au format lisible par samba4.
144 9 Philippe Caseiro
145 9 Philippe Caseiro
Créer un script de migration des comptes qui ajoute les schemas, utilise la
146 9 Philippe Caseiro
lib python samba4 pour migrer les comptes et ensuite mettre à jour les comptes
147 9 Philippe Caseiro
avec les attributs supplémentaires de l'ancien annuaire.