从 shell 脚本验证用户帐户的密码

从 shell 脚本验证用户帐户的密码

应用程序用于多服务器标准化脚本

在 shell 脚本中寻找一种方法来检查操作系统帐户 (AIX) 的密码是否与标准化纯文本密码匹配。

问题是没有root访问权限,没有c编译器或python,而且我无法安装任何其他软件,包括expect.

到目前为止我还没有找到解决方案...有什么想法吗?

答案1

我将冒险将我之前的评论提升为答案。如果没有 root 访问权限,并且在不破坏 AIX 系统默认安全性的情况下(通过向非 root 用户开放密码文件),非 root 用户无法读取加密的密码文件,因此非 root 用户将无法进行比较现有密码的任何密码。

我能想到的最佳选择是尝试使用该帐户和假定的密码登录,然后检查结果。如果您在系统本地运行,您可以通过 telnet 或 ssh 访问本地主机;如果您是远程的,您将只能使用正在运行的任何外部登录方法(例如 ssh)。用 perl 或 Expect 包装登录过程,看看它是否有效。 (如果您无法在 AIX 系统本身上安装此类工具,请使用或从远程系统安装它们)。这种方法的一个小缺点是,如果您的密码不正确,则会将该用户的登录尝试失败次数增加一次。这样做大概不会导致帐户被锁定,但需要注意。

相关内容