使用Postfix和自定义传输,我可以根据收件人的域来管理传递速度。(例如,我每秒最多向*@hotmail.com发送一条消息)
我还使用类似的规则来阻止错误的目的地(htmail.com立即被阻止,避免了队列中的许多循环)。
但是,我想暂时将邮件传递暂停到目的地24或48小时(到*@gmail.com的邮件被暂停,所有其他内容都传递了)。邮件将在此期间排队,并且仅在我需要时通过更改配置来传递。
有谁知道这是怎么做到的吗 ?
谢谢
使用Postfix和自定义传输,我可以根据收件人的域来管理传递速度。(例如,我每秒最多向*@hotmail.com发送一条消息)
我还使用类似的规则来阻止错误的目的地(htmail.com立即被阻止,避免了队列中的许多循环)。
但是,我想暂时将邮件传递暂停到目的地24或48小时(到*@gmail.com的邮件被暂停,所有其他内容都传递了)。邮件将在此期间排队,并且仅在我需要时通过更改配置来传递。
有谁知道这是怎么做到的吗 ?
谢谢
Answers:
将邮件置于保留状态
/etc/postfix/main.cf:
smtpd_recipient_restrictions =
...
check_recipient_access hash:/etc/postfix/hold
/ etc / postfix / hold:
gmail.com HOLD
blah.com HOLD
确保postmap hash:/etc/postfix/hold
在更新文件时运行。
如果要释放所有保留的消息,请使用postsuper:
# postsuper -H ALL
暂停特定域:
postqueue -p | awk 'BEGIN { RS = "" } { if ($7 == "your@domain.com" ) print $1 }' | tr -d '!*' | postsuper -h -
要为特定域发布:
postqueue -p | awk 'BEGIN { RS = "" } { if ($7 == "your@domain.com" ) print $1 }' | tr -d '!*' | postsuper -H -