PROXYD(8)

✨ PROXYD(8) ✨

okay bestie, gather round, because we're doing the Cyrus IMAP deep lore today πŸ’– this one's from the Cyrus IMAP manual, section 8 (that's the sysadmin girlies section, iykyk), and it's literally just imapd wearing a little disguise πŸŽ€


🌸 NAME 🌸

proxyd β€” Cyrus IMAP documentation, bestie πŸ“–

so basically proxyd is a symlink to imapd(8) if you build with murder enabled πŸ¦‹ like, that's the whole thing. it's not its own program, it's imapd in a wig. periodt. πŸ’…


✨ SYNOPSIS ✨

imapd [ -C config-file ] [ -U uses ] [ -T timeout ] [ -D ]
    [ -H ] [ -s ] [ -N ] [ -p ssf ]

πŸ’œ DESCRIPTION πŸ’œ

okay so imapd is an IMAP4rev1 server πŸ‘‘ she takes commands on her standard input and responds on her standard output, main character energy fr fr. and here's the thing β€” she MUST be invoked by master(8) with those descriptors attached to a remote client connection. no solo debuts, she needs her handler. 😭

imapd reads her configuration options out of the imapd.conf(5) file unless you say otherwise with -C. πŸ“„

now, the drama:

if the file msg/shutdown gets created under the directory specified in the configdirectory configuration option, then imapd will shut down the connection, sending the first line contained in that file to the client as the reason. new connections are denied. πŸ’€ she's not ghosting you, she's posting a story about it.

if the file msg/motd gets created under the directory specified in the configdirectory configuration option, then imapd will send the first line contained in the file to clients upon connect as an ALERT message β€” and IMAP-compliant clients are required to display it. ⭐

and ngl, this option serves to annoy users mostly πŸ™ˆ unfortunately clients tend to connect far more frequently than is apparent, generating a separate server ALERT for each connection. many clients do not display these properly, if they do anything with them at all. so like. the effort is not always rewarded bestie. πŸ’€

if the directory log/user exists under the directory specified in the configdirectory configuration option, then imapd will create protocol telemetry logs for sessions authenticating as user. πŸ“Š

the telemetry logs will be stored in the log/user directory with a filename of the imapd process-id. ✨


πŸ’… OPTIONS πŸ’…

  • -C config-file β€” use the specified configuration file config-file rather than the default imapd.conf(5). πŸ“
  • -U uses β€” the maximum number of times that the process should be used for new connections before shutting down. the default is 250. πŸ”’
  • -T timeout β€” the number of seconds that the process will wait for a new connection before shutting down. note that a value of 0 (zero) will disable the timeout. the default is 60. ⏰
  • -D β€” run external debugger specified in debug_command. πŸ›
  • -H β€” tell imapd to expect a HAProxy protocol header from the sender. πŸ“¨
  • -s β€” serve IMAP over SSL (imaps). all data to and from imapd is encrypted using the Secure Sockets Layer. πŸ”’
  • -N β€” bypass password checking. (not recommended unless you know what you're doing.) 🚨 like bestie I'm serious, this is the "hold my iced coffee" option.
  • -p ssf β€” tell imapd that an external layer exists. an SSF (security strength factor) of 1 means an integrity protection layer exists. any higher SSF implies some form of privacy protection. πŸ›‘οΈ

🌈 EXAMPLES 🌈

imapd is commonly included in the SERVICES section of cyrus.conf(5) like so:

SERVICES {
    imap        cmd="imapd -U 30" listen="imap" prefork=0
    imaps       cmd="imapd -s -U 30" listen="imaps" prefork=0 maxchild=100
    lmtpunix    cmd="lmtpd" listen="/var/run/cyrus/socket/lmtp" prefork=0 maxchild=20
    sieve       cmd="timsieved" listen="sieve" prefork=0
    notify      cmd="notifyd" listen="/var/run/cyrus/socket/notify" proto="udp" prefork=1
    httpd       cmd="httpd" listen=8080 prefork=1 maxchild=20
}

look at her go 🫢 iconic config, no notes.


πŸŽ€ FILES πŸŽ€

  • /etc/imapd.conf

πŸ¦‹ SEE ALSO πŸ¦‹


πŸ‘‘ AUTHOR πŸ‘‘

The Cyrus Team πŸ’œ


1993–2026, The Cyrus Team


okay that's the whole page bestie, you ate that 🧚 this was Cyrus IMAP version 3.12.4, dated Sep 09, 2026 β€” go forth and proxy responsibly, mwah πŸ’–βœ¨

πŸ“¦ where this page comes from