Procmail

From Wiki

Jump to: navigation, search

Procmail - Mail Filtering

Procmail is a Mail processor which can forward, sort, or just about do anything with emails. Procmail is mainly a USER run program, where users determine what they want sorted etc. etc. The users procmail script is located in /home/$USER/.procmailrc

Lets write a basic Procmail script:

vi /home/$USER/.procmailrc

#Start of Procmailrc script.
PATH=/bin:/usr/bin:/usr/bin:/usr/local/bin/o2sms
MAILDIR=$HOME/Maildir
LOGFILE=$MAILDIR/procmail.log

:0 c:
* ^(To|Cc|Delivered-To): .*root@(server.com|localhost)
.Root-Server/
#This command above - will copy all emails sent To|Cc|Delivered-To root@server.com into a Maildir folder called Root-Server.

:0:
* ^(To|Cc): .*debian-security-announce@server.org
.Debian-Security-Announce/
#This command will MOVE/Put all emails sent To|Cc the debian-security-announce mailing list, into a folder called Debian-Security-Announce

:0 c:
* ^From: .*nagios@external.server.com
* ^To: .*user@server.com
.Test_Folder/
#This command will copy emails which are From and To the various users. Once these 2 criteria are met, then the email is copied into the Test_Folder.

There is a load more commands and checks which procmail can carry out. It can run a virus scan and spam check on some, or all of your email.

The : means lockfile while processing.

man procmailrc
//shows all options

Forward a Copy of all Emails to another email account

Although it is possible to do this using the /home/$user/.forward, it is as easy to do this with a procmailrc entry.

:0 c
!email@gmail.com


Procmail Examples

Simple!:

man procmailex


Excellent Article: http://www.debian-administration.org/articles/242

Links: http://www.redhat.com/docs/manuals/linux/RHL-7.2-Manual/ref-guide/s1-email-procmail.html

Personal tools