Re: Spam not reporting
HiP-HiPpO <[email protected]> Thu, 05 Jan 2017 00:48:57 +0000
| Newsgroups | gmane.comp.horde.imp |
|---|---|
| Message-ID | <[email protected]> |
>>>>> I have spam reporting enabled. What I discovered is that >>>>> messages sent through this method are not actually being >>>>> submitted correctly. I also found through manual testing, that >>>>> the parameter '-C revoke' is not always successful. So I >>>>> changed the program line for spamc to use '-L spam' and '-L >>>>> forget' respectively. Here's how I tested. >>>>> >>>>> In Horde and logged in as user1, find a message in Inbox to >>>>> route through the Spam reporting process. Select it and choose >>>>> Other Options->View Source. Copy all the source into a new file >>>>> named email.eml on the mail server system. >>>>> >>>>> Log into the mail server system as user1. >>>>> Using spamc, manually report the email as spam to the system to >>>>> understand the intended behavior. >>>>> $ spamc -d localhost -L spam -s 1500000 -u user1 < email.eml >>>>> >>>>> Responds with >>>>> Message successfully un/learned >>>>> >>>>> Run the same command a second time. >>>>> $ spamc -d localhost -L spam -s 1500000 -u user1 < email.eml >>>>> >>>>> Responds with >>>>> Message was already un/learned >>>>> >>>>> Remove the email from spamassassin with >>>>> $ spamc -d localhost -L forget -s 1500000 -u user1 < email.eml >>>>> >>>>> Responds with >>>>> Message successfully un/learned >>>>> >>>>> Next, let's report the same email using Horde Spam Reporting >>>>> then manually test that it was learned. >>>>> In Horde, choose the same message from the Inbox and use the >>>>> Spam reporting method. Horde handles the spam reporting >>>>> correctly and the messsage is moved to an alternative folder as >>>>> intended. This works fine. >>>>> >>>>> Let's return to the email server system and manually check that >>>>> the email was submitted correctly. >>>>> >>>>> Rerun spamc with the email.eml file. This should respond with a >>>>> meesage that this was already learned. >>>>> >>>>> $ spamc -d localhost -L spam -s 1500000 -u user1 < email.eml >>>>> >>>>> Responds with >>>>> Message successfully un/learned >>>>> >>>>> It does NOT! Instead this message has now been learned >>>>> manually. Horde did not report this correctly. >>>>> >>>>> Here is my backends.local.php file for reference. >>>>> >>>>> <?php >>>>> $servers['imap']['disabled'] = true; >>>>> $servers['advanced']['disabled'] = false; >>>>> $servers['advanced']['name'] = 'Advanced IMAP Server'; >>>>> $servers['advanced']['hostspec'] = 'localhost'; >>>>> $servers['advanced']['port'] = 143; >>>>> $servers['advanced']['maildomain'] = 'domain.net'; >>>>> $servers['advanced']['spam']['innocent']['display'] = true; >>>>> $servers['advanced']['spam']['innocent']['program'] = >>>>> '/usr/bin/spamc -s 1500000 -d localhost -L forget -u %l'; >>>>> $servers['advanced']['spam']['spam']['display'] = true; >>>>> $servers['advanced']['spam']['spam']['program'] = >>>>> '/usr/bin/spamc -s 1500000 -d localhost -L spam -u %l'; >>>>> $servers['advanced']['special_mboxes']['IMP_Mailbox::MBOX_DRAFTS'] = >>>>> 'Drafts'; >>>>> $servers['advanced']['special_mboxes']['IMP_Mailbox::MBOX_SENT'] >>>>> = 'Sent'; >>>>> $servers['advanced']['special_mboxes']['IMP_Mailbox::MBOX_SPAM'] >>>>> = 'Spam'; >>>>> $servers['advanced']['special_mboxes']['IMP_Mailbox::MBOX_TEMPLATES'] = >>>>> 'Templates'; >>>>> $servers['advanced']['special_mboxes']['IMP_Mailbox::MBOX_TRASH'] = >>>>> 'Trash'; >>>>> $servers['advanced']['autocreate_special'] = true; >>>>> >>>>> Looking at the apache status, it does show that spamc process >>>>> was kicked off, but it does not appear that any intended email >>>>> files are actually being submitted, unless this is just how the >>>>> log lines appear. >>>>> >>>>> # /etc/init.d/apache2 status >>>>> ● apache2.service - LSB: Apache2 web server >>>>> Loaded: loaded (/etc/init.d/apache2) >>>>> Drop-In: /lib/systemd/system/apache2.service.d >>>>> └─forking.conf >>>>> Active: active (running) since Thu 2016-12-22 01:54:09 PST; 5 days ago >>>>> Process: 25714 ExecStop=/etc/init.d/apache2 stop (code=exited, >>>>> status=0/SUCCESS) >>>>> Process: 24796 ExecReload=/etc/init.d/apache2 reload >>>>> (code=exited, status=0/SUCCESS) >>>>> Process: 25739 ExecStart=/etc/init.d/apache2 start >>>>> (code=exited, status=0/SUCCESS) >>>>> CGroup: /system.slice/apache2.service >>>>> ├─ 417 /usr/sbin/apache2 -k start >>>>> ├─ 431 /usr/sbin/apache2 -k start >>>>> ├─ 432 /usr/sbin/apache2 -k start >>>>> ├─ 448 /usr/sbin/apache2 -k start >>>>> ├─ 449 /usr/sbin/apache2 -k start >>>>> ├─ 452 /usr/sbin/apache2 -k start >>>>> ├─ 454 /usr/sbin/apache2 -k start >>>>> ├─25018 /usr/sbin/apache2 -k start >>>>> ├─25753 /usr/sbin/apache2 -k start >>>>> ├─25757 /usr/sbin/apache2 -k start >>>>> ├─25758 /usr/sbin/apache2 -k start >>>>> ├─25843 /usr/sbin/apache2 -k start >>>>> ├─25846 /usr/sbin/apache2 -k start >>>>> ├─25847 /usr/sbin/apache2 -k start >>>>> ├─26512 /usr/sbin/apache2 -k start >>>>> ├─27332 /usr/sbin/apache2 -k start >>>>> ├─27334 /usr/sbin/apache2 -k start >>>>> ├─27403 sh -c /usr/bin/spamc -s 1500000 -d localhost >>>>> -L spam -u 'user1' >>>>> ├─27404 /usr/bin/spamc -s 1500000 -d localhost -L >>>>> spam -u user1 >>>>> ├─28056 /usr/sbin/apache2 -k start >>>>> ├─31845 /usr/sbin/apache2 -k start >>>>> ├─31987 /usr/sbin/apache2 -k start >>>>> └─32190 /usr/sbin/apache2 -k start >>>>> >>>> >>>> Hi dev list. Is there any other details I can add to this report >>>> that could be helpful to solve this? >>>> >>>> Thank you, >>>> Art >>>> -- >>> >>> I added the line >>> $servers['debug'] = '/tmp/horde-debug.log'; >>> to imp/config/backends.local.php >>> in hopes to get some additional details to append here. The log >>> file is not created. >> >> You are missing the server key. I.e., >> >> $servers['advanced']['debug'] = '/tmp/imap-debug.log'; >> >> Though I'm not sure this will show anything about your spam problem. >> >> Are you sure that your webserver user has the correct permissions >> to report spam to spamc? > > Additionally, are you sure you are running the spamd daemon and not > using Amavis? The later won't work with spamc. I changed /etc/passwd and allowed www-data a login shell. I used `su - www-data` to change to this user in which the web server runs as. As the www-data user, I ran the commands `spamc -d localhost -L spam -s 1500000 -u user1 < test.eml` as well as `spamc -d localhost -L forget -s 1500000 -u user1 < test.eml` The reported behavior above was expected and this was the same behavior that was seen when running as www-data. This test was successful and it validates that the www-data user can run spamc. In /etc/apache2/envvars is the env variable `export APACHE_RUN_USER=www-data` netstat lists tcp 0 0 localhost:spamd *:* LISTEN /etc/services shows the spamd port as spamd 783/tcp # spamassassin daemon I do have amavis installed and have set a $sa_spam_subject_tag = **JUNK** spamassassin local,cf config has this rewrite_header Subject ***** SPAM ***** All auto reported Spam has the Subject that is used in the spamassassin local.cf file. -- imp mailing list Frequently Asked Questions: http://wiki.horde.org/FAQ To unsubscribe, mail: [email protected]