设为首页 收藏本站
查看: 2926|回复: 6

[经验分享] extmail+dovecot+extmail

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2013-11-5 09:27:15 | 显示全部楼层 |阅读模式
邮件服务器postfix+dovecot+extmail(需要lamp环境)
修改主机IP和主机名以及DNS服务器
114531965.jpg 114518388.jpg
配置DNS服务
shell>vim /var/named/chroot/etc/named.conf #将参数localhost修改为any
115831244.jpg
shell>vim /var/named/chroot/etc/named.rfc1912.zones #添加邮件服务器的管理域
115834621.jpg
shell>vim /var/named/chroot/var/named/gz.com.zone #在域中添加资源记录
115848138.jpg

安装需要的rpm软件包
yum install mysql mysql-devel openssl-devel dovecot perl-DBD-MySQL tcl tcl-devel libart_lgpl libart_lgpl-devel libtool-ltdl libtool-ltdl-devel expect

建立邮件服务器的账号
[iyunv@mail ~]# groupadd -g 2013 postfix
[iyunv@mail ~]# groupadd -g 2014 postdrop
[iyunv@mail ~]# useradd -g postfix -u 2013 -s /sbin/nologin -M postfix
安装postfix
shell>tar -zxvf postfix-2.8.2.tar.gz -C /usr/local/src
shell>cd /usr/local/src/postfix-2.8.2
shell>make makefiles'CCARGS=-DHAS_MYSQL
-I /usr/include/mysql/ -DUSE_SASL_AUTH-DUSE_TLS-DUSE_CYRUS_SASL
-I /usr/include/sasl'
'AUXLIBS=-L/usr/lib/mysql -lmysqlclient -lz -lm -L/usr/lib/sasl2 -lsasl2 -lssl -lcrypto '

Shell>make && make install
install_root: [/]
tempdir: [/usr/local/src/postfix-2.8.2] /tmp (自选)
config_directory: [/etc/postfix]
command_directory: [/usr/sbin]
daemon_directory: [/usr/libexec/postfix]
data_directory: [/var/lib/postfix]
html_directory: [no] /usr/local/apache/postfix(自选)
提取postfix-rpm中的脚本
shell> mkdir /script
shell>cp /mnt/cdrom/Server/postfix-2.3.3-2.1.el5_2.i386.rpm /script
shell>cd /script/
shell>rpm2cpio postfix-2.3.3-2.1.el5_2.i386.rpm |cpio -id
shell>cp -p /script/etc/rc.d/init.d/postfix /etc/init.d/
shell>ln -s /usr/local/postfix/include /usr/include/postfix
shell>vim /etc/profile
shell>vim /etc/ld.so.conf.d/postfix.conf

shell>service postfix start
shell>chkconfig postfix on
shell>vim /etc/postfix/main.cf
75 myhostname = mail.gz.com
83 mydomain = gz.com
113 inet_interfaces = all
这时如果没有问题就可以使用telnet 127.0.0.1 25 测试发信再用mail命令接受信件


postfix验证
Postfix结合mysql验证需要一个smtpd.conf的文件
shell> cd /usr/lib/sasl2
shell> cp -p Sendmail.conf smtpd.conf
shell> vim smtpd.conf
pwcheck_method:authdaemond
log_level:3
mech_list: PLAIN LOGIN
authdaemond_path:/usr/local/courier-authlib/var/spool/authdaemon/socket

shell> service saslauthd start
shell> chkconfig saslauthd on

安装courier-authlib结合mysql数据库实现验证

shell> tar -jxvf courier-authlib-0.63.0.tar.bz2 -C /usr/local/src/
shell> cd /usr/local/src/courier-authlib-0.63.0/

./configure
--prefix=/usr/local/courier-authlib
--sysconfdir=/etc
--with-authmysql
--with-mysql-libs=/usr/lib/mysql  #mysql库文件位置
--with-mysql-includes=/usr/include/mysql
--with-redhat #针对redhat系统进行优化
--with-authmysqlrc=/etc/authmysqlrc  访问数据库的哪个表以什么身份访问写在suthmysqlrc
--with-authdaemonrc=/etc/authdaemonrc 验证时的模块
--with-ltdl-lib=/usr/lib
--with-ltdl-include=/usr/include

shell> make && make install
shell> chmod 755 /usr/local/courier-authlib/var/spool/authdaemon/
shell> cp -p /etc/authdaemonrc.dist /etc/authdaemonrc
shell> cp -p /etc/authmysqlrc.dist /etc/authmysqlrc
shell> vim /etc/authdaemonrc
27 authmodulelist="authmysql"
34 authmodulelistorig="authmysql"

shell> vim /etc/authmysqlrc
26 MYSQL_SERVER localhost
27 MYSQL_USERNAME extmail
28 MYSQL_PASSWORD extmail
49 MYSQL_SOCKET /tmp/mysql.sock
56 MYSQL_PORT 3306
68 MYSQL_DATABASE extmail
83 MYSQL_USER_TABLE mailbox
92 MYSQL_CRYPT_PWFIELD password
103 DEFAULT_DOMAIN gz.com
111 MYSQL_UID_FIELD '2013'
117 MYSQL_GID_FIELD '2013'
126 MYSQL_LOGIN_FIELD username
131 MYSQL_HOME_FIELD concat('/var/mailbox',homedir)
137 MYSQL_NAME_FIELD username
148 MYSQL_MAILDIR_FIELD concat('/var/mailbox',maildir)

shell>cp -p/usr/local/src/courier-authlib-0.63.0/courier-authlib.sysvinit /etc/init.d/courier-authlib
shell> chmod a+x /etc/init.d/courier-authlib
shell>vim /etc/postfix/main.cf (在最后面添加以下内容)

############################CYRUS-SASL############################
broken_sasl_auth_clients = yes
smtpd_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
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = $myhostname
smtpd_sasl_security_options = noanonymous
smtpd_banner = Welcome to our $myhostname ESMTP,Warning: Version not Available!
shell> service courier-authlib start

dovecot验证
shell>vim /etc/dovecot.conf

211 mail_location = maildir:/var/mailbox/%d/%n/Maildir

869 passdb sql {

871 args = /etc/dovecot-mysql.conf

872 }

930 userdb sql {

932 args = /etc/dovecot-mysql.conf

933 }


shell>vim /etc/dovecot-mysql.conf (这个文件没有需要自己创建)

1 driver = mysql

2 connect = host=/tmp/mysql.sock

3 default_pass_scheme = CRYPT

4 password_query = SELECT username AS user,password AS password FROM mailbox WHERE username = '%u'

5 user_query = SELECT maildir, uidnumber AS uid, gidnumber AS gid FROM mailbox WHERE username = '%u'


建设站点 导入数据库 配置虚拟域
建设站点
shell> mkdir -pv /var/mailbox
mkdir: created directory `/var/mailbox'
shell> chown -R postfix /var/mailbox
shell>mkdir -pv /var/www/extsuite
shell>tar zxvf extmail-1.2.tar.gz -C /var/www/extsuite/
shell>tar zxvf extman-1.1.tar.gz -C /var/www/extsuite/
shell>cd /var/www/extsuite/
shell>mv extmail-1.2 extmail
shell>mv extman-1.1 extman

修改extmail和extman目录下cgi的所有者和所有组
修改相关文件的所有者和所属组,并修改webmail.cf配置文件和wenman.cf
shell>cd /var/www/extsuite/extmail/
shell>chown -R postfix:postfix cgi/

shell>cp -p webmail.cf.default webmail.cf
shell>vim webmail.cf
SYS_USER_LANG = zh_CN
SYS_MAILDIR_BASE = /var/mailbox

SYS_MYSQL_USER = extmail
SYS_MYSQL_PASS = extmail
SYS_MYSQL_HOST = localhost


SYS_MYSQL_TABLE = mailbox
SYS_MYSQL_ATTR_USERNAME = username
SYS_MYSQL_ATTR_DOMAIN = domain
SYS_MYSQL_ATTR_PASSWD = password
SYS_AUTHLIB_SOCKET = /usr/local/courier-authlib/var/spool/authdaemon/socket

shell>cd /var/www/extsuite/extman/
shell>chown -R postfix:postfix cgi/
shell>cp webmail.cf.default webmail.cf
shell>cp webman.cf.default webman.cf
SYS_MAILDIR_BASE = /var/mailbox
SYS_CAPTCHA_ON = 0
修改httpd的配置文件
shell>vim /etc/httpd/httpd.conf
LoadModule cgid_module modules/mod_cgid.so

User postfix
Group postfix


AllowOverride None
Options Indexes FollowSymlinks
Require all granted


AllowOverride None
Options Indexes FollowSymlinks
Require all granted


ServerName mail.gz.com
DocumentRoot /var/www/extsuite/extmail/html/
ScriptAlias /extmail/cgi /var/www/extsuite/extmail/cgi
Alias /extmail /var/www/extsuite/extmail/html
ScriptAlias /extman/cgi /var/www/extsuite/extman/cgi
Alias /extman /var/www/extsuite/extman/html

导入数据库并初始化和授权

shell>cd /var/www/extsuite/extman/docs/
shell>mysql -uroot -p <extmail.sql[ font][="" color][="" p][p="28," null,="" left]使用rpm包安装mysql-server不需要修改extmail.sql,是源码安装的mysqlserver需要修改此文件
[p=28," 167)][="" into="" user="" (host,="" user,password,ssl_cipher,x509_issuer,x509_subject)="" values[="" user,="" password,ssl_cipher,x509_issuer,x509_subject)="" p]
('localhost','webman',password('webman'),'Y','Y','Y');


2:将指定的数据引擎删除 TYPE=MyISAM COMMENT='ExtMail - Virtual Aliases',不要把最后的分号也删了
3:将文本类型的默认为空删除


例如 question text NOT NULL default '',改为question text NOT NULL default '',
4:将 can_signup tinyint(1) NOT NULL default '0', 改为can_signup varchar(22) NOT NULL default '0',



shell>mysql -uroot -p
mysql> GRANT all privileges on extmail.* TO extmail@localhost IDENTIFIED BY 'extmail';
mysql> GRANT all privileges on extmail.* TO extmail@127.0.0.1 IDENTIFIED BY 'extmail';
mysql>FLUSH PRIVILEGES; 让设置的内容生效

使邮件服务器支持虚拟域
shell>cp -p /var/www/extsuite/docs/mysql* /etc/postfix
shell>vim /etc/postfix/main.cf
########################Virtual Mailbox Settings########################
virtual_mailbox_base = /var/mailbox
virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_domains_maps.cf
virtual_alias_domains =
virtual_alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cf
virtual_uid_maps = static:2013
virtual_gid_maps = static:2013
virtual_transport = virtual
maildrop_destination_recipient_limit = 1
maildrop_destination_concurrency_limit = 1
##########################QUOTA Settings########################
message_size_limit = 14336000
virtual_mailbox_limit = 20971520
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, the user's maildir has overdrawn his diskspace quota, please Tidy your mailbox and try again later.
virtual_overquota_bounce = yes

安装Unix-Syslog 不然网页不能正常显示
shell>tar -zxvf Unix-Syslog-0.100.tar.gz -C /usr/local/
shell>cd /usr/local
shell>mv Unix-Syslog-0.100/ unix-syslog
shell>cd unix-syslog/
shell>perl Makefile.PL
shell>make && make install

重启所有服务
service named restart
service mysql restart
service saslauthd restart
service courier-authlib restart
service postfix restart
service dovecot restart
service httpd restart
访问站点:http://IP/extmail 管理员登陆账号:root@extmail.org 密码:extmail*123*
创建域,在域中创建账号,进行发信收信验证(在创建域时允许打钩,在创建成功后需要再次确认)
151552955.jpg
151554738.jpg
151555940.jpg
151556140.jpg
151557193.jpg

















运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-10285-1-1.html 上篇帖子: Outlook 2010上的定时发送邮件 下篇帖子: linux邮件服务器 sendmail

尚未签到

发表于 2013-11-13 18:47:26 | 显示全部楼层
只要不下流,我们就是主流!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-11-24 11:14:31 | 显示全部楼层
与时俱进,你我共赴高潮!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-12-3 07:06:20 | 显示全部楼层
花开,若相惜,花落,莫相离

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-12-9 02:38:10 | 显示全部楼层
故事再美,结局还是再见.!!!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-12-12 12:10:42 | 显示全部楼层
要怎么证明,你的亲吻真的残忍.

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

尚未签到

发表于 2013-12-15 13:50:30 | 显示全部楼层
我抢、我抢、我抢沙发~

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表