13.1 Internal Mailing Lists

An internal mailing list is simply an entry in the aliases file that has more than one recipient listed on the right-hand side. Consider, for example, the following aliases file entries:

admin:  bob,jim,phil
bob:    \bob,/u/bob/admin/maillog

Here, the name admin is actually the name of a mailing list because it expands to more than one recipient. Similarly, the name bob is a mailing list because it expands to two recipients. Because bob is also included in the admin list, mail sent to that mailing list will be alias-expanded by sendmail to produce the following list of recipients:

jim, phil, \bob, /u/bob/admin/maillog

This causes the mail message to be delivered to the local users jim and phil in the normal way. That is, each undergoes additional alias processing, and the ~/.forward file of each is examined to see whether either should be forwarded. The recipient \bob, on the other hand, is delivered without any further aliasing because of the leading backslash. Finally, the message is appended to the file /u/bob/admin/maillog.

Internal mailing lists can become very complex as they strive to support the needs of large institutions. Examine the following simple, but revealing, example:

research:     user1, user2
applications: user3, user4
admin:        user5, user6
advertising:  user7, user8
engineering:  research, applications
frontoffice:  admin, advertising
everyone:     engineering, frontoffice

Only the first four aliases expand to real usernames. The last three form mailing lists out of combinations of those four, the last being a superset that includes all users.

When the number of mailing lists is small and they don't change often, they can be effectively managed as part of the aliases file. But as their number and size grow, you should consider moving individual lists to external files.[2]

[2] Only root should be permitted to write to the aliases file. If you keep mailing lists inside that file, it might need to be writable by others. This can create a security breach (Section 10.5.4).

    Part I: Build and Install
    Part II: Administration
    Part III: The Configuration File