SMTP to Pushover

A lightweight SMTP server that turns incoming emails into Pushover push notifications.

  • Docker
  • Python

A lightweight SMTP relay that forwards incoming emails to Pushover notifications. Designed primarily to bridge legacy hardware and applications with modern push notifications.

Why I built it

While configuring email alerts on an HPE iLO 4, I ran into a frustrating limitation: iLO 4 only supports unauthenticated SMTP on port 25 and cannot connect directly to modern mail providers that require authentication or TLS. HPE's documentation confirms iLO 4 only supports unauthenticated SMTP over port 25.

Rather than maintaining a local mail server just to relay a handful of alerts, I built a small service that accepts SMTP messages from legacy devices and immediately delivers them as push notifications through Pushover.

The result is a simple, self-hosted bridge that allows aging enterprise hardware to continue sending critical alerts without relying on outdated mail infrastructure.

Features

  • Accepts unauthenticated SMTP connections on port 25
  • Forwards incoming messages directly to Pushover
  • Lightweight and easy to self-host
  • Ideal for legacy devices that only support plain SMTP
  • Docker-friendly deployment
  • Minimal configuration

Perfect for

Although it was created for HPE iLO 4, it works with virtually any device or application that can send email but cannot authenticate with modern SMTP servers, including:

  • Legacy server management interfaces
  • UPS monitoring systems
  • NAS devices
  • Network appliances
  • Embedded controllers
  • Industrial equipment
  • Older printers and scanners

Motivation

This project scratches a common homelab itch: keeping reliable enterprise hardware while integrating it with modern notification services.

It started as a solution for my own rack, but it may be useful for anyone trying to modernize legacy infrastructure without replacing perfectly functional hardware.

Usage

Usage
# Start SMTP Pushover
docker run -d \
  --name smtp-pushover \
  -p 25:25 \
  -e PUSHOVER_APP_TOKEN=your_app_token \
  -e PUSHOVER_USER_KEY=your_user_key \
  ghcr.io/afonsosantos/smtp-pushover:latest

# Configure your legacy device
SMTP_SERVER=<host_running_smtp_pushover>
SMTP_PORT=25
SMTP_AUTH=disabled
SMTP_TLS=disabled

# Send a test alert from your device
echo "Test notification" | mail \
  -s "SMTP Pushover Test" \
  -S smtp=smtp://192.168.1.10:25 \
  [email protected]