Package: collectd
Version: 5.12.0-22
Severity: normal
X-Debbugs-Cc: mgronczew...@efigence.com
We're using collectd instance to translate from collectd protocol to
riemann so config (in attachment) is pretty simple; with enabled
write_riemann plugin we are getting segfault as soon as it starts
receiving data:
/usr/sbin/collectd -C /etc/collectd-server.conf -f
[2024-11-27 16:57:34] plugin_load: plugin "logfile" successfully loaded.
Segmentation fault
(as in it starts when I block incoming traffic in iptables but crashes
when I remove the block and traffic hits it).
weirdly enough, not on every server, but I assume that's coz traffic is
hashed and some get the type of packets that trigger that bug.
I think it might be this one
https://github.com/collectd/collectd/issues/4050
that was patched and backported to 5.12 at beginning of this year:
https://github.com/collectd/collectd/pull/4232
https://github.com/collectd/collectd/commit/cfdf526f1b4867d8952fc6d37b85f0d426a78fc7
-- System Information:
Debian Release: 12.8
APT prefers bookworm-security
APT policy: (500, 'bookworm-security'), (500, 'bookworm')
Architecture: amd64 (x86_64)
Kernel: Linux 6.1.0-28-amd64 (SMP w/24 CPU threads; PREEMPT)
Locale: LANG=C.UTF-8, LC_CTYPE=pl_PL.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
Versions of packages collectd depends on:
ii collectd-core 5.12.0-14
ii libc6 2.36-9+deb12u9
ii librrd8 1.7.2-4+b8
Versions of packages collectd recommends:
ii default-jre-headless 2:1.17-74
pn intel-cmt-cat <none>
pn libabsl20220623 <none>
pn libatasmart4 <none>
pn libbson-1.0-0 <none>
ii libcurl3-gnutls 7.88.1-10+deb12u8
ii libdbi1 0.9.0-6
pn libesmtp6 <none>
ii libgcc-s1 12.2.0-14
ii libgcrypt20 1.10.1-3
ii libglib2.0-0 2.74.6-2+deb12u4
pn libgps28 <none>
pn libgrpc++1.51 <none>
pn libgrpc29 <none>
pn libhiredis0.14 <none>
pn libi2c0 <none>
ii libip4tc2 1.8.9-2
ii libip6tc2 1.8.9-2
ii libjansson4 2.14-2
ii libldap-2.5-0 2.5.13+dfsg-5
ii liblua5.3-0 5.3.6-2
ii libmariadb3 1:10.11.6-0+deb12u1
pn libmemcached11 <none>
pn libmicrohttpd12 <none>
ii libmnl0 1.0.4-3
pn libmodbus5 <none>
pn libmongoc-1.0-0 <none>
pn libmosquitto1 <none>
pn libnotify4 <none>
ii libopenipmi0 2.0.33-1+b1
ii liboping0 1.10.0-5+b1
ii libpcap0.8 1.10.3-1
ii libperl5.36 5.36.0-7+deb12u1
pn libpq5 <none>
ii libprotobuf-c1 1.4.1-1+b1
pn libprotobuf32 <none>
pn libpython3.11 <none>
pn libqpid-proton11 <none>
pn librabbitmq4 <none>
pn librdkafka1 <none>
ii libriemann-client0 1.10.4-2+deb12u1
ii librrd8 1.7.2-4+b8
pn librte-eal23 <none>
pn librte-ethdev23 <none>
ii libsensors5 1:3.6.0-7.1
ii libsnmp40 5.9.3+dfsg-2
ii libssl3 3.0.15-1~deb12u1
ii libstdc++6 12.2.0-14
ii libudev1 252.31-1~deb12u1
pn libupsclient6 <none>
pn libvarnishapi3 <none>
pn libvirt0 <none>
pn libxenmisc4.17 <none>
ii libxml2 2.9.14+dfsg-1.3~deb12u1
ii libyajl2 2.1.0-3+deb12u2
collectd suggests no packages.
##############################################################################
# Global #
#----------------------------------------------------------------------------#
# Global settings for the daemon. #
##############################################################################
#Hostname "localhost"
FQDNLookup true
#BaseDir "/usr/var/lib/collectd"
PIDFile "/var/run/collectd-server.pid"
#PluginDir "/usr/lib/collectd"
TypesDB "/usr/share/collectd/types.db"
TypesDB "/etc/collectd/custom_types.db"
Interval 10
#Timeout 2
#ReadThreads 5
##############################################################################
# Logging #
#----------------------------------------------------------------------------#
# Plugins which provide logging functions should be loaded first, so log #
# messages generated when loading or configuring other plugins can be #
# accessed. #
##############################################################################
#LoadPlugin syslog
LoadPlugin logfile
<Plugin logfile>
LogLevel info
File "/dev/null"
Timestamp true
PrintSeverity true
</Plugin>
#<Plugin syslog>
# LogLevel info
#</Plugin>
# Load required matches:
LoadPlugin match_empty_counter
LoadPlugin match_hashed
LoadPlugin match_regex
LoadPlugin match_value
LoadPlugin match_timediff
# Load required targets:
LoadPlugin target_notification
LoadPlugin target_replace
LoadPlugin target_scale
LoadPlugin target_set
LoadPlugin network
<Plugin network>
Listen "0.0.0.0" "25826"
</Plugin>
# in case of bad/legacy client
<Chain "PreCache">
<Rule "cut domain name">
<Match "regex">
Host "non.3dart.com"
</Match>
<Target "replace">
Host ".non\.3dart\.com" ""
</Target>
</Rule>
</Chain>
LoadPlugin write_riemann
<Plugin "write_riemann">
<Node "127.0.0.1">
Host "127.0.0.1"
Port "5555"
Protocol UDP
# StoreRates true
StoreRates false
AlwaysAppendDS false
TTLFactor 5.0
</Node>
Tag "collectd"
</Plugin>
LoadPlugin write_http
<Plugin "write_http">
<Node "localhost">
URL "http://127.0.0.1:3004/collectd"
Format JSON
</Node>
</Plugin>