我最近安装了一个新的分区,并将/ home和/ var / lib / mysql移动到新的驱动器上,并为它们build立了一个符号链接。
现在我注意到,使用munin的熵已经从3000左右降到了100-200左右。 数据挂载和移动是否会造成这种情况?
我使用这个作为一个Apachenetworking服务器来面对公众用户的网站,我也注意到了负载的增加(可能是由于低熵造成的?)
如果这是一个大问题,我想找出解决低熵问题的方法。
我读过,我可以通过使用rng-tools添加熵并切换到使用urandom。 人们说这对安全意识不强的系统来说不是一个好的方法。 但是,这会很好的一个networking应用程序? 这会让我的networking应用程序(我们对密码和确认链接之类的东西使用encryption(散列)),但是我不确定这个程序有多less属于“安全意识”。
有任何想法吗?
我正在使用云实例CentOS 5(虚拟机)。
我会说,除非你担心一个有决心和复杂的攻击者,通过打破Linux内核中使用的伪随机algorithm来破坏你的站点,否则urandom可能是好的。
你会发现任何与encryption相关的东西,包括encryption散列(盐是随机的,即使散列函数本身不涉及随机性)也会消耗你的熵。 而且,虚拟机的熵会减less,因为从虚拟机没有的东西获得熵,或者不能从物理鼠标,键盘或时钟等安全地获取熵。
我也不确定你为什么考虑100-200less量。 我认为0-10是小的,但要记住池的最大尺寸(/ proc / sys / kernel / random / poolsize)可能只有4096个。除非你在0分之一时间,你可能没有太快使用它(你可能已经使用urandom而不知道它)。 据我所知,从/ dev / random读取不会阻塞,直到熵池为 0。
如果你有足够的熵去播种你的伪随机数发生器(PRNG),那么对于大多数目的而言,它应该不是一个足够的来源。
使用rng-tools,你可以用/ dev / urandom中的/ dev /
rngd -r /dev/urandom -o /dev/random -f -t 1
(用-b
代替-f
守护进程; centos没有rngd的init脚本,但你应该可以很容易地修改现有的脚本)
(理由是/ dev / random(真随机)是阻塞的,而/ dev / urandom(伪随机)不是 – 增加/ dev / random的熵会对性能产生影响,如果你经常对熵。)
您可以通过以下方式validation对熵的影响:
cat /proc/sys/kernel/random/entropy_avail
如果您担心PRNG的“质量”,则可以使用以下方法testing其熵:
cat /dev/urandom | rngtest -c 1000
由于您使用的是虚拟服务器,因此通常很难通过熵(没有鼠标/键盘,声卡/video卡等)。 如果你关心来自/ dev / urandom的熵的质量,你可以试试这个定时器熵守护进程 ,它使用睡眠时间的不准确性来产生熵。