在 chroot jail 中运行的 HAProxy 仅记录已启动的消息

在 chroot jail 中运行的 HAProxy 仅记录已启动的消息

我已经将 HAProxy 服务器配置为在 chroot jail 中运行,将消息记录到 syslog 套接字。我的问题是,当前记录的唯一消息是 haproxy 启动时的消息。

May 26 10:42:37 dev haproxy[13986]: Proxy my_listener started.

我创建了一个名为 haproxy 的用户和组,然后执行以下操作:

su -l haproxy
mkdir jail
mkdir -m 2750 jail/dev
chmod a-w jail

我的 haproxy 配置中的相关行如下:

global
    chroot          /home/haproxy/jail
    daemon
    group           haproxy
    node            haproxy
    log             /home/haproxy/jail/dev/log local0

defaults
    log             global
    option          tcplog

syslogd 正在使用该选项启动-a /home/haproxy/jail/dev/log,并且我已将以下行添加到/etc/syslog.conf

local0.*            -/var/log/haproxy.log

jail/dev 上的 ls -la 给出

drwxrws--- 2 haproxy haproxy 4096 May 26 11:07 .
dr-xr-x--x 3 haproxy haproxy 4096 May 26 11:01 ..
srw-rw-rw- 1 root    haproxy    0 May 26 11:07 log

运行 Centos 5.5 和 HAProxy 1.4.21。正如我所说,我只看到侦听器启动消息,haproxy.log没有其他消息。

答案1

这里的问题是需要从 chroot jail 目录指定 syslog 套接字的路径。下面为我修复了这个问题

global
    log             /home/haproxy/jail/dev/log local0

defaults
    log             /dev/log local0

一个小问题是,如果重新加载,已启动的消息会出现在停止消息之前,但我可以忍受。

相关内容