首页 > 代码库 > kubuntu+roundcube搭建邮件服务器(包含LAMP)

kubuntu+roundcube搭建邮件服务器(包含LAMP)

好久之前写的了,偶然翻到然后拿出来看看,里面文字图片都没改,有错误请见谅

步骤:

一、关于ubuntu的安装
二、ubuntu配置LAMP(Linux+Apache+Mysql+Perl/PHP/Python)
三、Ubuntu+Sendmail+Dovecot+roundcubewebmail


写在前面:

1、网上多选用openwebmail作为webmail的例子来用(也是因为仿照鸟哥的原因居多)
2、本文中选用了较为简单和大众化的roundcubewebmail
3、本文中多数指令和教程来源于网络,主要参考鸟哥的教程

http://linux.vbird.org/linux_server/0380sendmail.php教程 以及http://www.cnblogs.com/wwufengg/archive/2012/09/28/ubuntu-sendmail-dovecot-openwebmail.html


一、关于ubuntu安装和更新
1.1 首先查看ubuntu版本及更新

技术分享

1.2查看ubuntu版本,本人用的是ubuntu12.04+kde桌面,有些显示与读者可能不同

技术分享

1.3更新软件源

技术分享

1.4更新软件

技术分享

1.5设置新的ubuntu root密码

技术分享

1.6切换到root账户下,这里如果没有VIM编辑器建议安装vim
sudo apt-get install VIM 即可

技术分享

1.7 关于 ubuntu 下邮件服务器的配置让许多人丧心病狂,网上较多的也是 centOS 下邮件服
务器的配置,而且现在一般用 postfix,但是 sendmail 是老品牌,学习 sendmail 可以深入
理解邮件服务器,并且学习更多的东西。


二、安装LAMP
Linux+Apache+Mysql+Perl/PHP/Python 一组常用来搭建动态网站或者服务器的开源软件,
本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组
成了一个强大的 Web 应用程序平台。随着开源潮流的蓬勃发展,开放源代码的 LAMP 已经与
J2EE 和.Net 商业软件形成三足鼎立之势,并且该软件开发的项目在软件方面的投资成本较
低,因此受到整个 IT 界的关注。从网站的流量上来说,70%以上的访问流量是 LAMP 来提供
的,LAMP 是最强大的网站解决方案.
安装 phpmyadmin 可以帮助我们管理 mysql 数据库
因为我们是基于服务器配置, 所有可以使用 su root命令加密码切换到 root 权限下, 以后可以不
需要使用 sudo 命令,但同时要小心谨慎自己的操作
2.1

sudo apt-get install apache2 安装Apache服务器

技术分享

为了确定安装是否成功,我们来测试一下。
打开浏览器,输入以下网址 http://localhost/
如果显示如下界面则说明成功

 技术分享

2.2 sudo apt-get install php5 libapache2-mod-php5 来安装PHP5

技术分享

当看到如下信息,说明安装成功

技术分享

为了测试php,我们需要给予文件夹权限,如下(????图片呢。。。。忘了截图了,用老图了,莫见怪)
在 var/www 目录下新建一个 php 文档 phptest.php,输入
<?php phpinfo(); ?>

如果出现问题,则如下重启下Apache服务

技术分享

现在打开浏览器,查看一下我们刚刚建立的内容。输入以下网址 http://localhost/testphp.php
如果显示如下信息,说明 php5 正常工作

技术分享

 

2.3 sudo apt-get install mysql-server 来安装mysql服务

技术分享

在安装的时候,如果出现下面界面则输入新密码,无则跳过

技术分享

2.4 sudo apt-get install libapache2-mod-auth-mysql php5-mysql phpmyadmin 来安装phpmyadmin
phpmyadmin主要用来管理mysql

技术分享

这里的 phpmyadmin 是与我们之前装的 php5 是相配合的,如果你装的 PHP 和 phpmyadmin
不相配,它们不会工作。
安装过程中选择 apache2

技术分享

需要输入 mysql 密码,输入即可。


2.5 在/var/www 下新建一个文档 testmysql.php 测试 mysql,输入如下内容:
<?php
$link = mysql_connect("localhost","root","020511");
if (!$link)
{
die(‘Could not connect: ‘ . mysql_error());
}
else echo "Mysql 已经正确配置";
mysql_close($link);
?>

注意更换自己的用户名和密码,保存退出。

技术分享

//重启 Apache 服务器:sudo /etc/init.d/apache2 restart
如果出现如下界面则说明配置成功

技术分享

如果出现乱码问题,修改charset编码

技术分享

更改为:

技术分享

重启 apache2 服务,刷新界面即可
关于 mysql 的介绍在本文中将不会介绍
 
2.6 打开 http://localhost/phpmyadmin

输入root用户,输入密码,出现如下界面则说明配置成功

技术分享

技术分享

 

 

三、Ubuntu+Sendmail+Dovecot+roundcubewebmail
3.1 更改本机名称 vi /etc/hostname

技术分享

coco.com为本人主机名

技术分享

重启系统

技术分享

发现本机名称已经由coco-System更改为coco

技术分享

3.2 sudo apt-get install sendmail 安装sendmail

技术分享

出现下面界面说明安装成功,中间的 warning 不需要在意

技术分享

sudo apt-get install sasl2-bin 安装 sasl2-bin

技术分享

技术分享

出现如下界面,根据提示更改文件

技术分享

如下,设置开机自动启动

技术分享

3.3接下来配置sendmail
3.3.1首先设置路由转发,查看自己的IP,发现为192.168.段

技术分享

更改/etc/mail/access 设置转发,添加 192.168 区段转发,注意 RELAY 要大写
sudo vi /etc/mail/access

技术分享

sudo vi /etc/mail/local-host-names 设置收信人域名

技术分享

更改/etc/hosts 内容

技术分享

 

 

3.3.2设置服务器侦听范围
编辑/etc/mail/sendmail.mc
sudo vi /etc/mail/sendmail.mc,将监听地址改为 0.0.0.0(即监听所有)

技术分享

生成 cf 文件,使其生效:
m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf

技术分享

重启sendmail服务

技术分享

 

3.4 发封邮件测试一下:
通过 25 端口使用 telnet 发出邮件:

技术分享

第一次握手:

技术分享

发信人地址:

技术分享

收信人地址:

技术分享

输入数据,最后以新一行的“.”结尾:

技术分享

技术分享

quit 来退出发信界面:

技术分享

打开收件箱查看邮件(看来我一直过着提前5天的日子,竟然将日期写成了25号)

技术分享

 

 

3.5 apt-get install dovecot-common dovecot-pop3d 来安装dovecot服务,支持pop3
apt-get install dovecot-imapd dovecot-pop3d 来安装imap和pop3服务

技术分享

查看25端口配监听

技术分享

查看110端口被监听

技术分享

如果110端口未被dovecot监听则重启服务

技术分享

从110端口登录发现网络安全限制
技术分享

修改/etc/dovecot/conf.d中的10-auth.conf文件
技术分享

具体见官网wiki: http://wiki2.dovecot.org/SystemUsers
Admins often wish to use different passwords for IMAP and POP3 than for other services (eg. SSH), because IMAP and POP3 clients often send the password unencrypted over the internet without even bothering to give users any warnings. Dovecot can easily support non-system passwords for system users.

这里将disable_plaintext_auth = no 设置为no即可

技术分享

The /var/mail/username mbox is called user‘s INBOX. IMAP protocol supports multiple mailboxes however, so Dovecot needs some directory where to store the other mailboxes. Typically they‘re stored in ~/mail/ or ~/Mail/ directory. All of these locations are included in mailbox location autodetection. You can specify them manually with
 
修改用户邮件工作区

技术分享

设置:mail_location = mbox:~/mail:INBOX=/var/mail/%u

技术分享

OK,测试下,成功登入
技术分享

 

3.6 安装配置roundcubemail
首先从官网下载最先的roundcubemail

技术分享

本文中用的是roundcubemail-0.9.5
解压下载包并移动到/var/www下,这个目录无所谓,只要能打开,后续建立连接就可

技术分享

文件目录如下:

技术分享

打开INSTALL查看安装说明,安装分7步,非常简单

技术分享

在浏览器中输入如下地址打开安装界面

技术分享

第一步检查无误后点击next进入第二步

技术分享

修改product_name为自己喜欢的
这里需要设置数据库,注意用户名和密码填写自己的mysql用户名和密码

技术分享

打开phpmyadmin,登入并创建数据库roundcubemail,点击create

技术分享

然后返回刚才的界面,设置imap信息(这里由于没有添加imap,故用的110端口,如果为IMAP,应该为143端口)
username_domain即用户邮箱@后面的部分

技术分享

这里设置SMTP信息,端口为25

技术分享

这里需要设置一下temp位置,在/var/www/下新建一个temp文件夹,并设置这里的位置 

技术分享

这里需要设置log的位置,在/var/www/下新建一个log文件夹,并设置这里的位置 

技术分享

设置language为中文显示,zh_CN

技术分享

点击next,然后出现如下界面,下载这两个文件并放入config文件夹下

技术分享

 技术分享

点击CONTINUE按钮

技术分享

出现如下界面,两个错误
(1)/var/www/temp和/var/www/log没有写入权限
(2)数据库没有表格和初始化
技术分享

为/var/www/temp和/var/www/log没有写入权限,同时点击Initialize database初始化数据库

技术分享

再check一次,如果不行,则重新生成两个配置文件并将config文件夹下两个文件替换
技术分享

上述设置都成功,测试一下SMTP:

技术分享

邮箱中成功收取邮件

技术分享

最后删除installer文件夹即可,防止被恶意篡改和替换
 
3.7 输入http://localhost/roundcubemail-0.9.5即可打开webmail

技术分享

3.8 可自行建立link来连接到这里

 

kubuntu+roundcube搭建邮件服务器(包含LAMP)