В общем, есть сервер, на нем стоит линукс (RH 7.3), имеется доменное имя второго уровня (назовем его site.ru) и алиас для мыла (mail.site.ru). Для доставки почти используется postfix. Настроил я его так, как в мануалах говорится - а что дальше? Принимается только локальная почта, т.е. - я могу отослать на него почту только на локальных юзверей, т.е., к примеру - на admin@site.ru, а когда пытаюсь послать куда-нибудь типа vasya_pupkin@mail.ru - SMTP меня посылает далеко и надолго, в логе это так отражается (IP, название сайта и мыло на хотбоксе я по понятным причнам не стал показывать :-)):
Jan 25 15:50:09 site postfix/smtpd[16401]: connect from unknown[*.*.*.*]
Jan 25 15:50:09 site postfix/smtpd[16401]: 63DEE1FC149: client=unknown[*.*.*.*]
Jan 25 15:50:09 site postfix/smtpd[16401]: reject: RCPT from unknown[*.*.*.*]: 554 <email@hotbox.ru>: Recipient address reject
ed: Relay access denied; from=<admin@site.ru> to=<email@hotbox.ru>
Jan 25 15:50:14 site postfix/smtpd[16401]: disconnect from unknown[*.*.*.]Когда пытаюсь написать и отправить письмо на тот же адрес (email@hotbox.ru) локально с сервака - в логе примерно следующая хренотень:
Jan 25 16:11:45 site postfix/nqmgr[17026]: E57131FC147: from=<admin@site.ru>, size=573, nrcpt=1 (queue active)
Jan 25 16:11:53 site postfix/smtp[17277]: connect to relay3.mailru.com[80.68.244.39]: No route to host (port 25)
Jan 25 16:11:56 site postfix/smtp[17277]: connect to relay2.mailru.com[80.68.244.3]: No route to host (port 25)
Jan 25 16:11:59 site postfix/smtp[17277]: connect to relay4.mailru.com[80.68.244.41]: No route to host (port 25)
Jan 25 16:11:59 site postfix/smtp[17277]: E57131FC147: to=<email@hotbox.ru>, relay=none, delay=1963, status=deferred (connect to relay4.mailru.com[80.68.244.41]: No route to host)Куда копать? Явно, что надо как-то настраивать переадресацию в первом случае и роутинг - во втором, но как это настроить - я не знаю, хелпы мне несильно помогли (или я просто в них не врубился :-)). Не поможет ли всемогущий All конкретным советом, или не кинет ли хорошей подробной докой?
> Не поможет ли всемогущий All конкретным советом, или не
>кинет ли хорошей подробной докой?
Хорошей доки по этому делу нет, зато есть много секса... :) В первом случае у тебя глючат права на релей (самая противная штука - не так настроишь и через тебя прокачают много спама) - кури http://www.mengwong.com/misc/postfix-uce-guide.txt, во втором - проверь, а установлен ли на сервере default gateway и идут ли пинги на эти адреса.
Большое спасибо за совет. :-)>> Не поможет ли всемогущий All конкретным советом, или не
>>кинет ли хорошей подробной докой?
>
>Хорошей доки по этому делу нет, зато есть много секса... :) В
>первом случае у тебя глючат права на релей (самая противная штука
>- не так настроишь и через тебя прокачают много спама) -
>кури http://www.mengwong.com/misc/postfix-uce-guide.txt,Уже курю, веб-интерфейс пока прикрутил - с него, почему-то, работает нормально. :-) ЗАвтра надо будет наконец-то POP3 прикрутить (или таки лучше IMAP? А то мне (а тем более начальству), в общем-то, без разницы, но интересно :-)).
>во втором - проверь, а установлен ли на сервере
>default gateway и идут ли пинги на эти адреса.Причина, на самом деле, была настолько банальна, что, как говорится, слона-то я и не приметил. :-) Я же забыл, что в этот день вели профилактические работы в сети, в которой был сервак, а наша локалка с оптоволокном была к с серваком подключена к одной и то же сети, поэтому мы наш сервак видели, а сам сервак - никто не видел и он сам только DNS-ку видел. Сегодня проверил - попробовал от него несколько мессаг отослать и принять - усе работает отлично. :-)
>ЗАвтра надо будет наконец-то POP3 прикрутить (или таки лучше IMAP? А
>то мне (а тем более начальству), в общем-то, без разницы, но
>интересно :-)).А по большому счету пофиг. Лучше - и то, и то. Потому как кому-то обязательно не будет хватать IMAP-ских папок, а кому-то и POP3 много... :)
>Причина, на самом деле, была настолько банальна, что, как говорится, слона-то я и не приметил. :-)
За что я и ненавижу работу сисадсина... :)
>>ЗАвтра надо будет наконец-то POP3 прикрутить (или таки лучше IMAP? А
>>то мне (а тем более начальству), в общем-то, без разницы, но
>>интересно :-)).
>
>А по большому счету пофиг. Лучше - и то, и то. Потому
>как кому-то обязательно не будет хватать IMAP-ских папок, а кому-то и
>POP3 много... :)
Млин... Не хочу показаться тупым, но я так и не смог настроить релей... Доков мало, но даже по тем, что есть - следую всем инструкциям, а все равно не работает. :-( Пытался прикрутить Cyrus-SASL и вместе с ним сервак Cyrus POP3+IMAP. Только нифига не получилось... Начальство уже очень нехорошо на меня посматривать начинает, что я до сих пор почту не настроил...
>Начальство уже очень нехорошо на меня посматривать начинает, что я до
>сих пор почту не настроил...
Неважно как долго ты будешь рашать проблему, важно грамотно запарить начальство! (к сожалению советом помочь не могу, юзаю Squid)
>Млин... Не хочу показаться тупым, но я так и не смог настроить
>релей... Доков мало, но даже по тем, что есть - следую
>всем инструкциям, а все равно не работает. :-( Пытался прикрутить Cyrus-SASL
>и вместе с ним сервак Cyrus POP3+IMAP. Только нифига не получилось...
>Начальство уже очень нехорошо на меня посматривать начинает, что я до
>сих пор почту не настроил...
по поводу релея...для начала посмотри main.cf
>Млин... Не хочу показаться тупым, но я так и не смог настроить
>релей... Доков мало, но даже по тем, что есть - следую
>всем инструкциям, а все равно не работает. :-( Пытался прикрутить Cyrus-SASL
>и вместе с ним сервак Cyrus POP3+IMAP. Только нифига не получилось...Это тот еще секс. Впрочем, если с первого раза заработает - тоже неправильно...
>Начальство уже очень нехорошо на меня посматривать начинает, что я до
>сих пор почту не настроил...:) Ну и что? Сами они почту настраивать не будут...
выложил бы ты свой main.cf (только комментарии пообрезай!)
Для Cyrus-SASL надо хитрым образом компилить исходники, там по умолчанию авторизация не включена. Или ты не авторизацию, а IMAP прикручиваешь? (тогда извини)
mynetworks - выставлен?
Насколько я знаю в общем случае достаточноmynetworks = 127.0.0.0/24 192.168.0.0/24 - адреса сетей с которых мона слать почту через твой postfix
mydestination = $mydomain - домен на который могут слать все кто не попадает под mynetworks
>>Млин... Не хочу показаться тупым, но я так и не смог настроить
>>релей... Доков мало, но даже по тем, что есть - следую
>>всем инструкциям, а все равно не работает. :-( Пытался прикрутить Cyrus-SASL
>>и вместе с ним сервак Cyrus POP3+IMAP. Только нифига не получилось...
>
>Это тот еще секс. Впрочем, если с первого раза заработает - тоже
>неправильно...
>
>>Начальство уже очень нехорошо на меня посматривать начинает, что я до
>>сих пор почту не настроил...
>
>:) Ну и что? Сами они почту настраивать не будут...
Примерно так должно быть:mydomain = domain.xx - твой домен
myhostname = host.domain.xx - твой сервер
myorigin = $mydomain - что добавлять, если адрес отправителя указан без домена
append_at_myorigin = yes - здесь говорим, что добавлять myorigin надо (или нет)
inet_interfaces = $myhostname - откуда принимается почта
mydestination = $myhostname, $mydomain - какие домены обслуживаются на данной машине (дальше почта никуда не пересылается)
mynetworks = x.x.x.x/yy ... - доверенные сети
mynetworks_style = host - игнорируется при определенном mynetworks, но
лучше прописать (если затрешь mynetworks сервер будет "доверять" только себе - почта не пойдет, но и открытый релей не получишь)relay_domains = $mydestination - для кого открыт релей
alias_maps = xxx - файл алиасов
local_recipient_maps = $alias_maps unix:passwd.byname - ищем локальных пользователей в файле алиасов и в системном файле паролей (выбирается по вкусу)
вроде ничего не напутал (остальное можно по умолчанию) - будет релеется почта для твоего домена, его поддоменов и доверенных сетей, приниматься - для них же.
PS вместо Cyrus поставь courier-imap (pop3 в нем тоже есть) - гораздо проще и ничуть не хуже.
Configuration File Main.cf - /etc/postfix/main.cfqueue_directory = /var/spool/postfix
command_directory = /usr/sbin
daemon_directory = /usr/libexec/postfix
mail_owner = postfix
myhostname = mail.server.com *** Change this to your mail server DNS Name ***
mydomain = server.com *** Change this to your domain name ***
myorigin = $mydomain
inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain, $mydomain,
mail.$mydomain, www.$mydomain, ftp.$mydomain
mynetworks_style = subnet
mynetworks = 192.168.0.0/24, 127.0.0.0/8 *** Change this to your Network IP -- Do not Change the 127.0.0.0/8 ***
relayhost = [ smtp.isp.com ] *** Change this to your ISP's smtp server ***
allow_percent_hack = yes
append_at_myorigin = yes
append_dot_mydomain = yes
empty_address_recipient = MAILER-DAEMON
masquerade_classes = envelope_sender, header_sender, header_recipient
masquerade_domains = server.com *** Change this to your domain name ***
masquerade_exceptions =
swap_bangpath = yes
transport_maps = hash:/etc/postfix/transport
alias_maps = hash:/etc/postfix/aliases
alias_database = hash:/etc/postfix/aliases
home_mailbox = Maildir/
mail_spool_directory = /var/mail
mailbox_command = /usr/bin/procmail -d "$USER"
smtpd_banner = $myhostname ESMTP $mail_name ($mail_version)
debug_peer_level = 2
debugger_command =
PATH=/usr/bin:/usr/X11R6/bin
xxgdb $daemon_directory/$process_name $process_id & sleep 5
sendmail_path = /usr/sbin/sendmail
newaliases_path = /usr/bin/newaliases
mailq_path = /usr/bin/mailq
setgid_group = postdrop
manpage_directory = /usr/share/man
sample_directory = /etc/postfix/sample
readme_directory = no
content_filter = smtp:127.0.0.1:10024
maps_rbl_reject_code = 571
maps_rbl_domains = dynablock.wirehub.net, blackholes.wirehub.net, relays.ordb.org
smtpd_sender_restrictions = hash:/etc/postfix/access, reject_maps_rbl
что-то вроде
да, и еще. Если нужен мануал по прикручиванию Courier-Imap (POP3,IMAP) - пишите сюда,выложу.
>да, и еще. Если нужен мануал по прикручиванию Courier-Imap (POP3,IMAP) - пишите
>сюда,выложу.Выложи, буду крайне признателен :-)
Кстати, вот мой конфиг, че-то подправил - и при отправке почты мейл-клиент уходит в дооолгий затуп, пытаясь отправить почту, но все равно не отправляет :-(#soft_bounce = no
queue_directory = /var/spool/postfix
command_directory = /usr/sbin
daemon_directory = /usr/libexec/postfix
mail_owner = postfix
#default_privs = nobody
myhostname = mail.site.ru
#myhostname = virtual.domain.name
mydomain = site.ru
#myorigin = $myhostname
myorigin = $mydomain
#inet_interfaces = localhost
inet_interfaces = all
#inet_interfaces = $myhostname
#inet_interfaces = $myhostname, localhost
#mydestination = $myhostname, localhost.$mydomain
#mydestination = $myhostname, localhost.$mydomain $mydomain
mydestination = $myhostname, localhost.$mydomain, $mydomain,
mail.$mydomain, www.$mydomain, ftp.$mydomain
#mynetworks_style = class
mynetworks_style = subnet
#mynetworks_style = host
mynetworks = 80.237.111.0/24, 127.0.0.0/8
#mynetworks = $config_directory/mynetworks
#mynetworks = hash:/etc/postfix/network_table
## server
#smtpd_sasl_auth_enable = yes
#smtpd_sasl_local_domain = $myhostname
#smtpd_recipient_restrictions = permit_mynetworks,
# permit_sasl_authenticated, check_relay_domains
#smtpd_sasl_security_options = noanonymous
## client
#smtp_sasl_auth_enable = yes
allow_percent_hack = yes
append_at_myorigin = yes
append_dot_mydomain = yes
empty_address_recipient = MAILER-DAEMON
masquerade_classes = envelope_sender, header_sender, header_recipient
masquerade_domains = server.com *** Change this to your domain name ***
masquerade_exceptions =
swap_bangpath = yes
transport_maps = hash:/etc/postfix/transport
mailbox_command = /usr/bin/procmail -d "$USER"
smtpd_banner = $myhostname ESMTP $mail_name ($mail_version)
#relay_domains = $mydestination
#relayhost = $mydomain
#relayhost = gateway.my.domain
#relayhost = uucphost
relayhost = [mail.site.ru]
#local_recipient_maps = $alias_maps unix:passwd.byname
#in_flow_delay = 1s
#alias_maps = dbm:/etc/aliases
alias_maps = hash:/etc/postfix/aliases
#alias_maps = hash:/etc/aliases, nis:mail.aliases
#alias_maps = netinfo:/aliases
#alias_database = dbm:/etc/aliases
#alias_database = dbm:/etc/mail/aliases
alias_database = hash:/etc/postfix/aliases
#alias_database = hash:/etc/aliases, hash:/opt/majordomo/aliases
#recipient_delimiter = +
#home_mailbox = Mailbox
#home_mailbox = Maildir/
#mail_spool_directory = /var/mail
#mail_spool_directory = /var/spool/mail
#mailbox_transport = lmtp:unix:/file/name
#mailbox_transport = cyrus
#fallback_transport = lmtp:unix:/file/name
#fallback_transport = cyrus
#fallback_transport =
#luser_relay = $user@other.host
#luser_relay = $local@other.host
#luser_relay = admin+$local
#header_checks = regexp:/etc/postfix/header_checks
#fast_flush_domains = $relay_domains
#fast_flush_domains =
#smtpd_banner = $myhostname ESMTP $mail_name
#smtpd_banner = $myhostname ESMTP $mail_name ($mail_version)
#local_destination_concurrency_limit = 2
#default_destination_concurrency_limit = 10
debug_peer_level = 2
#debug_peer_list = 127.0.0.1
#debug_peer_list = some.domain
debugger_command =
PATH=/usr/bin:/usr/X11R6/bin
xxgdb $daemon_directory/$process_name $process_id & sleep 5
sendmail_path = /usr/sbin/sendmail
newaliases_path = /usr/bin/newaliases
mailq_path = /usr/bin/mailq
setgid_group = postdrop
manpage_directory = /usr/share/man
sample_directory = /usr/share/doc/postfix-1.1.7/samples
readme_directory = /etc/postfix/README_FILES
alias_database = hash:/etc/postfix/aliases
content_filter = smtp:127.0.0.1:10024
maps_rbl_reject_code = 571
maps_rbl_domains = dynablock.wirehub.net, blackholes.wirehub.net, relays.ordb.org
smtpd_sender_restrictions = hash:/etc/postfix/access, reject_maps_rbl
Хм... Глянул в лог - вот что он мне пишет:Jan 28 11:16:01 vladm postfix/postfix-script: starting the Postfix mail system
Jan 28 11:16:01 vladm postfix/master[18669]: daemon started
Jan 28 11:16:05 vladm postfix/smtpd[18674]: fatal: open database /etc/postfix/access.db: No such file or directory
Jan 28 11:16:06 vladm postfix/master[18669]: warning: process /usr/libexec/postfix/smtpd pid 18674 exit status 1
Jan 28 11:16:06 vladm postfix/master[18669]: warning: /usr/libexec/postfix/smtpd: bad command startup -- throttling
>Хм... Глянул в лог - вот что он мне пишет:
>
>Jan 28 11:16:01 vladm postfix/postfix-script: starting the Postfix mail system
>Jan 28 11:16:01 vladm postfix/master[18669]: daemon started
>Jan 28 11:16:05 vladm postfix/smtpd[18674]: fatal: open database /etc/postfix/access.db: No such file
>or directory
>Jan 28 11:16:06 vladm postfix/master[18669]: warning: process /usr/libexec/postfix/smtpd pid 18674 exit status
>1
>Jan 28 11:16:06 vladm postfix/master[18669]: warning: /usr/libexec/postfix/smtpd: bad command startup -- throttling
>Так >postmap /etc/postfix/access надо делать. Есть еще >postalias aliases.
Ну как и обещал.Компилляция
Следующие команды вводятся не от рута(важно!)./configure --prefix=/usr/courier \
--sysconfdir=/etc/courier \
--with-piddir=/var/run \
--with-authshadow \
--without-authpam \
--without-authuserdb \
--without-authmysql \
--enable-workarounds-for-imap-client-bugsmake
А дальше - от рута.
make install
make install-configure
Файлы конфигурации
Все Файлы конфигурации лежат - /etc/courier/IMAP - /etc/courier/imapd
IMAPDSTART=NO (Изменить на YES)
POP3 - /etc/courier/pop3dPOP3DSTART=NO (Изменить на YES)
Конфигурационный файл для демона аутентификации
/etc/courier/authdaemonrcдолжен содержать одну тоько строчку ="authshadow"
Стартап-скрипты
cp /usr/courier/libexec/imapd.rc /etc/rc.d/init.d/courier-imap
cp /usr/courier/libexec/pop3d.rc /etc/rc.d/init.d/courier-pop3
ln -sf /etc/rc.d/init.d/courier-imap etc/rc.d/init.d/rc0.d/K??courier-imap
ln -sf /etc/rc.d/init.d/courier-imap etc/rc.d/init.d/rc3.d/S??courier-imap
ln -sf /etc/rc.d/init.d/courier-imap etc/rc.d/init.d/rc4.d/S??courier-imap
ln -sf /etc/rc.d/init.d/courier-imap etc/rc.d/init.d/rc5.d/S??courier-imap
ln -sf /etc/rc.d/init.d/courier-imap etc/rc.d/init.d/rc6.d/K??courier-imapln -sf /etc/rc.d/init.d/courier-pop3 etc/rc.d/init.d/rc0.d/K??courier-pop3
ln -sf /etc/rc.d/init.d/courier-pop3 etc/rc.d/init.d/rc3.d/S??courier-pop3
ln -sf /etc/rc.d/init.d/courier-pop3 etc/rc.d/init.d/rc4.d/S??courier-pop3
ln -sf /etc/rc.d/init.d/courier-pop3 etc/rc.d/init.d/rc5.d/S??courier-pop3
ln -sf /etc/rc.d/init.d/courier-pop3 etc/rc.d/init.d/rc6.d/K??courier-pop3
Ну и еще куча вкусностей - webadmin и прочее...