Administrative Tools for Windows 7

I am running Windows 7 (build 7100) and I manage quite a few Windows 2003 servers, one of which is running Exchange 2003.  I am not a fan of having to RDP to a domain controller just to manage some user settings and I was patiently waiting for Microsoft to release something…

Don’t bother trying to install the Windows 2003 Admin Tool Pack in Windows 7.  It will not work.

Microsoft has released the Remote Server Administration Tools for Windows 7.  Download and install this little jewel.  Once installed, hop into your “Control Panel”.  Click on “Programs” and then “Turn Windows features on or off”.  You will see a new section called “Remote Server Administration Tools”.  Mark which tools you need and then click Ok.  No reboot needed.

That was half the problem…  Now onto the Exchange tools.  Microsoft seems to not have much information about the Exchange tools for 2003.  I can’t blame them.  I would like to be running Exchange 2007 right now but it is not in the cards for another year.  By that time, probably jump right into Exchange 2010.  In the meantime, I found a download over at Will Dove’s website.  What he has done is take the official ESM for Vista build from Microsoft and removed the check for Vista in the install process.  This works like a charm.  I have not run into any issues using this on my system.

Next up for my admin tool build project, Citrix Tools and OCS.


Updates:

  • 20090817 – Updated the link to the Remote Server Administration Tools

Migrating AD Manager information into Infra

Infra has been a great ITIL toolset for my department.  The only downfall I have run into is some of the simpler integrations or features come at a steep price point.  This integration cannot be that far out of the box for Infra but yet costs thousands of dollars.  Instead I have been spending some time understanding the Infra database and have come up with the following VBS to move the manager information stored in AD into the Infra database.  We have this script to run each night and it keeps everything in order.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
LDAPRootDN = "LDAP://OU=HCL Users,DC=hcl,DC=internal"
 
' Infra database DSN
InfraDSN = "Driver={SQL Server};Server=data01.hcl.internal;Database=infraEnterprise;Trusted_Connection=TRUE"
 
set objConnection = CreateObject("ADODB.Connection")
objConnection.ConnectionString = InfraDSN
objConnection.open
 
' Start the process
ProcessOU(LDAPRootDN)
 
function ProcessOU ( DN )
    set CNUsers = GetObject(DN)
    for each User in CNUsers
        select case User.class
            case "user"
                ' Migrate manager information if a manager is defined
                if ( User.manager <> "" ) then
                    MigrationCount = MigrationCount + 1
                    MigrateManager User.distinguishedName, User.manager
                else
                    ' No manager information on file
                end if
            case "organizationalUnit", "container"
                ' This is an OU, recurse into
                ProcessOU( User.ADsPath )
        end select
    next
end function
 
function MigrateManager ( StaffDN, ManagerDN )
    set Staff = GetObject("LDAP://" + StaffDN)
    set Manager = GetObject("LDAP://" + ManagerDN)
    strQuery = "exec sp_MigrateManager '" + Staff.GUID + "', '" + Manager.GUID + "'"
    set rs = objConnection.execute(strQuery)
end function

The following is the supporting TSQL for the sp_MigrateManager procedure.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
 
USE infraEnterprise
GO
 
IF EXISTS ( (SELECT NAME FROM sysobjects WHERE NAME = 'sp_MigrateManager' AND TYPE = 'P'))
BEGIN
    DROP PROCEDURE sp_MigrateManager
END
GO
 
CREATE PROCEDURE sp_MigrateManager 
    @StaffGUID NVARCHAR(300),
    @ManagerGUID NVARCHAR(300)
AS
BEGIN
 
    DECLARE @ManagerRef INT
 
    SELECT @ManagerRef = COALESCE(REF, 0) FROM AR_USER_ATTRIBUTES WHERE ldap_object_id = @ManagerGUID
 
    UPDATE AR_USER_ATTRIBUTES
    SET
        MANAGER_REF = @ManagerRef
    WHERE
        ldap_object_id = @StaffGUID
 
END
 
GO

Upcoming topics

Just a quick note of what I have in the hopper. SonicWall SSL-VPN NetExtender client configuration in Ubuntu. Migrating manager information from AD into EMC Infra (EMC Ionix). Scripting SQL Server maintenance plans for flexibility.