虚拟用户使用Postfix,PostfixAdmin,Courier,Mailscanner,ClamAV On CentOS
作者:Tim Haselaars,Trinix。
在这里我将如何解释如何使用Courier-IMAP,Maildrop和Postfix Admin GUI设置Postfix虚拟邮件服务器。 我们将使用Mailscanner和Clamav作为反病毒和Spamassassin作为反垃圾邮件来保护我们的邮件服务器。
3部分:
- 安装所有软件
- 配置邮件服务器自己
- 配置反垃圾邮件和防病毒
我已经写了这个教程,因为很难找到一个像在CentOS这样的Linux发行版上如何配置邮件服务器的体面的“how-to”。
我已经为CentOS 4.4 X86_64编写了本教程,但我应该使用所有CentOS 4.4发行版(i386,...)和类似Redhat的克隆。
首先,这是漫长的痛苦之路,因为你们都应该知道。 CentOS并不是最先进的分配,而是一个非常安全和稳定的分发。
安装
我们先从安装CentOS开始。 看看教程'The Perfect Setup - CentOS 4.4'( https://www.youcl.com/info/4723 ),MySQL 正式启动并运行。
接下来,我们将安装所有基本的所需软件包。
yum install rpm-build pcre-devel
接下来是Cyrus sasl包,需要加密认证。
yum install cyrus-sasl-sql cyrus-sasl-devel
默认情况下,CentOS安装了几个cyrus包,我们需要基本的cyrus sasl包,但有几个可以删除的包。
yum remove cyrus-sasl-gssapi.x86_64
我们将使用一些在CentOS的基本存储库中找不到的软件包。 因此,我们添加DAG存储库。 DAG存储库是CentOS更为先进但稳定的存储库。 在这里你可以找到一些额外的转速。
vi /etc/yum.repos.d/dag.repo添加以下行。
[dag] name=Dag RPM Repository for Red Hat Enterprise Linux baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag gpgcheck=1 enabled=0
默认情况下,我已禁用( 启用= 0
)此存储库,因此您不会更新任何不想要的软件包。
下一个包将是我们的MTA(邮件传输代理)。 我选择了Postfix,而不是默认的Sendmail或Qmail。 我发现Postfix易于配置和稳定。
我将安装具有MySQL支持的Postfix,因为大多数邮件服务器数据将被存储在MySQL数据库中。 这样可以更容易地进行维护和管理。
yum install --enablerepo=centosplus postfix
作为POP3 / IMAP,我们选择了Courier。 同样的原因,它是干净,快速和稳定的。 它还提供了MySQL支持,这样很方便。 不利的是,Centos并没有这样做,所以我们要自行构建RPM。
我们从一个非root用户开始。 这将需要构建一些Courier软件包,该用户将拥有所有的虚拟邮件。 我选择了用户vmail。
groupadd vmail -g 1001
useradd vmail -u 1001 -g 1001
可能需要将此用户临时添加到sudoers文件。
vi /etc/sudoers
将以下行添加到sudoers文件
vmail ALL=(ALL) ALL
接下来我们切换到这个用户
su vmail
sudo yum install libtool postgresql-devel gdbm-devel pam-devel expect openldap-devel
这些是对courier-authlib的依赖,所以首先安装这些。 这些通常可以在centos基础回购中使用。
sudo yum install gamin-devel openldap-servers
这些是Express的依赖。 通常在CentOS基础回购中可以使用这些设备。
创建RPM构建目录
mkdir $HOME/rpm最后:
mkdir $HOME/rpm/SOURCES
mkdir $HOME/rpm/SPECS
mkdir $HOME/rpm/BUILD
mkdir $HOME/rpm/SRPMS
mkdir $HOME/rpm/RPMS
mkdir $HOME/rpm/RPMS/i386
echo "%_topdir $HOME/rpm" >> $HOME/.rpmmacros接下来,我们制作一个目录,我们存储我们的所有下载。
mkdir $HOME/downloads cd $HOME/downloads
并开始下载必要的Express包。
wget http://surfnet.dl.sourceforge.net/sourceforge/courier/courier-authlib-0.58.tar.bz2
wget http://surfnet.dl.sourceforge.net/sourceforge/courier/courier-imap-4.1.1.tar.bz2
wget http://surfnet.dl.sourceforge.net/sourceforge/courier/maildrop-2.0.2.tar.bz2
从安装authlib开始。 Express认证库是一种通用认证API,用于封装验证帐户密码的过程。 除了从/ etc / passwd
读取传统帐户密码外
,还可以从LDAP目录获取帐户信息; MySQL或PostgreSQL数据库; 或GDBM或DB文件。 在构建任何需要直接访问邮箱的Express包(换句话说,所有包裹,除了Express和Express模拟之外),必须安装Express认证库。
sudo rpmbuild -ta courier-authlib-0.58.tar.bz2
接下来输入root密码。
编译后:
cd $HOME/rpm/RPMS/x86_64
安装你需要的:
sudo rpm --install courier-authlib-0.58-1.x86_64.rpm
sudo rpm --install courier-authlib-devel-0.58-1.x86_64.rpm
sudo rpm --install courier-authlib-mysql-0.58-1.x86_64.rpm
接下来我们要编译Express服务器。
确保您的用户具有WRITE访问$ HOME / rpm / RPMS / x86_64
和构建脚本可能需要的其他目录
(否则, sudo chmod -R 777 $ HOME / rpm / RPMS /
)
cd $HOME/downloads rpmbuild -ta courier-imap-4.1.1.tar.bz2
cd $HOME/rpm/RPMS/x86_64
sudo rpm --install courier-imap-4.1.1-1.4.x86_64.rpm
最后,我们将安装maildrop,用于过滤传入的邮件并将其放在正确的邮件目录中。
cd $HOME/downloads
sudo rpmbuild -ta maildrop-2.0.2.tar.bz2
cd $HOME/rpm/RPMS/x86_64
sudo rpm --install maildrop-2.0.2.x86_64.rpm