Тестирование sendmail.cf

      Чтобы включить " проверочный " режим, Вы вызываете sendmail с –bt флагом. Заданный по умолчанию файл конфигурации - файл sendmail.cf, который установлен на системе. Вы можете проверять альтернативный файл, используя -Cfilename опцию.
В следующих примерах, мы проверяем vstout.cf файл конфигурации, сгенерированный из файла vstout.m4.

      # /usr/lib/sendmail -bt -Cvstout.cf
ADDRESS TEST MODE
Enter <RULESET> <ADDRESS>
[Note: No initial ruleset 3 call]
&gt;

      Следующие тесты гарантируют, что sendmail способен получать всю почту пользователей вашей системы. Во всех случаях результат теста должен быть тот же самый и указывать на локальное имя системы с ЛОКАЛЬНЫМ mailer'ом.
Сначала проверите, как почта была бы передана локальному пользователю.

      # /usr/lib/sendmail -bt -Cvstout.cf
ADDRESS TEST MODE
Enter <RULESET> </ADDRESS></FORM></DIV></DIV><PRE><ADDRESS><ADDRESS>
[Note: No initial ruleset 3 call]
&gt; 3,0 me
rewrite: ruleset  3       input: me
rewrite: ruleset  7       input: me
rewrite: ruleset  9       input: me
rewrite: ruleset  9       returns: &lt; me &gt;
rewrite: ruleset  7          returns: &lt; &gt; , me
rewrite: ruleset  3          returns: &lt; &gt; , me
rewrite: ruleset  0       input: &lt; &gt; , me
rewrite: ruleset  8       input: &lt; &gt; , me
rewrite: ruleset 20       input: &lt; &gt; , me
rewrite: ruleset 20       returns: &lt; &gt; , @ vstout . vbrew . com , me
rewrite: ruleset  8       returns: &lt; &gt; , @ vstout . vbrew . com , me
rewrite: ruleset 26       input: &lt; &gt; , @ vstout . vbrew . com , me
rewrite: ruleset 26       returns: $# LOCAL $@ vstout . vbrew . com $: me
rewrite: ruleset  0       returns: $# LOCAL $@ vstout . vbrew . com $: me

      Вывод показывает как sendmail обрабатывает адрес внутренне. Он вручается различным ruleset, которые анализируют его, вызывают другой ruleset по очереди, и разбивают его в компоненты.
В нашем примере, мы передали мой адрес к ruleset 3 и 0 (это - значение из 3,0 введенное перед адресом). Последняя строка показывает анализируемый адрес возвращаемый ruleset 0.
Затем, проверите почту пользователя вашей системы с синтаксисом UUCP.

      # /usr/lib/sendmail -bt -Cvstout.cf
ADDRESS TEST MODE
Enter <RULESET> <ADDRESS>
[Note: No initial ruleset 3 call]
&gt; 3,0 vstout!me
rewrite: ruleset  3 input: vstout ! me
[...]
rewrite: ruleset  0 returns: $# LOCAL $@ vstout . vbrew . com  $: me &gt;

      Затем, проверите почту, адресованную пользователю вашей системы с синтаксисом Internet к вашему полностью квалифицированному hostname.

      # /usr/lib/sendmail -bt -Cvstout.cf
ADDRESS TEST MODE
Enter <RULESET> <ADDRESS>
[Note: No initial ruleset 3 call]
&gt; 3,0 me@vstout.vbrew.com
rewrite: ruleset  3 input: me @ vstout . vbrew . com
[...]
rewrite: ruleset  0 returns: $# LOCAL $@ vstout . vbrew . com $: me &gt;

      Вы должны повторить вышеупомянутые два теста с каждым из имен, которые Вы определили в PSEUDONYMS и параметрах DEFAULT NAME в вашем файле sendmail.m4.       Наконец, проверите что Вы можете отправлять почту вашему relay host.

      # /usr/lib/sendmail -bt -Cvstout.cf
ADDRESS TEST MODE
Enter <RULESET> <ADDRESS>
[Note: No initial ruleset 3 call]
&gt; 3,0 fred@moria.com
rewrite: ruleset  3       input: fred @ moria . com
rewrite: ruleset  7       input: fred @ moria . com
rewrite: ruleset  9       input: fred @ moria . com
rewrite: ruleset  9       returns: &lt; fred &gt; @ moria . com
rewrite: ruleset  7       returns: &lt; @ moria . com &gt; , fred
rewrite: ruleset  3       returns: &lt; @ moria . com &gt; , fred
rewrite: ruleset  0       input: &lt; @ moria . com &gt; , fred
rewrite: ruleset  8       input: &lt; @ moria . com &gt; , fred
rewrite: ruleset  8       returns: &lt; @ moria . com &gt; , fred
rewrite: ruleset 29       input: &lt; @ moria . com &gt; , fred
rewrite: ruleset 29       returns: &lt; @ moria . com &gt; , fred
rewrite: ruleset 26       input: &lt; @ moria . com &gt; , fred
rewrite: ruleset 25       input: &lt; @ moria . com &gt; , fred
rewrite: ruleset 25       returns: &lt; @ moria . com &gt; , fred
rewrite: ruleset  4       input: &lt; @ moria . com &gt; , fred
rewrite: ruleset  4       returns: fred @ moria . com
rewrite: ruleset 26       retu rns  &lt; @ moria . com &gt; , fred
rewrite: ruleset  0       returns: $# UUCP-A $@ moria $: &lt; @ moria
. com &gt; , fred &gt;