vm-pop3d (mail/vm-pop3d) Add to my watchlist
POP3 server for Postfix that supports virtual domains and mailboxesA POP3 server that supports virtual domains and virtual mailboxes such that users and mailboxes need not be associated with local Unix accounts.
Version: 1.1.6 License: GPL-2 GitHubMaintainers | No Maintainer |
Categories | |
Homepage | http://www.reedmedia.net/software/virtualmail-pop3d/ |
Platforms | darwin |
Variants |
|
"vm-pop3d" depends on
lib (1)
build (1)
Ports that depend on "vm-pop3d"
No ports
Port notes
#### To set up vm-pop3d with Postfix ####
Notice: The paths to files used by vm-pop3d are hard coded at compile time so
if you deviate from the paths described below vm-pop3d will not work.
1) Set up Postfix (if first-time setup) and create spool directories
for your vm-pop3d virtual domains.
cd ${prefix}/etc/postfix
sudo cp master.cf.sample master.cf
sudo cp main.cf.sample main.cf
sudo mkdir ${prefix}/var/vm-pop3d/spool/my-vdomain1.com
sudo chown postfix:postfix ${prefix}/var/vm-pop3d/spool/my-vdomain1.com
sudo chmod 775 ${prefix}/var/vm-pop3d/spool/my-vdomain1.com
2) Configure Postfix for virtual mailboxes
Add to main.cf
virtual_mailbox_base = ${prefix}/var/vm-pop3d/spool
virtual_mailbox_maps = hash:${prefix}/etc/vm-pop3d/vmailbox_maps
virtual_mailbox_domains = hash:${prefix}/etc/vm-pop3d/vdomain_maps
virtual_uid_maps = static:<postfix user's uid>
virtual_gid_maps = static:<postfix user's gid>
virtual_mailbox_lock = dotlock
virtual_minimum_uid = <postfix user's uid>
NOTE: Do NOT include the virtual domain name in main.cf's $mydestination
or Postfix will reject mail to this domain since local (Unix) accounts
for virtual domains do not exist.
3) Create virtual mailbox lookup tables
sudo touch ${prefix}/etc/vm-pop3d/vdomain_maps (contents below)
my-vdomain1.com placeholder (any text)
my-vdomain2.com placeholder
sudo touch ${prefix}/etc/vm-pop3d/vmailbox_maps (contents below)
user1@my-vdomain1.com my-vdomain1.com/user1
user2@my-vdomain1.com my-vdomain1.com/user2
sudo postmap ${prefix}/etc/vm-pop3d/vdomain_maps (make .db hash files)
sudo postmap ${prefix}/etc/vm-pop3d/vmailbox_maps
4) Restart Postfix and test SMTP message delivery to virtual domains
sudo postfix reload
Now send an email to an account in a virtual domain; look here to see if
messages are arriving:
ls ${prefix}/var/vm-pop3d/spool/my-vdomainx.com for messages.
Check the error logs for either delivery errors or (after next step)
POP errors:
tail /var/log/mail.log
5) Create virtual domain passwd files, substituting real domain names for my-vdomain
cd ${prefix}/etc/vm-pop3d
sudo mkdir my-vdomain1.com
cd my-vdomain1.com
sudo htpasswd -c passwd user1 (-c creates the file 'passwd' to hold the 1st vdomain1 user)
sudo htpasswd passwd user2 (don't need -c for subsequent users of the vdomain1)
6) Set vm-pop3d to launch at startup with launchctl, start it, and test POP access to virtual domains with telnet
Run launchctl so Nagios will start at system boot:
sudo launchctl load -w /Library/LaunchDaemons/org.macports.vm-pop3d.plist
Start vm-pop3d manually:
sudo ${prefix}/share/vm-pop3d/vm-pop3d.init start (stop|status)
telnet localhost 110 (response ->) +OK POP3 Welcome to vm-pop3d 1.x.x
USER <user@domain>
PASS <password>
LIST (to see messages)
RETR 1 (to view message #1)
Documentation is in ${prefix}/share/doc/vm-pop3d
Port Health:
Loading Port Health