doc:appunti:linux:sa:postfix_spamassassin_clamav_dovecot
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
doc:appunti:linux:sa:postfix_spamassassin_clamav_dovecot [2023/02/17 15:56] – [Error Command output: Aborted] niccolo | doc:appunti:linux:sa:postfix_spamassassin_clamav_dovecot [2023/10/30 11:09] (current) – [Enable SSL, imaps and pop3s] niccolo | ||
---|---|---|---|
Line 176: | Line 176: | ||
Once restarted the **dovecot.service**, | Once restarted the **dovecot.service**, | ||
+ | |||
+ | ==== Client connections are being dropped ==== | ||
+ | |||
+ | You may encounter wanring messages like these into the mail log: | ||
+ | |||
+ | < | ||
+ | dovecot: master: Warning: service(imap-login): | ||
+ | </ | ||
+ | |||
+ | To increase the number of process that are allowed to spawn, edit the **/ | ||
+ | |||
+ | < | ||
+ | default_process_limit = 200 | ||
+ | </ | ||
+ | |||
===== SpamAssassin Filter ===== | ===== SpamAssassin Filter ===== | ||
Line 209: | Line 224: | ||
* **clamdscan** | * **clamdscan** | ||
* **clamav-freshclam** | * **clamav-freshclam** | ||
+ | * **libclamunrar9** (non-free package to scan inside RAR archives) | ||
Periodic download (update) of viruses database is performed by the **clamav-freshclam.service**, | Periodic download (update) of viruses database is performed by the **clamav-freshclam.service**, | ||
Line 287: | Line 303: | ||
postfix/ | postfix/ | ||
status=bounced (Command died with status 134: | status=bounced (Command died with status 134: | ||
- | "/ | + | "/ |
+ | | ||
</ | </ | ||
Line 316: | Line 333: | ||
</ | </ | ||
- | There was a problem with **the filter program responding too slowly**. | + | There was a problem with **the filter program responding too slowly**. |
+ | |||
+ | < | ||
+ | plugin { | ||
+ | ... | ||
+ | # Change the default timeout (10 seconds) for the filter extension. | ||
+ | sieve_filter_exec_timeout = 60s | ||
+ | |||
+ | # Change the default timeout (10 seconds) for the execute extension. | ||
+ | sieve_execute_exec_timeout = 60s | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | ==== Error Unable to flush stdout ==== | ||
+ | |||
+ | FIXME This error message has an unwknown origin. | ||
+ | |||
+ | < | ||
+ | postfix/ | ||
+ | status=bounced (Command died with status 134: | ||
+ | "/ | ||
+ | Command output: Aborted Unable to flush stdout: Broken pipe ) | ||
+ | </ | ||
===== Sieve filtering ===== | ===== Sieve filtering ===== | ||
Line 377: | Line 416: | ||
<code bash> | <code bash> | ||
#!/bin/sh | #!/bin/sh | ||
- | / | + | / |
</ | </ | ||
+ | |||
+ | Notice that we set two timeouts on spamassassin client, one to connect to the daemon and one to get the result. If the daemon does not respond timely, the message is passed unchanged. Beware that **the timeouts should be lower** than the one specified into the **Dovecot LDA Sieve Extprograms plugin** configuration. | ||
==== How to Test an User's Sieve Filter File ==== | ==== How to Test an User's Sieve Filter File ==== | ||
Line 426: | Line 467: | ||
terminated with non-zero exit code 127 | terminated with non-zero exit code 127 | ||
</ | </ | ||
+ | |||
+ | FIXME How to handle errors in filter external commands? The default action is to send a **non-delivery notification**, | ||
==== Multiple Sieve Scripts ==== | ==== Multiple Sieve Scripts ==== |
doc/appunti/linux/sa/postfix_spamassassin_clamav_dovecot.1676645813.txt.gz · Last modified: 2023/02/17 15:56 by niccolo