Sendmail

EXIM, sendmail, postfix, Dovecot и прочие. Решение проблем связанных с работой электронной почты

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Sendmail

Непрочитанное сообщение dikens3 » 2007-03-14 16:48:47

Поставил на новый сервак monit, он шлёт уведомления через почтовый сервак(sendmail).
Реально обламывает разбираться в sendmail, а ставить exim, postfix и.т.п. нет необходимости.

Собственно пошагово нужно что и где убрать? (Очевидно sendmail проверяет отправителя)

Код: Выделить всё

Mar 14 16:43:10 server sm-mta[71211]: l2EDhAqW071211: localhost.mydomain.ru [127.0.0.1] did not issue MAIL/EXPN/VRFY/ETRN during connection to Daemon0

Код: Выделить всё

Mar 14 16:43:10 server monit[71125]: Sendmail: error receiving data from the mailserver '127.0.0.1' -- Resource temporarily unavailable
Mar 14 16:43:10 server monit[71125]: Alert handler failed, retry scheduled for next cycle
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2460 рублей (8 CPU, 8Gb RAM, 2x500Gb HDD, RAID 3ware 9750):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35045
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Непрочитанное сообщение Alex Keda » 2007-03-14 22:50:44

в /etc/aliasв добавь такого, вернее альяс с него на кого-то реального. На рута анпример.
ну и newaliases
Убей их всех! Бог потом рассортирует...

Аватара пользователя
alex3
лейтенант
Сообщения: 872
Зарегистрирован: 2006-11-20 16:47:56
Откуда: Переславль
Контактная информация:

Непрочитанное сообщение alex3 » 2007-03-15 9:30:55

я попробовал по хедбуку ssmtp - работает :)
Если ipfw можно считать речью обычного человека, то pf - речь политика. За каждой ошибкой -ядерный песец.

Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Непрочитанное сообщение dikens3 » 2007-03-15 12:58:07

lissyara писал(а):в /etc/aliasв добавь такого, вернее альяс с него на кого-то реального. На рута анпример.
ну и newaliases
Это я сделал, толку то. Всё там реально. Говорю же, судя по сообщениям Sendmail что-то не понравилось. Не пойму что.
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.

Аватара пользователя
abanamat
сержант
Сообщения: 255
Зарегистрирован: 2007-03-15 11:24:26
Откуда: Питер
Контактная информация:

Непрочитанное сообщение abanamat » 2007-03-15 13:08:56

ну а там hosts всякие проверить?
плюс в rc.conf sendmail_enable="YES" чтоб было.

я еще в sendmail.sf свой релэй ффтыкаю, хотя это в данной ситуации лишнее
# "Smart" relay host (may be null)
DS mail.mydomain.ru

в access пропиши
127.0.0.1 RELAY
* REJECT
потом сделать makemap hash /etc/mail/access.db < access

еще в virtusertable можно вписать что-то вроде
*собакаcomputer.gad.ru iamсобакаmail.ru
потом сделать makemap hash /etc/mail/virtusertable.db < virtusertable

от..

Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Непрочитанное сообщение dikens3 » 2007-03-15 14:12:48

Не помогло :-)

Обычным путём всё работает.
Relay мне не нужен, monit установлен на этом же компе - отправитель и получатель реальные.

# echo "test" | mail -s "SUBJECT" pochta@server.mgk.nnov.ru

Код: Выделить всё

From dik@server.mgk.nnov.ru Thu Mar 15 14:09:18 2007
Return-Path: <dik@server.mgk.nnov.ru>
Received: from server.mgk.nnov.ru (localhost.mgk.nnov.ru [127.0.0.1])
        by server.mgk.nnov.ru (8.13.8/8.13.8) with ESMTP id l2FB9IpE075972
        for <pochta@server.mgk.nnov.ru>; Thu, 15 Mar 2007 14:09:18 +0300 (MSK)
        (envelope-from dik@server.mgk.nnov.ru)
Received: (from root@localhost)
        by server.mgk.nnov.ru (8.13.8/8.13.8/Submit) id l2FB9DaC075971
        for pochta@server.mgk.nnov.ru; Thu, 15 Mar 2007 14:09:13 +0300 (MSK)
        (envelope-from dik)
Date: Thu, 15 Mar 2007 14:09:13 +0300 (MSK)
From: User Dik <dik@server.mgk.nnov.ru>
Message-Id: <200703151109.l2FB9DaC075971@server.mgk.nnov.ru>
To: pochta@server.mgk.nnov.ru
Subject: SUBJECT

test
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.

mod
мл. сержант
Сообщения: 85
Зарегистрирован: 2007-10-08 12:57:05

Re: Sendmail

Непрочитанное сообщение mod » 2007-11-27 20:09:18

поставил monit
sendmail не отправляет письма...
решил поставить ssmtp только на отправку..создал конфиг...в
/etc/mail/mailer.conf
указал

Код: Выделить всё

sendmail        /usr/local/sbin/ssmtp -au **** -ap ****
send-mail       /usr/local/sbin/ssmtp -au **** -ap ****
mailq           /usr/local/sbin/ssmtp 
newaliases      /usr/local/sbin/ssmtp 
командой

Код: Выделить всё

 echo "test" | mail -s "SUBJECT" ***"**.ru
отправляет письма...а monit не хочет в логах

Код: Выделить всё

Nov 27 22:30:15 vinet sSMTP[20432]: Authorization failed (535 5.7.0 Error: authentication failed: authentication failure)
где ещё забыл что прописать?
конфиг монит

Код: Выделить всё

vinet# cat /usr/local/etc/monitrc
###############################################################################
## Monit control file
###############################################################################
##
## Comments begin with a '#' and extend through the end of the line. Keywords
## are case insensitive. All path's MUST BE FULLY QUALIFIED, starting with '/'.
##
## Bellow is the example of some frequently used statements. For information
## about the control file, a complete list of statements and options please
## have a look in the monit manual.
##
##
###############################################################################
## Global section
###############################################################################
##
## Start monit in background (run as daemon) and check the services at 2-minute
## intervals.
#
 set daemon  120
#
#
## Set syslog logging with the 'daemon' facility. If the FACILITY option is
## omited, monit will use 'user' facility by default. You can specify the
## path to the file for monit native logging.
#
 set logfile syslog facility log_daemon
#
#
## Set list of mailservers for alert delivery. Multiple servers may be
## specified using comma separator. By default monit uses port 25 - it is
## possible to override it with the PORT option.
#
 set mailserver localhost,               # primary mailserver
#                backup.bar.baz port 10025,  # backup mailserver on port 10025
#                localhost                   # fallback relay
#
#
## By default monit will drop the event alert, in the case that there is no
## mailserver available. In the case that you want to keep the events for
## later delivery retry, you can use the EVENTQUEUE statement. The base
## directory where undelivered events will be stored is specified by the
## BASEDIR option. You can limit the maximal queue size using the SLOTS
## option (if omited then the queue is limited just by the backend filesystem).
#
 set eventqueue
     basedir /var/log/monit  # set the base directory where events will be stored
     slots 100           # optionaly limit the queue size
#
#
## Monit by default uses the following alert mail format:
##
## --8<--
## From: monit@$HOST                         # sender
## Subject: monit alert --  $EVENT $SERVICE  # subject
##
## $EVENT Service $SERVICE                   #
##                                           #
##      Date:        $DATE                   #
##      Action:      $ACTION                 #
##      Host:        $HOST                   # body
##      Description: $DESCRIPTION            #
##                                           #
## Your faithful employee,                   #
## monit                                     #
## --8<--
##
## You can override the alert message format or its parts such as subject
## or sender using the MAIL-FORMAT statement. Macros such as $DATE, etc.
## are expanded on runtime. For example to override the sender:
#
 set mail-format { from: ****@*** }
#
#
## You can set the alert recipients here, which will receive the alert for
## each service. The event alerts may be restricted using the list.
#
 set alert ******@******                       # receive all alerts
# set alert manager@foo.bar only on { timeout }  # receive just service-
#                                                # timeout alert
#
#
## Monit has an embedded webserver, which can be used to view the
## configuration, actual services parameters or manage the services using the
## web interface.
#
# set httpd port 2812 and
#     use address localhost  # only accept connection from localhost
#     allow localhost        # allow localhost to connect to the server and
#     allow admin:monit      # require user 'admin' with password 'monit'
#
#
###############################################################################
## Services
###############################################################################
##
## Check the general system resources such as load average, cpu and memory
## usage. Each rule specifies the tested resource, the limit and the action
## which will be performed in the case that the test failed.
#
#  check system myhost.mydomain.tld
#    if loadavg (1min) > 4 then alert
#    if loadavg (5min) > 2 then alert
#    if memory usage > 75% then alert
#    if cpu usage (user) > 70% then alert
#    if cpu usage (system) > 30% then alert
#    if cpu usage (wait) > 20% then alert
#
#
## Check a file for existence, checksum, permissions, uid and gid. In addition
## to the recipients in the global section, customized alert will be send to
## the additional recipient. The service may be grouped using the GROUP option.
#
#  check file apache_bin with path /usr/local/apache/bin/httpd
#    if failed checksum and
#       expect the sum 8f7f419955cefa0b33a2ba316cba3659 then unmonitor
#    if failed permission 755 then unmonitor
#    if failed uid root then unmonitor
#    if failed gid root then unmonitor
#    alert security@foo.bar on {
#           checksum, permission, uid, gid, unmonitor
#        } with the mail-format { subject: Alarm! }
#    group server
#
#
## Check that a process is running, responding on the HTTP and HTTPS request,
## check its resource usage such as cpu and memory, number of childrens.
## In the case that the process is not running, monit will restart it by
## default. In the case that the service was restarted very often and the
## problem remains, it is possible to disable the monitoring using the
## TIMEOUT statement. The service depends on another service (apache_bin) which
## is defined in the monit control file as well.
#
check process apache with pidfile /var/run/httpd.pid
    start program = "/usr/local/sbin/apachectl start"
    stop program  = "/usr/local/sbin/apachectl stop"
   if cpu > 60% for 2 cycles then alert
    if cpu > 80% for 5 cycles then restart
    if totalmem > 200.0 MB for 5 cycles then restart
    if children > 250 then restart
#    if loadavg(5min) greater than 10 for 8 cycles then stop
#    if failed host www.tildeslash.com port 80 protocol http
#       and request "/monit/doc/next.php"
#       then restart
#    if failed port 443 type tcpssl protocol http
#       with timeout 15 seconds
#       then restart
    if 3 restarts within 5 cycles then timeout
#    depends on apache_bin
#    group server
#
#
## Check the device permissions, uid, gid, space and inode usage. Other
## services such as databases may depend on this resource and automatical
## graceful stop may be cascaded to them before the filesystem will become
## full and the data will be lost.
#
#  check device datafs with path /dev/sdb1
#    start program  = "/bin/mount /data"
#    stop program  = "/bin/umount /data"
#    if failed permission 660 then unmonitor
#    if failed uid root then unmonitor
#    if failed gid disk then unmonitor
#    if space usage > 80% for 5 times within 15 cycles then alert
#    if space usage > 99% then stop
#    if inode usage > 30000 then alert
#    if inode usage > 99% then stop
#    group server
#
#
## Check a file's timestamp: when it becomes older then 15 minutes, the
## file is not updated and something is wrong. In the case that the size
## of the file exceeded given limit, perform the script.
#
#  check file database with path /data/mydatabase.db
#    if failed permission 700 then alert
#    if failed uid data then alert
#    if failed gid data then alert
#    if timestamp > 15 minutes then alert
#    if size > 100 MB then exec "/my/cleanup/script"
#
#
check process calmav with pidfile /var/run/clamav/clamd.pid
    start program = "/usr/local/etc/rc.d/clamav-clamd.sh start"
    stop program  = "/usr/local/etc/rc.d/clamav-clamd.sh stop"
#    if cpu > 60% for 2 cycles then alert
#    if cpu > 80% for 5 cycles then restart
    if totalmem > 100.0 MB for 5 cycles then restart
    if children > 100 then restart
    if failed unixsocket /var/run/clamav/clamd then restart
    if 5 restarts within 5 cycles then timeout

## Check the directory permission, uid and gid.  An event is triggered
## if the directory does not belong to the user with the  uid 0 and
## the gid 0.  In the addition the permissions have to match the octal
## description of 755 (see chmod(1)).
#
#  check directory bin with path /bin
#    if failed permission 755 then unmonitor
#    if failed uid 0 then unmonitor
#    if failed gid 0 then unmonitor
#
#
## Check the remote host network services availability and the response
## content.  One of three pings, a successfull connection to a port and
## application level network check is performed.
#
#  check host myserver with address 192.168.1.1
#    if failed icmp type echo count 3 with timeout 3 seconds then alert
#    if failed port 3306 protocol mysql with timeout 15 seconds then alert
#    if failed url
#       http://user:password@www.foo.bar:8080/?querystring
#       and content == 'action="j_security_check"'
#       then alert
#
#
###############################################################################
## Includes
###############################################################################
##
## It is possible to include the configuration or its parts from other files or
## directories.
#
#  include /etc/monit.d/*
#
#