一、制作本地yum源

1、下载软件包

EMOS_1.6_x86_64下载地址:

2、制作本地 yum 仓库

# yum install createrepo -y

# mkdir /mnt/EMOS

# mount -o loop /path/emos_1.4_i386.iso /mnt/EMOS

# cd /mnt

# createrepo .

3、创建客户端 yum 的定义文件:

# cd /etc/yum.repos.d

# mkdir backup

# mv *.repo ./backup

# vi EMOS.repo

[EMOS]

name=EMOS

baseurl=file:///mnt/

enabled=1

gpgcheck=0

重新获取最新的仓库信息:

# yum clean all

# yum list

二、配置Courier-Authlib

1、安装Courier-Authlib

安装以下软件包:

# yum install courier-authlib courier-authlib-mysql -y

编辑/etc/authlib/authmysqlrc文件:

# vi /etc/authlib/authmysqlrc

并将其内容清空,然后增加如下内容:

MYSQL_SERVER localhost

MYSQL_USERNAME extmail

MYSQL_PASSWORD extmail

MYSQL_SOCKET /var/lib/mysql/mysql.sock

MYSQL_PORT 3306

MYSQL_OPT 0

MYSQL_DATABASE extmail

MYSQL_USER_TABLE mailbox

MYSQL_CRYPT_PWFIELD password

MYSQL_UID_FIELD uidnumber

MYSQL_GID_FIELD gidnumber

MYSQL_LOGIN_FIELD username

MYSQL_HOME_FIELD homedir

MYSQL_NAME_FIELD name

MYSQL_MAILDIR_FIELD maildir

MYSQL_QUOTA_FIELD quota

MYSQL_SELECT_CLAUSE SELECT username,password,"",uidnumber,gidnumber,\

CONCAT('/home/domains/',homedir), \

CONCAT('/home/domains/',maildir), \

quota, \

name \

FROM mailbox \

WHERE username = '$(local_part)@$(domain)'

修改authdaemonrc文件

# vi /etc/authlib/authdaemonrc

修改如下内容:

authmodulelist="authmysql"

authmodulelistorig="authmysql"

2、启动courier-authlib:

# service courier-authlib start

# chkconfig courier-authlib on

如一切正常,命令行将返回如下信息:

Starting Courier authentication services: authdaemond

修改authdaemon socket目录权限

如果该目录权限不正确修改,maildrop及postfix等将无法正确获取用户的信息及密码认证:

# chmod 755 /var/spool/authdaemon/

三、配置MTA-Postfix

1、卸载sendmail,检查postfix是否安装

# rpm -e sendmail

# rpm -qa | grep postfix

2、配置postfix

# postconf -n > /etc/postfix/main2.cf

# mv /etc/postfix/main.cf /etc/postfix/main.cf.old

# mv /etc/postfix/main2.cf /etc/postfix/main.cf

编辑main.cf:

# vi /etc/postfix/main.cf

# hostname

mynetworks = 127.0.0.1//修改

myhostname = mail.extmail.org //修改

mydestination = $mynetworks $myhostname //修改

inet_interfaces = all //修改

# banner

mail_name = Postfix - by extmail.org

smtpd_banner = $myhostname ESMTP $mail_name

# response immediately

smtpd_error_sleep_time = 0s

# Message and return code control

message_size_limit = 5242880

mailbox_size_limit = 5242880

show_user_unknown_table_name = no

# Queue lifetime control

bounce_queue_lifetime = 1d

maximal_queue_lifetime = 1d

设置postfix开机自启:

# chkconfig postfix on

四、配置maildrop

1、安装maildrop

# cd /etc/yum.repos.d

# mv backup/* .

# yum install maildrop -y

# vi /etc/postfix/master.cf

配置master.cf 为了使Postfix支持Maildrop,必须修改/etc/postfix/master.cf文件,注释掉原来的maildrop的配置内容,并改为:

maildrop unix - n n - - pipe

flags=DRhu user=vuser argv=maildrop -w 90 -d ${user}@${nexthop} ${recipient} ${user} ${extension} {nexthop}

注意:flags前面有“两个空格”

# vi /etc/postfix/main.cf

配置main.cf 由于maildrop不支持一次接收多个收件人,因此必须在main.cf里增加如下参数:

maildrop_destination_recipient_limit = 1

2、测试maildrop对authlib支持

# maildrop -v

看是否出现以下内容:

maildrop 2.1.0 Copyright 1998-2005 Double Precision, Inc.

GDBM/DB extensions enabled.

Courier Authentication Library extension enabled.

Maildir quota extension enabled.

This program is distributed under the terms of the GNU General Public

License. See COPYING for additional information.

五、配置Apache

1、虚拟主机设置

安装apache

# yum install httpd -y

# service httpd start

编辑httpd.conf文件:

# vi /etc/httpd/conf/httpd.conf

在最后一行加上:

NameVirtualHost *:80

Include conf/vhost_*.conf

编辑 vhost_extmail.conf

# vi /etc/httpd/conf/vhost_extmail.conf

里面定义虚拟主机的相关内容:

# VirtualHost for ExtMail Solution

ServerName mail.extmail.org

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/

# Suexec config

SuexecUserGroup vuser vgroup

设置apache开机启动

# chkconfig httpd on

六、配置Webmail-ExtMail

1、安装ExtMail

# yum install extsuite-webmail -y

2、编辑webmail.cf

# cd /var/www/extsuite/extmail

# cp webmail.cf.default webmail.cf

# vi webmail.cf

主要变动的内容见下:

SYS_MYSQL_USER = extmail

SYS_MYSQL_PASS = extmail

SYS_MYSQL_DB = extmail

更新cgi目录权限 由于SuEXEC的需要,必须将extmail的cgi目录修改成vuser:vgroup权限:

# chown -R vuser:vgroup /var/www/extsuite/extmail/cgi/

七、配置管理后台-ExtMan

1、yum安装ExtMan

# yum install extsuite-webman -y

更新cgi目录权限 由于SuEXEC的需要,必须将extman的cgi目录修改成vuser:vgroup权限:

# chown -R vuser:vgroup /var/www/extsuite/extman/cgi/

链接基本库到Extmail

# mkdir /tmp/extman

# chown -R vuser:vgroup /tmp/extman

2、数据库初始化

启动Mysql

# service mysqld start

# chkconfig mysqld on

导入mysql数据库结构及初始化数据,root密码默认为空

# mysql -u root -p < /var/www/extsuite/extman/docs/extmail.sql

# mysql -u root -p < /var/www/extsuite/extman/docs/init.sql

3、设置虚拟域和虚拟用户的配置文件

# cd /var/www/extsuite/extman/docs

# cp mysql_virtual_alias_maps.cf /etc/postfix/

# cp mysql_virtual_domains_maps.cf /etc/postfix/

# cp mysql_virtual_mailbox_maps.cf /etc/postfix/

# cp mysql_virtual_sender_maps.cf /etc/postfix/

配置main.cf:

# vi /etc/postfix/main.cf

增加以下内容:

# extmail config here

virtual_alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cf

virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_domains_maps.cf

virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf

virtual_transport = maildrop:

重启postfix :

# service postfix restart

# service httpd restart

4、测试authlib

建立刚才导入mysql的postmaster@extmail.org帐户的Maildir,请输入如下命令:

# cd /var/www/extsuite/extman/tools

# ./maildirmake.pl /home/domains/extmail.org/postmaster/Maildir

# chown -R vuser:vgroup /home/domains/extmail.org

在命令行下执行:

# /usr/sbin/authtest -s login postmaster@extmail.org extmail

结果如下:

Authentication succeeded.

Authenticated: postmaster@extmail.org (uid 1000, gid 1000)

Home Directory: /home/domains/extmail.org/postmaster

Maildir: /home/domains/extmail.org/postmaster/Maildir/

Quota: 104857600S

Encrypted Password: $1$phz1mRrj$3ok6BjeaoJYWDBsEPZb5C0

Cleartext Password: extmail

Options: (none)

这样表明ExtMan的正确安装,数据库也正确导入,courier-authlib能正确连接到mysql数据库

最后访问http://mail.extmail.org/extmail/,如无意外,将看到webmail的登陆页,不过此时还没有加正式的用户,所以不能登陆,包括postmaster@extmail.org也不行。必须要登陆到http://mail.extmail.org/extman/ 里增加一个新帐户才能登陆。

ExtMan的默认超级管理员帐户:root@extmail.org,初始密码:extmail*123*,登陆成功后,建议将密码修改,以确保安全。

5、配置图形化日志

启动mailgraph_ext

# /usr/local/mailgraph_ext/mailgraph-init start

启动cmdserver(在后台显示系统信息)

# /var/www/extsuite/extman/daemon/cmdserver --daemon

加入开机自启动:

# echo "/usr/local/mailgraph_ext/mailgraph-init start" >> /etc/rc.d/rc.local

# echo "/var/www/extsuite/extman/daemon/cmdserver -v -d" >> /etc/rc.d/rc.local

使用方法: 等待大约15分钟左右,如果邮件系统有一定的流量,即可登陆到extman里,点“图形日志”即可看到图形化的日志。具体每天,周,月,年的则点击相应的图片进入即可。

添加定时任务:

# crontab -e

添加以下内容:

0 4 * * * /var/www/extsuite/extman/tools/expireusers.pl -all postmaster@extmail.org

30 4 * * * /var/www/extsuite/extman/tools/reportusage.pl -all /home/domains postmaster@extmail.org

八、配置Cyrus-SASL(smtp发送邮件服务配置)

1、安装cyrus-sasl

删除系统的cyrus-sasl:

# rpm -e cyrus-sasl --nodeps

安装新的支持authdaemon的软件包

# yum install cyrus-sasl cyrus-sasl-plain -y

2、配置main.cf文件

Postfix的SMTP认证需要透过Cyrus-SASL,连接到authdaemon获取认证信息。

编辑main.cf

# vi /etc/postfix/main.cf

增加如下内容:

# smtpd related config

smtpd_recipient_restrictions =

permit_mynetworks,

permit_sasl_authenticated,

reject_non_fqdn_hostname,

reject_non_fqdn_sender,

reject_non_fqdn_recipient,

reject_unauth_destination,

reject_unauth_pipelining,

reject_invalid_hostname,

# SMTP sender login matching config

smtpd_sender_restrictions =

permit_mynetworks,

reject_sender_login_mismatch,

reject_authenticated_sender_login_mismatch,

reject_unauthenticated_sender_login_mismatch

smtpd_sender_login_maps =

mysql:/etc/postfix/mysql_virtual_sender_maps.cf,

mysql:/etc/postfix/mysql_virtual_alias_maps.cf

# SMTP AUTH config here

broken_sasl_auth_clients = yes

smtpd_sasl_auth_enable = yes

smtpd_sasl_local_domain = $myhostname

smtpd_sasl_security_options = noanonymous

3、编辑smtpd.conf文件

# vi /usr/lib64/sasl2/smtpd.conf

确保其内容为:

pwcheck_method: authdaemond

log_level: 3

mech_list: PLAIN LOGIN

authdaemond_path:/var/spool/authdaemon/socket

重新启动postfix和saslauthd:

# service postfix restart

# service saslauthd restart

4、测试SMTP认证

通过以下命令获得postmaster@extmail.org的用户名及密码的BASE64编码:

# perl -e 'use MIME::Base64; print encode_base64("postmaster\@extmail.org")'

内容如下:

cG9zdG1hc3RlckBleHRtYWlsLm9yZw==

# perl -e 'use MIME::Base64; print encode_base64("extmail")'

内容如下:

ZXh0bWFpbA==

然后本机测试:

# telnet localhost 25

其过程如下:

Trying 127.0.0.1...

Connected to localhost.localdomain (127.0.0.1).

Escape character is '^]'.

220 mail.extmail.org ESMTP Postfix - by extmail.org

ehlo demo.domain.tld << 输入内容

250-mail.extmail.org

250-PIPELINING

250-SIZE 10240000

250-VRFY

250-ETRN

250-AUTH LOGIN PLAIN

250-AUTH=LOGIN PLAIN

250-ENHANCEDSTATUSCODES

250-8BITMIME

250 DSN

auth login << 输入内容

334 VXNlcm5hbWU6

cG9zdG1hc3RlckBleHRtYWlsLm9yZw== << 输入内容

334 UGFzc3dvcmQ6

ZXh0bWFpbA== << 输入内容

235 2.0.0 Authentication successful

quit << 输入内容

221 2.0.0 Bye

最后出现235 Authentication Successful 表明认证成功了。

八、配置Courier-IMAP(pop3发送邮件服务配置)

1、安装Courier-imap

默认的courier-authlib及courier-imap都会增加系统自启动设置,因此下一次服务器启动将自动启动相应的authlib及POP3服务

# yum install courier-imap -y

配置courier-imap

由于Courier-imap的IMAP目录是按UTF-7编码的,ExtMail目前还没有正式支持IMAP目录,因此需要屏蔽IMAP,只提供pop3服务。而就目前的使用情况来看,IMAP使用的非常少,绝大部分OutLook/Foxmail用户都习惯使用POP3而非IMAP。

# vi /usr/lib/courier-imap/etc/imapd

修改内容如下:

IMAPDSTART=NO

# vi /usr/lib/courier-imap/etc/imapd-ssl

修改内容如下:

IMAPDSSLSTART=NO

然后重新启动courier-imap:

# service courier-imap start

测试POP3 请按如下步骤输入pop3命令测试其是否正常工作,注意蓝色的信息是我们输入到POP3服务器的(请首先登录extman自行建立test@extmail.org用户,密码:extmail)

# telnet localhost 110

其过程如下:

Trying 127.0.0.1...

Connected to localhost.localdomain (127.0.0.1).

Escape character is '^]'.

+OK Hello there.

user test@extmail.org << 输入内容

+OK Password required.

pass extmail << 输入内容

+OK logged in.

list << 输入内容

+OK POP3 clients that break here, they violate STD53.

.

quit << 输入内容

+OK Bye-bye.

Connection closed by foreign host.

extmail mysql数据库 重启_linux下安装和配置extmail相关推荐

  1. 64位linux安装mysql数据库吗_Linux下安装Mysql数据库

    在Hadoop开发的时候我们要用到mysql数据库,因此我们有必要学习一下怎样在Linux下安装mysql. 第一步:下载MySQL-client-5.1.73-1.glibc23.x86_64.rp ...

  2. linux下安装mysql的方式_linux下安装mysql的两种方式

    linux下安装mysql的两种方式 1 源码安装 1 创建mysql用户: useradd mysql passwd mysql 2 解压缩下载的mysql包: tar -zxvf mysql-5. ...

  3. mysql在linux下配置_mysql数据库在Linux下安装与配置

    二.安装 创建文件/etc/yum.repos.d/mysql-community.repo cd /etc/yum.repos.d/ touch mysql-community.repo 编辑该文件 ...

  4. Linux里下载mysql显示红色_Linux下安装mysql

    到mysql官网下载mysql编译好的二进制安装包,在下载页面Select Platform:选项选择linux-generic,然后把页面拉到底部,64位系统下载Linux - Generic (g ...

  5. extmail mysql数据库 重启_基于POSTFIX的邮件服务器维护总结。

    前言: 这个就是使用EMOS(postfix+extmail+mysql or LDAP)这个系统的一个维护总结.也符合使用其他webmail的postfix系统的维护.一些奇怪的毛病可以从中找到答案 ...

  6. linux怎么配置mysql数据库服务器_linux下指定mysql数据库服务器主从同步的配置实例...

    一. 概念:① 数据库同步  (主从同步 --- 主数据库写的同时 往从服务器写数据) ② 数据库同步  (主主同步 --- 两台数据库服务器互相写数据) 二. 举例数据库服务器(A) 主数据库   ...

  7. linux mysql怎么启动_linux下安装完mysql 怎么启动

    匿名用户 1级 2017-10-17 回答 查找以前是否安装有mysql,使用下面命令: rpm -qa|grep -i mysql 如果显示有如下包则说明已安装mysql mysql-4.1.12- ...

  8. 卸载linux下的mysql数据库实例_Linux下卸载MySQL数据库实例教程

    本文主要介绍了Linux下卸载MySQL数据库的方法,不知道Linux下卸载MySQL数据库的小伙伴们可以学习一下,本文具有一定的参考价值,希望能帮助到大家. 如何在Linux下卸载MySQL数据库呢 ...

  9. 第二个mysql怎么装_Linux下安装两个MySQL的方法

    安装MySQL v4.0.24 #rpm -qa | grep sql 查询系统是否默认安装了mysql服务器 然后卸载系统默认安装的mysql 卸载mysql命令如下: #rpm -e --node ...

  10. rpm mysql java 驱动_Linux下安装MySQL(rpm方式)

    之前一直想捣鼓以源码包的形式安装MySQL,但是不管我下的什么版本的MySQL的tar包,解压都会出错.哎,索性还是走回rpm的安装方式吧. 1:在安装rpm之前,需要把Linux自带的MySQL以及 ...

最新文章

  1. 文件的权限与隐藏属性
  2. 给定一个数组求里面数字拼在一起组成的最小数字
  3. oracle 删除表从回收站恢复
  4. bbs mysql_简单BBS程序(需MySQL支持)
  5. 解决Eclipse Pydev中import时报错:Unresolved import
  6. 这种div高度自适应确定你知道吗?
  7. 第十一章 Shell常用命令与工具(一)
  8. 20170810上课笔记
  9. icesat/glas与SRTM参考椭球、基准对比
  10. 【数学建模暑期培训】CUMCM历年题分类 2000-2021年数模国赛赛题及求解模型
  11. 金山文字 职称计算机,职称计算机:金山文字2005考试大纲
  12. SEO利器 - 网页内容监控之百度自动推送
  13. JS 获取指定日期所在(周或月)第一天和最后一天
  14. 新版标准日本语中级_第二十三课
  15. js限制input的输入字符的长度,区分中英文
  16. matlab中二维插值中cubic方法的实现原理(个人见解)
  17. 两个有序链表合并成一个有序的单链表
  18. 解决IDEA 打不开问题
  19. 晨哥真有料丨女生最难忍受这3件事!
  20. http协议,http状态码,请求,响应

热门文章

  1. matlab腔体滤波器,腔体滤波器基础知识
  2. 【Unity3D入门教程】Unity3D简介、安装和程序发布
  3. 测试显卡游戏里FPS温度性能的软件,求一个在游戏中显示FPS 显卡温度之类的工具...
  4. 博后招募 | 香港中文大学招收机器人视觉智能传感方向博士后/RA/访问学者
  5. 深入游戏变速底层原理以及内核变速的实现
  6. 怎么检查计算机硬盘有没有供电,终于知道电脑硬件怎样全部检测
  7. 「 硬核分享」 ❤️ QQ连连看自动消除外挂完整源码❤️「 复制即用」
  8. 我从Python新手到大师的百天之路(内附学习资源)
  9. 数学笔记12——常微分方程和分离变量
  10. html数值计算计算