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

Azure上CIS加固的RHEL 9.1虚拟机部署Solr 9.2时低熵问题求助

Azure上CIS加固的RHEL 9.1虚拟机部署Solr 9.2时低熵问题求助

大家好!我最近在Azure上基于CIS官方镜像的RHEL 9.1虚拟机部署Solr 9.2,遇到了低熵的问题,折腾了好几种方法都没解决,来这儿求助各位大佬!

问题现象

启动Solr时,日志里一直弹出低熵警告,相关依赖随机数的功能(比如UUIDField、SSL)可能无法正常工作:

Started Apache Solr 9.
Java 17 detected. Enabled workaround for SOLR-16463
Warning: Available entropy is low. As a result, use of the UUIDField, SSL, or any other features that require
RNG might not work properly. To check for the amount of available entropy, use 'cat /proc/sys/kernel/random/entropy_avail'.

执行cat /proc/sys/kernel/random/entropy_avail查看,结果始终停留在256,完全没变化。

已尝试的操作

我已经安装了rng-tools和haveged这两个常用的熵补充工具,但问题依旧,两个服务的运行状态如下:

haveged服务状态

Started Entropy Daemon based on the HAVEGE algorithm.
haveged[14569]: haveged: command socket is listening at fd 3
haveged[14569]: haveged: fills: 1, generated: 512 K bytes, RNDADDENTROPY: 256

rngd服务状态

Started Hardware RNG Entropy Gatherer Daemon.
rngd[14506]: Disabling 7: PKCS11 Entropy generator (pkcs11)
rngd[14506]: Disabling 5: NIST Network Entropy Beacon (nist)
rngd[14506]: Disabling 9: Qrypt quantum entropy beacon (qrypt)
rngd[14506]: Initializing available sources
rngd[14506]: [hwrng ]: Initialization Failed
rngd[14506]: [rdrand]: Enabling RDSEED rng support
rngd[14506]: [rdrand]: Initialized
rngd[14506]: [jitter]: JITTER timeout set to 5 sec
rngd[14506]: [jitter]: Initializing AES buffer

我的疑问

有没有朋友遇到过类似的情况?我是不是漏掉了什么关键配置?目前自己梳理了几个可能的方向,也希望大家帮忙看看是否可行:

  • 检查CIS加固的内核参数限制:因为是CIS镜像,可能内核里被强制设置了固定的熵池大小,比如kernel.random.poolsize。可以用sysctl -a | grep random查看相关参数,如果这个值被设为256,试试调整到4096:

    sysctl -w kernel.random.poolsize=4096
    echo "kernel.random.poolsize=4096" >> /etc/sysctl.d/99-random.conf
    

    然后重启相关服务,观察熵值是否提升。

  • 调整haveged的配置参数:默认的haveged填充阈值可能太低,导致无法有效提升熵池。可以修改/etc/sysconfig/haveged(或/etc/default/haveged)文件,调整DAEMON_ARGS:

    DAEMON_ARGS="-w 1024"
    

    设置更高的警告阈值后,重启haveged服务:systemctl restart haveged,再查看熵值变化。

  • 让Solr直接使用urandom绕开低熵问题:其实Java应用可以指定使用/dev/urandom获取随机数(现代系统中urandom的安全性已经足够满足Solr的需求),这个方法往往能直接解决警告。修改Solr的启动配置文件solr.in.sh,在Java参数部分添加:

    SOLR_OPTS="$SOLR_OPTS -Djava.security.egd=file:/dev/./urandom"
    

    然后重启Solr,应该就不会再出现低熵警告了。

  • 排查rngd的有效源配置:从日志看rngd的硬件RNG初始化失败,仅启用了rdrand和jitter。可以尝试调整rngd的配置,强制它使用urandom作为输入源,修改/etc/sysconfig/rngd:

    RNGDOPTIONS="-r /dev/urandom -o /dev/random -b"
    

    重启rngd服务后观察效果。

备注:内容来源于stack exchange,提问作者Obirieni Simeo

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.22 10:12:59