Tuesday, August 16, 2011

LDAP Address Book as Setting Up Active Directory

Active Directory is a robust tool, capable of many things. This article will only look at a small portion of the tool: Being an LDAP (lightweight directory access protocol) Server.
Let's say you use many computers and you send email from all of them. How do you keep your address books in sync? How do you make sure you have all of your addresses available no matter which machine you are using?
LDAP is the answer. LDAP is designed just for things like this. The idea is you have an address book "server" which will hold all of your addresses. As long as you are using an LDAP-capable email client you'll be all set.
The only challenge is to setup an LDAP server. Windows Server 2003 comes with Active Directory - an LDAP server. It does not install by default, so the first thing to do is to setup Active Directory (AD). There is a great article that will explain how to set it up here: http://www.petri.co.il/how_to_install_active_directory_on_windows_2003.htm.
Once you have AD installed, the rest is pretty easy, though not obvious.
First thing is to open Active Directory Users and Computers (under Adminstrative tools). You'll see something like this:

Next thing you need to do is to create an Organizational Unit (OU) to hold all the contacts. We'll call this Contacts.

Now, if you want to have each user have their own collection of addresses, it's a good idea to add an OU for each user under the new Contacts OU.

Now, you just need to add some contacts into your OU.
At this point, you are done with the server. Now you just need to configure the email client. Here, we will use Thunderbird from Mozilla.
From within Thunderbird, go to Tools -> Options and select Composition on the left. Then, make sure the Directory Server checkbox is checked. and click Edit Directories.
When the LDAP Directory Servers dialog comes up, click the Add button and complete the form with your own values:

  • Name: Any name you like 
  • Hostname: The address of the LDAP server [could be an IP address] 
  • Base DN: Depends on the structure you used in the Active Directory Users and Computer admin tool. Here we used [OU=TestUser1Contacts,OU=Contacts,dc=activedirectorytester,dc=com] 
  • Port number: 389 by default - normally you will not need to change this 
  • Bind DN: Your email address which is also your Windows 2003 Server login name
Of course, you will need to use values that match your server but you should be able figure out the changes easily enough.
To test your setup, just create a new email and type a partial name of one of the contacts you added. Below I entered: Jane D

You can see the LDAP server is returning the information for Jane Doe. You might also notice that the icon next to her name is a little different than normal. This is the indicator that the data is coming from an LDAP server.
TROUBLESHOOTING
Hopefully, you have not run into any troubles but if you do, you should check a few things. The first thing you should check is to see if your client has connectivity to the LDAP server. There is a tool that should be on the LDAP server named LDP.exe. You can find it under your Program Files folder in Support Tools. Bring this application to your client and try to connect to your server using the appropriate settings.
Using the Connection menu, Connect, then Bind. When you Bind, in the User textbox, just put your username with out the domain (TestUser1 for the data above). Check the Domain checkbox, enter your password for the server, and enter the domain (ActiveDirectoryTester.com for the data above).
Next, use the Browse menu and select Search. Enter your Base DN (OU=TestUser1Contacts,OU=Contacts,dc=activedirectorytester,dc=com for the above data), make sure the Scope is set to SubTree, and click Run. You should get back results. If not, start back at the beginning and check every step, perhaps you missed something small

No comments:

Explaining DNS Concepts - DNS Servers-DNS Queries-DNS Records

3 types of DNS queries— recursive, iterative, and non-recursive 3 types of DNS servers— DNS Resolver, DNS Root Server and Authoritative Name...