redis-server 将 redis.sock 放在错误的文件夹中

redis-server places redis.sock in wrong folder

我正在配置 openvas,扫描器默认在 /tmp/redis.sock.

中查找 redis.sock

我已编辑 redis.conf 配置文件以显示

unixsocket /tmp/redis.sock

unixsocketperm 777

重新启动服务后,它会将 redis.sock 放入 /tmp/systemd-private34823472372937527347-redis-server/tmp/redis.sock

有什么帮助吗? Debian 拉伸 9.1 redis 服务器:3.2.6

每次重新启动 redis-server (sudo service redis-server restart) 后,如果我手动将 redis.sock 移回 /tmp,那么问题就解决了。但是,每次重新启动 redis-server 时都必须手动移动它并不是很好。

如果您的 Privatetemp 在您的 systemd 文件中设置为启用,那么它将在此私有目录中创建它。简单地关闭它效果很好

不要关闭 systemd 的 privatetmp 安全功能,而是配置 redis (redis.conf) 以使用 /var/run/redis/redis.sock 并将以下内容添加到您的 $prefix/etc/openvas/openvassd.conf 中:

kb_location = /var/run/redis/redis.sock

我有类似的问题,其中 openvas-check-status 导致:"

FIX: You should start the redis-server or configure it to listen on socket: /var/run/redis-openvas/redis-server.sock

查看加载过程,我在日志文件中发现了这些错误:

redis-server.service: Can't open PID file /var/run/redis/redis-server.pid(yet?) after start: No such file or directory

我知道它的坏习惯,但它解决了我的问题,我 运行:

 chmod 777 redis-server-openvas.log

**另外 - 应该注意的是,在这样做之前我还尝试了很多其他修复,所以也许它是其中一些的组合,而这个只是帮助完成它。