使用 Postfix 和自定义传输,我可以根据收件人的域管理传送速度。(例如,我每秒最多向 *@hotmail.com 发送一条消息)
我也使用类似的规则来阻止不良目的地(htmail.com 会立即被阻止,从而避免队列中的许多循环)。
但是,我想暂时暂停向某个目的地发送邮件 24 或 48 小时(暂停向 *@gmail.com 发送邮件,其他邮件均发送)。在此期间,邮件会排队,只有通过更改配置,我才会在需要时发送邮件。
有谁知道这是怎么做到的吗 ?
谢谢
答案1
将消息置于 HOLD 状态
/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 -H ALL
答案2
您可以使用交通地图:
gmail.com defer:
答案3
要暂停特定域:
postqueue -p | awk 'BEGIN { RS = "" } { if ($7 == "[email protected]" ) print $1 }' | tr -d '!*' | postsuper -h -
要为特定域发布:
postqueue -p | awk 'BEGIN { RS = "" } { if ($7 == "[email protected]" ) print $1 }' | tr -d '!*' | postsuper -H -