首次登录时添加 FreeBSD 用户

首次登录时添加 FreeBSD 用户

是否有可能在我的 FreeBSD 8.2 服务器上实现所建议的行为:

新用户通过 ssh 进入我的服务器。他输入“登录名:”作为他的学生索引号,然后系统会创建一个新的锁定帐户,并向他的[电子邮件保护]邮件作为身份验证方法。使用此密码登录后,帐户将完全创建和激活/解锁,并要求/强制用户更改密码。

答案1

我不完全确定在不破解 openssh 的情况下是否可行。如果可行,那么肯定需要滚动您自己的 PAM 身份验证模块并将其输入到链中/etc/pam.d/sshd。如果您出于学术目的想要这样做,那么这是一个不错的项目。

但是,如果你的目标是让学生轻松登录,那么我会说安装起来要容易得多www/nginx并在 cgi-bin 目录中粘贴一个脚本,该脚本通过电子邮件发送密码并创建帐户(如果帐户尚不存在)。口令(8)拥有用户账户验证和自动创建的所有功能。对于学生来说,如果他们知道 URL,创建此账户同样容易。

答案2

最接近简单的解决方案是让他们最初登录到“studentsetup”帐户,该帐户提示他们根据他们的大学凭证创建或重置 Unix 帐户/密码......并且不执行任何其他操作。

只需设置“studentsetup”来启动 shell 脚本,而不是 zsh、bash、tcsh 或任何其他脚本。为“studentsetup”提供一些“/bin/passwd”和“/usr/bin/adduser”的 setuid-root 副本。与任何安全 shell 脚本一样,请注意引用和 shell-out 问题。

另一种优雅的解决方案是与 NT5 (Win2k) 基础架构进行互操作,这对于学生来说可能已经存在。FreeBSD 包含 Kerberos。不过,对于新手来说,配置并不容易。

相关内容