Ldap

LDAP Linux 導入使用者 shell 配置文件

  • March 31, 2020

我想知道當使用者第一次登錄時是否可以從我們的 LDAP 導入一些使用者配置文件(例如 zsh 或 bashrc 的 shell 配置)?這正是 mak /etc/skel 的內容,但它不是為每個使用者定義的,因此他們不能擁有自己的配置(沒有配置它)。

謝謝你的幫助。

經過一些研究,我成功地為我們的使用者建構了一種工作流程,讓他們擁有自己的配置:

  1. 創建一個從我們的 gitlab 檢索使用者配置的 bash 腳本
  2. 當我們創建一個新伺服器時,我們在 shell 文件(例如 .bashrc 或 .zshrc)中添加一行到 /etc/skell,以便在他們登錄時執行腳本。這一步是由我們的 Ansible 伺服器自動完成的。
  3. 當他們第一次登錄時,會複製 skell 文件,然後載入 shell 文件(然後執行我們的腳本)
#!/bin/bash
git clone "https://username:password@gitlab_url/ldap-user-config/$USER.git" > /dev/null 2>&1
if [ -d ${HOME}/${USER} ]
then
       shopt -s dotglob
       mv ${HOME}/${USER}/* ${HOME}/
       shopt -u dotglob
       rm -rf "$HOME/.git" "$HOME/$USER"
else
       printf "Something goes wrong during cloning your config, contact an admin\n"
fi

引用自:https://serverfault.com/questions/1005671