Hi
we can reproduce a crash of the zabbix_agentd on newly installed
RedHat 5.5 systems with LDAP authentication enabled and used.
The error message is Segmentation fault. I am not sure
whether the code in src/zbxnix/daemon.c was changed for 1.8.x or not.
A 1.6.8 zabbix_proxy on the same server executing the same daemon code
works fine, though !
According to our experiments and analysis the cause of the problem does
not seem to be the zabbix_agentd but the OS or its configuration wrt. LDAP.
I am no LDAP nor PAM expert, so I can't tell. The zabbix user is a local
user and belongs to a local group.
The agent crashes only, if started by user root and therefore it changes
internally to user zabbix.
If started by a normal user, this part of the code in daemon.c is not
executed.
The backtrace (see attached file) suggests, that the OS is accessing LDAP
regardless whether the user is local or not. The crash happens in initgroups()
and the subroutines called by it.
I checked the parameters to the initgroups call which the zabbix_agentd provides and everything is OK: user: zabbix, gid: 508.
Our workaround is to start the zabbix_agentd in the init script directly
as user zabbix (via su). And this works fine.
We don't experience those problems with 1.6.8 agents running on previous versions of RedHat
OS, i.e. 5,4, 5.3 or 4.x where LDAP is configured and used.
I hope this helps others to avoid some experiments.
Best regards
Norbert.
we can reproduce a crash of the zabbix_agentd on newly installed
RedHat 5.5 systems with LDAP authentication enabled and used.
The error message is Segmentation fault. I am not sure
whether the code in src/zbxnix/daemon.c was changed for 1.8.x or not.
A 1.6.8 zabbix_proxy on the same server executing the same daemon code
works fine, though !
According to our experiments and analysis the cause of the problem does
not seem to be the zabbix_agentd but the OS or its configuration wrt. LDAP.
I am no LDAP nor PAM expert, so I can't tell. The zabbix user is a local
user and belongs to a local group.
The agent crashes only, if started by user root and therefore it changes
internally to user zabbix.
If started by a normal user, this part of the code in daemon.c is not
executed.
The backtrace (see attached file) suggests, that the OS is accessing LDAP
regardless whether the user is local or not. The crash happens in initgroups()
and the subroutines called by it.
I checked the parameters to the initgroups call which the zabbix_agentd provides and everything is OK: user: zabbix, gid: 508.
Our workaround is to start the zabbix_agentd in the init script directly
as user zabbix (via su). And this works fine.
We don't experience those problems with 1.6.8 agents running on previous versions of RedHat
OS, i.e. 5,4, 5.3 or 4.x where LDAP is configured and used.
I hope this helps others to avoid some experiments.
Best regards
Norbert.
Comment