dovecot_dovecot 菜鸟问题 - CSDN
精华内容
参与话题
  • 接上一篇内容,postfix及dovecot基本安装成功,但没有管理界面,不方便操作,下面开始集成postadmin及Roundcube。 一、安装LNMP 推荐一种方便快捷安装方式 https://lnmp.org/install.html 二、配置postfixadmin 1...

    接上一篇内容,postfix及dovecot基本安装成功,但没有管理界面,不方便操作,下面开始集成postadmin及Roundcube。

    一、安装LNMP

    推荐一种方便快捷安装方式 https://lnmp.org/install.html

    二、配置postfixadmin

    1、下载postfixadmin,

    地址:https://sourceforge.net/projects/postfixadmin/,本例使用的是postfixadmin-3.2.tar.gz。
    解压到nginx的网页目录(/chroot/www/postfixadmin/)。

    2、创建配置数据库

    修改配置文件/chroot/www/postfixadmin/config.inc.php

    $CONF['database_type'] = 'mysqli';
    $CONF['database_host'] = '127.0.0.1';
    $CONF['database_user'] = 'postfix';
    $CONF['database_password'] = 'postfix';
    $CONF['database_name'] = 'postfix';
    

    为postfixadmin创建Mysql数据库与权限记录 
    启动数据库,进入数据库
    创建postfix数据库,并创建postfix用户且授权

    mysql> create database postfix; 
    mysql> grant all on postfix.* to postfix@'localhost' identified by 'postfix'; 
    mysql> flush privileges;
    

    测试postfix能否登录成功。

    [root@home html]# mysql -u postfix -p
    Enter password: 
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Your MySQL connection id is 53806
    Server version: 5.6.31 MySQL Community Server (GPL)
     
    Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
     
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
     
    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
    
    mysql> show databases; 
    +--------------------+ 
    | Database           | 
    +--------------------+ 
    | information_schema | 
    | postfix            | 
    | test               | 
    +--------------------+ 
    3 rows in set (0.00 sec) 
    mysql> use postfix 
    Database changed
    mysql> 
    

    安装配置

    打开安装配置界面
    http://ip地址/postfixadmin/public/setup.php
    接下来就是按界面提示配置相关数据库用户名及密码,生成数据结构,设置超级管理员信息。
    在这里插入图片描述

    进入登录界面
    http://ip/postfixadmin/public/login.php
    配置我们需要的域名信息,在域名下创建邮箱信息。
    在这里插入图片描述
    在这里插入图片描述

    配置Postfix

    虚拟域名配置

    在上一次安装的过程中配置支持虚拟域名。
    /etc/postfix/main.cf

    #虚拟域名配置 
    virtual_mailbox_domains = proxy:mysql:/etc/postfix/mysql_virtual_domains_maps.cf 
    virtual_alias_maps = proxy:mysql:/etc/postfix/mysql_virtual_alias_maps.cf 
    virtual_mailbox_maps = proxy:mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf 
    
    # Additional for quota support 
    #virtual_create_maildirsize = yes 
    #virtual_mailbox_extended = yes 
    virtual_mailbox_limit_maps = mysql:/etc/postfix/mysql_virtual_mailbox_limit_maps.cf 
    #virtual_mailbox_limit_override = yes 
    #virtual_maildir_limit_message = Sorry, this user has exceeded their disk space quota, please try again later. 
    #virtual_overquota_bounce = yes 
    #Specify the user/group that owns the mail folders. I'm not sure if this is strictly necessary when using Dovecot's LDA. 
    virtual_uid_maps = static:5000
    virtual_gid_maps = static:5000
    proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virtual_alias_domains $virtual_mailbox_maps $virtual_mailbox_domains $relay_recipient_maps $relay_domains $canonical_maps $sender_canonical_maps $recipient_canonical_maps $relocated_maps $transport_maps $mynetworks $virtual_mailbox_limit_maps
    

    注意:
    virtual_uid_maps = static:5000
    virtual_gid_maps = static:5000
    这里根据实现情况修改默认的用户ID及用户组ID号,当前配置使用的是5000

    创建Mysql脚本

    创建/etc/postfix/mysql_virtual_domains_maps.cf文件

    [root@home ~]# vim /etc/postfix/mysql_virtual_domains_maps.cf 
    user = postfix 
    password = postfix 
    hosts = 127.0.0.1  
    dbname = postfix 
    query = SELECT domain FROM domain WHERE domain='%s' AND active = '1'
    

    创建/etc/postfix/mysql_virtual_alias_maps.cf文件

    [root@home ~]# vim /etc/postfix/mysql_virtual_alias_maps.cf 
    user = postfix 
    password = postfix 
    hosts = 127.0.0.1  
    dbname = postfix 
    query = SELECT goto FROM alias WHERE address='%s' AND active = '1'
    

    创建/etc/postfix/mysql_virtual_mailbox_maps.cf文件

    [root@home ~]# vim /etc/postfix/mysql_virtual_mailbox_maps.cf 
    user = postfix 
    password = postfix 
    hosts = 127.0.0.1  
    dbname = postfix 
    query = SELECT CONCAT(domain,'/',maildir) FROM mailbox WHERE username='%s' AND active = '1'
    

    创建/etc/postfix/mysql_virtual_mailbox_limit_maps.cf文件

    [root@home ~]# vim /etc/postfix/mysql_virtual_mailbox_limit_maps.cf 
    user = postfix 
    password = postfix 
    hosts = 127.0.0.1 
    dbname = postfix 
    query = SELECT quota FROM mailbox WHERE username='%s' AND active = '1'
    

    SMTP 认证设定

    SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式 
    查看postfix支持的认证,默认支持dovecot

    [root@home ~]# postconf -a 
    cyrus 
    dovecot
    

    修改/etc/postfix/main.cf配置文件
    用系统用户SMTP认证配置如下(修改前)

    smtpd_sasl_type = dovecot 
    smtpd_sasl_path = private/auth 
    smtpd_sasl_auth_enable = yes
    smtpd_sasl_security_options = noanonymous 
    smtpd_sasl_local_domain = $myhostname 
    

    修改为以下配置内容(修改后)

    smtpd_sasl_auth_enable = yes 
    smtpd_sasl_type = dovecot 
    smtpd_sasl_path = /var/run/dovecot/auth-client 
    smtpd_sasl_security_options = noanonymous 
    broken_sasl_auth_clients = yes 
    smtpd_recipient_restrictions =  permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination
    

    使用Dovecot做为投递

    [root@home ~]# vim /etc/postfix/main.cf 
    # TRANSPORT MAP 
    virtual_transport = dovecot 
    dovecot_destination_recipient_limit = 1 
    

    #修改master.cf文件

    [root@home ~]# vim /etc/postfix/master.cf 
    #在最后增加这两行,注意flags前面有两个空格,不然会报错 
    dovecot   unix  -       n       n       -       -       pipe
      flags=DRhu user=vmail:vmail argv=/usr/libexec/dovecot/dovecot-lda -f ${sender} -d ${recipient}
    

    二、配置dovecot

    前面已经安装了dovecot,现在配置dovecot的配置文件,主要是集成数据库相关配置。

    修改配置

    修改/etc/dovecot/dovecot.conf

    [root@home ~]# vim /etc/dovecot/dovecot.conf 
    protocols = imap pop3 
    listen = * 
    dict { 
       quota = mysql:/etc/dovecot/dovecot-dict-sql.conf.ext 
    } 
    !include conf.d/*.conf
    

    修改/etc/dovecot/conf.d/10-auth.conf

    [root@home ~]# vim /etc/dovecot/conf.d/10-auth.conf 
    disable_plaintext_auth = no 
    auth_mechanisms = plain login cram-md5 
    !include auth-sql.conf.ext
    

    修改/etc/dovecot/conf.d/10-mail.conf

    [root@home ~]# vim /etc/dovecot/conf.d/10-mail.conf 
    mail_location = maildir:%hMaildir 
    mbox_write_locks = fcntl
    

    修改/etc/dovecot/conf.d/10-master.conf

    [root@home ~]# vim /etc/dovecot/conf.d/10-master.conf 
    service imap-login { 
       inet_listener imap { 
       } 
       inet_listener imaps { 
       } 
    } 
    service pop3-login { 
       inet_listener pop3 { 
       } 
       inet_listener pop3s { 
       } 
    } 
    service lmtp { 
       unix_listener lmtp { 
       } 
    } 
    service imap { 
    } 
    service pop3 { 
    } 
    service auth { 
       unix_listener auth-userdb { 
          mode = 0600 
          user = vmail 
          group = vmail 
       } 
       #新加下面一段,为smtp做认证 
       unix_listener auth-client { 
          mode = 0600 
          user = postfix 
          group = postfix 
       } 
    }
    service auth-worker { 
    } 
    service dict { 
       unix_listener dict { 
       mode = 0600 
       user = vmail 
       group = vmail 
      } 
    }
    

    修改/etc/dovecot/conf.d/15-lda.conf

    [root@home ~]# vim /etc/dovecot/conf.d/15-lda.conf 
    protocol lda { 
      mail_plugins = quota
      postmaster_address = postmaster@free.com #管理员邮箱 
    }
    

    修改/etc/dovecot/conf.d/20-imap.conf

    [root@home ~]# vim /etc/dovecot/conf.d/20-imap.conf 
    protocol imap { 
            mail_plugins = quota imap_quota 
    }
    

    修改/etc/dovecot/conf.d/20-pop3.conf

    [root@home ~]# vim /etc/dovecot/conf.d/20-pop3.conf
    pop3_uidl_format = %08Xu%08Xv  
    protocol pop3 {
      mail_plugins = quota
    }
    

    修改/etc/dovecot/conf.d/90-quota.conf

    [root@home ~]# vim /etc/dovecot/conf.d/90-quota.conf 
    plugin { 
       quota_rule = *:storage=1G 
    } 
    plugin { 
    } 
    plugin { 
       quota = dict:User quota::proxy::quota
    } 
    plugin { 
    }
    
    

    添加配置

    增加新文件/etc/dovecot/dovecot-sql.conf.ext

    [root@home ~]# vim /etc/dovecot/dovecot-sql.conf.ext 
    driver = mysql 
    connect = host=localhost dbname=postfix user=postfix password=postfix 
    default_pass_scheme = CRAM-MD5 
    user_query = SELECT CONCAT('/var/vmail/', maildir) AS home, 5000 AS uid, 5000 AS gid, CONCAT('*:bytes=', quota) as quota_rule FROM mailbox WHERE username = '%u' AND active='1'
    password_query = SELECT username AS user, password, CONCAT('/var/vmail/', maildir) AS userdb_home, 2000 AS userdb_uid, 2000 AS userdb_gid, CONCAT('*:bytes=', quota) as userdb_quota_rule FROM mailbox WHERE username = '%u' AND active='1'
    

    注意: 这里的uid及gid也是使用当前系统vmail用户的信息。

    增加新文件/etc/dovecot/dovecot-dict-sql.conf.ext

    [root@home ~]# vim /etc/dovecot/dovecot-dict-sql.conf.ext 
    connect = host=localhost dbname=postfix user=postfix password=postfix 
    map { 
       pattern = priv/quota/storage
       table = quota2 
       username_field = username 
       value_field = bytes 
     } 
     map { 
       pattern = priv/quota/messages
       table = quota2 
       username_field = username 
       value_field = messages 
    }
    

    三、配置Roundcubemail

    下载Roundcubemail

    下载Roundcubemail(注意下载roundcubmail版本与php版本的兼容问题,本例使用的是roundcubemail-1.2.9.tar.gz),地址:https://roundcube.net,并且解压到nginx目录中(chroot/www/webmail)

    创建数据库

    mysql> CREATE DATABASE roundcubemail; 
    Query OK, 1 row affected (0.00 sec) 
    mysql> GRANT ALL PRIVILEGES ON roundcubemail.* TO roundcubemail@localhost IDENTIFIED BY 'roundcubemail'; 
    FLUSH PRIVILEGES;Query OK, 0 rows affected (0.01 sec) 
    mysql> FLUSH PRIVILEGES; 
    Query OK, 0 rows affected (0.00 sec)
    

    安装配置

    在浏览器中访问roundcubemail的安装界面,
    地址:http://ip地址/webmail/installer/index.php?_step=1
    根据界面提示配置相关信息…
    在这里插入图片描述

    根据界面提示需要打开php相关配置、添加相关扩展,生成相关数据配置信息即可。

    如果在第三步中验证没有问题,那说明基本通信是正常了。
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述

    进入管理界面

    根据在postfixadmin中创建的邮箱及密码,在以下地址登录。
    地址: http://ip地址/webmail/?_task=mail&_err=session

    在这里插入图片描述
    在这里插入图片描述

    四、测试验证

    内部邮件

    在这里插入图片描述
    在这里插入图片描述

    向外邮件

    在这里插入图片描述
    在这里插入图片描述

    接收邮件

    在这里插入图片描述
    在这里插入图片描述

    总结

    前前后后也花费了不少时间,心疼的两个周末,不过总算结果是好的。主要问题出现在对email发送的流程不够理解,修改配置文件不够小心。当前只是demo走通,距离正式投入使用还有一些距离,例如SSL加密协议证书配置、数据备份机制、安全问题等有待解决。

    Postfix+Dovecot+PostfixAdmin+Roundcube配置调试源码可在以下地址下载:
    https://download.csdn.net/download/xianglingchuan/10993649

    展开全文
  • Dovecot

    2019-06-13 21:27:30
    Dovecot配置收件服务 1.创建运行用户 1)useradd -M -s /sbin/nologin dovecot 2)useradd -M -s /sbin/nologin dovenull 2.源代码编译安装 1)tar -zxvf /root/dovecot-2.2.31.tar.gz -C /usr/src/ 2)...

    Dovecot配置收件服务

    1.创建运行用户

    1)useradd -M -s /sbin/nologin dovecot

    2)useradd -M -s /sbin/nologin dovenull

     


    2.源代码编译安装

    1)tar -zxvf /root/dovecot-2.2.31.tar.gz -C /usr/src/  

         

    2)cd /usr/src/dovecot-2.2.31/

    3)./configure --sysconfdir=/etc/                    //配置dovecot的配置文件存储目录

    4)make && make install


    3.拷贝模版文件

    1)cp doc/dovecot-initd.sh /etc/init.d/dovecot                //拷贝启动脚本文件

    2)chmod +x /etc/init.d/dovecot

    3)chkconfig --add dovecot                        //将dovecot注册为系统服务

    4)cp -r /usr/local/share/doc/dovecot/example-config/* /etc/dovecot/    //拷贝模版配置文件

    4.新建PAM认证模块

    vim /etc/pam.d/dovecot


    #%PAM-1.0

    auth    required    pam_nologin.so
    auth    include        system-auth
    account    include        system-auth
    session    include        system-auth

    5.编辑配置文件

    vim /etc/dovecot/dovecot.conf


    !include conf.d/10-auth.conf                //只使用系统用户认证

    ssl = no                        //禁用SSL

    disable_plaintext_auth = no                //允许明文验证

    mail_location = maildir:~/Maildir            //指定邮箱的位置

    #!include conf.d/*.conf                    //注释该行,位于102行


    6.启动服务并验证

    /etc/init.d/dovecot restart                //重启dovecot服务

    telnet mail.xueluo.org 110                //连接到邮件服务器的110端口(POP3)


    USER haha            //指定登录用户

    PASS 123            //指定用户

    LIST                //查看邮件列表

    RETR 1                //查看你第一封邮件

    QUIT

    展开全文
  • dovecot配置

    千次阅读 2013-11-04 14:18:13
     ... ...dovecot的配置很多,但如果要让dovecot能正常的运行收...在此,子猴也根据自己的配置经历来简单记录一下让Dovecot正确运行收信需要做哪些配置,当然我自己觉得对dovecot配置还不太熟,因为有很多的配置项
    

    转自:http://www.zihou.me/html/2012/01/17/6596.html  子猴博客



    dovecot的配置很多,但如果要让dovecot能正常的运行收信,配置的地方也不多,因为很多地方使用默认值即可。在此,子猴也根据自己的配置经历来简单记录一下让Dovecot正确运行收信需要做哪些配置,当然我自己觉得对dovecot配置还不太熟,因为有很多的配置项我都是按照默认的设置,且其含义我都并不清楚,有待进一步地研究。

    在dovecot.conf中的配置
    1、protocols = imap pop3 lmtp
    如果protocols的值不全,比如没有pop3等值请补全

    2、base_dir = /var/run/dovecot/
    这个项并不是必须的,但如果其是被注释掉的也可以打开并保留期默认值。

    3、login_trusted_networks = 0.0.0.0/0
    如果你是想通过Foxmail等客户端工具来收信,则此值必须设置,其值设为0.0.0.0/0即可,设置后,disable_plaintext_auth这个设置也就可以不用理会了,如果不设置的话会报错:
    plaintext authentication disallowed on non-secure connections

    以上是dovecot.conf中的几个配置,看起来也不多啊,另外还须对conf.d目录中的文件进行配置。

    在10-mail.conf中的配置

    mail_location = mbox:~/mail:INBOX=/var/mail/%u
    如果10-mail.conf中是没有配置这个项的,那一定得配上,表示邮件存放路径是在哪里的,%u就表示邮箱用户名。
    如果不配置此项会报错:
    Initialization failed: mail_location not set and autodetection failed: Mail storage autodetection failed

    除了上面的几处设置,其它的都是按照默认的设置,不过现在已经可以和Postfix搭配来收发邮件了。

    dovecot的安装请参见:http://www.zihou.me/html/2012/01/13/6549.html

    展开全文
  • 配置dovecot服务

    2019-05-23 13:03:23
    3.配置dovecot服务 问题 沿用练习一、二,在已实现Postfix发信功能的基础之上,为了方便邮箱用户收取各自的电子邮件,需要进一步提供专门的收信服务。本案例要求采用Dovecot软件来实现。 需要完成的配置任务如下:...

    3.配置dovecot服务
    问题
    沿用练习一、二,在已实现Postfix发信功能的基础之上,为了方便邮箱用户收取各自的电子邮件,需要进一步提供专门的收信服务。本案例要求采用Dovecot软件来实现。
    需要完成的配置任务如下:
    1)安装 dovecot 软件包
    2)允许明文验证、指定tedu.cn邮箱路径
    3)启动 dovecot 服务
    方案
    步骤
    实现此案例需要按照如下步骤进行。
    步骤一:安装 dovecot 软件包
    [root@mail ~]# yum -y install dovecot
    [root@mail ~]# chkconfig dovecot on
    步骤二:调整dovecot 服务配置、启动服务
    1)修改dovecot服务的认证配置,允许明文认证
    [root@mail ~]# vim /etc/dovecot/conf.d/10-auth.conf
    … …
    disable_plaintext_auth = no //打开注释,并将yes改为no
    2)修改dovecot服务的邮箱配置,匹配到用户邮箱目录
    [root@mail ~]# vim /etc/dovecot/conf.d/10-mail.conf
    … …
    mail_location = maildir:~/Maildir //正确指定邮箱类型及路径
    3)启动dovecot服务,并设为开机自动运行
    [root@mail ~]# service dovecot restart
    [root@mail ~]# netstat -anpt | grep dovecot //确认监听状态
    tcp 0 0 :::110 ::? LISTEN 12694/dovecot
    tcp 0 0 :::143 ::? LISTEN 12694/dovecot

    展开全文
  • Dovecot是一个安全性较好的POP3/IMAP服务器软件,响应速度快而且扩展性好 POP3 / IMAP 是 MUA 从邮件服务器中读取邮件时使用的协议。其中,POP3是从邮件服务器中下载邮件,而IMAP则是将邮件留在服务器端直接对邮件...
  • Dovecot配置笔记

    2012-06-19 15:45:13
    Dovecot是一个开源的,为Linux/Unix-like系统提供IMAP,POP3服务的软件。主要是为了安全产生的,不管大小应用,Dovecot都是一个非常优秀的选择。它非常快,配置简单,不需要专业的管理员,而且它也非常节省内存。 ...
  • 1.下载yum insatll dovecot dovecot-mysql -y —— dovecot-mysql为 dovecot的插件,让dovecot可以识别mysql2.配置[root@westos-mail ~]# vim /etc/dovecot/dovecot.conf ##编辑dovecot主配置文件 24 protocols = ...
  • POP / IMAP 服务器的构建( Dovecot

    千次阅读 2007-11-24 23:42:00
    原贴:http://www.centospub.com/make/dovecot_pop3.html    (最近更新日:2006/10/11) 前言
  • 配置postfix和dovecot启用SSL以加密连接

    千次阅读 2017-11-23 07:56:55
    接上文,本机生成了自签名的SSL证书。下面在postfix和dovecot上配置启用SSL以加密连接。SMTPS使用465/TCP, POP3S使用995/TCP, IMAPS 使用993/TCP. 1 . 配置postfix和dovecot启用SSL。
  • 修改postfix和dovecot的认证方式

    千次阅读 2019-12-26 10:01:13
    在上一文中介绍了在Ubuntu 16.04布置postfix、dovecot邮件服务器的方法,本文紧接着上一文,主要介绍修改postfix认证方式和dovecot的认证方式。 二、修改postfix认证方式为sasl-auth 2.1 安装sasl2-bin 想要...
  • 一、引言  postfix是Wietse Venema在IBM的GPL协议之下开发的MTA(邮件传输代理)软件,也就是我们常说的SMTP服务端。postfix是Wietse Venema想要为使用最广泛的...而Dovecot 是一个开源的 IMAP 和 POP3 邮件服务
  • 上一篇文章我们搭建了postfix搭建了SMTP服务器(MTA),SMTP邮件服务器已经ok,但是光发送邮件还满足不了我们的邮件服务器的需求,我们还需要一个能够接受邮件的POP3/IMAP...我们使用dovecot构建我们的收件服务器 依赖
  • 邮件服务器搭建(postfix+dovecot+foxmail)

    千次阅读 热门讨论 2018-03-25 20:46:16
    一、安装postfix 系统里一般会有,不用安装 没有的(yum install -y postfix)查看安装版本 postconf -d | grep mail_version二、修改配置文件 配置文件(安装vim命令不安装可以使用的vi)yum -y install vim ...
  • 基于CentOS搭建Postfix、Dovecot邮件服务

    万次阅读 2017-10-17 23:24:30
    1. 准备域名 域名注册 域名解析域名购买完成后, 需要将域名解析到你的服务器IP完成该实验共需要添加两条记录:A 记录记录类型:A 主机记录:@ 记录值:yourip MX 记录记录类型:MX 主机记录:@ ...
  • dpkg: warning: files list file for package 'libquadmath0:amd64' missing; assuming package has no files currently installed (Reading database ... 79 files and directories currently installed.) ...
  • 1、软件说明:  Postfix是用来收发邮件的,它没有web页面,所以要配合本地的MUA(类似于foxmail,outlook之类...作为IMAP和POP3服务器,Dovecot并不负责从其他邮件服务器接收邮件,Dovecot只是将已经存储在邮件服务器
  • dovecot 证书生成(2012-10-13 01:12:41) 转载▼ 标签: 杂谈   启动dovecot报错 2012-04-12 11:19:22|分类: 服务器|字号订阅 [root@wlt sbin]# ./dovecot ...
  • [root@VM_0_4_centos ~]# service dovecot start Starting Dovecot Imap: Error: socket() failed: Address family not supported by protocol Error: service(pop3-login): listen(::, 110) failed: Addres...
  • 测试环境使用 Ubuntu 11.04,Postfix 2.8.2,Dovecot 1.2.15,其他版本可参照。 首先说明基本的背景知识。一个邮件服务器通常包括如下两个基本组件: Mail Transfer Agent (MTA),用于向收件人的目标 agen
  • 1. 安装软件1.1 更新yum源yum update1.2 排除默认Postfix源CentOS 7主源中自带的Postfix版本并不支持MariaDB;所以,我们将从CentOS Plus源中进行安装。在此之前,我们在[base]和[updates]源中过滤掉Postfix,防止...
1 2 3 4 5 ... 20
收藏数 5,010
精华内容 2,004
关键字:

dovecot