각 메일링 리스트의 사본을 다른 서버로 라우팅

각 메일링 리스트의 사본을 다른 서버로 라우팅

Postfix 뒤에서 실행되는 메일링 리스트 서버가 있습니다. 별도의 가상 머신에서 ML 소프트웨어를 업그레이드하고 있으며 모든 것이 제대로 작동하는지 확인하기 위해 프로덕션 게시물의 사본을 보내려고 합니다.

ML 호스트에 Postfix를 설정 하여 always_bcc로컬 사용자(listmail)를 가리키도록 한 다음 /etc/procmailrc테스트 환경에서 업그레이드된 호스트에 메시지를 보내는 데 사용합니다.

#  send copy of ML posts to lists.test
:0
* ^To:.*[email protected]
[email protected]

이는 "테스트 목록"에서 작동하는 것으로 보이지만 개별 이메일이 목록 서버에서 전송될 때 이것도 To:다음과 같이 설정 됩니다.[이메일 보호됨]초기(OP) 게시물만 전달하려고 하므로 레시피의 다른 제목을 확인해야 합니다.

또 다른 문제는 우리가 가지고 있는 모든 메일링 리스트(수백 개 이상)에 대한 레시피를 작성하고 리스트가 추가되거나 제거될 때마다 업데이트해야 한다는 것입니다. 즉, 일종의 grepmysql 또는 procmail 레시피의 mysql 쿼리 To:가 유효한 ML인지 확인합니다.

더 좋은 방법이 있나요?

아래에 포함시켰습니다 postconf -(n|M):

# postconf -n
alias_database = hash:/etc/aliases,hash:/etc/mail/sympa/aliases
alias_maps = mysql:/etc/postfix/mysql-sympa-lists-with-exclusions.cf,mysql:/etc/postfix/mysql-sympa-owners.cf,mysql:/etc/postfix/mysql-sympa-request.cf,mysql:/etc/postfix/mysql-sympa-unsubscribe.cf,hash:/etc/mail/sympa/aliases,hash:/etc/aliases
biff = no
default_privs = sympa
home_mailbox = .maildir/
inet_interfaces = all
inet_protocols = ipv4
local_recipient_maps =
mailbox_size_limit = 60000000
mailbox_transport = smtp:[mx2.mydomain.com]:2525
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain, lists.test.mydomain.com
mydomain = mydomain.com
myhostname = lists.mydomain.com
mynetworks = 127.0.0.0/8 10.140.136.0/23
myorigin = $mydomain
readme_directory = no
recipient_canonical_maps = hash:/etc/postfix/myrecipientmap
recipient_delimiter = +
relay_domains = $mydestination, lists.mydomain.com
smtp_destination_concurrency_limit = 5
smtp_destination_rate_delay = 1s
smtp_extra_recipient_limit = 5
smtp_host_lookup = native,dns
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
smtpd_recipient_restrictions = check_recipient_access hash:/etc/postfix/recipient_access
smtpd_relay_restrictions = permit_mynetworks, permit_sasl_authenticated, defer_unauth_destination
smtpd_sender_restrictions = hash:/etc/postfix/sender_access
sympa_destination_recipient_limit = 1
sympabounce_destination_recipient_limit = 1
transport_maps = regexp:/etc/postfix/transport_regexp
unknown_local_recipient_reject_code = 450
virtual_alias_maps = hash:/etc/postfix/virtual


# postconf -M
smtp       inet  n       -       n       -       -       smtpd -v
pickup     unix  n       -       y       60      1       pickup
cleanup    unix  n       -       y       -       0       cleanup
qmgr       unix  n       -       n       300     1       qmgr
tlsmgr     unix  -       -       y       1000?   1       tlsmgr
rewrite    unix  -       -       y       -       -       trivial-rewrite
bounce     unix  -       -       y       -       0       bounce
defer      unix  -       -       y       -       0       bounce
trace      unix  -       -       y       -       0       bounce
verify     unix  -       -       y       -       1       verify
flush      unix  n       -       y       1000?   0       flush
proxymap   unix  -       -       n       -       -       proxymap
proxywrite unix  -       -       n       -       1       proxymap
smtp       unix  -       -       y       -       -       smtp
relay      unix  -       -       y       -       -       smtp
showq      unix  n       -       y       -       -       showq
error      unix  -       -       y       -       -       error
retry      unix  -       -       y       -       -       error
discard    unix  -       -       y       -       -       discard
local      unix  -       n       n       -       -       local
virtual    unix  -       n       n       -       -       virtual
lmtp       unix  -       -       y       -       -       lmtp
anvil      unix  -       -       y       -       1       anvil
scache     unix  -       -       y       -       1       scache
maildrop   unix  -       n       n       -       -       pipe flags=DRhu user=vmail argv=/usr/bin/maildrop -d ${recipient}
uucp       unix  -       n       n       -       -       pipe flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient)
ifmail     unix  -       n       n       -       -       pipe flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)
bsmtp      unix  -       n       n       -       -       pipe flags=Fq. user=bsmtp argv=/usr/lib/bsmtp/bsmtp -t$nexthop -f$sender $recipient
scalemail-backend unix - n       n       -       2       pipe flags=R user=scalemail argv=/usr/lib/scalemail/bin/scalemail-store ${nexthop} ${user} ${extension}
mailman    unix  -       n       n       -       -       pipe flags=FR user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py ${nexthop} ${user}
sympa      unix  -       n       n       -       -       pipe flags=R user=sympa argv=/usr/lib/sympa/bin/queue ${recipient}
sympabounce unix -       n       n       -       -       pipe flags=R user=sympa argv=/usr/lib/sympa/bin/bouncequeue ${recipient}

관련 정보