Projet

Général

Profil

Scribe AD 2srv classic upg » Historique » Version 4

Joël Cuissinat, 09/02/2018 13:44

1 1 Fabrice Barconnière
h1. Scribe membre d'un AD Seth : tests classicupgrade
2 1 Fabrice Barconnière
3 1 Fabrice Barconnière
Deux essais infructueux :
4 1 Fabrice Barconnière
* Classicupgrade effectué sur Scribe puis copie du résultat su Seth
5 1 Fabrice Barconnière
** plus de compte @Administrator@
6 1 Fabrice Barconnière
** problèmes de DNS, @scribe.dompedago.etb1.lan@ apparaît dans les bases Samba4 comme étant le DC
7 1 Fabrice Barconnière
** Le poste ne peuvent pas se connecter au domaine AD
8 1 Fabrice Barconnière
9 1 Fabrice Barconnière
* Classicupgrade effectué sur Seth:
10 1 Fabrice Barconnière
** Les comptes sont bien présents
11 1 Fabrice Barconnière
** On perd le mot de passe du compte @Administrator@. Il faut le réinitialiser
12 1 Fabrice Barconnière
** Il est quand même nécessaire de sortir les postes du domaine NT pour les joindre au domaine AD
13 1 Fabrice Barconnière
14 1 Fabrice Barconnière
Voici les notes des commandes exécutées.
15 1 Fabrice Barconnière
16 1 Fabrice Barconnière
17 1 Fabrice Barconnière
h2. Préparer le Classicupgrade sur Scribe en prod en mode NT
18 1 Fabrice Barconnière
19 1 Fabrice Barconnière
h3. Backup annuaire de Scribe
20 1 Fabrice Barconnière
21 1 Fabrice Barconnière
<pre>
22 1 Fabrice Barconnière
service slapd stop
23 1 Fabrice Barconnière
tar czvf ldap.backup.tgz /etc/ldap* /var/lib/ldap/
24 1 Fabrice Barconnière
# slapcat -f /etc/ldap/slapd.conf -o ldif-wrap=no -l ldap.backup.ldif
25 1 Fabrice Barconnière
service slapd start
26 1 Fabrice Barconnière
</pre>
27 1 Fabrice Barconnière
28 1 Fabrice Barconnière
h3. Backup Samba de Scribe
29 1 Fabrice Barconnière
30 1 Fabrice Barconnière
<pre>
31 1 Fabrice Barconnière
service smbd stop
32 1 Fabrice Barconnière
service nmbd stop
33 1 Fabrice Barconnière
mkdir /etc/samba.NT
34 1 Fabrice Barconnière
mkdir /var/lib/samba.NT
35 1 Fabrice Barconnière
#cp --preserve /etc/hostname{,.NT}
36 1 Fabrice Barconnière
cp -r --preserve /etc/samba/* /etc/samba.NT/
37 1 Fabrice Barconnière
cp -r --preserve /var/lib/samba/* /var/lib/samba.NT/
38 1 Fabrice Barconnière
</pre>
39 1 Fabrice Barconnière
40 1 Fabrice Barconnière
h3. Préparer le classicupgrade
41 1 Fabrice Barconnière
42 4 Joël Cuissinat
* Copier les fichiers dans le répertoire spécial : /var/lib/samba.PDC
43 4 Joël Cuissinat
44 1 Fabrice Barconnière
<pre>
45 1 Fabrice Barconnière
mkdir -p /var/lib/samba.PDC/{etc,dbdir}
46 1 Fabrice Barconnière
cp -p /var/lib/samba/private/secrets.tdb /var/lib/samba.PDC/dbdir/
47 1 Fabrice Barconnière
cp -p /var/lib/samba/private/schannel_store.tdb /var/lib/samba.PDC/dbdir/
48 1 Fabrice Barconnière
cp -p /var/lib/samba/private/passdb.tdb /var/lib/samba.PDC/dbdir/
49 1 Fabrice Barconnière
#cp -p /var/lib/samba/var/lock/gencache_notrans.tdb /var/lib/samba.PDC/dbdir/
50 1 Fabrice Barconnière
cp -p /var/lib/samba/group_mapping.tdb /var/lib/samba.PDC/dbdir/
51 1 Fabrice Barconnière
cp -p /var/lib/samba/account_policy.tdb /var/lib/samba.PDC/dbdir/
52 1 Fabrice Barconnière
cp -p /var/lib/samba/wins* /var/lib/samba.PDC/dbdir/
53 4 Joël Cuissinat
</pre>
54 4 Joël Cuissinat
55 4 Joël Cuissinat
* Renommage du serveur (en "seth") (selon infrastructure)
56 4 Joël Cuissinat
57 4 Joël Cuissinat
Samba 4.7
58 4 Joël Cuissinat
59 4 Joël Cuissinat
<pre>
60 1 Fabrice Barconnière
sed -e "s/\(netbios name = \).*/\1seth/" -e "/logging/,/enable privileges/""s/^/#/" /etc/samba/smb.conf > /var/lib/samba.PDC/etc/smb.PDC.conf
61 4 Joël Cuissinat
sed -i "s/$(CreoleGet nom_machine)/seth/" /etc/hostname
62 4 Joël Cuissinat
</pre>
63 4 Joël Cuissinat
64 4 Joël Cuissinat
Samba 4.3
65 4 Joël Cuissinat
66 4 Joël Cuissinat
<pre>
67 4 Joël Cuissinat
sed -i "s/\(netbios name = \).*/\1seth/" /var/lib/samba.PDC/etc/smb.PDC.conf
68 4 Joël Cuissinat
sed -i "s/$(CreoleGet nom_machine)/seth/" /etc/hostname
69 4 Joël Cuissinat
</pre>
70 4 Joël Cuissinat
71 4 Joël Cuissinat
* Sauvegarde des données (facultatif mais peut servir)
72 4 Joël Cuissinat
73 4 Joël Cuissinat
<pre>
74 1 Fabrice Barconnière
tar czvf samba.PDC.tgz /var/lib/samba.PDC
75 1 Fabrice Barconnière
</pre>
76 4 Joël Cuissinat
77 1 Fabrice Barconnière
78 1 Fabrice Barconnière
h3. Adapter les configuration ETB1
79 1 Fabrice Barconnière
80 1 Fabrice Barconnière
* Amon
81 1 Fabrice Barconnière
** Forward de zone DNS : dompedago.etb1.lan 10.1.3.6 (ip de Seth en DMZ)
82 1 Fabrice Barconnière
** Authentification proxy en NTLM/KERBEROS
83 1 Fabrice Barconnière
* Scribe
84 1 Fabrice Barconnière
** domaine local passe à dompedago.etb1.lan
85 1 Fabrice Barconnière
** DHCP -> changer le DNS renvoyé avec l'IP de Seth ainsi que le domaine DNS à renvoyer (celui de Seth)
86 1 Fabrice Barconnière
* Seth
87 1 Fabrice Barconnière
** nom_machine : seth
88 1 Fabrice Barconnière
** domaine local : dompedago.etb1.lan
89 1 Fabrice Barconnière
** dns : ip Amon sur la dmz
90 1 Fabrice Barconnière
** NTP : ip Amon sur la dmz
91 1 Fabrice Barconnière
** Pas de DC additionnel
92 1 Fabrice Barconnière
93 1 Fabrice Barconnière
h2. Option Classicupgrade depuis Scribe
94 1 Fabrice Barconnière
95 1 Fabrice Barconnière
h3. Génération de la configuration Samba AD depuis Scribe
96 1 Fabrice Barconnière
97 1 Fabrice Barconnière
* Exécuter la procédure
98 1 Fabrice Barconnière
<pre>
99 1 Fabrice Barconnière
samba-tool domain classicupgrade --dbdir=/var/lib/samba.PDC/dbdir --use-xattrs=yes --realm=dompedago.etb1.lan --dns-backend=SAMBA_INTERNAL /var/lib/samba.PDC/etc/smb.PDC.conf
100 1 Fabrice Barconnière
</pre>
101 1 Fabrice Barconnière
102 1 Fabrice Barconnière
* Vérifier que la base sam est bien remplie
103 1 Fabrice Barconnière
<pre>
104 1 Fabrice Barconnière
apt-get install ldb-tools
105 1 Fabrice Barconnière
ldbsearch -H /var/lib/samba/private/sam.ldb -S '(objectclass=user)' cn
106 1 Fabrice Barconnière
</pre>
107 1 Fabrice Barconnière
108 1 Fabrice Barconnière
* sauvegarde la conf générée
109 1 Fabrice Barconnière
<pre>
110 1 Fabrice Barconnière
mv /var/lib/samba{,AD}
111 1 Fabrice Barconnière
mv /etc/samba{,AD}
112 1 Fabrice Barconnière
tar czvf samba.AD.tgz /var/lib/sambaAD
113 1 Fabrice Barconnière
</pre>
114 1 Fabrice Barconnière
115 1 Fabrice Barconnière
* Relancer Samba en mode NT
116 1 Fabrice Barconnière
<pre>
117 1 Fabrice Barconnière
mv /etc/hostname{.NT,}
118 1 Fabrice Barconnière
mv /etc/samba{.NT,}
119 1 Fabrice Barconnière
mv /var/lib/samba{.NT,}
120 1 Fabrice Barconnière
service smbd start
121 1 Fabrice Barconnière
service nmbd start
122 1 Fabrice Barconnière
</pre>
123 1 Fabrice Barconnière
124 1 Fabrice Barconnière
h3. Mise en place sur Seth
125 1 Fabrice Barconnière
126 1 Fabrice Barconnière
* Instancier Seth
127 1 Fabrice Barconnière
128 1 Fabrice Barconnière
* Copier l'archive obtenue sur Scribe
129 1 Fabrice Barconnière
<pre>
130 1 Fabrice Barconnière
scp root@scribe.etb1.lan:/root/samba.AD.tgz .
131 1 Fabrice Barconnière
tar xzvf samba.AD.tgz -C /
132 1 Fabrice Barconnière
</pre>
133 1 Fabrice Barconnière
134 1 Fabrice Barconnière
* Arrêter Samba
135 1 Fabrice Barconnière
<pre>
136 1 Fabrice Barconnière
service samba-ad-dc stop
137 1 Fabrice Barconnière
</pre>
138 1 Fabrice Barconnière
139 1 Fabrice Barconnière
* Sauvegarder les bases samba
140 1 Fabrice Barconnière
<pre>
141 1 Fabrice Barconnière
mv /var/lib/samba{,SVG}
142 1 Fabrice Barconnière
</pre>
143 1 Fabrice Barconnière
144 1 Fabrice Barconnière
* Restaurer les bases issues de Scribe
145 1 Fabrice Barconnière
<pre>
146 1 Fabrice Barconnière
mv /var/lib/samba{AD,}
147 1 Fabrice Barconnière
cp /var/lib/sambaSVG/.instance_ok /var/lib/samba/
148 1 Fabrice Barconnière
</pre>
149 1 Fabrice Barconnière
150 1 Fabrice Barconnière
* Reconfigurer Seth
151 1 Fabrice Barconnière
152 1 Fabrice Barconnière
* Ajouter une entrée DNS seth.dompedago.etb1.lan dans le DNS Samba
153 1 Fabrice Barconnière
<pre>
154 1 Fabrice Barconnière
samba-tool dns add 10.1.3.6 dompedago.etb1.lan seth A 10.1.3.6 -U admin
155 1 Fabrice Barconnière
</pre>
156 1 Fabrice Barconnière
157 1 Fabrice Barconnière
158 1 Fabrice Barconnière
h2. Option Classicupgrade depuis Seth
159 1 Fabrice Barconnière
160 1 Fabrice Barconnière
h3. Instancier Seth
161 1 Fabrice Barconnière
162 1 Fabrice Barconnière
Le serveur est opérationnel en tant que DC
163 1 Fabrice Barconnière
164 1 Fabrice Barconnière
h3. Préparer le classicupgrade sur Seth
165 1 Fabrice Barconnière
166 1 Fabrice Barconnière
* Sur Seth instancié, arrêter samba
167 1 Fabrice Barconnière
<pre>
168 1 Fabrice Barconnière
service samba-ad-dc stop
169 1 Fabrice Barconnière
</pre>
170 1 Fabrice Barconnière
 
171 1 Fabrice Barconnière
* Copier les backup obtenus sur Seth (depuis Seth)
172 1 Fabrice Barconnière
<pre>
173 1 Fabrice Barconnière
scp root@scribe.etb1.lan:~/ldap.backup.tgz .
174 1 Fabrice Barconnière
scp root@scribe.etb1.lan:/root/samba.PDC.tgz .
175 1 Fabrice Barconnière
</pre>
176 1 Fabrice Barconnière
177 1 Fabrice Barconnière
* Installer openldap, restaurer l'annuaire et lancer le service
178 1 Fabrice Barconnière
<pre>
179 1 Fabrice Barconnière
apt-eole install slapd
180 1 Fabrice Barconnière
service slapd stop
181 1 Fabrice Barconnière
tar xzvf ldap.backup.tgz -C /
182 1 Fabrice Barconnière
tar xzvf samba.PDC.tgz -C /
183 1 Fabrice Barconnière
#service slapd start
184 1 Fabrice Barconnière
/usr/sbin/slapd -g openldap -u openldap -f /etc/ldap/slapd.conf
185 1 Fabrice Barconnière
</pre>
186 1 Fabrice Barconnière
187 1 Fabrice Barconnière
* Lancer la procédure classic upgrade :
188 1 Fabrice Barconnière
<pre>
189 1 Fabrice Barconnière
samba-tool domain classicupgrade --dbdir=/var/lib/samba.PDC/dbdir/ --realm=dompedago.etb1.lan --dns-backend=SAMBA_INTERNAL /var/lib/samba.PDC/etc/smb.PDC.conf
190 1 Fabrice Barconnière
</pre> 
191 1 Fabrice Barconnière
192 1 Fabrice Barconnière
* Stopper le service slapd, relancer Samba et réinitialiser le mot de passe @Administrator@
193 1 Fabrice Barconnière
pkill slapd
194 1 Fabrice Barconnière
service samba-ad-dc restart
195 1 Fabrice Barconnière
samba-tool user setpassword Administrator
196 1 Fabrice Barconnière
</pre>
197 1 Fabrice Barconnière
198 1 Fabrice Barconnière
h3. Effectuer la procédure d'intégration du serveur Scribe dans le domaine AD de Seth
199 1 Fabrice Barconnière
200 1 Fabrice Barconnière
http://eole.ac-dijon.fr/documentations/2.6/partielles/beta/ModuleSeth/co/eole-AD.html
201 1 Fabrice Barconnière
202 1 Fabrice Barconnière
Il est tout de même nécessaire de sortir les postes du domaine NT pour les joindre au domaine AD
203 1 Fabrice Barconnière
204 1 Fabrice Barconnière
h2. Conclusion
205 1 Fabrice Barconnière
206 1 Fabrice Barconnière
Finalement, dans cette situation, on ne peut pas utiliser la méthode classicupgrade pour éviter l'opération de sortie/jonction au domaine AD à cause du changement de nom du serveur (Scribe->Seth).
207 1 Fabrice Barconnière
208 1 Fabrice Barconnière
On devra se contenter de la procédure avec eole-ad et LSC.
209 1 Fabrice Barconnière
210 1 Fabrice Barconnière
Il est toutefois possible de réinjecter les nt-hash des passwords des comptes de Scribe sur Seth :
211 1 Fabrice Barconnière
212 1 Fabrice Barconnière
* Extraction des Hash sur Scribe
213 1 Fabrice Barconnière
<pre>
214 1 Fabrice Barconnière
pdbedit -L -w | sed -e "/^.*$:/d" |cut -d":" -f 1,4 > hash_passwd
215 1 Fabrice Barconnière
</pre>
216 1 Fabrice Barconnière
* Injection des Hash sur Seth pour chaque USERNAME
217 1 Fabrice Barconnière
<pre>
218 1 Fabrice Barconnière
pdbedit -u USERNAME --set-nt-hash PASSWORD_HASH
219 1 Fabrice Barconnière
</pre>
220 2 Fabrice Barconnière
221 1 Fabrice Barconnière
La jonction des postes sur le nouveau DC pourra se faire à l'aide du script @joinDom.ps1@ présent dans le dépôt GIT seth-ecologie de project:pne-sr en adaptant @joinDom.psd1@.
222 1 Fabrice Barconnière
Ce script pourra être lancé à l'ouverture de session de chaque poste avant la procédure d'intégration du serveur Scribe dans le domaine AD de Seth.