日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

centos dovecot mysql_Centos6.4 配置postfix+dovecot+mysql

發布時間:2024/10/8 数据库 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 centos dovecot mysql_Centos6.4 配置postfix+dovecot+mysql 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

使用Linux用戶驗證和收發郵件

需要組件 postfix dovecot roundcube

postfix 用來收發郵件, 作為SMTP服務器, 監聽25端口

dovecot 用作為POP3, IMAP服務器, 監聽 POP3的110, IMAP的143端口, 用來和郵件客戶端(如Foxmail,roundcube等)通訊, 管理郵件

roundcube 作為客戶端, 登錄時通過IMAP來認證用戶

postfix 配置

/etc/postfix/main.cf:

myhostname

mydomain

#指定發送郵件時地址 xx@domain.com 中的domain.com, 如果使用mail命令發送郵件,需要設置該參數否則不能發送

myorigin

#可接受轉發郵件的類型

mynetworks_style

#mynetworks和relay_domains配合使用, 用來代替mynetworks_style

#可接受轉發的來源IP

mynetworks

#可接受轉發的域名

relay_domains

#郵件保存格式, 使用Maildir格式

home_mailbox=Maildir/

以上配置完后就可以用postifx收發郵件了, 也可以通過客戶端設置SMTP來讓postfix發送郵件,但是客戶端無法管理郵件,因為postfix沒有提供POP3或IMAP來和客戶端互動, 要想讓客戶端能管理和查看郵件需要配置dovecot來提供POP3或IMAP服務

dovecot 配置

配置 /etc/dovecot/dovecot.conf:

#開啟的協議

protocols= imap pop3 lmtp

配置 /etc/dovecot/conf.d/10-auth.conf:

disable_plaintext_auth=no

auth_mechanisms = plain login

#使用Linux用戶來驗證

!include auth-system.conf.ext

配置 /etc/dovecot/conf.d/10-mail.conf :

#郵件所在目錄

mail_location = maildir:~/Maildir

配置 /etc/dovecot/conf.d/10-master.conf:

service auth {

# Postfix smtp-auth

unix_listener /var/spool/postfix/private/auth {

mode = 0660

user = postfix

group = postfix

}

}

配置postfix, 讓其使用dovecot來做sasl認證:

smtpd_sasl_auth_enable = yes

smtpd_sasl_security_options = noanonymous

smtpd_sasl_local_domain = ''

smtpd_recipient_restrictions = permit_sasl_authenticated,permit_mynetworks, reject_unauth_ destination

broken_sasl_auth_clients = yes

smtpd_sasl_type = dovecot

smtpd_sasl_path = private/auth

使用mysql來存放驗證用戶,接受域名等信息

因為前面使用的是Linux用戶,所以每次收發郵件可以直接使用Linux用戶來操作,但是如果要使用mysql來存放用戶和驗證,我們就需要一個Linux用戶來進行收發的操作,因此我們可以建立一個Linux用戶來代理操作

$ useradd -g vmail -d /home/vmail

之后為了讓postfix和dovecot能夠使用mysql特性,需要安裝 dovecot-mysql, centos 6.4的postfix好像帶了mysql功能

配置dovecot,讓其通過mysql的數據來認證用戶:

/etc/dovecot/conf.d/10-auth.conf :

#注釋掉這行

#!include auth-system.conf.ext

#打開這行

!include auth-sql.conf.ext

/etc/dovecot/conf.d/10-mail.conf:

mail_location = maildir:/home/vmail/%d/%n/Maildir

/etc/dovecot/10-master.conf:

service auth{

unix_listener /var/spool/postfix/private/auth {

mode = 0666

user = postfix

group = postfix

}

unix_listener auth-userdb {

mode = 0600

user = vmail

#group =

}

}

/etc/dovecot/auth-sql.conf.ext:

passdb {

driver = sql

args = /etc/dovecot/dovecot-sql.conf.ext

}

userdb {

driver = static

args = uid=vmail gid=vmail home=/home/vmail/%d/%n

}

postfix通過mysql驗證用戶

配置 /etc/postfix/main.cf :

#告訴Postfix去MySQL數據庫種尋找域名、用戶帳號密碼及郵件別名等信息

virtual_mailbox_domains = mysql:/etc/postfix/mysql-virtual-mailbox-domains.cf

virtual_mailbox_maps = mysql:/etc/postfix/mysql-virtual-mailbox-maps.cf

virtual_alias_maps = mysql:/etc/postfix/mysql-virtual-alias-maps.cf

postfix使用dovecot的LMTP來存放郵件

設置postfix將接受到的郵件轉給dovecot存放到對應目錄

配置 /etc/postfix/main.cf :

#將mydestination的值修改為'',以便Postfix能夠通過MySQL表中相關數據決定需要接受/發送郵件的域名,這樣更具有通用性

mydestination =''

#以便告訴Postfix不要使用LDA「Local Delivery Agent」轉而使用Dovecot的LMTP完成本地郵件投遞

virtual_transport = lmtp:unix:private/dovecot-lmtp

配置 /etc/dovecot/conf.d/10-master.conf :

service lmtp {

unix_listener /var/spool/postfix/private/dovecot-lmtp {

mode = 0600

user = postfix

group = postfix

}

}

配置 /etc/dovecot/conf.d/20-lmtp.conf , 作用是使用postmaster_address地址將接收到的郵件轉發給對應的本地用戶:

protocol lmtp {

postmaster_address = postmaster@yourdomain

}

參考:

總結

以上是生活随笔為你收集整理的centos dovecot mysql_Centos6.4 配置postfix+dovecot+mysql的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。