Inbound SMTP server (ports 25, 465, 587) on a Fly app

Hi!

We’re planning to run a small inbound-only SMTP server on Fly to receive image attachments from old game cameras for our service. Some old cameras only support TLS 1.0/1.1 or plain SMTP on port 25, so we cannot route them through Resend Inbound which we currently use for modern cameras.

Planned setup:

  • Separate Fly app (Node.js / Haraka SMTP server), dedicated IPv4
  • Listening on TCP 25, 465, 587 — all inbound only
  • AUTH PLAIN/LOGIN required on every port (no anonymous relay)
  • We do not send any outbound mail from this app — transactional email continues via Resend
  • Per-tenant credentials, rate-limited per credential and per source IP
  • Estimated volume: a few hundred messages per day total across all pilot users

Questions:

  1. Is inbound port 25 allowed on Fly with a dedicated IPv4? If not officially supported, are there policy constraints we should be aware of?
  2. Are there abuse-detection thresholds we might trip with SMTP-shaped traffic (vs. HTTP)?
  3. Do you assign clean IPs from non-blacklisted ranges, or should we request one? (Less critical since we’re inbound-only, but relevant for sender SPF checks.)
  4. Is the standard [[services]] config in fly.toml sufficient for these ports, or do we need a different setup?

If port 25 inbound is not feasible on Fly, we’ll move this app to a VPS elsewhere — please just let us know directly.

Thanks!

inbound email is completely OK with a regular TCP [[services]] block and dedicated IP.