OpenSMTPD

An implementation of the server side SMTP protocol for exchanging emails between systems on Unix like operating systems.

OpenSMTPD is an open-source implementation of the server-side SMTP protocol. It enables Unix-like operating systems to exchange emails with other systems using the SMTP protocol as defined by RFC 5321. The software functions as a mail transfer agent, allowing ordinary machines to send and receive electronic mail across a network by adhering to established communication standards.

The software operates as a server daemon and is available for various platforms, including Linux, macOS, and other BSD-derived systems. It can be deployed through several methods to suit different infrastructure needs, including installation via system package managers such as apt, apk, or yum, deployment through container images, or manual compilation from source code for custom environments.

Key features

  • Implementation of RFC 5321 for server-side email exchange
  • Support for standard SMTP extensions
  • Centralized daemon control via the smtpctl utility
  • Compatibility mode for historical interfaces like sendmail and mailq
  • Configuration managed through a dedicated smtpd.conf file
  • Support for privilege separation using distinct users for the daemon and queue
  • Integration with LibreSSL or OpenSSL for secure communications

The architecture emphasizes security through the use of multiple system users, specifically separating the SMTP daemon from the queue management process to reduce the impact of potential vulnerabilities. It relies on core dependencies such as pkg-config, bison, and libevent to handle system configurations and event-driven networking. The software is designed for system administrators who require a predictable and standard mail transfer agent on Unix-like environments.

To maintain compatibility with legacy systems, the smtpctl utility can be mapped to traditional command names through symbolic links or mailwrapper configurations. This allows the software to integrate into existing workflows that expect a sendmail-like interface while utilizing a modern codebase. The installation process typically involves configuring specific system users, such as _smtpd and _smtpq, to ensure the daemon operates with the least privilege necessary.

OpenSMTPD serves as a mail transfer agent for systems requiring a standard SMTP server implementation.

Last Modified
Software TypeWeb App / Server
Platform
Last Activity4 months ago
Repository Age14 years
LicenseISC
Open Source Alternative to
Open Source Software.io

Join our newsletter to get shiny new open source software delivered to your inbox. Unsubscribe anytime.