在Debian Squeeze上安装Maia Mailguard(使用Postfix / MySQL的虚拟用户/域)
版本1.0
作者:Falko Timme,Dominik Najberg
本指南介绍如何在Debian Squeeze邮件服务器上安装Maia Mailguard (垃圾邮件和病毒管理系统)。 Maia Mailguard是一个基于Web的界面和管理系统,基于流行的amavisd-new电子邮件扫描程序和SpamAssassin。 在Perl和PHP中,Maia Mailguard使最终用户能够控制病毒扫描程序和垃圾邮件过滤器如何处理邮件,同时让邮件管理员能够配置站点范围的默认值和限制。
我不会保证这将为您工作!
1初步说明
本教程是基于Postfix,Courier,MySQL和SquirrelMail(Debian Squeeze)的虚拟用户和域 ,所以你应该已经设置好了。 如果您的邮件设置不同,本教程可能无法解决您的问题,或者您可能需要进行一些调整。
我的服务器的主机名为mail.example.com
,IP地址为192.168.0.1
。 我将在Debian的默认lighttpd文档根目录/ var / www
中安装Maia的Web界面,我将使用www.example.com
访问Web界面。 如果您的文档根目录和您的域名有所不同,您将必须调整此项。
2下载Maia Mailguard
Maia Mailguard只能从SVN下载,所以我们先要安装Subversion:
aptitude install subversion
我想将源码下载到/ usr / src / maia
:
mkdir /usr/src/maia
cd /usr/src/maia
打开浏览器,然后访问https://www.maiamailguard.com/svn/branches/1.0 ,了解最新的修订版本 - 在我的情况下是1578
。 然后开始下载如下:
svn -r 1578 checkout https://www.maiamailguard.com/svn/branches/1.0
(确保用最新版本替换1578
)
3为Maia Mailguard创建数据库
下一次登录MySQL
mysql -u root -p
...并创建一个名为maia
的数据库:
CREATE DATABASE maia;
之后离开MySQL shell:
quit;
将Maia的SQL转储导入到空的maia
数据库中:
cd /usr/src/maia/1.0/
mysql -u root -p maia < maia-mysql.sql
然后再次登录MySQL
mysql -u root -p maia
...并创建一个名为amavis
的MySQL用户:
GRANT CREATE, DROP, ALTER, SELECT, INSERT, UPDATE, DELETE ON maia.* TO amavis@localhost IDENTIFIED BY 'amavismysqlpasswd';
FLUSH PRIVILEGES;
修复未知的列“discard_ham”
问题,阻止在任何地方发送电子邮件:
ALTER TABLE users ADD COLUMN discard_ham char(1) NOT NULL default 'N'
退出MySQL:
quit;
(您可以用您选择的密码替换amavismysqlpasswd
,但请记住,稍后您必须在Maia配置中使用该密码!)
接下来请确保您的/etc/mysql/my.cnf
(在[mysqld]
部分)中的max_allowed_packet的
值足够大。 此设置确定您可以使用Maia处理的最大邮件项目的大小,因此请确保将此值设置得足够大以满足您的需求。
nano /etc/mysql/my.cnf
[...] [mysqld] [...] max_allowed_packet = 16M [...] |
如果您更改了max_allowed_packet
的值,则重新启动MySQL:
/etc/init.d/mysql restart
4安装Maia的脚本和模板
Debian Squeeze上的amavis
用户的主目录是/ var / lib / amavis
,这就是我们创建一个名为maia的子目录
。 在该子目录中,我们将放置Maia的脚本和模板:
mkdir /var/lib/amavis/maia
mkdir /var/lib/amavis/maia/scripts
mkdir /var/lib/amavis/maia/templates
cp -pfr /usr/src/maia/1.0/scripts/* /var/lib/amavis/maia/scripts
cp -pfr /usr/src/maia/1.0/templates/* /var/lib/amavis/maia/templates
chown -R amavis /var/lib/amavis/maia
chgrp -R amavis /var/lib/amavis/maia
chmod 640 /var/lib/amavis/maia/templates/*.tpl
chmod 750 /var/lib/amavis/maia/scripts/*.pl
5配置Maia
接下来我们将/usr/src/maia/1.0/maia.conf.dist
重命名为/etc/maia/maia.conf
:
mkdir /etc/maia/
cp /usr/src/maia/1.0/maia.conf.dist /etc/maia/maia.conf
chown amavis /etc/maia/maia.conf
chgrp amavis /etc/maia/maia.conf
chmod 640 /etc/maia/maia.conf
打开/etc/maia/maia.conf
并调整以下设置:
nano /etc/maia/maia.conf
[...] # Configure your Maia database DSN here $dsn = "DBI:mysql:maia:localhost:3306"; # Your Maia database user's login name $username = "amavis"; # Your Maia database user's password $password = "amavismysqlpasswd"; # The directory where Maia's Perl scripts can be found. $script_dir = "/var/lib/amavis/maia/scripts"; [...] # Location to write the lock/PID files (must be writeable by your # amavis user) $pid_dir = "/var/lib/amavis/"; [...] # Base URL to Maia's PHP scripts $base_url = "http://www.example.com/"; # Template directory $template_dir = "/var/lib/amavis/maia/templates/"; [...] |
确保您在$ password
行中填写MySQL用户amavis
的正确密码。 还要在$ base_url
行中填写正确的URL。