The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Каталог документации / Раздел "Руководства по FreeBSD на русском" / Оглавление документа

20.3 Поиск и устранение неисправностей

Вот несколько часто задаваемых вопросов и ответов на них, взятых, в основном, из FAQ.

20.3.1. Почему я должен использовать FQDN для хостов вне моей подсети?
20.3.2. Sendmail выдает ошибку ``mail loops back to myself''
20.3.3. Как работать с электронной почтой при коммутируемом соединении с Интернет?

20.3.1. Почему я должен использовать FQDN для хостов вне моей подсети?

Вы, видимо, обнаружили, что хост, к которому Вы обратились, оказался на самом деле в другом домене; например, если Вы находитесь в домене foo.bar.edu и хотите обратиться к хосту mumble в домене bar.edu, то должны указать его полное доменное имя, mumble.bar.edu, а не просто mumble.

Традиционно, ресолверы (распознаватели) BSD BIND позволяли это делать. Однако, текущая версия BIND, поставляемая с FreeBSD, больше не добавляет имена доменов, отличающихся от того, в котором Вы находитесь, для не полностью указанных имен хостов. То есть, имя mumble будет опознан как mumble.foo.bar.edu или будет искаться в корневом домене.

Это отличается от предыдущего поведения, при котором поиск продолжался в доменах mumble.bar.edu и mumble.edu. Если Вам интересны причины объявления такого поведения плохой практикой и даже ошибкой в безопасности, обратитесь к RFC 1535.

Хорошим решением будет поместить строку

search foo.bar.edu bar.edu
вместо ранее используемой:
domain foo.bar.edu
в файл /etc/resolv.conf. Однако удостоверьтесь, что порядок поиска не нарушает ``границ полномочий между локальным и внешним администрирования'', в терминологии RFC 1535.

20.3.2. Sendmail выдает ошибку ``mail loops back to myself''

В FAQ по sendmail дан следующий ответ:

* Выдаются сообщения ``Local configuration error'', например:

553 relay.domain.net config error: mail loops back to myself
554 <user@domain.net>... Local configuration error

Как можно решить эту проблему?

Согласно записям MX, почта для домена domain.net перенаправляется на хост
relay.domain.net, однако последний не распознается как
domain.net.  Добавьте domain.net в файл
/etc/sendmail.cw (если Вы используете
FETURE(use_cw_file)) или добавьте ``Cw domain.net'' в файл
/etc/sendmail.cf.

Текущая версия этого FAQ больше не поставляется вместе с sendmail. Однако, этот документ регулярно помещается в конференциях comp.mail.sendmail, comp.mail.misc, comp.mail.smail, comp.answers и news.answers. Вы можете получить копию по электронной почте, послав запрос, содержащий команду ``send usenet/news.answers/mail/sendmail-faq'' в теле письма, по адресу .

20.3.3. Как работать с электронной почтой при коммутируемом соединении с Интернет?

Вы можете подключить к Интернет FreeBSD машину в локальной сети, которая будет ``промежуточным звеном'' в доставке Вашей почты. Для этого существует по крайней мере два способа. Или, в качестве альтернативы, Вы можете воспользоваться UUCP.

Прежде всего, Вам необходимо убедиться, что провайдер обеспечивает дополнительный MX-сервис для Вашего домена, например:

bigco.com.            MX        10      bigco.com.
                      MX        20      smalliap.com.

Только один хост должен быть указан в качестве последнего получателя (добавьте запись Cw bigco.com в файл /etc/sendmail.cf на машине bigco.com).

Когда программа sendmail (со стороны отправителя) ``захочет'' доставить почту, она попытается установить Интернет-соединение через модем. Скорее всего, ей это не удастся (в произвольный момент времени Вы, вероятнее всего, не будете подключены к Интернет), и она автоматически перейдет ко второму серверу, т.е. Вашему провайдеру Интернет, который, в свою очередь, будет пытаться установить соединение в Вашим компьютером каждые (sendmail_flags = -bd -q15m в файле /etc/rc.conf) 15 минут, чтобы доставить почту.

Вы можете воспользоваться следующим сценарием, чтобы забирать почту каждый раз, когда Вы входите в систему.

#!/bin/sh
# Put me in /usr/local/bin/pppbigco
( sleep 60 ; /usr/sbin/sendmail -q ) &
/usr/sbin/ppp -direct pppbigco

Если же Вы хотите написать отдельный пользовательский скрипт, лучше воспользоваться командой sendmail -qRbigco.com вместо вышеприведенного сценария, так как в этом случае вся почта в очереди для хоста bigco.com будет обработана немедленно.

Рассмотрим эту ситуацию подробнее.

Вот пример сообщения от Список рассылки, посвящённый использованию FreeBSD у провайдеров Интернет услуг (ISP).

> мы предоставляем вторичный MX для наших клиентов.  Вы соединяетесь
> с нашим сервером несколько раз в день чтобы забрать почту для Вашего
> первичного (главного) MX (мы не соединяемся с ним каждый раз, когда
> приходит новая почта для его доменов).  Далее, sendmail отправляет
> почту, находящуюся в очереди каждые 30 минут, и клиент должен быть
> подключен к Интернет в течении 30 минут, чтобы удостовериться, что
> вся почта ``ушла'' на основной MX-сервер.
>
> Может быть, есть какая-либо команда, которая заставит sendmail
> немедленно отправить все почту, находящуюся в очереди?  Естественно,
> пользователи не обладают какими-либо повышенными привилегиями на
> нашем сервере.

В секции ``privacy flags'' файла
sendmail.cf, определяется опция
Opgoaway,restrictqrun

Уберите restrictqrun, чтобы разрешить рядовым
пользователям инициировать работу с очередью.  Вам также может понадобиться
изменить порядок MX-серверов.  Так, если Вы являетесь первым (основным) MX-сервером, укажите:

# If we are the best MX for a host, try directly instead of generating
# local config error.
OwTrue

Таким образом, удаленный хост будет доставлять почту непосредственно к Вам,
не пытаясь установить соединение с клиентом. Затем уже Вы, в свою очередь,
отсылаете ее клиенту.  Удостоверьтесь, что в DNS есть записи про
``customer.com'' и ``hostname.customer.com''.  Просто
добавьте запись A в DNS для ``customer.com''.

Этот, и другие документы, могут быть скачаны с ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

По вопросам связанными с FreeBSD, прочитайте документацию прежде чем писать в <questions@FreeBSD.org>.
По вопросам связанным с этой документацией, пишите <doc@FreeBSD.org>.
По вопросам связанным с русским переводом документации, пишите <frdp@FreeBSD.org.ua>.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру