[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: