URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 62219
[ Назад ]

Исходное сообщение
"объясните, плз, как поставить ssmtp вместо sendmail.Вроде просто, но.."

Отправлено wanton , 28-Ноя-05 20:07 
FreeBSD 4.11
в хандбуке прочитал send-only.html, что если только отправлять, то пойдет и ssmtp.
а мне и надо только рутовские мессаги и логи сервера пересылать на себя (типа admin@firma.ru).
Есть отдельный почтовик, на который я и хочу указать mailhub.
в доках тарбола все просто...
=====cut README============
This is sSMTP, a program that replaces sendmail on workstations that should
                            ^^^^^^^^^^^^^^^^^^^^^
send their mail via the departmental mailhub from which they pick up their
mail (via pop, imap, rsmtp, pop_fetch, NFS... or the like).  This program
accepts mail and sends it to the mailhub, optionally replacing the domain in
the From: line with a different one.
========end cut=============
далее
==========cut INSTALL===========
    make

and finally install the files:

    make install

or to install it as the main Mail Transport Agent

    make install-sendmail
^^^^^^^^^^^^^^^^^^^^^^^^^^^ кстати не работает :(
==========end INSTALL=========
ставил из портов ssmtp_2.61.orig.tar.gz
сконфигурил 2 файла ssmtp.conf и revaliases
запускаю ssmtp - типа нет получателя, пошел нафиг :(
читаю man - It accepts a mail stream on standard input with recipients specified on the command line
Выходит он только _интерактивно_ работает???
делаю так ssmtp -d2 -v root
ждет ввода -> ввожу -> все улетело...
Ничего не понял....
Далее снова читаю man и вот здесь непонятки :(
=======cut man ssmtp======
ssmtp is a send-only sendmail emulator for machines which normally pick their mail up from a centralized mailhub (via pop, imap, nfs mounts or other means). It provides the functionality required for humans and programs to send mail via the standard or /usr/bin/mail user agents.
^^^^^^^^^ что есть standart? it`s stdin?
===============end man==========
я думал\хотел в /root сделать .forward, но нет
=================cut man========
It does not do aliasing, which must be done either in the user agent or on the mailhub. Nor does it honor .forwards, which have to be done on the recieving host. It especially does not deliver to pipelines.
==========end man============

и теперь самый главный вопрос: _как_запустить_ssmtp_демоном?????
в man -bd (unsupported) Run as a daemon.

Я думал, что ssmtp сидит себе тихонько демоном и как только /usr/bin/mail посылает мессагу перехватывает и перенаправляет на mailhub

как он работает???? нигде не нарыл ничего.
Все-таки он должен демоном сидеть или прописать может что-то в env или в каких-либо файлах.Типа mail.conf.Но у меня в rc.conf sendmail="none".(по хэндвуку) т.е. sendmail`а типа нет....

"This program accepts mail and sends it to the mailhub"

как она "accepts mail" делает? как-то перехватывает же :(
Об этом нигде ни слова.Сам стартер какой ?
может ее под враппером запускать.  Или просто ключиков не хватает :(
а ключики в основном или ignore || unsupported.

"Most sendmail options are irrelevent to sSMTP. Those marked ``ignored'' or ``default'' have no effect on mail transfer. Those marked ``unsupported'' are fatal errors. Those marked ``simulated'' are not errors, but the result is for the program to exit with an informative message. A sort of fatal non-error."

помогите разобратся до конца, плз!

заранее, 10х!


Содержание

Сообщения в этом обсуждении
"объясните, плз, как поставить ssmtp вместо sendmail.Вроде пр..."
Отправлено vt , 29-Ноя-05 13:17 
>Выходит он только _интерактивно_ работает???
>делаю так ssmtp -d2 -v root
>ждет ввода -> ввожу -> все улетело...
>Ничего не понял....
cat file | ssmtp -d2 -v root

>и теперь самый главный вопрос: _как_запустить_ssmtp_демоном?????
>в man -bd (unsupported) Run as a daemon.
>Я думал, что ssmtp сидит себе тихонько демоном и как только /usr/bin/mail
>посылает мессагу перехватывает и перенаправляет на mailhub
>как он работает???? нигде не нарыл ничего.
send only - значит:
берет адрес получателя из параметров команды,
содержимое письма - из stdin,
smtp-сервер (mailhub) из ssmtp.conf
и делает connect непосредственно к smtp-серверу.
Демоном ssmtp быть не может "по определению".

>"This program accepts mail and sends it to the mailhub"
>как она "accepts mail" делает?
Имеется в виду stdin


"объясните, плз, как поставить ssmtp вместо sendmail.Вроде пр..."
Отправлено wanton , 29-Ноя-05 13:38 
>cat file | ssmtp -d2 -v root

И что по крону руту так будет передаваться информация???

>send only - значит:
>берет адрес получателя из параметров команды,
>содержимое письма - из stdin,
>smtp-сервер (mailhub) из ssmtp.conf
>и делает connect непосредственно к smtp-серверу.
>Демоном ssmtp быть не может "по определению".

Разобрался.Может.Только не так.
надо править /etc/mail/mailrc.conf НА предмет
sendmail        /usr/local/sbin/ssmtp
etc
Об этом _НИГДЕ_ в мануалах не написано.
Возможно, я не знаю _как_ работает |USR/BIN/mail
ВОТ таким образом "перехватывается" (aka accepts mai)
Я думал, что эта дира предназначена токмо для сендмэйла :(

>Имеется в виду stdin

После mailer.conf все становится на свои места...



"объясните, плз, как поставить ssmtp вместо sendmail.Вроде пр..."
Отправлено vt , 29-Ноя-05 14:11 
>Разобрался.Может.Только не так.
>надо править /etc/mail/mailrc.conf НА предмет
>sendmail        /usr/local/sbin/ssmtp

Это значит, что "cat file | mail root"
будет теперь то же самое, что и "cat file | ssmtp root"

Для cron-а, возможно, больше нужно
ln -s /usr/local/sbin/ssmtp /usr/sbin/sendmail


"объясните, плз, как поставить ssmtp вместо sendmail.Вроде пр..."
Отправлено wanton , 29-Ноя-05 20:36 
>>Разобрался.Может.Только не так.
>>надо править /etc/mail/mailrc.conf НА предмет
>>sendmail        /usr/local/sbin/ssmtp
>
>Это значит, что "cat file | mail root"
>будет теперь то же самое, что и "cat file | ssmtp root"

конечно , но это стало только после ee /etc/mail/maler.conf :)
sendmail        /usr/local/sbin/ssmtp
это и есть "accepts" (типа редиректа)кот. нигде не был описан (в том числе и Вами ;))

>Для cron-а, возможно, больше нужно
>ln -s /usr/local/sbin/ssmtp /usr/sbin/sendmail

да и так уже все работает без всяких симлинков :)

всем спасибо!