Managing OSX (10.6): Preferences for Macs connected to an Active Directory domain

A follow-up to my earlier article “Managed Preferences without OSX Server“, this is just a run through of what to do once you’ve got your Macs in the Active Directory (AD) and want to manage the policies on groups of machines (computer-lists, in Apple terminology), instead of managing preferences individually for each machine.

First of all, a computer-list ‘group’ is needed, which AD doesn’t know about, as groups in AD are universal, and not split by member object type. This means we will need to open ADSI Edit and create an object based on the computer-list class and then manually add the machine accounts to it, as AD doesn’t see this object as a group. When you add machines to this group, you need to specify the machine’s object name in AD (the machine name, followed by the $ sign). Look here for more info + images on how that looks.

Once the computer-list is created and the Macs are added into this group, you can manage the preferences just by changing the group’s attributes with Workgroup Manager, shown below. After opening Workgroup Manager, you need to ‘View Directories’, as you can’t connect to AD in the same way Workgroup Manager would connect to Open Directory (OD). Then you have to authenticate yourself with your AD account set up to administer the computer-list group. This is so you don’t have to log into the Mac with Workgroup Manager as an admin all the time.

Workgroup Manager menuWorkgroup Manager preferences for the computer-listWorkgroup Manager parental controls preferences

Once you’ve logged in and found your computer-list group, the journey is nearly over, all that’s left is to change some preferences! We don’t want any profanity displayed in the dictionary now, do we?

That’s pretty much it, it’s a little annoying having to support the machine group with ADSI Edit, but I’m sure some powershell scripting that automatically adds machines with iMac or apple in the name to this group would be pretty easy.

MacOSX (10.6): Managed Preferences without OSX Server

I have tested this in both a development and a production Windows Server 2008 R2 environment, extending the schema to allow Mac OSX computers to received managed preferences direct from the Active Directory (AD), and not requiring a separate OSX directory server to supply those preferences.

I don’t understand why Apple don’t just give people the pre-made ldif file, with it configured to add only missing classes and attributes. The current method involves having to buy OSX server to do this, which is crazy (This may have changed in 10.7, I don’t know yet).

Anyway, below is the correctly configured ldif file that will add the required attributes and classes to an AD schema. The environment I tested it in was a standard AD, with schema extensions for System Center Configuration Manager (SSCM) applied.

The following file is supplied with absolutely no guarantees and may in fact cause your Active Directory environment to spontaneously combust, or develop an unhealthy craving for human brains.

ADSchemaExtension_OSX10.6.ldif

You should add this schema modification to the AD schema, by using the following command:

ldifde -i -u -f ADSchemaExtension_OSX10.6.ldif -s server:port -b username domain password -j . -c "cn=Configuration,dc=X" #configurationNamingContext

If you run this command on the schema master, you can omit the username/password and server/port part from the command, as so:

ldifde -i -u -f ADSchemaExtension_OSX10.6.ldif -j . -c "cn=Configuration,dc=X" #configurationNamingContext

More information on ldifde is in the technet article for ldifde.

Once the schema has been extended, you can treat the AD as a direct replacement for the OSX Open Directory Server in regards to managing preferences.

The next step is to join your Macs to the domain with the AD connector and set up your administration machine to control preferences for Macs in the domain, by installing the Server Admin Tools for OSX 10.6.

Ethernet Cable Wiring

Just a quick post about something I did a long while ago (but have recently updated).

Ethernet Cable Wiring (Google Docs)

It’s a guide on making Ethernet cables I created a while ago, parts of it can be used as handouts or part of an information pack for students. It has proven quite useful and attempts to walk people through a ‘correct’ way to make cables. I sourced information from a couple of websites, including a great article here.

Theme updates amongst a wasteland of procrastination

A few changes, some big (header images), some small (loads of small CSS positioning changes).

I expect changes will continue, as always, these things are works in progress for the most part as I see things that could be better.

Everything else has been pretty much left as it was, for the moment. I will be doing some recording this Sunday for the ‘Metal project’ and I’ll be getting back into the Rails development with a vengeance, ill probably work on some ideas I’ve had for some build up projects to get me used to various aspects of rails development.

Just a quick one

I’ve made some more progress with Ruby on Rails and have also got some of my ideas down to flesh out the project I want to create with it. It should be a fairly easy project that I can build up over time and mould into something pretty cool.

In related news: Git is awesome. I prefer it over the alternatives. I never really used it until I started this RoR thing, but now I wouldn’t use anything else.

Ruby on Rails (RoR)

I’ve been learning some Ruby on Rails recently, it’s been pretty good fun. If you are looking to get started with some RoR, here’s some of the recources i used:

I’ve also got two books on the way to use as a reference and help me along:

It’s going pretty well and I’m enjoying it. I’ve got some ideas that prompted me to learn this, as I wanted to use something other than my normal web development process, which  involved stacks of PHP. I do like PHP, but I do occasionally feel the need to learn some new stuff on occasion. I like the way Rails provides a nice framework for everything, this foray into new territory might improve my web design too!

Common Issues

I read this post the other day, it really resonated with me, as I’m starting to feel some of those symptoms (eyes, back, vitamin d). It’s a great post and definitely gave me some things to think about, especially with posture.

If you use a computer a lot, check it out. If you play guitar/bass an instrument a lot, check it out. If you sit down a lot… Check it out, I think you get the idea.

WordPress + DokuWiki Auth Integration

I decided on creating a private wiki for some of my ideas/random stuff, so that i could have a private working area i can access from anywhere. I like DokuWiki, so I searched out an authentication plugin, so i could use my wordpress login with DokuWiki. The plugin did need a little bit of tweaking to work with WordPress 3.1 though.

If you comment out/remove:

require( ABSPATH . WPINC . ‘/classes.php’ );

As the file doesnt exist in WP3.1

Then add:

require( ABSPATH . WPINC . ‘/class-wp.php’ );
require( ABSPATH . WPINC . ‘/class-wp-error.php’ );

Tested with WordPress 3.1 and DokuWiki-2010-11-07a. Things appear to work with no issues.

Massive thanks to Collin Green, plugins like these are really useful, but it’s something I wouldn’t have bothered to write just for my site (although now I’ve used it, It might find its way into use with i3Portal when we get that going).