Grub2-mkpasswd-pbkdf2 -能接受标准输入吗?



在CentOS 6上,我们目前使用password --md5选项加密grub密码,并且我们能够将其脚本化到我们的标准服务器构建中。

我们正在忙着迁移到CentOS 7,似乎在grub2中已经删除了password --md5选项,取而代之的是grub2-mkpasswd-pbkdf2

虽然我对改进的安全性表示欢迎,但我找不到通过标准输入将密码传递给grub2-mkpasswd-pbkdf2命令的方法,而且grub2似乎已经删除了对md5的支持,这两个组合破坏了我们的脚本构建自动化。

有谁能帮忙吗?

  1. 通过标准输入将密码传递给grub2-mkpasswd-pbkdf2的方法或
  2. 替代grub2-mkpasswd-pbkdf2的pbkdf2生成实用程序,它接受标准输入?或
  3. 在grub2中使用--md5的一种机制?

grub-mkpassswd-pbkdf2从stdin中获取密码(两次)

如果您的密码在$passwd:

passwd="my test password"

您可以使用以下命令获得哈希值:(使用bash作为您的shell)

echo -e "$passwdn$passwd" | LC_ALL=C /usr/bin/grub-mkpasswd-pbkdf2 | awk '/hash of / {print $NF}'

AWK打印与给定模式匹配的行的最后一个字段,即散列。区域设置被强制为默认的(C),以防消息被翻译为其他区域设置。

我最近编写了一个工具来做到这一点——也就是说,能够更容易地非交互地生成GRUB2哈希,并且能够在RHEL6上做到这一点。在GitHub上。

  • burg2-mkpasswd-pbkdf2:使用python
  • 从命令行非交互式地生成与grub2兼容的PBKDF2哈希值

在自述文件中,您还将看到如何使用标准grub2-mkpasswd-pbkdf2通过使用换行符将密码输入两次来非交互地生成哈希值的解释。

相关内容

  • 没有找到相关文章

最新更新