guides:freeipa

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
guides:freeipa [2017/05/03 03:13]
jamesdro Trim up the config
guides:freeipa [2017/11/29 21:11] (current)
jamesdro NTP is important, mmkay
Line 4: Line 4:
 ===== Server ===== ===== Server =====
 Basically follow [this](https://​www.freeipa.org/​page/​Quick_Start_Guide). ​ Also DNS is _suuuuuuupppppeeeerrrrr_ important. Basically follow [this](https://​www.freeipa.org/​page/​Quick_Start_Guide). ​ Also DNS is _suuuuuuupppppeeeerrrrr_ important.
 +
 +As a note, you should install `libsss_sudo`. ​ Otherwise you might get this error:
 +
 +```
 +sudo: unable to load /​usr/​lib64/​libsss_sudo.so:​ /​usr/​lib64/​libsss_sudo.so:​ cannot open shared object file: No such file or directory
 +sudo: unable to initialize SSS source. Is SSSD installed on your machine?
 +```
 +
 +When running sudo on the server.
  
 ===== Client ===== ===== Client =====
-On RHEL based ones, install `freeipa-client`. ​ Super easy.  However, if you're on debian-master-race,​ you don't need hand holding and an "​automated client"​. ​ Let's dig into some config files.+On RHEL based ones (and Ubuntu 16.04), install `freeipa-client`. ​ Super easy.  ​Then run: 
 + 
 +``` 
 +ipa-client-install --mkhomedir --enable-dns-updates --ssh-trust-dns 
 +``` 
 + 
 +However, if you're on debian-master-race,​ you don't need hand holding and an "​automated client"​. ​ Let's dig into some config files.
  
 ===== Debian Installation ===== ===== Debian Installation =====
Line 15: Line 30:
   - Grab your krb5.keytab,​ and dump it to `/​etc/​krb5.keytab`   - Grab your krb5.keytab,​ and dump it to `/​etc/​krb5.keytab`
     - `ipa-getkeytab -p host/​name.ubnetdef.net -k /​tmp/​keytab`     - `ipa-getkeytab -p host/​name.ubnetdef.net -k /​tmp/​keytab`
 +  - Grab the CA cert (`/​etc/​ipa/​ca.crt` on the FreeIPA server) and save it to `/​etc/​sssd/​ipa.crt`
   - Append the following line to `/​etc/​pam.d/​common-session`   - Append the following line to `/​etc/​pam.d/​common-session`
     - `session required pam_mkhomedir.so skel=/​etc/​skel/​`     - `session required pam_mkhomedir.so skel=/​etc/​skel/​`
 +  - Append the following lines to `/​etc/​ssh/​sshd_config` to allow public key logins
 +    - `AuthorizedKeysCommand /​usr/​bin/​sss_ssh_authorizedkeys`
 +    - `AuthorizedKeysCommandUser nobody`
 +  - Append the following line to `/​etc/​systemd/​timesyncd.conf`
 +    - `Servers=tick.cse.buffalo.edu tock.cse.buffalo.edu ticktock.cse.buffalo.edu`
 +  - Enable NTP: `timedatectl set-ntp yes`
   - GG, you're done.   - GG, you're done.
  
Line 35: Line 57:
 # Configure sudo # Configure sudo
 ldap_uri = ldaps://​master.ubnetdef.net ldap_uri = ldaps://​master.ubnetdef.net
 +ldap_tls_cacert = /​etc/​sssd/​ipa.crt
 ldap_sudo_search_base = ou=sudoers,​dc=ubnetdef,​dc=net ldap_sudo_search_base = ou=sudoers,​dc=ubnetdef,​dc=net
 ldap_sasl_mech = GSSAPI ldap_sasl_mech = GSSAPI
  • guides/freeipa.1493781230.txt.gz
  • Last modified: 2017/05/03 03:13
  • by jamesdro