imapp(8)
๐ฆ NAME ๐ฆ
imapp โ bestie, it's the IMAPv4 proxy gateway service. that's the whole vibe. ๐
โจ SYNOPSIS โจ
imapp [-d] [-l[[@]logfile]] [-pport] [-iinternal_ip] [-eexternal_ip]
[-hdefault_ip[:port]] [-x]
๐ DESCRIPTION ๐
okay so imapp is an IMAPv4 (IMAP4rev1) gateway service, and its entire purpose in life is letting your internal users reach external IMAP servers. that's the gig. no cap. ๐
๐ OPTIONS ๐
-Iโ Inetd mode. standalone service only. periodt. ๐-dโ Daemonize. detaches the service from the console and lets it run in the background, living its best main character life. ๐ซถ-tโ Be silenT. it will not log start/stop/accept error records. quiet queen behavior. ๐คซ-uโ Never look for username authentication. nope, not doing that. ๐-eโ External address. the IP address of the interface the proxy should initiate connections from. by default the system just decides which address to use according to the routing table โ so if you don't set this, it's not you choosing, it's the routing table choosing. โจ-niPATHโ (Linux only) switch to the network namespace identified byPATHbefore opening the listening socket. the current namespace is saved and restored immediately after binding, so outgoing connections run in the original namespace โ unless-neis also given. ๐-nePATHโ (Linux only) switch to the network namespace identified byPATHafter the listening socket has been bound (and after restoring from-niif that one applied). both options accept any namespace file path (e.g./var/run/netns/mynsor/proc/PID/ns/net) and both requireCAP_SYS_ADMIN. ๐-iโ Internal address. the IP the proxy accepts connections to. by default it accepts connections to any interface, which โ real talk โ is usually unsafe. ๐ unix domain sockets are a thing too: use the-iunix:/path/to/socketsyntax (e.g.-iunix:/var/run/imapp.sock). on Linux, abstract sockets use the-iunix:@socketnamesyntax.-pโ Port. the port the proxy listens on for incoming connections. default is143. ๐ฌ-hโ Default destination. used when the target address isn't specified by the user. the fallback bestie.-xโ Disable STARTTLS support. STARTTLS is not announced in theCAPABILITYresponse and theSTARTTLScommand is not accepted. ๐ซ-lโ Log. by default logging goes to stdout. if logfile is specified, logging goes to that file instead. under Unix, if@precedes logfile, syslog is used for logging. ๐๏ธ-Sโ Increase or decrease stack size. if you're getting 3proxy crashes, something like-S8192is worth a try. ๐ ๏ธ
๐ง CLIENTS ๐ง
you can use literally any MUA (Mail User Agent) that has IMAPv4 support. ๐ set the client to use internal_ip and port as an IMAP server. the address of the real IMAP server has to be configured as part of the IMAP username โ the format for the username is username@server, where server is the address of the IMAP server and username is the user's login on that IMAP server. and yes, the login itself may contain an @ sign. iconic, honestly. โจ
the supported client authentication methods are the LOGIN command, AUTHENTICATE PLAIN and AUTHENTICATE LOGIN. with the server, the proxy authenticates using the method chosen by the client if the server supports it (as advertised in the CAPABILITY response); otherwise it falls back to AUTHENTICATE LOGIN, AUTHENTICATE PLAIN or the LOGIN command, in this order of preference. ๐ซถ
challenge-response authentication (CRAM-MD5, etc.) is not supported, because it requires a challenge from the server before we even know which server to connect to. like, the math doesn't math. ๐
when running as a 3proxy service (not as a standalone binary), STARTTLS is supported and announced in the CAPABILITY response unless it's disabled 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. and if the destination server doesn't support STARTTLS? the TLS handshake with the client fails. ๐ญ
๐ BUGS ๐
report all bugs to 3proxy@3proxy.org โ they wanna hear it, fr fr. ๐ฎ
๐ SEE ALSO ๐
3proxy(8), ftppr(8), pop3p(8), htproxy(8), smtpp(8), socks(8), tcppm(8), tlspr(8), udppm(8), syslogd(8), https://3proxy.org/ ๐
๐ AUTHORS ๐
3proxy is designed by Vladimir Dubrovin <vlad@3proxy.org> โ the literal icon behind all of this. ๐
and that's the whole page, bestie!! ๐ this one's from 3proxy 0.9, dated July 2026, and honestly? it ate. go set up your proxy. 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