We have had a lot of experience in configuring Kerberos for our clients - as it should be the default choice for SharePoint implementations.
Here's the process to go through:
Step 1: Ensure MOSS servers are configured correctly.
Your MOSS server must be running:
Step 2: Set SPNs
The first thing you need to do in order to enable Kerberos for SharePoint is configure Service Principal Names (SPNs) for your SharePoint service accounts in Active Directory.
SPNs are used by Kerberos to ensure that only certain accounts have permission to delegate a specific service on a user's behalf. An SPN needs to be configured for each necessary service and port. SPNs are configured by using SetSPN.exe, which is a command line tool provided as part of the Windows 2003 Resource Kit.
You will need to configure SPNs for the user account(s) necessary for:
Microsoft indicates that you can also configure SPNs for the user account running your Shared Service Provider. We do not recommend this practice because of unusual issues we have experienced. Also note that the Office SharePoint Server Web Services do not work under Kerberos.
THE FOLLOWING COMMANDS MUST BE RUN BY A DOMAIN ADMINISTRATOR!
Create a batch file with these two lines for each of your servers:
<path>\setspn.exe -A http/netbiosname domain\serviceaccount
<path>\setspn.exe -A http/fqdn domain\serviceaccount
<path>\setspn.exe -A MSSQLSvc/sqlserver:1433 domain\serviceaccount
<path>\setspn.exe -A MSSQLSvc/sqlserver.domain.com:1433 domain\serviceaccount
Step 3: Enable Kerberos on your web applications
Kerberos is a protocol which can be set on an IIS web application. Remember that in MOSS you have many different web applications:
- Your portal is a web application
- So is Central Administration
- My Site, if you choose to make it a separate web application
- The Office Server Web Services run under a web application
- And, finally, your Shared Service Provider
The only web application which you must place under Keberos is the portal web application, since this is probably why you are configuring Kerberos in the first place. You must not place the Office Server Web Services under Kerberos, since this is not supported. If you choose to enable Kerberos in your environment I would avoid running anything associated with Shared Services using any account you have placed under Kerberos.
In MOSS 2007, the switch between Kerberos and NTLM is very simple and is undertaken via Central Administration.
If you are creating your farm from scratch, be sure to set Central Administration itself to use Kerberos which you can set as part of the 'SharePoint Products and Technologies Configuration Wizard', however if the farm is pre-created you can easily enable Kerberos by following these steps:
- Open Central Administration
- Navigation to Application Management > Authentication Providers
- Choose the web application you wish to configure from the drop-down in the top right corner (this includes the Central Administration web application)
- Click on 'Default'
- Set the authentication to Negotiate (Kerberos)
- IISRESET
How do you know it has worked?
The easiest way to check is look at your security log in the event log for a successful authentication for a user and open it up. If it has entries that look like this:
Logon Process: Kerberos
Authentication Package: Kerberos
It's working fine. If they look like this:
Logon Process: NtLmSsp
Authentication Package: NTLM
Then you have missed something.
Some other things you can check:
- Do your web applications work from a client computer? If they do, then this is a good sign
- Make sure all the servers in the loop (MOSS, SQL and Domain Controllers) have the same time set. Inconsistent time settings are one of the primary causes of Kerberos related issues.
Hope this helps with your install of Kerberos.
Ben McMann
Tribridge