Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Email 后缀:将每封电子邮件的副本发送到给定的电子邮件地址_Email_Smtp_Postfix Mta - Fatal编程技术网

Email 后缀:将每封电子邮件的副本发送到给定的电子邮件地址

Email 后缀:将每封电子邮件的副本发送到给定的电子邮件地址,email,smtp,postfix-mta,Email,Smtp,Postfix Mta,我有一个postfix电子邮件服务器,我想调试一个问题。 如何将其配置为将每封电子邮件的副本发送到我的电子邮件中(除了将电子邮件发送给预期的收件人之外)。我最近实现了这一功能,因此,尽管我想分享: 使用postfix和cyrus imap将所有传出邮件发送到已发送文件夹 总结 让postfix将所有发送电子邮件的密件抄送至特殊的“已发送” 邮件帐户。使用此特殊帐户上的筛选重定向所有电子邮件 发送到与帐户关联的已发送文件夹 为已发送邮件创建电子邮件用户帐户 最简单的方法是为sent创建一个新的un

我有一个postfix电子邮件服务器,我想调试一个问题。
如何将其配置为将每封电子邮件的副本发送到我的电子邮件中(除了将电子邮件发送给预期的收件人之外)。

我最近实现了这一功能,因此,尽管我想分享:

使用postfix和cyrus imap将所有传出邮件发送到已发送文件夹

总结

让postfix将所有发送电子邮件的密件抄送至特殊的“已发送” 邮件帐户。使用此特殊帐户上的筛选重定向所有电子邮件 发送到与帐户关联的已发送文件夹

  • 为已发送邮件创建电子邮件用户帐户

    最简单的方法是为sent创建一个新的unix帐户, 将shell设置为/bin/false以防止任何人能够登录 在:

  • 为发送的用户设置imap

    使用cyradm,我们创建了一个新的邮箱(ie用户),并向该用户发送append 访问所有imap“已发送”文件夹:

    您需要为每个用户(userx、usery、, 上面示例中的userz)。我没能做到 找到一个更好的方法。欢迎提出建议 marc@bloodnok.com

    按如下方式安装sieve脚本:

     # Sieve script for sent.  If outgoing email is bcc'ed to this account,
     # this sieve script will redirect it to the sender's Sent folder
     require ["fileinto"];
    
     if address :is :localpart "From" "userx" {
       fileinto "user.userx.Sent";
     }
     elsif address :is :localpart "From" "usery" {
       fileinto "user.usery.Sent";
     }
     elsif address :is :localpart "From" "userz" {
       fileinto "user.userz.Sent";
    }
    
    host$ sieveshell localhost -user=sent -a=cyrus
    Password: <enter you cyrus user admin password here>
    > put sent.sieve
    > activate sent.sieve
    > quit
    
    # copy all locally sent mail to the sent account
    @yourdomain.com       sent@yourdomain.com
    
    使用以下命令将其编译为后缀哈希文件:

    host$ sudo postmap bcc_map
    
    将以下行添加到postfix main.cf配置文件中:

    sender_bcc_maps = hash:/etc/postfix/bcc_map
    
    并使postfix重新加载其配置:

    主机$sudo/etc/init.d/postfix重载

  • 测试与调试

    发送一些电子邮件,并检查是否已将其复制到“已发送”文件夹中

    如果出现问题,您应该检查cyrus和postfix日志 (所有日志都记录到我的debian主机上的
    /var/log/syslog
    )。打字错误 访问权限通常会导致某些线索被发送到 日志


  • 只需添加
    始终\u bcc=youremail@gmail.com
    in/etc/postfix/main.cf并重新启动postfix服务器。我在底部加了这一行

    它似乎真的起作用了。更多关于always_bcc的信息

    请不要忘记先备份此文件。

    有更好的答案,因为它使用了postfix提供的功能。
    host$ sudo postmap bcc_map
    
    sender_bcc_maps = hash:/etc/postfix/bcc_map