Re: postfix + gmail
Serja -> debian-russian@lists.debian.org @ Sat, 24 Sep 2005 06:53:42 +0200:
>> Во-вторых, поскольку ты так и не
>> ответил на основной вопрос - как именно ты хочешь отправлять почту, -
S> Извиняюсь, отвлекся. Первоначально было желание отправлять почту таким
S> образом, чтобы допустим письма с адреса @gmail.com шли через smtp.gmail.com и
S> т.д.
Можно, и я попробую помочь, но смысл? Это усложняет конструкцию, и в
общем, не приносит пользы. Ну, разве что у тебя есть корреспонденты за
серверами, упорно желающими следовать SPF (насколько я знаю, даже
толстый дядя Микрософт не решается разворачивать письма без SPF) либо ты
упорно хочешь релеить, а не отправлять самостоятельно, но все сервера,
которые соглашаются тебя релеить, непременно хотят своего сендера.
Вообще что-то по прочтении документации складывается ощущение, что номер
штатными настройками вообще не проходит. Единственное, что принимает
решения о транспорте - transport_maps, а оно смотрит только на
получателя. generic смотрит на отправителя, но не умеет определять
транспорт, оно только переписывает адрес. И отсутствует в том поцфиксе,
который в stable, что, впрочем, в данном случае неважно. Построить
конструкцию, отправляющую через разные релеи в зависимости от адреса
отправителя, можно, но это будет ТАКОЙ наворот... Грубо говоря,
повесить еще три поцфикса со своими очередями, и своим скриптом,
используемым в качестве дефолтного транспорта у основного, разруливать
на основании адреса отправителя на один из трех.
S> У меня три e-mail адреса: для одного на сервере вообще отсутствует
S> авторизация (его я настроил без проблем просто указав этот smtp
S> сервер в relayhost), второй использует простую авторизацию
S> (mail.ru), ну и gmail, которому нужен tls. Однако, при таком
S> подходе, помимо проблем с настройкой tls, также возник и вопрос как
S> обьяснить postfix-у какой именно способ транспортировки необходимо
S> использовать в данном случае, где нужна авторизация и какая
S> именно. Подозреваю, что это делается в generic или в transport, но
S> не уверен.
Для этого надо _разрешить_ постфиксу TLS, а не _принуждать_ его.
Т.е. не smtp_enforce_tls, а только smtp_use_tls. Помимо паролей надо
указать еще, где брать сертификат CA, которым подписан сертификат
сервера (smtp_tls_CAfile или smtp_tls_CApath), а то он может не
согласиться на соединение, не сумев проверить сертификат. А если
согласится - так это еще хуже... Есть еще карта smtp_tls_per_site, в
ней можно сказать, что с gmail TLS обязательно, а с остальными - нет.
Еще одна любимая грабля. Пути к файлам используются разными
программами. Когда демоны запускаются в чруте (а в дебиане поцфикс
живет именно так), они считаются относительно этого чрута (в данном
случае - /var/spool/postfix). Конфигурации собственно libsasl это тоже
касается, поскольку библиотека поднимается уже зачрученным (экое слово
получилось...) процессом. Что добавляет веселья.
Ну и настройки TLS для smtpd к этой задаче вообще никакого отношения не
имеют. Впрочем, это я уже говорил.
S> ------- Original message -------
S> From: Artem Chuprina <ran@ran.pp.ru>
S> To: debian-russian@lists.debian.org
S> Subject: Re: postfix + gmail
S> Date: Friday 23 September 2005 22:03
>> Serja -> debian-russian@lists.debian.org @ Fri, 23 Sep 2005 19:14:21
>> +0200:
>>
>> S> Приведенные в предыдущем письме логи были созданы при не
>> S> закомментированных строчках, следующих после "## Gmail settings". В
>> S> настоящий момент конфигурация выглядет именно так, как я её
>> S> представил ниже. Отправка сейчас осуществляется, как я понимаю,
>> S> минуя SMTP серверы, но, по видимому, всё работает. Однако не уверен,
>> S> что это наилучший способ. В файле transport у меня была всего одна
>> S> строка: "localhost relay:[localhost]", в generic, соответственно
>> S> указаны адреса, например: "seorge@gmail.com seorge@gmail.com"
>>
>> Ну, во-первых, не минуя SMTP серверы, а как раз наоборот, используя их
>> по прямому назначению и по классике. Во-вторых, поскольку ты так и не
>> ответил на основной вопрос - как именно ты хочешь отправлять почту, -
>> ничего умнее чем "работает - не трогай" я тебе сказать не могу. Я тебе
>> могу перевести на русский то, что после вышеупомянутого комментария
>> (подозреваю, что это несколько не то, что ты имел в виду), но телепать,
>> что именно ты имел в виду, не буду.
>>
>> S> masil.cf:
>> S> ***
>> S> # See /usr/share/postfix/main.cf.dist for a commented, more complete
>> version
>>
>> S> smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
>> S> biff = no
>>
>> S> # appending .domain is the MUA's job.
>> S> append_dot_mydomain = no
>>
>> S> # Uncomment the next line to generate "delayed mail" warnings
>> S> #delay_warning_time = 4h
>>
>> S> myhostname = localhost
>> S> alias_maps = hash:/etc/aliases
>> S> alias_database = hash:/etc/aliases
>> S> myorigin = /etc/mailname
>> S> mydestination = localhost
>> S> relayhost =
>> S> mynetworks = 127.0.0.0/8
>> S> mailbox_command = procmail -a "$EXTENSION"
>> S> mailbox_size_limit = 0
>> S> recipient_delimiter =
>> S> inet_interfaces = loopback-only
>> S> #####
>> S> smtp_generic_maps = hash:/etc/postfix/generic
>> S> #transport_maps = hash:/etc/postfix/transport
>> S> #####
>> S> #
>> S> ## Gmail settings
>> S> #
>> S> # For no logs set = 0
>> S> #smtp_tls_loglevel = 1
>> S> #smtp_enforce_tls = yes
>> S> #smtp_tls_session_cache_database =
>> btree:/var/run/smtp_tls_session_cache S> #smtp_use_tls = yes
>> S> #smtpd_tls_received_header = yes
>> S> #smtpd_tls_session_cache_database =
>> btree:/var/run/smtpd_tls_session_cache S> #smtpd_use_tls = yes
>> S> #tls_random_source = dev:/dev/urandom
>> S> #smtpd_sasl_auth_enable = no
>> S> #smtp_sasl_auth_enable = yes
>> S> #smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
>> S> #smtpd_sasl_local_domain = $myhostname
>> S> #smtp_sasl_security_options = noanonymous
>> S> #smtp_sasl_tls_security_options = noanonymous
>> S> #smtpd_sasl_application_name = smtpd
>>
>>
>> S> ------- Original message -------
>> S> From: Artem Chuprina <ran@ran.pp.ru>
>> S> To: debian-russian@lists.debian.org
>> S> Subject: Re: postfix + gmail
>> S> Date: Friday 23 September 2005 18:29
>>
>> >> Serja -> debian-russian@lists.debian.org @ Fri, 23 Sep 2005 13:15:49
>> >> +0200:
>> >>
>> >> S> При отправке писем с использованием gmail письма никуда не уходят,
>> >> а в логах S> появляется следующее:
>> >> S> Sep 23 13:09:57 localhost postfix/pickup[5198]: E67E9107866:
>> >> uid=1000 S> from=<seorge@gmail.com>
>> >> S> Sep 23 13:09:57 localhost postfix/cleanup[5207]: E67E9107866:
>> >> S> message-id=<200509231309.57796.seorge@gmail.com>
>> >> S> Sep 23 13:09:57 localhost postfix/qmgr[5199]: E67E9107866:
>> >> S> from=<seorge@gmail.com>, size=499, nrcpt=1 (queue active)
>> >> S> Sep 23 13:10:01 localhost postfix/smtp[5210]: E67E9107866:
>> >> S> to=<mekoc@inbox.ru>, relay=mxs.mail.ru[194.67.23.20], delay=4,
>> >> S> status=deferred (Could not start TLS: not offered)
>> >> S> ***
>> >> S> В master.cf разкомментил следующие строки:
>> >> S> tlsmgr fifo - - n 300 1 tlsmgr
>> >> S> smtps inet n - n - - smtpd -o smtpd_tls_wrappermode=yes -o
>> >> S> smtpd_sasl_auth_enable=yes
>> >> S> 587 inet n - n - - smtpd -o smtpd_enforce_tls=yes -o
>> >> S> smtpd_sasl_auth_enable=yes
>> >> S> ***
>> >> S> При использовании почтовых серверов, не требующих авторизацию, всё
>> >> работает, а S> с gmail не хочет.
>> >> S> Помогите кто чем может. Заранее благодарен.
>> >>
>> >> Судя по тому, что я вижу, ты не "отправляешь письма с использованием
>> >> gmail", а отправляешь письмо с адресом отправителя @gmail.com через
>> >> сервер mail.ru. При этом ты, видимо, принуждаешь свой postfix
>> >> пользоваться TLS, а mail.ru ему его не предоставляет. Ты все-таки
>> >> расскажи, как именно ты хочешь отправлять эту почту. Тогда можно будет
>> >> сказать что-то более определенное. И наверное, сразу показывай
>> >> main.cf.
>> >>
>> >> Строчки же, которые ты раскомментировал, исключая первую, относятся к
>> >> smtpd, то есть к приему почты _тобой_. К отправке они отношения не
>> >> имеют.
>> >>
>> >> --
>> >> Artem Chuprina
>> >> RFC2822: <ran{}ran.pp.ru> Jabber: ran@jabber.ran.pp.ru
>> >>
>> >> ... и углупился в свои мысли
>> >> Кнышев
>>
>> S> --
>> S> Who the hell are you, and why are you playing with my kernel?
>>
>> --
>> Artem Chuprina
>> RFC2822: <ran{}ran.pp.ru> Jabber: ran@jabber.ran.pp.ru
>>
>> Не сломалось - не чини.
S> --
S> Who the hell are you, and why are you playing with my kernel?
--
Artem Chuprina
RFC2822: <ran{}ran.pp.ru> Jabber: ran@jabber.ran.pp.ru
Все гениальное просто.
Но со вкусом.
Кнышев.
Reply to: