| 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="PolicyMgmt">
 | 
|---|
| 4 | <chapterinfo>
 | 
|---|
| 5 |         &author.jht;
 | 
|---|
| 6 |     <pubdate>April 3 2003</pubdate>
 | 
|---|
| 7 | </chapterinfo>
 | 
|---|
| 8 | 
 | 
|---|
| 9 | <title>System and Account Policies</title>
 | 
|---|
| 10 | 
 | 
|---|
| 11 | <para>
 | 
|---|
| 12 | <indexterm><primary>validation</primary></indexterm>
 | 
|---|
| 13 | This chapter summarizes the current state of knowledge derived from personal
 | 
|---|
| 14 | practice and knowledge from Samba mailing list subscribers. Before reproduction
 | 
|---|
| 15 | of posted information, every effort has been made to validate the information given.
 | 
|---|
| 16 | Where additional information was uncovered through this validation, it is provided
 | 
|---|
| 17 | also.
 | 
|---|
| 18 | </para>
 | 
|---|
| 19 | 
 | 
|---|
| 20 | <sect1>
 | 
|---|
| 21 | <title>Features and Benefits</title>
 | 
|---|
| 22 | 
 | 
|---|
| 23 | <para>
 | 
|---|
| 24 | <indexterm><primary>Group Policies</primary></indexterm>
 | 
|---|
| 25 | <indexterm><primary>users</primary></indexterm>
 | 
|---|
| 26 | <indexterm><primary>groups</primary></indexterm>
 | 
|---|
| 27 | When MS Windows NT 3.5 was introduced, the hot new topic was the ability to implement
 | 
|---|
| 28 | Group Policies for users and groups. Then along came MS Windows NT4 and a few sites
 | 
|---|
| 29 | started to adopt this capability. How do we know that? By the number of <quote>boo-boos</quote>
 | 
|---|
| 30 | (or mistakes) administrators made and then requested help to resolve.
 | 
|---|
| 31 | </para>
 | 
|---|
| 32 | 
 | 
|---|
| 33 | <para>
 | 
|---|
| 34 | <indexterm><primary>group policies</primary></indexterm>
 | 
|---|
| 35 | <indexterm><primary>Group Policy Objects</primary><see>GPO</see></indexterm>
 | 
|---|
| 36 | <indexterm><primary>GPOs</primary></indexterm>
 | 
|---|
| 37 | <indexterm><primary>ADS</primary></indexterm>
 | 
|---|
| 38 | <indexterm><primary>group policy objects</primary><see>GPOs</see></indexterm>
 | 
|---|
| 39 | By the time that MS Windows 2000 and Active Directory was released, administrators
 | 
|---|
| 40 | got the message: Group Policies are a good thing! They can help reduce administrative
 | 
|---|
| 41 | costs and actually make happier users. But adoption of the true
 | 
|---|
| 42 | potential of MS Windows 200x Active Directory and Group Policy Objects (GPOs) for users
 | 
|---|
| 43 | and machines were picked up on rather slowly. This was obvious from the Samba
 | 
|---|
| 44 | mailing list back in 2000 and 2001 when there were few postings regarding GPOs and
 | 
|---|
| 45 | how to replicate them in a Samba environment.
 | 
|---|
| 46 | </para>
 | 
|---|
| 47 | 
 | 
|---|
| 48 | <para>
 | 
|---|
| 49 | <indexterm><primary>exploit opportunities</primary></indexterm>
 | 
|---|
| 50 | Judging by the traffic volume since mid 2002, GPOs have become a standard part of
 | 
|---|
| 51 | the deployment in many sites. This chapter reviews techniques and methods that can
 | 
|---|
| 52 | be used to exploit opportunities for automation of control over user desktops and
 | 
|---|
| 53 | network client workstations.
 | 
|---|
| 54 | </para>
 | 
|---|
| 55 | 
 | 
|---|
| 56 | </sect1>
 | 
|---|
| 57 | 
 | 
|---|
| 58 | <sect1>
 | 
|---|
| 59 | <title>Creating and Managing System Policies</title>
 | 
|---|
| 60 | 
 | 
|---|
| 61 | <para>
 | 
|---|
| 62 | <indexterm><primary>NETLOGON</primary></indexterm>
 | 
|---|
| 63 | <indexterm><primary>domain controller</primary></indexterm>
 | 
|---|
| 64 | <indexterm><primary>registry</primary></indexterm>
 | 
|---|
| 65 | <indexterm><primary>affect users</primary></indexterm>
 | 
|---|
| 66 | Under MS Windows platforms, particularly those following the release of MS Windows
 | 
|---|
| 67 | NT4 and MS Windows 95, it is possible to create a type of file that would be placed
 | 
|---|
| 68 | in the NETLOGON share of a domain controller. As the client logs onto the network,
 | 
|---|
| 69 | this file is read and the contents initiate changes to the registry of the client
 | 
|---|
| 70 | machine. This file allows changes to be made to those parts of the registry that
 | 
|---|
| 71 | affect users, groups of users, or machines.
 | 
|---|
| 72 | </para>
 | 
|---|
| 73 | 
 | 
|---|
| 74 | <para>
 | 
|---|
| 75 | <indexterm><primary>Config.POL</primary></indexterm>
 | 
|---|
| 76 | <indexterm><primary>poledit.exe</primary></indexterm>
 | 
|---|
| 77 | <indexterm><primary>policy editor</primary></indexterm>
 | 
|---|
| 78 | For MS Windows 9x/Me, this file must be called <filename>Config.POL</filename> and may
 | 
|---|
| 79 | be generated using a tool called <filename>poledit.exe</filename>, better known as the
 | 
|---|
| 80 | Policy Editor. The policy editor was provided on the Windows 98 installation CD-ROM, but
 | 
|---|
| 81 | disappeared again with the introduction of MS Windows Me. From
 | 
|---|
| 82 | comments of MS Windows network administrators, it would appear that this tool became
 | 
|---|
| 83 | a part of the MS Windows Me Resource Kit.
 | 
|---|
| 84 | </para>
 | 
|---|
| 85 | 
 | 
|---|
| 86 | <para>
 | 
|---|
| 87 | <indexterm><primary>System Policy Editor</primary></indexterm>
 | 
|---|
| 88 | MS Windows NT4 server products include the <emphasis>System Policy Editor</emphasis>
 | 
|---|
| 89 | under <guimenu>Start -> Programs -> Administrative Tools</guimenu>.
 | 
|---|
| 90 | For MS Windows NT4 and later clients, this file must be called <filename>NTConfig.POL</filename>.
 | 
|---|
| 91 | </para>
 | 
|---|
| 92 | 
 | 
|---|
| 93 | <para>
 | 
|---|
| 94 | <indexterm><primary>MMC</primary></indexterm>
 | 
|---|
| 95 | New with the introduction of MS Windows 2000 was the Microsoft Management Console
 | 
|---|
| 96 | or MMC. This tool is the new wave in the ever-changing landscape of Microsoft
 | 
|---|
| 97 | methods for management of network access and security. Every new Microsoft product
 | 
|---|
| 98 | or technology seems to make the old rules obsolete and introduces newer and more
 | 
|---|
| 99 | complex tools and methods. To Microsoft's credit, the MMC does appear to
 | 
|---|
| 100 | be a step forward, but improved functionality comes at a great price.
 | 
|---|
| 101 | </para>
 | 
|---|
| 102 | 
 | 
|---|
| 103 | <para>
 | 
|---|
| 104 | <indexterm><primary>network policies</primary></indexterm>
 | 
|---|
| 105 | <indexterm><primary>system policies</primary></indexterm>
 | 
|---|
| 106 | <indexterm><primary>Profiles</primary></indexterm>
 | 
|---|
| 107 | <indexterm><primary>Policies</primary></indexterm>
 | 
|---|
| 108 | Before embarking on the configuration of network and system policies, it is highly
 | 
|---|
| 109 | advisable to read the documentation available from Microsoft's Web site regarding
 | 
|---|
| 110 | <ulink url="http://www.microsoft.com/ntserver/techresources/management/prof_policies.asp">
 | 
|---|
| 111 | Implementing Profiles and Policies in Windows NT 4.0</ulink>.
 | 
|---|
| 112 | There are a large number of documents in addition to this old one that should also
 | 
|---|
| 113 | be read and understood. Try searching on the Microsoft Web site for <quote>Group Policies</quote>.
 | 
|---|
| 114 | </para>
 | 
|---|
| 115 | 
 | 
|---|
| 116 | <para>
 | 
|---|
| 117 | What follows is a brief discussion with some helpful notes. The information provided
 | 
|---|
| 118 | here is incomplete &smbmdash; you are warned.
 | 
|---|
| 119 | </para>
 | 
|---|
| 120 | 
 | 
|---|
| 121 |         <sect2>
 | 
|---|
| 122 |         <title>Windows 9x/ME Policies</title>
 | 
|---|
| 123 | 
 | 
|---|
| 124 |         <para>
 | 
|---|
| 125 | <indexterm><primary>Group Policy Editor</primary></indexterm>
 | 
|---|
| 126 | <indexterm><primary>tools\reskit\netadmin\poledit</primary></indexterm>
 | 
|---|
| 127 |         You need the Windows 98 Group Policy Editor to set up Group Profiles under Windows 9x/Me.
 | 
|---|
| 128 |         It can be found on the original full-product Windows 98 installation CD-ROM under
 | 
|---|
| 129 |         <filename>tools\reskit\netadmin\poledit</filename>. Install this using the
 | 
|---|
| 130 |         Add/Remove Programs facility, and then click on <guiicon>Have Disk</guiicon>.
 | 
|---|
| 131 |         </para>
 | 
|---|
| 132 | 
 | 
|---|
| 133 | 
 | 
|---|
| 134 |         <para>
 | 
|---|
| 135 | <indexterm><primary>NTConfig.POL</primary></indexterm>
 | 
|---|
| 136 | <indexterm><primary>Config.POL</primary></indexterm>
 | 
|---|
| 137 |         Use the Group Policy Editor to create a policy file that specifies the location of
 | 
|---|
| 138 |         user profiles and/or <filename>My Documents</filename>, and so on. Then save these
 | 
|---|
| 139 |         settings in a file called <filename>Config.POL</filename> that needs to be placed in the
 | 
|---|
| 140 |         root of the <smbconfsection name="[NETLOGON]"/> share. If Windows 98 is configured to log onto
 | 
|---|
| 141 |         the Samba domain, it will automatically read this file and update the Windows 9x/Me registry
 | 
|---|
| 142 |         of the machine as it logs on.
 | 
|---|
| 143 |         </para>
 | 
|---|
| 144 | 
 | 
|---|
| 145 |         <para>
 | 
|---|
| 146 |         Further details are covered in the Windows 98 Resource Kit documentation.
 | 
|---|
| 147 |         </para>
 | 
|---|
| 148 | 
 | 
|---|
| 149 |         <para>
 | 
|---|
| 150 | <indexterm><primary>registry</primary></indexterm>
 | 
|---|
| 151 |         If you do not take the correct steps, then every so often Windows 9x/Me will check the
 | 
|---|
| 152 |         integrity of the registry and restore its settings from the backup
 | 
|---|
| 153 |         copy of the registry it stores on each Windows 9x/Me machine. So, you will
 | 
|---|
| 154 |         occasionally notice things changing back to the original settings.
 | 
|---|
| 155 |         </para>
 | 
|---|
| 156 | 
 | 
|---|
| 157 |         <para>
 | 
|---|
| 158 | <indexterm><primary>grouppol.inf</primary></indexterm>
 | 
|---|
| 159 | <indexterm><primary>Group Policy</primary></indexterm>
 | 
|---|
| 160 |         Install the Group Policy handler for Windows 9x/Me to pick up Group Policies. Look on the
 | 
|---|
| 161 |         Windows 98 CD-ROM in <filename>\tools\reskit\netadmin\poledit</filename>.
 | 
|---|
| 162 |         Install Group Policies on a Windows 9x/Me client by double-clicking on
 | 
|---|
| 163 |         <filename>grouppol.inf</filename>. Log off and on again a couple of times and see
 | 
|---|
| 164 |         if Windows 98 picks up Group Policies. Unfortunately, this needs to be done on every
 | 
|---|
| 165 |         Windows 9x/Me machine that uses Group Policies.
 | 
|---|
| 166 |         </para>
 | 
|---|
| 167 | 
 | 
|---|
| 168 |         </sect2>
 | 
|---|
| 169 |         <sect2>
 | 
|---|
| 170 |         <title>Windows NT4-Style Policy Files</title>
 | 
|---|
| 171 | 
 | 
|---|
| 172 |         <para>
 | 
|---|
| 173 | <indexterm><primary>ntconfig.pol</primary></indexterm>
 | 
|---|
| 174 | <indexterm><primary>poledit.exe</primary></indexterm>
 | 
|---|
| 175 | <indexterm><primary>Policy Editor</primary></indexterm>
 | 
|---|
| 176 | <indexterm><primary>domain policies</primary></indexterm>
 | 
|---|
| 177 |         To create or edit <filename>ntconfig.pol</filename>, you must use the NT Server
 | 
|---|
| 178 |         Policy Editor, <command>poledit.exe</command>, which is included with NT4 Server
 | 
|---|
| 179 |         but not with NT workstation. There is a Policy Editor on an NT4
 | 
|---|
| 180 |         Workstation but it is not suitable for creating domain policies.
 | 
|---|
| 181 |         Furthermore, although the Windows 95 Policy Editor can be installed on an NT4
 | 
|---|
| 182 |         workstation/server, it will not work with NT clients. However, the files from
 | 
|---|
| 183 |         the NT Server will run happily enough on an NT4 workstation.
 | 
|---|
| 184 |         </para>
 | 
|---|
| 185 | 
 | 
|---|
| 186 |         <para>
 | 
|---|
| 187 | <indexterm><primary>poledit.exe</primary></indexterm>
 | 
|---|
| 188 | <indexterm><primary>common.adm</primary></indexterm>
 | 
|---|
| 189 | <indexterm><primary>winnt.adm</primary></indexterm>
 | 
|---|
| 190 | <indexterm><primary>c:\winnt\inf</primary></indexterm>
 | 
|---|
| 191 |         You need <filename>poledit.exe</filename>, <filename>common.adm</filename>, and <filename>winnt.adm</filename>.
 | 
|---|
| 192 |         It is convenient to put the two <filename>*.adm</filename> files in  the <filename>c:\winnt\inf</filename> 
 | 
|---|
| 193 |         directory, which is where the binary will look for them unless told otherwise. This
 | 
|---|
| 194 |         directory is normally <quote>hidden.</quote>
 | 
|---|
| 195 |         </para>
 | 
|---|
| 196 | 
 | 
|---|
| 197 |         <para>
 | 
|---|
| 198 | <indexterm><primary>Policy Editor</primary></indexterm>
 | 
|---|
| 199 | <indexterm><primary>Nt4sp6ai.exe</primary></indexterm>
 | 
|---|
| 200 | <indexterm><primary>poledit.exe</primary></indexterm>
 | 
|---|
| 201 | <indexterm><primary>Zero Administration Kit</primary></indexterm>
 | 
|---|
| 202 |         The Windows NT Policy Editor is also included with the Service Pack 3 (and
 | 
|---|
| 203 |         later) for Windows NT 4.0. Extract the files using <command>servicepackname /x</command>
 | 
|---|
| 204 |         &smbmdash; that's <command>Nt4sp6ai.exe /x</command> for Service Pack 6a. The Policy Editor,
 | 
|---|
| 205 |         <command>poledit.exe</command>, and the associated template files (*.adm) should
 | 
|---|
| 206 |         be extracted as well. It is also possible to download the policy template
 | 
|---|
| 207 |         files for Office97 and get a copy of the Policy Editor. Another possible
 | 
|---|
| 208 |         location is with the Zero Administration Kit available for download from Microsoft.
 | 
|---|
| 209 |         </para>
 | 
|---|
| 210 | 
 | 
|---|
| 211 |                 <sect3>
 | 
|---|
| 212 |                 <title>Registry Spoiling</title>
 | 
|---|
| 213 | 
 | 
|---|
| 214 |                         <para>
 | 
|---|
| 215 | <indexterm><primary>NTConfig.POL</primary></indexterm>
 | 
|---|
| 216 | <indexterm><primary>HKEY_LOCAL_MACHINE</primary></indexterm>
 | 
|---|
| 217 |                         With NT4-style registry-based policy changes, a large number of settings are not
 | 
|---|
| 218 |                         automatically reversed as the user logs off. The settings that were in the
 | 
|---|
| 219 |                         <filename>NTConfig.POL</filename> file were applied to the client machine registry and apply to the
 | 
|---|
| 220 |                         hive key HKEY_LOCAL_MACHINE are permanent until explicitly reversed. This is known
 | 
|---|
| 221 |                         as tattooing. It can have serious consequences downstream, and the administrator must
 | 
|---|
| 222 |                         be extremely careful not to lock out the ability to manage the machine at a later date.
 | 
|---|
| 223 |                         </para>
 | 
|---|
| 224 | 
 | 
|---|
| 225 |                 </sect3>
 | 
|---|
| 226 |         </sect2>
 | 
|---|
| 227 |         <sect2>
 | 
|---|
| 228 |         <title>MS Windows 200x/XP Professional Policies</title>
 | 
|---|
| 229 | 
 | 
|---|
| 230 |         <para>
 | 
|---|
| 231 | <indexterm><primary>registry</primary></indexterm>
 | 
|---|
| 232 |         Windows NT4 system policies allow the setting of registry parameters specific to
 | 
|---|
| 233 |         users, groups, and computers (client workstations) that are members of the NT4-style
 | 
|---|
| 234 |         domain. Such policy files will work with MS Windows 200x/XP clients also.
 | 
|---|
| 235 |         </para>
 | 
|---|
| 236 | 
 | 
|---|
| 237 |         <para>
 | 
|---|
| 238 |         New to MS Windows 2000, Microsoft recently introduced a style of Group Policy that confers
 | 
|---|
| 239 |         a superset of capabilities compared with NT4-style policies. Obviously, the tool used
 | 
|---|
| 240 |         to create them is different, and the mechanism for implementing them is much improved.
 | 
|---|
| 241 |         </para>
 | 
|---|
| 242 | 
 | 
|---|
| 243 |         <para>
 | 
|---|
| 244 |         <indexterm><primary>GPOs</primary></indexterm>
 | 
|---|
| 245 | <indexterm><primary>Administrative Templates</primary></indexterm>
 | 
|---|
| 246 |         The older NT4-style registry-based policies are known as <emphasis>Administrative Templates</emphasis>
 | 
|---|
| 247 |         in MS Windows 2000/XP GPOs. The latter includes the ability to set various security
 | 
|---|
| 248 |         configurations, enforce Internet Explorer browser settings, change and redirect aspects of the
 | 
|---|
| 249 |         users desktop (including the location of <filename>My Documents</filename> files, as
 | 
|---|
| 250 |         well as intrinsics of where menu items will appear in the Start menu). An additional new
 | 
|---|
| 251 |         feature is the ability to make available particular software Windows applications to particular
 | 
|---|
| 252 |         users and/or groups.
 | 
|---|
| 253 |         </para>
 | 
|---|
| 254 | 
 | 
|---|
| 255 |         <para>
 | 
|---|
| 256 | <indexterm><primary>NTConfig.POL</primary></indexterm>
 | 
|---|
| 257 | <indexterm><primary>NETLOGON</primary></indexterm>
 | 
|---|
| 258 | <indexterm><primary>local registry values</primary></indexterm>
 | 
|---|
| 259 |         Remember, NT4 policy files are named <filename>NTConfig.POL</filename> and are stored in the root
 | 
|---|
| 260 |         of the NETLOGON share on the domain controllers. A Windows NT4 user enters a username and password
 | 
|---|
| 261 |         and selects the domain name to which the logon will attempt to take place. During the logon process,
 | 
|---|
| 262 |         the client machine reads the <filename>NTConfig.POL</filename> file from the NETLOGON share on
 | 
|---|
| 263 |         the authenticating server and modifies the local registry values according to the settings in this file.
 | 
|---|
| 264 |         </para>
 | 
|---|
| 265 | 
 | 
|---|
| 266 |         <para>
 | 
|---|
| 267 | <indexterm><primary>SYSVOL</primary></indexterm>
 | 
|---|
| 268 | <indexterm><primary>NETLOGON</primary></indexterm>
 | 
|---|
| 269 | <indexterm><primary>replicated</primary></indexterm>
 | 
|---|
| 270 | <indexterm><primary>ADS</primary></indexterm>
 | 
|---|
| 271 | <indexterm><primary>domain controllers</primary></indexterm>
 | 
|---|
| 272 | <indexterm><primary>Group Policy Container</primary><see>GPC</see></indexterm>
 | 
|---|
| 273 | <indexterm><primary>Group Policy Template</primary><see>GPT</see></indexterm>
 | 
|---|
| 274 | <indexterm><primary>replicated SYSVOL</primary></indexterm>
 | 
|---|
| 275 |         Windows 200x GPOs are feature-rich. They are not stored in the NETLOGON share, but rather part of
 | 
|---|
| 276 |         a Windows 200x policy file is stored in the Active Directory itself and the other part is stored
 | 
|---|
| 277 |         in a shared (and replicated) volume called the SYSVOL folder. This folder is present on all Active
 | 
|---|
| 278 |         Directory domain controllers. The part that is stored in the Active Directory itself is called the
 | 
|---|
| 279 |         Group Policy Container (GPC), and the part that is stored in the replicated share called SYSVOL is
 | 
|---|
| 280 |         known as the Group Policy Template (GPT).
 | 
|---|
| 281 |         </para>
 | 
|---|
| 282 | 
 | 
|---|
| 283 |         <para>
 | 
|---|
| 284 | <indexterm><primary>GPOs</primary></indexterm>
 | 
|---|
| 285 |         With NT4 clients, the policy file is read and executed only as each user logs onto the network.
 | 
|---|
| 286 |         MS Windows 200x policies are much more complex &smbmdash; GPOs are processed and applied at client machine
 | 
|---|
| 287 |         startup (machine specific part), and when the user logs onto the network, the user-specific part
 | 
|---|
| 288 |         is applied. In MS Windows 200x-style policy management, each machine and/or user may be subject
 | 
|---|
| 289 |         to any number of concurrently applicable (and applied) policy sets (GPOs). Active Directory allows
 | 
|---|
| 290 |         the administrator to also set filters over the policy settings. No such equivalent capability
 | 
|---|
| 291 |         exists with NT4-style policy files.
 | 
|---|
| 292 |         </para>
 | 
|---|
| 293 | 
 | 
|---|
| 294 |                 <sect3>
 | 
|---|
| 295 |                 <title>Administration of Windows 200x/XP Policies</title>
 | 
|---|
| 296 | 
 | 
|---|
| 297 |                 <para>
 | 
|---|
| 298 |                 <indexterm><primary>GPOs</primary></indexterm>
 | 
|---|
| 299 |                 <indexterm><primary>System Policy Editor</primary></indexterm>
 | 
|---|
| 300 | <indexterm><primary>poledit.exe</primary></indexterm>
 | 
|---|
| 301 | <indexterm><primary>MMC snap-in</primary></indexterm>
 | 
|---|
| 302 | <indexterm><primary>Poledit</primary></indexterm>
 | 
|---|
| 303 |                 Instead of using the tool called <application>the System Policy Editor</application>, commonly called Poledit (from the
 | 
|---|
| 304 |                 executable name <command>poledit.exe</command>), <acronym>GPOs</acronym> are created and managed using a 
 | 
|---|
| 305 |                 <application>Microsoft Management Console</application> <acronym>(MMC)</acronym> snap-in as follows:</para>
 | 
|---|
| 306 |                 <procedure>
 | 
|---|
| 307 |                         <step><para>
 | 
|---|
| 308 |                         Go to the Windows 200x/XP menu <guimenu>Start->Programs->Administrative Tools</guimenu>
 | 
|---|
| 309 |                         and select the MMC snap-in called <guimenuitem>Active Directory Users and Computers</guimenuitem>
 | 
|---|
| 310 |                         </para></step>
 | 
|---|
| 311 | 
 | 
|---|
| 312 |                         <step><para>
 | 
|---|
| 313 | <indexterm><primary>organizational unit</primary><see>OU</see></indexterm>
 | 
|---|
| 314 |                         Select the domain or organizational unit (OU) that you wish to manage, then right-click
 | 
|---|
| 315 |                         to open the context menu for that object, and select the <guibutton>Properties</guibutton>.
 | 
|---|
| 316 |                         </para></step>
 | 
|---|
| 317 | 
 | 
|---|
| 318 |                         <step><para>
 | 
|---|
| 319 |                         Left-click on the <guilabel>Group Policy</guilabel> tab, then
 | 
|---|
| 320 |                         left-click on the New tab. Type a name
 | 
|---|
| 321 |                         for the new policy you will create.
 | 
|---|
| 322 |                         </para></step>
 | 
|---|
| 323 | 
 | 
|---|
| 324 |                         <step><para>
 | 
|---|
| 325 |                          Left-click on the <guilabel>Edit</guilabel> tab to commence the steps needed to create the GPO.
 | 
|---|
| 326 |                         </para></step>
 | 
|---|
| 327 |                 </procedure>
 | 
|---|
| 328 | 
 | 
|---|
| 329 |                 <para>
 | 
|---|
| 330 |                 All policy configuration options are controlled through the use of policy administrative
 | 
|---|
| 331 |                 templates. These files have an .adm extension, both in NT4 as well as in Windows 200x/XP.
 | 
|---|
| 332 |                 Beware, however, the .adm files are not interchangeable across NT4 and Windows 200x.
 | 
|---|
| 333 |                 The latter introduces many new features as well as extended definition capabilities. It is
 | 
|---|
| 334 |                 well beyond the scope of this documentation to explain how to program .adm files; for that,
 | 
|---|
| 335 |                 refer to the Microsoft Windows Resource Kit for your particular
 | 
|---|
| 336 |                 version of MS Windows.
 | 
|---|
| 337 |                 </para>
 | 
|---|
| 338 | 
 | 
|---|
| 339 |                 <note>
 | 
|---|
| 340 |                 <para>
 | 
|---|
| 341 | <indexterm><primary>gpolmig.exe</primary></indexterm>
 | 
|---|
| 342 | <indexterm><primary>NTConfig.POL</primary></indexterm>
 | 
|---|
| 343 | <indexterm><primary>resource kit</primary></indexterm>
 | 
|---|
| 344 |                 The MS Windows 2000 Resource Kit contains a tool called <command>gpolmig.exe</command>. This tool can be used
 | 
|---|
| 345 |                 to migrate an NT4 <filename>NTConfig.POL</filename> file into a Windows 200x style GPO. Be VERY careful how you
 | 
|---|
| 346 |                 use this powerful tool. Please refer to the resource kit manuals for specific usage information.
 | 
|---|
| 347 |                 </para>
 | 
|---|
| 348 |                 </note>
 | 
|---|
| 349 | 
 | 
|---|
| 350 |                 </sect3>
 | 
|---|
| 351 | 
 | 
|---|
| 352 |                 <sect3>
 | 
|---|
| 353 |                 <title>Custom System Policy Templates</title>
 | 
|---|
| 354 | 
 | 
|---|
| 355 |                 <para>
 | 
|---|
| 356 |                 Over the past year, there has been a bit of talk regarding the creation of customized
 | 
|---|
| 357 |                 templates for the Windows Sytem Policy Editor. A recent announcement on the Samba mailing
 | 
|---|
| 358 |                 list is worthy of mention.
 | 
|---|
| 359 |                 </para>
 | 
|---|
| 360 | 
 | 
|---|
| 361 |                 <para>
 | 
|---|
| 362 |                 Mike Petersen has announced the availability of a template file he has created. This custom System Policy
 | 
|---|
| 363 |                 Editor Template will allow you to successfully control Microsoft Windows workstations from an SMB server, such
 | 
|---|
| 364 |                 as Samba. This template has been tested on a few networks, although if you find any problems with any of these
 | 
|---|
| 365 |                 policies, or have any ideas for additional policies, let me know at mailto:mgpeter@pcc-services.com.  This
 | 
|---|
| 366 |                 Template includes many policies for Windows XP to allow it to behave better in a professional environment.
 | 
|---|
| 367 |                 </para>
 | 
|---|
| 368 | 
 | 
|---|
| 369 |                 <para>
 | 
|---|
| 370 |                 For further information please see the <ulink
 | 
|---|
| 371 |                 url="http://www.pcc-services.com/custom_poledit.html">Petersen</ulink> Computer Consulting web site. There is
 | 
|---|
| 372 |                 a download link for the template file.
 | 
|---|
| 373 |                 </para>
 | 
|---|
| 374 | 
 | 
|---|
| 375 |                 </sect3>
 | 
|---|
| 376 |         </sect2>
 | 
|---|
| 377 | </sect1>
 | 
|---|
| 378 | 
 | 
|---|
| 379 | <sect1>
 | 
|---|
| 380 | <title>Managing Account/User Policies</title>
 | 
|---|
| 381 | 
 | 
|---|
| 382 | <para>
 | 
|---|
| 383 | <indexterm><primary>Policies</primary></indexterm>
 | 
|---|
| 384 | <indexterm><primary>policy file </primary></indexterm>
 | 
|---|
| 385 | <indexterm><primary>registry settings</primary></indexterm>
 | 
|---|
| 386 | Policies can define a specific user's settings or the settings for a group of users. The resulting
 | 
|---|
| 387 | policy file contains the registry settings for all users, groups, and computers that will be using
 | 
|---|
| 388 | the policy file. Separate policy files for each user, group, or computer are not necessary.
 | 
|---|
| 389 | </para>
 | 
|---|
| 390 | 
 | 
|---|
| 391 | <para>
 | 
|---|
| 392 | <indexterm><primary>NTConfig.POL</primary></indexterm>
 | 
|---|
| 393 | If you create a policy that will be automatically downloaded from validating domain controllers,
 | 
|---|
| 394 | you should name the file <filename>NTConfig.POL</filename>. As system administrator, you have the option of renaming the
 | 
|---|
| 395 | policy file and, by modifying the Windows NT-based workstation, directing the computer to update
 | 
|---|
| 396 | the policy from a manual path. You can do this by either manually changing the registry or by using
 | 
|---|
| 397 | the System Policy Editor. This can even be a local path such that each machine has its own policy file,
 | 
|---|
| 398 | but if a change is necessary to all machines, it must be made individually to each workstation.
 | 
|---|
| 399 | </para>
 | 
|---|
| 400 | 
 | 
|---|
| 401 | <para>
 | 
|---|
| 402 | <indexterm><primary>NTConfig.POL</primary></indexterm>
 | 
|---|
| 403 | <indexterm><primary>NETLOGON</primary></indexterm>
 | 
|---|
| 404 | When a Windows NT4/200x/XP machine logs onto the network, the client looks in the NETLOGON share on
 | 
|---|
| 405 | the authenticating domain controller for the presence of the <filename>NTConfig.POL</filename> file. If one exists, it is 
 | 
|---|
| 406 | downloaded, parsed, and then applied to the user's part of the registry.
 | 
|---|
| 407 | </para>
 | 
|---|
| 408 | 
 | 
|---|
| 409 | <para>
 | 
|---|
| 410 | <indexterm><primary>GPOs</primary></indexterm>
 | 
|---|
| 411 | <indexterm><primary>ADS</primary></indexterm>
 | 
|---|
| 412 | <indexterm><primary>NTConfig.POL</primary></indexterm>
 | 
|---|
| 413 | <indexterm><primary>NT4 style policy updates</primary></indexterm>
 | 
|---|
| 414 | MS Windows 200x/XP clients that log onto an MS Windows Active Directory security domain may additionally
 | 
|---|
| 415 | acquire policy settings through GPOs that are defined and stored in Active Directory
 | 
|---|
| 416 | itself. The key benefit of using AD GPOs is that they impose no registry <emphasis>spoiling</emphasis> effect.
 | 
|---|
| 417 | This has considerable advantage compared with the use of <filename>NTConfig.POL</filename> (NT4) style policy updates.
 | 
|---|
| 418 | </para>
 | 
|---|
| 419 | 
 | 
|---|
| 420 | <para>
 | 
|---|
| 421 | <indexterm><primary>account restrictions</primary></indexterm>
 | 
|---|
| 422 | <indexterm><primary>Common restrictions</primary></indexterm>
 | 
|---|
| 423 | In addition to user access controls that may be imposed or applied via system and/or group policies
 | 
|---|
| 424 | in a manner that works in conjunction with user profiles, the user management environment under
 | 
|---|
| 425 | MS Windows NT4/200x/XP allows per-domain as well as per-user account restrictions to be applied.
 | 
|---|
| 426 | Common restrictions that are frequently used include:
 | 
|---|
| 427 | </para>
 | 
|---|
| 428 | 
 | 
|---|
| 429 | <para>
 | 
|---|
| 430 | <indexterm><primary>Account Controls</primary></indexterm>
 | 
|---|
| 431 | <itemizedlist>
 | 
|---|
| 432 |         <listitem><para>Logon hours</para></listitem>
 | 
|---|
| 433 |         <listitem><para>Password aging</para></listitem>
 | 
|---|
| 434 |         <listitem><para>Permitted logon from certain machines only</para></listitem>
 | 
|---|
| 435 |         <listitem><para>Account type (local or global)</para></listitem>
 | 
|---|
| 436 |         <listitem><para>User rights</para></listitem>
 | 
|---|
| 437 | </itemizedlist>
 | 
|---|
| 438 | </para>
 | 
|---|
| 439 | 
 | 
|---|
| 440 | <para>
 | 
|---|
| 441 | <indexterm><primary>Domain User Manager</primary></indexterm>
 | 
|---|
| 442 | <indexterm><primary>NTConfig.POL</primary></indexterm>
 | 
|---|
| 443 | Samba-3.0.20 does not yet implement all account controls that are common to MS Windows NT4/200x/XP.
 | 
|---|
| 444 | While it is possible to set many controls using the Domain User Manager for MS Windows NT4, only password
 | 
|---|
| 445 | expiry is functional today. Most of the remaining controls at this time have only stub routines
 | 
|---|
| 446 | that may eventually be completed to provide actual control. Do not be misled by the fact that a
 | 
|---|
| 447 | parameter can be set using the NT4 Domain User Manager or in the <filename>NTConfig.POL</filename>.
 | 
|---|
| 448 | </para>
 | 
|---|
| 449 | 
 | 
|---|
| 450 | </sect1>
 | 
|---|
| 451 | <sect1>
 | 
|---|
| 452 | <title>Management Tools</title>
 | 
|---|
| 453 | 
 | 
|---|
| 454 | <para>
 | 
|---|
| 455 | Anyone who wishes to create or manage Group Policies will need to be familiar with a number of tools.
 | 
|---|
| 456 | The following sections describe a few key tools that will help you to create a low-maintenance user
 | 
|---|
| 457 | environment.
 | 
|---|
| 458 | </para>
 | 
|---|
| 459 | 
 | 
|---|
| 460 |         <sect2>
 | 
|---|
| 461 |         <title>Samba Editreg Toolset</title>
 | 
|---|
| 462 | 
 | 
|---|
| 463 |         <para>
 | 
|---|
| 464 |         <indexterm><primary>editreg</primary></indexterm>
 | 
|---|
| 465 |         <indexterm><primary>NTUser.DAT</primary></indexterm>
 | 
|---|
| 466 |         <indexterm><primary>NTConfig.POL</primary></indexterm>
 | 
|---|
| 467 |         A new tool called <command>editreg</command> is under development. This tool can be used
 | 
|---|
| 468 |         to edit registry files (called <filename>NTUser.DAT</filename>) that are stored in user
 | 
|---|
| 469 |         and group profiles. <filename>NTConfig.POL</filename> files have the same structure as the
 | 
|---|
| 470 |         <filename>NTUser.DAT</filename> file and can be edited using this tool. <command>editreg</command>
 | 
|---|
| 471 |         is being built with the intent to enable <filename>NTConfig.POL</filename> files to be saved in text format and to
 | 
|---|
| 472 |         permit the building of new <filename>NTConfig.POL</filename> files with extended capabilities. It is proving difficult
 | 
|---|
| 473 |         to realize this capability, so do not be surprised if this feature does not materialize. Formal
 | 
|---|
| 474 |         capabilities will be announced at the time that this tool is released for production use.
 | 
|---|
| 475 |         </para>
 | 
|---|
| 476 | 
 | 
|---|
| 477 |         </sect2>
 | 
|---|
| 478 | 
 | 
|---|
| 479 |         <sect2>
 | 
|---|
| 480 |         <title>Windows NT4/200x</title>
 | 
|---|
| 481 | 
 | 
|---|
| 482 |         <para>
 | 
|---|
| 483 | <indexterm><primary>regedt32.exe</primary></indexterm>
 | 
|---|
| 484 | <indexterm><primary>Group Policy Editor</primary></indexterm>
 | 
|---|
| 485 | <indexterm><primary>MMC</primary></indexterm>
 | 
|---|
| 486 |         The tools that may be used to configure these types of controls from the MS Windows environment are
 | 
|---|
| 487 |         the NT4 User Manager for Domains, the NT4 System and Group Policy Editor, and the Registry Editor (regedt32.exe).
 | 
|---|
| 488 |         Under MS Windows 200x/XP, this is done using the MMC with appropriate
 | 
|---|
| 489 |         <quote>snap-ins,</quote> the registry editor, and potentially also the NT4 System and Group Policy Editor.
 | 
|---|
| 490 |         </para>
 | 
|---|
| 491 |         </sect2>
 | 
|---|
| 492 | 
 | 
|---|
| 493 |         <sect2>
 | 
|---|
| 494 |         <title>Samba PDC</title>
 | 
|---|
| 495 | 
 | 
|---|
| 496 |         <para>
 | 
|---|
| 497 | <indexterm><primary>smbpasswd</primary></indexterm>
 | 
|---|
| 498 | <indexterm><primary>pdbedit</primary></indexterm>
 | 
|---|
| 499 | <indexterm><primary>NET</primary></indexterm>
 | 
|---|
| 500 | <indexterm><primary>rpcclient</primary></indexterm>
 | 
|---|
| 501 |         With a Samba domain controller, the new tools for managing user account and policy information include:
 | 
|---|
| 502 |         <command>smbpasswd</command>, <command>pdbedit</command>, <command>net</command>, and <command>rpcclient</command>. 
 | 
|---|
| 503 |         The administrator should read the man pages for these tools and become familiar with their use.
 | 
|---|
| 504 |         </para>
 | 
|---|
| 505 | 
 | 
|---|
| 506 |         </sect2>
 | 
|---|
| 507 | </sect1>
 | 
|---|
| 508 | 
 | 
|---|
| 509 | <sect1>
 | 
|---|
| 510 | <title>System Startup and Logon Processing Overview</title>
 | 
|---|
| 511 | 
 | 
|---|
| 512 | <para>
 | 
|---|
| 513 | The following attempts to document the order of processing the system and user policies following a system
 | 
|---|
| 514 | reboot and as part of the user logon:
 | 
|---|
| 515 | </para>
 | 
|---|
| 516 | 
 | 
|---|
| 517 | <orderedlist>
 | 
|---|
| 518 |         <listitem><para>
 | 
|---|
| 519 | <indexterm><primary>Remote Procedure Call System Service</primary><see>RPCSS</see></indexterm>
 | 
|---|
| 520 | <indexterm><primary>multiple universal naming convention provider</primary><see>MUP</see></indexterm>
 | 
|---|
| 521 |         Network starts, then Remote Procedure Call System Service (RPCSS) and multiple universal naming
 | 
|---|
| 522 |         convention provider (MUP) start.
 | 
|---|
| 523 |         </para></listitem>
 | 
|---|
| 524 | 
 | 
|---|
| 525 |         <listitem><para>
 | 
|---|
| 526 | <indexterm><primary>ADS</primary></indexterm>
 | 
|---|
| 527 | <indexterm><primary>GPOs</primary></indexterm>
 | 
|---|
| 528 |         Where Active Directory is involved, an ordered list of GPOs is downloaded
 | 
|---|
| 529 |         and applied. The list may include GPOs that:
 | 
|---|
| 530 | <itemizedlist>
 | 
|---|
| 531 |         <listitem><para>Apply to the location of machines in a directory.</para></listitem>
 | 
|---|
| 532 |         <listitem><para>Apply only when settings have changed.</para></listitem>
 | 
|---|
| 533 |         <listitem><para>Depend on configuration of the scope of applicability: local,
 | 
|---|
| 534 |         site, domain, organizational unit, and so on.</para></listitem>
 | 
|---|
| 535 | </itemizedlist>
 | 
|---|
| 536 |         No desktop user interface is presented until the above have been processed.
 | 
|---|
| 537 |         </para></listitem>
 | 
|---|
| 538 | 
 | 
|---|
| 539 |         <listitem><para>
 | 
|---|
| 540 |         Execution of startup scripts (hidden and synchronous by default).
 | 
|---|
| 541 |         </para></listitem>
 | 
|---|
| 542 | 
 | 
|---|
| 543 |         <listitem><para>
 | 
|---|
| 544 |         A keyboard action to effect start of logon (Ctrl-Alt-Del).
 | 
|---|
| 545 |         </para></listitem>
 | 
|---|
| 546 | 
 | 
|---|
| 547 |         <listitem><para>
 | 
|---|
| 548 |         User credentials are validated, user profile is loaded (depends on policy settings).
 | 
|---|
| 549 |         </para></listitem>
 | 
|---|
| 550 | 
 | 
|---|
| 551 |         <listitem><para>
 | 
|---|
| 552 |         An ordered list of user GPOs is obtained. The list contents depends on what is configured in respect of:
 | 
|---|
| 553 | 
 | 
|---|
| 554 | <itemizedlist>
 | 
|---|
| 555 |         <listitem><para>Is the user a domain member, thus subject to particular policies?</para></listitem>
 | 
|---|
| 556 |         <listitem><para>Loopback enablement, and the state of the loopback policy (merge or replace).</para></listitem>
 | 
|---|
| 557 |         <listitem><para>Location of the Active Directory itself.</para></listitem>
 | 
|---|
| 558 |         <listitem><para>Has the list of GPOs changed? No processing is needed if not changed.</para></listitem>
 | 
|---|
| 559 | </itemizedlist>
 | 
|---|
| 560 |         </para></listitem>
 | 
|---|
| 561 | 
 | 
|---|
| 562 |         <listitem><para>
 | 
|---|
| 563 |         User policies are applied from Active Directory. Note: There are several types.
 | 
|---|
| 564 |         </para></listitem>
 | 
|---|
| 565 | 
 | 
|---|
| 566 |         <listitem><para>
 | 
|---|
| 567 |         Logon scripts are run. New to Windows 200x and Active Directory, logon scripts may be obtained based on GPOs
 | 
|---|
| 568 |         (hidden and executed synchronously). NT4-style logon scripts are then run in a normal
 | 
|---|
| 569 |         window.
 | 
|---|
| 570 |         </para></listitem>
 | 
|---|
| 571 | 
 | 
|---|
| 572 |         <listitem><para>
 | 
|---|
| 573 |         The user interface as determined from the GPOs is presented. Note: In a Samba domain (like an NT4
 | 
|---|
| 574 |         domain), machine (system) policies are applied at startup; user policies are applied at logon.
 | 
|---|
| 575 |         </para></listitem>
 | 
|---|
| 576 | </orderedlist>
 | 
|---|
| 577 | 
 | 
|---|
| 578 | </sect1>
 | 
|---|
| 579 | 
 | 
|---|
| 580 | <sect1>
 | 
|---|
| 581 | <title>Common Errors</title>
 | 
|---|
| 582 | 
 | 
|---|
| 583 | <para>
 | 
|---|
| 584 | Policy-related problems can be quite difficult to diagnose and even more difficult to rectify. The following
 | 
|---|
| 585 | collection demonstrates only basic issues.
 | 
|---|
| 586 | </para>
 | 
|---|
| 587 | 
 | 
|---|
| 588 | <sect2>
 | 
|---|
| 589 | <title>Policy Does Not Work</title>
 | 
|---|
| 590 | 
 | 
|---|
| 591 | <para>
 | 
|---|
| 592 | <quote>We have created the <filename>Config.POL</filename> file and put it in the <emphasis>NETLOGON</emphasis> share.
 | 
|---|
| 593 | It has made no difference to our Win XP Pro machines, they just do not see it. It worked fine with Win 98 but does not
 | 
|---|
| 594 | work any longer since we upgraded to Win XP Pro. Any hints?</quote>
 | 
|---|
| 595 | </para>
 | 
|---|
| 596 | 
 | 
|---|
| 597 | <para>
 | 
|---|
| 598 | Policy files are not portable between Windows 9x/Me and MS Windows NT4/200x/XP-based platforms. You need to
 | 
|---|
| 599 | use the NT4 Group Policy Editor to create a file called <filename>NTConfig.POL</filename> so it is in the
 | 
|---|
| 600 | correct format for your MS Windows XP Pro clients.
 | 
|---|
| 601 | </para>
 | 
|---|
| 602 | 
 | 
|---|
| 603 | </sect2>
 | 
|---|
| 604 | 
 | 
|---|
| 605 | </sect1>
 | 
|---|
| 606 | 
 | 
|---|
| 607 | </chapter>
 | 
|---|