I have a free email account on wp.pl server and I use it as a secondary account only for shopping or registration purposes. Everything works just fine and the only issue is the SPAM which wp.pl sends me everyday and this SPAM can not be filtered by the filters defined in the account settings. I am fine with this since I am not paying for anything and it looks like it’s just the price you need to pay for this account.
I have started to look for some command line tool in order to filter and remove these unwanted and annoying messages automatically. I found a tool named ImapFilter. You can define some rules how to deal with the messages and ImapFilter will do everything by itself. The configuration is pretty simple:
… however in my case I was not able to make it running, I was playing around with the settings but every time I was receiving an error like that:
$ imapfilter imapfilter: reading data through SSL; EOF in violation of the protocol
So I decided to look for an alternative solution and eventually I found a command line email client Mutt. It’s really powerful and handy utility and without any issues I was able to make it running and apply SPAM filtering.
The configuration is stored in
set imap_user = "email@example.com" set imap_pass = "somepassword" set smtp_url = "smtps://firstname.lastname@example.org@smtp.wp.pl:465/" set smtp_pass = "somepassword" set from = "email@example.com" set realname = "AA" set folder = "imaps://imap.wp.pl:993" set spoolfile = "+INBOX" set header_cache=~/.mutt/cache/headers set message_cachedir=~/.cache/mutt/messages set certificate_file=~/.mutt/certificates set move = no
To show the messages in Mutt sent by firstname.lastname@example.org one need to define the limit
~f email@example.com. Then to delete the messages one need to press
D and confirm the operation with the key
$. And that’s it.
To make it even faster I defined an alias in
alias wppl='mutt -e "push '"'"'<limit>~f firstname.lastname@example.org<enter>D<enter>'"'"'"'
which opens the mutt with already filtered and tagged to delete messages.