主题: 隔離信件, 不希望放在SQL 且原文保留, 並可通知特定ID (管理員), 應如何設定?

==== ==== ==== ==== ==== 必填信息。没有填写将不予回复 ====
- iRedMail 版本号:0.9.5-1
- 使用哪个数据库存储用户帐号(OpenLDAP,MySQL,PostgreSQL):OpenLDAP
- 使用的 Linux/BSD 发行版名称及版本号:CentOS7
- 与您的问题相关的日志信息:
====
剛才上一提問內容提到:
amavisd.log:
>>Jun  2 09:55:46 mail.l.domain1.com /usr/sbin/amavisd[13132]: (!)loading policy bank "ORIGINATING": unknown field "final_destiny_by_ccat"
>>Jun  2 09:55:46 mail.l.domain1.com /usr/sbin/amavisd[13132]: loaded policy bank "ORIGINATING"
出現" unknown field "final_destiny_by_ccat"

應是測試下面文件造成.
官網文件:
> Quarantine clean emails sent from/to certain local user
>Quarantining

1).可否請教一下, 其實際使用作用如何? Pro版有需要另外再照此文件設定?
2).Quarantine clean emails sent from/to certain local user
目前測試第一項是不行.
3).Quarantining
是隔離信件放在 SQL , 且已經清潔處理過(原文)
若不希望放在SQL 且原文保留, 並可通知特定ID (管理員), 應如何設定?

回复: 隔離信件, 不希望放在SQL 且原文保留, 並可通知特定ID (管理員), 應如何設定?

目前按官網文檔設定如下
1).#/etc/amavisd/amavisd.conf
#Quarantining” 使用
$final_virus_destiny      = D_DISCARD;
$final_banned_destiny     = D_DISCARD;
$final_spam_destiny       = D_DISCARD;
$final_bad_header_destiny = D_DISCARD;
$bad_header_quarantine_method = 'sql:';
$bad_header_quarantine_to = 'bad-header-quarantine';
$spam_quarantine_method = 'sql:';
$spam_quarantine_to = 'spam-quarantine';
$virus_quarantine_to     = 'virus-quarantine';
$virus_quarantine_method = 'sql:';
$banned_files_quarantine_method = 'sql:';
$banned_quarantine_to = 'banned-quarantine';

$clean_quarantine_method = 'sql:';
#下面Quarantine clean emails sent from/to certain local user ” 使用
$clean_quarantine_to = 'clean-quarantine';

$inet_socket_port = [10024, 11026, 9998,12030];
#Quarantine clean emails
$interface_policy{'12030'} = 'QUARANTINE';
$policy_bank{'QUARANTINE'} = {
    #是否重複下面?
    clean_quarantine_method => 'sql:',
    final_destiny_maps_by_ccat => {CC_CLEAN, D_DISCARD},
};

$interface_policy{'11026'} = 'ORIGINATING';
$policy_bank{'ORIGINATING'} = {
  originating => 1, 
  allow_disclaimers => 1,
  virus_admin_maps => ["spam\@l.domain1.com"],
  spam_admin_maps  => ["spam\@l.domain1.com"],
  warnbadhsender   => 1,
  smtpd_discard_ehlo_keywords => ['8BITMIME'],
  bypass_banned_checks_maps => [1],
  terminate_dsn_on_notify_success => 0, 
#是否重複上面?
  clean_quarantine_method => 'sql:',
  final_destiny_by_ccat => {CC_CLEAN, D_DISCARD},
};

@storage_sql_dsn = (
    ['DBI:mysql:database=amavisd;host=127.0.0.1;port=3306', 'amavisd', 'xxxxxxxxxxxxxxxxxxx'],
##11026Quarantine clean emails sent from/to certain local user 使用
    ['DBI:mysql:database=amavisd;host=127.0.0.1;port=3306', 'test2@l.domain1.com', 'abcdefghijkl'],  # 密碼為12碼明文 正確?
);

##########################
2)//var/www/iredadmin/settings.py.
#Quarantining” 使用
amavisd_enable_logging = True
amavisd_enable_quarantine = True
amavisd_quarantine_port = "9998"
amavisd_enable_policy_lookup = True
amavisd_db_host = "127.0.0.1"
amavisd_db_port = "3306"
amavisd_db_name = "amavisd"
amavisd_db_user = "amavisd"
amavisd_db_password = "xxxxxxxxxxxxxxxxxxx"

########################
3)./etc/postfix/master.cf
#Quarantine clean emails sent from/to certain local user ” 使用
submission inet  n       -       n       -       -       smtpd
    -o syslog_name=submission(587)
-o smtpd_tls_security_level=encrypt
    -o smtpd_sasl_auth_enable=yes
    -o smtpd_client_restrictions=permit_mynetworks,permit_sasl_authenticated,reject
    -o content_filter=smtp-amavis:[127.0.0.1]:11026

127.0.0.1:12027 inet n   -       n       -       -       smtpd
    -o content_filter=smtp-amavis:[127.0.0.1]:12030
-o recipient_bcc_maps=
    -o sender_bcc_maps= -o mynetworks_style=host -o mynetworks=127.0.0.0/8
    -o local_recipient_maps= -o relay_recipient_maps=
    -o strict_rfc821_envelopes=yes -o smtp_tls_security_level=none
    -o smtpd_tls_security_level=none -o smtpd_restriction_classes=
    -o smtpd_delay_reject=no
    -o smtpd_client_restrictions=permit_mynetworks,reject
    -o smtpd_helo_restrictions= -o smtpd_sender_restrictions=
    -o smtpd_recipient_restrictions=permit_mynetworks,reject
    -o smtpd_end_of_data_restrictions= -o smtpd_error_sleep_time=0
    -o smtpd_soft_error_limit=1001 -o smtpd_hard_error_limit=1000
    -o smtpd_client_connection_count_limit=0
    -o smtpd_client_connection_rate_limit=0
    -o receive_override_options=no_header_body_checks,no_unknown_recipient_checks,no_address_mappings

回复: 隔離信件, 不希望放在SQL 且原文保留, 並可通知特定ID (管理員), 應如何設定?

首先:“Quarantine clean emails sent from/to certain local user”是指将正常的(非 spam/virus)的邮件也隔离,你确定要这样隔离吗?

rain6966 写道:

3).Quarantining
是隔離信件放在 SQL , 且已經清潔處理過(原文)
若不希望放在SQL 且原文保留, 並可通知特定ID (管理員), 應如何設定?

隔离的邮件若不放在 SQL 数据库里,则无法在 iRedAdmin-Pro 里查看邮件 body。

回复: 隔離信件, 不希望放在SQL 且原文保留, 並可通知特定ID (管理員), 應如何設定?

rain6966 写道:

>>Jun  2 09:55:46 mail.l.domain1.com /usr/sbin/amavisd[13132]: (!)loading policy bank "ORIGINATING": unknown field "final_destiny_by_ccat"

Amavisd 不支持在这个 policy bank 里使用 final_destiny_by_ccat 参数。这个可能因 Amavisd 的版本不同而有差异。
你所用的是哪个版本的 Amavisd?

5 最后由 rain6966 (2016-06-04 12:37:28) 编辑

回复: 隔離信件, 不希望放在SQL 且原文保留, 並可通知特定ID (管理員), 應如何設定?

ZhangHuangbin 写道:

首先:“Quarantine clean emails sent from/to certain local user”是指将正常的(非 spam/virus)的邮件也隔离,你确定要这样隔离吗?

rain6966 写道:

3).Quarantining
是隔離信件放在 SQL , 且已經清潔處理過(原文)
若不希望放在SQL 且原文保留, 並可通知特定ID (管理員), 應如何設定?

隔离的邮件若不放在 SQL 数据库里,则无法在 iRedAdmin-Pro 里查看邮件 body。

Sorry ! 標頭的英文“Quarantine clean emails sent from/to certain local user”
我會錯意了.
那此功能是做user信件稽核(審核)管控用?
若是, 那直接使用 bcc 或maillists 做users 信件備底即可 , 爾後有問題才查閱(此功能倒像是信件事"前或後"的預防管控差異).

那如要
"spam/virus不放在SQL裡, 並可通知特定ID (管理員), 應如何設定?"

若"spam/virus放在SQL裡, 並可通知特定ID (管理員), 應如何設定?"
Pro版原本就有了? (需做 Quarantining 文檔內的設定?)
我電腦WinXP Firefox 或Chrome 有時會打不開, 點隔離信件右邊下拉箭頭不動作.
所以才有不放SQL的想法.

# amavisd -V CentOS7
amavisd-new-2.10.1 (20141025)
# amavisd -V CentOS6
amavisd-new-2.9.1 (20140627)

感謝回覆.

Post's attachments

圖片4.JPG 175.92 kb, file has never been downloaded. 

You don't have the permssions to download the attachments of this post.

回复: 隔離信件, 不希望放在SQL 且原文保留, 並可通知特定ID (管理員), 應如何設定?

rain6966 写道:

Sorry ! 標頭的英文“Quarantine clean emails sent from/to certain local user”
我會錯意了.
那此功能是做user信件稽核(審核)管控用?

用于将非 virus/spam/banned/bad-header 的 clean 的邮件隔离进 SQL 数据库,而不是直接投递到用户邮箱。隔离之后,可以用 iRedAdmin-Pro 做管理,但 iRedAdmin-Pro 不支持你要求的“通知特定 id/管理员”。

rain6966 写道:

我電腦WinXP Firefox 或Chrome 有時會打不開, 點隔離信件右邊下拉箭頭不動作.
所以才有不放SQL的想法.

应该是 iRedAdmin-Pro 使用的 JavaScript 文件对 Firefox/Chrome 支持不够好导致的,我会检查一下这个问题。抱歉。
另:你用的 Firefox/Chrome 各为什么版本?

7 最后由 rain6966 (2016-06-06 14:30:37) 编辑

回复: 隔離信件, 不希望放在SQL 且原文保留, 並可通知特定ID (管理員), 應如何設定?

ZhangHuangbin 写道:
rain6966 写道:

Sorry ! 標頭的英文“Quarantine clean emails sent from/to certain local user”
我會錯意了.
那此功能是做user信件稽核(審核)管控用?

用于将非 virus/spam/banned/bad-header 的 clean 的邮件隔离进 SQL 数据库,而不是直接投递到用户邮箱。 ...

故把有關 “Quarantine clean emails sent from/to certain local user” 的設定 改回  (此非我想要的結果);
Quarantining
只做到 'Quarantine clean emails'  ,因其和 "Quarantine clean emails sent from/to certain local user " 的功用有點類似 ( 'Quarantining spam, virus, banned and bad header messages' 的 clean動作).

另一篇pop文 "Undelivered Mail Returned to Sender" 兩台 iRedMail 互相轉寄的問題, 變成沒有了.

ZhangHuangbin 写道:

iRedAdmin-Pro 不支持你要求的“通知特定 id/管理员”。

改回上述原先設定 ,
寄垃圾郵件測試(XJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34XM ) , amavisd 會觸發寄給 spam_admin_maps  => ["spam\@l.domain.com"]通知.

故 “通知特定 id/管理员” 是有此作用 (只是非原始信件).
感謝解惑.Thanks.

ZhangHuangbin 写道:

应该是 iRedAdmin-Pro 使用的 JavaScript 文件对 Firefox/Chrome 支持不够好导致的,....
你用的 Firefox/Chrome 各为什么版本?

Firefox 46.0.1
Chrome 49.0.2623.112 (google 已停止支援)