Dotfiles/setup/modules/FreeipaAnsible
Amir Alexander Abdelbaki 76c3c2c1c5 feat(ansipa): add usr_smb_* and dev_ssh_* policies
usr_smb_r_<name> / usr_smb_rw_<name> (user groups):
- Server creates /data/smb-shares/<name>/ with smb-<name> system user,
  setgid directory, and Samba share stanzas [usr-<name>-r/rw] on startup
- Auto-generates credentials and stores them in IPA group descriptions
  (cifs://<host>:<samba-user>:<password>) so no out-of-band secret distribution
- Client mounts //ipa/<share> at ~/‹name› for logged-in members;
  rw membership wins over r when user is in both groups
- Revert: unmounts and rmdir the mount point on group leave

dev_ssh_<userid> (host group):
- Reads IPA user's SSH public keys (ipasshpubkey / --all output)
- Writes them into /home/<userid>/.ssh/authorized_keys in an
  ansipa-managed section (preserves manually-added keys)
- Home dir is created if it doesn't exist (user may not have logged in yet)
- Revert: removes only the ansipa-managed section on group leave
- Enables same-key SSH access from any registered device to enrolled hosts

Also: add cifs-utils + openssh-server to Ansible package list

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DHops6PU4c2Mv5UyhUj8Ms
2026-07-01 13:52:26 +02:00
..
ansible feat(ansipa): add usr_smb_* and dev_ssh_* policies 2026-07-01 13:52:26 +02:00
image feat(ansipa): add usr_smb_* and dev_ssh_* policies 2026-07-01 13:52:26 +02:00
auto-enroll-ansible.sh Update setup/modules/FreeipaAnsible/auto-enroll-ansible.sh 2026-04-27 16:38:02 +02:00
copilot-explains.txt Update setup/modules/FreeipaAnsible/copilot-explains.txt 2026-04-27 17:00:37 +02:00
freeipa-client-answerfile.json setup: add FreeIPA server module and generic client script 2026-05-18 11:12:31 +02:00
freeipa-client.sh setup: add FreeIPA server module and generic client script 2026-05-18 11:12:31 +02:00
freeipa-enroll.sh Update setup/modules/FreeipaAnsible/freeipa-enroll.sh 2026-04-27 16:37:09 +02:00