代码之家  ›  专栏  ›  技术社区  ›  Wojtek

Linux上的Unix c_rehash命令/脚本等效于什么?

  •  7
  • Wojtek  · 技术社区  · 10 年前

    我正在遵循有关如何导入的说明 a certificate with its whole chain into a keystore . 我面临的问题是我的系统上没有c_rehash:

    user@hostanme$ c_rehash ./certs
    -bash: c_rehash: command not found
    

    我找到了 -subject_hash option of openssl x509 ,但我不确定如何使用它来复制c_rehash所做的任何操作。

    如果不使用c_rehash命令/script,我如何散列证书目录?

    3 回复  |  直到 8 年前
        1
  •  14
  •   agfe2    8 年前

    c_rehash需要“perl”来执行。 如果无法运行c_rease,请尝试以下操作。

    在Shell文件中使用“openssl”

    for file in *.pem; do ln -s "$file" "$(openssl x509 -hash -noout -in "$file")".0; done
    
        2
  •  3
  •   jww avp    10 年前

    user@hostanme$c_rehash/证书
    -bash:c_reash:未找到命令

    您要么需要安装OpenSSL(可能是开发人员版本),要么需要将其 bin/ 路径上的目录:

    $ find /usr -iname c_rehash
    /usr/bin/c_rehash
    /usr/local/ssl/darwin/bin/c_rehash
    /usr/local/ssl/macosx-x64/bin/c_rehash
    /usr/local/ssl/macosx-x86/bin/c_rehash
    

    确保使用正确的。如果我没记错,OpenSSL 0.9.8使用MD5,而OpenSSL 1.0.0及以上版本使用SHA1。

        3
  •  3
  •   Cameron Kerr    7 年前

    这个 c_rehash opensslperl包中提供了命令

    资料来源: https://bugzilla.redhat.com/show_bug.cgi?id=461123 已在RHEL7上验证