Group policy for Unix
Quality Unix-based GPO support shock
Blog I was raised in the Red Hat world of Linux, starting with Red Hat 2, moving to Mandrake, and returning to Red Hat once more. Since then I have been using it through every iteration and have dabbled in Debian and Gentoo based distributions as well. Each camp has evangelical believers, but I tend to stick with Red Hat not because I think it is “better” than other distributions, but because it was what I was raised on.
Similarly, I have been dealing with Macs for a very long time. Mac business networking and management has come a long way, but it still isn’t a platform geared towards business use. It is possible to use Macs in an enterprise environment; there are thousands of businesses around the world that do. But, like Linux, Macs have spent so much time “empowering” the user of the computer that they have largely ignored empowering the administrators.
While I love Linux, and frankly couldn’t imagine a world without it, the lack of out-of-the-box support for policy-based management eats at me. Sure, if I wanted to write a bunch of scripts, and then write a script to deploy those scripts, I could. For more than 10 years, that sort of management is exactly how I have dealt with keeping herds of Unix boxen in line.
In Windows, if the configuration is stored in the registry - which it is for virtually every application - then you can manage it via a Group Policy object (GPO). If the .adm doesn’t exist to support your application, then knocking one together is often simpler than writing scripts to manage an application in Unix.
I wanted to compare Unix GPO setups to Microsoft’s Active Directory (AD) and Novell’s offerings, but I find that all the really good ones don’t so much “compare” to these directory services as “integrate with them.” The comparisons that can be made are largely “what kinds of things can I manage via GPO on Unix systems?”
When you create a GPO for a Windows system, you aren’t pushing a script out to the target system to get the job done. You are pushing out something much closer to an INI file: a simple list of variables, and their new values. GPOs are “inverse scripts”. The “script” that makes the configuration changes is a fundamental part of the Windows operating system.
Policy management for Unix is different. In Unix, every GPO system is little more than an abstraction layer between the systems administrator and a series of scripts that will execute on the target system. There is no common chunk of code that will read a list of variables and apply changes to a centralised database such as the Windows registry. Instead, configuration changes on Unix are stored either in text files or databases of formats unique to the application or module.
So policy management in Unix is much more difficult. Any vendor who attempts this task is choosing to learn how to modify configurations for every application and module that its policy sets support. Vendors also tend to offer you the ability to write your own policy scripts and integrate them into the system. It is a vastly more complicated undertaking than the Microsoft approach. Until I saw it with my own eyes, I would never have believed it was feasible.
And so to policy-based management for Unix-based devices. Similar to Microsoft’s AD-plus-GPO approach to management, there are now mature GPO based systems available for Unix.
Zenworks is actually good for something
Given that the two directory and policy goliaths are Microsoft and Novell, and that Microsoft is Microsoft, this makes the logical place to start looking for decent policy management to be Novell’s SUSE Linux Enterprise Desktop (SLED). When I sat down to discuss SUSE with a fellow sysadmin, who happens to be quite the SUSE evangelist, he told me that - contrary to my previously held beliefs - Zenworks is actually good for something.
Understand that I haven’t really used Zenworks since 2003. The experience was so traumatic that I declined to repeat it. Admittedly, the project was about comparing management of Windows systems at the time, but I found AD and GPOs significantly easier than Novell’s eDirectory and Zenworks. In seven years, it has come a long way.
I was impressed by the Linux management tools. A SUSE Linux Enterprise Server (SLES) and SLED setup running eDirectory and Zenworks looks like it would be a very easy-to-manage network. You could even have Windows clients attached, and it’s far smoother sailing than it was in 2003. It’s limited in OS support however, managing only Windows, SUSE, and Red Hat. Debian and Ubuntu are ignored, and OSX is left out in the cold.
The latest version of SLED ships with a license for something called Likewise Enterprise (LE). LE apparently is an easy-to-use piece of software that lets you join the most popular Unix based distributions, (including OSX) to a Microsoft AD, and push GPOs out them as simply and easily as you would to Windows. After listening to my friend rave about LE, I simply had to see this for myself.
We set up a test lab: four different Unix GPO applications. The first demonstration attached a series of SLED, Fedora, Ubuntu, CentOS and OSX systems to the domain and pushed policies out to them. I was absolutely floored by the number of policies that LE can manage.
In a moment, every objection I have had against Unix operating systems as Enterprise desktops that wasn't about application compatibility was erased. Sometime in the past few years, when I wasn’t looking, Unix based systems caught up.
Random greenhorn sysadmin number forty-two can now cheerfully manage a collection of Unix based systems from the AD as easily as managing Windows. Go try it, and see if any policies you care about are missing. I couldn’t find any.
My buddy wasn’t done with me, and next on the line was Quest (formerly Vintela) Authentication Services (QAS). This talked to all the major flavours of Linux and Unix as well as OSX. At first it is not as easy to use as LE, but I was impressed by the number of policy options. If QAS GPO offerings are behind those of LE, QAS had a demonstrable advantage with a robust Single Sign On (SSO) setup for these operating systems. It was far easier to configure and use than any cross-platform SSO I’ve used to date.
We moved on to a third option called DirectControl offered by Centrify. Having entered into this project with the idea that decent GPO support for Unix was most likely a pipe dream, the fact that there was a third solid offering in this field astonished me. Yet, despite some thorough testing, DirectControl stood up to every requirement I could impose on it.
As we were walking out of the lab, still talking about the products we were testing, we were accosted by a systems administrator and acolyte of the Cult of Apple. We went to his lab and we given a demo of ADmitMac by Thursby Software. While it supports no other Unix based systems apart from OSX, it does a capable job of pushing GPOs out to Macs, and marrying them to Microsoft’s AD.
Having thoroughly geeked out for the evening, we departed to the nearest pub. We learned many lessons, and I’ll use my next article to share the GPO-related ones with you.