文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

linux系统中怎么安装dovecot

2023-06-12 21:28

关注

今天就跟大家聊聊有关linux系统中怎么安装dovecot,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

CentOS系统自带的yum进行安装,安装非常简单,只需要一个包:dovecot

# yum install dovecot

就一切都搞定了

它的主要配置文件也只有一个,位于 /etc/dovecot.conf

base_dir = /var/run/dovecot/ # dovecot运行目录protocols = pop3 pop3s # 使用协议listen = * # 监听连接进来的ip地址,* => 所有的IPV4,[::] => 所有的IPV6disable_plaintext_auth = nolog_path = /var/log/dovecot.log #日志文件位置info_log_path = /var/log/dovecot-info.log # debug信息log_timestamp = “%Y-%m-%d %H:%M:%S ” ssl_disable = yesmail_location = maildir:/var/vmail/%u #用户的邮件目录位置,这里使用maildir方式存储mail_privileged_group = mailprotocol imap {}protocol pop3 {pop3_uidl_format = %08Xu%08Xv}protocol lda {postmaster_address = postmaster@example.com}auth_verbose = yes # 认证详细日志auth_debug = yes # 认证的debug信息打开,可以显示出SQL查询语句,正常后可关闭auth_debug_passwords = yes #可以显示密码失败的详细信息,正常后可关闭auth default {mechanisms = plain login #认证机制passdb pam {}passdb passwd-file {args = /etc/dovecot/passwd #密码文件}userdb passwd {}userdb static {args = uid=vmail gid=vmail home=/var/vmail/%u #这里的uid和gid需要可以访问/home/vmail邮箱目录}user = rootsocket listen {client {path = /var/spool/postfix/private/auth-client #postfix需要连接到这个sock进行认证mode = 0660user = postfixgroup = postfix}}}dict {}plugin {}

/etc/dovecot/passwd,可以使用明码或者是编码后的密码:

user1@example.com:{PLAIN}user1’s passworduser2@example.com:{PLAIN}user2’s password

这里使用了明文密码,也可以使用加密后的密码:

dovecotpw -s sshaEnter new password: fooRetype new password: foo{SSHA}dZ9TYI7DTM+J558QUBRAIMd/WCOoFGeU

在 /etc/dovecot/passwd

joe:{SSHA}dZ9TYI7DTM+J558QUBRAIMd/WCOoFGeU

以上介绍了帐号使用文件存储的方式,下面再介绍一下使用mysql数据库进行帐号存储,只需要修改auth default区块:

auth default {mechanisms = plain loginpassdb pam {}passdb sql {args = /etc/dovecot/dovecot-sql.conf}userdb passwd {}userdb sql {args = /etc/dovecot/dovecot-sql.conf}user = rootsocket listen {client {path = /var/spool/postfix/private/auth-client mode = 0660user = postfixgroup = postfix}}}

/etc/dovecot/dovecot-sql.conf

driver = mysqlconnect = host=/tmp/mysql.sock dbname=postfix user=postfix password=mypassworddefault_pass_scheme = MD5-CRYPT # 如果使用postfixadmin管理,需要用这个加密方式password_query = SELECT username as user, password from mailbox WHERE username = ‘%u’user_query = SELECT maildir, 501 AS uid, 501 AS gid FROM mailbox WHERE username = ‘%u’ #这里uid和gid需要可以访问帐号邮件存储目录

就这么简单,配置完成了,下面我们来进行一下简单的测试:

helo mail.xxx.net250 mail.xxx.net>>> auth login334 VXNlcm5hbWU6>>> dXNlcjFAZXhhbXBsZS5jb20= (Base64后的用户名:user1@example.com)334 UGFzc3dvcmQ6>>> Zm9vYmFy (Base64后的密码:foobar)235 2.7.0 Authentication successful

用plain的方式认证

telnet localhost 25

220 mail.xxx.net ESMTP Postfix>>> auth plain334 >>> AHVzZXIxQGV4YW1wbGUuY29tAGZvb2Jhcg== (Base64后的用户名和密码:\0user1@example.com\0foobar)235 2.7.0 Authentication successful

使用plain方式认证需要注意,用户名和密码需要一起进行编码,用\0作为分隔符。

Base64的方式有很多,最后我们再介绍一个使用Ruby进行编码的方法:

inosin@mac:~ > ruby -rbase64 -e ‘puts Base64.encode64(“\0user1@example.com\0foobar”)’AHVzZXIxQGV4YW1wbGUuY29tAGZvb2Jhcg==inosin@mac:~ > ruby -rbase64 -e ‘puts Base64.encode64(“user1@example.com”)’dXNlcjFAZXhhbXBsZS5jb20=inosin@mac:~ > ruby -rbase64 -e ‘puts Base64.encode64(“foobar”)’Zm9vYmFy

看完上述内容,你们对linux系统中怎么安装dovecot有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注编程网行业资讯频道,感谢大家的支持。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-人工智能
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯