# Legacy Email Proxy Proxy an unauthenticated, unencrypted POP3 / SMTP server to authenticated IMAPS and SMTPS backends. ## Features - Exposes legacy `POP3` on `0.0.0.0:110` and legacy `SMTP` on `0.0.0.0:25` - Forwards POP3 mailbox access to an IMAP backend - Forwards SMTP submissions to an SMTPS backend - Backend host, ports, and credentials are configured via environment variables ## Environment Variables - `POP3_BIND_ADDR` (default `0.0.0.0`) - `POP3_BIND_PORT` (default `110`) - `SMTP_BIND_ADDR` (default `0.0.0.0`) - `SMTP_BIND_PORT` (default `25`) - `BACKEND_IMAP_HOST` - `BACKEND_IMAP_PORT` (default `993`) - `BACKEND_IMAP_USER` - `BACKEND_IMAP_PASS` - `BACKEND_IMAP_USE_SSL` (default `true`) - `BACKEND_IMAP_USE_STARTTLS` (default `false`) - `BACKEND_SMTP_HOST` - `BACKEND_SMTP_PORT` (default `465`) - `BACKEND_SMTP_USER` - `BACKEND_SMTP_PASS` - `BACKEND_SMTP_USE_SSL` (default `true`) - `BACKEND_SMTP_USE_TLS` (default `false`) ## Build and run This project targets the latest Python LTS release. The included `Dockerfile` uses `python:3.12-slim`, which is compatible with Python 3.12 and later LTS releases. ```bash docker build -t legacy-email-proxy . docker run --rm -p 110:110 -p 25:25 \ -e BACKEND_IMAP_HOST=imap.example.com \ -e BACKEND_IMAP_PORT=993 \ -e BACKEND_IMAP_USER=imap-user \ -e BACKEND_IMAP_PASS=imap-pass \ -e BACKEND_SMTP_HOST=smtp.example.com \ -e BACKEND_SMTP_PORT=465 \ -e BACKEND_SMTP_USER=smtp-user \ -e BACKEND_SMTP_PASS=smtp-pass \ legacy-email-proxy ``` ## Notes This implementation begins the proxy with a minimal POP3 command set and SMTP delivery path. It is designed to start development on the required application architecture.