1 | <?xml version="1.0" encoding="iso-8859-1"?>
|
---|
2 | <!DOCTYPE chapter PUBLIC "-//Samba-Team//DTD DocBook V4.2-Based Variant V1.0//EN" "http://www.samba.org/samba/DTD/samba-doc">
|
---|
3 | <chapter id="ntmigration">
|
---|
4 | <title>Migrating NT4 Domain to Samba-3</title>
|
---|
5 |
|
---|
6 | <para>
|
---|
7 | Ever since Microsoft announced that it was discontinuing support for Windows
|
---|
8 | NT4, Samba users started to ask for detailed instructions on how to migrate
|
---|
9 | from NT4 to Samba-3. This chapter provides background information that should
|
---|
10 | meet these needs.
|
---|
11 | </para>
|
---|
12 |
|
---|
13 | <para>
|
---|
14 | One wonders how many NT4 systems will be left in service by the time you read this
|
---|
15 | book though.
|
---|
16 | </para>
|
---|
17 |
|
---|
18 | <sect1>
|
---|
19 | <title>Introduction</title>
|
---|
20 |
|
---|
21 | <para><indexterm>
|
---|
22 | <primary>migration</primary>
|
---|
23 | </indexterm>
|
---|
24 | Network administrators who want to migrate off a Windows NT4 environment know
|
---|
25 | one thing with certainty. They feel that NT4 has been abandoned, and they want
|
---|
26 | to update. The desire to get off NT4 and to not adopt Windows 200x and Active
|
---|
27 | Directory is driven by a mixture of concerns over complexity, cost, fear of
|
---|
28 | failure, and much more.
|
---|
29 | </para>
|
---|
30 |
|
---|
31 | <para>
|
---|
32 | <indexterm><primary>group policies</primary></indexterm>
|
---|
33 | <indexterm><primary>accounts</primary><secondary>user</secondary></indexterm>
|
---|
34 | <indexterm><primary>accounts</primary><secondary>group</secondary></indexterm>
|
---|
35 | <indexterm><primary>accounts</primary><secondary>machine</secondary></indexterm>
|
---|
36 | The migration from NT4 to Samba-3 can involve a number of factors, including
|
---|
37 | migration of data to another server, migration of network environment controls
|
---|
38 | such as group policies, and migration of the users, groups, and machine
|
---|
39 | accounts.
|
---|
40 | </para>
|
---|
41 |
|
---|
42 | <para>
|
---|
43 | <indexterm><primary>accounts</primary><secondary>Domain</secondary></indexterm>
|
---|
44 | It should be pointed out now that it is possible to migrate some systems from
|
---|
45 | a Windows NT4 domain environment to a Samba-3 domain environment. This is certainly
|
---|
46 | not possible in every case. It is possible to just migrate the domain accounts
|
---|
47 | to Samba-3 and then to switch machines, but as a hands-off transition, this is more
|
---|
48 | the exception than the rule. Most systems require some tweaking after
|
---|
49 | migration before an environment that is acceptable for immediate use
|
---|
50 | is obtained.
|
---|
51 | </para>
|
---|
52 |
|
---|
53 | <sect2>
|
---|
54 | <title>Assignment Tasks</title>
|
---|
55 |
|
---|
56 | <para>
|
---|
57 | <indexterm><primary>LDAP</primary></indexterm>
|
---|
58 | <indexterm><primary>ldapsam</primary></indexterm>
|
---|
59 | <indexterm><primary>passdb backend</primary></indexterm>
|
---|
60 | You are about to migrate an MS Windows NT4 domain accounts database to
|
---|
61 | a Samba-3 server. The Samba-3 server is using a
|
---|
62 | <parameter>passdb backend</parameter> based on LDAP. The
|
---|
63 | <constant>ldapsam</constant> is ideal because an LDAP backend can be distributed
|
---|
64 | for use with BDCs &smbmdash; generally essential for larger networks.
|
---|
65 | </para>
|
---|
66 |
|
---|
67 | <para>
|
---|
68 | Your objective is to document the process of migrating user and group accounts
|
---|
69 | from several NT4 domains into a single Samba-3 LDAP backend database.
|
---|
70 | </para>
|
---|
71 |
|
---|
72 | </sect2>
|
---|
73 | </sect1>
|
---|
74 |
|
---|
75 | <sect1>
|
---|
76 | <title>Dissection and Discussion</title>
|
---|
77 |
|
---|
78 | <para>
|
---|
79 | <indexterm><primary>snap-shot</primary></indexterm>
|
---|
80 | <indexterm><primary>NT4 registry</primary></indexterm>
|
---|
81 | <indexterm><primary>registry</primary><secondary>keys</secondary><tertiary>SAM</tertiary></indexterm>
|
---|
82 | <indexterm><primary>registry</primary><secondary>keys</secondary><tertiary>SECURITY</tertiary></indexterm>
|
---|
83 | <indexterm><primary>SAM</primary></indexterm>
|
---|
84 | <indexterm><primary>Security Account Manager</primary><see>SAM</see></indexterm>
|
---|
85 | The migration process takes a snapshot of information that is stored in the
|
---|
86 | Windows NT4 registry-based accounts database. That information resides in
|
---|
87 | the Security Account Manager (SAM) portion of the NT4 registry under keys called
|
---|
88 | <constant>SAM</constant> and <constant>SECURITY</constant>.
|
---|
89 | </para>
|
---|
90 |
|
---|
91 | <warning><para>
|
---|
92 | <indexterm><primary>crippled</primary></indexterm>
|
---|
93 | <indexterm><primary>inoperative</primary></indexterm>
|
---|
94 | The Windows NT4 registry keys called <constant>SAM</constant> and <constant>SECURITY</constant>
|
---|
95 | are protected so that you cannot view the contents. If you change the security setting
|
---|
96 | to reveal the contents under these hive keys, your Windows NT4 domain is crippled. Do not
|
---|
97 | do this unless you are willing to render your domain controller inoperative.
|
---|
98 | </para></warning>
|
---|
99 |
|
---|
100 | <para>
|
---|
101 | <indexterm><primary>migration</primary><secondary>objectives</secondary></indexterm>
|
---|
102 | <indexterm><primary>disruptive</primary></indexterm>
|
---|
103 | Before commencing an NT4 to Samba-3 migration, you should consider what your objectives are.
|
---|
104 | While in some cases it is possible simply to migrate an NT4 domain to a single Samba-3 server,
|
---|
105 | that may not be a good idea from an administration perspective. Since the process involves going
|
---|
106 | through a certain amount of disruptive activity anyhow, why not take this opportunity to
|
---|
107 | review the structure of the network, how Windows clients are controlled and how they
|
---|
108 | interact with the network environment.
|
---|
109 | </para>
|
---|
110 |
|
---|
111 | <para>
|
---|
112 | <indexterm><primary>network</primary><secondary>logon scripts</secondary></indexterm>
|
---|
113 | <indexterm><primary>profiles share</primary></indexterm>
|
---|
114 | <indexterm><primary>security descriptors</primary></indexterm>
|
---|
115 | MS Windows NT4 was introduced some time around 1996. Many environments in which NT4 was deployed
|
---|
116 | have done little to keep the NT4 server environment up to date with more recent Windows releases,
|
---|
117 | particularly Windows XP Professional. The migration provides opportunity to revise and update
|
---|
118 | roaming profile deployment as well as folder redirection. Given that you must port the
|
---|
119 | greater network configuration of this from the old NT4 server to the new Samba-3 server.
|
---|
120 | Do not forget to validate the security descriptors in the profiles share as well as network logon
|
---|
121 | scripts. Feedback from sites that are migrating to Samba-3 suggests that many are using this
|
---|
122 | as a good time to update desktop systems also. In all, the extra effort should constitute no
|
---|
123 | real disruption to users, but rather, with due diligence and care, should make their network experience
|
---|
124 | a much happier one.
|
---|
125 | </para>
|
---|
126 |
|
---|
127 | <sect2>
|
---|
128 | <title>Technical Issues</title>
|
---|
129 |
|
---|
130 | <para>
|
---|
131 | <indexterm><primary>strategic</primary></indexterm>
|
---|
132 | <indexterm><primary>active directory</primary></indexterm>
|
---|
133 | Migration of an NT4 domain user and group database to Samba-3 involves a certain strategic
|
---|
134 | element. Many sites have asked for instructions regarding merging of multiple NT4
|
---|
135 | domains into one Samba-3 LDAP database. It seems that this is viewed as a significant
|
---|
136 | added value compared with the alternative of migration to Windows Server 200x and Active
|
---|
137 | Directory. The diagram in <link linkend="ch8-migration"/> illustrates the effect of migration
|
---|
138 | from a Windows NT4 domain to a Samba domain.
|
---|
139 | </para>
|
---|
140 |
|
---|
141 | <figure id="ch8-migration">
|
---|
142 | <title>Schematic Explaining the <command>net rpc vampire</command> Process</title>
|
---|
143 | <imagefile scale="55">ch8-migration</imagefile>
|
---|
144 | </figure>
|
---|
145 |
|
---|
146 | <para>
|
---|
147 | <indexterm><primary>merge</primary></indexterm>
|
---|
148 | <indexterm><primary>passdb.tdb</primary></indexterm>
|
---|
149 | If you want to merge multiple NT4 domain account databases into one Samba domain,
|
---|
150 | you must now dump the contents of the first migration and edit it as appropriate. Now clean
|
---|
151 | out (remove) the tdbsam backend file (<filename>passdb.tdb</filename>) or the LDAP database
|
---|
152 | files. You must start each migration with a new database into which you merge your NT4
|
---|
153 | domains.
|
---|
154 | </para>
|
---|
155 |
|
---|
156 | <para><indexterm>
|
---|
157 | <primary>dump</primary>
|
---|
158 | </indexterm>
|
---|
159 | At this point, you are ready to perform the second migration, following the same steps as
|
---|
160 | for the first. In other words, dump the database, edit it, and then you may merge the
|
---|
161 | dump for the first and second migrations.
|
---|
162 | </para>
|
---|
163 |
|
---|
164 | <para><indexterm>
|
---|
165 | <primary>LDAP</primary>
|
---|
166 | </indexterm><indexterm>
|
---|
167 | <primary>migrate</primary>
|
---|
168 | </indexterm><indexterm>
|
---|
169 | <primary>Domain SID</primary>
|
---|
170 | </indexterm>
|
---|
171 | You must be careful. If you choose to migrate to an LDAP backend, your dump file
|
---|
172 | now contains the full account information, including the domain SID. The domain SID for each
|
---|
173 | of the two NT4 domains will be different. You must choose one and change the domain
|
---|
174 | portion of the account SIDs so that all are the same.
|
---|
175 | </para>
|
---|
176 |
|
---|
177 | <para>
|
---|
178 | <indexterm><primary>passdb.tdb</primary></indexterm>
|
---|
179 | <indexterm><primary>/etc/passwd</primary></indexterm>
|
---|
180 | <indexterm><primary>merged</primary></indexterm>
|
---|
181 | <indexterm><primary>logon script</primary></indexterm>
|
---|
182 | <indexterm><primary>logon hours</primary></indexterm>
|
---|
183 | <indexterm><primary>logon machines</primary></indexterm>
|
---|
184 | <indexterm><primary>profile path</primary></indexterm>
|
---|
185 | <indexterm><primary>smbpasswd</primary></indexterm>
|
---|
186 | <indexterm><primary>tdbsam</primary></indexterm>
|
---|
187 | <indexterm><primary>LDAP backend</primary></indexterm>
|
---|
188 | <indexterm><primary>export</primary></indexterm>
|
---|
189 | <indexterm><primary>import</primary></indexterm>
|
---|
190 | If you choose to use a tdbsam (<filename>passdb.tdb</filename>) backend file, your best choice
|
---|
191 | is to use <command>pdbedit</command> to export the contents of the tdbsam file into an
|
---|
192 | smbpasswd data file. This automatically strips out all domain-specific information,
|
---|
193 | such as logon hours, logon machines, logon script, profile path, as well as the domain SID.
|
---|
194 | The resulting file can be easily merged with other migration attempts (each of which must start
|
---|
195 | with a clean file). It should also be noted that all users who end up in the merged smbpasswd
|
---|
196 | file must have an account in <filename>/etc/passwd</filename>. The resulting smbpasswd file
|
---|
197 | may be exported or imported into either a tdbsam (<filename>passdb.tdb</filename>) or
|
---|
198 | an LDAP backend.
|
---|
199 | </para>
|
---|
200 |
|
---|
201 | <figure id="NT4DUM">
|
---|
202 | <title>View of Accounts in NT4 Domain User Manager</title>
|
---|
203 | <imagefile scale="50">UserMgrNT4</imagefile>
|
---|
204 | </figure>
|
---|
205 |
|
---|
206 | </sect2>
|
---|
207 |
|
---|
208 |
|
---|
209 | <sect2>
|
---|
210 | <title>Political Issues</title>
|
---|
211 |
|
---|
212 | <para>
|
---|
213 | The merging of multiple Windows NT4-style domains into a single LDAP-backend-based Samba-3
|
---|
214 | domain may be seen by those who had power over them as a loss of prestige or a loss of
|
---|
215 | power. The imposition of a single domain may even be seen as a threat. So in migrating and
|
---|
216 | merging account databases, be consciously aware of the political fall-out in which you
|
---|
217 | may find yourself entangled when key staff feel a loss of prestige.
|
---|
218 | </para>
|
---|
219 |
|
---|
220 | <para>
|
---|
221 | The best advice that can be given to those who set out to merge NT4 domains into a single
|
---|
222 | Samba-3 domain is to promote (sell) the action as one that reduces costs and delivers
|
---|
223 | greater network interoperability and manageability.
|
---|
224 | </para>
|
---|
225 |
|
---|
226 | </sect2>
|
---|
227 |
|
---|
228 | </sect1>
|
---|
229 |
|
---|
230 | <sect1>
|
---|
231 | <title>Implementation</title>
|
---|
232 |
|
---|
233 | <para>
|
---|
234 | From feedback on the Samba mailing lists, it seems that most Windows NT4 migrations
|
---|
235 | to Samba-3 are being performed using a new server or a new installation of a Linux or UNIX
|
---|
236 | server. If you contemplate doing this, please note that the steps that follow in this
|
---|
237 | chapter assume familiarity with the information that has been previously covered in this
|
---|
238 | book. You are particularly encouraged to be familiar with <link linkend="secure"/>,
|
---|
239 | <link linkend="Big500users"/> and <link linkend="happy"/>.
|
---|
240 | </para>
|
---|
241 |
|
---|
242 | <para>
|
---|
243 | We present here the steps and example output for two NT4 to Samba-3 domain migrations. The
|
---|
244 | first uses an LDAP-based backend, and the second uses a tdbsam backend. In each case the
|
---|
245 | scripts you specify in the &smb.conf; file for the <parameter>add user script</parameter>
|
---|
246 | collection of parameters are used to effect the addition of accounts into the passdb backend.
|
---|
247 | </para>
|
---|
248 |
|
---|
249 | <para>
|
---|
250 | Before proceeding to NT4 migration using either a tdbsam or ldapsam, it is most strongly recommended to
|
---|
251 | review <link linkend="ch5-dnshcp-setup"/> for DNS and DHCP configuration. The importance of correctly
|
---|
252 | functioning name resolution must be recognized. This applies equally for both hostname and NetBIOS names
|
---|
253 | (machine names, computer names, domain names, workgroup names &smbmdash; ALL names!).
|
---|
254 | </para>
|
---|
255 |
|
---|
256 | <para>
|
---|
257 | The migration process involves the following steps:
|
---|
258 | </para>
|
---|
259 |
|
---|
260 | <itemizedlist>
|
---|
261 | <listitem><para>
|
---|
262 | Prepare the target Samba-3 server. This involves configuring Samba-3 for
|
---|
263 | migration to either a tdbsam or an ldapsam backend.
|
---|
264 | </para></listitem>
|
---|
265 |
|
---|
266 | <listitem><para>
|
---|
267 | <indexterm><primary>uppercase</primary></indexterm>
|
---|
268 | <indexterm><primary>Posix</primary></indexterm>
|
---|
269 | <indexterm><primary>lower-case</primary></indexterm>
|
---|
270 | Clean up the source NT4 PDC. Delete all accounts that need not be migrated.
|
---|
271 | Delete all files that should not be migrated. Where possible, change NT group
|
---|
272 | names so there are no spaces or uppercase characters. This is important if
|
---|
273 | the target UNIX host insists on POSIX-compliant all lowercase user and group
|
---|
274 | names.
|
---|
275 | </para></listitem>
|
---|
276 |
|
---|
277 | <listitem><para>
|
---|
278 | Step through the migration process.
|
---|
279 | </para></listitem>
|
---|
280 |
|
---|
281 | <listitem><para><indexterm><primary>PDC</primary></indexterm>
|
---|
282 | Remove the NT4 PDC from the network.
|
---|
283 | </para></listitem>
|
---|
284 |
|
---|
285 | <listitem><para>
|
---|
286 | Upgrade the Samba-3 server from a BDC to a PDC, and validate all account
|
---|
287 | information.
|
---|
288 | </para></listitem>
|
---|
289 | </itemizedlist>
|
---|
290 |
|
---|
291 | <para>
|
---|
292 | It may help to use the above outline as a pre-migration checklist.
|
---|
293 | </para>
|
---|
294 |
|
---|
295 | <sect2>
|
---|
296 | <title>NT4 Migration Using LDAP Backend</title>
|
---|
297 |
|
---|
298 | <para>
|
---|
299 | In this example, the migration is of an NT4 PDC to a Samba-3 PDC with an LDAP backend. The accounts about
|
---|
300 | to be migrated are shown in <link linkend="NT4DUM"/>. In this example use is made of the
|
---|
301 | smbldap-tools scripts to add the accounts that are migrated into the ldapsam passdb backend.
|
---|
302 | Four scripts are essential to the migration process. Other scripts will be required
|
---|
303 | for daily management, but these are not critical to migration. The critical scripts are dependant
|
---|
304 | on which passdb backend is being used. Refer to <link linkend="ch8-vampire"/> to see which scripts
|
---|
305 | must be provided so that the migration process can complete.
|
---|
306 | </para>
|
---|
307 |
|
---|
308 | <para>
|
---|
309 | Verify that you have correctly specified in the &smb.conf; file the scripts and arguments
|
---|
310 | that should be passed to them before attempting to perform the account migration. Note also
|
---|
311 | that the deletion scripts must be commented out during migration. These should be uncommented
|
---|
312 | following successful migration of the NT4 Domain accounts.
|
---|
313 | </para>
|
---|
314 |
|
---|
315 | <warning><para>
|
---|
316 | Under absolutely no circumstances should the Samba daemons be started until instructed to do so.
|
---|
317 | Delete the <filename>/etc/samba/secrets.tdb</filename> file and all Samba control tdb files
|
---|
318 | before commencing the following configuration steps.
|
---|
319 | </para></warning>
|
---|
320 |
|
---|
321 | <table id="ch8-vampire">
|
---|
322 | <title>Samba &smb.conf; Scripts Essential to Samba Operation</title>
|
---|
323 | <tgroup cols="3">
|
---|
324 | <colspec align="left"/>
|
---|
325 | <colspec align="center"/>
|
---|
326 | <colspec align="center"/>
|
---|
327 | <thead>
|
---|
328 | <row>
|
---|
329 | <entry>Entity</entry>
|
---|
330 | <entry>ldapsam Script</entry>
|
---|
331 | <entry>tdbsam Script</entry>
|
---|
332 | </row>
|
---|
333 | </thead>
|
---|
334 | <tbody>
|
---|
335 | <row>
|
---|
336 | <entry>Add User Accounts</entry>
|
---|
337 | <entry>smbldap-useradd</entry>
|
---|
338 | <entry>useradd</entry>
|
---|
339 | </row>
|
---|
340 | <row>
|
---|
341 | <entry>Delete User Accounts</entry>
|
---|
342 | <entry>smbldap-userdel</entry>
|
---|
343 | <entry>userdel</entry>
|
---|
344 | </row>
|
---|
345 | <row>
|
---|
346 | <entry>Add Group Accounts</entry>
|
---|
347 | <entry>smbldap-groupadd</entry>
|
---|
348 | <entry>groupadd</entry>
|
---|
349 | </row>
|
---|
350 | <row>
|
---|
351 | <entry>Delete Group Accounts</entry>
|
---|
352 | <entry>smbldap-groupdel</entry>
|
---|
353 | <entry>groupdel</entry>
|
---|
354 | </row>
|
---|
355 | <row>
|
---|
356 | <entry>Add User to Group</entry>
|
---|
357 | <entry>smbldap-groupmod</entry>
|
---|
358 | <entry>usermod (See Note)</entry>
|
---|
359 | </row>
|
---|
360 | <row>
|
---|
361 | <entry>Add Machine Accounts</entry>
|
---|
362 | <entry>smbldap-useradd</entry>
|
---|
363 | <entry>useradd</entry>
|
---|
364 | </row>
|
---|
365 | </tbody>
|
---|
366 | </tgroup>
|
---|
367 | </table>
|
---|
368 |
|
---|
369 | <note><para>
|
---|
370 | <indexterm><primary>usermod</primary></indexterm>
|
---|
371 | <indexterm><primary>groupmem</primary></indexterm>
|
---|
372 | <indexterm><primary>smbldap-tools</primary></indexterm>
|
---|
373 | The UNIX/Linux <command>usermod</command> utility does not permit simple user addition to (or deletion
|
---|
374 | of users from) groups. This is a feature provided by the smbldap-tools scripts. If you want this
|
---|
375 | capability, you must create your own tool to do this. Alternately, you can search the Web
|
---|
376 | to locate a utility called <command>groupmem</command> (by George Kraft) that provides this functionality.
|
---|
377 | The <command>groupmem</command> utility was contributed to the shadow package but has not surfaced
|
---|
378 | in the formal commands provided by Linux distributions (March 2004).
|
---|
379 | </para></note>
|
---|
380 |
|
---|
381 | <note><para>
|
---|
382 | <indexterm><primary>tdbdump</primary></indexterm>
|
---|
383 | The <command>tdbdump</command> utility is a utility that you can build from the Samba source-code tree. Not all Linux binary distributions include this tool. If it is missing from your
|
---|
384 | Linux distribution, you will need to build this yourself or else forgo its use.
|
---|
385 | </para></note>
|
---|
386 |
|
---|
387 | <para>
|
---|
388 | <indexterm><primary>User Manager</primary></indexterm>
|
---|
389 | Before starting the migration, all dead accounts were removed from the NT4 domain using the User Manager for Domains.
|
---|
390 | </para>
|
---|
391 |
|
---|
392 | <procedure>
|
---|
393 | <title>User Migration Steps</title>
|
---|
394 |
|
---|
395 | <step><para>
|
---|
396 | Configure the Samba &smb.conf; file to create a BDC. An example configuration is
|
---|
397 | given in <link linkend="sbent4smb"/>.
|
---|
398 | The delete scripts are commented out so that during the process of migration
|
---|
399 | no account information can be deleted.
|
---|
400 | </para></step>
|
---|
401 |
|
---|
402 | <example id="sbent4smb">
|
---|
403 | <title>NT4 Migration Samba-3 Server <filename>smb.conf</filename> &smbmdash; Part: A</title>
|
---|
404 | <smbconfblock>
|
---|
405 | <smbconfsection name="[global]"/>
|
---|
406 | <smbconfoption name="workgroup">DAMNATION</smbconfoption>
|
---|
407 | <smbconfoption name="netbios name">MERLIN</smbconfoption>
|
---|
408 | <smbconfoption name="passdb backend">ldapsam:ldap://localhost</smbconfoption>
|
---|
409 | <smbconfoption name="log level">1</smbconfoption>
|
---|
410 | <smbconfoption name="syslog">0</smbconfoption>
|
---|
411 | <smbconfoption name="log file">/var/log/samba/%m</smbconfoption>
|
---|
412 | <smbconfoption name="max log size">0</smbconfoption>
|
---|
413 | <smbconfoption name="smb ports">139 445</smbconfoption>
|
---|
414 | <smbconfoption name="name resolve order">wins bcast hosts</smbconfoption>
|
---|
415 | <smbconfoption name="add user script">/opt/IDEALX/sbin/smbldap-useradd -m '%u'</smbconfoption>
|
---|
416 | <smbconfoption name="#delete user script">/opt/IDEALX/sbin/smbldap-userdel '%u'</smbconfoption>
|
---|
417 | <smbconfoption name="add group script">/opt/IDEALX/sbin/smbldap-groupadd '%g'</smbconfoption>
|
---|
418 | <smbconfoption name="#delete group script">/opt/IDEALX/sbin/smbldap-groupdel '%g'</smbconfoption>
|
---|
419 | <smbconfoption name="add user to group script">/opt/IDEALX/sbin/ smbldap-groupmod -m '%u' '%g'</smbconfoption>
|
---|
420 | <smbconfoption name="#delete user from group script">/opt/IDEALX/sbin/smbldap-groupmod -x '%u' '%g'</smbconfoption>
|
---|
421 | <smbconfoption name="set primary group script">/opt/IDEALX/sbin/smbldap-usermod -g '%g' '%u'</smbconfoption>
|
---|
422 | <smbconfoption name="add machine script">/opt/IDEALX/sbin/smbldap-useradd -w '%u'</smbconfoption>
|
---|
423 | <smbconfoption name="logon script">scripts\logon.cmd</smbconfoption>
|
---|
424 | <smbconfoption name="logon path">\\%L\profiles\%U</smbconfoption>
|
---|
425 | <smbconfoption name="logon home">\\%L\%U</smbconfoption>
|
---|
426 | <smbconfoption name="logon drive">X:</smbconfoption>
|
---|
427 | <smbconfoption name="domain logons">Yes</smbconfoption>
|
---|
428 | <smbconfoption name="domain master">No</smbconfoption>
|
---|
429 | <smbconfoption name="#wins support">Yes</smbconfoption>
|
---|
430 | <smbconfoption name="wins server">192.168.123.124</smbconfoption>
|
---|
431 | <smbconfoption name="ldap admin dn">cn=Manager,dc=terpstra-world,dc=org</smbconfoption>
|
---|
432 | <smbconfoption name="ldap group suffix">ou=Groups</smbconfoption>
|
---|
433 | <smbconfoption name="ldap idmap suffix">ou=Idmap</smbconfoption>
|
---|
434 | <smbconfoption name="ldap machine suffix">ou=People</smbconfoption>
|
---|
435 | <smbconfoption name="ldap passwd sync">Yes</smbconfoption>
|
---|
436 | <smbconfoption name="ldap suffix">dc=terpstra-world,dc=org</smbconfoption>
|
---|
437 | <smbconfoption name="ldap ssl">no</smbconfoption>
|
---|
438 | <smbconfoption name="ldap timeout">20</smbconfoption>
|
---|
439 | <smbconfoption name="ldap user suffix">ou=People</smbconfoption>
|
---|
440 | <smbconfoption name="idmap backend">ldap:ldap://localhost</smbconfoption>
|
---|
441 | <smbconfoption name="idmap uid">15000-20000</smbconfoption>
|
---|
442 | <smbconfoption name="idmap gid">15000-20000</smbconfoption>
|
---|
443 | <smbconfoption name="winbind nested groups">Yes</smbconfoption>
|
---|
444 | <smbconfoption name="ea support">Yes</smbconfoption>
|
---|
445 | <smbconfoption name="map acl inherit">Yes</smbconfoption>
|
---|
446 | </smbconfblock>
|
---|
447 | </example>
|
---|
448 |
|
---|
449 | <example id="sbent4smb2">
|
---|
450 | <title>NT4 Migration Samba-3 Server <filename>smb.conf</filename> &smbmdash; Part: B</title>
|
---|
451 | <smbconfblock>
|
---|
452 | <smbconfsection name="[apps]"/>
|
---|
453 | <smbconfoption name="comment">Application Data</smbconfoption>
|
---|
454 | <smbconfoption name="path">/data/home/apps</smbconfoption>
|
---|
455 | <smbconfoption name="read only">No</smbconfoption>
|
---|
456 |
|
---|
457 | <smbconfsection name="[homes]"/>
|
---|
458 | <smbconfoption name="comment">Home Directories</smbconfoption>
|
---|
459 | <smbconfoption name="path">/home/users/%U/Documents</smbconfoption>
|
---|
460 | <smbconfoption name="valid users">%S</smbconfoption>
|
---|
461 | <smbconfoption name="read only">No</smbconfoption>
|
---|
462 | <smbconfoption name="browseable">No</smbconfoption>
|
---|
463 |
|
---|
464 | <smbconfsection name="[printers]"/>
|
---|
465 | <smbconfoption name="comment">SMB Print Spool</smbconfoption>
|
---|
466 | <smbconfoption name="path">/var/spool/samba</smbconfoption>
|
---|
467 | <smbconfoption name="guest ok">Yes</smbconfoption>
|
---|
468 | <smbconfoption name="printable">Yes</smbconfoption>
|
---|
469 | <smbconfoption name="use client driver">No</smbconfoption>
|
---|
470 | <smbconfoption name="browseable">No</smbconfoption>
|
---|
471 |
|
---|
472 | <smbconfsection name="[netlogon]"/>
|
---|
473 | <smbconfoption name="comment">Network Logon Service</smbconfoption>
|
---|
474 | <smbconfoption name="path">/var/lib/samba/netlogon</smbconfoption>
|
---|
475 | <smbconfoption name="guest ok">Yes</smbconfoption>
|
---|
476 | <smbconfoption name="locking">No</smbconfoption>
|
---|
477 |
|
---|
478 | <smbconfsection name="[profiles]"/>
|
---|
479 | <smbconfoption name="comment">Profile Share</smbconfoption>
|
---|
480 | <smbconfoption name="path">/var/lib/samba/profiles</smbconfoption>
|
---|
481 | <smbconfoption name="read only">No</smbconfoption>
|
---|
482 | <smbconfoption name="profile acls">Yes</smbconfoption>
|
---|
483 |
|
---|
484 | <smbconfsection name="[profdata]"/>
|
---|
485 | <smbconfoption name="comment">Profile Data Share</smbconfoption>
|
---|
486 | <smbconfoption name="path">/var/lib/samba/profdata</smbconfoption>
|
---|
487 | <smbconfoption name="read only">No</smbconfoption>
|
---|
488 | <smbconfoption name="profile acls">Yes</smbconfoption>
|
---|
489 |
|
---|
490 | <smbconfsection name="[print$]"/>
|
---|
491 | <smbconfoption name="comment">Printer Drivers</smbconfoption>
|
---|
492 | <smbconfoption name="path">/var/lib/samba/drivers</smbconfoption>
|
---|
493 | </smbconfblock>
|
---|
494 | </example>
|
---|
495 |
|
---|
496 | <step><para>
|
---|
497 | <indexterm><primary>slapd.conf</primary></indexterm>
|
---|
498 | Configure OpenLDAP in preparation for the migration. An example
|
---|
499 | <filename>sladp.conf</filename> file is shown in <link linkend="sbentslapd"/>.
|
---|
500 | The <constant>rootpw</constant> value is an encrypted password string that can
|
---|
501 | be obtained by executing the <command>slappasswd</command> command.
|
---|
502 | </para></step>
|
---|
503 |
|
---|
504 | <example id="sbentslapd">
|
---|
505 | <title>NT4 Migration LDAP Server Configuration File: <filename>/etc/openldap/slapd.conf</filename> &smbmdash; Part A</title>
|
---|
506 | <screen>
|
---|
507 | include /etc/openldap/schema/core.schema
|
---|
508 | include /etc/openldap/schema/cosine.schema
|
---|
509 | include /etc/openldap/schema/inetorgperson.schema
|
---|
510 | include /etc/openldap/schema/nis.schema
|
---|
511 | include /etc/openldap/schema/samba3.schema
|
---|
512 |
|
---|
513 | pidfile /var/run/slapd/slapd.pid
|
---|
514 | argsfile /var/run/slapd/slapd.args
|
---|
515 |
|
---|
516 | access to dn.base=""
|
---|
517 | by self write
|
---|
518 | by * auth
|
---|
519 |
|
---|
520 | access to attr=userPassword
|
---|
521 | by self write
|
---|
522 | by * auth
|
---|
523 |
|
---|
524 | access to attr=shadowLastChange
|
---|
525 | by self write
|
---|
526 | by * read
|
---|
527 |
|
---|
528 | access to *
|
---|
529 | by * read
|
---|
530 | by anonymous auth
|
---|
531 | </screen>
|
---|
532 | </example>
|
---|
533 |
|
---|
534 | <example id="sbentslapd2">
|
---|
535 | <title>NT4 Migration LDAP Server Configuration File: <filename>/etc/openldap/slapd.conf</filename> &smbmdash; Part B</title>
|
---|
536 | <screen>
|
---|
537 | #loglevel 256
|
---|
538 |
|
---|
539 | #schemacheck on
|
---|
540 | idletimeout 30
|
---|
541 | #backend bdb
|
---|
542 | database bdb
|
---|
543 | checkpoint 1024 5
|
---|
544 | cachesize 10000
|
---|
545 |
|
---|
546 | suffix "dc=terpstra-world,dc=org"
|
---|
547 | rootdn "cn=Manager,dc=terpstra-world,dc=org"
|
---|
548 |
|
---|
549 | # rootpw = not24get
|
---|
550 | rootpw {SSHA}86kTavd9Dw3FAz6qzWTrCOKX/c0Qe+UV
|
---|
551 |
|
---|
552 | directory /var/lib/ldap
|
---|
553 |
|
---|
554 | # Indices to maintain
|
---|
555 | index objectClass eq
|
---|
556 | index cn pres,sub,eq
|
---|
557 | index sn pres,sub,eq
|
---|
558 | index uid pres,sub,eq
|
---|
559 | index displayName pres,sub,eq
|
---|
560 | index uidNumber eq
|
---|
561 | index gidNumber eq
|
---|
562 | index memberUID eq
|
---|
563 | index sambaSID eq
|
---|
564 | index sambaPrimaryGroupSID eq
|
---|
565 | index sambaDomainName eq
|
---|
566 | index default sub
|
---|
567 | </screen>
|
---|
568 | </example>
|
---|
569 |
|
---|
570 | <step><para>
|
---|
571 | <indexterm><primary>nss_ldap</primary></indexterm>
|
---|
572 | <indexterm><primary>/etc/ldap.conf</primary></indexterm>
|
---|
573 | Install the PADL <command>nss_ldap</command> tool set, then configure the <filename>/etc/ldap.conf</filename>
|
---|
574 | as shown in <link linkend="sbrntldapconf"/>.
|
---|
575 | </para></step>
|
---|
576 |
|
---|
577 | <example id="sbrntldapconf">
|
---|
578 | <title>NT4 Migration NSS LDAP File: <filename>/etc/ldap.conf</filename></title>
|
---|
579 | <screen>
|
---|
580 | host 127.0.0.1
|
---|
581 |
|
---|
582 | base dc=terpstra-world,dc=org
|
---|
583 |
|
---|
584 | ldap_version 3
|
---|
585 |
|
---|
586 | binddn cn=Manager,dc=terpstra-world,dc=org
|
---|
587 | bindpw not24get
|
---|
588 |
|
---|
589 | pam_password exop
|
---|
590 |
|
---|
591 | nss_base_passwd ou=People,dc=terpstra-world,dc=org?one
|
---|
592 | nss_base_shadow ou=People,dc=terpstra-world,dc=org?one
|
---|
593 | nss_base_group ou=Groups,dc=terpstra-world,dc=org?one
|
---|
594 |
|
---|
595 | ssl off
|
---|
596 | </screen>
|
---|
597 | </example>
|
---|
598 |
|
---|
599 | <step><para>
|
---|
600 | <indexterm><primary>/etc/nsswitch.conf</primary></indexterm>
|
---|
601 | Edit the <filename>/etc/nsswitch.conf</filename> file so it has the entries shown
|
---|
602 | in <link linkend="sbentnss"/>. Note that the LDAP entries have been commented out.
|
---|
603 | This is deliberate. If these entries are active (not commented out), and the
|
---|
604 | <filename>/etc/ldap.conf</filename> file has been configured, when the LDAP server
|
---|
605 | is started, the process of starting the LDAP server will cause LDAP lookups. This
|
---|
606 | causes the LDAP server <command>slapd</command> to hang because it finds port 389
|
---|
607 | open and therefore cannot gain exclusive control of it. By commenting these entries
|
---|
608 | out, it is possible to avoid this gridlock situation and thus the overall
|
---|
609 | installation and configuration will progress more smoothly.
|
---|
610 | </para></step>
|
---|
611 |
|
---|
612 | <example id="sbentnss">
|
---|
613 | <title>NT4 Migration NSS Control File: <filename>/etc/nsswitch.conf</filename> (Stage:1)</title>
|
---|
614 | <screen>
|
---|
615 | passwd: files #ldap
|
---|
616 | shadow: files #ldap
|
---|
617 | group: files #ldap
|
---|
618 |
|
---|
619 | hosts: files dns wins
|
---|
620 | networks: files dns
|
---|
621 |
|
---|
622 | services: files
|
---|
623 | protocols: files
|
---|
624 | rpc: files
|
---|
625 | ethers: files
|
---|
626 | netmasks: files
|
---|
627 | netgroup: files
|
---|
628 | publickey: files
|
---|
629 |
|
---|
630 | bootparams: files
|
---|
631 | automount: files nis
|
---|
632 | aliases: files
|
---|
633 | #passwd_compat: ldap #Not needed.
|
---|
634 | #group_compat: ldap #Not needed.
|
---|
635 | </screen>
|
---|
636 | </example>
|
---|
637 |
|
---|
638 | <step><para>
|
---|
639 | Validate the the target NT4 PDC name is being correctly resolved to its IP address by
|
---|
640 | executing the following:
|
---|
641 | <screen>
|
---|
642 | &rootprompt; ping transgression
|
---|
643 | PING transgression.terpstra-world.org (192.168.1.5) 56(84) bytes of data.
|
---|
644 | 64 bytes from (192.168.1.5): icmp_seq=1 ttl=128 time=0.159 ms
|
---|
645 | 64 bytes from (192.168.1.5): icmp_seq=2 ttl=128 time=0.192 ms
|
---|
646 | 64 bytes from (192.168.1.5): icmp_seq=3 ttl=128 time=0.141 ms
|
---|
647 |
|
---|
648 | --- transgression.terpstra-world.org ping statistics ---
|
---|
649 | 3 packets transmitted, 3 received, 0% packet loss, time 2000ms
|
---|
650 | rtt min/avg/max/mdev = 0.141/0.164/0.192/0.021 ms
|
---|
651 | </screen>
|
---|
652 | Do not proceed to the next step if this step fails. It is imperative that the name of the PDC
|
---|
653 | can be resolved to its IP address. If this is broken, fix it.
|
---|
654 | </para></step>
|
---|
655 |
|
---|
656 | <step><para>
|
---|
657 | Pull the domain SID from the NT4 domain that is being migrated as follows:
|
---|
658 | <screen>
|
---|
659 | &rootprompt; net rpc getsid -S TRANGRESSION -U Administrator%not24get
|
---|
660 | Storing SID S-1-5-21-1385457007-882775198-1210191635 \
|
---|
661 | for Domain DAMNATION in secrets.tdb
|
---|
662 | </screen>
|
---|
663 | </para>
|
---|
664 |
|
---|
665 | <para>
|
---|
666 | Another way to obtain the domain SID from the target NT4 domain that is being
|
---|
667 | migrated to Samba-3 is by executing the following:
|
---|
668 | <screen>
|
---|
669 | &rootprompt; net rpc info -S TRANSGRESSION
|
---|
670 | </screen>
|
---|
671 | If this method is used, do not forget to store the SID obtained into the
|
---|
672 | <filename>secrets.tdb</filename> file. This can be done by executing:
|
---|
673 | <screen>
|
---|
674 | &rootprompt; net setlocalsid S-1-5-21-1385457007-882775198-1210191635
|
---|
675 | </screen>
|
---|
676 | </para></step>
|
---|
677 |
|
---|
678 | <step><para>
|
---|
679 | <indexterm><primary>Idealx</primary></indexterm>
|
---|
680 | <indexterm><primary>configure.pl</primary></indexterm>
|
---|
681 | <indexterm><primary>/opt/IDEALX/sbin</primary></indexterm>
|
---|
682 | <indexterm><primary>smbldap-tools</primary></indexterm>
|
---|
683 | Install the Idealx <command>smbldap-tools</command> software package, following
|
---|
684 | the instructions given in <link linkend="sbeidealx"/>. The resulting perl scripts
|
---|
685 | should be located in the <filename>/opt/IDEALX/sbin</filename> directory.
|
---|
686 | Change into that location, or wherever the scripts have been installed. Execute the
|
---|
687 | <filename>configure.pl</filename> script to configure the Idealx package for use.
|
---|
688 | Note: Use the domain SID obtained from the step above. The following is
|
---|
689 | an example configuration session:
|
---|
690 | <screen>
|
---|
691 | &rootprompt; ./configure.pl
|
---|
692 | -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
|
---|
693 | smbldap-tools script configuration
|
---|
694 | -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
|
---|
695 | Before starting, check
|
---|
696 | . if your samba controller is up and running.
|
---|
697 | . if the domain SID is defined
|
---|
698 | (you can get it with the 'net getlocalsid')
|
---|
699 |
|
---|
700 | . you can leave the configuration using the Crtl-c key combination
|
---|
701 | . empty value can be set with the "." character
|
---|
702 | -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
|
---|
703 | Looking for configuration files...
|
---|
704 |
|
---|
705 | Samba Config File Location [/etc/samba/smb.conf] >
|
---|
706 | smbldap Config file Location (global parameters)
|
---|
707 | [/etc/smbldap-tools/smbldap.conf] >
|
---|
708 | smbldap Config file Location (bind parameters)
|
---|
709 | [/etc/smbldap-tools/smbldap_bind.conf] >
|
---|
710 | -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
|
---|
711 | Let's start configuring the smbldap-tools scripts ...
|
---|
712 |
|
---|
713 | . workgroup name: name of the domain Samba act as a PDC
|
---|
714 | workgroup name [DAMNATION] >
|
---|
715 | . netbios name: netbios name of the samba controller
|
---|
716 | netbios name [MERLIN] >
|
---|
717 | . logon drive: local path to which the home directory
|
---|
718 | will be connected (for NT Workstations). Ex: 'H:'
|
---|
719 | logon drive [X:] > H:
|
---|
720 | . logon home: home directory location (for Win95/98 or NT Workstation)
|
---|
721 | (use %U as username) Ex:'\\MERLIN\home\%U'
|
---|
722 | logon home (leave blank if you don't want homeDirectory)
|
---|
723 | [\\MERLIN\home\%U] > \\%L\%U
|
---|
724 | . logon path: directory where roaming profiles are stored.
|
---|
725 | Ex:'\\MERLIN\profiles\%U'
|
---|
726 | logon path (leave blank if you don't want roaming profile)
|
---|
727 | [\\MERLIN\profiles\%U] > \\%L\profiles\%U
|
---|
728 | . home directory prefix (use %U as username) [/home/%U] >
|
---|
729 | /home/users/%U
|
---|
730 | . default user netlogon script (use %U as username)
|
---|
731 | [%U.cmd] > scripts\logon.cmd
|
---|
732 | default password validation time (time in days) [45] > 180
|
---|
733 | . ldap suffix [dc=terpstra-world,dc=org] >
|
---|
734 | . ldap group suffix [ou=Groups] >
|
---|
735 | . ldap user suffix [ou=People] >
|
---|
736 | . ldap machine suffix [ou=People] >
|
---|
737 | . Idmap suffix [ou=Idmap] >
|
---|
738 | . sambaUnixIdPooldn: object where you want to store the next uidNumber
|
---|
739 | and gidNumber available for new users and groups
|
---|
740 | sambaUnixIdPooldn object (relative to ${suffix})
|
---|
741 | [sambaDomainName=DAMNATION] >
|
---|
742 | . ldap master server:
|
---|
743 | IP address or DNS name of the master (writable) ldap server
|
---|
744 | ldap master server [] > 127.0.0.1
|
---|
745 | . ldap master port [389] >
|
---|
746 | . ldap master bind dn [cn=Manager,dc=terpstra-world,dc=org] >
|
---|
747 | . ldap master bind password [] >
|
---|
748 | . ldap slave server: IP address or DNS name of the slave ldap server:
|
---|
749 | can also be the master one
|
---|
750 | ldap slave server [] > 127.0.0.1
|
---|
751 | . ldap slave port [389] >
|
---|
752 | . ldap slave bind dn [cn=Manager,dc=terpstra-world,dc=org] >
|
---|
753 | . ldap slave bind password [] >
|
---|
754 | . ldap tls support (1/0) [0] >
|
---|
755 | . SID for domain DAMNATION: SID of the domain
|
---|
756 | (can be obtained with 'net getlocalsid MERLIN')
|
---|
757 | SID for domain DAMNATION []
|
---|
758 | > S-1-5-21-1385457007-882775198-1210191635
|
---|
759 | . unix password encryption: encryption used for unix passwords
|
---|
760 | unix password encryption (CRYPT, MD5, SMD5, SSHA, SHA) [SSHA] > MD5
|
---|
761 | . default user gidNumber [513] >
|
---|
762 | . default computer gidNumber [515] >
|
---|
763 | . default login shell [/bin/bash] >
|
---|
764 | . default domain name to append to mail address [] >
|
---|
765 | terpstra-world.org
|
---|
766 | -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
|
---|
767 | backup old configuration files:
|
---|
768 | /etc/smbldap-tools/smbldap.conf->
|
---|
769 | /etc/smbldap-tools/smbldap.conf.old
|
---|
770 | /etc/smbldap-tools/smbldap_bind.conf->
|
---|
771 | /etc/smbldap-tools/smbldap_bind.conf.old
|
---|
772 | writing new configuration file:
|
---|
773 | /etc/smbldap-tools/smbldap.conf done.
|
---|
774 | /etc/smbldap-tools/smbldap_bind.conf done.
|
---|
775 | </screen>
|
---|
776 | <indexterm><primary>sambaDomainName</primary></indexterm>
|
---|
777 | <indexterm><primary>NextFreeUnixId</primary></indexterm>
|
---|
778 | <indexterm><primary>updating smbldap-tools</primary></indexterm>
|
---|
779 | <indexterm><primary>smbldap-tools updating</primary></indexterm>
|
---|
780 | Note that the NT4 domain SID that was previously obtained was entered above. Also,
|
---|
781 | the sambaUnixIdPooldn object was specified as sambaDomainName=DAMNATION. This is
|
---|
782 | the location into which the Idealx smbldap-tools store the next available UID/GID
|
---|
783 | information. It is also where Samba stores domain specific information such as the
|
---|
784 | next RID, the SID, and so on. In older version of the smbldap-tools this information
|
---|
785 | was stored in the sambaUnixIdPooldn DIT location cn=NextFreeUnixId. Where smbldap-tools
|
---|
786 | are being upgraded to version 0.9.1 it is appropriate to update this to the new location
|
---|
787 | only if the directory information is also relocated.
|
---|
788 | </para></step>
|
---|
789 |
|
---|
790 | <step><para>
|
---|
791 | Start the LDAP server using the system interface script. On Novell SLES9
|
---|
792 | this is done as shown here:
|
---|
793 | <screen>
|
---|
794 | &rootprompt; rcldap start
|
---|
795 | </screen>
|
---|
796 | </para></step>
|
---|
797 |
|
---|
798 | <step><para>
|
---|
799 | Edit the <filename>/etc/nsswitch.conf</filename> file so it has the entries shown in
|
---|
800 | <link linkend="sbentnss2"/>. Note that the LDAP entries have now been uncommented.
|
---|
801 | </para></step>
|
---|
802 |
|
---|
803 | <example id="sbentnss2">
|
---|
804 | <title>NT4 Migration NSS Control File: <filename>/etc/nsswitch.conf</filename> (Stage:2)</title>
|
---|
805 | <screen>
|
---|
806 | passwd: files ldap
|
---|
807 | shadow: files ldap
|
---|
808 | group: files ldap
|
---|
809 |
|
---|
810 | hosts: files dns wins
|
---|
811 | networks: files dns
|
---|
812 |
|
---|
813 | services: files
|
---|
814 | protocols: files
|
---|
815 | rpc: files
|
---|
816 | ethers: files
|
---|
817 | netmasks: files
|
---|
818 | netgroup: files
|
---|
819 | publickey: files
|
---|
820 |
|
---|
821 | bootparams: files
|
---|
822 | automount: files nis
|
---|
823 | aliases: files
|
---|
824 | #passwd_compat: ldap #Not needed.
|
---|
825 | #group_compat: ldap #Not needed.
|
---|
826 | </screen>
|
---|
827 | </example>
|
---|
828 |
|
---|
829 | <step><para>
|
---|
830 | The LDAP management password must be installed into the <filename>secrets.tdb</filename>
|
---|
831 | file as follows:
|
---|
832 | <screen>
|
---|
833 | &rootprompt; smbpasswd -w not24get
|
---|
834 | Setting stored password for
|
---|
835 | "cn=Manager,dc=terpstra-world,dc=org" in secrets.tdb
|
---|
836 | </screen>
|
---|
837 | </para></step>
|
---|
838 |
|
---|
839 | <step><para>
|
---|
840 | Populate the LDAP directory as shown here:
|
---|
841 | <screen>
|
---|
842 | &rootprompt; /opt/IDEALX/sbin/smbldap-populate -a root -k 0 -m 0
|
---|
843 | Using workgroup name from sambaUnixIdPooldn (smbldap.conf):
|
---|
844 | sambaDomainName=DAMNATION
|
---|
845 | Using builtin directory structure
|
---|
846 | adding new entry: dc=terpstra-world,dc=org
|
---|
847 | adding new entry: ou=People,dc=terpstra-world,dc=org
|
---|
848 | adding new entry: ou=Groups,dc=terpstra-world,dc=org
|
---|
849 | entry ou=People,dc=terpstra-world,dc=org already exist.
|
---|
850 | adding new entry: ou=Idmap,dc=terpstra-world,dc=org
|
---|
851 | adding new entry: sambaDomainName=DAMNATION,dc=terpstra-world,dc=org
|
---|
852 | adding new entry: uid=root,ou=People,dc=terpstra-world,dc=org
|
---|
853 | adding new entry: uid=nobody,ou=People,dc=terpstra-world,dc=org
|
---|
854 | adding new entry: cn=Domain Admins,ou=Groups,dc=terpstra-world,dc=org
|
---|
855 | adding new entry: cn=Domain Users,ou=Groups,dc=terpstra-world,dc=org
|
---|
856 | adding new entry: cn=Domain Guests,ou=Groups,dc=terpstra-world,dc=org
|
---|
857 | adding new entry: cn=Domain Computers,ou=Groups,dc=terpstra-world,dc=org
|
---|
858 | adding new entry: cn=Administrators,ou=Groups,dc=terpstra-world,dc=org
|
---|
859 | adding new entry: cn=Print Operators,ou=Groups,dc=terpstra-world,dc=org
|
---|
860 | adding new entry: cn=Backup Operators,ou=Groups,dc=terpstra-world,dc=org
|
---|
861 | adding new entry: cn=Replicators,ou=Groups,dc=terpstra-world,dc=org
|
---|
862 | </screen>
|
---|
863 | The script tries to add the ou=People container twice, hence the error message.
|
---|
864 | This is expected behavior.
|
---|
865 | </para></step>
|
---|
866 |
|
---|
867 | <step><para>
|
---|
868 | <indexterm><primary>Novell SUSE SLES 9</primary></indexterm>
|
---|
869 | Restart the LDAP server following initialization of the LDAP directory. Execute the
|
---|
870 | system control script provided on your system. The following steps can be used on
|
---|
871 | Novell SUSE SLES 9:
|
---|
872 | <screen>
|
---|
873 | &rootprompt; rcldap restart
|
---|
874 | &rootprompt; chkconfig ldap on
|
---|
875 | </screen>
|
---|
876 | </para></step>
|
---|
877 |
|
---|
878 | <step><para>
|
---|
879 | Verify that the new user accounts that have been added to the LDAP directory can be
|
---|
880 | resolved as follows:
|
---|
881 | <screen>
|
---|
882 | &rootprompt; getent passwd
|
---|
883 | ...
|
---|
884 | nobody:x:65534:65533:nobody:/var/lib/nobody:/bin/bash
|
---|
885 | man:x:13:62:Manual pages viewer:/var/cache/man:/bin/bash
|
---|
886 | news:x:9:13:News system:/etc/news:/bin/bash
|
---|
887 | uucp:x:10:14:Unix-to-Unix CoPy system:/etc/uucp:/bin/bash
|
---|
888 | +::0:0:::
|
---|
889 | root:x:0:0:Netbios Domain Administrator:/home/users/root:/bin/false
|
---|
890 | nobody:x:999:514:nobody:/dev/null:/bin/false
|
---|
891 | </screen>
|
---|
892 | Now repeat this for the group accounts as shown here:
|
---|
893 | <screen>
|
---|
894 | &rootprompt; getent group
|
---|
895 | ...
|
---|
896 | nobody:x:65533:
|
---|
897 | nogroup:x:65534:nobody
|
---|
898 | users:x:100:
|
---|
899 | +::0:
|
---|
900 | Domain Admins:x:512:root
|
---|
901 | Domain Users:x:513:
|
---|
902 | Domain Guests:x:514:
|
---|
903 | Domain Computers:x:515:
|
---|
904 | Administrators:x:544:
|
---|
905 | Print Operators:x:550:
|
---|
906 | Backup Operators:x:551:
|
---|
907 | Replicators:x:552:
|
---|
908 | </screen>
|
---|
909 | In both cases the LDAP accounts follow the <quote>+::0:</quote> entry.
|
---|
910 | </para></step>
|
---|
911 |
|
---|
912 | <step><para>
|
---|
913 | Now it is time to join the Samba BDC to the target NT4 domain that is being
|
---|
914 | migrated to Samba-3 by executing the following:
|
---|
915 | <screen>
|
---|
916 | &rootprompt; net rpc join -S TRANSGRESSION -U Administrator%not24get
|
---|
917 | merlin:/opt/IDEALX/sbin # net rpc join -S TRANSGRESSION \
|
---|
918 | -U Administrator%not24get
|
---|
919 | Joined domain DAMNATION.
|
---|
920 | </screen>
|
---|
921 | </para></step>
|
---|
922 |
|
---|
923 | <step><para>
|
---|
924 | Set the new domain administrator (root) password for both UNIX and Windows as shown here:
|
---|
925 | <screen>
|
---|
926 | &rootprompt; /opt/IDEALX/sbin/smbldap-passwd root
|
---|
927 | Changing password for root
|
---|
928 | New password : ********
|
---|
929 | Retype new password : ********
|
---|
930 | </screen>
|
---|
931 | Note: During account migration, the Windows Administrator account will not be migrated
|
---|
932 | to the Samba server.
|
---|
933 | </para></step>
|
---|
934 |
|
---|
935 | <step><para>
|
---|
936 | Now validate that these accounts can be resolved using Samba's tools as
|
---|
937 | shown here for user accounts:
|
---|
938 | <screen>
|
---|
939 | &rootprompt; pdbedit -Lw
|
---|
940 | root:0:84B0D8E14D158FF8417EAF50CFAC29C3:
|
---|
941 | AF6DD3FD4E2EA8BDE1695A3F05EFBF52:[U ]:LCT-425F6467:
|
---|
942 | nobody:65534:NO PASSWORDXXXXXXXXXXXXXXXXXXXXX:
|
---|
943 | NO PASSWORDXXXXXXXXXXXXXXXXXXXXX:[NU ]:LCT-00000000:
|
---|
944 | </screen>
|
---|
945 | Now complete the following step to validate that group account mappings have
|
---|
946 | been correctly set:
|
---|
947 | <screen>
|
---|
948 | &rootprompt; net groupmap list
|
---|
949 | Domain Admins (S-1-5-21-1385457007-882775198-1210191635-512)
|
---|
950 | -> Domain Admins
|
---|
951 | Domain Users (S-1-5-21-1385457007-882775198-1210191635-513)
|
---|
952 | -> Domain Users
|
---|
953 | Domain Guests (S-1-5-21-1385457007-882775198-1210191635-514)
|
---|
954 | -> Domain Guests
|
---|
955 | Domain Computers (S-1-5-21-1385457007-882775198-1210191635-515)
|
---|
956 | -> Domain Computers
|
---|
957 | Administrators (S-1-5-32-544) -> Administrators
|
---|
958 | Print Operators (S-1-5-32-550) -> Print Operators
|
---|
959 | Backup Operators (S-1-5-32-551) -> Backup Operators
|
---|
960 | Replicators (S-1-5-32-552) -> Replicators
|
---|
961 | </screen>
|
---|
962 | These are the expected results for a correctly configured system.
|
---|
963 | </para></step>
|
---|
964 |
|
---|
965 | <step><para>
|
---|
966 | Commence migration as shown here:
|
---|
967 | <screen>
|
---|
968 | &rootprompt; net rpc vampire -S TRANSGRESSION \
|
---|
969 | -U Administrator%not24get > /tmp/vampire.log 2>1
|
---|
970 | </screen>
|
---|
971 | Check the vampire log to confirm that only expected errors have been
|
---|
972 | reported. See <link linkend="sbevam1"/>.
|
---|
973 | </para></step>
|
---|
974 |
|
---|
975 | <step><para>
|
---|
976 | The migration of user accounts can be quickly validated as follows:
|
---|
977 | <screen>
|
---|
978 | &rootprompt; pdbedit -Lw
|
---|
979 | root:0:84B0D8E14D158FF8417EAF50CFAC29C3:...
|
---|
980 | nobody:65534:NO PASSWORDXXXXXXXXXXXXXXXXXXXXX:...
|
---|
981 | Administrator:0:84B0D8E14D158FF8417EAF50CFAC29C3:...
|
---|
982 | Guest:1:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX:...
|
---|
983 | TRANSGRESSION$:2:CC044B748CEE294CE76B6B0D1B86C1A8:...
|
---|
984 | IUSR_TRANSGRESSION:3:64046AC81B056C375F9537FC409085F8:...
|
---|
985 | MIDEARTH$:4:E93186E5819706D2AAD3B435B51404EE:...
|
---|
986 | atrickhoffer:5:DC08CFE0C12B2867352502E32A407F23:...
|
---|
987 | barryf:6:B829BCDE01FF24376E45D5F10408CFBD:...
|
---|
988 | fsellerby:7:6A97CBEBE8F9826B417EAF50CFAC29C3:...
|
---|
989 | gdaison:8:48F6A8C8A900024351DA8C2061C5F1D3:...
|
---|
990 | hrambotham:9:7330D9EA0964465EAAD3B435B51404EE:...
|
---|
991 | jrhapsody:10:ACBA7D207E2BA35D9BD41A26B01626BD:...
|
---|
992 | maryk:11:293B5A4CA41F6CA1A7D80430B8342B73:...
|
---|
993 | jacko:12:8E8982D86BD037C364BBD09A598E07AD:...
|
---|
994 | bridge:13:0D2CA7D2BE67FE2193BE3A377C968336:...
|
---|
995 | sharpec:14:8841A75CAC19D2855D8B73B1F4D430F8:...
|
---|
996 | jimbo:15:6E8BDC904FD9EC5C17306D272A9441BB:...
|
---|
997 | dhenwick:16:D1694A03C33584BDAAD3B435B51404EE:...
|
---|
998 | dork:17:69E2D19E69A593D5AAD3B435B51404EE:...
|
---|
999 | blue:18:E355EBF9559979FEAAD3B435B51404EE:...
|
---|
1000 | billw:19:EE35C3481CF7F7DB484448BC86A641A5:...
|
---|
1001 | rfreshmill:20:7EC033B58661B60CAAD3B435B51404EE:...
|
---|
1002 | MAGGOT$:21:A3B9334765AD30F7AAD3B435B51404EE:...
|
---|
1003 | TRENTWARE$:22:1D92C8DD5E7F0DDF93BE3A377C968336:...
|
---|
1004 | MORTON$:23:89342E69DCA9D3F8AAD3B435B51404EE:...
|
---|
1005 | NARM$:24:2B93E2D1D25448BDAAD3B435B51404EE:...
|
---|
1006 | LAPDOG$:25:14AA535885120943AAD3B435B51404EE:...
|
---|
1007 | SCAVENGER$:26:B6288EB6D147B56F8963805A19B0ED49:...
|
---|
1008 | merlin$:27:820C50523F368C54AB9D85AE603AD09D:...
|
---|
1009 | </screen>
|
---|
1010 | </para></step>
|
---|
1011 |
|
---|
1012 | <step><para>
|
---|
1013 | The mapping of UNIX and Windows groups can be validated as show here:
|
---|
1014 | <screen>
|
---|
1015 | &rootprompt; net groupmap list
|
---|
1016 | Domain Admins (S-1-5-21-1385457007-882775198-1210191635-512)
|
---|
1017 | -> Domain Admins
|
---|
1018 | Domain Users (S-1-5-21-1385457007-882775198-1210191635-513)
|
---|
1019 | -> Domain Users
|
---|
1020 | Domain Guests (S-1-5-21-1385457007-882775198-1210191635-514)
|
---|
1021 | -> Domain Guests
|
---|
1022 | Domain Computers (S-1-5-21-1385457007-882775198-1210191635-515)
|
---|
1023 | -> Domain Computers
|
---|
1024 | Administrators (S-1-5-32-544) -> Administrators
|
---|
1025 | Print Operators (S-1-5-32-550) -> Print Operators
|
---|
1026 | Backup Operators (S-1-5-32-551) -> Backup Operators
|
---|
1027 | Replicator (S-1-5-32-552) -> Replicators
|
---|
1028 | Engineers (S-1-5-21-1385457007-882775198-1210191635-1020) -> Engineers
|
---|
1029 | Marketoids (S-1-5-21-1385457007-882775198-1210191635-1022) -> Marketoids
|
---|
1030 | Gnomes (S-1-5-21-1385457007-882775198-1210191635-1023) -> Gnomes
|
---|
1031 | Catalyst (S-1-5-21-1385457007-882775198-1210191635-1024) -> Catalyst
|
---|
1032 | Recieving (S-1-5-21-1385457007-882775198-1210191635-1025) -> Recieving
|
---|
1033 | Rubberboot (S-1-5-21-1385457007-882775198-1210191635-1026) -> Rubberboot
|
---|
1034 | Sales (S-1-5-21-1385457007-882775198-1210191635-1027) -> Sales
|
---|
1035 | Accounting (S-1-5-21-1385457007-882775198-1210191635-1028) -> Accounting
|
---|
1036 | Shipping (S-1-5-21-1385457007-882775198-1210191635-1029) -> Shipping
|
---|
1037 | Account Operators (S-1-5-32-548) -> Account Operators
|
---|
1038 | Guests (S-1-5-32-546) -> Guests
|
---|
1039 | Server Operators (S-1-5-32-549) -> Server Operators
|
---|
1040 | Users (S-1-5-32-545) -> Users
|
---|
1041 | </screen>
|
---|
1042 | It is of vital importance that the domain SID portions of all group
|
---|
1043 | accounts are identical.
|
---|
1044 | </para></step>
|
---|
1045 |
|
---|
1046 | <step><para>
|
---|
1047 | The final responsibility in the migration process is to create identical
|
---|
1048 | shares and printing resources on the new Samba-3 server, copy all data
|
---|
1049 | across, set up privileges, and set share and file/directory access controls.
|
---|
1050 | </para></step>
|
---|
1051 |
|
---|
1052 | <step><para>
|
---|
1053 | <indexterm><primary>domain master</primary></indexterm>
|
---|
1054 | <indexterm><primary>PDC</primary></indexterm>
|
---|
1055 | Edit the &smb.conf; file to reset the parameter
|
---|
1056 | <smbconfoption name="domain master">Yes</smbconfoption> so that
|
---|
1057 | the Samba server functions as a PDC for the purpose of migration.
|
---|
1058 | Also, uncomment the deletion scripts so they will now be fully functional,
|
---|
1059 | enable the <parameter>wins support = yes</parameter> parameter and
|
---|
1060 | comment out the <parameter>wins server</parameter>. Validate the configuration
|
---|
1061 | with the <command>testparm</command> utility as shown here:
|
---|
1062 | <screen>
|
---|
1063 | &rootprompt; testparm
|
---|
1064 | Load smb config files from /etc/samba/smb.conf
|
---|
1065 | Processing section "[apps]"
|
---|
1066 | Processing section "[media]"
|
---|
1067 | Processing section "[homes]"
|
---|
1068 | Processing section "[printers]"
|
---|
1069 | Processing section "[netlogon]"
|
---|
1070 | Processing section "[profiles]"
|
---|
1071 | Processing section "[profdata]"
|
---|
1072 | Processing section "[print$]"
|
---|
1073 | Loaded services file OK.
|
---|
1074 | Server role: ROLE_DOMAIN_PDC
|
---|
1075 | Press enter to see a dump of your service definitions
|
---|
1076 | </screen>
|
---|
1077 | </para></step>
|
---|
1078 |
|
---|
1079 | <step><para>
|
---|
1080 | Now shut down the old NT4 PDC. Only when the old NT4 PDC and all
|
---|
1081 | NT4 BDCs have been shut down can the Samba-3 PDC be started.
|
---|
1082 | </para></step>
|
---|
1083 |
|
---|
1084 | <step><para>
|
---|
1085 | All workstations should function as they did with the old NT4 PDC. All
|
---|
1086 | interdomain trust accounts should remain in place and fully functional.
|
---|
1087 | All machine accounts and user logon accounts should also function correctly.
|
---|
1088 | </para></step>
|
---|
1089 |
|
---|
1090 | <step><para>
|
---|
1091 | The configuration of Samba-3 BDC servers can be accomplished now or at any
|
---|
1092 | convenient time in the future. Please refer to the carefully detailed process
|
---|
1093 | for doing so is outlined in <link linkend="sbehap-bldg1"/>.
|
---|
1094 | </para></step>
|
---|
1095 |
|
---|
1096 | </procedure>
|
---|
1097 |
|
---|
1098 | <sect3 id="sbevam1">
|
---|
1099 | <title>Migration Log Validation</title>
|
---|
1100 |
|
---|
1101 | <para>
|
---|
1102 | The following <filename>vampire.log</filename> file is typical of a valid migration.
|
---|
1103 | <screen>
|
---|
1104 | adding user Administrator to group Domain Admins
|
---|
1105 | adding user atrickhoffer to group Engineers
|
---|
1106 | adding user dhenwick to group Engineers
|
---|
1107 | adding user dork to group Engineers
|
---|
1108 | adding user rfreshmill to group Marketoids
|
---|
1109 | adding user jacko to group Gnomes
|
---|
1110 | adding user jimbo to group Gnomes
|
---|
1111 | adding user maryk to group Gnomes
|
---|
1112 | adding user gdaison to group Gnomes
|
---|
1113 | adding user dhenwick to group Catalyst
|
---|
1114 | adding user jacko to group Catalyst
|
---|
1115 | adding user jacko to group Recieving
|
---|
1116 | adding user blue to group Recieving
|
---|
1117 | adding user hrambotham to group Rubberboot
|
---|
1118 | adding user billw to group Sales
|
---|
1119 | adding user bridge to group Sales
|
---|
1120 | adding user jrhapsody to group Sales
|
---|
1121 | adding user maryk to group Sales
|
---|
1122 | adding user rfreshmill to group Sales
|
---|
1123 | adding user fsellerby to group Sales
|
---|
1124 | adding user sharpec to group Sales
|
---|
1125 | adding user jimbo to group Accounting
|
---|
1126 | adding user gdaison to group Accounting
|
---|
1127 | adding user jacko to group Shipping
|
---|
1128 | adding user blue to group Shipping
|
---|
1129 | Fetching DOMAIN database
|
---|
1130 | Creating unix group: 'Engineers'
|
---|
1131 | Creating unix group: 'Marketoids'
|
---|
1132 | Creating unix group: 'Gnomes'
|
---|
1133 | Creating unix group: 'Catalyst'
|
---|
1134 | Creating unix group: 'Recieving'
|
---|
1135 | Creating unix group: 'Rubberboot'
|
---|
1136 | Creating unix group: 'Sales'
|
---|
1137 | Creating unix group: 'Accounting'
|
---|
1138 | Creating unix group: 'Shipping'
|
---|
1139 | Creating account: Administrator
|
---|
1140 | Creating account: Guest
|
---|
1141 | Creating account: TRANSGRESSION$
|
---|
1142 | Creating account: IUSR_TRANSGRESSION
|
---|
1143 | Creating account: MIDEARTH$
|
---|
1144 | Creating account: atrickhoffer
|
---|
1145 | Creating account: barryf
|
---|
1146 | Creating account: fsellerby
|
---|
1147 | Creating account: gdaison
|
---|
1148 | Creating account: hrambotham
|
---|
1149 | Creating account: jrhapsody
|
---|
1150 | Creating account: maryk
|
---|
1151 | Creating account: jacko
|
---|
1152 | Creating account: bridge
|
---|
1153 | Creating account: sharpec
|
---|
1154 | Creating account: jimbo
|
---|
1155 | Creating account: dhenwick
|
---|
1156 | Creating account: dork
|
---|
1157 | Creating account: blue
|
---|
1158 | Creating account: billw
|
---|
1159 | Creating account: rfreshmill
|
---|
1160 | Creating account: MAGGOT$
|
---|
1161 | Creating account: TRENTWARE$
|
---|
1162 | Creating account: MORTON$
|
---|
1163 | Creating account: NARM$
|
---|
1164 | Creating account: LAPDOG$
|
---|
1165 | Creating account: SCAVENGER$
|
---|
1166 | Creating account: merlin$
|
---|
1167 | Group members of Domain Admins: Administrator,
|
---|
1168 | Group members of Domain Users: Administrator(primary),
|
---|
1169 | TRANSGRESSION$(primary),IUSR_TRANSGRESSION(primary),
|
---|
1170 | MIDEARTH$(primary),atrickhoffer(primary),barryf(primary),
|
---|
1171 | fsellerby(primary),gdaison(primary),hrambotham(primary),
|
---|
1172 | jrhapsody(primary),maryk(primary),jacko(primary),bridge(primary),
|
---|
1173 | sharpec(primary),jimbo(primary),dhenwick(primary),dork(primary),
|
---|
1174 | blue(primary),billw(primary),rfreshmill(primary),MAGGOT$(primary),
|
---|
1175 | TRENTWARE$(primary),MORTON$(primary),NARM$(primary),
|
---|
1176 | LAPDOG$(primary),SCAVENGER$(primary),merlin$(primary),
|
---|
1177 | Group members of Domain Guests: Guest(primary),
|
---|
1178 | Group members of Engineers: atrickhoffer,dhenwick,dork,
|
---|
1179 | Group members of Marketoids: rfreshmill,
|
---|
1180 | Group members of Gnomes: jacko,jimbo,maryk,gdaison,
|
---|
1181 | Group members of Catalyst: dhenwick,jacko,
|
---|
1182 | Group members of Recieving: jacko,blue,
|
---|
1183 | Group members of Rubberboot: hrambotham,
|
---|
1184 | Group members of Sales: billw,bridge,jrhapsody,maryk,
|
---|
1185 | rfreshmill,fsellerby,sharpec,
|
---|
1186 | Group members of Accounting: jimbo,gdaison,
|
---|
1187 | Group members of Shipping: jacko,blue,
|
---|
1188 | Fetching BUILTIN database
|
---|
1189 | skipping SAM_DOMAIN_INFO delta for 'Builtin' (is not my domain)
|
---|
1190 | Creating unix group: 'Account Operators'
|
---|
1191 | Creating unix group: 'Guests'
|
---|
1192 | Creating unix group: 'Server Operators'
|
---|
1193 | Creating unix group: 'Users'
|
---|
1194 | </screen>
|
---|
1195 | </para>
|
---|
1196 |
|
---|
1197 | </sect3>
|
---|
1198 |
|
---|
1199 | </sect2>
|
---|
1200 |
|
---|
1201 | <sect2>
|
---|
1202 | <title>NT4 Migration Using tdbsam Backend</title>
|
---|
1203 |
|
---|
1204 | <para>
|
---|
1205 | In this example, we change the domain name of the NT4 server from
|
---|
1206 | <constant>DRUGPREP</constant> to <constant>MEGANET</constant> prior to the use
|
---|
1207 | of the vampire (migration) tool. This migration process makes use of Linux system tools
|
---|
1208 | (like <command>useradd</command>) to add the accounts that are migrated into the
|
---|
1209 | UNIX/Linux <filename>/etc/passwd</filename> and <filename>/etc/group</filename>
|
---|
1210 | databases. These entries must therefore be present, and correct options specified,
|
---|
1211 | in your &smb.conf; file, or else the migration does not work as it should.
|
---|
1212 | </para>
|
---|
1213 |
|
---|
1214 | <procedure>
|
---|
1215 | <title>Migration Steps Using tdbsam</title>
|
---|
1216 |
|
---|
1217 | <step><para>
|
---|
1218 | Prepare a Samba-3 server precisely per the instructions shown in <link linkend="Big500users"/>.
|
---|
1219 | Set the workgroup name to <constant>MEGANET</constant>.
|
---|
1220 | </para></step>
|
---|
1221 |
|
---|
1222 | <step><para><indexterm>
|
---|
1223 | <primary>domain master</primary>
|
---|
1224 | </indexterm><indexterm>
|
---|
1225 | <primary>BDC</primary>
|
---|
1226 | </indexterm>
|
---|
1227 | Edit the &smb.conf; file to temporarily change the parameter
|
---|
1228 | <smbconfoption name="domain master">No</smbconfoption> so
|
---|
1229 | the Samba server functions as a BDC for the purpose of migration.
|
---|
1230 | </para></step>
|
---|
1231 |
|
---|
1232 | <step><para>
|
---|
1233 | Start Samba as you have done previously.
|
---|
1234 | </para></step>
|
---|
1235 |
|
---|
1236 | <step><para><indexterm>
|
---|
1237 | <primary>net</primary>
|
---|
1238 | <secondary>rpc</secondary>
|
---|
1239 | <tertiary>join</tertiary>
|
---|
1240 | </indexterm>
|
---|
1241 | Join the NT4 Domain as a BDC, as shown here:
|
---|
1242 | <screen>
|
---|
1243 | &rootprompt; net rpc join -S oldnt4pdc -W MEGANET -UAdministrator%not24get
|
---|
1244 | Joined domain MEGANET.
|
---|
1245 | </screen>
|
---|
1246 | </para></step>
|
---|
1247 |
|
---|
1248 | <step><para><indexterm>
|
---|
1249 | <primary>net</primary>
|
---|
1250 | <secondary>rpc</secondary>
|
---|
1251 | <tertiary>vampire</tertiary>
|
---|
1252 | </indexterm>
|
---|
1253 | You may vampire the accounts from the NT4 PDC by executing the command, as shown here:
|
---|
1254 | <screen>
|
---|
1255 | &rootprompt; net rpc vampire -S oldnt4pdc -U Administrator%not24get
|
---|
1256 | Fetching DOMAIN database
|
---|
1257 | SAM_DELTA_DOMAIN_INFO not handled
|
---|
1258 | Creating unix group: 'Domain Admins'
|
---|
1259 | Creating unix group: 'Domain Users'
|
---|
1260 | Creating unix group: 'Domain Guests'
|
---|
1261 | Creating unix group: 'Engineers'
|
---|
1262 | Creating unix group: 'Marketoids'
|
---|
1263 | Creating unix group: 'Account Operators'
|
---|
1264 | Creating unix group: 'Administrators'
|
---|
1265 | Creating unix group: 'Backup Operators'
|
---|
1266 | Creating unix group: 'Guests'
|
---|
1267 | Creating unix group: 'Print Operators'
|
---|
1268 | Creating unix group: 'Replicator'
|
---|
1269 | Creating unix group: 'Server Operators'
|
---|
1270 | Creating unix group: 'Users'
|
---|
1271 | Creating account: Administrator
|
---|
1272 | Creating account: Guest
|
---|
1273 | Creating account: oldnt4pdc$
|
---|
1274 | Creating account: jacko
|
---|
1275 | Creating account: maryk
|
---|
1276 | Creating account: bridge
|
---|
1277 | Creating account: sharpec
|
---|
1278 | Creating account: jimbo
|
---|
1279 | Creating account: dhenwick
|
---|
1280 | Creating account: dork
|
---|
1281 | Creating account: blue
|
---|
1282 | Creating account: billw
|
---|
1283 | Creating account: massive$
|
---|
1284 | Group members of Engineers: Administrator,
|
---|
1285 | sharpec(primary),bridge,billw(primary),dhenwick
|
---|
1286 | Group members of Marketoids: Administrator,jacko(primary),
|
---|
1287 | maryk(primary),jimbo,blue(primary),dork(primary)
|
---|
1288 | Creating unix group: 'Gnomes'
|
---|
1289 | Fetching BUILTIN database
|
---|
1290 | SAM_DELTA_DOMAIN_INFO not handled
|
---|
1291 | </screen>
|
---|
1292 | </para></step>
|
---|
1293 |
|
---|
1294 | <step><para><indexterm>
|
---|
1295 | <primary>pdbedit</primary>
|
---|
1296 | </indexterm>
|
---|
1297 | At this point, we can validate our migration. Let's look at the accounts
|
---|
1298 | in the form in which they are seen in a smbpasswd file. This achieves that:
|
---|
1299 | <screen>
|
---|
1300 | &rootprompt; pdbedit -Lw
|
---|
1301 | Administrator:505:84B0D8E14D158FF8417EAF50CFAC29C3:
|
---|
1302 | AF6DD3FD4E2EA8BDE1695A3F05EFBF52:[UX ]:LCT-3DF7AA9F:
|
---|
1303 | jimbo:512:6E9A2A51F64A1BD5C187B8085FE1D9DF:
|
---|
1304 | CDF7E305E639966E489A0CEFB95EE5E0:[UX ]:LCT-3E9362BC:
|
---|
1305 | sharpec:511:E4301A7CD8FDD1EC6BBF9BC19CDF8151:
|
---|
1306 | 7000255938831D5B948C95C1931534C5:[UX ]:LCT-3E8B42C4:
|
---|
1307 | dhenwick:513:DCD8886141E3F892AAD3B435B51404EE:
|
---|
1308 | 2DB36465949CB938DD98C312EFDC2639:[UX ]:LCT-3E939F41:
|
---|
1309 | bridge:510:3FE6873A43101B46417EAF50CFAC29C3:
|
---|
1310 | 891741F481AF111B4CAA09A94016BD01:[UX ]:LCT-3E8B4291:
|
---|
1311 | blue:515:256D41D2559BB3D2AAD3B435B51404EE:
|
---|
1312 | 9CCADDA4F7D281DD0FAD321478C6F971:[UX ]:LCT-3E939FDC:
|
---|
1313 | diamond$:517:6C8E7B64EDCDBC4218B6345447A4454B:
|
---|
1314 | 3323AC63C666CFAACB60C13F65D54E9A:[S ]:LCT-00000000:
|
---|
1315 | oldnt4pdc$:507:3E39430CDCABB5B09ED320D0448AE568:
|
---|
1316 | 95DBAF885854A919C7C7E671060478B9:[S ]:LCT-3DF7AA9F:
|
---|
1317 | Guest:506:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX:
|
---|
1318 | XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX:[DUX ]:LCT-3E93A008:
|
---|
1319 | billw:516:85380CA7C21B6EBE168C8150662AF11B:
|
---|
1320 | 5D7478508293709937E55FB5FBA14C17:[UX ]:LCT-3FED7CA1:
|
---|
1321 | dork:514:78C70DDEC35A35B5AAD3B435B51404EE:
|
---|
1322 | 0AD886E015AC595EC0AF40E6C9689E1A:[UX ]:LCT-3E939F9A:
|
---|
1323 | jacko:508:BC472F3BF9A0A5F63832C92FC614B7D1:
|
---|
1324 | 0C6822AAF85E86600A40DC73E40D06D5:[UX ]:LCT-3E8B4242:
|
---|
1325 | maryk:509:3636AB7E12EBE79AB79AE2610DD89D4C:
|
---|
1326 | CF271B744F7A55AFDA277FF88D80C527:[UX ]:LCT-3E8B4270:
|
---|
1327 | </screen>
|
---|
1328 | </para></step>
|
---|
1329 |
|
---|
1330 | <step><para><indexterm>
|
---|
1331 | <primary>pdbedit</primary>
|
---|
1332 | </indexterm>
|
---|
1333 | An expanded view of a user account entry shows more of what was
|
---|
1334 | obtained from the NT4 PDC:
|
---|
1335 | <screen>
|
---|
1336 | sleeth:~ # pdbedit -Lv maryk
|
---|
1337 | Unix username: maryk
|
---|
1338 | NT username: maryk
|
---|
1339 | Account Flags: [UX ]
|
---|
1340 | User SID: S-1-5-21-1988699175-926296742-1295600288-1003
|
---|
1341 | Primary Group SID: S-1-5-21-1988699175-926296742-1295600288-1007
|
---|
1342 | Full Name: Mary Kathleen
|
---|
1343 | Home Directory: \\diamond\maryk
|
---|
1344 | HomeDir Drive: X:
|
---|
1345 | Logon Script: scripts\logon.bat
|
---|
1346 | Profile Path: \\diamond\profiles\maryk
|
---|
1347 | Domain: MEGANET
|
---|
1348 | Account desc: Peace Maker
|
---|
1349 | Workstations:
|
---|
1350 | Munged dial:
|
---|
1351 | Logon time: 0
|
---|
1352 | Logoff time: Mon, 18 Jan 2038 20:14:07 GMT
|
---|
1353 | Kickoff time: Mon, 18 Jan 2038 20:14:07 GMT
|
---|
1354 | Password last set: Wed, 02 Apr 2003 13:05:04 GMT
|
---|
1355 | Password can change: 0
|
---|
1356 | Password must change: Mon, 18 Jan 2038 20:14:07 GMT
|
---|
1357 | </screen>
|
---|
1358 | </para></step>
|
---|
1359 |
|
---|
1360 | <step><para><indexterm>
|
---|
1361 | <primary>net</primary>
|
---|
1362 | <secondary>group</secondary>
|
---|
1363 | </indexterm>
|
---|
1364 | The following command lists the long names of the groups that have been
|
---|
1365 | imported (vampired) from the NT4 PDC:
|
---|
1366 | <screen>
|
---|
1367 | &rootprompt; net group -l -Uroot%not24get -Smassive
|
---|
1368 |
|
---|
1369 | Group name Comment
|
---|
1370 | -----------------------------
|
---|
1371 | Engineers Snake Oil Engineers
|
---|
1372 | Marketoids Untrustworthy Hype Vendors
|
---|
1373 | Gnomes Plain Vanilla Garden Gnomes
|
---|
1374 | Replicator Supports file replication in a domain
|
---|
1375 | Guests Users granted guest access to the computer/domain
|
---|
1376 | Administrators Members can fully administer the computer/domain
|
---|
1377 | Users Ordinary users
|
---|
1378 | </screen>
|
---|
1379 | Everything looks well and in order.
|
---|
1380 | </para></step>
|
---|
1381 |
|
---|
1382 | <step><para><indexterm>
|
---|
1383 | <primary>domain master</primary>
|
---|
1384 | </indexterm><indexterm>
|
---|
1385 | <primary>PDC</primary>
|
---|
1386 | </indexterm>
|
---|
1387 | Edit the &smb.conf; file to reset the parameter
|
---|
1388 | <smbconfoption name="domain master">Yes</smbconfoption> so
|
---|
1389 | the Samba server functions as a PDC for the purpose of migration.
|
---|
1390 | </para></step>
|
---|
1391 | </procedure>
|
---|
1392 | </sect2>
|
---|
1393 |
|
---|
1394 | <sect2>
|
---|
1395 | <title>Key Points Learned</title>
|
---|
1396 |
|
---|
1397 | <para>
|
---|
1398 | Migration of an NT4 PDC database to a Samba-3 PDC is possible.
|
---|
1399 | </para>
|
---|
1400 |
|
---|
1401 | <itemizedlist>
|
---|
1402 | <listitem><para>
|
---|
1403 | An LDAP backend is a suitable vehicle for NT4 migrations.
|
---|
1404 | </para></listitem>
|
---|
1405 |
|
---|
1406 | <listitem><para>
|
---|
1407 | A tdbsam backend can be used to perform a migration.
|
---|
1408 | </para></listitem>
|
---|
1409 |
|
---|
1410 | <listitem><para>
|
---|
1411 | Multiple NT4 domains can be merged into a single Samba-3
|
---|
1412 | domain.
|
---|
1413 | </para></listitem>
|
---|
1414 |
|
---|
1415 | <listitem><para>
|
---|
1416 | The net Samba-3 domain most likely requires some
|
---|
1417 | administration and updating before going live.
|
---|
1418 | </para></listitem>
|
---|
1419 | </itemizedlist>
|
---|
1420 |
|
---|
1421 | </sect2>
|
---|
1422 |
|
---|
1423 | </sect1>
|
---|
1424 |
|
---|
1425 | <sect1>
|
---|
1426 | <title>Questions and Answers</title>
|
---|
1427 |
|
---|
1428 | <para>
|
---|
1429 | </para>
|
---|
1430 |
|
---|
1431 | <qandaset defaultlabel="chap08qa" type="number">
|
---|
1432 | <qandaentry>
|
---|
1433 | <question>
|
---|
1434 |
|
---|
1435 | <para><indexterm>
|
---|
1436 | <primary>clean database</primary>
|
---|
1437 | </indexterm>
|
---|
1438 | Why must I start each migration with a clean database?
|
---|
1439 | </para>
|
---|
1440 |
|
---|
1441 | </question>
|
---|
1442 | <answer>
|
---|
1443 |
|
---|
1444 | <para><indexterm>
|
---|
1445 | <primary>merge</primary>
|
---|
1446 | </indexterm>
|
---|
1447 | This is a recommendation that permits the data from each NT4 domain to
|
---|
1448 | be kept separate until you are ready to merge them. Also, if you do not start with a clean database,
|
---|
1449 | you may find errors due to users or groups from multiple domains having the
|
---|
1450 | same name but different SIDs. It is better to permit each migration to complete
|
---|
1451 | without undue errors and then to handle the merging of vampired data under
|
---|
1452 | proper supervision.
|
---|
1453 | </para>
|
---|
1454 |
|
---|
1455 | </answer>
|
---|
1456 | </qandaentry>
|
---|
1457 |
|
---|
1458 | <qandaentry>
|
---|
1459 | <question>
|
---|
1460 |
|
---|
1461 | <para><indexterm>
|
---|
1462 | <primary>Domain SID</primary>
|
---|
1463 | </indexterm>
|
---|
1464 | Is it possible to set my domain SID to anything I like?
|
---|
1465 | </para>
|
---|
1466 |
|
---|
1467 | </question>
|
---|
1468 | <answer>
|
---|
1469 |
|
---|
1470 | <para><indexterm>
|
---|
1471 | <primary>auto-generated SID</primary>
|
---|
1472 | </indexterm><indexterm>
|
---|
1473 | <primary>SID</primary>
|
---|
1474 | </indexterm><indexterm>
|
---|
1475 | <primary>Domain SID</primary>
|
---|
1476 | </indexterm>
|
---|
1477 | Yes, so long as the SID you create has the same structure as an autogenerated SID.
|
---|
1478 | The typical SID looks like this: S-1-5-21-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX, where
|
---|
1479 | the XXXXXXXXXX can be any number with from 6 to 10 digits. On the other hand, why
|
---|
1480 | would you really want to create your own SID? I cannot think of a good reason.
|
---|
1481 | You may want to set the SID to one that is already in use somewhere on your network,
|
---|
1482 | but that is a little different from straight out creating your own domain SID.
|
---|
1483 | </para>
|
---|
1484 |
|
---|
1485 | </answer>
|
---|
1486 | </qandaentry>
|
---|
1487 |
|
---|
1488 | <qandaentry>
|
---|
1489 | <question>
|
---|
1490 |
|
---|
1491 | <para><indexterm>
|
---|
1492 | <primary>/etc/passwd</primary>
|
---|
1493 | </indexterm><indexterm>
|
---|
1494 | <primary>/etc/group</primary>
|
---|
1495 | </indexterm><indexterm>
|
---|
1496 | <primary>tdbsam</primary>
|
---|
1497 | </indexterm><indexterm>
|
---|
1498 | <primary>passdb backend</primary>
|
---|
1499 | </indexterm><indexterm>
|
---|
1500 | <primary>accounts</primary>
|
---|
1501 | <secondary>user</secondary>
|
---|
1502 | </indexterm><indexterm>
|
---|
1503 | <primary>accounts</primary>
|
---|
1504 | <secondary>group</secondary>
|
---|
1505 | </indexterm><indexterm>
|
---|
1506 | <primary>accounts</primary>
|
---|
1507 | <secondary>Domain</secondary>
|
---|
1508 | </indexterm>
|
---|
1509 | When using a tdbsam passdb backend, why must I have all domain user and group accounts
|
---|
1510 | in <filename>/etc/passwd</filename> and <filename>/etc/group</filename>?
|
---|
1511 | </para>
|
---|
1512 |
|
---|
1513 | </question>
|
---|
1514 | <answer>
|
---|
1515 |
|
---|
1516 | <para><indexterm>
|
---|
1517 | <primary>UID</primary>
|
---|
1518 | </indexterm><indexterm>
|
---|
1519 | <primary>GID</primary>
|
---|
1520 | </indexterm><indexterm>
|
---|
1521 | <primary>smbpasswd</primary>
|
---|
1522 | </indexterm><indexterm>
|
---|
1523 | <primary>/etc/passwd</primary>
|
---|
1524 | </indexterm><indexterm>
|
---|
1525 | <primary>Posix</primary>
|
---|
1526 | </indexterm><indexterm>
|
---|
1527 | <primary>LDAP database</primary>
|
---|
1528 | </indexterm>
|
---|
1529 | Samba-3 must be able to tie all user and group account SIDs to a UNIX UID or GID. Samba
|
---|
1530 | does not fabricate the UNIX IDs from thin air, but rather requires them to be located
|
---|
1531 | in a suitable place.
|
---|
1532 | </para>
|
---|
1533 |
|
---|
1534 | <para>
|
---|
1535 | When migrating a <filename>smbpasswd</filename> file to an LDAP backend, the
|
---|
1536 | UID of each account is taken together with the account information in the
|
---|
1537 | <filename>/etc/passwd</filename>, and both sets of data are used to create the account
|
---|
1538 | entry in the LDAP database.
|
---|
1539 | </para>
|
---|
1540 |
|
---|
1541 | <para>
|
---|
1542 | If you elect to create the POSIX account also, the entire UNIX account is copied to the
|
---|
1543 | LDAP backend. The same occurs with NT groups and UNIX groups. At the conclusion of
|
---|
1544 | migration to the LDAP database, the accounts may be removed from the UNIX database files.
|
---|
1545 | In short then, all UNIX and Windows networking accounts, both in tdbsam as well as in
|
---|
1546 | LDAP, require UIDs/GIDs.
|
---|
1547 | </para>
|
---|
1548 |
|
---|
1549 | </answer>
|
---|
1550 | </qandaentry>
|
---|
1551 |
|
---|
1552 | <qandaentry>
|
---|
1553 | <question>
|
---|
1554 |
|
---|
1555 | <para><indexterm>
|
---|
1556 | <primary>validate</primary>
|
---|
1557 | </indexterm><indexterm>
|
---|
1558 | <primary>connectivity</primary>
|
---|
1559 | </indexterm><indexterm>
|
---|
1560 | <primary>migration</primary>
|
---|
1561 | </indexterm>
|
---|
1562 | Why did you validate connectivity before attempting migration?
|
---|
1563 | </para>
|
---|
1564 |
|
---|
1565 | </question>
|
---|
1566 | <answer>
|
---|
1567 |
|
---|
1568 | <para>
|
---|
1569 | Access validation before attempting to migrate NT4 domain accounts helps to pinpoint
|
---|
1570 | potential problems that may otherwise affect or impede account migration. I am always
|
---|
1571 | mindful of the 4 P's of migration: Planning Prevents Poor Performance.
|
---|
1572 | </para>
|
---|
1573 |
|
---|
1574 | </answer>
|
---|
1575 | </qandaentry>
|
---|
1576 |
|
---|
1577 | <qandaentry>
|
---|
1578 | <question>
|
---|
1579 |
|
---|
1580 | <para>
|
---|
1581 | How would you merge 10 tdbsam-based domains into an LDAP database?
|
---|
1582 | </para>
|
---|
1583 |
|
---|
1584 | </question>
|
---|
1585 | <answer>
|
---|
1586 |
|
---|
1587 | <para><indexterm>
|
---|
1588 | <primary>risk</primary>
|
---|
1589 | </indexterm><indexterm>
|
---|
1590 | <primary>dump</primary>
|
---|
1591 | </indexterm><indexterm>
|
---|
1592 | <primary>tdbsam</primary>
|
---|
1593 | </indexterm><indexterm>
|
---|
1594 | <primary>Samba Domain</primary>
|
---|
1595 | </indexterm><indexterm>
|
---|
1596 | <primary>UID</primary>
|
---|
1597 | </indexterm><indexterm>
|
---|
1598 | <primary>GID</primary>
|
---|
1599 | </indexterm><indexterm>
|
---|
1600 | <primary>pdbedit</primary>
|
---|
1601 | </indexterm><indexterm>
|
---|
1602 | <primary>transfer</primary>
|
---|
1603 | </indexterm><indexterm>
|
---|
1604 | <primary>smbpasswd</primary>
|
---|
1605 | </indexterm><indexterm>
|
---|
1606 | <primary>LDAP</primary>
|
---|
1607 | </indexterm><indexterm>
|
---|
1608 | <primary>tool</primary>
|
---|
1609 | </indexterm>
|
---|
1610 | If you have 10 tdbsam Samba domains, there is considerable risk that there are a number of
|
---|
1611 | accounts that have the same UNIX identifier (UID/GID). This means that you almost
|
---|
1612 | certainly have to edit a lot of data. It would be easiest to dump each database in smbpasswd
|
---|
1613 | file format and then manually edit all records to ensure that each has a unique UID. Each
|
---|
1614 | file can then be imported a number of ways. You can use the <command>pdbedit</command> tool
|
---|
1615 | to affect a transfer from the smbpasswd file to LDAP, or you can migrate them en masse to
|
---|
1616 | tdbsam and then to LDAP. The final choice is yours. Just remember to verify all accounts that
|
---|
1617 | you have migrated before handing over access to a user. After all, too many users with a bad
|
---|
1618 | migration experience may threaten your career.
|
---|
1619 | </para>
|
---|
1620 |
|
---|
1621 | </answer>
|
---|
1622 | </qandaentry>
|
---|
1623 |
|
---|
1624 | <qandaentry>
|
---|
1625 | <question>
|
---|
1626 |
|
---|
1627 | <para><indexterm>
|
---|
1628 | <primary>machine accounts</primary>
|
---|
1629 | </indexterm><indexterm>
|
---|
1630 | <primary>accounts</primary>
|
---|
1631 | <secondary>machine</secondary>
|
---|
1632 | </indexterm>
|
---|
1633 | I want to change my domain name after I migrate all accounts from an NT4 domain to a
|
---|
1634 | Samba-3 domain. Does it make any sense to migrate the machine accounts in that case?
|
---|
1635 | </para>
|
---|
1636 |
|
---|
1637 | </question>
|
---|
1638 | <answer>
|
---|
1639 |
|
---|
1640 | <para><indexterm>
|
---|
1641 | <primary>registry</primary>
|
---|
1642 | </indexterm><indexterm>
|
---|
1643 | <primary>un-join</primary>
|
---|
1644 | </indexterm><indexterm>
|
---|
1645 | <primary>rejoin</primary>
|
---|
1646 | </indexterm><indexterm>
|
---|
1647 | <primary>tattooing</primary>
|
---|
1648 | </indexterm>
|
---|
1649 | I would recommend not to migrate the machine account. The machine accounts should still work, but there are registry entries
|
---|
1650 | on each Windows NT4 and upward client that have a tattoo of the old domain name. If you
|
---|
1651 | unjoin the domain and then rejoin the newly renamed Samba-3 domain, you can be certain to avoid
|
---|
1652 | this tattooing effect.
|
---|
1653 | </para>
|
---|
1654 |
|
---|
1655 | </answer>
|
---|
1656 | </qandaentry>
|
---|
1657 |
|
---|
1658 | <qandaentry>
|
---|
1659 | <question>
|
---|
1660 |
|
---|
1661 | <para><indexterm>
|
---|
1662 | <primary>multiple group mappings</primary>
|
---|
1663 | </indexterm>
|
---|
1664 | After merging multiple NT4 domains into a Samba-3 domain, I lost all multiple group mappings. Why?
|
---|
1665 | </para>
|
---|
1666 |
|
---|
1667 | </question>
|
---|
1668 | <answer>
|
---|
1669 |
|
---|
1670 | <para><indexterm>
|
---|
1671 | <primary>/etc/passwd</primary>
|
---|
1672 | </indexterm><indexterm>
|
---|
1673 | <primary>/etc/group</primary>
|
---|
1674 | </indexterm>
|
---|
1675 | Samba-3 currently does not implement multiple group membership internally. If you use the Windows
|
---|
1676 | NT4 Domain User Manager to manage accounts and you have an LDAP backend, the multiple group
|
---|
1677 | membership is stored in the POSIX groups area. If you use either tdbsam or smbpasswd backend,
|
---|
1678 | then multiple group membership is handled through the UNIX groups file. When you dump the user
|
---|
1679 | accounts, no group account information is provided. When you edit (change) UIDs and GIDs in each
|
---|
1680 | file to which you migrated the NT4 Domain data, do not forget to edit the UNIX <filename>/etc/passwd</filename>
|
---|
1681 | and <filename>/etc/group</filename> information also. That is where the multiple group information
|
---|
1682 | is most closely at your fingertips.
|
---|
1683 | </para>
|
---|
1684 |
|
---|
1685 | </answer>
|
---|
1686 | </qandaentry>
|
---|
1687 |
|
---|
1688 | <qandaentry>
|
---|
1689 | <question>
|
---|
1690 |
|
---|
1691 | <para>
|
---|
1692 | How can I reset group membership after loading the account information into the LDAP database?
|
---|
1693 | </para>
|
---|
1694 |
|
---|
1695 | </question>
|
---|
1696 | <answer>
|
---|
1697 |
|
---|
1698 | <para><indexterm>
|
---|
1699 | <primary>SRVTOOLS.EXE</primary>
|
---|
1700 | </indexterm>
|
---|
1701 | You can use the NT4 Domain User Manager that can be downloaded from the Microsoft Web site. The
|
---|
1702 | installation file is called <filename>SRVTOOLS.EXE</filename>.
|
---|
1703 | </para>
|
---|
1704 |
|
---|
1705 | </answer>
|
---|
1706 | </qandaentry>
|
---|
1707 |
|
---|
1708 | <qandaentry>
|
---|
1709 | <question>
|
---|
1710 |
|
---|
1711 | <para><indexterm>
|
---|
1712 | <primary>group names</primary>
|
---|
1713 | </indexterm>
|
---|
1714 | What are the limits or constraints that apply to group names?
|
---|
1715 | </para>
|
---|
1716 |
|
---|
1717 | </question>
|
---|
1718 | <answer>
|
---|
1719 |
|
---|
1720 | <para><indexterm>
|
---|
1721 | <primary>limit</primary>
|
---|
1722 | </indexterm><indexterm>
|
---|
1723 | <primary>shadow-utils</primary>
|
---|
1724 | </indexterm><indexterm>
|
---|
1725 | <primary>groupadd</primary>
|
---|
1726 | </indexterm><indexterm>
|
---|
1727 | <primary>groupdel</primary>
|
---|
1728 | </indexterm><indexterm>
|
---|
1729 | <primary>groupmod</primary>
|
---|
1730 | </indexterm><indexterm>
|
---|
1731 | <primary>account names</primary>
|
---|
1732 | </indexterm>
|
---|
1733 | A Windows 200x group name can be up to 254 characters long, while in Windows NT4 the group
|
---|
1734 | name is limited to 20 characters. Most UNIX systems limit this to 32 characters. Windows
|
---|
1735 | groups can contain upper- and lowercase characters, as well as spaces.
|
---|
1736 | Many UNIX system do not permit the use of uppercase characters, and some do not permit the
|
---|
1737 | space character either. A number of systems (i.e., Linux) work fine with both uppercase
|
---|
1738 | and space characters in group names, but the shadow-utils package that provides the group
|
---|
1739 | control functions (<command>groupadd</command>, <command>groupmod</command>, <command>groupdel</command>, and so on) do not permit them.
|
---|
1740 | Also, a number of UNIX systems management tools enforce their own particular interpretation
|
---|
1741 | of the POSIX standards and likewise do not permit uppercase or space characters in group
|
---|
1742 | or user account names. You have to experiment with your system to find what its
|
---|
1743 | peculiarities are.
|
---|
1744 | </para>
|
---|
1745 |
|
---|
1746 | </answer>
|
---|
1747 | </qandaentry>
|
---|
1748 |
|
---|
1749 | <qandaentry>
|
---|
1750 | <question>
|
---|
1751 |
|
---|
1752 | <para><indexterm>
|
---|
1753 | <primary>vampire</primary>
|
---|
1754 | </indexterm>
|
---|
1755 | My Windows NT4 PDC has 323,000 user accounts. How long will it take to migrate them to a Samba-3
|
---|
1756 | LDAP backend system using the vampire process?
|
---|
1757 | </para>
|
---|
1758 |
|
---|
1759 | </question>
|
---|
1760 | <answer>
|
---|
1761 |
|
---|
1762 | <para>
|
---|
1763 | UNIX UIDs and GIDs on most UNIX systems use an unsigned short or an unsigned integer. Recent Linux
|
---|
1764 | kernels support at least a much larger number. On systems that have a 16-bit constraint on UID/GIDs,
|
---|
1765 | you would not be able to migrate 323,000 accounts because this number cannot fit into a 16-bit unsigned
|
---|
1766 | integer. UNIX/Linux systems that have a 32-bit UID/GID can easily handle this number of accounts.
|
---|
1767 | Please check this carefully before you attempt to effect a migration using the vampire process.
|
---|
1768 | </para>
|
---|
1769 |
|
---|
1770 | <para><indexterm>
|
---|
1771 | <primary>Migration speed</primary>
|
---|
1772 | </indexterm>
|
---|
1773 | Migration speed depends much on the processor speed, the network speed, disk I/O capability, and
|
---|
1774 | LDAP update overheads. On a dual processor AMD MP1600+ with 1 GB memory that was mirroring LDAP
|
---|
1775 | to a second identical system over 1 Gb Ethernet, I was able to migrate around 180 user accounts
|
---|
1776 | per minute. Migration would obviously go much faster if LDAP mirroring were turned off during the migration.
|
---|
1777 | </para>
|
---|
1778 |
|
---|
1779 | </answer>
|
---|
1780 | </qandaentry>
|
---|
1781 |
|
---|
1782 | </qandaset>
|
---|
1783 |
|
---|
1784 | </sect1>
|
---|
1785 |
|
---|
1786 | </chapter>
|
---|
1787 |
|
---|