手机版
你好,游客 登录 注册
背景:
阅读新闻

Ubuntu下安装Postfix+Extmail邮件服务器

[日期:2013-05-25] 来源:Linux社区  作者:151wqooo [字体: ]

系统:Ubuntu-10.04.3-server-amd64

Ubuntu下安装Postfix+Extmail邮件服务器相关附件下载:

免费下载地址在 http://linux.linuxidc.com/

用户名与密码都是www.linuxidc.com

具体下载目录在 /2013年资料/5月/25日/Ubuntu下安装Postfix+Extmail邮件服务器

------------------------------------------------------------------------------------

安装LAMP环境

sudo apt-get install apache2

sudo apt-get install mysql-server-5.0 mysql-client-5.0

sudo apt-get install php5 libapache2-mod-php5

sudo /etc/init.d/apache2 restart

 

接下来修改apache2的配置文件。

sudo vim /etc/apache2/apache2.conf

 

把下面的代码全部考到文件的最后。

1
2
3
4
5
6
AddType application/x-httpd-php .php .htm .html
AddDefaultCharset UTF-8
ServerName 127.0.0.1
<IfModule dir_module>
DirectoryIndex index.htm index.html index.php
</IfModule>

重新启动

/etc/init.d/apache2 restart

/etc/init.d/mysql restart 

 

apt-get install liblzo2-2

 

apt-get install libstdc++6-4.4-dev

apt-get install postfix postfix-mysql postfix-doc mysql-client mysql-server courier-authdaemon courier-authlib-mysql courier-pop courier-pop-ssl courier-imap courier-imap-ssl libsasl2-modules libsasl2-modules-sql sasl2-bin libpam-mysql openssl phpmyadmin apache2 libapache2-mod-fastcgi libfcgi-perl libapache2-mod-php5 php5 php5-mysql build-essential libtool libnet-server-perl libnet-cidr-perl libberkeleydb-perl arc zoo lzop libgd-gd2-perl libfile-tail-perl libdigest-sha1-perl libdigest-HMAC-perl libnet-ip-perl libnet-dns-perl libhtml-tagset-perl libhtml-parser-perl libio-stringy-perl libio-multiplex-perl libio-socket-ssl-perl libio-zlib-perl libnet-ssleay-perl libunix-syslog-perl libtimedate-perl libmailtools-perl libconvert-binhex-perl libconvert-tnef-perl libconvert-uulib-perl libcompress-zlib-perl libarchive-zip-perl perl-suid apache2-suexec 

你会被询问以下问题:

Create directories for web-based administration? <-- No

General type of mail configuration: <-- Internet Site

System mail name: <-- mail.extmail.org(直接改成要用的域名:mail.object.com 待测试)

 

a2enmod suexec //打开apache2 suexec支持

a2enmod fastcgi //打开apache2 fastcgi支持

sudo /etc/init.d/apache2 restart 

Extmail 是一个以perl语言编写,面向大容量/ISP级应用,免费的高性能Webmail软件,主要包括ExtMail、 Extman两个部分的程序套件。ExtMail套件用于提供从浏览器中登录、使用邮件系统的Web操作界面,而Extman套件用于提供从浏览器中管理邮件系统的Web操作界面。

下载extmail,并修改配置

我用的是ExtMail 1.1.0.tar.gz和ExtMan 1.0.0.tar.gz

tar zxvf extmail-1.1.0.tar.gz

tar zxvf extman-1.0.0.tar.gz

mkdir /var/www/extsuite

mv extmail-1.1.0 /var/www/extsuite/extmail

mv extman-1.0.0 /var/www/extsuite/extman

cp /var/www/extsuite/extman/docs/mysql_virtual_*.cf /etc/postfix/

 

注意:修改/etc/postfix/mysql_virtual_*.cf,将其中的“localhost”均改为“127.0.0.1”

(:g/a/s//b/g将文中所有a均用b替换(或者:%s/a/b/g)

Sudo sed –i ‘/localhost/s/localhost/127.0.0.1/’ file*)

chmod o= /etc/postfix/mysql_virtual_*.cf

chgrp postfix /etc/postfix/mysql_virtual_*.cf

 

注:如果打算使用默认用户vuser:vgroup,那么需创建此用户,且uid:gid为1001:1001.而本文为了以后方便,使用的是手动创建的用户vmail,所以需修改下边这些文件中的相关参数.

新建一个用户vmail组为vmail uid和gid为1001,不允放登录。用户下用来存放所有的用户的邮件

groupadd -g 1001 vmail

useradd -m -g vmail -u 1001 -d /home/vmail -s /bin/bash vmail

id vmail

 

注:如果打算使用默认用户vu修改uid和gid 由于程序中默认使用的为vuser:vgroup,其uid:gid为1001:1001。而当前采用了一个新建用户vmail,所以需修改程序中的所有相关参数,具体操作如下:

chown -R vmail:vmail /var/www/extsuite/extmail/cgi/

chown -R vmail:vmail /var/www/extsuite/extman/cgi/

 

cd /var/www/extsuite/extmail/

cp webmail.cf.default webmail.cf

修改/var/www/extsuite/extmail/webmail.cf里的其他参数,主要变动的内容见下:

gedit webmail.cf

1
2
3
4
5
6
7
8
9
10
11
SYS_USER_LANG = zh_CN
SYS_USER_CHARSET = gb2312
SYS_MYSQL_USER = root
SYS_MYSQL_PASS = 123
SYS_MYSQL_DB = extmail
SYS_MYSQL_HOST = 127.0.0.1
SYS_MYSQL_SOCKET = /var/run/mysqld/mysqld.sock
SYS_AUTHLIB_SOCKET = /var/run/courier/authdaemon/socket
SYS_G_ABOOK_FILE_CHARSET = gb2312
SYS_MAILDIR_BASE = /home/vmail
SYS_MESSAGE_SIZE_LIMIT = 102400000 //注:这个选项为修改附件的大小,默认为5M,你可以自行修改,这里面改了是不行的,还要去postfix里面修改,我在下面会讲到。

 

vi ../extman/webman.cf

cp webman.cf.default webman.cf

vi webman.cf

 

1
2
3
4
5
6
7
8
9
10
11
SYS_CAPTCHA_ON = 0 //用于关闭后台登录时的验证码
SYS_MAILDIR_BASE = /home/vmail
SYS_DEFAULT_UID = 1001
SYS_DEFAULT_GID = 1001
SYS_MYSQL_USER = root
SYS_MYSQL_PASS = 123
SYS_MYSQL_DB = extmail
SYS_MYSQL_HOST = 127.0.0.1
SYS_MYSQL_SOCKET = /var/run/mysqld/mysqld.sock
SYS_LANG = zh_CN
SYS_GROUPMAIL_SENDER = postmaster@extmail.org //注: 这个选项是,你在后台群发后,用户收到邮件的发件人地址,你可以自行修改。

Cd ..

Cd extmail 

 

gedit dispatch-init

SU_UID=vmail

SU_GID=vmail

 

gedit dispatch_lig.sh

BASE=/var/www/extsuite/extmail

$BASE/tools/suid-with -u vmail -g vmail /usr/bin/perl $BASE/dispatch.fcgi

:q

cd ../extman/

gedit tools/setid.pl

set_gid('vmail');

set_uid('vmail');

 

gedit tools/adminctl.pl

--setgid=vmail

--setuid=vmail

 

gedit tools/userctl.pl

--setgid=vmail

--setuid=vmail

 

gedit tools/aliasctl.pl

--setgid=vmail

--setuid=vmail

 

gedit tools/domainctl.pl

--setgid=vmail

--setuid=vmail

 

注:这上面实际上都是把vuser改成vmail,vgroup改成vmail.

 

gedit contrib/passwd2ext.pl

my $sock = '/var/run/mysqld/mysqld.sock';

my $uid = '1001';

my $gid = '1001';

 

gedit libs/Ext/Mgr/LDAP.pm

uidNumber => $opt{uidnumber} || '1001', //349行

gidNumber => $opt{gidnumber} || '1001', //350行

uidNumber => $opt{uidnumber} || '1001', //541行

gidNumber => $opt{gidnumber} || '1001', //542行

 

gedit docs/init.ldif

uidNumber: 1001

gidNumber: 1001

 

gedit /var/www/extsuite/extman/docs/init.sql

修改18行中的uid和gid

INSERT INTO `mailbox` VALUES ('postmaster@extmail.org','postmaster','$1$phz1mRrj$3ok6BjeaoJYWDBsEPZb5C0','','PostMaster','','extmail.org/postmaster/Maildir/','extmail.org/postmaster','104857600S','52428800S','extmail.org',1001,1001,'2007-02-14 15:10:04','2010-11-08',1,0,0,0,0,0,0,0,'my question', 'my answer');

 

gedit /var/www/extsuite/extman/docs/extmail.sql

修改uid和gid

CREATE TABLE mailbox (

129行 uidnumber int(6) NOT NULL default '1001',

130行 gidnumber int(6) NOT NULL default '1001',

︰)

到此,vmail用户组修改完毕。

linux
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款