在 SSSD 创建新用户时运行 Bash 脚本

在 SSSD 创建新用户时运行 Bash 脚本

在 AD 上创建的用户可以使用密码登录 Linux。我想用 ssh-key 替换此密码登录。到目前为止,我已经创建了一个自定义属性并将公钥放在其中,并且能够使用脚本在 Linux 上获取它。我想在创建新用户时将此密钥放在 /home/user/.ssh/authorised_key 中。

是否存在可以用来触发我的脚本的事件或配置文件?

注意:每当用户首次登录时,SSSD 都会创建用户和主目录。

答案1

~/.ssh/authorized_keys您可以配置 openssh 以直接针对 AD 进行验证,而不是将公钥从 Active Directory 复制到文件。

OpenSSH 支持AuthorizedKeysCommand为您提供的指令sshd_config,允许您指定用于查找用户公钥的程序而不是在尝试从(本地)文件读取它之前。例如:

 AuthorizedKeysCommand /path/to/script %u 

其中,/path/to/script以例如用户名作为命令行参数,然后在标准输出上必须返回零行或多行 authorized_keys 输出。

相关内容