vPostmaster
ovPostmaster is based on vPostmaster from tummy.com. The web interface to the vpostmaster virtual mail configuration is at http://www.openvest.com/vpostmaster
vPostmaster uses Postfix and Spamassassin and stores user information in a postgres database.
ovPostmaster has been extended here to use CRM114 for additional spam filtering and includes a patch to fix SPF Checking.
Webmail
Webmail is available via Squirrelmail. It is available with a /webmail address like http://www.openvest.com/webmail.
Logins to webmail is the same as for imap. Your username must include the domain as in
username = myname@openvest.com **not** username = myname
Greylisting
It does use Greylisting to reduce spam.
To reduce the use of greylisting
- spf
- it allows email with a correct spf record to pass without greylist checking. **Implemented**
- www.dnswl.org
- http://www.dnswl.org/ provides a listing of servers what are known to respond with followup's to 450 messages. These will pass grelisting anyway so don't bother delaying the mail. **not imiplemented during smtp--used by spamassassin**
Pseudo Mail list
Not sure how well this works. It's been big time overkill using mailman for small (eg <20 members) lists. Let's just use forwarding here.
import psycopg2 db=psycopg2.connect("dbname='vpostmaster'") c=db.cursor() # find the id and list of forwards for this address lname, domain = 'leadership@cfacolorado.org'.lower().split('@') c.execute("select id,forwardto from users where name='%s' and domainsname='%s'" % (lname, domain)) lid, allf = c.fetchone() # insert an evelope rule for each to accept mail for f in allf.split(): c.execute("insert into enveloperules(usersid,action,precedence,sender) values (%s,'accept',44,'%s')" % (lid, f)) # now add a lower precidence quarantine or reject message c.execute("insert into enveloperules(usersid,action,precedence,recipient) values (%s,'quarantine',11,'%s@%s')" % (lid, lname, domain)) db.commit
