我正在开发一个分布在虚拟机上的应用程序。默认密码始终相同,但/etc/shadow
每个版本的哈希值都会发生变化。如何以编程方式(例如,通过bash
脚本)查明密码是否已更改?检查哈希值不是一个选项,因为如果密码更改为其他内容并更改回来,密码将会有所不同。我还想让检查尽可能简单。
答案1
如果您知道密码,则可以使用以下命令生成 md5 字符串
openssl passwd -salt $salt -1 foo
重点是获取“$salt”的值。可以使用 awk 对来自 的加密密码进行检索/etc/shadow
。
echo $CRYPTIC | awk -F\$ '{print $3}'