【问题标题】:grub2-mkpasswd-pbkdf2 - can it accept standard input?grub2-mkpasswd-pbkdf2 - 它可以接受标准输入吗?
【发布时间】:2015-07-30 00:14:42
【问题描述】:

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

我们正忙于迁移到 CentOS 7,看来 password --md5 选项已在 grub2 中删除并替换为 grub2-mkpasswd-pbkdf2

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

谁能帮忙:

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

【问题讨论】:

标签: security centos redhat grub grub2


【解决方案1】:

我最近写了一个工具来做这件事——也就是说,能够更容易地以非交互方式生成 GRUB2 哈希,并且能够在 RHEL6 上这样做。它在 GitHub 上。

在自述文件中,您还将看到有关如何使用标准 grub2-mkpasswd-pbkdf2 通过使用换行符将密码传送两次以非交互方式生成散列的说明。

【讨论】:

  • 谢谢,我将其标记为已接受的答案,因为它看起来很可靠,我很欣赏输入,但是我得到了我需要使用“expect -c ...”的答案
【解决方案2】:

grub-mkpassswd-pbkdf2 采用password (twice) from stdin

如果你的密码是$passwd:

passwd="my test password"

您可以通过以下方式获取哈希:(使用 bash 作为您的 shell)

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

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

【讨论】:

  • 你也可以使用awk '/grub.pbkdf/{print$NF}' 不关心不同的语言环境。
猜你喜欢
  • 2018-08-14
  • 1970-01-01
  • 2011-02-07
  • 2011-01-15
  • 1970-01-01
  • 1970-01-01
  • 2011-03-27
  • 1970-01-01
  • 2017-01-19
相关资源
最近更新 更多