求fb:mysql+maildrop限制郵箱容量
我想用mysql來限制每個郵箱使用不同的容量。
參照方法。、
http://www.jason-tang.com/index.php?option=com_content&task=view&id=68&Itemid=26
但這個方法只能限制所有的郵箱用同一容量 ,我想一些郵箱用40M,一些用200M,一些用500M
原方法略如下,不知道怎修改。
/usr/local/etc/postfix/main.cf
myhostname = mail.jason-tang.com
mydomain = jason-tang.com
myorigin = $mydomain
mydestination = $myhostname localhost localhost.$mydomain
mynetworks = 88.88.88.0/24, 127.0.0.0/8
inet_interfaces = all
virtual_mailbox_base = /home/domains/
virtual_mailbox_maps = mysql:/usr/local/etc/postfix/mysql_virtual_mailbox_maps.cf
virtual_mailbox_domains = mysql:/usr/local/etc/postfix/mysql_virtual_domains_maps.cf
virtual_alias_domains =
virtual_alias_maps = mysql:/usr/local/etc/postfix/mysql_virtual_alias_maps.cf
virtual_uid_maps = static:500
virtual_gid_maps = static:500
virtual_transport = maildrop
maildrop_destination_recipient_limit = 1
maildrop_destination_concurrency_limit = 1
message_size_limit = 51200000
virtual_mailbox_limit = 209715200
virtual_create_maildirsize = yes
virtual_mailbox_extended = yes
virtual_mailbox_limit_maps = mysql:/usr/local/etc/postfix/mysql_virtual_mailbox_limit_maps.cf
virtual_mailbox_limit_override = yes
virtual_maildir_limit_message = Sorry, the user's maildir has overdrawn his diskspace quota, please try again later.
virtual_overquota_bounce = yes
broken_sasl_auth_clients = yes
smtpd_sasl_auth_enable = yes
smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, check_relay_domains
smtpd_sasl_local_domain = $myhostname
smtpd_sasl_security_options = noanonymous
smtpd_sasl_application_name = smtpd
smtpd_banner=$myhostname ESMTP $mail_name ($mail_version)
smtp_use_tls = yes
smtpd_use_tls = yes
smtp_tls_note_starttls_offer = yes
smtpd_tls_key_file = /usr/local/etc/postfix/TLS/smtpd.pem
smtpd_tls_cert_file = /usr/local/etc/postfix/TLS/smtpd.pem
smtpd_tls_CAfile = /usr/local/etc/postfix/TLS/smtpd.pem
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
mtpd_tls_session_cache_timeout = 3600s
tls_random_source = dev:/dev/urandom
。。。。。。
vi /usr/local/etc/postfix/mysql_virtual_mailbox_limit_maps.cf
user = postfix
password = postfix
hosts = localhost
dbname = postfix
table = mailbox
select_field = quota
where_field = username
。。。。。。
install maildrop
cd /usr/ports/mail/maildrop
make WITH_AUTHLIB=yes install clean
AUTH_MYSQL MySQL support
vi /etc/maildroprc
logfile "/home/domains/maildrop.log"
to "$HOME$DEFAULT"
vi /usr/local/etc/postfix/master.cf
maildrop unix - n n - - pipe
flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient}
《解決方案》
你都這樣做了。
把配額寫在資料庫中。單位位元組S,數量C類似於 10485760S,2000C
在authlib中配置配額存放的欄位就可以了。
Tmail可以完美的支持這種配額。不但可以限制配額。還可以限制郵件在伺服器上保存的個數。
《解決方案》
我已經近乎搞好了,只是稍改一下配置就可以了。給多點提示吧。昨天問一下jacky升級clamav,他說要我500就全給我搞定,好貴 ,我最後連clamav都不搞了。
《解決方案》
原帖由 webdna 於 2009-9-16 09:07 發表 http://bbs2.chinaunix.net/images/common/back.gif
我已經近乎搞好了,只是稍改一下配置就可以了。給多點提示吧。昨天問一下jacky升級clamav,他說要我500就全給我搞定,好貴 ,我最後連clamav都不搞了。
那個這麼說的。我去把那個人清出群
smartweb.cn(33145369) 11:09:20
我就差這個clamav了。
HELL ANGEL(3453390) 11:09:39
……
*吉他(285111460) 11:10:12
500塊管你解決這個小問題
是這個人嗎?
[ 本帖最後由 scyzxp 於 2009-9-16 10:47 編輯 ]
《解決方案》
原帖由 webdna 於 2009-9-16 09:07 發表 http://bbs2.chinaunix.net/images/common/back.gif
我已經近乎搞好了,只是稍改一下配置就可以了。給多點提示吧。昨天問一下jacky升級clamav,他說要我500就全給我搞定,好貴 ,我最後連clamav都不搞了。
??
《解決方案》
這個jacky應該是你們tmail團隊的吧。還是回到我這個話題吧。解決問題吧。
《解決方案》
是不是要刪除main.cf中的
virtual_mailbox_limit = 209715200
virtual_create_maildirsize = yes
virtual_mailbox_extended = yes
呢?還要作什麼操作呢?我mysql的quote是1,應該是1M,我想限制一下郵箱容量是1M的以作測試。
《解決方案》
重申應該在main.cf
message_size_limit = 51200000
virtual_mailbox_limit = 209715200
virtual_create_maildirsize = yes
virtual_mailbox_extended = yes
virtual_mailbox_limit_maps = mysql:/usr/local/etc/postfix/mysql_virtual_mailbox_limit_maps.cf
virtual_mailbox_limit_override = yes
virtual_maildir_limit_message = Sorry, the user's maildir has overdrawn his diskspace quota, please try again later.
virtual_overquota_bounce = yes
如何讓/usr/local/etc/postfix/mysql_virtual_mailbox_limit_maps.cf起作用,默認的值不起作用呢?
《解決方案》
原帖由 webdna 於 2009-9-16 14:01 發表 http://bbs2.chinaunix.net/images/common/back.gif
重申應該在main.cf
message_size_limit = 51200000
virtual_mailbox_limit = 209715200
virtual_create_maildirsize = yes
virtual_mailbox_extended = yes
virtual_mailbox_limit_maps = mysql:/usr/ ...
打一個VDA的補丁就可以了
http://vda.sourceforge.net/
《解決方案》
cd /usr/ports/mail/postfix
make reinstall
rehash
make config (加選VDA)
make install clean
main.cf
++++
message_size_limit = 5120000
virtual_mailbox_limit =1000000
virtual_create_maildirsize = yes
virtual_mailbox_extended = yes
virtual_mailbox_limit_maps = mysql:/usr/local/etc/postfix/mysql_virtual_mailbox_limit_maps.cf
virtual_mailbox_limit_override = yes
virtual_maildir_limit_message = Sorry, the user's maildir has overdrawn his diskspace quota, please try again later.
virtual_overquota_bounce = yes
+++
reboot
但仍不行。建立帳號只有1M的,我發了3 封分別超過1M的仍可進入。