{ "//": "Layer-4 mail edge for tailwart. Pipes raw TCP mail ports to the", "//2": "Stalwart sidecar over the tailnet, preserving client IP via PROXY", "//3": "protocol v2. One server per port (upstream port differs per listener).", "//4": "Stalwart terminates TLS itself — this is pure pass-through.", "apps": { "layer4": { "servers": { "smtp": { "listen": [":25"], "routes": [{ "handle": [{ "handler": "proxy", "proxy_protocol": "v2", "upstreams": [{ "dial": ["stalwart.tail7b1641.ts.net:25"] }] }]}] }, "submissions": { "listen": [":465"], "routes": [{ "handle": [{ "handler": "proxy", "proxy_protocol": "v2", "upstreams": [{ "dial": ["stalwart.tail7b1641.ts.net:465"] }] }]}] }, "submission": { "listen": [":587"], "routes": [{ "handle": [{ "handler": "proxy", "proxy_protocol": "v2", "upstreams": [{ "dial": ["stalwart.tail7b1641.ts.net:587"] }] }]}] }, "imap": { "listen": [":143"], "routes": [{ "handle": [{ "handler": "proxy", "proxy_protocol": "v2", "upstreams": [{ "dial": ["stalwart.tail7b1641.ts.net:143"] }] }]}] }, "imaptls": { "listen": [":993"], "routes": [{ "handle": [{ "handler": "proxy", "proxy_protocol": "v2", "upstreams": [{ "dial": ["stalwart.tail7b1641.ts.net:993"] }] }]}] } } } } }