Demonstrate that MIT Kerberos 1.11 no longer requires clients to synchronize their system clocks with that of the KDC.
- Verify that your ActiveDirectory domain access works. If you don't have an Active Directory domain, you can set one up.
- You need a domain account, either a user or administrator. It's useful to test with both.
- Make sure you have krb5-workstation-1.11 or later installed.
- Get the client's current system time.
Mon Mar 11 15:47:05 EDT 2013
- Set the system time on the client to be more than 24 hours ahead of the client's current system time. This will ensure that the client and Active Directory server's clocks are not synchronized.
$ sudo date -s "12 MAR 2013 15:47:05 EDT"
Tue Mar 12 15:47:05 EDT 2013
How to test
- Use an Active Directory domain user account to authenticate to the Active Directory server using kinit
$ kinit user@AD.EXAMPLE.COM
Password for user@AD.EXAMPLE.COM
- Make sure that you capitalize the domain name.
- If the above fails with 'Preauthentication failed' then you probably typed the wrong password.
- There should be no output from this command.
- Check that you have an appropriate entry in your credentials cache using the klist command.
- You should see a line that has a service principal named "krbtgt/AD.EXAMPLE.COM@AD.EXAMPLE.COM"
More: Other time offsets
Try setting other time offsets to break kerberos clock syncing:
* More than a day backward * Less than a day backwards/forwards
If you want to file a bug related to this issue, run the command with the the
KRB5_TRACE=/dev/stderr environment variable, like this:
$ KRB5_TRACE=/dev/stderr kinit user@AD.EXAMPLE.COM