You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在chrony中启用SHA1哈希函数?解决密钥生成报错问题

解决chrony keygen报错"Unknown hash function SHA1"的问题

咱们一步步排查解决这个问题:

1. 先检查chrony支持的哈希算法拼写

首先进入chronyc交互模式,输入以下命令查看官方支持的哈希函数列表:

chronyc
> help keygen

或者直接输入keygen不带参数,它会输出所有可用算法。大概率是拼写问题——chrony里SHA1的标准写法是SHA-1(带连字符),而非SHA1。试试把命令改成:

chronyc> keygen 73 SHA-1 256

如果能正常执行,那就是个小拼写失误啦。

2. 若chrony确实不支持SHA-1:补全依赖后重新编译

如果上面的命令还是报错,说明你的chrony版本在编译时没启用SHA-1支持,这通常是因为缺少OpenSSL依赖。

步骤1:安装OpenSSL开发库

根据你的系统发行版执行对应命令:

  • Debian/Ubuntu系:
    sudo apt update && sudo apt install libssl-dev
    
  • CentOS/RHEL系:
    sudo dnf install openssl-devel
    

步骤2:重新编译chrony并启用OpenSSL支持

  1. 先卸载当前包管理器安装的chrony:
    # Debian/Ubuntu
    sudo apt remove --purge chrony
    # CentOS/RHEL
    sudo dnf remove chrony
    
  2. 下载chrony稳定版源码包,解压后进入源码目录,执行配置命令:
    ./configure --enable-openssl
    
    这个参数会让chrony编译时链接OpenSSL库,从而获得SHA-1等哈希算法的支持。
  3. 编译并安装:
    make && sudo make install
    

3. 替代方案:使用默认支持的其他哈希算法

如果不想折腾重新编译,也可以改用chrony默认支持的算法(比如SHA256),命令如下:

chronyc> keygen 73 SHA256 256

不过如果你的场景必须用SHA-1,还是优先解决前面的依赖和编译问题。

内容的提问来源于stack exchange,提问作者Nfernandez

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 09:07:17