1) Проверить, доставляется ли почта нормально, если в почтовом адресе
указано полное имя машины, например у тебя домен -- bar.com, имя твоего сервера -- foo.bar.com, ты посылаешь почту пользователю johnny на
johnny@foo.bar.com -- она должна доставиться не выходя с сервера.
Если нет -- нужно проверить файл конфигурации sendmail (если ты ничего не менял, он скорее всего называется в /etc/mail/sendmail.cf). Там есть две директивы:
Cwlocalhost
# file containing names of hosts for which we receive email
Fw-o /etc/mail/sendmail.cw
Они позволяют установить имена компьютеров, которые твой sendmail будет
считать локальными и будет принимать почту (можна все такие имена перечислить в файле /etc/mail/sendmail.cw, например, если полное доменное имя твоего сервера foo.bar.com, в файл /etc/mail/sendmail.cw нужно вставить foo и foo.bar.com, или если имя только одно -- просто указать его вместо localhost в Cwlocalhost )
2) Если из всё вышеперечисленное работает - идём дальше - находим
файл named.conf -- скорее всего у тебя он лежит в /etc/named.conf или
/etc/namedb/named.conf (но можно find /etc -name named.conf).
Смотрим в нём в каком файле у тебя описана зона:
если твой домен bar.com, то должно быть нечто подобное:
zone "bar.com" in {
type master;
file "master/bar.com";
};
Далее -- делаем резервную копию этого файла ( master/bar.com ) - на всякий
случай.
Открываем его.
В самом верху идёт секция SOA,
например
$ORIGIN com.
bar IN SOA foo.bar.com. root.foo.bar.com. (
2003012401 ; Serial
21600 ; Refresh (6 h)
3600 ; Retry (1 hour)
864000 ; Expire (10 days)
86400 ) ; Minimum (1 day)
После неё сразу идут описания nameserver-ов и почтовых серверов для зоны,
если нет - можна вставить твои:
IN MX 0 foo.bar.com.
IN MX 10 mailrelay.somewhere.net.
IN MX 20 foo.something.else.com.
(указанные выше записи описывают mail-exchager-ы для твоего домены,
цифры 0, 10, 20 - это приоритеты использования mail-exchager-ов,
т.е. сначала делаетя попыека доставить почту на сервер с большим приоритетом (с меньшим числом в MX записи), если не удаётся - на следующий). Если у тебя только одна машина может принимать почту для
домена то будет только:
IN MX 0 foo.bar.com.
Обрати внимание на точку в конце доменного имени, в данном случае она обязательна, она указывает на то, что это полное имя и его не надо расширять дальше, если этого не сделать -- будет делаться попытка
доставить почту на foo.bar.com.bar.com, которая , очевидно, провалится.
Дальше, если в файл зоны были внесены изменения, увеличиваем число (можна на 1, или любое другое число, но важно, чтобы каждое новое было больше
предыдущего),
которое стоит в SOA - секции с пометкой Serial, в нашем случае:
2003012401 ; Serial
Сохраням файл зоны, делаём ps -ax|grep named - получаем PID named-а,
делаем kill -SIGHUP NAMED_PID (где NAMED_PID - полученный PID), чтобы
заставить named перечитать конфигурацию и перезагрузить описания зон
и проверяем доставку.