SSSD/Kerberos/LDAP Authentication: Difference between revisions
No edit summary |
|||
Line 104: | Line 104: | ||
####:03/31/16 07:17:39 03/31/16 17:17:35 krbtgt/<DOMAIN.COM>@<DOMAIN.COM> | ####:03/31/16 07:17:39 03/31/16 17:17:35 krbtgt/<DOMAIN.COM>@<DOMAIN.COM> | ||
####: renew until 04/07/16 07:17:39</tt> | ####: renew until 04/07/16 07:17:39</tt> | ||
==Register Server with Active Directory== | |||
#Join AD and obtain a keytab | |||
##<tt>'''# net ads join -k createcomputer="Computer-Groups/Servers/Linux"'''</tt> | |||
#Verify the keytab | |||
##<tt>'''# klist -k'''</tt> | |||
The output should be similar to: | |||
Keytab name: FILE:/etc/krb5.keytab | |||
KVNO Principal | |||
---- -------------------------------------------------------------------------- | |||
2 host/<servername.domain.com@DOMAIN.COM> | |||
2 host/<servername.domain.com@DOMAIN.COM> | |||
2 host/<servername.domain.com@DOMAIN.COM> | |||
2 host/<servername.domain.com@DOMAIN.COM> | |||
2 host/<servername.domain.com@DOMAIN.COM> | |||
2 host/<SERVERNAME@DOMAIN.COM> | |||
2 host/<SERVERNAME@DOMAIN.COM> | |||
2 host/<SERVERNAME@DOMAIN.COM> | |||
2 host/<SERVERNAME@DOMAIN.COM> | |||
2 host/<SERVERNAME@DOMAIN.COM> | |||
2 <SERVERNAME$@DOMAIN.COM> | |||
2 <SERVERNAME$@DOMAIN.COM> | |||
2 <SERVERNAME$@DOMAIN.COM> | |||
2 <SERVERNAME$@DOMAIN.COM> | |||
2 <SERVERNAME$@DOMAIN.COM> | |||
3. Obtain a Kerberos ticket using keytab in capitals. | |||
# kinit -k <server name>$ | |||
4. Verify the new default principal, it will have changed from <admin account> to <server name> | |||
# klist |
Revision as of 17:26, 21 July 2016
Install Required Packages
- RHEL6: Install the following packages.
- # yum install sssd krb5-workstation samba-common authconfig oddjob oddjob-mkhomedir openldap-clients ipa-client sssd-common krb5-devel
- RHEL7: Install the following packages
- # yum install sssd krb5-workstation samba-common authconfig oddjob oddjob-mkhomedir openldap-clients sssd-libwbclient sssd-tools ipa-client sssd-common krb5-devel
- UBUNTU: Install the following packages
- $ sudo apt-get install krb5-user krb5-config samba sssd ntp nscd libpam-sss libnss-sss sssd-tools sssd-ad libpam-modules
Configure Kerberos
- Gather the list of KDCs for the realm, the KDCs are bold italic.
- # nslookup -type=SRV _kerberos._tcp.<domain.com>
- Output of previous command:
- Server: <ip address>
- Address: <ip address>#53
_kerberos._tcp.<domain in lowercase> service = 0 100 88 dc1.<domain.com>.- _kerberos._tcp.<domain in lowercase> service = 0 100 88 dc2.<domain.com>.
- _kerberos._tcp.<domain in lowercase> service = 0 100 88 dc3.<domain.com>.
- _kerberos._tcp.<domain in lowercase> service = 0 100 88 dc4.<domain.com>.
- # nslookup -type=SRV _kerberos._tcp.<domain.com>
- Create a backup of the /etc/krb5.conf file.
- # cp -p /etc/krb5.conf{,.bak}
- Modify the /etc/krb5.conf file as follows, changes are bold italic.
- [logging]
- default = FILE:/var/log/krb5libs.log
- kdc = FILE:/var/log/krb5kdc.log
- admin_server = FILE:/var/log/kadmind.log
[libdefaults]- default_realm = <DOMAIN.COM>
- dns_lookup_realm = false
- dns_lookup_kdc = false
- ticket_lifetime = 24h
- renew_lifetime = 7d
- forwardable = true
[realms]- <DOMAIN.COM> = {
- kdc = dc1.<DOMAIN.COM>
- kdc = dc2.<DOMAIN.COM>
- kdc = dc3.<DOMAIN.COM>
- kdc = dc4.<DOMAIN.COM>
- admin_server = <DOMAIN.COM>
- }
[domain_realm]- .<domain.com> = <DOMAIN.COM>
- <domain.com> = <DOMAIN.COM>
Configure Samba
- Create a backup of the /etc/samba/smb.conf file.
- # cp -p /etc/samba/smb.conf{,.bak}
- Modify the /etc/samba/smb.conf file as follows, changes are are in bold italic.
- [global]
- workgroup = <DOMAIN>
- ; server string = Samba Server Version %v
- .
- .
- ; security = user
- ; passdb backend = tdbsam
- .
- .
- client signing = yes
- client use spnego = yes
- kerberos method = secrets and keytab
- security = ads
- passdb backend = tdbsam
- realm = <DOMAIN.COM>
- .
- .
- ; load printers = yes
- ; cups options = raw
- .
- .
- ;[printers]
- ; comment = All Printers
- ; path = /var/spool/samba
- ; browseable = no
- ; guest ok = no
- ; writable = no
- ; printable = yes
- Verify the Samba configuration.
- # testparm
- The output should be similar to
- [global]
- workgroup = <DOMAIN>
- realm = <DOMAIN.COM>
- security = ADS
- kerberos method = secrets and keytab
- log file = /var/log/samba/log.%m
- max log size = 50
- client signing = required
- idmap config * : backend = tdb
-
[homes] - comment = Home Directories
- read only = No
- browseable = No
Kerberos Ticket
- Obtain and verify a new ticket using the new Kerberos configuration.
- # kinit <admin account>
- Enter the password.
- # kinit <admin account>
- Verify the ticket
- ;# klist
- The output should be similar to:
- Ticket cache: FILE:/tmp/krb5cc_0
- Default principal: <admin account>@<DOMAIN.COM>
Valid starting Expires Service principal- 03/31/16 07:17:39 03/31/16 17:17:35 krbtgt/<DOMAIN.COM>@<DOMAIN.COM>
- renew until 04/07/16 07:17:39
- The output should be similar to:
- ;# klist
Register Server with Active Directory
- Join AD and obtain a keytab
- # net ads join -k createcomputer="Computer-Groups/Servers/Linux"
- Verify the keytab
- # klist -k
The output should be similar to: Keytab name: FILE:/etc/krb5.keytab KVNO Principal ---- -------------------------------------------------------------------------- 2 host/<servername.domain.com@DOMAIN.COM> 2 host/<servername.domain.com@DOMAIN.COM> 2 host/<servername.domain.com@DOMAIN.COM> 2 host/<servername.domain.com@DOMAIN.COM> 2 host/<servername.domain.com@DOMAIN.COM> 2 host/<SERVERNAME@DOMAIN.COM> 2 host/<SERVERNAME@DOMAIN.COM> 2 host/<SERVERNAME@DOMAIN.COM> 2 host/<SERVERNAME@DOMAIN.COM> 2 host/<SERVERNAME@DOMAIN.COM> 2 <SERVERNAME$@DOMAIN.COM> 2 <SERVERNAME$@DOMAIN.COM> 2 <SERVERNAME$@DOMAIN.COM> 2 <SERVERNAME$@DOMAIN.COM> 2 <SERVERNAME$@DOMAIN.COM>
3. Obtain a Kerberos ticket using keytab in capitals. # kinit -k <server name>$
4. Verify the new default principal, it will have changed from <admin account> to <server name>
- klist