spop3d.conf(5)
spop3d.conf π the config file for The Solid POP3 Server
ok so bestie, this is spop3d.conf(5) β the System Administrator's Manual page for the config data of The Solid POP3 Server. it's giving "one file to rule your pop3 daemon" and honestly? iconic. let's get into it π
β¨ NAME β¨
spop3d.conf β configuration data for The Solid POP3 Server. yes that's the whole vibe, no cap.
πΈ DESCRIPTION πΈ
A config file is made of zero or more blocks. there are exactly two kinds, and they're both main characters:
- Global β starts with
<Global>and ends with</Global>. - VirtualHost β starts with one of these lines:
<VirtualHost xx.xx.xx.xx>
<VirtualHost host.name.com>
<VirtualHost xx.xx.xx.xx host.name.com>
where xx.xx.xx.xx is an IPv4 (or IPv6) address and host.name.com is a virtual domain name (read the VIRTUALS file, bestie). the VirtualHost block ends with </VirtualHost>.
each block holds zero or more options. every option gets its own line and has 2 parts: the option name and the option argument, separated by a white space character (one or more β she's flexible π ).
there are 4 types of options:
booleanβ its argument can be"yes"(or"true") and"no"(or"false").stringβ its argument is a string. the string should be quoted (read the section BUGS, babe).periodβ its argument is a number which can be followed by one of these suffixes:s(for seconds),m(for minutes),h(for hours),d(for days),w(for weeks). this argument specifies some period of time or some number.expireβ exactly the same asperiod, BUT its argument can also benever. she's got range.
Every text between /* and */ is treated as a comment and is ignored β unless it's inside a quoted string. don't get caught out π«Ά
Options from all Global blocks and some VirtualHost blocks are used β "some" meaning when their IPv4 (or IPv6) address is equal to the socket address, or their block virtual domain name is equal to the virtual domain name specified by the user. Options from left VirtualHost blocks are ignored, periodt. also: the config file is parsed two times if the user specifies a virtual domain name (read the VIRTUALS file).
Following options are recognized:
AllowRootLogin booleanβ allow root login. it's disabled by default and shouldn't be changed. π¨
Debian Note: This option is not available in the Debian package.
UserOverride booleanβ allow users to specify their maildrops (path and type) and APOP secrets. it's enabled by default.UserMailDropDelimiter stringβ specify the character used to separate different maildrops for a user. if set, the user can access different maildrops, as defined in their~/.spop3dfile, by logging in as"user_nameUserMailDropDelimitermaildrop_name"(e.g.user+private, if theUserMailDropDelimiteris set to+). default is empty (which disables support for multiple mailboxes per user). πAllowAPOP booleanβ users can authenticate themselves with the APOP scheme. it's enabled by default.MailDropName stringβ specify the path to the maildrop. the format is the same as for the-noption insolid-pop3d(8). default value is/var/mail/%s.MailDropType stringβ specify the type of maildrop. the allowed values aremailboxandmaildir. default value ismailbox(ormaildirif support for mailbox isn't compiled into the server).APOPServerName stringβ specify the server name which is used for APOP authentication. default value is a name obtained from thegethostname()call.AutoLogoutTime periodβ specify the autologout time. the server quits when the client is idle for the specified period. default value is2minutes. π΄ChangeGID booleanβ if enabled, the server changes its GID to the GID of the logged-in user. it's enabled by default.WrongCommandsLimit periodβ specify the limit of wrong commands. the server quits when this limit is exceeded. the limit is ignored when0is specified. default value is5. πReadExpire expireβ expire read (in this instance of the daemon) messages that are older than expire. default value isnever.UnreadExpire expireβ expire unread (in this instance of the daemon) messages that are older than expire. default value isnever.DoMapping booleanβ if enabled, mapping of user names (read theVIRTUALSfile) is allowed. this option is disabled by default.UserMapFile stringβ specify the path to the user names mapping file (read theVIRTUALSfile). there is no default value.UserMapPrefix stringβ specify a set of characters which should be prefixed to the username before it is looked up in the user mapping file. for example, given a username of"bar", and aUserMapPrefixof"foo-", there should be an entry in the user mapping file for"foo-bar". this option has no effect whenDoMappingis disabled, and is a blank string by default.AllowNonIP booleanβ if enabled, the user is allowed to specify a virtual domain name when logging in. read theVIRTUALSfile for details. this option is enabled by default.UserBullFile stringβ specify the path to the user bulletin file (read the section BULLETINS inREADME). the format is the same as for the-noption insolid-pop3d(8). default value is.spop3d-bull.BulletinDirectory stringβ specify the path to the bulletin directory. default value is/var/lib/solid-pop3d/bulletins.LogPriority stringβ set the logging facility and priority. default value islocal0.notice. known facilities:daemon,local0,local1, ...,local7,mail,user. known priorities:emerg,alert,crit,err,warning,notice,info,debug.facilityorfacility.prioritycombination are recognized.AddBulletins booleanβ the server checks for new bulletins inBulletinDirectoryif enabled. this option is enabled by default.RequiredMapping booleanβ ifDoMappingandRequiredMappingare enabled, the user _MUST_ have an entry in the user mapping file. ifDoMappingis enabled andRequiredMappingis disabled, the user needn't have an entry in the user mapping file (no mapping is performed then). this option has no effect whenDoMappingis disabled. the option is enabled by default.AuthMappedUser booleanβ controls whether authentication is performed on the username given by the user, or the username looked up in the user mapping file. the option is enabled by default, meaning that the user from the mapping file is used. the option has no effect whenDoMappingis disabled.LogStatistics booleanβ if enabled, qpopper-like statistics are logged. at the end of each session, the username, number of deleted messages, size (in bytes) of deleted messages, number of messages left on server, and size (in bytes) of messages left on server are logged. the option is enabled by default. πCreateMailDrop booleanβ if enabled, the maildrop (mailbox or maildir) will be created when it doesn't exist. the option is disabled by default.AllowUser booleanβ allow USER/PASS authentication. this option is enabled by default. it's the standard method of user authentication and you probably don't need to disable it. you must have at least one authentication method enabled (AllowUserorAllowAPOP). β οΈ
π¦ EXAMPLE π¦
ok here's a whole lil config, look at her go:
<Global>
LogPriority daemon.info
MailDropName Maildir
MailDropType maildir
UserBullFile .spop3d-blurp /* It's just an example */
ReadExpire 0
UnreadExpire 2w
</Global>
<VirtualHost 192.168.1.1>
LogPriority local0
UserMapFile /etc/pop3/192.168.1.1.mapping
DoMapping true
UnreadExpire never
APOPServerName jakis.tam.host.w.pl
MailDropName "/var/mail/%s" /* It is a comment */
MailDropType mailbox
AutoLogoutTime 5s
UserOverride yes
AllowAPOP yes
ChangeGID true
</VirtualHost>
π¨ WARNINGS π¨
spop3d.conf should be readable by the "spop3d" user!!! (three exclamation marks, that's how serious we're being). the server exits when a syntax error occurs in a configuration file. and if a configuration file doesn't exist (stat() failed), the server logs this fact only when in debugging mode. so like, check ur file perms bestie, fr fr π
π FILES π
/etc/spop3d.confβ the global configuration file. the one. the blueprint. π
π SEE ALSO π
solid-pop3d(8), pop_auth(1), dot-spop3d(5)
π AUTHOR π
Jerzy Balamut <jurekb@dione.ids.pl>
and that's the whole page bestie, we ate and left absolutely no crumbs πβ¨ this one came from the Unix manual, OCTOBER 1999, filed under spop3d.conf(5) β go forth and configure responsibly, iykyk π
π¦π
π¦ where this page comes from
- debian bookworm: solid-pop3d 0.15-31 Β· GPL-2.0-or-later
- debian trixie: solid-pop3d 0.15-31 Β· GPL-2.0-or-later
- ubuntu jammy: solid-pop3d 0.15-31 Β· GPL-2.0-or-later
- ubuntu noble: solid-pop3d 0.15-31 Β· GPL-2.0-or-later
- ubuntu resolute: solid-pop3d 0.15-31build1 Β· GPL-2.0-or-later
- ubuntu stonking: solid-pop3d 0.15-32 Β· GPL-2.0-or-later
- Copyright (C) 1999 Jerzy Balamut <jurekb@dione.ids.pl>
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms