NAME¶
checksendmail —
verify sendmail address
transformations.
SYNOPSIS¶
checksendmail |
[-a]
[-d]
[-b]
[-C
file.cf]
[-b
sendmail_binary]
[-l
log_file]
[-r
resolve]
[-T
test.address]
|
DESCRIPTION¶
The
checksendmail program is a
perl script
that aids the testing of
sendmail(8) 's various
configuration files.
checksendmail passes typical addresses
(supplied in input files) through
sendmail and prints the
results of the resolution and transformation routines.
The input files contain a list of addresses, one per line. For example:
user
user@site
user@site.com
The input file can contain comments started with a
# and blank
lines.
OPTIONS¶
- -a
- Show aliasing of local addresses in mail address resolution
phase of testing
- -d
- Preceed each address translation line with ruleset sequence
summary
- -C
file.cf
- Use the sendmail configuration file
file.cf instead of the default
/etc/sendmail.cf file.
- -b
sendmail_binary
- Use the specified sendmail_binary as
the path to invoke sendmail (instead of
/usr/sbin/sendmail).
- -l
log_file
- Log sendmail address test mode debugging
output to log_file
- -r
resolve
- Use resolve as the input file for the
addresses to be used for mail resolving. Defaults to
address.resolve.
- -T
test.address
- Use test.address as the single
address to test. Cannot be used in conjunction with file setting
flags.
EXAMPLES¶
The following command will pass the addresses in
address.resolve through
sendmail using
the configuration information in
myconfig.cf.
example% cat address.resolve
user
user@site
user@site.com
example% checksendmail -C myconfig.cf
system: myhost.gadget.com current dir: /tmp/Checksendmail
resolve file: address.resolve
sendmail binary: /usr/sbin/sendmail sendmail version: 8.9.3
config file: /etc/sendmail.cf config file version: V8/Berkeley
Mail address resolution
user --(ether )--> user[rmtc]
user@site --(ether )--> user@site[rmtc]
user@site.com --(ether )--> user@site.com[rmtc]
`To' address transformations for mailer ether:
user ----> user
user@site ----> user@site
user@site.com ----> user@site.com
`From' address transformations for mailer ether:
user ----> user
user@site ----> user
user@site.com ----> user
The first section of the output shows how the addresses in the input files are
resolved by
sendmail(8). Consider the following output line:
user@site.com --(ether )-->
user@site.com[rmtc]
The input address
user@site.com resolves to use the
ether mailer. That mailer is directed to send the mail to to
the user
user@site.com at site
rmtc (as
indicated in the square brackets).
The two later sections of output show how the addresses specified as the
To and
From address are transformed in the
text of the headers. In the example above, the
To addresses
are untouched. The
From addresses, however, all lose their
machine information on the way through the mailer:
user@site ----> user
This may be desirable when using a configuration file on a workstation which is
to be hidden as a mailhost from the rest of the network.
The following is a set of addresses used at one site for the purposes of testing
address resolution. Comments after the addresses detail why particular
addresses are present:
- user
- Standard trivial address
- user@rmtc
- qualified at one level
- user@rmtc.central
- qualified at two levels
- user@rmtc.central.sun.com
- qualified all the way
- rmtc!user
- local but specified as uucp
- user@summit
- a workstation (normally delivered locally, though)
- user@summit.central
- same but more qualified
- user@summit.central.sun.com
- same but fully qualified
- summit!user
- same but specified as uucp
- user@prisma
- Backward compatibility tests
- user@prisma.com
-
- prisma!user
-
- user@central
- Superior domain testing
- user@machine.central
- more qualified, but unknown
- user@summit.central
- more qualified and known
- user@eng
- name in faraway domain
- user@machine.eng
- unknown machine in faraway domain
- user@summit.eng
- local machine, far away domain
- user@hoback
- far away machine
- user@machine
- apparently local but unknown machine
- user@sun.com
- Standard trivial address
- user@machine.dom.sun.com
- fully qualified but unknown machine
- user@foo.com
- standard, known, really far away domain
- user@foo.dom
- standard, unknown, really far away domain
- site!user
- Single level uucp
- site1!site2!user
- Double level uucp
- user@foo.dom@bar.dom
- Trickier address
- site!user@foo.dom
- Mixed uucp/domain
- site!user@uunet.uu.net
- Mixed double uucp/domain
NOTES¶
Note that
checksendmail is a
perl script. If
your site does not have
perl(1), it can be obtained via
anonymous
ftp from
ftp.uu.net.
sendmail requires that the user have access to directory
specified by the
OQ parameter in the configuration file
(normally
/usr/spool/mqueue).
checksendmail verifies that the user has access to this
directory before allowing the test to continue.
AUTHORS¶
Gene Kim
Rob Kolstad
Jeff Polk
Modified by Robert Harker
SEE ALSO¶
sendmail(8)