Vesta Control Panel - Forum

Community Forum

Skip to content

Advanced search
  • Quick links
    • Main site
    • Github repo
    • Google Search
  • FAQ
  • Login
  • Register
  • Board index Language specific forums Russian (Русский) Почтовый сервер
  • Search

Настройка postgrey

Вопросы по работе Почтовый сервера
Dovecot, Exim, RoundCube
Post Reply
  • Print view
Advanced search
14 posts
  • Previous
  • 1
  • 2
evildrum
Posts: 24
Joined: Tue Jun 21, 2016 6:24 pm

Re: Настройка postgrey
  • Quote

Post by evildrum » Mon Oct 17, 2016 8:56 pm

kaavain wrote:Я на Весте включил проверку домена отправителя
а подробней можно? не видел такого функционала в весте. или у меня глаза кривые)
Top

kaavain
Posts: 62
Joined: Sat Sep 03, 2016 12:31 pm

Re: Настройка postgrey
  • Quote

Post by kaavain » Mon Oct 17, 2016 9:05 pm

evildrum wrote:
kaavain wrote:Я на Весте включил проверку домена отправителя
а подробней можно? не видел такого функционала в весте. или у меня глаза кривые)
Я имел ввиду не непостредственно В ВЕСТЕ а НА СЕРВЕРЕ где Веста. В ексим.конф. В частности:

Code: Select all

#acl_smtp_connect = acl_check_spammers
#acl_smtp_mail = acl_check_mail
acl_smtp_rcpt = acl_check_rcpt
acl_smtp_data = acl_check_data
acl_smtp_mime = acl_check_mime
acl_smtp_helo = acl_check_helo
keep_environment =
acl_smtp_dkim = acl_check_dkim


	acl_check_helo:
		deny
			condition     = ${if eq{$sender_helo_name}{}}
			message       = HELO required before MAIL
		drop message = Open Proxy in HELO/EHLO (HELO was $sender_helo_name)
			condition = ${if eqi {$sender_helo_name} {$sender_host_address}{no}{yes}}
			condition = ${if isip {$sender_helo_name} {yes}{no}}
			delay = 45s
		drop
			condition = ${if isip{$sender_helo_name}}
			message = Access denied - Invalid HELO name (See RFC2821 4.1.3)
		drop
			condition = ${if eq{[$interface_address]}{$sender_helo_name}}
			message = $interface_address is _my_ address
		drop
			condition = ${if eq{$sender_helo_name}{}{yes}{no}}
			message = Access denied - HELO missing at all
	accept	
	
acl_check_rcpt:
  accept  hosts         = :
  
		accept hosts = +whitelist
			!authenticated = *
			drop    message       = Your host in blacklist on this server.
			log_message   = Host in blacklist
			hosts         = +spammers
		deny    message       = rejected because $sender_host_address is in a black list at $dnslist_domain\\n$dnslist_text
			!authenticated = *
			dnslists      = ${readfile {/etc/exim/dnsbl.conf}{:}}	
		drop
			# Required because "[IPv6:<address>]" will have no .s
			!authenticated = *
			condition = ${if match{$sender_helo_name}{\N^\[\N}{no}{yes}}
			condition = ${if match{$sender_helo_name}{\N\.\N}{no}{yes}}
			message = Access denied - Invalid HELO name (See RFC2821 4.1.1.1)
		drop
			!authenticated = *
			message = X-Host-Lookup-Failed: Reverse DNS lookup failed for $sender_host_address (${if eq{$host_lookup_failed}{1}{failed}{deferred}})
			condition = ${if and{{def:sender_host_address}{!def:sender_host_name}}{yes}{no}}
		
acl_check_dkim:

        deny
            dkim_status = fail
            logwrite = DKIM test failed: $dkim_verify_reason
            add_header = X-DKIM-FAIL: DKIM test failed: (address=$sender_address domain=$dkim_cur_signer), signature is bad.
			message	= Rejected: $dkim_verify_reason

        warn
            dkim_status = invalid
            add_header = :at_start:Authentication-Results: $dkim_cur_signer ($dkim_verify_status); $dkim_verify_reason
            logwrite = DKIM test passed (address=$sender_address domain=$dkim_cur_signer), but signature is invalid.

        accept
            dkim_status = pass
            add_header = :at_start:Authentication-Results: dkim=$dkim_verify_status, header.i=@$dkim_cur_signer
            logwrite = DKIM test passed (address=$sender_address domain=$dkim_cur_signer), good signature.

	accept
Top

vitich
Posts: 52
Joined: Wed Jan 21, 2015 10:03 am

Os: Ubuntu 15x
Web: apache + nginx
Re: Настройка postgrey
  • Quote

Post by vitich » Tue Nov 22, 2016 12:07 am

Извиняюсь, что не расписывал подробный мануал.
А вообще, лучше вот так:

Code: Select all

find /etc/exim4 -type f -exec sed -i '/acl_local_deny_exceptions/s/^/#/' {} +
Расшифровываю: ищем в каталоге /etc/exim4 строки содержащие acl_local_deny_exceptions и комментируем их.
Top

constin
Posts: 10
Joined: Thu Jul 27, 2017 2:29 pm

Re: Настройка postgrey
  • Quote

Post by constin » Thu Jul 27, 2017 2:39 pm

Я могу понять незнания предмета у людей, которые ставят подобные панели. Они знают только гуи и им это не нужно. Но меня настораживает, что создатели программы не могут решить эту простейшую задачу. Тут было еще написано, по создателей, но я убрал текст. Так как сегодня проанализировал около 20 продуктов и пока что веста самая адекватная.

Но вернемся к вопросу.Я не спец в exim, я всегда работаю с Postfix.

В весте испольузется конфиг exim /etc/exim4/exim4.conf.template , это же означает, что то, что находится в папке /etc/exim4/conf.d/ не используется и висит мертвым грузом. Ошибка именно здесь, так как при добавлении функции грейлистинга, команда "greylistd-setup-exim4 add " вносит изменения в /etc/exim4/exim4.conf.template и пытается использовать в дальнейшем ACL acl_local_deny_exceptions, которая прописана в /etc/exim4/conf.d/, но не используется ( не читается exim'ом) . А создатели весты не перенесли эту ACL в /etc/exim4/exim4.conf.template.

Решение конечно не в том, чтобы закомментировать обращение к ACL, это бред. Решение в том, чтобы скопировать нужные настройки из /etc/exim4/conf.d/acl/20_exim4-config_local_deny_exceptions в /etc/exim4/exim4.conf.template

Лезем в /etc/exim4/exim4.conf.template , назодим там строчку begin acl и сразу после нее вставляем:

Code: Select all

# See exim4-config_files(5) for details.
#
# If the files do not exist, the white list never matches, which is
# the desired behaviour.
#
# The old file names CONFDIR/local_host_whitelist and
# CONFDIR/local_sender_whitelist will continue to be honored for a
# transition period. Their use is deprecated.

acl_local_deny_exceptions:
  accept
    hosts = ${if exists{CONFDIR/host_local_deny_exceptions}\
                 {CONFDIR/host_local_deny_exceptions}\
                 {}}
  accept
    senders = ${if exists{CONFDIR/sender_local_deny_exceptions}\
                   {CONFDIR/sender_local_deny_exceptions}\
                   {}}
  accept
    hosts = ${if exists{CONFDIR/local_host_whitelist}\
                 {CONFDIR/local_host_whitelist}\
                 {}}
  accept
    senders = ${if exists{CONFDIR/local_sender_whitelist}\
                   {CONFDIR/local_sender_whitelist}\
                   {}}

  # This hook allows you to hook in your own ACLs without having to
  # modify this file. If you do it like we suggest, you'll end up with
  # a small performance penalty since there is an additional file being
  # accessed. This doesn't happen if you leave the macro unset.
  .ifdef LOCAL_DENY_EXCEPTIONS_LOCAL_ACL_FILE
  .include LOCAL_DENY_EXCEPTIONS_LOCAL_ACL_FILE
  .endif

  # this is still supported for a transition period and is deprecated.
  .ifdef WHITELIST_LOCAL_DENY_LOCAL_ACL_FILE
  .include WHITELIST_LOCAL_DENY_LOCAL_ACL_FILE
  .endif


Перезапускаем exim.

На этом все.


P.S. рекомендую перетащить это в дефолтовый конфиг при установке, так как много кто использует грейлистинг. ну и кнопочку добавить включить/выключить. работы на 2 минуты и сразу плюс функционал.
Top


Post Reply
  • Print view

14 posts
  • Previous
  • 1
  • 2

Return to “Почтовый сервер”



  • Board index
  • All times are UTC
  • Delete all board cookies
  • The team
Powered by phpBB® Forum Software © phpBB Limited
*Original Author: Brad Veryard
*Updated to 3.2 by MannixMD
 

 

Login  •  Register

I forgot my password