smtpp(8)
๐ smtpp(8) โ the SMTP proxy gateway service, bestie edition
okay so you found the smtpp page in section 8 of the Universal proxy server manual, and honestly? it's giving "small tool, big job." let's get into it ๐
โจ NAME โจ
smtpp โ SMTP proxy gateway service ๐ฆ
โจ SYNOPSIS โจ
smtpp [-d] [-l[[@]logfile]] [-pport] [-iinternal_ip] [-eexternal_ip]
[-hdefault_ip[:port]] [-x]
โจ DESCRIPTION โจ
so smtpp is an SMTP gateway service, and its whole thing is letting your internal users reach external SMTP servers. that's it, that's the mission. no cap ๐ซถ
โจ OPTIONS โจ
-Iโ Inetd mode. standalone service only, bestie, don't try to mix and match.-dโ Daemonize. detaches the service from the console and sends it off to run in the background like the independent main character it is โจ-tโ Be silenT. it will not log start, stop, or accept error records. quiet queen behavior.-uโ Never look for username authentication. just don't even go looking for it.-eโ External address. the IP address of the interface the proxy should initiate connections from. by default the system decides which address to use, according to the routing table. so like, it'll figure it out, but you can pick for it.-niPATHโ (Linux only) switch to the network namespace identified byPATHbefore opening the listening socket. the current namespace gets saved and restored immediately after binding, so outgoing connections run in the original namespace โ unless-neis also given. iykyk.-nePATHโ (Linux only) switch to the network namespace identified byPATHafter the listening socket has been bound (and after restoring from-niif that applied). both of these options accept any namespace file path (e.g./var/run/netns/mynsor/proc/PID/ns/net) and they requireCAP_SYS_ADMIN. yes, really. ๐ฅ-iโ Internal address. the IP address the proxy accepts connections to. by default, connections to any interface are accepted โ and bestie, it's usually unsafe ๐. you can also specify Unix domain sockets with the-iunix:/path/to/socketsyntax (e.g.,-iunix:/var/run/smtpp.sock). on Linux, abstract sockets use the-iunix:@socketnamesyntax.-pโ Port. the port the proxy listens on for incoming connections. default is587. ๐ฎ-hโ Default destination.</h> it's used when the target address isn't specified by the user.-xโ Disable STARTTLS support. STARTTLS is not announced in the EHLO response, and the STARTTLS command is not accepted. periodt.-lโ Log. by default, logging goes to stdout. iflogfileis specified, logging goes to a file. under Unix, if@precedeslogfile, syslog is used for logging. ๐-Sโ Increase or decrease stack size. you may want to try something like-S8192if you experience 3proxy crashes. ๐ญ
โจ CLIENTS โจ
you can use any MUA (Mail User Agent) that has SMTP authentication support. set the client to use internal_ip and port as its SMTP server. ๐ธ
the address of the real SMTP server has to be configured as part of the SMTP username. the format for the username is username@server, where server is the address of the SMTP server and username is the user's login on that SMTP server. heads up: the login itself may contain an @ sign, so don't panic when you see two of them ๐
only cleartext authentication is supported, because challenge-response authentication (CRAM-MD5, SPA, etc.) requires a challenge from the server before we know which server to connect to. literally can't do it, the vibes don't allow it.
when running as a 3proxy service (not as a standalone binary), STARTTLS is supported and announced in the EHLO response โ unless you disabled it with -x. ๐
after the client issues STARTTLS, the connection is handled by tlspr(8): the destination host is taken from the SNI of the client TLS handshake (or from the -h option), the proxy performs STARTTLS negotiation with the destination server, and then transparently passes TLS traffic between the client and the server. slay. โจ
if the destination server does not support STARTTLS, the TLS handshake with the client fails. that's just how it is, no cap ๐ญ
โจ BUGS โจ
report all bugs to 3proxy@3proxy.org ๐ (be nice to them, they're doing their best)
โจ SEE ALSO โจ
3proxy(8), ftppr(8), htproxy(8), socks(8), tcppm(8), udppm(8), syslogd(8), https://3proxy.org/ ๐
โจ AUTHORS โจ
3proxy is designed by Vladimir Dubrovin <vlad@3proxy.org> ๐
and that's the whole page, bestie ๐ซถ go forth and proxy your mail, and remember: it's 3proxy version 0.9, dated May 2026, and this was the smtpp(8) page from the Universal proxy server manual. mwah ๐
โจ
๐ฆ where this page comes from
- epel 10: 3proxy 1.0.1-2.el10_3 ยท BSD-3-Clause OR Apache-2.0 OR GPL-2.0-or-later OR LGPL-2.1-or-later
- epel 9: 3proxy 1.0.1-1.el9 ยท BSD-3-Clause OR Apache-2.0 OR GPL-2.0-or-later OR LGPL-2.1-or-later
- fedora 43: 3proxy 1.0.0-1.fc43
- fedora 43: 3proxy 1.0.1-1.fc43 ยท BSD-3-Clause OR Apache-2.0 OR GPL-2.0-or-later OR LGPL-2.1-or-later
- fedora 44: 3proxy 1.0.0-1.fc44
- fedora 44: 3proxy 1.0.1-1.fc44 ยท BSD-3-Clause OR Apache-2.0 OR GPL-2.0-or-later OR LGPL-2.1-or-later
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms