Скачал и установил себе postgrey (http://isg.ee.ethz.ch/tools/postgrey/).
Установил и настроил, как описано в нем самом. Но что-то не вижу, чтобы он работал. Вот лог запуска:Oct 11 13:23:35 mail postgrey[496]: 2005/10/11-13:23:35 Pid_file already exists for running process (369)... aborting at line 232 in file /usr/local/lib/perl5/site_perl/5.8.5/Net/Server.pm
Oct 11 13:23:35 mail postgrey[496]: 2005/10/11-13:23:35 Server closing!
Oct 11 13:23:36 mail clamsmtpd: couldn't bind to address: 10025: Address already in use
Oct 11 13:23:36 mail postfix/postfix-script: fatal: the Postfix mail system is already running
Oct 11 13:24:17 mail postgrey[114]: Process Backgrounded
Oct 11 13:24:18 mail postgrey[114]: 2005/10/11-13:24:17 postgrey (type Net::Server::Multiplex) starting! pid(114)
Oct 11 13:24:18 mail postgrey[114]: Binding to TCP port 10023 on host 127.0.0.1
Oct 11 13:24:18 mail postgrey[114]: Setting gid to "65533 65533"
Oct 11 13:24:18 mail postgrey[114]: Setting uid to "1164"
Oct 11 13:24:20 mail postfix/postfix-script: starting the Postfix mail system
Oct 11 13:24:20 mail postfix/master[193]: daemon started -- version 2.2.2, configuration /etc/postfixClamSMTP еще материться начал в довершении всего - хотя работает исправно.
А вот обещанных строчек "greylisted for..." для приходящих писем за сутки так и не дождался. Подробного описания, что еще можно и нужно крутить для запуска этого зверя тоже не нашел. Помогите кто чем может...
Да, вдогонку. Стоит Perl 5.8.3, BerkeleyDB 4.3.29, перл-модули - berkeleydb 0.26, IO-Multiplex 1.08, net-server-0.88, версия postgrey - 1.21, postfix - 2.2.1.
У постфикса в main.cf написано:127.0.0.1:10023_time_limit = 3600
smtpd_recipient_restrictions = check_recipient_access hash:/etc/postfix/postmaster_access,
permit_mynetworks,
permit_sasl_authenticated,
permit_auth_destination,
reject_unauth_destination,
check_policy_service inet:127.0.0.1:10023,
reject_rbl_client relays.ordb.org,
reject_rbl_client sbl.spamhaus.org,
rejectА запускается postgrey вот так:
/usr/libexec/postfix/postgrey --inet=127.0.0.1:10023 -d --pidfile=/var/spool/postfix/postgrey/postgrey.pid
Да. С правами на файлы ничего мутить не нужно? Посмотрел - у всех файлов, лежащих в /usr/libexec/postfix/ владелец root:wheel. Сделал такого же владельца и для postgrey.
>smtpd_recipient_restrictions = check_recipient_access hash:/etc/postfix/postmaster_access,
> permit_mynetworks,
> permit_sasl_authenticated,
> permit_auth_destination,
> reject_unauth_destination,
В таком виде остальные ограничения никогда не будут проверяться.
> check_policy_service inet:127.0.0.1:10023,
>
>
>
> reject_rbl_client relays.ordb.org,
>
>
> reject_rbl_client sbl.spamhaus.org,
> reject
>
>> permit_auth_destination,
>> reject_unauth_destination,
>В таком виде остальные ограничения никогда не будут проверяться.
>> check_policy_service inet:127.0.0.1:10023,Как я понимаю, лишнее permit_auth_destination? Или что?
>>> permit_auth_destination,
>>> reject_unauth_destination,
>>В таком виде остальные ограничения никогда не будут проверяться.
>>> check_policy_service inet:127.0.0.1:10023,
>
>Как я понимаю, лишнее permit_auth_destination? Или что?Ага. Вот как надо:
smtpd_recipient_restrictions = check_recipient_access hash:/etc/postfix/postmaster_access,
permit_mynetworks,
permit_sasl_authenticated,
reject_unauth_destination,
check_policy_service inet:127.0.0.1:10023,
reject_rbl_client relays.ordb.org,
reject_rbl_client sbl.spamhaus.org,
permitТеперь заработало. Спасибо!
>Теперь заработало. Спасибо!А как бы заставить сабж задерживать почту идущую на постмастер?
из файла /usr/local/etc/postfix/postgrey_whitelist_recipients
убрал строку postmaster@, перезапустил postgrey и postfix, однако почта все равно пролетает без задержки
Кто нить решил проблемму со спамом на postmaster ?
>>>> permit_auth_destination,
>>>> reject_unauth_destination,
>>>В таком виде остальные ограничения никогда не будут проверяться.
>>>> check_policy_service inet:127.0.0.1:10023,
>>
>>Как я понимаю, лишнее permit_auth_destination? Или что?
>
>Ага. Вот как надо:
>
>smtpd_recipient_restrictions = check_recipient_access hash:/etc/postfix/postmaster_access,
>permit_mynetworks,
>permit_sasl_authenticated,
>reject_unauth_destination,
>check_policy_service inet:127.0.0.1:10023,
>reject_rbl_client relays.ordb.org,
>reject_rbl_client sbl.spamhaus.org,
>permit
>
>Теперь заработало. Спасибо!У меня такая же проблема :-(
вот мой main.cf
mail-srv# cat /usr/local/etc/postfix/main.cf
queue_directory = /var/spool/postfix
command_directory = /usr/local/sbin
base = /usr/local/etc/postfix
daemon_directory = /usr/local/libexec/postfix
mail_owner = postfix
default_privs = nobody
myhostname = mail.mydomain.ru
mydomain = mydomain.ru
myorigin = $mydomain
inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain, localhost
unknown_local_recipient_reject_code = 550
local_recipient_maps = $virtual_mailbox_maps, $virtual_alias_maps, $alias_maps
mynetworks = 127.0.0.0/8, [внешний IP], 192.168.2.0/24
alias_maps = hash:/etc/mail/aliases
alias_database = hash:/etc/mail/aliases
header_checks = regexp:$base/header_checks
smtpd_banner = $myhostname ESMTP
debug_peer_level = 2
debug_peer_list = 127.0.0.1, mydomain.ru
smtpd_client_restrictions = permit_mynetworks, permit_sasl_authenticated, check_client_access hash:$base/client_access, reject_unknown_client
smtpd_helo_restrictions = check_helo_access hash:$base/hello_access, permit_mynetworks, reject_invalid_hostname, reject_unknown_hostname, reject_non_fqdn_hostname
smtpd_sender_restrictions = permit_mynetworks, check_sender_access hash:$base/sender_access, reject_authenticated_sender_login_mismatch, reject_unknown_sender_domain, reject_unlisted_sender
smtpd_recipient_restrictions = check_recipient_access hash:$base/recipient_access, permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination, check_policy_service inet:127.0.0.1:10023, permit
smtpd_data_restrictions = reject_multi_recipient_bounce
smtpd_etrn_restrictions = reject
smtpd_reject_unlisted_sender = yes
disable_vrfy_command = yes
strict_rfc821_envelopes = yes
show_user_unknown_table_name = no
address_verify_sender = <>
unverified_sender_reject_code = 550
smtpd_helo_required = yes
smtp_always_send_ehlo = yes
smtpd_hard_error_limit = 8
smtpd_timeout = 120s
smtp_helo_timeout = 60s
smtp_mail_timeout = 60s
smtp_rcpt_timeout = 90s
smtpd_sasl_auth_enable = yes
smtpd_sasl_application_name = smtpd
broken_sasl_auth_clients = yes
smtpd_sasl_security_options = noanonymous
smtpd_sender_login_maps = mysql:$base/mysqlLookupMaps/sender.conf
transport_maps = mysql:$base/mysqlLookupMaps/transport.conf
virtual_alias_maps = mysql:$base/mysqlLookupMaps/alias.conf
virtual_mailbox_domains = mysql:$base/mysqlLookupMaps/domain.conf
virtual_mailbox_maps = mysql:$base/mysqlLookupMaps/mailbox.conf
virtual_mailbox_base = /var/spool/mail# for QUOTA
virtual_mailbox_limit_maps = mysql:$base/mysqlLookupMaps/quota.conf
virtual_maildir_extended=yes
virtual_mailbox_limit_override=yes
virtual_create_maildirsize = yes
virtual_overquota_bounce = yes
virtual_maildir_limit_message="Sorry, the user's maildir has overdrawn his diskspace quota, please try again later"#message_size_limit = 5242880
virtual_gid_maps = static:1981
virtual_uid_maps = static:1981
virtual_minimum_uid = 1000Не пойму ? Вроде все так же сделал, но все равно в логах grelisted нет :-(