COURIERUUCP(8) | Double Precision, Inc. | COURIERUUCP(8) |
courieruucp - Sample Courier mail filter
makeuucpneighbors
The Courier mail server is capable of sending and receiving mail via UUCP. Courier does not implement UUCP directly, but instead uses third-party UUCP software, which you must install separately. Courier's UUCP support is provided automatically by the courieruucp module, which is compiled and installed by default.
Courier sends mail via UUCP by issuing a request via uux to execute the rmail command on the remote UUCP node. Courier passes the message envelope sender to rmail via the -f flag, and lists the message envelope recipients as the remaining arguments. Message envelope addresses and E-mail addresses in the headers of the message will be appropriately rewritten.
Courier will only send mail via UUCP if it knows about the recipient's UUCP node. The configuration file /etc/courier/uucpneighbors is a plain text configuration file. The makeuucpneighbors script compiles this configuration file into a binary database that is read by Courier. Changes to /etc/courier/uucpneighbors do not take effect until makeuucpneighbors is executed, and Courier is restarted.
/etc/courier/uucpneighbors may also be a subdirectory instead of a plain text file, in which case the contents of all text files in this subdirectory is automatically concatenated by the makeuucpneighbors script.
This configuration file must be initialized to contain the UUCP node name that this machine is known to its neighbors. If /etc/courier/uucpme does not exist, Courier uses the first node name of the hostname specified by the /etc/courier/me configuration file.
Note that in addition to creating this configuration file you must also configure your UUCP software to appropriately route UUCP mail to the specified nodes, which is a completely separate task. Blank lines in this file are ignored. Lines that start with the # character are comments, and are also ignored. The remaining lines are in the following format:
node<TAB>flags
node is a UUCP node, such as "apple" or "food!fruits!apple". <TAB> is a single tab character, and flags is zero or more of single character flags described below. The tab character can be ommited if there are no flags.
If there is an entry for node in /etc/courier/uucpneighbors then Courier will accept mail for any address of the form "node!user", but not "node!nodule!user". In order to accept mail for "node!nodule!user" you must enter both "node" and "node!nodule", unless you use the F or the G flag.
The flags are as follows:
F
food<TAB>F
G
R
food!fruits food<TAB>R
This is the standard Courier module configuration file.
MAXDELS
MAXHOST
MAXRCPT
Courier is certainly capable of relaying mail between the Internet - via ESMTP - and UUCP-land, rewriting headers and addresses appropriately. The address rewriting rules are fixed, but they are expected to work in nearly every case. If you find yourself in some oddball situation, you'll just have to invest the time to add custom header rewriting code.
If you are example.com, and your UUCP node is example, then <user@example.com> gets rewritten as example!user.
Internet mail may be sent via ESMTP to your UUCP neighbor apple!john by sending it to <apple!john@example.com>. When that's forwarded via UUCP the return address of <someone@domain.com> will be rewritten as example!domain.com!someone.
apple!john will get the mail with this return address, which should be repliable back to the sender. Courier's UUCP module will receive the UUCP address domain.com!someone, and translate it back as <someone@domain.com>.
Courier does not support defining multiple UUCP node names in /etc/courier/uucpme.
esmtpd(8)[1], couriertcpd(8)[2], courier(8)[3].
Sam Varshavchik
10/28/2020 | Courier Mail Server |