postfix dovecot采用dovecot做smtp认证怎么老是过不去

5108人阅读
Linux操作与使用(36)
&&&&&&&&& Postfix 和Dovecot功能确实很强大,支持各种认证方式, 配置非常灵活, 就因为太过于灵活, 反而安装配置的过程中,容易有各种各样的陷阱,碰到问题了, 日志是最好的解决办法了。&&& 我们假设你申请的域名是&&& & 。&&&&&&&&& 在域名服务提供商那里设置域名解析, 我的&
设置了3个域名解析:&&&&&&&&& 第一个是 :A记录,& RR值为 @ ,&&& 指向 服务器的IP地址&&&&&&&&& 第二个是:MX记录, RR值为@, 指向 &&&&&&&&& 第三个是:A记录,RR值为 www, 指向服务器的IP地址&&&&& &&&&&&&&& 配置完毕后,&& ping&&&& && 如果能提示出你的服务器的IP地址, 证明 www的配置已经生效。&&&&&&&&& 下来还要检查 MX 记录是否生效, 要用nslookup检查一下是否MX记录正确。&&&&&&&&& 在windows系统的命令行控制体输入 : nslookup&&& -qt=mx&&& &&&& 回车后,能显示你的域名&&& && , 就代表你的 MX记录配置正确。&这里有个关键需要注意: 我们一般都是自动获取IP地址和自动获取DNS, 这自动的DNS一般就是路由器的IP地址, 这个时候使用nslookup是得不到正确的MX记录的 ,要验证MX记录, 还得设置正确的DNS, 你比如说中国电信的DNS是 : 202.96.209.133,我就是设置了这个DNS后,才验证MX记录成功的。&&&&&&&&& 如果MX记录配置不正确, 那用QQ邮箱发邮件, 你就会收到个退信, 退信原因的内容如下 :收件人()所属域名不存在,邮件无法送达。
Name service error for
type=MX: Host found but no data record of requested type &&&&&&&&&& 域名解析搞定了, 就可以安装配置& postfix 和& dovecot 了。&&&&&&&&& 我没有下载源码进行安装,直接用yum进行的。&&&&&&&& yum && install && postfix&&&&&&&& yum && install && dovecot&&&&&&&& yum&&& install&&&& cyrus-sals&&&&&&&& 安装完毕后, 需要配置的东西其实不多, 就两个配置文件需要修改。&&&&&&& 第一个是 :postfix 的配置文件&&& /etc/postifx/main.cf ,& 需要修改的内容如下所示,其他的用默认即可。myhostname =
mydomain =
myorigin = $mydomain
inet_interfaces = all
inet_protocols = all
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
mynetworks = 0.0.0.0/0
home_mailbox = Maildir/
smtpd_sender_restrictions = permit_mynetworks,
permit_sasl_authenticated,
reject_sender_login_mismatch, reject_authenticated_sender_login_mismatch, reject_unauthenticated_sender_login_mismatch
smtpd_sasl_auth_enable = yes
smtpd_sender_login_maps = hash:/etc/postfix/sender_login_maps&&&&&& 第二个是:dovecot的配置文件&& /etc/dovecot/dovecot.conf,需要修改的内容如下所示,其他的默认即可。protocols = imap pop3 lmtp imaps pop3s
ssl_disable = no
mail_location = Maildir:~/Maildir
disable_plaintext_auth = no&&&& dovecot.conf 配置好以后,如果直接启动&&& service&& dovecot&& start,&& 会提示警告 :Aug 14 17:55:54 master: Warning: Killed with signal 15 (by pid=12829 uid=0 code=kill)
Aug 14 17:55:55 config: Warning: NOTE: You can get a new clean config file with: doveconf -n & dovecot-new.conf
Aug 14 17:55:55 config: Warning: Obsolete setting in /etc/dovecot/dovecot.conf:81: login_user has been replaced by service { user }
Aug 14 17:55:55 config: Warning: Obsolete setting in /etc/dovecot/dovecot.conf:88: add auth_ prefix to all settings inside auth {} and remove the auth {} section completely&&&& 这时我们需要在&&& /etc/dovecot/目录下面执行& :doveconf -n & dovecot-new.conf&&& 该命令会把&& dovecot.conf& 转化为标准格式的配置文件 。 我们用新生成的文件& dovecot-new.conf 替换掉 dovecont.conf 即可。由于当Postfix要使用SMTP认证时,会读取/usr/lib/sasl2/smtpd.conf文件中的内容,以确定所采用的认证方式,因此如果要使用saslauthd这个守护进程来进行密码认证,就必须确保/usr/lib/sasl2/smtpd.conf文件中的内容为:pwcheck_method: saslauthd&&& 在配置的过程中, 还有一些细节需要注意 :&&& 那就是设置 默认的 MTA,&& 卸载掉& sendmail , 把MTA设置为 postfix,& 另外是设置开机自动启动:&& chkconfig&& saslauthd&on&& chkconfig&& postfix & & & on&& chkconfig&&& dovecot&& on& & 然后用 useradd&& 命令添加一个用户&& zhang , 密码设置为&& 123456&&& 启动服务:&&&&& service&&& postfix&&& restart&&&&& service&&& dovecot&&& restart&&&&& service&&&& saslauthd&&& restart&& 下来配置& outlook,&& 填写 电子邮件地址为 : 账号类型选择& POP3,&& 接收邮件服务器为&&& ,&& 发送邮件服务器也为& 然后用户名为&&&& zhang,&& 密码为&& 123456&&&& 不出意外的话,& 应该可以正常收发邮件了。&& &&&&& 新邮件会保存在服务器的&&& /home/zhang/Maildir/new& & 这个目录里。&&&& 我这个配置比较简单, 是用的服务器本身的密码验证机制。&& postfix 很强大, 可以支持多种认证方式和其他的加密方式。&& 本来想用&& postfixadmin 进行web管理的,& 但是那个配置起来就要更复杂一些了,& 通过web的方式添加用户后, 需要在& home 目录创建对应的用户名的文件夹来保存邮件, 有相关的脚本需要执行,另外认证模式得修改为mysql认证, 配置 稍微复杂, 等下一篇文章在写 postfixadmin 相关的东西吧。附:postcat -q 659D0C3636&& 查看邮件内容postsuper -d ALL&&&&&&&&&&&&&&&&& 清除邮件缓存下面是一篇很好的文章, 讲述反垃圾邮件机制的,值得参考 :http://jsl99./blog/static//
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:1487339次
积分:12155
积分:12155
排名:第764名
原创:113篇
转载:44篇
评论:597条
(1)(1)(7)(2)(1)(1)(2)(1)(4)(4)(9)(16)(14)(3)(2)(11)(2)(2)(1)(4)(7)(3)(6)(2)(2)(3)(5)(5)(8)(4)(3)(11)(1)(7)(1)(1)(2)centos6:postfix添dovecot邮件服务器配置+(CentOS)Centos6.3下搭建postfix/dovecot服务 - 操作系统当前位置:& &&&centos6:postfix添dovecot邮件服务器配置+(CentOS)centos6:postfix添dovecot邮件服务器配置+(CentOS)Centos6.3下搭建postfix/dovecot服务&&网友分享于:&&浏览:1086次centos6:postfix加dovecot邮件服务器配置+(CentOS)Centos6.3下搭建postfix/dovecot服务
# change or add on these line:
myhostname =
mydomain =
myorigin = $mydomain
inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
mynetworks = 127.0.0.0/8
home_mailbox = Maildir/
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination, permit
broken_sasl_auth_clients = yes
# uncomment on this line:
protocols = imap pop3
listen = *
# change on these line:
disable_plaintext_auth = no
auth_mechanisms = plain login
mail_location = maildir:~/Maildir
# commented on these line:
#unix_listener auth-userdb {
#mode = 0600
# change or setup on these line:
# Postfix smtp-auth
unix_listener /var/spool/postfix/private/auth {
mode = 0666
user = postfix
group = postfix
# uncomment on these line:
pop3_uidl_format = %08Xu%08Xv
pop3_client_workarounds = outlook-no-nuls oe-ns-eoh
(CentOS)Centos6.3下搭建postfix/dovecot服务
1.安装和配置dovecot软件 yum install -y dovecot
[ conf.d]# nslookup
& set type=mx
192.168.2.115
192.168.2.115#53
mail exchanger = 5 .
[ conf.d]# dovecot -n
# 2.0.9: /etc/dovecot/dovecot.conf
# OS: Linux 2.6.32-279.el6.x86_64 x86_64 CentOS release 6.3 (Final)
disable_plaintext_auth = no /*配置文件在/etc/dovecot/conf.d/10-auth.conf
login_trusted_networks = 0.0.0.0/0
mail_location = mbox:~/mail:INBOX=/var/mail/%u /*配置文件在/etc/dovecot/conf.d/10-mail.conf
mbox_write_locks = fcntl /*配置文件在/etc/dovecot/conf.d/10-mail.conf
driver = pam
ssl_cert = &/etc/pki/dovecot/certs/dovecot.pem
ssl_key = &/etc/pki/dovecot/private/dovecot.pem
driver = passwd
} /*其余配置文件在/etc/dovecot/dovecot.conf
[ conf.d]#
2.安装和配置postfix软件 yum install -y postfix (Note:postfix配置大部分在/etc/postfix/main.cf下,这里也只需配置该文件即可,根据下面对应修改就好。中英文对译,不是很难,〒_〒)
[ conf.d]# postconf -n
alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
command_directory = /usr/sbin
config_directory = /etc/postfix
daemon_directory = /usr/libexec/postfix
data_directory = /var/lib/postfix
debug_peer_level = 2
html_directory = no
inet_interfaces = all
inet_protocols = all
mail_owner = postfix
mailq_path = /usr/bin/mailq.postfix
manpage_directory = /usr/share/man
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain, mail.$mydomain, pop3.$mydomain, smtp.$mydomain, www.$mydomain
mydomain =
myhostname =
mynetworks = 192.168.2.0/24, 192.168.8.0/24, 127.0.0.0/8
mynetworks_style = subnet
myorigin = $mydomain
newaliases_path = /usr/bin/newaliases.postfix
queue_directory = /var/spool/postfix
readme_directory = /usr/share/doc/postfix-2.6.6/README_FILES
relay_domains = $mydestination
sample_directory = /usr/share/doc/postfix-2.6.6/samples
sendmail_path = /usr/sbin/sendmail.postfix
setgid_group = postdrop
unknown_local_recipient_reject_code = 550
[ conf.d]# cd ..
3.创建用户进行测试 test0和test1 不多说了。使用fixmail进行测试。
相互发送邮件进行测试
12345678910
12345678910
12345678910 上一篇:下一篇:文章评论相关解决方案 12345678910 Copyright & &&版权所有Deidara 的BLOG
用户名:Deidara
文章数:105
评论数:465
访问量:868225
注册日期:
阅读量:5863
阅读量:12276
阅读量:322201
阅读量:1032703
51CTO推荐博文
&&&&&&&&&&& 最近一直在测试 postfix ,发现postfix + dovecot 配置简单不烦琐,dovecot 是后起之秀,下面就来操作,我是如何搭建的。
mai server系统&&&: ubuntu& server 9.04
测试域名&&&& &&&& & :&&
IP地址&&&&&&&&&&&&&& &: 192.168.6.121
测试机系统&&&&& : XP
##在自己的DNS服务器上添加
MX 映射:&&&&&&&&& &IN&&&&& MX&&&&& 10 .
&&&&&&&&&&&&&&&&&&& mail&&&& IN&&&&& A&&&&&&&&& 192.168.6.121&&&&&
安装步骤如下,bind9 部分你可以省略,因为我是内部测试,所以安装内部DNS。
一.& 安装 DNS服务器,我安装的bind9.
shell $& apt-get install bind9
##### 修改域名解析主文件######
shell $& vim /etc/bind/named.conf.local
zone "" {&&&&&&&&&&&&&& file "/etc/";};
####### 建立域名解析文件#######
shell $& vim /etc/
$TTL&&& 86400$.@&&&&&& IN&&&&& SOA&&&& . . (&&&&&&&&&&&&&&&&&&&&&&& &&&&& ;&&&&&&&&&&&&&&&&&&&&&&& 68400&&&&&&&&&& ;&&&&&&&&&&&&&&&&&&&&&&& 86400&&&&&&&&&& ;&&&&&&&&&&&&&&&&&&&&&&& 3600000;&&&&&&& ;&&&&&&&&&&&&&&&&&&&&&&& 36000&& )&&&&&& ;&&&&&&& IN&&&&& NS&&&&& .&&&&&&& IN&&&&& MX&&&&& 10 .www&&&& IN&&&&& A&&&&&& 192.168.6.121mail&&& IN&&&&& A&&&&&& 192.168.6.121ns&&&&& IN&&&&& A&&&&&& 192.168.6.121
####重启DNS 服务器,让配置生效####shell $& /etc/init.d/bind9 restart
二.安装配置 apache+php+mysql
####我就节省时间利用apt-get来安装,如果你是高手,可以编译定制安装###
shell $& apt-get install apache2 php5 php5-mysql php5-imap php5-mcrypt php5-cli& mysql-server& libmysqlclient15-dev
#####在安装mysql-server 的时候会提示你配置mysql root 密码要记得#######
####添加postfix 数据库####
shell $& mysql -u root -p
###输入密码###
Enter password:Welcome to the MySQL monitor.& C or \g.Your MySQL connection id is 58Server version: 5.0.67-0ubuntu6 (Ubuntu)
Type '' or '\h' for help. Type '\c' to clear the buffer.
###添加 postfix 数据库 ####
mysql& creQuery OK, 1 row affected (0.00 sec)mysql& quit
三.安装配置 postfixadmin
1.下载 postfixadmin
shell $& wget -c 'http://downloads.sourceforge.net/project/postfixadmin/postfixadmin/postfixadmin-2.2.1.1/postfixadmin-2.2.1.1.tar.gz?use_mirror=jaist'
2. 安装配置postfixadmin
shell $& tar zxvf postfixadmin-2.2.1.1.tar.gz
shell $& mv postfixadmin-2.2.1.1 /var/www/postfixadmin
shell $& cd /var/www/postfixadmin
shell $& vim config.inc.php
#### 查找 $CONF['configured'] = ###
$CONF['configured'] =
###查找& $CONF['default_language'] = 'en'; ##
$CONF['default_language'] = 'cn';
$CONF['database_type'] = 'mysql';$CONF['database_host'] = 'localhost';$CONF['database_user'] = 'postfix';$CONF['database_password'] = 'postfixadmin';$CONF['database_name'] = 'postfix';$CONF['database_prefix'] = '';
$CONF['database_type'] = 'mysql';$CONF['database_host'] = 'localhost';$CONF['database_user'] = 'root';$CONF['database_password'] = 'yourpassword';$CONF['database_name'] = 'postfix';$CONF['database_prefix'] = '';
3.安装 postfixadmin 数据表##### 修改测试机器 DNS 为 192.168.6.121 这步我就略过了。####
打开浏览器输入&
&650) this.width=650;" onclick='window.open("/viewpic.php?refimg=" + this.src)' alt="" src="/attachment/374765.jpg" border="0" />
最后是 输入 管理员的油箱 和密码点击 Add Admin 按扭。
650) this.width=650;" onclick='window.open("/viewpic.php?refimg=" + this.src)' alt="" src="/attachment/477421.jpg" border="0" />
好,安装成功了!
###回到 maill server 服务器 ###
shell $& mv setup.php setup.php.bak
四. 安装配置 postfix
shell $& wget -c 'ftp://ftp.cuhk.edu.hk/pub/packages/mail-server/postfix/official/postfix-2.6.3.tar.gz'
shell $& tar zxvf& postfix-2.6.3.tar.gz
shell $& cd postfix-2.6.3
建立 postfix 用户
shell $& groupadd -g& 1001&postfix
shell $& groupadd -g& 1002 postdrop
shell $& useradd -u 1001 -g 1001 -G postfdrop -d /dev/null -s /usr/sbin/nologin postfix
shell $& make -f Makefile.init makefiles 'CCARGS=-DHAS_MYSQL -I/usr/include/mysql& -DUSE_SASL_AUTH -DDEF_SERVER_SASL_TYPE=\"dovecot\"' 'AUXLIBS=-L/usr/lib/mysql -lmysqlclient -lz -lm'
shell $& make
shell $& make install&
###出现提示 一路回车就可以了 ######
shell $& cd /etc/postfix
##备份maincf主配置文件
shell $& mv main.cf main.cf.bak
### 创建新的 main.cf 配置文件
shell $& vim& main.cf
command_directory = /usr/sbinconfig_directory = /etc/postfixdaemon_directory = /usr/libexec/postfixdata_directory = /var/lib/postfixdebug_peer_level = 2html_directory = nomail_owner = postfixmailq_path = /usr/bin/mailqmanpage_directory = /usr/local/mannewaliases_path = /usr/bin/newaliasesqueue_directory = /var/spool/postfixreadme_directory = nosample_directory = /etc/postfixsendmail_path = /usr/sbin/sendmailsetgid_group = postdropunknown_local_recipient_reject_code = 550################################################################################myhostname = mydomain = myorigin = $mydomainmydestination =mynetworks = 127.0.0.0/8inet_interfaces = allhome_mailbox = Maildir/############################################################################virtual_alias_maps = mysql:/etc/postfix/mysql/mysql_virtual_alias_maps.cfvirtual_gid_maps = static:33&&&&&&&&& virtual_mailbox_base = /var/vmail&&&&&&&&&&&& ###虚拟用户目录virtual_mailbox_domains = mysql:/etc/postfix/mysql/mysql_virtual_domains_maps.cfvirtual_mailbox_maps = mysql:/etc/postfix/mysql/mysql_virtual_mailbox_maps.cfvirtual_minimum_uid = 33&&&&&&&&&&&&&&&&&&&&&&&&& ### 给 apache 权限。virtual_transport = virtualvirtual_uid_maps = static:33#################################################################################message_size_limit = mailbox_size_limit = virtual_mailbox_limit = virtual_create_maildirsize = yesvirtual_mailbox_extended = yesvirtual_mailbox_limit_maps = mysql:/etc/postfix/mysql/mysql_virtual_mailbox_limit_maps.cfvirtual_mailbox_limit_override = yesvirtual_overquota_bounce = yes#################################################################################smtpd_sasl_auth_enable = yessmtpd_sasl_type = dovecot&&&&&&&&&&&&&& ###定义安装方式& dovecotsmtpd_sasl_path = private/auth-client&&& #####& 路径要与 dovecot 一样,一会要讲到broken_sasl_auth_clients = yessmtpd_recipient_restrictions = permit_mynetworks,&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& permit_sasl_authenticated,&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& reject_invalid_hostname,&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& reject_non_fqdn_hostname,&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& reject_unknown_sender_domain,&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& reject_non_fqdn_sender,&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& reject_non_fqdn_recipient,&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& reject_unknown_recipient_domain,&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& reject_unauth_pipelining,&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& reject_unauth_destination
###创建 mysql 通信文件
shell $& mkdir mysql
shell $& cd mysql
shell $& vim mysql_virtual_alias_maps.cf
user = rootpassword = yourpassword
hosts = localhostdbname = postfixtable = aliasselect_field = gotowhere_field = addressshell $& vim mysql_virtual_domains_maps.cf
user = rootpassword = yourpasswordhosts = localhostdbname = postfixtable = domainselect_field = domainwhere_field = domainshell $& vim mysql_virtual_mailbox_maps.cf
user = rootpassword = yourpasswordhosts = localhostdbname = postfixtable = mailboxselect_field = maildirwhere_field = usernameshell $& vim mysql_virtual_mailbox_limit_maps.cf
user = rootpassword = yourpasswordhosts = localhostdbname = postfixtable = mailboxselect_field = quotawhere_field = username
五.安装配置 dovecot
shell $& apt-get install dovecot-pop3d
shell $&& cd /etc/dovecot
shell $& mv dovecot.conf dovecot.conf.bak&&& ##备份原有dovecot配置文件
shell $& vim& dovecot.conf&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& ## 创建新的 dovecot 配置文件
base_dir = /var/run/dovecot/
protocols = pop3 pop3s
listen = *
disable_plaintext_auth = no
log_path = /var/log/dovecot.log
info_log_path = /var/
log_timestamp = "%Y-%m-%d %H:%M:%S "
ssl_disable = yes
mail_location = maildir:/var/vmail/%u
mail_privileged_group = mail
first_valid_uid = 33
protocol imap {
protocol pop3 {
&&&&& pop3_uidl_format = %08Xu%08Xv
protocol managesieve {
&&&& sieve=~/.dovecot.sieve
&&&& sieve_storage=~/sieve
auth default {
&&& mechanisms = plain login
&& passdb pam {
& passdb sql {&&& args = /etc/dovecot/dovecot-sql.conf& }& userdb passwd {& }
& userdb sql {&&& args = /etc/dovecot/dovecot-sql.conf& }
& user = root& socket listen {&&& client {&&&&& path = /var/spool/postfix/private/auth-client&&&&&&&&&&&&&& ###这里对应 postfix&&smtpd_sasl_path&&&&&&& mode = 0660&&&&&&& user = postfix&&&&&&& group = postfix&&& }& }}
shell $& mv dovecot-sql.conf dovecot-sql.conf.bak
shell $& vim dovecot-sql.conf
driver = mysql
connect = host=localhost dbname=postfix user=root password=yourpassword
default_pass_scheme = MD5-CRYPT
###&& 这里修改为 MD5-CRYPT 是为了与 postfixadmin 想符合,不然验证不过去总提示密码错误!
password_query = SELECT password FROM mailbox WHERE username = '%u'user_query = SELECT maildir, 33 AS uid, 33 AS gid FROM mailbox WHERE username = '%u'shell $& /etc/init.d/dovecot restart
六. 建立 postfix 虚拟用户目录
shell $& mkdir -p /var/vmail
## 赋给 apache& 权限~~~
shell $& chown www-data:www-data /var/vmail -R
七,测试,其实呢测试我不想写了,因为我前边一篇文章有写,我还是写一下吧,让文章完整一些。
1.打开浏览器输入&
650) this.width=650;" onclick='window.open("/viewpic.php?refimg=" + this.src)' alt="" src="/attachment/798078.jpg" border="0" />
输入,我们刚刚建立的管理帐号和密码,点登陆。
2.登陆后,新建域名。如图:
650) this.width=650;" onclick='window.open("/viewpic.php?refimg=" + this.src)' alt="" src="/attachment/999562.jpg" border="0" />
填写完毕后点新增
3.添加完域名后,添加虚拟用户,如图:
650) this.width=650;" onclick='window.open("/viewpic.php?refimg=" + this.src)' alt="" src="/attachment/264750.jpg" border="0" />
点增加邮箱,后在添加一个用户 yang1,如图:
650) this.width=650;" onclick='window.open("/viewpic.php?refimg=" + this.src)' alt="" src="/attachment/330171.jpg" border="0" />
4.添加完毕后,打开 outlook,两个用户配置为:
650) this.width=650;" onclick='window.open("/viewpic.php?refimg=" + this.src)' alt="" src="/attachment/456843.jpg" border="0" />
一定要点上& 我的服务器要求身份验证,不然不能发 email, 用用户 yang& 发给 yang1一份 email测试下,如图:
650) this.width=650;" onclick='window.open("/viewpic.php?refimg=" + this.src)' alt="" src="/attachment/565125.jpg" border="0" />
点发送后,然后点 “发送/接收” 按扭。
650) this.width=650;" onclick='window.open("/viewpic.php?refimg=" + this.src)' alt="" src="/attachment/665890.jpg" border="0" />
收到了~~测试完毕!!
中途遇到什么问题,多看看dovecot,postfix 日志,和mysql 日志~
&本文出自 “” 博客,请务必保留此出处
了这篇文章
类别:┆阅读(0)┆评论(0)
本文收录至博客专题:《》
13:33:36 13:43:19 18:08:11 18:08:42 20:19:35 &&1&
&&页数 ( 1/5 ) &postfix采用dovecot做smtp认证怎么老是过不去_百度知道9246人阅读
配置环境CentOS5.5,查询CentOS版本命令如下:
[root@localhost ~]# lsb_release -a
LSB Version:&&& :core-3.1-ia32:core-3.1-noarch:graphics-3.1-ia32:graphics-3.1-noarch
Distributor ID: CentOS
Description:&&& CentOS release 5.5 (Final)
Release:&&&&&&& 5.5
Codename:&&&&&& Final
关闭sendmail:
[root@localhost ~]# /etc/init.d/sendmail stop
关闭sendmail自启动:
[root@localhost ~]# chkconfig sendmail off
1. 在CentOS5.5中使用yum install postfix会安装postfix-2.3.3-2.3.el5_6,当我们配置使用dovecot认证的时候会出现错误fatal: no SASL authentication mechanisms
2. 在CentOS5.5中使用yum install dovecot会安装dovecot-1.0.7-7.el5,会出现private/auth没有权限问题
正确方法,下载dovecot-1.2.17.tar.gz&&&&& postfix-2.7.3.tar.gz
useradd -s /sbin/nologin -d /dev/null dovecot
tar -zxvf dovecot-1.2.17.tar.gz&&&&&
cd dovecot-1.2.17
./configure && make && make install
cp /usr/local/etc/dovecot-example.conf /usr/local/etc/dovecot.conf
配置dovecot
vi /usr/local/etc/dovecot.conf
base_dir = /var/run/dovecot/
protocols = imap&& pop3 (修改)
listen = *
ssl_disable = yes
login_dir = /var/run/dovecot/login
login_user = dovecot
default_mail_env = maildir:/var/mail/vhosts/%d/%n/&& (修改)
disable_plaintext_auth = no
pop3_uidl_format = %v
passdb passwd-file {
&&&& # Path for passwd-file
&&&& args = /etc/postfix/passwd
userdb passwd-file {
&&&& # Path for passwd-file
&&&& args = /etc/postfix/passwd
&&&& auth default {&& (默认打开)
&&&&&& mechanisms = plain login (修改)
&&&&&& socket listen {
&&&&&&&& client {
&&&&&&&&&& path = /var/spool/postfix/private/auth
&&&&&&&&&& mode = 0660
&&&&&&&&&& user = postfix
&&&&&&&&&& group = postfix
&&&&&&&& }
安装POSTFIX
groupadd -g 12345 postfix
useradd -u 12345 -g postfix -s /sbin/nologin -d /dev/null postfix
groupadd -g 54321 postdrop
groupadd -g 5000 vmail
useradd -u 5000 -g vmail -s /sbin/nologin -d /dev/null vmail
tar -zxvf postfix-2.7.3.tar.gz
cd postfix-2.7.3
make makefiles CCARGS='-DUSE_SASL_AUTH -DDEF_SERVER_SASL_TYPE=\&dovecot\&'
make install
(一路回车)
3, 修改main.cf
vi /etc/postfix/main.cf:
##添加如下代码
#smtp auth&& (SMTP 认证)
smtpd_sasl_auth_enable = yes
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_security_options = noanonymous
smtpd_recipient_restrictions = permit_sasl_authenticated permit_auth_destination reject
#virtual mailbox domain
virtual_mailbox_domains=/etc/postfix/vdomains
virtual_mailbox_base=/var/mail/vhosts
virtual_mailbox_maps=hash:/etc/postfix/vmailbox
virtual_mailbox_uid=100
virtual_uid_maps=static:5000
virtual_gid_maps=static:5000
virtual_alias_maps=hash:/etc/postfix/virtual
添加域名,添加用户
例如要添加的域名:,添加的用户: 密码test
1,添家域名
vi /etc/postfix/vdomains
2,添加用户
vi /etc/postfix/vmailbox
mkdir /var/mail/vhosts
chown vmail.vmail /var/mail/vhosts
postmap /etc/postfix/vdomains
postmap /etc/postfix/vmailbox
postmap /etc/postfix/virtual
3,建立密码文件
vi /etc/postfix/passwd
用户名:{plain}密码:(邮件存储目录的用户和组):: 邮件存储目录
以后在添加用户的时候
添加存在域的用户
&& 密码:test2
1,修改 vmailbox
/etc/postfix/vmailbox
#postmap /etc/postfix/vmailbox
2,修改passwd
/etc/postfix/passwd
} test2:::/var/mail//test2/
添加不存在域的用户,先建立域名
密码:test2006
1,修改vdomains 添加
vi /etc/postfix/vdomains
2,修改 vmailbox
#postmap /etc/postfix/vmailbox
3,修改 pssswd
centos系统安装POSTFIX时需要重新注册下
修改/etc/postfix/main.cf
aliases map&& 的位置&& 指向/etc/postfix/aliases
aliases db&& 的位置&& 指向/etc/postfix/aliases
newaliases
七,&& 启动
#postfix start
#netstat –nlp
查看 110,25 ,143&& 端口是否开放
通过以下命令获得的用户名及密码的BASE64编码:
perl -e 'use MIME::Base64; print encode_base64(&
dGVzdC5jb20=
perl -e 'use MIME::Base64; print encode_base64(&test&)'
然后本机测试,其过程如下(蓝色的文字是我们输入/发送到Postfix的)
[root@smtp root]# telnet localhost 25
Trying 127.0.0.1...
Connected to
(127.0.0.1).
Escape character is '^]'.
220 smtp. ESMTP Postfix
250-PIPELINING
250-AUTH PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
auth login
334 VXNlcm5hbWU6
dGVzdC5jb20=
334 UGFzc3dvcmQ6
235 2.0.0 Authentication successful
mail from:&&
250 2.1.0 Ok
rcpt to:&&
250 2.1.5 Ok
354 End data with &CR&&LF&.&CR&&LF&
250 2.0.0 Ok: queued as 1F2706FDDA
出现235 Authentication Successful 表明认证成功了。
这样 就以发送一封邮件给刚建立的用户
如果上面方式行不通:使用如下测试
[root@localhost sasl2]# perl -MMIME::Base64 -e \
&&&&& 'print encode_base64(&test\@\0test\@\0test&)';
dGVzdEB0ZXN0LmNvbQB0ZXN0QHRlc3QuY29tAHRlc3Q=
[root@localhost sasl2]# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
ESMTP Postfix
auth plain dGVzdEB0ZXN0LmNvbQB0ZXN0QHRlc3QuY29tAHRlc3Q=
235 2.7.0 Authentication successful
postfix warning: dict_nis_init: NIS domain name not set - NIS lookups disabled 解决方法
[root@mail postfix]# postalias /etc/postfix/aliases&
在/etc/postfix/main.cf中加入下面配置信息
alias_database = hash:/etc/postfix/aliases
alias_maps = hash:/etc/postfix/aliases
[root@smtp root]# telnet localhost 110
Trying 127.0.0.1...
Connected to
(127.0.0.1).
Escape character is '^]'.
+OK Dovecot ready.
+OK Logged in.
+OK 1 messages:
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:47384次
排名:千里之外
原创:18篇
(1)(1)(1)(1)(2)(2)(1)(1)(1)(1)(1)(1)(2)(4)(1)

我要回帖

更多关于 postfix dovecot 认证 的文章

 

随机推荐