Здравствуйте, специалисты! Помогите пожалуйста новичку в решении проблемы с почтой. Дело вот в чем, сервак на freebsd с сайтом одним интерфейсом смотрит в интернет, другим в локальную сеть где подключен сервак с почтой. Почта и сайт работают, но при попытке с сервака сайта отправить почту на почтовый сервак возникает ошибка. Проблема в том что имя хоста сервера с сайтом совпадает с доменным именем сайта и почты и скорее всего он ищет адресата локально. Как заставить sendmail принудительно слать сообщение на почтовый сервер?
> Здравствуйте, специалисты! Помогите пожалуйста новичку в решении проблемы с почтой. Дело
> вот в чем, сервак на freebsd с сайтом одним интерфейсом смотрит
> в интернет, другим в локальную сеть где подключен сервак с почтой.
> Почта и сайт работают, но при попытке с сервака сайта отправить
> почту на почтовый сервак возникает ошибка. Проблема в том, что имя
> хоста сервера с сайтом совпадает с доменным именем сайта и почты
> и скорее всего он ищет адресата локально. Как заставить sendmail принудительно
> слать сообщение на почтовый сервер?Какая ошибка? Логи в студию.
Какой софт работат вместе с сендмейлом?
>> Здравствуйте, специалисты! Помогите пожалуйста новичку в решении проблемы с почтой. Дело
>> вот в чем, сервак на freebsd с сайтом одним интерфейсом смотрит
>> в интернет, другим в локальную сеть где подключен сервак с почтой.
>> Почта и сайт работают, но при попытке с сервака сайта отправить
>> почту на почтовый сервак возникает ошибка. Проблема в том, что имя
>> хоста сервера с сайтом совпадает с доменным именем сайта и почты
>> и скорее всего он ищет адресата локально. Как заставить sendmail принудительно
>> слать сообщение на почтовый сервер?
> Какая ошибка? Логи в студию.
> Какой софт работат вместе с сендмейлом?сайт Друпал, на сайте форма которая выдаёт ошибку при отсылке сообщения на корпоративный имэйл, вот схема чтоб нагляднее было
----инет,белый айпи----> [freebsd с сайтом] ----локалка---> [win2003+MDaemon]
сайт dsg.donetsk.ua почта user@dsg.donetsk.ua и имя хоста на freebsd тоже dsg.donetsk.ua, поэтому sendmail ищет адресата локально на компе с сайтом и возвращает ошибку пользователь не найден
Jul 11 09:58:36 dsg sendmail[7938]: q6B6waJm007938: from=www, size=72, class=0, nrcpts=1, msgid=<201207110658.q6B6waJm007938@dsg.donetsk.ua>, relay=www@localhost
Jul 11 09:58:36 dsg sm-mta[7939]: q6B6wagZ007939: <ov@dsg.donetsk.ua>... User unknown
Jul 11 09:58:36 dsg sendmail[7938]: q6B6waJm007938: to=ov@dsg.donetsk.ua, ctladdr=www (80/80), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30072, relay=[127.0.0.1] [127.0.0.1], dsn=5.1.1, stat=User unknown
Jul 11 09:58:36 dsg sm-mta[7939]: q6B6wagZ007939: from=<www@dsg.donetsk.ua>, size=72, class=0, nrcpts=0, proto=ESMTP, daemon=Daemon0, relay=localhost [127.0.0.1]
Jul 11 09:58:36 dsg sendmail[7938]: q6B6waJm007938: q6B6waJn007938: DSN: User unknown
Jul 11 09:58:36 dsg sm-mta[7939]: q6B6wagb007939: from=<>, size=2165, class=0, nrcpts=1, msgid=<201207110658.q6B6waJn007938@dsg.donetsk.ua>, bodytype=8BITMIME, proto=ESMTP, daemon=Daemon0, relay=localhost [127.0.0.1]
Jul 11 09:58:36 dsg sendmail[7938]: q6B6waJn007938: to=www, delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=31096, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (q6B6wagb007939 Message accepted for delivery)
Jul 11 09:58:36 dsg sm-mta[7940]: q6B6wagb007939: to=<www@dsg.donetsk.ua>, delay=00:00:00, xdelay=00:00:00, mailer=local, pri=32355, relay=local, dsn=2.0.0, stat=Sent
> Здравствуйте, специалисты! Помогите пожалуйста новичку в решении проблемы с почтой. Дело
> вот в чем, сервак на freebsd с сайтом одним интерфейсом смотрит
> в интернет, другим в локальную сеть где подключен сервак с почтой.
> Почта и сайт работают, но при попытке с сервака сайта отправить
> почту на почтовый сервак возникает ошибка. Проблема в том что имя
> хоста сервера с сайтом совпадает с доменным именем сайта и почты
> и скорее всего он ищет адресата локально. Как заставить sendmail принудительно
> слать сообщение на почтовый сервер?первое что необходимо делать - научиться понятно объяснять или ставить задачу,
покажите:сервак:
# hostname
# cat /etc/mail/ваш.mc
# cat /etc/mail/local-host-names (или sendmail.cw)почтовый сервер:
# hostname
# cat /etc/mail/ваш.mc
# cat /etc/mail/local-host-names (или sendmail.cw)покажите:
сервак:
# nslookup -q=mx `hostname | cut -d. -f2-`
# nslookup -q=mx `hostname`
# nslookup -q=any `hostname`# cat /etc/resolv.conf
почтовый сервер:
# nslookup -q=mx `hostname | cut -d. -f2-`
# nslookup -q=mx `hostname`
# nslookup -q=any `hostname`# cat /etc/resolv.conf
>[оверквотинг удален]
> сервак:
> # nslookup -q=mx `hostname | cut -d. -f2-`
> # nslookup -q=mx `hostname`
> # nslookup -q=any `hostname`
> # cat /etc/resolv.conf
> почтовый сервер:
> # nslookup -q=mx `hostname | cut -d. -f2-`
> # nslookup -q=mx `hostname`
> # nslookup -q=any `hostname`
> # cat /etc/resolv.confСЕРВАК (он же шлюз для почтовика, на нём же сайт, с него же НЕ уходит почта на почтовик)
1)
dsg# hostname
dsg.donetsk.ua2) МС файл
divert(-1)
#
# Copyright (c) 1983 Eric P. Allman
# Copyright (c) 1988, 1993
# The Regents of the University of California. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
# 1. Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
# 3. All advertising materials mentioning features or use of this software
# must display the following acknowledgement:
# This product includes software developed by the University of
# California, Berkeley and its contributors.
# 4. Neither the name of the University nor the names of its contributors
# may be used to endorse or promote products derived from this software
# without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
# SUCH DAMAGE.
##
# This is a generic configuration file for FreeBSD 5.X and later systems.
# If you want to customize it, copy it to a name appropriate for your
# environment and do the modifications there.
#
# The best documentation for this .mc file is:
# /usr/share/sendmail/cf/README or
# /usr/src/contrib/sendmail/cf/README
#divert(0)
VERSIONID(`$FreeBSD: src/etc/sendmail/freebsd.mc,v 1.37.2.1.2.1 2009/10/25 01:10:29 kensmith Exp $')
OSTYPE(freebsd6)
DOMAIN(generic)FEATURE(access_db, `hash -o -T<TMPF> /etc/mail/access')
FEATURE(blacklist_recipients)
FEATURE(local_lmtp)
FEATURE(mailertable, `hash -o /etc/mail/mailertable')
FEATURE(virtusertable, `hash -o /etc/mail/virtusertable')dnl Uncomment to allow relaying based on your MX records.
dnl NOTE: This can allow sites to use your server as a backup MX without
dnl your permission.
dnl FEATURE(relay_based_on_MX)dnl DNS based black hole lists
dnl --------------------------------
dnl DNS based black hole lists come and go on a regular basis
dnl so this file will not serve as a database of the available servers.
dnl For that, visit
dnl http://www.google.com/Top/Computers/Internet/E-mail/Spam/Bla.../dnl Uncomment to activate Realtime Blackhole List
dnl information available at http://www.mail-abuse.com/
dnl NOTE: This is a subscription service as of July 31, 2001
dnl FEATURE(dnsbl)
dnl Alternatively, you can provide your own server and rejection message:
dnl FEATURE(dnsbl, `blackholes.mail-abuse.org', ``"550 Mail from " $&{client_addr} " rejected, see http://mail-abuse.org/cgi-bin/lookup?" $&{client_addr}'')dnl Dialup users should uncomment and define this appropriately
dnl define(`SMART_HOST', `your.isp.mail.server')dnl Uncomment the first line to change the location of the default
dnl /etc/mail/local-host-names and comment out the second line.
dnl define(`confCW_FILE', `-o /etc/mail/sendmail.cw')
define(`confCW_FILE', `-o /etc/mail/local-host-names')dnl Enable for both IPv4 and IPv6 (optional)
DAEMON_OPTIONS(`Name=IPv4, Family=inet')
DAEMON_OPTIONS(`Name=IPv6, Family=inet6, Modifiers=O')define(`confBIND_OPTS', `WorkAroundBrokenAAAA')
define(`confNO_RCPT_ACTION', `add-to-undisclosed')
define(`confPRIVACY_FLAGS', `authwarnings,noexpn,novrfy')
MAILER(local)
MAILER(smtp)3) файла local-host-names нету
4)
dsg# nslookup -q=mx 'dsg.donetsk.ua | cut -d. -f2-'
Server: 195.184.192.18
Address: 195.184.192.18#53** server can't find dsg.donetsk.ua | cut -d. -f2-: NXDOMAIN
5)
dsg# nslookup -q=mx 'dsg.donetsk.ua'
Server: 195.184.192.18
Address: 195.184.192.18#53Non-authoritative answer:
dsg.donetsk.ua mail exchanger = 10 mail.dsg.donetsk.ua.Authoritative answers can be found from:
dsg.donetsk.ua nameserver = ns1.imena.com.ua.
dsg.donetsk.ua nameserver = ns3.imena.com.ua.
dsg.donetsk.ua nameserver = ns2.imena.com.ua.
mail.dsg.donetsk.ua internet address = 195.184.207.226
ns1.imena.com.ua internet address = 195.39.196.43
ns1.imena.com.ua has AAAA address 2a02:2278:70eb:199::196:43
ns2.imena.com.ua internet address = 188.40.253.34
ns2.imena.com.ua has AAAA address 2a01:4f8:100:22a6:188:40:253:34
ns3.imena.com.ua internet address = 88.81.249.200
ns3.imena.com.ua has AAAA address 2a01:758:fffc:6::26)
dsg# nslookup -q=any 'dsg.donetsk.ua'
Server: 195.184.192.18
Address: 195.184.192.18#53Non-authoritative answer:
dsg.donetsk.ua mail exchanger = 10 mail.dsg.donetsk.ua.
Name: dsg.donetsk.ua
Address: 195.184.207.226
dsg.donetsk.ua nameserver = ns2.imena.com.ua.
dsg.donetsk.ua nameserver = ns3.imena.com.ua.
dsg.donetsk.ua nameserver = ns1.imena.com.ua.Authoritative answers can be found from:
dsg.donetsk.ua nameserver = ns2.imena.com.ua.
dsg.donetsk.ua nameserver = ns3.imena.com.ua.
dsg.donetsk.ua nameserver = ns1.imena.com.ua.
mail.dsg.donetsk.ua internet address = 195.184.207.226
ns1.imena.com.ua internet address = 195.39.196.43
ns1.imena.com.ua has AAAA address 2a02:2278:70eb:199::196:43
ns2.imena.com.ua internet address = 188.40.253.34
ns2.imena.com.ua has AAAA address 2a01:4f8:100:22a6:188:40:253:34
ns3.imena.com.ua internet address = 88.81.249.200
ns3.imena.com.ua has AAAA address 2a01:758:fffc:6::2Почтовик на винде 2003+MDaemon, находится в локальной сети с серваком
>[оверквотинг удален]
>> # nslookup -q=mx `hostname | cut -d. -f2-`
>> # nslookup -q=mx `hostname`
>> # nslookup -q=any `hostname`
>> # cat /etc/resolv.conf
> СЕРВАК (он же шлюз для почтовика, на нём же сайт, с него
> же НЕ уходит почта на почтовик)
> 1)
> dsg# hostname
> dsg.donetsk.ua
> 2) МС файлваш mc повторяет freebsd.mc и ничего интересного ПОКА в нем нет.
> 3) файла local-host-names нету
печально
> 4)
> dsg# nslookup -q=mx 'dsg.donetsk.ua | cut -d. -f2-'
> Server: 195.184.192.18
> Address: 195.184.192.18#53
> ** server can't find dsg.donetsk.ua | cut -d. -f2-: NXDOMAINитого hostname == dsg.donetsk.ua, а домен такой же?
>[оверквотинг удален]
> dsg# nslookup -q=mx 'dsg.donetsk.ua'
> Server: 195.184.192.18
> Address: 195.184.192.18#53
> Non-authoritative answer:
> dsg.donetsk.ua mail exchanger = 10 mail.dsg.donetsk.ua.
> Authoritative answers can be found from:
> dsg.donetsk.ua nameserver = ns1.imena.com.ua.
> dsg.donetsk.ua nameserver = ns3.imena.com.ua.
> dsg.donetsk.ua nameserver = ns2.imena.com.ua.
> mail.dsg.donetsk.ua internet address = 195.184.207.226MX Exchager для dsg.donetsk.ua == mail.dsg.donetsk.ua == 195.184.207.226
это ваша машина (mail.dsg.donetsk.ua) , в вашей сети, у вас под контролем?
# nslookup -q=a dsg.donetsk.ua
?# ifconfig -a
?# cat /etc/resolv.conf
прим: внимательней нужно быть, я конкретно писал команды, зачем вы вместо
hostname значения подставляли?найдите разницу между:
# nslookup -q=mx `hostname | cut -d. -f2-`
и
# nslookup -q=mx 'dsg.donetsk.ua | cut -d. -f2-'вторая команда - чушь из-за ваших кавычек '' и при отсутствии внутри них echo:
# nslookup -q=mx `hostname | cut -d. -f2-`
это две три команды две выполняются в наклонных кавычках ``
hostname - значение этой команды через pipe подается на вход команды cut из
которой вырезается domainname, далее выполняется nslookup -q=mx domainnameили можно просто:
# nslookup -q=mx ваш_hostname.
# nslookup -q=mx ваш_domain.итак:
ваш роутер с sendmail имеет, заполните:
hostname=
domain=
ip-address=перечислить все или показать ifconfig -a> Почтовик на винде 2003+MDaemon, находится в локальной сети с серваком
плевать где он находится, нужно знать какие у него ip, hostname, как на него
попадает почта и чью почту он обслуживает: domain'а или host'а
> итого hostname == dsg.donetsk.ua, а домен такой же?да такой же в том то и дело
> MX Exchager для dsg.donetsk.ua == mail.dsg.donetsk.ua == 195.184.207.226
> это ваша машина (mail.dsg.donetsk.ua) , в вашей сети, у вас под контролем?да это машина с виндой 2003 и МДаемоном, у меня под контролем, на неё мне и надо принять почту с сайта
> # nslookup -q=a dsg.donetsk.ua
dsg# nslookup -q=a dsg.donetsk.ua
Server: 195.184.192.18
Address: 195.184.192.18#53Non-authoritative answer:
Name: dsg.donetsk.ua
Address: 195.184.207.226
> # ifconfig -adsg# ifconfig -a
re0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=389b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_UCAST,WOL_MCAST,WOL_MAGIC>
ether 00:19:99:a6:8f:73
inet 195.184.207.226 netmask 0xfffffff8 broadcast 195.184.207.231
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active
re1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=389b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_UCAST,WOL_MCAST,WOL_MAGIC>
ether 00:06:4f:85:ea:fb
inet 192.168.1.103 netmask 0xffffff00 broadcast 192.168.1.255
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active
plip0: flags=8810<POINTOPOINT,SIMPLEX,MULTICAST> metric 0 mtu 1500
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
options=3<RXCSUM,TXCSUM>
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x4
inet6 ::1 prefixlen 128
inet 127.0.0.1 netmask 0xff000000
> # cat /etc/resolv.confdomain donetsk.ua
nameserver 195.184.192.18
nameserver 195.184.192.12> ваш роутер с sendmail имеет, заполните:
> hostname= dsg.donetsk.ua
> domain= dsg.donetsk.ua
> ip-address=перечислить все или показать ifconfig -aвыше перечислил, айпи у сервака с МДаемоном который должен принять почту 192.168.1.102
я ж сразу написал вроде,проблема в том что сендмейл ищет адресата на своей машине в связи с тем что хостнейм и домен совпадает
машина:hostname = dsg.donetsk.ua
она же: mail.dsg.donetsk.ua
является почтовым релеем для домена dsg.donetsk.ua[alone]~ > nslookup -q=mx dsg.donetsk.ua.
Server: 62.84.100.7
Address: 62.84.100.7#53Non-authoritative answer:
dsg.donetsk.ua mail exchanger = 10 mail.dsg.donetsk.ua.Authoritative answers can be found from:
dsg.donetsk.ua nameserver = ns3.imena.com.ua.
dsg.donetsk.ua nameserver = ns1.imena.com.ua.
dsg.donetsk.ua nameserver = ns2.imena.com.ua.
mail.dsg.donetsk.ua internet address = 195.184.207.226Итого:
имеем сервер hostname == dsg.donetsk.ua == mail.dsg.donetsk.ua
== 195.184.207.226этот сервер, имеет один IP-address, но несколько записей в DNS:
RR=A для dsg.donetsk.ua ip=195.184.207.226
RR=A для mail.dsg.donetsk.ua ip=195.184.207.226
RR=MX для домена dsg.donetsk.ua:
dsg.donetsk.ua mail exchanger = 10 mail.dsg.donetsk.ua.Вполне законно что вся почта для @dsg.donetsk.ua обрабатывается на
этой машине и кладется локально.Далее, машина dsg.donetsk.ua имеет второй интерфейс, ip=192.168.1.103
и подсоединение в локальную сеть 192.168.1.0.В локальной сети есть почтовый сервер Windows 2003 с mdaemon на который
вы хотите принимать ВСЮ почту для адресов @dsg.donetsk.ua?!Я все правильно расписал или нет, или какую почту вы хотите принимать на
mdaemon(win2003) - всю?
> hostname = dsg.donetsk.ua
> она же: mail.dsg.donetsk.ua
> является почтовым релеем для домена dsg.donetsk.ua
> Я все правильно расписал или нет, или какую почту вы хотите принимать
> на
> mdaemon(win2003) - всю?да, всё правильно
>Вполне законно что вся почта для @dsg.donetsk.ua обрабатывается на
>этой машине и кладется локально.вся почта как и положено уходит на машину с МДаемон и обрабатывается там, а вот почта отправленная с самого сервера (который freebsd, который шлюз для почтовика, который локалхост-dsg.donetsk.ua и IP 192.168.1.103) складывается локально на сервере
порты почты проброшены с помощью rinetd
> порты почты проброшены с помощью rinetdвобщем через жопу сделано, sorry :(
---
вы можете сделать так, сменить hostname на freebsd: dsg.donetsk.ua -> mail.dsg.donetsk.ua
создать файл: /etc/mail/local-host-names со строчками
mail.dsg.donetsk.ua
и добавить в mc-файл:
FEATURE(`relay_hosts_only')чтобы локальная почта для host'а mail.dsg.donetsk.ua оставалась на freebsd сервере.
Далее создать файл /etc/mail/mailertable со строкой
dsg.donetsk.ua smtp:[192.168.1.102]
чтобы вся входящая почта уходила на mdaemon
В дополнение можно использовать SMART_HOST в mc-файле для того чтобы вся исходящая почта
уходила на mdaemon:define(`SMART_HOST', `smtp:[192.168.1.102]')
после всех изменений:
# cd /etc/mail
# make stop
# make all
# make start
> вобщем через жопу сделано, sorry :(знаю что через жопу)))
> вы можете сделать так, сменить hostname на freebsd: dsg.donetsk.ua -> mail.dsg.donetsk.uaэто никак не повлияет на работоспособность друпала? просто надеялся что можно обойтись без этого
> создать файл: /etc/mail/local-host-names со строчками
> mail.dsg.donetsk.ua
> и добавить в mc-файл:
> FEATURE(`relay_hosts_only')
> чтобы локальная почта для host'а mail.dsg.donetsk.ua оставалась на freebsd сервере.
> Далее создать файл /etc/mail/mailertable со строкой
> dsg.donetsk.ua smtp:[192.168.1.102]
> чтобы вся входящая почта уходила на mdaemonвся входящая сразу приходит на МДаемон, его порты проброшены наружу
> В дополнение можно использовать SMART_HOST в mc-файле для того чтобы вся исходящая
> почта
> уходила на mdaemon:
> define(`SMART_HOST', `smtp:[192.168.1.102]')
> после всех изменений:
> # cd /etc/mail
> # make stop
> # make all
> # make startСпасибо большое за помощь!теперь знаю в какую сторону ковырять
>> вы можете сделать так, сменить hostname на freebsd: dsg.donetsk.ua -> mail.dsg.donetsk.ua
> это никак не повлияет на работоспособность друпала? просто надеялся что можно обойтись
> без этогоне знаю
есть еще одна проблема, как у вас sendmail стартует?
(у вас же 25 порт пробрасывается через rinetd)# grep sendmail /etc/rc.conf
# sockstat | grep sendmailможно попробовать без mc и сборки cf, прямо в рабочем sendmail.cf несколько
макросов переопределить.
> # grep sendmail /etc/rc.conf
> # sockstat | grep sendmail
> можно попробовать без mc и сборки cf, прямо в рабочем sendmail.cf несколько
> макросов переопределить.уже стартует отсюда /etc/rc.conf ,дописал
dsg# sockstat | grep sendmail
root sendmail 1879 3 tcp4 *:25 *:*
root sendmail 1879 4 dgram -> /var/run/logpriv
root sendmail 1879 5 tcp6 *:25 *:*
root sendmail 1879 6 tcp4 *:587 *:*
smmsp sendmail 1057 3 dgram -> /var/run/logтак проблему и не решил, при изменении хостнейм падает сайт, какие макросы можно переопределить? мозги кипят уже, что только не пробовал
>[оверквотинг удален]
> root sendmail 1879 5
> tcp6 *:25
> *:*
> root sendmail 1879 6
> tcp4 *:587
> *:*
> smmsp sendmail 1057 3 dgram
> -> /var/run/log
> так проблему и не решил, при изменении хостнейм падает сайт, какие макросы
> можно переопределить? мозги кипят уже, что только не пробовалВы торопитесь вместо того чтобы понять, а у меня нет времени чтобы расписывать лекцию :(
Вернемся к началу:
- порт smtp == 25/tcp
его можно пробросить разными способами, у вас это сделано через ж..., sorry через rinetd
Значит что: значит smtp порт уже занят и слушается и форвардируется через rinetd демон.
Значит sendmail мы не можем за'bind'ить на realip:25/tcp, те не можем стартовать
sendmail в default'ной конфигурации.
В default он будет садиться на все iface и слушать smtp порт 25/tcp и submission 587/tcpВы должны решить, будете ли вы прокидывать smtp (25/tcp) используя rinetd или
будете делать ВСЕ средствами sendmail, или rinetd + sendmail!Итого:
1) rinetd only (тогда вы вовсе можете забить на sendmail)
2) сделать ВСЕ средствами sendmail: настроить sendmail gateway
3) rinetd + sendmail, в этом случае нужно посмотреть что слушает rinetd,
только реальный ip или еще и lo0 (loopback/127.0.0.1)Не надо торопиться, обдумывайте и затем делайте. В форуме дают конкретные подсказки,
остальное специалист обдумывает и делает сам.
Сейчас вы наверняка сменили: hostname, задали sendmail_enable="YES" в /etc/rc.conf
а о том что и rinetd и sendmail начнут БИТВУ за привязку к iface/ip/port не подумали.
Ну про drupal я молчу.прим: вам в наследство досталась такая кривота или сами сделали? без обид, чисто технологический вопрос.
Верхнее понятно? Будем продолжать?
>[оверквотинг удален]
> только реальный ip или еще и lo0 (loopback/127.0.0.1)
> Не надо торопиться, обдумывайте и затем делайте. В форуме дают конкретные подсказки,
> остальное специалист обдумывает и делает сам.
> Сейчас вы наверняка сменили: hostname, задали sendmail_enable="YES" в /etc/rc.conf
> а о том что и rinetd и sendmail начнут БИТВУ за привязку
> к iface/ip/port не подумали.
> Ну про drupal я молчу.
> прим: вам в наследство досталась такая кривота или сами сделали? без обид,
> чисто технологический вопрос.
> Верхнее понятно? Будем продолжать?досталось в наследство, сижу разгребаю, верхнее понятно, я пока не сделаю не успокоюсь принципиально
1) не совсем понятно как без сендмейла, без него же сайт почту не отправит, друпал пользуется МТА сервера, все что мне надо отправить сраное письмецо с формы на свой имэйл, задача с первого взгляда примитивная
2) сендмейл гейтвей пробывал по мануалам и хауту, может чтото не понимаю, может опыта нет но не получилось ничего, не релеит он почту в локалку, первым делом смотри на локалхосте и возвращает User unknownдолжен же быть какой-то выход, неужели у всех почтовые серваки на одной машине с сайтом?
оптимально rinetd+sendmail, чтоб всю почту обрабатывал только МДаемон но чтоб сендмейл слал сообщение в локалку на заданный IP не смотря на свой хостнейм
> оптимально rinetd+sendmail, чтоб всю почту обрабатывал только МДаемон но чтоб сендмейл
> слал сообщение в локалку на заданный IP не смотря на свой
> хостнеймбудете продолжать?
>> оптимально rinetd+sendmail, чтоб всю почту обрабатывал только МДаемон но чтоб сендмейл
>> слал сообщение в локалку на заданный IP не смотря на свой
>> хостнейм
> будете продолжать?конеш буду, и если вам не сложно и есть свободная минутка помогите советом
>>> оптимально rinetd+sendmail, чтоб всю почту обрабатывал только МДаемон но чтоб сендмейл
>>> слал сообщение в локалку на заданный IP не смотря на свой
>>> хостнейм
>> будете продолжать?
> конеш буду, и если вам не сложно и есть свободная минутка помогите
> советомтогда по терминам:
- дано freebsd с rinetd , с sendmail, с двумя ip и с hostname == domainname
- дано windoze + mdaemon
- с freebsd через rinetd пробрасывается 25/tcp порт на windoze машину1) вопрос, в rinetd пробрасывает только 25 порт?
конфиг rinetd в студию...2) для технологических ip настроен DNS или нет?
3) что будет при выполнении на freebsd
# telnet 192.168.1.102 25
и что говорит
# uname -a4) сохраняете свой mc и cf на всякий случай, затем приступаете к 5)
5) пробная конфигурация sendmail.mc :
-------------------------------- cut here -------------------------------------
divert(-1)
#
# Copyright (c) 1983 Eric P. Allman
# Copyright (c) 1988, 1993
# The Regents of the University of California. All rights reserved.
#
# продолжение копирайта
#
divert(0)
VERSIONID(`$FreeBSD: src/etc/sendmail/freebsd.mc,v 1.39.2.1 kensmith Exp $')
OSTYPE(freebsd6)
DOMAIN(generic)
FEATURE(access_db, `hash -o -T<TMPF> /etc/mail/access')
FEATURE(blacklist_recipients)
FEATURE(local_lmtp)
FEATURE(mailertable, `hash -o /etc/mail/mailertable')
FEATURE(virtusertable, `hash -o /etc/mail/virtusertable')
FEATURE(nouucp,reject)
FEATURE(no_default_msa)
FEATURE(masquerade_envelope)
FEATURE(relay_hosts_only)
FEATURE(stickyhost)
define(`SMART_HOST', `smtp:[192.168.1.102]')
define(`confCW_FILE', `-o /etc/mail/local-host-names')
DAEMON_OPTIONS(`Name=MTA, Addr=192.168.1.103, Port=smtp')
MASQUERADE_AS(`dsg.donetsk.ua')
define(`confBIND_OPTS', `WorkAroundBrokenAAAA')
define(`confNO_RCPT_ACTION', `add-to-undisclosed')
define(`confPRIVACY_FLAGS', `authwarnings,noexpn,novrfy')
MAILER(local)
MAILER(smtp)
------------------------------- end of cut ------------------------------------------файл /etc/mail/mailertable
---------------------------------- cut here -----------------------------------------
dsg.donetsk.ua smtp:[192.168.1.102]
------------------------------- end of cut ------------------------------------------файл /etc/mail/local-host-names
---------------------------------- cut here -----------------------------------------
mail.dsg.donetsk.ua
------------------------------- end of cut ------------------------------------------важно: в sendmail.mc правильно соблюдать все символы `,' и тд и тп
6) создаем cf
# cd /etc/mail
# make stop
# make allвносим в /etc/rc.conf запуск sendmail
# /etc/rc.d/sendmail start
7)
# sockstat | grep sendmail
# sockstat | grep rinetd
> - дано freebsd с rinetd , с sendmail, с двумя ip и
> с hostname == domainname
> - дано windoze + mdaemon
> - с freebsd через rinetd пробрасывается 25/tcp порт на windoze машинувсё верно
> 1) вопрос, в rinetd пробрасывает только 25 порт?195.184.207.226 25 192.168.1.102 25
195.184.207.226 110 192.168.1.102 110
195.184.207.226 3000 192.168.1.102 3000
195.184.207.226 143 192.168.1.102 143
> 2) для технологических ip настроен DNS или нет?не понял вопрос
> 3) что будет при выполнении на freebsd
> # telnet 192.168.1.102 25dsg# telnet 192.168.1.102 25
Trying 192.168.1.102...
Connected to 192.168.1.102.
Escape character is '^]'.
220 mail.dsg.donetsk.ua ESMTP MDaemon 11.0.0; Tue, 17 Jul 2012 11:09:58 +0300
> и что говорит
> # uname -aFreeBSD dsg.donetsk.ua 8.0-RELEASE FreeBSD 8.0-RELEASE #0: Thu Aug 18 23:57:57 EEST 2011 root@dsg.donetsk.ua:/usr/src/sys/i386/compile/WEBDSGBVV i386
приступаю к 5
>> 1) вопрос, в rinetd пробрасывает только 25 порт?
> 195.184.207.226 25 192.168.1.102 25
> 195.184.207.226 110 192.168.1.102 110
> 195.184.207.226 3000 192.168.1.102 3000
> 195.184.207.226 143 192.168.1.102 143уже неплохо для работы sendmail только на технологическом адресе 192.168.1.103
>> 2) для технологических ip настроен DNS или нет?
> не понял вопроса что тут непонятного, у вас есть технологическая сеть 192.168.1.0 (RFC1918)
для нее настроен DNS?>> 3) что будет при выполнении на freebsd
>> # telnet 192.168.1.102 25
> dsg# telnet 192.168.1.102 25
> Trying 192.168.1.102...
> Connected to 192.168.1.102.
> Escape character is '^]'.
> 220 mail.dsg.donetsk.ua ESMTP MDaemon 11.0.0; Tue, 17 Jul 2012 11:09:58 +0300понятно, на freebsd возможно придется сменить mail.dsg.donetsk.ua на что-нибудь
другое, но чуть позже
технологический днс не настроен, файл hosts
127.0.0.1 localhost
195.184.207.226 dsg.donetsk.ua dsgвсе сделал как вы написали, письмо не проходит
лог сендмейла:Jul 17 12:08:44 dsg sm-mta[15366]: starting daemon (8.14.3): SMTP+queueing@00:30 :00
Jul 17 12:08:57 dsg sm-msp-queue[15378]: starting daemon (8.14.3): queueing@00:3 0:00
Jul 17 12:09:29 dsg sendmail[15380]: q6H99TI8015380: from=www, size=561, class=0 , nrcpts=1, msgid=<201207170909.q6H99TI8015380@dsg.donetsk.ua>, relay=www@localh ost
Jul 17 12:09:29 dsg sm-mta[15381]: q6H99T6p015381: <ykurapov@dsg.donetsk.ua>... User unknown
Jul 17 12:09:29 dsg sendmail[15380]: q6H99TI8015380: to=ykurapov@dsg.donetsk.ua, ctladdr=www (80/80), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30561, relay=[127.0.0.1] [127.0.0.1], dsn=5.1.1, stat=User unknown
Jul 17 12:09:29 dsg sm-mta[15381]: q6H99T6p015381: from=<www@dsg.donetsk.ua>, si ze=561, class=0, nrcpts=0, proto=ESMTP, daemon=IPv4, relay=localhost [127.0.0.1]
Jul 17 12:09:29 dsg sendmail[15380]: q6H99TI8015380: q6H99TI9015380: DSN: User u nknown
Jul 17 12:09:30 dsg sm-mta[15381]: q6H99T6r015381: from=<>, size=2592, class=0, nrcpts=1, msgid=<201207170909.q6H99TI9015380@dsg.donetsk.ua>, bodytype=8BITMIME, proto=ESMTP, daemon=IPv4, relay=localhost [127.0.0.1]
Jul 17 12:09:30 dsg sendmail[15380]: q6H99TI9015380: to=www, delay=00:00:01, xde lay=00:00:00, mailer=relay, pri=31585, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (q6H99T6r015381 Message accepted for delivery)
Jul 17 12:09:30 dsg sm-mta[15382]: q6H99T6r015381: to=<www@dsg.donetsk.ua>, dela y=00:00:00, xdelay=00:00:00, mailer=local, pri=32782, relay=local, dsn=2.0.0, st at=Sent
> технологический днс не настроен, файл hosts
> 127.0.0.1 localhost
> 195.184.207.226 dsg.donetsk.ua dsg
> все сделал как вы написали, письмо не проходит
> лог сендмейла:я просил вывод sockstat и еще чего-то...
на freebsd есть локальные пользователи?
# ls -la /var/spool/mqueue/
# ls -la /var/spool/clientmqueue/почту как отправляли: через MUA (mail,mutt...) или какой-то другой интерфейс?
> я просил вывод sockstat и еще чего-то...dsg# sockstat | grep sendmail
smmsp sendmail 15378 3 dgram -> /var/run/log
root sendmail 15366 3 tcp4 *:25 *:*
root sendmail 15366 4 dgram -> /var/run/logpriv
root sendmail 15366 5 tcp6 *:25 *:*
root sendmail 15366 6 tcp4 *:587 *:*
You have new mail.
dsg# sockstat | grep rinetd
root rinetd 830 4 tcp4 195.184.207.226:25 *:*
root rinetd 830 5 tcp4 195.184.207.226:110 *:*
root rinetd 830 6 tcp4 195.184.207.226:3000 *:*
root rinetd 830 7 tcp4 195.184.207.226:143 *:*
> на freebsd есть локальные пользователи?
> # ls -la /var/spool/mqueue/
> # ls -la /var/spool/clientmqueue/dsg# ls -la /var/spool/mqueue/
total 4
drwxr-xr-x 2 root daemon 512 Jul 17 12:24 .
drwxr-xr-x 8 root wheel 512 Nov 21 2009 ..
dsg# ls -la /var/spool/clientmqueue/
total 6
drwxrwx--- 2 smmsp smmsp 512 Jul 17 12:23 .
drwxr-xr-x 8 root wheel 512 Nov 21 2009 ..
-rw------- 1 smmsp smmsp 51 Jul 17 12:09 sm-client.pid
> почту как отправляли: через MUA (mail,mutt...) или какой-то другой интерфейс?через php mail()
>[оверквотинг удален]
> *:25
> *:*
> root sendmail 15366 4 dgram
> -> /var/run/logpriv
> root sendmail 15366 5 tcp6
> *:25
> *:*
> root sendmail 15366 6 tcp4
> *:587
> *:*и что же мы видим, а то что вы НЕ использовали написанный для вас sendmail.mc
и не собрали новый sendmail.cf и не рестартовали sendmail с новым конфигом sendmail.mc
Ибо у вас sendmail слушает:*:25 (вместо 192.168.1.103:25)
*:587 (чего быть не должно при no_default_msa)Без обид, но вы самостоятельно хоть что-то можете?
>> почту как отправляли: через MUA (mail,mutt...) или какой-то другой интерфейс?
> через php mail()можно использовать сторонние библиотеки или набор функций в который реализован SMTP,
тогда можно слать напрямую на mdaemon по smtp, это еще один вариант.
>[оверквотинг удален]
>> root sendmail 15366 6 tcp4
>> *:587
>> *:*
> и что же мы видим, а то что вы НЕ использовали написанный
> для вас sendmail.mc
> и не собрали новый sendmail.cf и не рестартовали sendmail с новым конфигом
> sendmail.mc
> Ибо у вас sendmail слушает:
> *:25 (вместо 192.168.1.103:25)
> *:587 (чего быть не должно при no_default_msa)нету sendmail.mc есть sendmail.cf dsg.donetsk.ua.mc(менял этот) и freebsd.mc
> Без обид, но вы самостоятельно хоть что-то можете?
могу когда понимаю что делаю)
создал sendmail.mc отредактировал как вы писали, сделал make рестартанул сендмейл но sendmail.cf не изменился
> создал sendmail.mc отредактировал как вы писали, сделал make рестартанул сендмейл но sendmail.cf
> не изменилсяв /etc/mail находятся файлы для конфигурации sendmail:
Makefile - проект сборки cf, maps и тд
access, aliases, virtusertable, mailertable - карты/maps текстовые файлы из которых
будут строиться их базы в формате db:access - управление доступом, релеингом...
aliases - файл алиасов
virtusertable - таблица виртуальных адресов и перенаправления
mailertable - таблица адресов для перенаправленияmailer.conf - файл конфигурации для mailwrapper'а, ибо sendmail работает через него
freebsd.mc - файл mc конфигурации в поставке freebsd (как пример для sendmail.mc)
freebsd.submit.mc - аналогично верхнему, файл поставки freebsd (как пример для submit.mc)файлы *.cf создаются m4 препроцессором при обратке файлов *.mc
Makefile - файл проекта для упрощения выполнения ряда команд вручную.
Создание руками файла конфигурации cf:
# m4 -D_CF_DIR_=путь_к_sendmail_cf_директории/ путь_к_sendmail_cf_директории/m4/cf.m4 sendmail.mc > sendmail.cf
# m4 -D_CF_DIR_=путь_к_sendmail_cf_директории/ путь_к_sendmail_cf_директории/m4/cf.m4 submit.mc > submit.cf
общий вид команды:
# m4 -D_CF_DIR_=путь_к_cf_директории путь_к_макросу_cf/cf.m4 файл.mc
директория -D_CF_DIR_ содержит массу необходимый препроцессорных файлов .m4
необходимых для сборки файла конфигурации из файла .mc, если мы воспользуемся
директивами INCLUDE в sendmail.mc и submit.mc для включения директории и
cf.m4 макроса, команда будет выглядеть проще:by default CF_DIR для системного sendmail (еще можно установить из портов, CF_DIR
тогда изменится):/usr/share/sendmail/cf
если мы установили переменную среды -D_CF_DIR_=/usr/share/sendmail/cf/
короткий вид команды будет:# m4 sendmail.mc > sendmail.cf
иначе указываем полностью:
# m4 -D_CF_DIR_=/usr/share/sendmail/cf/ /usr/share/sendmail/m4/cf.m4 filename.mc > filename.cf
в качестве filename можем использовать что угодно, потом потребуется переименовать
в sendmail.cf/submit.cf или сделать символьный линквернемся к Makefile:
# less /etc/mail/Makefile
...
# The user-driven targets are:
#
# all - Build cf, maps and aliases
# cf - Build the .cf file from .mc file
# maps - Build the feature maps
# aliases - Build the sendmail aliases
# install - Install the .cf file as /etc/mail/sendmail.cfвыше что можем делать, и это не все:
- изменили access, virtusertable...
# cd /etc/mail
# make maps- изменили aliases
# cd /etc/mail
# make aliases- изменили mc
# cd /etc/mail
# make cf
если без ошибок
# make install
...
...
далее в нем же в /etc/mail/Makefile написано:# ------------------------------------------------------------------------
# This Makefile uses `<HOSTNAME>.mc' as the default MTA .mc file. This
# can be changed by defining SENDMAIL_MC in /etc/make.conf, e.g.:
#
# SENDMAIL_MC=/etc/mail/myconfig.mc
#
# If '<HOSTNAME>.mc' does not exist, it is created using 'freebsd.mc'
# as a template.
#
# It also uses '<HOSTNAME>.submit.mc' as the default mail submission .mc
# file. This can be changed by defining SENDMAIL_SUBMIT_MC in
# /etc/make.conf, e.g.:
#
# SENDMAIL_SUBMIT_MC=/etc/mail/mysubmit.mc
#
# If '<HOSTNAME>.submit.mc' does not exist, it is created using
# 'freebsd.submit.mc' as a template.
# ------------------------------------------------------------------------если в /etc/make.conf не определены переменные SENDMAIL_MC и SENDMAIL_SUBMIT_MC,
то по команде make cf, в качестве mc будет браться конфиг из файла: `hostname'.mc,
аналогично для submitПример:
имеем машину, которая по hostname выдает: lala.domain.ua
значит для mc создаем файл: lala.domain.ua.mc, а для submit, просто копируем
cp freebsd.submit.mc lala.domain.ua.submit.mcТеперь можем конфигурировать и выполнять make:
# cd /etc/mail
# make stop (остановили sendmail)
# редактируем lala.domain.ua.mc
# rm -f sendmail.cf lala.domain.ua.cf *submit.cf
# make cf
будет создан lala.domain.ua.cf
# make install (будут созданы sendmail.cf и submit.cf - скопированы из lala.domain.ua.cf
и lala.domain.ua.submit.cf)теперь можем стартовать sendmail:
# make start
Вот для чего Makefile, чтобы руками кучу команд не выполнять, таких как:
# m4 ...
# makemap ...
# newaliases
сделал сендмейл.цф с помощью m4, выдаёт кучу ошибок
554 5.0.0 /etc/mail/sendmail.cf: line 2: invalid argument to V line: "ERSIONID(FreeBSD: s"
451 4.0.0 /etc/mail/sendmail.cf: line 5: fileclass: cannot open 'ATURE(access_db,': No such file or directory
451 4.0.0 /etc/mail/sendmail.cf: line 6: fileclass: cannot open 'ATURE(blacklist_recipients)': No such file or directory
451 4.0.0 /etc/mail/sendmail.cf: line 7: fileclass: cannot open 'ATURE(local_lmtp)': No such file or directory
451 4.0.0 /etc/mail/sendmail.cf: line 8: fileclass: cannot open 'ATURE(mailertable,': No such file or directory
451 4.0.0 /etc/mail/sendmail.cf: line 9: fileclass: cannot open 'ATURE(virtusertable,': No such file or directory
451 4.0.0 /etc/mail/sendmail.cf: line 10: fileclass: cannot open 'ATURE(nouucp,reject)': No such file or directory
451 4.0.0 /etc/mail/sendmail.cf: line 11: fileclass: cannot open 'ATURE(no_default_msa)': No such file or directory
451 4.0.0 /etc/mail/sendmail.cf: line 12: fileclass: cannot open 'ATURE(masquerade_envelope)': No such file or directory
451 4.0.0 /etc/mail/sendmail.cf: line 13: fileclass: cannot open 'ATURE(relay_hosts_only)': No such file or directory
451 4.0.0 /etc/mail/sendmail.cf: line 14: fileclass: cannot open 'ATURE(stickyhost)': No such file or directory
554 5.0.0 /etc/mail/sendmail.cf: line 18: MASQUERADE_AS(dsg.donetsk.ua): A= argument required
554 5.0.0 /etc/mail/sendmail.cf: line 22: MAILER(local): A= argument required
554 5.0.0 /etc/mail/sendmail.cf: line 23: MAILER(smtp): A= argument required
554 5.0.0 No local mailer defined
554 5.0.0 QueueDirectory (Q) option must be set
/etc/rc.d/sendmail: WARNING: failed to start sendmail
>[оверквотинг удален]
> No such file or directory
> 451 4.0.0 /etc/mail/sendmail.cf: line 14: fileclass: cannot open 'ATURE(stickyhost)':
> No such file or directory
> 554 5.0.0 /etc/mail/sendmail.cf: line 18: MASQUERADE_AS(dsg.donetsk.ua): A= argument
> required
> 554 5.0.0 /etc/mail/sendmail.cf: line 22: MAILER(local): A= argument required
> 554 5.0.0 /etc/mail/sendmail.cf: line 23: MAILER(smtp): A= argument required
> 554 5.0.0 No local mailer defined
> 554 5.0.0 QueueDirectory (Q) option must be set
> /etc/rc.d/sendmail: WARNING: failed to start sendmailпотому что либо неправильно сделали, либо ошибки в sendmail.mc
я не вручную писал, скопировал вот это в файл, залил на сервакdivert(-1)
#
# Copyright (c) 1983 Eric P. Allman
# Copyright (c) 1988, 1993
# The Regents of the University of California. All rights reserved.
#
# продолжение копирайта
#
divert(0)
VERSIONID(`$FreeBSD: src/etc/sendmail/freebsd.mc,v 1.39.2.1 kensmith Exp $')
OSTYPE(freebsd6)
DOMAIN(generic)
FEATURE(access_db, `hash -o -T<TMPF> /etc/mail/access')
FEATURE(blacklist_recipients)
FEATURE(local_lmtp)
FEATURE(mailertable, `hash -o /etc/mail/mailertable')
FEATURE(virtusertable, `hash -o /etc/mail/virtusertable')
FEATURE(nouucp,reject)
FEATURE(no_default_msa)
FEATURE(masquerade_envelope)
FEATURE(relay_hosts_only)
FEATURE(stickyhost)
define(`SMART_HOST', `smtp:[192.168.1.102]')
define(`confCW_FILE', `-o /etc/mail/local-host-names')
DAEMON_OPTIONS(`Name=MTA, Addr=192.168.1.103, Port=smtp')
MASQUERADE_AS(`dsg.donetsk.ua')
define(`confBIND_OPTS', `WorkAroundBrokenAAAA')
define(`confNO_RCPT_ACTION', `add-to-undisclosed')
define(`confPRIVACY_FLAGS', `authwarnings,noexpn,novrfy')
MAILER(local)
MAILER(smtp)
> я не вручную писал, скопировал вот это в файл, залил на сервакзначит создали cf неверно, выше я расписал как создавать
удалил и пересоздал все файлы как положено с помощью make, сендмейл стартанул без ошибок, но все равно
dsg# sockstat | grep sendmail
root sendmail 16326 3 tcp4 *:25 *:*
root sendmail 16326 4 dgram -> /var/run/logpriv
root sendmail 16326 5 tcp6 *:25 *:*
root sendmail 16326 6 tcp4 *:587 *:*
root sendmail 16305 4 dgram -> /var/run/logpriv
ещё раз удалил и пересоздал, теперь всё норм
dsg# sockstat | grep sendmail
smmsp sendmail 1233 3 dgram -> /var/run/log
root sendmail 1230 3 tcp4 192.168.1.103:25 *:*
root sendmail 1230 4 dgram -> /var/run/logpriv
root sendmail 1055 4 dgram -> /var/run/logpriv
письмо ушло без ошибок но в ящике пусто, смотрю логи
> письмо ушло без ошибок но в ящике пусто, смотрю логилог сендмэйла
сначала
Jul 17 16:18:13 dsg sm-mta[1229]: gethostbyaddr(192.168.1.103) failed: 1
Jul 17 16:18:13 dsg sm-mta[1229]: gethostbyaddr(IPv6:::1) failed: 4после посылки письма
Jul 17 16:27:26 dsg sendmail[1280]: q6HDRQTO001280: from=www, size=558, class=0, nrcpts=1, msgid=<201207171327.q6HDRQTO001280@dsg.donetsk.ua>, relay=www@localhost
Jul 17 16:27:26 dsg sendmail[1280]: q6HDRQTO001280: to=ykurapov@dsg.donetsk.ua, ctladdr=www (80/80), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30558, relay=[127.0.0.1] [127.0.0.1], dsn=4.0.0, stat=Deferred: Connection refused by [127.0.0.1]
>> письмо ушло без ошибок но в ящике пусто, смотрю логи
> лог сендмэйла
> сначала
> Jul 17 16:18:13 dsg sm-mta[1229]: gethostbyaddr(192.168.1.103) failed: 1
> Jul 17 16:18:13 dsg sm-mta[1229]: gethostbyaddr(IPv6:::1) failed: 4# cat /etc/hosts
с нижним будем потом разбираться, читайте мои ответы последовательно
и отправляйте почту через mail> после посылки письма
> Jul 17 16:27:26 dsg sendmail[1280]: q6HDRQTO001280: from=www, size=558, class=0, nrcpts=1,
> msgid=<201207171327.q6HDRQTO001280@dsg.donetsk.ua>, relay=www@localhost
> Jul 17 16:27:26 dsg sendmail[1280]: q6HDRQTO001280: to=ykurapov@dsg.donetsk.ua, ctladdr=www
> (80/80), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30558, relay=[127.0.0.1]
> [127.0.0.1], dsn=4.0.0, stat=Deferred: Connection refused by [127.0.0.1]
>[оверквотинг удален]
> dsg# sockstat | grep sendmail
> smmsp sendmail 1233 3 dgram
> -> /var/run/log
> root sendmail 1230 3
> tcp4 192.168.1.103:25 *:*
> root sendmail 1230 4
> dgram -> /var/run/logpriv
> root sendmail 1055 4
> dgram -> /var/run/logpriv
> письмо ушло без ошибок но в ящике пусто, смотрю логи# ls -lAt /var/mail
если говорите про письмо, то : email? логи?
# ls -la /var/spool/mqueue (client...)
и что в логах mdaemon'а?
как вариант попробовать из командной строки:
# echo "1111111111" | mail -s 222 user@domain
где echo "1111111111" формирует тело письма
mail - отправляет это тело с Subject: 222
на адрес user@domainписьмо можете формировать как вам нужно:
# echo "ваш текст" | mail -s "ваш subject" нужный_вам@email
появятся логи и данные, пойдем дальше
лог сендмейла, при старте:
Jul 18 08:53:45 dsg sm-mta[4548]: gethostbyaddr(192.168.1.103) failed: 1
Jul 18 08:53:45 dsg sm-mta[4548]: gethostbyaddr(IPv6:::1) failed: 4
Jul 18 08:53:45 dsg sm-mta[4549]: starting daemon (8.14.3): SMTP+queueing@00:30:00после отправки сообщения:
Jul 18 08:55:12 dsg sendmail[4570]: q6I5tCHu004570: from=www, size=558, class=0, nrcpts=1, msgid=<201207180555.q6I5tCHu004570@dsg.donetsk.ua>, relay=www@localhost
Jul 18 08:55:12 dsg sendmail[4570]: q6I5tCHu004570: to=ykurapov@dsg.donetsk.ua, ctladdr=www (80/80), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30558, relay=[127.0.0.1] [127.0.0.1], dsn=4.0.0, stat=Deferred: Connection refused by [127.0.0.1]> # ls -lAt /var/mail
dsg# ls -lAt /var/mail
total 22320
-rw------- 1 www www 312873 Jul 18 08:46 www
-rw------- 1 root wheel 22490652 Jul 17 12:23 root
-rw------- 1 mysql mysql 0 Aug 19 2011 mysql> # ls -la /var/spool/mqueue (client...)
dsg# ls -la /var/spool/mqueue
total 4
drwxr-xr-x 2 root daemon 512 Jul 18 08:46 .
drwxr-xr-x 8 root wheel 512 Nov 21 2009 ..dsg# ls -la /var/spool/clientmqueue
total 114
drwxrwx--- 2 smmsp smmsp 1536 Jul 18 08:49 .
drwxr-xr-x 8 root wheel 512 Nov 21 2009 ..
-rw-rw---- 1 www smmsp 181 Jul 17 16:18 dfq6HDIa3K001238
-rw-rw---- 1 www smmsp 181 Jul 17 16:21 dfq6HDL8T1001250
-rw-rw---- 1 www smmsp 181 Jul 17 16:23 dfq6HDNPIL001274
-rw-rw---- 1 www smmsp 181 Jul 17 16:26 dfq6HDQwhf001278
-rw-rw---- 1 www smmsp 181 Jul 17 16:27 dfq6HDRQTO001280
-rw-rw---- 1 www smmsp 181 Jul 17 16:51 dfq6HDp08D001345
-rw-rw---- 1 www smmsp 24 Jul 17 16:55 dfq6HDtYXT001362
-rw-rw---- 1 smmsp smmsp 1943 Jul 17 20:48 dfq6HHmDMO001794
-rw-rw---- 1 smmsp smmsp 1943 Jul 17 20:48 dfq6HHmDMP001794
-rw-rw---- 1 smmsp smmsp 1943 Jul 17 20:48 dfq6HHmDMQ001794
-rw-rw---- 1 smmsp smmsp 1943 Jul 17 20:48 dfq6HHmDMR001794
-rw-rw---- 1 smmsp smmsp 1943 Jul 17 20:48 dfq6HHmDMS001794
-rw-rw---- 1 smmsp smmsp 1519 Jul 17 21:18 dfq6HIIDMO001848
-rw-rw---- 1 smmsp smmsp 1943 Jul 17 21:18 dfq6HIIDMP001848
-rw-rw---- 1 smmsp smmsp 9809 Jul 18 03:01 dfq6I01bBa003681
-rw-rw---- 1 smmsp smmsp 3609 Jul 18 03:01 dfq6I01bS8003727
-rw-rw---- 1 smmsp smmsp 5058 Jul 18 07:18 dfq6I4IDMO004183
-rw-rw---- 1 smmsp smmsp 11261 Jul 18 07:18 dfq6I4IDMP004183
-rw-rw---- 1 www smmsp 24 Jul 18 08:28 dfq6I5SaIE004318
-rw-rw---- 1 www smmsp 181 Jul 18 08:36 dfq6I5aQVG004348
-rw-rw---- 1 www smmsp 181 Jul 18 08:49 dfq6I5n58o004515
-rw-rw---- 1 smmsp smmsp 1031 Jul 18 08:48 qfq6HDIa3K001238
-rw-rw---- 1 smmsp smmsp 1031 Jul 18 08:48 qfq6HDL8T1001250
-rw-rw---- 1 smmsp smmsp 1031 Jul 18 08:48 qfq6HDNPIL001274
-rw-rw---- 1 smmsp smmsp 1031 Jul 18 08:48 qfq6HDQwhf001278
-rw-rw---- 1 smmsp smmsp 1031 Jul 18 08:48 qfq6HDRQTO001280
-rw-rw---- 1 smmsp smmsp 1031 Jul 18 08:48 qfq6HDp08D001345
-rw-rw---- 1 smmsp smmsp 715 Jul 18 08:48 qfq6HDtYXT001362
-rw-rw---- 1 smmsp smmsp 944 Jul 18 08:48 qfq6HHmDMO001794
-rw-rw---- 1 smmsp smmsp 944 Jul 18 08:48 qfq6HHmDMP001794
-rw-rw---- 1 smmsp smmsp 944 Jul 18 08:48 qfq6HHmDMQ001794
-rw-rw---- 1 smmsp smmsp 944 Jul 18 08:48 qfq6HHmDMR001794
-rw-rw---- 1 smmsp smmsp 944 Jul 18 08:48 qfq6HHmDMS001794
-rw-rw---- 1 smmsp smmsp 944 Jul 18 08:48 qfq6HIIDMO001848
-rw-rw---- 1 smmsp smmsp 944 Jul 18 08:48 qfq6HIIDMP001848
-rw-rw---- 1 smmsp smmsp 677 Jul 18 08:48 qfq6I01bBa003681
-rw-rw---- 1 smmsp smmsp 674 Jul 18 08:48 qfq6I01bS8003727
-rw-rw---- 1 smmsp smmsp 911 Jul 18 08:48 qfq6I4IDMO004183
-rw-rw---- 1 smmsp smmsp 911 Jul 18 08:48 qfq6I4IDMP004183
-rw-rw---- 1 smmsp smmsp 712 Jul 18 08:48 qfq6I5SaIE004318
-rw-rw---- 1 smmsp smmsp 1028 Jul 18 08:48 qfq6I5aQVG004348
-rw-rw---- 1 www smmsp 1012 Jul 18 08:49 qfq6I5n58o004515
-rw------- 1 smmsp smmsp 50 Jul 18 08:49 sm-client.pid
> и что в логах mdaemon'а?в логах мдаемона пусто, при том что антиспам и файрвол отключен
># echo "1111111111" | mail -s 222 user@domain
лог сендмейла
Jul 18 09:01:47 dsg sendmail[4590]: q6I61lpl004590: from=root, size=49, class=0, nrcpts=1, msgid=<201207180601.q6I61lpl004590@dsg.donetsk.ua>, relay=root@localhost
Jul 18 09:01:47 dsg sendmail[4590]: q6I61lpl004590: to=ykurapov@dsg.donetsk.ua, ctladdr=root (0/0), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30049, relay=[127.0.0.1] [127.0.0.1], dsn=4.0.0, stat=Deferred: Connection refused by [127.0.0.1]
> лог сендмейла, при старте:
> Jul 18 08:53:45 dsg sm-mta[4548]: gethostbyaddr(192.168.1.103) failed: 1
> Jul 18 08:53:45 dsg sm-mta[4548]: gethostbyaddr(IPv6:::1) failed: 4
> Jul 18 08:53:45 dsg sm-mta[4549]: starting daemon (8.14.3): SMTP+queueing@00:30:00покажите:
# cat /etc/hosts
# ls -la /etc/mail
# cat /etc/mail/local-host-namesтеперь делаем так:
- останавливаем sendmail:
# cd /etc/mail
# make stop- смотрим что у нас в файле access, если пустой, создаем и прописываем в него:
----------------------------- cut here ------------------------------
CONNECT:127.0.0.1 OK
192.168.1.103 RELAY
dsg.donetsk.ua OK
----------------------------- end of cut ----------------------------- заходим в директорию /var/mail и зануляем почту
# cd /var/mail
# rm -f *- заходим в /var/spool/clientmqueue
# cd /var/spool/clientmqueue
# rm -f *теперь стартуем sendmail и шлем пару тестовых сообщений
# echo "1111111111" | mail -s 222 ykurapov@dsg.donetsk.ua
# echo "5555555555" | mail -s 333 lavr@unix1.jinr.ruзатем показываете мне логи sendmail и содержимое:
/var/spool/clientmqueue
и
/var/mailну и можно переехать в личную почту чтобы не засорять здесь эфир: lavr@unix1.jinr.ru