虚拟用户和域名与Postfix,Express和MySQL(Ubuntu 6.10 Edgy Eft)
本教程是Falko Timme的版权所有(c)2007。 它来自Christoph Haas的教程,您可以在http://workaround.org找到。 您可以根据知识共享许可2.5或更高版本免费使用本教程。
本文档介绍如何安装基于Postfix的邮件服务器,该邮件服务器基于虚拟用户和域,即MySQL数据库中的用户和域。 我还将展示Courier(Courier-POP3,Courier-IMAP)的安装和配置,以便Courier可以对Postfix使用的相同的MySQL数据库进行身份验证。
所得到的Postfix服务器能够使用SMTP-AUTH和TLS和配额 (默认情况下,配额不会内置到Postfix中),我将显示如何适当修补Postfix。 密码以加密形式存储在数据库中(我发现大多数文档都是处理明文密码,这是一个安全风险)。 除此之外,本教程还介绍了Amavisd , SpamAssassin和ClamAV的安装 ,以便电子邮件扫描垃圾邮件和病毒。
这种“虚拟”设置(MySQL数据库中的虚拟用户和域)的优点是,它比基于“真实”系统用户的设置性能要好得多。 通过此虚拟设置,您的邮件服务器可以处理数千个域和用户。 此外,更容易管理,因为您只需在添加新用户/域或编辑现有的MySQL数据库时处理MySQL数据库。 没有更多的postmap命令来创建数据库文件,不需要再重新加载Postfix等。对于MySQL数据库的管理,您可以使用基于Web的工具,如phpMyAdmin,它也将安装在这个howto中。 第三个优点是用户使用电子邮件地址作为用户名(而不是用户名+电子邮件地址),这更容易理解和记住。
这是一个实践指南; 它不包括理论背景。 他们在网络上的许多其他文档中被处理。
本文档不附带任何形式的保证! 我想说,这不是设立这样一个制度的唯一办法。 实现这一目标有很多方法,但这是我所采取的方式。 我不会保证这将为您工作!
1初步说明
本教程基于Ubuntu 6.10(Edgy Eft),因此您应该在继续本教程之前设置基本的Ubuntu安装。 系统应该有一个静态IP地址。 我在本教程中使用192.168.0.100
作为我的IP地址,将server1.example.com
用作主机名。
我更喜欢以root用户身份执行所有步骤。 所以如果你还没有创建根登录,你现在应该这样做:
sudo passwd root
然后,以root身份登录:
su
如果您希望以普通用户而不是root身份工作,请记住将sudo放在本教程中显示的所有命令的前面。 所以当我跑
apt-get update
你应该跑
sudo apt-get update
而是等
2安装Postfix,Courier,Saslauthd,MySQL,phpMyAdmin
在安装这些软件包之前,我们需要修改/etc/apt/sources.list
并启用Universe
存储库,因此请确保启用了以下行:
vi /etc/apt/sources.list
[...] deb http://de.archive.ubuntu.com/ubuntu/ edgy universe deb-src http://de.archive.ubuntu.com/ubuntu/ edgy universe [...] |
然后跑
apt-get update
更新您的包数据库。
要安装Postfix,Courier,Saslauthd,MySQL和phpMyAdmin,我们只需运行
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 postfix-tls libsasl2 libsasl2-modules libsasl2-modules-sql sasl2-bin libpam-mysql openssl phpmyadmin apache2 libapache2-mod-php5 php5 php5-mysql
你会被问到几个问题:
创建基于Web的管理目录?
< - 不
一般配置类型?
< - 互联网网站
邮件名称?
< - server1.example.com
需要SSL证书
< - 好的
3应用配额补丁到Postfix
我们必须得到Postfix源代码,使用配额补丁进行修补,构建新的Postfix .deb
包并安装这些.deb
包:
apt-get install build-essential dpkg-dev fakeroot debhelper libgdbm-dev libldap2-dev libpcre3-dev libssl-dev libsasl2-dev postgresql-dev po-debconf dpatch libdb4.3-dev libmysqlclient15-dev
cd /usr/src
apt-get source postfix
(确保在以下命令中使用正确的Postfix版本。我安装了Postfix 2.3.3,您可以通过运行
postconf -d | grep mail_version
)
wget http://web.onda.com.br/nadal/postfix/VDA/postfix-2.3.3-vda.patch.gz
gunzip postfix-2.3.3-vda.patch.gz
cd postfix-2.3.3
patch -p1 < ../postfix-2.3.3-vda.patch
dpkg-buildpackage
cd ..
dpkg -i postfix_2.3.3-1_i386.deb
dpkg -i postfix-mysql_2.3.3-1_i386.deb