# postconf -n
command_directory = /usr/local/sbin
config_directory = /usr/local/etc/postfix
content_filter = lmtp:[212.110.95.13]:10024
daemon_directory = /usr/local/libexec/postfix
data_directory = /var/db/postfix
debug_peer_level = 2
disable_vrfy_command = yes
home_mailbox = Maildir/
html_directory = no
mail_owner = postfix
mailq_path = /usr/local/bin/mailq
manpage_directory = /usr/local/man
mynetworks = 212.110.95.8/32, 127.0.0.1/32
mynetworks_style = host
newaliases_path = /usr/local/bin/newaliases
queue_directory = /var/spool/postfix
readme_directory = no
sample_directory = /usr/local/etc/postfix
sendmail_path = /usr/local/sbin/sendmail
setgid_group = maildrop
show_user_unknown_table_name = no
smtpd_banner = $myhostname ESMTP $mail_name
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination, reject
unknown_local_recipient_reject_code = 550
virtual_alias_maps = mysql:/usr/local/etc/postfix/mysql_virtual_alias_maps.cf
virtual_gid_maps = static:1002
virtual_mailbox_base = /mc
virtual_mailbox_domains = mysql:/usr/local/etc/postfix/mysql_virtual_domains_maps.cf
virtual_mailbox_limit = 51200000
virtual_mailbox_maps = mysql:/usr/local/etc/postfix/mysql_virtual_mailbox_maps.cf
virtual_transport = virtual
virtual_uid_maps = static:1002
# cat mysql_virtual_domains_maps.cf
user = postfix
password = maildb1234
hosts = localhost
dbname = maildb
table = domain
select_field = domain
where_field = domain
# cat mysql_virtual_mailbox_maps.cf
user = postfix
password = maildb1234
hosts = 127.0.0.1
dbname = maildb
table = mailbox
select_field = maildir
where_field = username
mysql> desc domain;
+-------------+--------------+------+-----+---------------------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------------+--------------+------+-----+---------------------+-------+
| domain | varchar(255) | NO | PRI | | |
| description | varchar(255) | NO | | NULL | |
| aliases | int(10) | NO | | 0 | |
| mailboxes | int(10) | NO | | 0 | |
| maxquota | bigint(20) | NO | | 0 | |
| quota | bigint(20) | NO | | 0 | |
| transport | varchar(255) | YES | | NULL | |
| backupmx | tinyint(1) | NO | | 0 | |
| created | datetime | NO | | 0000-00-00 00:00:00 | |
| modified | datetime | NO | | 0000-00-00 00:00:00 | |
| active | tinyint(1) | NO | | 1 | |
+-------------+--------------+------+-----+---------------------+-------+
11 rows in set (0.01 sec)
mysql> desc mailbox;
+----------+--------------+------+-----+---------------------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------------------+-------+
| username | varchar(255) | NO | PRI | | |
| password | varchar(255) | NO | | | |
| name | varchar(255) | NO | | NULL | |
| maildir | varchar(255) | NO | | | |
| quota | bigint(20) | NO | | 0 | |
| domain | varchar(255) | NO | | | |
| created | datetime | NO | | 0000-00-00 00:00:00 | |
| modified | datetime | NO | | 0000-00-00 00:00:00 | |
| active | tinyint(1) | NO | | 1 | |
+----------+--------------+------+-----+---------------------+-------+
9 rows in set (0.01 sec)
mysql> select domain,transport from domain;
+------------------+-----------+
| domain | transport |
+------------------+-----------+
| mol.com.mk | virtual |
| vox-mundi.net.mk | virtual |
+------------------+-----------+
2 rows in set (0.00 sec)
mysql> select username,maildir from mailbox;
+-----------------------+------------------------+
| username | maildir |
+-----------------------+------------------------+
| [email protected] | mol.com.mk/admin/ |
| [email protected] | vox-mundi.net.mk/test/ |
+-----------------------+------------------------+
2 rows in set (0.00 sec)