rpc.dracd(8)
β¨ rpc.dracd β the Dynamic Relay Authorization Control server π
okay bestie, gather round, because this is rpc.dracd(8) from the System Manager's Manual and it's literally the little daemon that keeps your mail relay from letting strangers vibe in uninvited. it's giving bouncer-at-the-club energy, no cap π«Ά
πΈ SYNOPSIS πΈ
rpc.dracd [-i ] [ -e expire ] [ dbfile ]
that's it. that's the whole summoning ritual. β¨
π¦ AVAILABILITY π¦
you can find it at ftp.cc.umanitoba.ca:/src β yes, that's the whole location, go get her π
π DESCRIPTION π
so. rpc.dracd is the Dynamic Relay Authorization Control server. it uses the Berkeley db package to maintain a relay authorization map for sendmail, and by default that map lives at /etc/drac/dracd.db.
here's the tea: your POP and IMAP mail servers make an RPC call to add an entry to the authorization cache after they've authenticated each user. so like, you prove you're you, and then the relay knows you're allowed to send. iconic behaviour honestly.
the daemon, rpc.dracd, adds or updates entries in the cache, and periodically expires old entries. so the list stays fresh, no stale leftovers rotting in there. π§
and the very important part: only trusted mail servers are permitted to communicate with rpc.dracd, and who counts as trusted is controlled by /etc/drac/dracd.allow. and if that file does not exist? all local IP addresses are permitted. yeah. no allow file = everyone local gets in. π
π Allow File Format π
the Allow File consists of entries that look exactly like this:
netmask netaddr
where both netmask and netaddr must be dotted quads. both of them. don't try to get cute with it. π
β¨ OPTIONS β¨
-iβ Initialize the database on startup. fresh start energy, we love a clean slate π-e expireβ Set the expire time limit.expireis the number of minutes the entries will remain in the database. it defaults to 30 minutes. so if you don't say anything, your entries get a cool 30 before they ghost. πdbfileβ Use a different database file name. you're not stuck with the default, go off and name it whatever π¦
π FILES π
/etc/drac/dracd.dbβ default database file/etc/drac/dracd.allowβ default allow file.
(the original said "default allow file." with a period and honestly? we're keeping the period. respect.) π
π TCP_WRAPPERS SUPPORT π
okay so this version of rpc.dracd is protected by the tcp_wrapper library. that means you have to give the clients access to rpc.dracd if they should be allowed to use it. it doesn't just let anyone waltz in, you have to actually invite them.
say you wanted to allow connects from clients of the .bar.com domain β you could use the following line in /etc/hosts.allow:
dracd: .bar.com
heads up bestie: you have to use the daemon name dracd for the daemon name, even if the binary has a different name. yes, even then. that's the rule. π
for further information please have a look at the tcpd(8) and hosts_access(5) manual pages. they're the lore. π
π SEE ALSO π
dracauth(3)
π NOTES π
the following signals have the specified effect when sent to the server process using the kill(1) command:
SIGTERMβ closes the database and terminates the server. that's the "we're done here, thank you for your service" signal. graceful exit, main character departure. π
and that's the whole page, bestie!! this one's from the System Manager's Manual, rpc.dracd(8), dated 22 Jul 1998 β yes, 1998, she's a vintage icon and she still works. mwah π β¨
π¦ where this page comes from
- ubuntu jammy: drac 1.12-8build2
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms