sys-svc-mail-smtpΒΆ
DescriptionΒΆ
The sys-svc-mail-smtp role configures a local SMTP relay using Postfix, listening exclusively on localhost.
It is designed to be used as a fallback when no central Mailu instance is available, enabling applications and system services to send email via localhost:25 without additional configuration.
For general background on SMTP, see SMTP on Wikipedia.
For details about Postfix itself, see Postfix on Wikipedia.
OverviewΒΆ
This role:
Installs Postfix via
pacmanon Arch Linux.Configures it as a loopback-only relay, so it:
only listens on
127.0.0.1,does not perform local mailbox delivery,
and is safe to use as a simple outbound relay for the local host.
Integrates seamlessly with the
sys-svc-mailandsys-svc-mail-msmtproles in the Infinito.Nexus stack.
Typically, sys-svc-mail decides whether to:
Use Mailu (via
sys-svc-mail-msmtp), orFall back to this role (
sys-svc-mail-smtp) and send vialocalhost.
CosmosΒΆ
The diagram places sys-svc-mail-smtp in the Infinito.Nexus cosmos: the components it deploys (capabilities), the central services it consumes (dependencies), and its outward reach (federation and bridged external networks).
flowchart LR
subgraph role [sys-svc-mail-smtp π»]
svc_svc_mail_smtp["svc-mail-smtp"]
end
Solid 1:1 edges are fixed relationships; dashed 0..1 edges are conditional (enabled only in matching deployments); red 0..0 edges are turned off in this role. Node markers show the roleβs deploy modes (π» host, π³ compose, π swarm); β marks a service that is explicitly turned off, and βοΈ an Ansible role dependency declared in meta/main.yml.
PurposeΒΆ
The main goals of this role are:
Provide a minimal, secure SMTP relay for hosts that do not run a full mail stack.
Enable
msmtp(and any other sendmail-compatible client) to send mail by talking tolocalhost:25.Avoid the complexity of a full MTA configuration while still supporting basic outbound notifications.
This is particularly useful for:
Monitoring nodes,
Utility hosts,
Development or test environments without Mailu.
FeaturesΒΆ
πΎ Postfix Installation on Arch Linux
Uses
community.general.pacmanto install thepostfixpackage.
π Loopback-Only Configuration
Configures
inet_interfaces = loopback-onlyto restrict the SMTP daemon to127.0.0.1.Defines
mynetworks = 127.0.0.0/8for safe local relaying.
π« No Local Mailbox Delivery
Sets
local_transport = error: local delivery disabledto avoid storing mail locally.Focus is purely on relaying from localhost rather than full MTA behavior.
π§© Integration with Infinito.Nexus
Meant to be driven by
sys-svc-mail, which decides when to enable this relay.Works hand in hand with
sys-svc-mail-msmtp, which configures msmtp to talk tolocalhost:25when Mailu is not present.
Further ResourcesΒΆ
SMTP & Mail Transfer:
SMTP (Wikipedia): https://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol
Postfix:
Official site: https://www.postfix.org/
Postfix on Wikipedia: https://en.wikipedia.org/wiki/Postfix_(software)
Related Infinito.Nexus roles:
sys-svc-mail: central mail orchestrationsys-svc-mail-msmtp: msmtp client and sendmail replacement
CreditsΒΆ
Implemented by Kevin Veen-Birkenbach. Part of the Infinito.Nexus Project and maintained by Kevin Veen-Birkenbach. Licensed under the Infinito.Nexus Community License (Non-Commercial).