Generated by GPT-5-mini| syslogd | |
|---|---|
| Name | syslogd |
| Title | syslogd |
| Author | Eric Allman |
| Developer | Open Group; various BSD and Linux projects |
| Released | 1980s |
| Latest release | varies by implementation |
| Operating system | Unix-like |
| Platform | POSIX |
| Genre | System logging daemon |
| License | BSD license; varied |
syslogd is a background daemon implementing the Syslog protocol for logging system messages on Unix-like systems. It collects, formats, filters, and routes messages from the kernel, system services, and user-space applications to log files, consoles, remote servers, and other destinations. syslogd underpins logging infrastructure used by projects such as BSD variants, Linux, SunOS, AIX, and many network devices, integrating with monitoring ecosystems like Nagios, Zabbix, and Prometheus.
syslogd provides a central facility for handling timestamped messages from diverse sources including the kernel, daemons such as sendmail and dhcpd, and user utilities like cron and sshd. Implementations follow the syslog protocol described in RFCs and standards adopted by IETF working groups and used in environments administered through tools from Red Hat, Debian, Canonical, and SUSE. Logging categories (facilities) and severity levels (emerg, alert, crit, err, warning, notice, info, debug) map to destinations that administrators and automated systems inspect for operational awareness across infrastructures such as Amazon Web Services, Google Cloud Platform, and Microsoft Azure.
The original syslog design emerged in the early Unix era, authored by developers including Eric Allman for projects like Sendmail and influenced by conventions in BSD distributions. Subsequent revisions formalized behavior in documents produced by the IETF and implementations evolved within repositories maintained by organizations such as OpenBSD, NetBSD, FreeBSD, and commercial vendors like Sun Microsystems. The protocol and daemon behavior shifted as networked logging and structured logging demands grew, prompting work by contributors from The Linux Foundation, Mozilla, and academic researchers into reliable log transport and message integrity.
syslogd operates as a single or multiple processes that listen on local sockets (e.g., /dev/log) and network ports (e.g., UDP 514, TCP 514) to accept messages from clients like rsyslogd clients, syslog-ng forwarders, and system libraries. Core components include the collector, formatter, filter engine, and output modules; these handle severity classification, facility mapping, template expansion, and rate limiting. The architecture supports message routing rules that direct output to files, terminals, external programs (via pipe), and remote syslog servers, enabling integration with event collectors such as Splunk, Elastic Stack, and Graylog. Some implementations support TLS and RELP for encryption and acknowledgement, influenced by protocols standardized through IETF.
Configuration commonly uses plain-text files such as /etc/syslog.conf or /etc/rsyslog.conf with rule syntax specifying selectors and actions. Selectors combine facility and priority expressions to match messages from sources like cron, auth, or daemon and map them to actions including appending to log files (e.g., /var/log/messages), forwarding to remote hosts, or piping to filtering utilities like logrotate. Ancillary files include runtime PID files and socket files beneath /var/run and /dev; package maintainers at Debian Project, Red Hat, Inc., and Gentoo ship distribution-specific defaults. Tools from systemd interact with syslog via journald adapters on systems managed by Fedora and Arch Linux.
Classic syslogd implementations using UDP are susceptible to spoofing, amplification, and message loss; these concerns motivated enhancements such as TCP transport, TLS, and strict access controls adopted by vendors like Cisco Systems and Juniper Networks. Log integrity, confidentiality, and non-repudiation are operational requirements in regulated environments overseen by institutions such as NIST and frameworks like HIPAA and PCI DSS. Administrators mitigate risks with centralized collectors, authentication, rate limiting, and log rotation; high-availability designs employ clustering and queueing systems influenced by technologies from RabbitMQ and Apache Kafka.
Multiple implementations implement the syslog protocol and extend functionality: classic syslogd in Berkeley Software Distribution; rsyslog developed with contributions from Rainer Gerhards; syslog-ng by Balabit/One Identity; and lightweight alternatives such as busybox syslog. Commercial and embedded vendors ship tailored daemons in router and switch products from Cisco Systems and Arista Networks. Cloud and SIEM vendors provide collectors and forwarders integrating with syslog feeds, while projects like fluentd and vector offer modern structured log ingestion and transformation.
Effective administration includes defining retention policies, configuring rotating and compressed archives with utilities like logrotate, implementing alerting rules in Nagios or Zabbix, and securing transports with TLS certificates managed via OpenSSL or Let's Encrypt. Best practices favor centralizing logs, normalizing formats for compatibility with Elastic Stack and SIEM platforms, and automating parsing with tools such as grok and Logstash. Operators in enterprises overseen by ISO standards often combine syslog feeds with audit trails from Auditd and endpoint telemetry to support incident response and forensic analysis.
Category:Unix daemons