所以就有了这种情况,这很烦人,因为它会在每次 rkhunter 检查某些服务器时发送带有警告的电子邮件。
基本上,错误是这样的:
警告:在/dev 中发现可疑文件类型: /dev/null :ASCII 文本
我不知道这是怎么发生的,因为这是一个特殊的字符文件:
# /usr/bin/文件 /dev/null /dev/null:特殊字符
我已经尝试通过在 rkhunter.conf 中尝试以下几行来抑制此警告:
EXISTWHITELIST=/dev/null ALLOWHIDDENFILE = / dev / null ALLOWPROCDELFILE = / dev / null ALLOWPROCDELFILE = / dev / null ALLOWDEVFILE = / dev / null
但仍然没有任何方法可以消除这个警告。
还发现这个错误被引发: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=866373
它是从 2017 和 1.4.2-6 版本回归的,并且我收到了 1.4.6 的确切警告。
有人知道如何消除这个警告吗?我有一个想法,从输出中“取消”grep /dev/null 并将其传递给电子邮件,但这需要相当大的努力,更好的方法是将其列入 conf 文件中的白名单。
[]# ls -ld /dev/null crw-rw-rw- 1 root root 1,3 2019 年 9 月 6 日 /dev/null
从这个输出可以看出,它确实是一个特殊字符。
Ps:这很容易重现:
rkhunter --check --report-warnings-only --no-mail-on-warning --enable filesystem
答案1
检查 /dev/null 是否是字符设备,如果不是,则需要移动它然后重新创建它:
# Switch to "root" user
sudo -i
# Check if /dev/null is a character device
if [[ ! -c /dev/null ]];then
# Backup/rename the current file
mv -vi /dev/null{,-$(date +%F_%H%M%S).backup}
# Create the character device /dev/null
mknod /dev/null -m a=rw c 1 3
# Restore SELinux permissions (needed only for RHEL, Fedora, CentOS)
restorecon -v /dev/null
fi
答案2
@Mircea Vutcovici
您的回答让我 ls /dev,但这次我执行的是 $(ls -l /dev) 而不是 $(ls -l /dev/null) 猜猜怎么着!发现了这个:
crw-rw-rw- 1 root root 1, 3 2019 年 9 月 6 日 null -rw-r--r-- 1 root root 54 3月 18 21:41 null
谢谢你! :)
Ps 最搞笑的是:
[]# ls -lh /dev/null crw-rw-rw- 1 root root 1,3 2019 年 9 月 6 日 /dev/null []# ls -lh /dev/nul* crw-rw-rw- 1 root root 1,3 2019 年 9 月 6 日 /dev/null -rw-r--r-- 1 root root 54 3月 18 21:41 /dev/null