<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></title> 
<link>http://www.jackxiang.com/index.php</link> 
<description><![CDATA[赢在IT，Playin' with IT,Focus on Killer Application,Marketing Meets Technology.]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></copyright>
<item>
<link>http://www.jackxiang.com/post//</link>
<title><![CDATA[基于FreeBSD和Postfix的反垃圾、反病毒邮件系统与web mail安装 ]]></title> 
<author>jack &lt;xdy108@126.com&gt;</author>
<category><![CDATA[WEB2.0]]></category>
<pubDate>Sun, 03 Feb 2008 07:53:00 +0000</pubDate> 
<guid>http://www.jackxiang.com/post//</guid> 
<description>
<![CDATA[ 
	本文介绍使用<br/>&nbsp;&nbsp;FreeBSD+Postfix+Cyrus-sasl+Courier-imap+Webmail+spamassassin+Clamav+mailscanner +maildrop来架构一个具有多域名，webmail、防病毒、防垃圾邮件、web管理界面的邮件系统。<br/>&nbsp;&nbsp;Jacky, $Revision: 5.1 bate $Date: 2006-10-31<br/>&nbsp;&nbsp;杨廷勇 QQ:187159779<br/>&nbsp;&nbsp;Copyright © 2004、2005、2006<br/>&nbsp;&nbsp;欢迎转载，保留版权和出处[http://www.thismail.org]<br/>&nbsp;&nbsp;系统主要采用MailScanner+clamav+Spamd来对病毒过滤和垃圾邮件过滤。<br/><br/>－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－<br/>新增加对smtpd,imap,pop3,webmail的登录控制<br/>新增加简单的邮件分组<br/>新增邮件监控<br/>加强对垃圾邮件的过滤<br/>增加系统黑名单<br/>－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－－<br/><br/>&nbsp;&nbsp;本文在4.10、5.3、5.4、5.5、6.0、6.1上安装测试通过，采用MailSanner来对邮件过滤和垃圾邮件过滤，配置更容易，并且降低了 系统开消。让系统更加稳定，经过严格病毒邮件测试成功率达到了98%。垃圾邮件过滤基本上达到了95%的成功率。<br/>&nbsp;&nbsp;本人水平有限，如有错误之处请发邮件到scyz2 at 163.com (at = @),本人不对本文档对你的系统造成的损失负任何连带责任。<br/>――――――――――――――――――――――――――――――――――<br/><br/>第一章 FreeBSD 简介<br/><br/>1.1 什么是FreeBSD？<br/>1.2 postfix简介<br/><br/>第二章 操作系统FreeBSD安装<br/><br/>第三章 更新ports<br/><br/>3.1 安装CVSUP<br/>3.2 更新ports树<br/><br/>第四章 软件安装<br/><br/>4.1 安装perl<br/>4.2 安装mysql<br/>4.3 安装apache22<br/>4.4 安装mod_php5<br/>4.5 安装php5的扩展<br/>4.6 安装openssl<br/>4.7 安装phpMyAdmin<br/>4.8 设置数据库<br/>4.9 安装cyrus-sasl2<br/>4.10 安装postfix2<br/>4.11 安装Courier-imap<br/>4.12 安装MailScanner<br/>4.13 安装maildrop<br/><br/>第五章 软件系统配置<br/><br/>5.1 配置cyrus-sasl<br/>5.2 配置postfix<br/>5.3 配置Courier-imap<br/>5.4 安装Tmail管理工具<br/>5.5 登录测试<br/>5.6 垃圾邮件和病毒邮件过滤设置<br/><br/>第六章 安装webmail<br/><br/>附一、常见问题<br/><br/>附二、MailScanner.conf中文参数说明<br/>――――――――――――――――――――――――――――――――――<br/><br/>第一章 FreeBSD 简介<br/><br/>1.1 什么是FreeBSD？<br/><br/>我 想大家都知道 Microsoft Windows 是一套作业系统，FreeBSD 也是一套作业系统。FreeBSD 是一个可以在 Intel 相容个人计算机、DEC Alpha 或 PC98 架构的计算机上执行的 UNIX 作业系统。大家应该听过另一套UNIX的作业系统 Linux，FreeBSD 也是一套免费的作业系统。它可以让我们的个人计算机变成先进的工作站，更稳定的提供你所需的网络服务。<br/><br/>BSD UNIX 系统可以说是网络作业系统的始祖，FreeBSD 是众多 BSD UNIX 分支中的一个，它继承了 BSD 系统的高性能与可靠性。自从1993 年 FreeBSD 推出 1.0-RELEASE 以来，FreeBSD 开发团队便致力于系统的调校，使其发挥绝佳的效能。在 FreeBSD 团队的统筹努力下，使它比起其它免费的 UNIX 作业系统更有结构。在 FreeBSD 上有许多支援的免费软件，这些软件大都已移植收录于 FreeBSD ports 中，使得我们在安装软件时变得十分轻松。FreeBSD 支援 32 位元、64 位元的许多不同平台，具有高效能核心架构、动态函式库共享、绝佳的网络功能，比起其它商用 UNIX 系统毫不逊色。<br/><br/>FreeBSD 作业系统相当容易取得及安装，除了经由传统的光盘安装外，它也可以经由网络安装、MS-DOS 分割区安装等等。当然，我们也可以在计算机中同时安装多种不同的作业系统，例如 Windwos 98 和 FreeBSD 同时并存也是件十分容易的事。<br/><br/>在 FreeBSD 上的应用软件相当的多，也都可以免费取得，由于 FreeBSD 的稳定性高且功能强大，因此许多大型网站都以它为作业平台，其中最知名的就是 YAHOO!。YAHOO! 是一个流量相当大的入口网站，他们选择以 FreeBSD 为作业平台，由此可知 FreeBSD 的优异性。除此之外，在台湾，FreeBSD 普遍被应用于学术网络上，许多大专院校的服务器都是使用 FreeBSD 来提供网络服务。<br/><br/>但是您别以为 FreeBSD 只能用来做为网络服务器，FreeBSD 也可以是一个良好的个人作业系统。事实上，Mac OS X 就是使用 FreeBSD 做为系统核心。大家都知道 Mac OS 是个人计算机上有名的作业系统，它会使用 FreeBSD 做为系统核心，可见 FreeBSD 的质量亦深获 Apple 的肯定。<br/><br/>在宽带网络逐渐普及的台湾，每个人都可以自行架设一台网路服务器，以 FreeBSD 来提供网络服务(如网页、邮件、档案存取等)。值得一提的是 FreeBSD 并不像 MS-Windows 一样每每要求使用者升级计算机才能使用。FreeBSD 对于硬件的要求很低，你可以用一台 Intel 586-133MHz 的旧计算机来安装 FreeBSD，这也算是癈物利用吧。<br/><br/>1.2 为什么要选择FreeBSD？<br/><br/>现在的个人计算机作业系统市场中，是以 MS-Windows 独大，但在网络服务器市场中，UNIX 系统的使用率可不输 MS-Windows 喔。我个人认为 MS-Windows 之所以会有那么多的使用者主要是因为他的使用者介面对初学者而言较容易操作，再加上许多软件的配合及盗版的助长，安装软件只要一直按下一步就完成。使得使 用者即便它的稳定性不高也得乖乖的接受。<br/><br/>其实初学者没有试过其它的作业系统才会有这样的误解，因为一直用 MS-Windows 才会认为当机是无可避免的事，当机对于 MS-Windows 或许是无可避免，但在其它 UNIX 系统中可不常见。在 UNIX 系列的作业系统中，也可以有像 MS-Windows 的图形介面，几乎所有在 MS-Windows 上可以做的事，在 FreeBSD 上都可以做得到，唯一的不同点是你不必花钱去取得你想要的功能。包括排版、图形处理、MP3、多媒体、网络芳邻等等都可以在 FreeBSD 中做到。<br/><br/>重 点是，对于一台网路服务器而言，图形介面会占用系统资源，而且必须安装一堆有的没的软件。笔者偏好乾干脆净净的系统，而 FreeBSD 正好具有这个优点。不过这并不代表您不能使用图形介面，您还是可以安装类似 Windows 的图形介面，让您使用它来做为平日使用的个人计算机。此外，FreeBSD 把自己定位为最佳的网络服务器，它承袭了 BSD 优良的网络血统，在提供服务时能有绝佳的效能表现。而且，它是免费的。<br/><br/>然而，有这么多的免费 UNIX 作业系统中，为什么要选择 FreeBSD 而不使用其它作业系统(如 Linux )呢？在网络上在讨论这个问题时，每每会引发每个作业系统使用者的激辩。对于要使用何种作业系统，除了使用者偏好外，还有许多指标可以提供我们参考。<br/><br/>FreeBSD 是一套完整的作业系统<br/><br/>我 们平常所说的 Linux 指的是它的核心 (Kernel)，Kernel 只是整个作业系统的一部份，除了 Kernel 外，我们还需要一些基本的指令、系统及目录架构、图形介面等。Linux 的 Distribution 就是各个不同的组织或公司自行收集一些系统必备的程序，制作出一个作业系统。Linux 系统有很多的 Distribution，如 Redhat、SUSE、Debian 等。因为每个 Distribution 都有自己的程序或架构，所以每个 Distribution 都长的不一样。如果您使用的是 Linux，在 Linux 三十多种 Distribution 中，每一种之间都有些许差异，在设定上用法都不同。<br/><br/>而 FreeBSD 指的不只是核心而已，它是一套完整的作业系统。从系统核心到使用者介面、各种常用指令都是由 FreeBSD 总部所统一推出。因此，FreeBSD 每一个版本之间有着共同的架构，不同软件之间的整合搭配性较为完整，不管是设定、学习都很容易。<br/><br/>由核心团队统筹开发<br/><br/>FreeBSD 整个系统都是由总部的核心团队所维护，所以整个系统都搭配得很好。而 Linux 只有 Kernel 由 Linus Torvlds 所维护。因为 FreeBSD 整个系统都是由总部所开发，不只系统整体较有规划，各个程序之间搭配起来也比较紧密。如果您使用 Linux，由于 Kernel 和其它的程序是由不同组织所维护，在升级时，比较麻烦。而 FreeBSD 就简单多了，每次一有新的版本，一定是整个系统一起升级。<br/><br/>我 觉得 FreeBSD 总部统筹发展 FreeBSD 是一件很棒的事，所有的问题回报都可以统筹管理并予以更新。FreeBSD 推陈出新的速度相当快，每一次安装都确保这个版本不会有上一版的缺失。所以在 Linux 或 MS-Windows 中「新版本不一定是最好」的定律并不适用于 FreeBSD。但这并不意味着你必须不断重新安装系统，FreeBSD 总部随时会发布最新更新的档案提供下载，而且如果使用 CVSUP 就可以和更新版的 FreeBSD 保持同步更新。<br/><br/>完整的使用手册<br/><br/>FreeBSD 的使用手册非常完整，而且会随着软件一起更新。每次一有新的版本推出，FreeBSD 的文件也会做相对的更新。在 FreeBSD 的官方网站上，我们可以轻松的取得这些高质量的手册及文件。<br/><br/>软件安装的便利性<br/><br/>FreeBSD 支援的软件相当多，它将常用的软件分类管理，当需要安装软件时，使用者不必自行到网络上找寻，只要到 FreeBSD ports 目录中下个指令就安装完成。<br/><br/>条理分明的系统架构<br/><br/>FreeBSD 目录结构非常有组织，结构严谨，对于系统管理者而言比较不会紊乱。FreeBSD 将系统预设的目录和管理者自行安装的程序目录划分得十分清楚，管理者在进行升级、维护时可以一目了然。<br/><br/>完美的程序开发平台<br/><br/>安 装完 FreeBSD 后，系统所有程序原始码非常有条理的存放在特定目录中。对于想要进行程序修改的管理者而言，不必四处寻找某支程序原始码。笔者在 FreeBSD 及 Linux 上开发程序多年，我觉得 FreeBSD 原始码及系统架构十分有组织，是程序开发最好的平台。<br/><br/>而且 FreeBSD 的版权较为宽松，对于想要以 FreeBSD 为基础开发产品的公司而言，它可以保护您的修改不会被其它对手抄袭。<br/><br/>1.3 为什么不选择FreeBSD？<br/><br/>许 多企业选择使用目前大多数人使用的 MS windows 做为一般作业用个人计算机的作业系统当然无可厚非。但以 MS windows 做服务器，除了资讯人员的偏好外(或许因为不会使用其它系统吧)，还有部份原因是为了在企业内资讯人员技术不足时，能求助于系统供应商。而 FreeBSD 是免费的，企业也害怕有状况时无人可以支援，这对企业是很重要的一项因素。 <br/><br/>然而，FreeBSD 的使用人数其实很多，而且使用者都十分热心，在台湾的 BBS 讨论区上，许多问题都可以获得解决。这当然还不够，现在有很多顾问公司提供 FreeBSD 的顾问服务，可以提供企业这方面的服务。虽然说 FreeBSD 的系统稳定，但在应用上如果没有资讯人员的支援，很难能在企业中存活。但正因市场上了解 FreeBSD 的人较少，若我们能主动学习，必能为自己创造更多价值。 <br/><br/>FreeBSD 目前支援的平台不多，若您不是使用 X86 的系统，而是使用 ARM、MIPS 等平台，您就必须寻求其它的解决方案。<br/><br/>1.2 postfix简介<br/><br/>Postfix 是一个非常优秀的MTA，她素以高效、安全的特点而著称。Postfix是作者在UNIX上所见过的MTA中在反垃圾邮件（Anti-Spam或Anti -UCE）方面做得最好的一个，甚至有很多公司在Postfix代码的基础上进行二次开发而推出反垃圾邮件网关产品。MTA的反垃圾邮件功能，实际上就是 在MTA处理过程中对会话进行过滤。这个过滤不但过滤了发往自身的垃圾邮件，而且还防止了自身被恶意利用发送垃圾邮件。Postfix实现了目前所有主要 的MTA过滤技术。postfix是Wietse Venema在IBM的GPL协议之下开发的MTA（邮件传输代理）软件。和Sendmail相比Postfix更快、更容易管理、更灵活、更安全，同时 还与sendmail保持足够的兼容性。<br/><br/>第二章 操作系统FreeBSD安装<br/><br/>FreeBSD6.1系统安装手册<br/>官方安装手册：<br/><br/><br/>QUOTE:<br/>http://www.freebsd.org/doc/zh_CN.GB2312/books/handbook/install.html<br/><br/>　　注意在系统安装过程中，分区方面一定要注意，最好是一个独立的mail分区来存放用户的邮件数据，因为默认的VAR分区读写频繁，数据存放在这样的分区中是很危险的；在安装系统的过程中，建议最小化安装加ports。<br/><br/>第三章 更新ports<br/><br/>3.1 安装CVSUP<br/><br/>QUOTE:<br/>mail# cd /usr/ports/net/cvsup-without-gui<br/>mail# make install clean<br/><br/>安装过程中由于依赖的关系，它会自动安装gettext，会出现下面的选项。<br/>以下是我的选择。<br/><br/>QUOTE:<br/>&nbsp;&nbsp;&nbsp;&nbsp;Options for gettext 0.14.5_2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] EXAMPLES install example files&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] HTMLMAN&nbsp;&nbsp; install man pages in HTML format<br/><br/><br/>3.2 更新ports树<br/>(更新日期2006-07-09）<br/>编辑ports-supfile<br/><br/>QUOTE:<br/>mail# ee /usr/share/examples/cvsup/ports-supfile<br/><br/><br/>QUOTE:<br/>第51行<br/>*default host=CHANGE_THIS.FreeBSD.org<br/>改为：<br/>*default host=cvsup2.freebsdchina.org<br/><br/><br/><br/>QUOTE:<br/>mail# /usr/local/bin/cvsup -g -L 2 /usr/share/examples/cvsup/ports-supfile<br/>Parsing supfile &quot;ports&quot;<br/>Connecting to Cvsup2.FreeBSD.org.cn<br/>Connected to Cvsup2.FreeBSD.org.cn<br/>Server software version: SNAP_16_1h<br/>Negotiating file attribute support<br/>Exchanging collection information<br/>Establishing multiplexed-mode data connection<br/>Running<br/>Updating collection ports-all/cvs<br/>……<br/>……<br/>Shutting down connection to server<br/>Finished successfully<br/>出现上面的提示，表示更新成功。<br/><br/><br/>第四章 软件安装<br/><br/>4.1 安装perl-5.8.8<br/><br/>QUOTE:<br/>mail# cd /usr/ports/lang/perl5.8<br/>mail# make install clean<br/><br/><br/>4.2 安装mysql-5.0.27<br/>4.2 安装mysql<br/><br/>QUOTE:<br/>mail# cd /usr/ports/databases/mysql50-server<br/>编辑Makefile<br/>mail# ee Makefile<br/>在CONFIGURE_ARGS这段话的<br/>--enable-thread-safe-client前面加上三句参数<br/>BUILD_OPTIMIZED=yes &#92;<br/>BUILD_STATIC=yes &#92;<br/>PTHREAD_LIBS=-lkse &#92;<br/>mail# make WITH_CHARSET=gb2312 WITH_XCHARSET=all BUILD_OPTIMIZED=yes BUILD_STATIC=yes install clean<br/><br/><br/>在rc.conf中加入Mysql的启动参数<br/><br/>QUOTE:<br/>mail# echo &#039;mysql_enable=&quot;YES&quot;&#039; &gt;&gt; /etc/rc.conf<br/><br/>启动mysql<br/><br/>QUOTE:<br/>mail# /usr/local/etc/rc.d/mysql-server start<br/>Starting mysql.<br/><br/><br/>查看mysql是否启动成功<br/><br/>QUOTE:<br/>mail# sockstat -4 &amp;#124; grep 3306<br/>mysql&nbsp;&nbsp; mysqld&nbsp;&nbsp; 1510 3 tcp4&nbsp;&nbsp; *:3306&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; *:*<br/><br/>出现上面的端口表示mysql启动成功<br/><br/>4.3 安装httpd-2.2.3<br/><br/>QUOTE:<br/>mail# cd /usr/ports/www/apache22<br/>mail# make install clean<br/><br/>在rc.conf中加入apache的启动参数<br/><br/>QUOTE:<br/>mail# echo &#039;apache_enable=&quot;YES&quot;&#039; &gt;&gt; /etc/rc.conf<br/><br/>启动apache<br/><br/>QUOTE:<br/>mail# /usr/local/etc/rc.d/apache22 start<br/>Starting apache.<br/><br/>查看apache是否启动成功<br/><br/>QUOTE:<br/>mail# sockstat -4 &amp;#124; grep 80<br/>www&nbsp;&nbsp;&nbsp;&nbsp; httpd&nbsp;&nbsp;&nbsp;&nbsp; 10679 16 tcp4&nbsp;&nbsp; *:80&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; *:*<br/>www&nbsp;&nbsp;&nbsp;&nbsp; httpd&nbsp;&nbsp;&nbsp;&nbsp; 10678 16 tcp4&nbsp;&nbsp; *:80&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; *:*<br/>www&nbsp;&nbsp;&nbsp;&nbsp; httpd&nbsp;&nbsp;&nbsp;&nbsp; 10677 16 tcp4&nbsp;&nbsp; *:80&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; *:*<br/>www&nbsp;&nbsp;&nbsp;&nbsp; httpd&nbsp;&nbsp;&nbsp;&nbsp; 10676 16 tcp4&nbsp;&nbsp; *:80&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; *:*<br/>www&nbsp;&nbsp;&nbsp;&nbsp; httpd&nbsp;&nbsp;&nbsp;&nbsp; 10675 16 tcp4&nbsp;&nbsp; *:80&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; *:*<br/>root&nbsp;&nbsp; httpd&nbsp;&nbsp;&nbsp;&nbsp; 10674 16 tcp4&nbsp;&nbsp; *:80&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; *:*<br/>出现上面的80端口表示apache启动成功<br/><br/><br/>4.4 安装php-5.1.6<br/><br/>QUOTE:<br/>mail# cd /usr/ports/lang/php5<br/>mail# make install clean<br/><br/>以下是我的选择<br/><br/>QUOTE:<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Options for php5 5.1.6_3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>[ ] CLI&nbsp;&nbsp;&nbsp;&nbsp; Build CLI version&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] CGI&nbsp;&nbsp;&nbsp;&nbsp; Build CGI version&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] APACHE&nbsp;&nbsp; Build Apache module&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] DEBUG&nbsp;&nbsp;&nbsp;&nbsp; Enable debug&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] SUHOSIN&nbsp;&nbsp; Enable Suhosin protection system&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 　<br/>[X] MULTIBYTE Enable zend multibyte support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] IPV6&nbsp;&nbsp;&nbsp;&nbsp; Enable ipv6 support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] REDIRECT&nbsp;&nbsp; Enable force-cgi-redirect support (CGI only)&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] DISCARD&nbsp;&nbsp; Enable discard-path support (CGI only)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] FASTCGI&nbsp;&nbsp; Enable fastcgi support (CGI only)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] PATHINFO&nbsp;&nbsp; Enable path-info-check support (CGI only) <br/><br/><br/><br/>QUOTE:<br/>mail# echo &#039;AddType application/x-httpd-php .php&#039; &gt;&gt; /usr/local/etc/apache/httpd.conf<br/>mail# echo &#039;AddType application/x-httpd-php-source .phps&#039; &gt;&gt; /usr/local/etc/apache/httpd.conf<br/><br/>编辑httpd.conf加入index.php<br/><br/>QUOTE:<br/>DirectoryIndex index.html index.html.var index.php<br/><br/>#注：在DirectoryIndex这里加入index.php,是为了让apache支持首页为index.php的首页文件<br/><br/>4.5 安装php5的扩展<br/><br/>QUOTE:<br/>mail# cd /usr/ports/lang/php5-extensions<br/>mail# make install clean<br/><br/><br/><br/>QUOTE:<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Options for php5-extensions 1.0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>[X] BCMATH&nbsp;&nbsp; bc style precision math functions&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] BZ2&nbsp;&nbsp;&nbsp;&nbsp; bzip2 library support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] CALENDAR&nbsp;&nbsp; calendar conversion support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] CTYPE&nbsp;&nbsp;&nbsp;&nbsp; ctype functions&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] CURL&nbsp;&nbsp;&nbsp;&nbsp; CURL support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] DBA&nbsp;&nbsp;&nbsp;&nbsp; dba support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] DBASE&nbsp;&nbsp;&nbsp;&nbsp; dBase library support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] DOM&nbsp;&nbsp;&nbsp;&nbsp; DOM support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] EXIF&nbsp;&nbsp;&nbsp;&nbsp; EXIF support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] FILEINFO&nbsp;&nbsp; fileinfo support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] FILEPRO&nbsp;&nbsp; filePro support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] FRIBIDI&nbsp;&nbsp; FriBidi support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] FTP&nbsp;&nbsp;&nbsp;&nbsp; FTP support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] GD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GD library support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] GETTEXT&nbsp;&nbsp; gettext library support <br/>[ ] GMP&nbsp;&nbsp;&nbsp;&nbsp; GNU MP support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] HASH&nbsp;&nbsp;&nbsp;&nbsp; HASH Message Digest Framework&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] ICONV&nbsp;&nbsp;&nbsp;&nbsp; iconv support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] IMAGICK&nbsp;&nbsp; ImageMagick support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] IMAP&nbsp;&nbsp;&nbsp;&nbsp; IMAP support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] INTERBASE Interbase 6 database support (Firebird)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] LDAP&nbsp;&nbsp;&nbsp;&nbsp; OpenLDAP support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] MBSTRING&nbsp;&nbsp; multibyte string support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] MCRYPT&nbsp;&nbsp; Encryption support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] MHASH&nbsp;&nbsp;&nbsp;&nbsp; Crypto-hashing support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] MING&nbsp;&nbsp;&nbsp;&nbsp; ming shockwave flash support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] MSSQL&nbsp;&nbsp;&nbsp;&nbsp; MS-SQL database support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] MYSQL&nbsp;&nbsp;&nbsp;&nbsp; MySQL database support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] MYSQLI&nbsp;&nbsp; MySQLi database support<br/>[ ] NCURSES&nbsp;&nbsp; ncurses support (CLI only)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] ODBC&nbsp;&nbsp;&nbsp;&nbsp; unixODBC support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] OPENSSL&nbsp;&nbsp; OpenSSL support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] PANDA&nbsp;&nbsp;&nbsp;&nbsp; panda support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] PCNTL&nbsp;&nbsp;&nbsp;&nbsp; pcntl support (CLI only)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] PCRE&nbsp;&nbsp;&nbsp;&nbsp; Perl Compatible Regular Expression support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] PDF&nbsp;&nbsp;&nbsp;&nbsp; PDFlib support (implies GD)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] PDO&nbsp;&nbsp;&nbsp;&nbsp; PHP Data Objects Interface (PDO)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] PGSQL&nbsp;&nbsp;&nbsp;&nbsp; PostgreSQL database support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] POSIX&nbsp;&nbsp;&nbsp;&nbsp; POSIX-like functions&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] PSPELL&nbsp;&nbsp; pspell support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] READLINE&nbsp;&nbsp; readline support (CLI only)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] RECODE&nbsp;&nbsp; recode support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] SESSION&nbsp;&nbsp; session support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] SHMOP&nbsp;&nbsp;&nbsp;&nbsp; shmop support <br/>[X] SIMPLEXML simplexml support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] SNMP&nbsp;&nbsp;&nbsp;&nbsp; SNMP support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] SOAP&nbsp;&nbsp;&nbsp;&nbsp; SOAP support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] SOCKETS&nbsp;&nbsp; sockets support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] SQLITE&nbsp;&nbsp; sqlite support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] SYBASE_CT Sybase database support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] SYSVMSG&nbsp;&nbsp; System V message support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] SYSVSEM&nbsp;&nbsp; System V semaphore support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] SYSVSHM&nbsp;&nbsp; System V shared memory support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] TIDY&nbsp;&nbsp;&nbsp;&nbsp; TIDY support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] TOKENIZER tokenizer support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] WDDX&nbsp;&nbsp;&nbsp;&nbsp; WDDX support (implies XML)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] XML&nbsp;&nbsp;&nbsp;&nbsp; XML support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] XMLREADER XMLReader support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] XMLRPC&nbsp;&nbsp; XMLRPC-EPI support <br/>[X] XMLWRITER XMLWriter support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] XSL&nbsp;&nbsp;&nbsp;&nbsp; XSL support (Implies DOM)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] YAZ&nbsp;&nbsp;&nbsp;&nbsp; YAZ support (ANSI/NISO Z39.50)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] ZIP&nbsp;&nbsp;&nbsp;&nbsp; ZIP support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] ZLIB&nbsp;&nbsp;&nbsp;&nbsp; ZLIB support&nbsp;&nbsp; <br/><br/><br/>重启apache安装完成。<br/><br/>4.6 安装openssl-0.9.7l<br/><br/>QUOTE:<br/>mail# cd /usr/ports/security/openssl<br/>mail# make install clean<br/><br/><br/>4.7 安装phpMyAdmin-2.9.0.2<br/><br/>QUOTE:<br/>mail# cd /usr/ports/databases/phpmyadmin<br/>mail# make fetch<br/><br/>注：(在这里建议直接下载后复制安装)<br/><br/><br/>QUOTE:<br/>mail# cd /usr/ports/distfiles<br/>mail# tar –zxvf phpMyAdmin-2.9.0.2.tar.gz<br/>mail# mv /usr/local/www/phpMyAdmin-2.9.0.2 /usr/local/www/apache22/data/dbadmin<br/><br/><br/>修改/usr/local/www/apache22/data/dbadmin/config.inc.php<br/><br/>QUOTE:<br/>$cfg[&#039;PmaAbsoluteUri&#039;] = &#039;http://192.168.0.2/dbadmin/&#039;;<br/>$cfg[&#039;Servers&#039;][$i][&#039;auth_type&#039;]&nbsp;&nbsp; = &#039;http&#039;;&nbsp;&nbsp; // Authentication method (config, http or cookie based)?<br/>注：指定phpmyadmin的认证方式为http方式。<br/><br/><br/>在浏览器输入http://192.168. 0.2/dbadmin/，首次进行登入的用户名为root密码为空，登入后可以修改你的密码。<br/><br/>4.8 设置数据库<br/>建立postfix数据库(注意：数据库名称为postfix)：<br/><br/><br/>QUOTE:<br/>mail# /usr/local/bin/mysql –u root –p<br/>mysql# CREATE DATABASE `postfix` ; <br/>mysql# use postfix;<br/><br/><br/>把下面的sql语句导入到postfix数据库中去：<br/><br/>QUOTE:<br/>-- phpMyAdmin SQL Dump<br/>-- version 2.9.0.2<br/>-- http://www.phpmyadmin.net<br/>-- <br/>-- 主机: localhost:3306<br/>-- 生成日期: 2006 年 10 月 30 日 22:17<br/>-- 服务器版本: 4.0.26<br/>-- PHP 版本: 5.1.6<br/>-- <br/>-- 数据库: `tmail`<br/>-- <br/><br/>-- --------------------------------------------------------<br/><br/>-- <br/>-- 表的结构 `address`<br/>-- <br/><br/>CREATE TABLE `address` (<br/>`id` int(11) unsigned NOT NULL auto_increment,<br/>`pw_id` int(5) NOT NULL default &#039;0&#039;,<br/>`name` varchar(64) NOT NULL default &#039;&#039;,<br/>`email` varchar(128) NOT NULL default &#039;&#039;,<br/>UNIQUE KEY `id` (`id`),<br/>KEY `pw_id` (`pw_id`)<br/>) TYPE=MyISAM PACK_KEYS=1 AUTO_INCREMENT=1 ;<br/><br/>-- <br/>-- 导出表中的数据 `address`<br/>-- <br/><br/><br/>-- --------------------------------------------------------<br/><br/>-- <br/>-- 表的结构 `admin`<br/>-- <br/><br/>CREATE TABLE `admin` (<br/>`id` int(10) unsigned NOT NULL auto_increment,<br/>`site_id` int(10) unsigned NOT NULL default &#039;0&#039;,<br/>`domain` varchar(128) NOT NULL default &#039;&#039;,<br/>`quota` smallint(5) unsigned NOT NULL default &#039;0&#039;,<br/>`total` smallint(5) unsigned NOT NULL default &#039;0&#039;,<br/>`createtime` timestamp(14) NOT NULL,<br/>`login` char(1) NOT NULL default &#039;&#039;,<br/>`cur_total` smallint(5) NOT NULL default &#039;0&#039;,<br/>`cur_quota` smallint(5) NOT NULL default &#039;0&#039;,<br/>`gid` varchar(11) NOT NULL default &#039;&#039;,<br/>`expiration_time` timestamp(14) NOT NULL default &#039;00000000000000&#039;,<br/>`flag` int(10) unsigned NOT NULL default &#039;0&#039;,<br/>`maxmsg` int(10) unsigned NOT NULL default &#039;0&#039;,<br/>PRIMARY KEY (`id`),<br/>UNIQUE KEY `domain` (`domain`)<br/>) TYPE=MyISAM PACK_KEYS=1 AUTO_INCREMENT=1 ;<br/><br/>-- <br/>-- 导出表中的数据 `admin`<br/>-- <br/><br/><br/>-- --------------------------------------------------------<br/><br/>-- <br/>-- 表的结构 `card`<br/>-- <br/><br/>CREATE TABLE `card` (<br/>`id` int(5) unsigned NOT NULL auto_increment,<br/>`pw_id` int(5) unsigned NOT NULL default &#039;0&#039;,<br/>`LinkMan` varchar(64) NOT NULL default &#039;&#039;,<br/>`CompanyName` varchar(100) NOT NULL default &#039;&#039;,<br/>`Address` varchar(255) NOT NULL default &#039;&#039;,<br/>`Position` varchar(32) NOT NULL default &#039;&#039;,<br/>`PhoneNumber` varchar(16) NOT NULL default &#039;&#039;,<br/>`Mobile` varchar(12) NOT NULL default &#039;&#039;,<br/>`Email` varchar(128) NOT NULL default &#039;&#039;,<br/>`Partaker` varchar(32) NOT NULL default &#039;&#039;,<br/>`Memo` varchar(255) NOT NULL default &#039;&#039;,<br/>PRIMARY KEY (`id`)<br/>) TYPE=MyISAM AUTO_INCREMENT=27 ;<br/><br/>-- <br/>-- 导出表中的数据 `card`<br/>-- <br/><br/><br/>-- --------------------------------------------------------<br/><br/>-- <br/>-- 表的结构 `lastauth`<br/>-- <br/><br/>CREATE TABLE `lastauth` (<br/>`user` char(32) NOT NULL default &#039;&#039;,<br/>`domain` char(64) NOT NULL default &#039;&#039;,<br/>`remote_ip` char(18) NOT NULL default &#039;&#039;,<br/>`timestamp` bigint(20) NOT NULL default &#039;0&#039;,<br/>PRIMARY KEY (`user`,`domain`)<br/>) TYPE=MyISAM;<br/><br/>-- <br/>-- 导出表中的数据 `lastauth`<br/>-- <br/><br/><br/>-- --------------------------------------------------------<br/><br/>-- <br/>-- 表的结构 `logs`<br/>-- <br/><br/>CREATE TABLE `logs` (<br/>`pw_id` int(5) default &#039;0&#039;,<br/>`ip` varchar(15) NOT NULL default &#039;&#039;,<br/>`action` varchar(15) NOT NULL default &#039;&#039;,<br/>`time` datetime default NULL,<br/>`content` varchar(64) NOT NULL default &#039;&#039;,<br/>`email` varchar(128) NOT NULL default &#039;&#039;<br/>) TYPE=MyISAM;<br/><br/>-- <br/>-- 导出表中的数据 `logs`<br/>-- <br/><br/><br/>-- --------------------------------------------------------<br/><br/>-- <br/>-- 表的结构 `message`<br/>-- <br/><br/>CREATE TABLE `message` (<br/>`id` int(5) unsigned NOT NULL auto_increment,<br/>`title` varchar(255) NOT NULL default &#039;&#039;,<br/>`body` text NOT NULL,<br/>`createtime` datetime NOT NULL default &#039;0000-00-00 00:00:00&#039;,<br/>`updatetime` datetime NOT NULL default &#039;0000-00-00 00:00:00&#039;,<br/>`pw_domain` varchar(64) NOT NULL default &#039;&#039;,<br/>UNIQUE KEY `id` (`id`)<br/>) TYPE=MyISAM AUTO_INCREMENT=2 ;<br/><br/>-- <br/>-- 导出表中的数据 `message`<br/>-- <br/><br/><br/>-- --------------------------------------------------------<br/><br/>-- <br/>-- 表的结构 `personal`<br/>-- <br/><br/>CREATE TABLE `personal` (<br/>`id` int(11) unsigned NOT NULL auto_increment,<br/>`pw_id` int(5) NOT NULL default &#039;0&#039;,<br/>`truename` varchar(10) NOT NULL default &#039;&#039;,<br/>`fax` varchar(20) NOT NULL default &#039;&#039;,<br/>`telephone` varchar(15) NOT NULL default &#039;&#039;,<br/>`sex` int(1) NOT NULL default &#039;0&#039;,<br/>`year` int(4) NOT NULL default &#039;0&#039;,<br/>`MONTH` int(2) NOT NULL default &#039;0&#039;,<br/>`DAY` int(2) NOT NULL default &#039;0&#039;,<br/>`education` varchar(4) NOT NULL default &#039;&#039;,<br/>`marital` int(1) NOT NULL default &#039;0&#039;,<br/>`occupation` varchar(15) NOT NULL default &#039;&#039;,<br/>`companyname` varchar(30) NOT NULL default &#039;&#039;,<br/>`province` varchar(6) NOT NULL default &#039;&#039;,<br/>PRIMARY KEY (`id`)<br/>) TYPE=MyISAM PACK_KEYS=1 AUTO_INCREMENT=12 ;<br/><br/>-- <br/>-- 导出表中的数据 `personal`<br/>-- <br/><br/><br/>-- --------------------------------------------------------<br/><br/>-- <br/>-- 表的结构 `scheduler`<br/>-- <br/><br/>CREATE TABLE `scheduler` (<br/>`id` int(11) unsigned NOT NULL auto_increment,<br/>`begin_time` int(11) unsigned default NULL,<br/>`end_time` int(11) unsigned default NULL,<br/>`title` varchar(255) NOT NULL default &#039;&#039;,<br/>`body` varchar(255) NOT NULL default &#039;&#039;,<br/>`pw_id` int(11) unsigned NOT NULL default &#039;0&#039;,<br/>PRIMARY KEY (`id`)<br/>) TYPE=MyISAM AUTO_INCREMENT=1 ;<br/><br/>-- <br/>-- 导出表中的数据 `scheduler`<br/>-- <br/><br/><br/>-- --------------------------------------------------------<br/><br/>-- <br/>-- 表的结构 `stow`<br/>-- <br/><br/>CREATE TABLE `stow` (<br/>`id` int(5) unsigned NOT NULL auto_increment,<br/>`pw_id` int(5) unsigned NOT NULL default &#039;0&#039;,<br/>`Name` varchar(128) NOT NULL default &#039;&#039;,<br/>`http` varchar(255) NOT NULL default &#039;http://&#039;,<br/>`memo` varchar(255) NOT NULL default &#039;&#039;,<br/>PRIMARY KEY (`id`)<br/>) TYPE=MyISAM AUTO_INCREMENT=1 ;<br/><br/>-- <br/>-- 导出表中的数据 `stow`<br/>-- <br/><br/><br/>-- --------------------------------------------------------<br/><br/>-- <br/>-- 表的结构 `tmail_access`<br/>-- <br/><br/>CREATE TABLE `tmail_access` (<br/>`id` int(11) unsigned NOT NULL auto_increment,<br/>`ctime` int(11) unsigned default NULL,<br/>`source` varchar(128) NOT NULL default &#039;&#039;,<br/>`access` varchar(16) NOT NULL default &#039;&#039;,<br/>`type` char(1) NOT NULL default &#039;S&#039;,<br/>PRIMARY KEY (`id`),<br/>KEY `source` (`source`,`type`,`access`,`ctime`)<br/>) TYPE=MyISAM AUTO_INCREMENT=65 ;<br/><br/>-- <br/>-- 导出表中的数据 `tmail_access`<br/>-- <br/><br/><br/>-- --------------------------------------------------------<br/><br/>-- <br/>-- 表的结构 `tmail_alias`<br/>-- <br/><br/>CREATE TABLE `tmail_alias` (<br/>`id` int(11) unsigned NOT NULL auto_increment,<br/>`alias` varchar(128) NOT NULL default &#039;&#039;,<br/>`destination` varchar(128) NOT NULL default &#039;&#039;,<br/>PRIMARY KEY (`id`)<br/>) TYPE=MyISAM AUTO_INCREMENT=1 ;<br/><br/>-- <br/>-- 导出表中的数据 `tmail_alias`<br/>-- <br/><br/><br/>-- --------------------------------------------------------<br/><br/>-- <br/>-- 表的结构 `tmail_autobbc`<br/>-- <br/><br/>CREATE TABLE `tmail_autobbc` (<br/>`id` int(9) NOT NULL auto_increment,<br/>`realname` varchar(128) default NULL,<br/>`email` varchar(128) NOT NULL default &#039;&#039;,<br/>`autobbc` varchar(128) NOT NULL default &#039;&#039;,<br/>`come` int(1) default NULL,<br/>`out` int(1) default NULL,<br/>`domain` varchar(128) NOT NULL default &#039;&#039;,<br/>PRIMARY KEY (`id`)<br/>) TYPE=MyISAM AUTO_INCREMENT=1 ;<br/><br/>-- <br/>-- 导出表中的数据 `tmail_autobbc`<br/>-- <br/><br/><br/>-- --------------------------------------------------------<br/><br/>-- <br/>-- 表的结构 `tmail_company`<br/>-- <br/><br/>CREATE TABLE `tmail_company` (<br/>`id` int(6) NOT NULL auto_increment,<br/>`domain` varchar(25) NOT NULL default &#039;&#039;,<br/>`name` varchar(50) NOT NULL default &#039;&#039;,<br/>`linkman` varchar(50) NOT NULL default &#039;&#039;,<br/>`tel` varchar(15) NOT NULL default &#039;&#039;,<br/>`Address` varchar(50) NOT NULL default &#039;&#039;,<br/>`zip` varchar(6) NOT NULL default &#039;&#039;,<br/>PRIMARY KEY (`id`)<br/>) TYPE=MyISAM AUTO_INCREMENT=1 ;<br/><br/>-- <br/>-- 导出表中的数据 `tmail_company`<br/>-- <br/><br/><br/>-- --------------------------------------------------------<br/><br/>-- <br/>-- 表的结构 `tmail_domaininfo`<br/>-- <br/><br/>CREATE TABLE `tmail_domaininfo` (<br/>`id` tinyint(11) NOT NULL auto_increment,<br/>`domain` varchar(25) NOT NULL default &#039;&#039;,<br/>`transport` varchar(128) NOT NULL default &#039;&#039;,<br/>`alias` varchar(50) default NULL,<br/>`passwd` varchar(35) NOT NULL default &#039;&#039;,<br/>`clean` text NOT NULL,<br/>`admin` tinytext NOT NULL,<br/>`yesno` tinytext NOT NULL,<br/>`usernum` text NOT NULL,<br/>`quota` text NOT NULL,<br/>`filequota` text NOT NULL,<br/>`expire` date NOT NULL default &#039;0000-00-00&#039;,<br/>`create_time` datetime default NULL,<br/>PRIMARY KEY (`id`),<br/>UNIQUE KEY `domain` (`domain`),<br/>KEY `domain_id` (`id`)<br/>) TYPE=MyISAM PACK_KEYS=0 COMMENT=&#039;domain information&#039; AUTO_INCREMENT=1 ;<br/><br/>-- <br/>-- 导出表中的数据 `tmail_domaininfo`<br/>-- <br/><br/>INSERT INTO `tmail_domaininfo` (`id`, `domain`, `transport`, `alias`, `passwd`, `clean`, `admin`, `yesno`, `usernum`, `quota`, `filequota`, `expire`, `create_time`) VALUES <br/>(1, &#039;admin&#039;, &#039;maildrop&#039;, NULL, &#039;$1$t5h6XOby$UP3HJpdrozxEsRlcLF6tI0&#039;, &#039;hing4585&#039;, &#039;0&#039;, &#039;1&#039;, &#039;0&#039;, &#039;0&#039;, &#039;0&#039;, &#039;0000-00-00&#039;, &#039;2006-10-06 16:44:13&#039;);<br/><br/>-- --------------------------------------------------------<br/><br/>-- <br/>-- 表的结构 `tmail_group_name`<br/>-- <br/><br/>CREATE TABLE `tmail_group_name` (<br/>`id` int(9) NOT NULL auto_increment,<br/>`group_name` varchar(128) NOT NULL default &#039;&#039;,<br/>`domain` varchar(128) NOT NULL default &#039;&#039;,<br/>PRIMARY KEY (`id`)<br/>) TYPE=MyISAM AUTO_INCREMENT=1 ;<br/><br/>-- <br/>-- 导出表中的数据 `tmail_group_name`<br/>-- <br/><br/><br/>-- --------------------------------------------------------<br/><br/>-- <br/>-- 表的结构 `tmail_monitor`<br/>-- <br/><br/>CREATE TABLE `tmail_monitor` (<br/>`id` int(11) unsigned NOT NULL auto_increment,<br/>`email` varchar(128) NOT NULL default &#039;&#039;,<br/>`cc` varchar(128) NOT NULL default &#039;&#039;,<br/>PRIMARY KEY (`id`),<br/>KEY `email` (`email`,`cc`)<br/>) TYPE=MyISAM AUTO_INCREMENT=1 ;<br/><br/>-- <br/>-- 导出表中的数据 `tmail_monitor`<br/>-- <br/><br/><br/>-- --------------------------------------------------------<br/><br/>-- <br/>-- 表的结构 `tmail_pop`<br/>-- <br/><br/>CREATE TABLE `tmail_pop` (<br/>`id` int(11) unsigned NOT NULL auto_increment,<br/>`email` varchar(128) NOT NULL default &#039;&#039;,<br/>`pop` varchar(128) NOT NULL default &#039;&#039;,<br/>`name` varchar(128) NOT NULL default &#039;&#039;,<br/>`pass` varchar(32) NOT NULL default &#039;32&#039;,<br/>`timeout` int(10) unsigned NOT NULL default &#039;60&#039;,<br/>`port` tinyint(3) unsigned NOT NULL default &#039;110&#039;,<br/>`keep` char(1) NOT NULL default &#039;Y&#039;,<br/>PRIMARY KEY (`id`),<br/>KEY `email` (`email`)<br/>) TYPE=MyISAM AUTO_INCREMENT=1 ;<br/><br/>-- <br/>-- 导出表中的数据 `tmail_pop`<br/>-- <br/><br/><br/>-- --------------------------------------------------------<br/><br/>-- <br/>-- 表的结构 `tmail_relay_domains`<br/>-- <br/><br/>CREATE TABLE `tmail_relay_domains` (<br/>`id` int(11) unsigned NOT NULL auto_increment,<br/>`domain` varchar(128) NOT NULL default &#039;&#039;,<br/>PRIMARY KEY (`id`),<br/>UNIQUE KEY `domain` (`domain`)<br/>) TYPE=MyISAM AUTO_INCREMENT=1 ;<br/><br/>-- <br/>-- 导出表中的数据 `tmail_relay_domains`<br/>-- <br/><br/><br/>-- --------------------------------------------------------<br/><br/>-- <br/>-- 表的结构 `tmail_relocated`<br/>-- <br/><br/>CREATE TABLE `tmail_relocated` (<br/>`id` int(11) unsigned NOT NULL auto_increment,<br/>`email` varchar(128) NOT NULL default &#039;&#039;,<br/>`destination` varchar(128) NOT NULL default &#039;&#039;,<br/>PRIMARY KEY (`id`)<br/>) TYPE=MyISAM AUTO_INCREMENT=1 ;<br/><br/>-- <br/>-- 导出表中的数据 `tmail_relocated`<br/>-- <br/><br/><br/>-- --------------------------------------------------------<br/><br/>-- <br/>-- 表的结构 `tmail_transport`<br/>-- <br/><br/>CREATE TABLE `tmail_transport` (<br/>`id` int(11) unsigned NOT NULL auto_increment,<br/>`domain` varchar(128) NOT NULL default &#039;&#039;,<br/>`destination` varchar(128) NOT NULL default &#039;&#039;,<br/>PRIMARY KEY (`id`),<br/>UNIQUE KEY `domain` (`domain`)<br/>) TYPE=MyISAM AUTO_INCREMENT=1 ;<br/><br/>-- <br/>-- 导出表中的数据 `tmail_transport`<br/>-- <br/><br/><br/>-- --------------------------------------------------------<br/><br/>-- <br/>-- 表的结构 `tmail_userpersonal`<br/>-- <br/><br/>CREATE TABLE `tmail_userpersonal` (<br/>`id` int(11) NOT NULL auto_increment,<br/>`address` varchar(50) default NULL,<br/>`fax` varchar(20) NOT NULL default &#039;&#039;,<br/>`telephone` varchar(15) NOT NULL default &#039;&#039;,<br/>`sex` int(1) NOT NULL default &#039;0&#039;,<br/>`year` int(4) NOT NULL default &#039;0&#039;,<br/>`month` int(2) NOT NULL default &#039;0&#039;,<br/>`day` int(2) NOT NULL default &#039;0&#039;,<br/>`education` varchar(4) NOT NULL default &#039;&#039;,<br/>`marital` int(1) NOT NULL default &#039;0&#039;,<br/>`occupation` varchar(15) NOT NULL default &#039;&#039;,<br/>`companyname` varchar(30) NOT NULL default &#039;&#039;,<br/>`province` varchar(128) NOT NULL default &#039;&#039;,<br/>PRIMARY KEY (`id`)<br/>) TYPE=InnoDB AUTO_INCREMENT=43 ;<br/><br/>-- <br/>-- 导出表中的数据 `tmail_userpersonal`<br/>-- <br/><br/><br/>-- --------------------------------------------------------<br/><br/>-- <br/>-- 表的结构 `tmail_users`<br/>-- <br/><br/>CREATE TABLE `tmail_users` (<br/>`id` int(11) unsigned NOT NULL auto_increment,<br/>`userid` tinytext NOT NULL,<br/>`domain` varchar(128) NOT NULL default &#039;&#039;,<br/>`email` varchar(128) NOT NULL default &#039;&#039;,<br/>`clear` varchar(128) NOT NULL default &#039;&#039;,<br/>`crypt` varchar(128) NOT NULL default &#039;&#039;,<br/>`realname` tinytext NOT NULL,<br/>`uid` int(11) unsigned NOT NULL default &#039;1003&#039;,<br/>`gid` int(11) unsigned NOT NULL default &#039;1003&#039;,<br/>`homedir` tinytext NOT NULL,<br/>`maildir` tinytext NOT NULL,<br/>`quota` tinytext NOT NULL,<br/>`file_quota` tinytext NOT NULL,<br/>`access` enum(&#039;Y&#039;,&#039;N&#039;) NOT NULL default &#039;Y&#039;,<br/>`postfix` enum(&#039;Y&#039;,&#039;N&#039;) NOT NULL default &#039;Y&#039;,<br/>`disablepop3` char(1) NOT NULL default &#039;0&#039;,<br/>`disableimap` char(1) NOT NULL default &#039;0&#039;,<br/>`disablewebmail` char(1) NOT NULL default &#039;0&#039;,<br/>`sharedgroup` varchar(128) NOT NULL default &#039;0&#039;,<br/>`smtpaccess` enum(&#039;Y&#039;,&#039;N&#039;) NOT NULL default &#039;Y&#039;,<br/>`expire` date NOT NULL default &#039;0000-00-00&#039;,<br/>`create_time` datetime NOT NULL default &#039;0000-00-00 00:00:00&#039;,<br/>PRIMARY KEY (`id`),<br/>UNIQUE KEY `email` (`email`)<br/>) TYPE=MyISAM AUTO_INCREMENT=1 ;<br/><br/>-- <br/>-- 导出表中的数据 `tmail_users`<br/>-- <br/><br/><br/>-- --------------------------------------------------------<br/><br/>-- <br/>-- 表的结构 `tmail_virtual`<br/>-- <br/><br/>CREATE TABLE `tmail_virtual` (<br/>`id` int(11) unsigned NOT NULL auto_increment,<br/>`email` varchar(128) NOT NULL default &#039;&#039;,<br/>`destination` varchar(128) NOT NULL default &#039;&#039;,<br/>`group_name` varchar(128) NOT NULL default &#039;&#039;,<br/>`domain` varchar(128) NOT NULL default &#039;&#039;,<br/>`group` int(1) default NULL,<br/>`alias` int(1) default NULL,<br/>`forward` int(1) default NULL,<br/>`forward_bak` int(1) default NULL,<br/>PRIMARY KEY (`id`)<br/>) TYPE=MyISAM AUTO_INCREMENT=1 ;<br/><br/>-- <br/>-- 导出表中的数据 `tmail_virtual`<br/>-- <br/><br/><br/>-- --------------------------------------------------------<br/><br/>-- <br/>-- 表的结构 `vpopmail`<br/>-- <br/><br/>CREATE TABLE `vpopmail` (<br/>`pw_id` int(5) unsigned NOT NULL auto_increment,<br/>`pw_name` varchar(32) NOT NULL default &#039;&#039;,<br/>`pw_domain` varchar(64) NOT NULL default &#039;&#039;,<br/>`pw_passwd` varchar(40) NOT NULL default &#039;&#039;,<br/>`pw_uid` int(11) default NULL,<br/>`pw_gid` int(11) default NULL,<br/>`pw_gecos` varchar(48) default NULL,<br/>`pw_dir` varchar(255) default NULL,<br/>`pw_shell` varchar(20) default NULL,<br/>`createtime` timestamp(14) NOT NULL,<br/>PRIMARY KEY (`pw_id`),<br/>KEY `pw_name` (`pw_name`,`pw_domain`)<br/>) TYPE=MyISAM PACK_KEYS=1 AUTO_INCREMENT=1 ;<br/><br/>-- <br/>-- 导出表中的数据 `vpopmail`<br/>&nbsp;&nbsp;<br/><br/>注：对于初学者，建议以上操作都在phpmyadmin中操作更加的简便.<br/>建立数据库用户并授以相应的权限<br/><br/><br/>QUOTE:<br/>mail# /usr/local/bin/mysql –u root –p<br/>mysql# use mysql;<br/>mysql# INSERT INTO user (host,user,password) VALUES(&#039;localhost&#039;,&#039;postfix&#039;,&#039;&#039;);<br/>mysql# update user set password=password(&#039;postfix&#039;) where User=&#039;postfix&#039;;<br/>重新启动mysql<br/>mail# /usr/local/bin/mysql –u root –p<br/>mysql# use mysql;<br/>mysql# GRANT ALL ON postfix.* TO postfix@localhost IDENTIFIED BY &quot;postfix&quot;;<br/><br/>注：这里加用户名和密码都为：postfix。并授权对postfix数据库进行操作<br/><br/>4.9 安装cyrus-sasl-2.1.22<br/><br/>QUOTE:<br/>mail# cd /usr/ports/security/cyrus-sasl2<br/>mail# make WITH_MYSQL=yes WITH_AUTHDAEMON=yes install clean<br/><br/>WITH_AUTHDAEMON=yes参数是为了让sasl支持authdamond的认证方式<br/>WITH_MYSQL=yes参数是为了让sasl支持mysql认证方式<br/><br/>4.10 安装postfix-2.3.3<br/><br/>QUOTE:<br/>mail# cd /usr/ports/mail/postfix<br/>mail# make install clean<br/><br/>以下是我的选择<br/><br/>QUOTE:<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Postfix configuration options&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>Please select desired options:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>[ ] NOPCRE&nbsp;&nbsp;&nbsp;&nbsp; DISABLE Perl Compatible Regular Expressions&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] SASL&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Cyrus SASLv1 (Simple Authentication and Security Layer)&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] SASL2&nbsp;&nbsp;&nbsp;&nbsp; Cyrus SASLv2 (Simple Authentication and Security Layer)&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] SASLKRB&nbsp;&nbsp;&nbsp;&nbsp; If your SASL requires Kerberos select this option&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] SASLKRB5&nbsp;&nbsp; If your SASL requires Kerberos5 select this option&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] SASLKRB5MIT If your SASL requires MIT Kerberos5 select this option&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] SPF&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SPF support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] TLS&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SSL and TLS&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] BDB&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Berkeley DB (select version using WITH_BDB_VER variable)&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] MySQL&nbsp;&nbsp;&nbsp;&nbsp; MySQL map lookups (choose version with WITH_MYSQL_VER)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] PgSQL&nbsp;&nbsp;&nbsp;&nbsp; PostgreSQL map lookups (choose with DEFAULT_PGSQL_VER)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] OpenLDAP&nbsp;&nbsp; OpenLDAP map lookups (choose ver. with WITH_OPENLDAP_VER)&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] CDB&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CDB map lookups&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] NIS&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NIS map lookups&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] VDA&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; VDA (Virtual Delivery Agent)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] Test&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SMTP/LMTP test server and generator<br/><br/>安装过程中会让你回答两个问题，<br/><br/>QUOTE:<br/>===&gt; Installing for postfix-2.2.10_1,1<br/>===&gt;&nbsp;&nbsp; postfix-2.2.10_1,1 depends on shared library: sasl2.2 - found<br/>===&gt;&nbsp;&nbsp; postfix-2.2.10_1,1 depends on shared library: pcre.0 - found<br/>===&gt;&nbsp;&nbsp; postfix-2.2.10_1,1 depends on shared library: mysqlclient.14 - found<br/>Added group &quot;postfix&quot;.<br/>Added group &quot;maildrop&quot;.<br/>Added user &quot;postfix&quot;.<br/>You need user &quot;postfix&quot; added to group &quot;mail&quot;.<br/>Would you like me to add it [y]? y<br/>是否把postfix用户加入到mail用户组。回答Y<br/><br/>Installed HTML documentation in /usr/local/share/doc/postfix<br/>Would you like to activate Postfix in /etc/mail/mailer.conf [n]? n<br/><br/><br/>在rc.conf中加入postfix的启动选项<br/><br/>QUOTE:<br/>mail# echo &#039;postfix_enable=&quot;YES&quot;&#039; &gt;&gt; /etc/rc.conf<br/>mail# echo &#039;sendmail_enable=&quot;NO&quot;&#039; &gt;&gt; /etc/rc.conf<br/>mail# echo &#039;sendmail_submit_enable=&quot;NO&quot;&#039; &gt;&gt; /etc/rc.conf<br/>mail# echo &#039;sendmail_outbound_enable=&quot;NO&quot;&#039; &gt;&gt; /etc/rc.conf<br/>mail# echo &#039;sendmail_msp_queue_enable=&quot;NO&quot;&#039; &gt;&gt; /etc/rc.conf<br/><br/><br/>4.11 安装courier-imap-4.1.1<br/><br/>QUOTE:<br/>mail# cd /usr/ports/mail/courier-imap<br/>mail# make install clean<br/><br/>以下是我的选择<br/><br/>QUOTE:<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Options for courier-imap 4.1.1,1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>[ ] OPENSSL&nbsp;&nbsp;&nbsp;&nbsp; Build with OpenSSL support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] FAM&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Build in fam support for IDLE command&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] TRASHQUOTA&nbsp;&nbsp; Include deleted mails in the quota&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] GDBM&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Use gdbm db instead of system bdb&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] IPV6&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Build with IPv6 support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] AUTH_LDAP&nbsp;&nbsp; LDAP support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] AUTH_MYSQL&nbsp;&nbsp; MySQL support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] AUTH_PGSQL&nbsp;&nbsp; PostgreSQL support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] AUTH_USERDB Userdb support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] AUTH_VCHKPW Vpopmail/vchkpw support <br/><br/><br/>在rc.conf中加入courier的启动选项<br/><br/>QUOTE:<br/>mail# echo &#039;courier_authdaemond_enable=&quot;YES&quot;&#039; &gt;&gt; /etc/rc.conf<br/>mail# echo &#039;courier_imap_imapd_enable=&quot;YES&quot;&#039; &gt;&gt; /etc/rc.conf<br/>mail# echo &#039;courier_imap_pop3d_enable=&quot;YES&quot;&#039; &gt;&gt; /etc/rc.conf<br/><br/><br/>QUOTE:<br/>mail# /usr/local/etc/rc.d/courier-authdaemond start<br/>Starting courier_authdaemond.<br/><br/><br/>注：此时会在/var/run/authdaemond/下产生socket，如果没有下面这一步下面的认证无法通过。<br/>对/var/run/authdaemond目录加执行权限<br/><br/>QUOTE:<br/>mail# chmod +x /var/run/authdaemond<br/><br/><br/>4.12 安装MailScanner-install-4.55.10-3<br/><br/>QUOTE:<br/>mail# cd /usr/ports/mail/mailscanner<br/>mail# make install clean<br/><br/>在安装MailScanner的过程中会出现以下几个选项。以下是我的选择<br/><br/>QUOTE:<br/>&nbsp;&nbsp;Options for MailScanner 4.55.10&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>[X] SPAMASSASSIN Install SpamAssassin&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] CLAMAV&nbsp;&nbsp;&nbsp;&nbsp; Install ClamAV&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] CLAMAVMODULE Install ClamAV Module&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] BDC&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Install BitDefender <br/><br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Options for sqlite 3.3.6&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>[ ] TCLWRAPPER TCL wrapper for SQLITE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] THREADS&nbsp;&nbsp; Enable threads support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] DEBUG&nbsp;&nbsp;&nbsp;&nbsp; Enable debugging &amp; verbose explain&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] DOCS&nbsp;&nbsp;&nbsp;&nbsp; Building docs (depends on TCL)<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Options for Mail-SpamAssassin-3.1.6&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>[X] AS_ROOT&nbsp;&nbsp;&nbsp;&nbsp; Run spamd as root (recommended)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] DOMAINKEYS&nbsp;&nbsp; DomainKeys support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] SSL&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Build with SSL support for spamd/spamc&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] MYSQL&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Add MySQL support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] PGSQL&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Add PostreSQL support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] RAZOR&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Add Vipul&#039;s Razor support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] SPF_QUERY&nbsp;&nbsp;&nbsp;&nbsp; Add SPF query support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] RELAY_COUNTRY Relay country support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] TOOLS&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Install SpamAssassin tools <br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Options for clamav 0.88.5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>[X] MILTER&nbsp;&nbsp; Compile the milter interface&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] CURL&nbsp;&nbsp;&nbsp;&nbsp; Support URL downloading&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] LIBUNRAR Support for external Unrar library&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] STDERR&nbsp;&nbsp; Print logs to stderr instead of stdout <br/><br/>生成初始配置文件<br/><br/>QUOTE:<br/>mail# make initial-config<br/>根据提示创建MailScanner运行所需的目录<br/>mail# mkdir -p /var/spool/MailScanner/incoming<br/>mail# mkdir /var/spool/MailScanner/quarantine<br/>mail# chown -R postfix:postfix /var/spool/MailScanner<br/><br/><br/>分别在rc.conf中加入clamav、spamassassin和MailScanner的启动参数<br/><br/>QUOTE:<br/>mail# echo &#039;clamav_clamd_enable=&quot;YES&quot;&#039; &gt;&gt; /etc/rc.conf<br/>mail# echo &#039;clamav_freshclam_enable=&quot;YES&quot;&#039; &gt;&gt; /etc/rc.conf<br/>mail# echo &#039;clamav_milter_enable=&quot;YES&quot;&#039; &gt;&gt; /etc/rc.conf<br/>mail# echo &#039;mailscanner_enable=&quot;YES&quot;&#039; &gt;&gt; /etc/rc.conf<br/>mail# echo &#039;spamd_enable=&quot;YES&quot;&#039; &gt;&gt; /etc/rc.conf<br/><br/><br/>4.13 安装maildrop-2.0.2<br/><br/>QUOTE:<br/>mail# cd /usr/ports/mail/maildrop<br/>mail# make install WITH_AUTHLIB=yes<br/><br/>以下是我的选择<br/><br/>QUOTE:<br/>&nbsp;&nbsp;&nbsp;&nbsp;Options for maildrop 2.0.2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>[ ] AUTH_LDAP&nbsp;&nbsp; LDAP support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[X] AUTH_MYSQL&nbsp;&nbsp; MySQL support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] AUTH_PGSQL&nbsp;&nbsp; PostgreSQL support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] AUTH_USERDB Userdb support&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>[ ] AUTH_VCHKPW Vpopmail/vchkpw support <br/><br/><br/><br/>QUOTE:<br/>mail# /usr/local/bin/maildrop -v<br/>maildrop 2.0.2 Copyright 1998-2005 Double Precision, Inc.<br/>Courier Authentication Library extension enabled.<br/>Maildir quota extension enabled.<br/>This program is distributed under the terms of the GNU General Public<br/>License. See COPYING for additional information.<br/>出现上面红色的部分表示maildrop支持Courier。<br/><br/><br/>第五章 软件系统配置<br/><br/>为了支持maildrop,先加入vmail用户<br/><br/>QUOTE:<br/>mail# pw adduser vmail -u 1003 -s /sbin/nologin -d /dev/null<br/><br/><br/>5.1 配置cyrus-sasl<br/>创建/usr/local/lib/sasl2/smtpd.conf<br/><br/>QUOTE:<br/>mail# ee /usr/local/lib/sasl2/smtpd.conf<br/>pwcheck_method: auxprop<br/>auxprop_plugin: sql<br/>mech_list: plain login<br/><br/>sql_engine: mysql<br/>sql_hostnames: localhost<br/>sql_user: tmail<br/>sql_passwd: tmail<br/>sql_database: tmail<br/>sql_select: select clear from tmail_users where email=&#039;%u@%r&#039; and smtpaccess=&#039;Y&#039;<br/><br/><br/>5.2 配置postfix<br/><br/>QUOTE:<br/>mail# ln -s /usr/local/sbin/sendmail /usr/sbin/sendmail<br/>注：如果/usr/sbin/sendmail存在就删了再做上链接，如果升级内核和升级系统后要重新做这一步。<br/>mail# echo ‘postfix: root’ &gt;&gt; /etc/aliases<br/>mail# /usr/local/bin/newaliases<br/>mail# chown postfix:postfix /etc/opiekeys<br/>mail# ee /usr/local/etc/postfix/main.cf<br/><br/>修改/usr/local/etc/postfix/main.cf，在文件最后加入以下内容<br/><br/>QUOTE:<br/># new add <br/>myhostname = mail.test.com<br/>smtp_helo_name = $myhostname<br/><br/>local_transport = maildrop<br/>mailbox_transport = maildrop<br/><br/>smtpd_error_sleep_time = 0<br/>smtpd_soft_error_limit = 10<br/>smtpd_hard_error_limit = 20<br/>default_process_limit = 100<br/>#alias_maps&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = hash:/usr/local/etc/postfix/aliases<br/>#Alias_database&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = hash:/usr/local/etc/postfix/aliases<br/>mydestination&nbsp;&nbsp;&nbsp;&nbsp; =&nbsp;&nbsp; mysql:/usr/local/etc/postfix/mysql-mydest.cf<br/>virtual_transport_maps&nbsp;&nbsp;&nbsp;&nbsp; = mysql:/usr/local/etc/postfix/mysql-transport.cf<br/>virtual_alias_maps&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = mysql:/usr/local/etc/postfix/mysql-virtual.cf<br/>#virtual_alias_maps&nbsp;&nbsp; = mysql:/usr/local/etc/postfix/mysql-alias.cf<br/>recipient_bcc_maps = mysql:/usr/local/etc/postfix/mysql-autobbc-in.cf<br/>sender_bcc_maps = mysql:/usr/local/etc/postfix/mysql-autobbc-out.cf<br/>local_recipient_maps = $alias_maps $virtual_mailbox_maps $virtual_maps<br/><br/>virtual_mailbox_base = /mail<br/>virtual_mailbox_maps = mysql:/usr/local/etc/postfix/mysql-virtual-maps.cf<br/>virtual_create_maildirsize = yes<br/>virtual_mailbox_extended = yes<br/>virtual_mailbox_limit_maps = mysql:/usr/local/etc/postfix/mysql-virtual-quota.cf<br/>virtual_mailbox_limit_override = yes<br/>virtual_maildir_limit_message = Sorry, the user&#039;s maildir has overdrawn his diskspace quota, please try again later.<br/>virtual_overquota_bounce = yes<br/>virtual_uid_maps&nbsp;&nbsp;&nbsp;&nbsp; = mysql:/usr/local/etc/postfix/mysql-virtual-uid.cf<br/>virtual_gid_maps&nbsp;&nbsp;&nbsp;&nbsp; = mysql:/usr/local/etc/postfix/mysql-virtual-gid.cf<br/>broken_sasl_auth_clients&nbsp;&nbsp; = yes<br/>smtpd_sasl_auth_enable&nbsp;&nbsp;&nbsp;&nbsp; = yes<br/>smtpd_sasl_security_options = noanonymous<br/>smtpd_client_restrictions = <br/>&nbsp;&nbsp;&nbsp;&nbsp;permit_mynetworks,<br/>&nbsp;&nbsp;&nbsp;&nbsp;permit_sasl_authenticated,<br/>&nbsp;&nbsp;&nbsp;&nbsp;check_client_access mysql:/usr/local/etc/postfix/mysql-access.cf,<br/>&nbsp;&nbsp;&nbsp;&nbsp;permit_auth_destination,<br/>&nbsp;&nbsp;&nbsp;&nbsp;reject <br/>smtpd_sender_restrictions = <br/>&nbsp;&nbsp;&nbsp;&nbsp;reject_unknown_sender_domain,<br/>&nbsp;&nbsp;&nbsp;&nbsp;reject_non_fqdn_sender,<br/>&nbsp;&nbsp;&nbsp;&nbsp;check_sender_access mysql:/usr/local/etc/postfix/mysql-access.cf,<br/>&nbsp;&nbsp;&nbsp;&nbsp;permit<br/>smtpd_recipient_restrictions = <br/>&nbsp;&nbsp;&nbsp;&nbsp;permit_mynetworks,<br/>&nbsp;&nbsp;&nbsp;&nbsp;check_client_access mysql:/usr/local/etc/postfix/mysql-access.cf,<br/>&nbsp;&nbsp;&nbsp;&nbsp;permit_sasl_authenticated,<br/>&nbsp;&nbsp;&nbsp;&nbsp;reject_non_fqdn_sender,<br/>&nbsp;&nbsp;&nbsp;&nbsp;reject_non_fqdn_recipient,<br/>&nbsp;&nbsp;&nbsp;&nbsp;reject_unknown_recipient_domain,<br/>&nbsp;&nbsp;&nbsp;&nbsp;reject_unauth_pipelining,<br/>&nbsp;&nbsp;&nbsp;&nbsp;reject_unauth_destination,<br/>　&nbsp;&nbsp;&nbsp;&nbsp; reject_rbl_client cblless.anti-spam.org.cn,<br/>&nbsp;&nbsp;&nbsp;&nbsp;permit<br/>default_destination_recipient_limit = 1<br/>local_destination_concurrency_limit = 1<br/>maildrop_destination_recipient_limit = 1<br/>message_size_limit = 41943040<br/>smtpd_recipient_limit = 10<br/>bounce_queue_lifetime = 12h<br/>maximal_queue_lifetime = 24h<br/><br/>smtpd_delay_reject = yes<br/>smtpd_helo_required = yes<br/>strict_rfc821_envelopes = yes<br/><br/><br/><br/>QUOTE:<br/>mail# ee /usr/local/etc/postfix/mysql-access.cf<br/>hosts = localhost<br/>user = tmail<br/>password = tmail<br/>dbname = tmail<br/>query = select access from tmail_access where source = &#039;%s&#039;<br/><br/><br/><br/>QUOTE:<br/>mail# ee /usr/local/etc/postfix/mysql-alias.cf<br/>host = localhost<br/>user = tmail<br/>password = tmail<br/>dbname = tmail<br/>table = tmail_virtual<br/>query = select alias from tmail_users where email = &#039;%s&#039;<br/><br/><br/><br/>QUOTE:<br/>mail# ee /usr/local/etc/postfix/mysql-autobbc-in.cf<br/>hosts = localhost<br/>user = tmail<br/>password = tmail<br/>dbname = tmail<br/>query = select autobbc from tmail_autobbc where email = &#039;%s&#039; AND come=&#039;1&#039;<br/><br/><br/><br/>QUOTE:<br/>mail# ee /usr/local/etc/postfix/mysql-autobbc-out.cf<br/>hosts = localhost<br/>user = tmail<br/>password = tmail<br/>dbname = tmail<br/>query = select autobbc from tmail_autobbc where email = &#039;%s&#039; AND &#039;out&#039;=&#039;1&#039;<br/><br/><br/><br/>QUOTE:<br/>mail# ee /usr/local/etc/postfix/mysql-mydest.cf<br/>hosts = localhost<br/>user = tmail<br/>password = tmail<br/>dbname = tmail<br/>table = tmail_domaininfo<br/>query = select domain from tmail_domaininfo where domain = &#039;%s&#039; AND yesno = &#039;1&#039;<br/><br/><br/><br/>QUOTE:<br/>mail# ee /usr/local/etc/postfix/mysql-transport.cf<br/>host = localhost<br/>user = tmail<br/>password = tmail<br/>dbname = tmail<br/>table = tmail_domaininfo<br/>query = select transport from tmail_domaininfo where domain = &#039;%s&#039;<br/><br/><br/><br/>QUOTE:<br/>mail# ee /usr/local/etc/postfix/mysql-virtual-gid.cf<br/>hosts = localhost<br/>user = tmail<br/>password = tmail<br/>dbname = tmail<br/>table = tmail_users<br/>query = select gid from tmail_users where email = &#039;%s&#039;<br/><br/><br/><br/>QUOTE:<br/>mail# ee /usr/local/etc/postfix/mysql-virtual-uid.cf<br/>hosts = localhost<br/>user = tmail<br/>password = tmail<br/>dbname = tmail<br/>table = tmail_users<br/>query = select uid from tmail_users where email = &#039;%s&#039;<br/><br/><br/><br/>QUOTE:<br/>mail# ee /usr/local/etc/postfix/mysql-virtual-maps.cf<br/>host = localhost<br/>user = tmail<br/>password = tmail<br/>dbname = tmail<br/>table = tmail_users<br/>query = select maildir from tmail_users where email = &#039;%s&#039;<br/><br/><br/><br/>QUOTE:<br/>mail# ee /usr/local/etc/postfix/mysql-virtual-quota.cf<br/>hosts = localhost<br/>user = tmail<br/>password = tmail<br/>dbname = tmail<br/>table = tmail_users<br/>query = select quota from tmail_users where email = &#039;%s&#039;<br/><br/><br/><br/>QUOTE:<br/>mail# ee /usr/local/etc/postfix/mysql-virtual.cf<br/>host = localhost<br/>user = tmail<br/>password = tmail<br/>dbname = tmail<br/>table = tmail_virtual<br/>query = select destination from tmail_virtual where email = &#039;%s&#039;<br/><br/><br/>5.3 配置Courier-imap<br/><br/>修改Courier相关设置，/usr/local/etc/courier-imap/imapd：<br/><br/>QUOTE:<br/>IMAP_CAPABILITY=&quot;IMAP4rev1 CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA&quot; <br/><br/><br/>修改/usr/local/etc/courier-imap/pop3d<br/><br/>QUOTE:<br/>POP3AUTH=&quot;LOGIN CRAM-MD5 CRAM-SHA1&quot;<br/><br/><br/>编辑修改/usr/local/etc/authlib/authmysqlrc<br/><br/>QUOTE:<br/>MYSQL_SERVER&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; localhost<br/>MYSQL_USERNAME&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; tmail<br/>MYSQL_PASSWORD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; tmail<br/>MYSQL_PORT&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0<br/>MYSQL_OPT&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0<br/>MYSQL_DATABASE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; tmail<br/>MYSQL_USER_TABLE&nbsp;&nbsp;&nbsp;&nbsp; tmail_users<br/>MYSQL_CRYPT_PWFIELD&nbsp;&nbsp; crypt<br/>#MYSQL_CLEAR_PWFIELD&nbsp;&nbsp; clear<br/>MYSQL_UID_FIELD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; uid<br/>MYSQL_GID_FIELD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; gid<br/>MYSQL_LOGIN_FIELD&nbsp;&nbsp;&nbsp;&nbsp; email<br/>MYSQL_HOME_FIELD&nbsp;&nbsp;&nbsp;&nbsp; homedir<br/>MYSQL_NAME_FIELD&nbsp;&nbsp;&nbsp;&nbsp; realname<br/>MYSQL_MAILDIR_FIELD&nbsp;&nbsp; maildir<br/>MYSQL_QUOTA_FIELD&nbsp;&nbsp;&nbsp;&nbsp; quota<br/>MYSQL_AUXOPTIONS_FIELD CONCAT(&quot;disableimap=&quot;,disableimap,&quot;,disablepop3=&quot;,disablepop3,&quot;,disablewebmail=&quot;,disablewebmail,&quot;,sharedgroup=&quot;,sharedgroup)<br/>MYSQL_WHERE_CLAUSE&nbsp;&nbsp;&nbsp;&nbsp; access=&#039;y&#039;<br/><br/>注：红色部分为一行。这里得用tab键来跳格<br/>编辑/usr/local/etc/authlib/authdaemonrc<br/><br/>QUOTE:<br/>authmodulelist=&quot;authmysql&quot;<br/>authmodulelistorig=&quot;authmysql&quot;<br/>version=&quot;authdaemond.mysql&quot;<br/>daemons=5<br/>authdaemonvar=/var/run/authdaemond<br/>subsystem=mail<br/>DEBUG_LOGIN=0<br/>DEFAULTOPTIONS=&quot;wbnodsn=1&quot;<br/><br/><br/>5.4 安装Tmail管理工具<br/>本节主要介绍如何安装Tmail管理工具。<br/>更改httpd.conf中的Group www、User www修改为： Group vmail、User vmail<br/>安装Tmail管理工具来设置第一个域名和用户<br/>上传管理工具到网站目录<br/>后修改config/config.inc.php中的<br/><br/>QUOTE:<br/>define(MAILDIR,&quot;/mail&quot;);&nbsp;&nbsp;&nbsp;&nbsp; //邮件存放目录<br/>define(MISC, &quot;.misc&quot;);<br/>define(MODE,0700);<br/>$PageSize = 15;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //用户列表和域名列表每一页显示多少行<br/>$host = &quot;localhost&quot;;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //数据库主机名<br/>$user = &quot;tmail&quot;;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //数据库用户名<br/>$dbname = &quot;tmail&quot;;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //数据库名称<br/>$password = &quot;tmail&quot;;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //数据库密码<br/><br/>设置好后，加一个域名为test.com,加一个邮件用户为: test@test.com电子邮件地址已被防垃圾邮件功能所隐藏， 您需要把Javascript功能打开才能看到。 <br/><br/>5.5 登录测试<br/><br/>重新启动相关服务<br/><br/>QUOTE:<br/>mail# /usr/local/etc/rc.d/apache22 restart<br/>mail# /usr/local/etc/rc.d/mysql-server restart<br/>mail# /usr/local/etc/rc.d/courier-authdaemond stop<br/>mail# /usr/local/etc/rc.d/courier-authdaemond start<br/>mail# /usr/local/etc/rc.d/courier-imap-imapd.sh restart<br/>mail# /usr/local/etc/rc.d/courier-imap-pop3d.sh restart<br/>mail# /usr/local/etc/rc.d/postfix reload<br/><br/><br/>生成用户名的base64编码<br/><br/>QUOTE:<br/>mail# perl -MMIME::Base64 -e &#039;print encode_base64(&quot; test@test.com电子邮件地址已被防垃圾邮件功能所隐藏， 您需要把Javascript功能打开才能看到。 &quot;);&#039;<br/>dGVzdEB0ZXN0LmNvbQ==<br/>mail# perl -MMIME::Base64 -e &#039;print encode_base64(&quot;000000&quot;);&#039;<br/>MDAwMDAw<br/><br/>测试25发送<br/><br/>QUOTE:<br/>mail# telnet localhost 25<br/>Trying ::1...<br/>telnet: connect to address ::1: Connection refused<br/>Trying 127.0.0.1...<br/>Connected to localhost.test.com.<br/>Escape character is &#039;^]&#039;.<br/>220 mail.test.com ESMTP Postfix<br/>ehlo mail<br/>250-mail.test.com<br/>250-PIPELINING<br/>250-SIZE 10240000<br/>250-VRFY<br/>250-ETRN<br/>250-AUTH LOGIN PLAIN<br/>250-AUTH=LOGIN PLAIN<br/>250 8BITMIME<br/>auth login<br/>334 VXNlcm5hbWU6<br/>dGVzdEB0ZXN0LmNvbQ==<br/>334 UGFzc3dvcmQ6<br/>MDAwMDAw<br/>235 Authentication successful<br/>MAIL FROM:&lt; test@test.com电子邮件地址已被防垃圾邮件功能所隐藏， 您需要把Javascript功能打开才能看到。 &gt;<br/>250 Ok<br/>RCPT TO:&lt; test@test.com电子邮件地址已被防垃圾邮件功能所隐藏， 您需要把Javascript功能打开才能看到。 &gt;<br/>250 Ok<br/>DATA<br/>354 End data with &lt;CR&gt;&lt;LF&gt;.&lt;CR&gt;&lt;LF&gt;<br/>SUBJECT:test<br/><br/>test<br/><br/>.<br/>250 Ok: queued as 47C6CB83E<br/>quit<br/>221 Bye<br/>Connection closed by foreign host.<br/><br/><br/>测试110收邮件<br/><br/>QUOTE:<br/>mail# telnet localhost 110<br/>Trying ::1...<br/>telnet: connect to address ::1: Connection refused<br/>Trying 127.0.0.1...<br/>Connected to localhost.test.com.<br/>Escape character is &#039;^]&#039;.<br/>+OK Hello there.<br/>user test@test.com电子邮件地址已被防垃圾邮件功能所隐藏， 您需要把Javascript功能打开才能看到。 <br/>+OK Password required.<br/>pass 000000<br/>+OK logged in.<br/>list<br/>+OK POP3 clients that break here, they violate STD53.<br/>1 1563<br/>2 401<br/>.<br/>retr 2<br/>+OK 401 octets follow.<br/>Return-Path: &lt; test@test.com电子邮件地址已被防垃圾邮件功能所隐藏， 您需要把Javascript功能打开才能看到。 &gt;<br/>Delivered-To: test@test.com电子邮件地址已被防垃圾邮件功能所隐藏， 您需要把Javascript功能打开才能看到。 <br/>Received: from mail (localhost.test.com [127.0.0.1])<br/>&nbsp;&nbsp;&nbsp;&nbsp;by mail.test.com (Postfix) with ESMTP id 47C6CB83E<br/>&nbsp;&nbsp;&nbsp;&nbsp;for &lt; test@test.com电子邮件地址已被防垃圾邮件功能所隐藏， 您需要把Javascript功能打开才能看到。 &gt;; Tue, 11 Jul 2006 13:47:28 +0800 (CST)<br/>SUBJECT:test<br/>Message-Id: &lt; 20060711054736.47C6CB83E@mail.test.com电子邮件地址已被防垃圾邮件功能所隐藏， 您需要把Javascript功能打开才能看到。 &gt;<br/>Date: Tue, 11 Jul 2006 13:47:28 +0800 (CST)<br/>From: test@test.com电子邮件地址已被防垃圾邮件功能所隐藏， 您需要把Javascript功能打开才能看到。 <br/>To: undisclosed-recipients:;<br/><br/>test<br/><br/>.<br/>dele 2<br/>+OK Deleted.<br/>quit<br/>+OK Bye-bye.<br/>Connection closed by foreign host.<br/><br/><br/>5.6 垃圾邮件和病毒邮件过滤设置<br/><br/>设置MailScanner<br/>编辑/usr/local/etc/postfix/main.cf<br/><br/>QUOTE:<br/>mail# ee /usr/local/etc/postfix/main.cf<br/><br/>去掉513行的注释<br/><br/>QUOTE:<br/>header_checks = regexp:/usr/local/etc/postfix/header_checks<br/><br/>编辑/usr/local/etc/postfix/header_checks<br/><br/>QUOTE:<br/>mail# ee /usr/local/etc/postfix/header_checks<br/>新加入<br/>/^Received:/ HOLD<br/><br/>重新加载postfix配置文件<br/>mail# postfix reload<br/>编辑/usr/local/etc/MailScanner/MailScanner.conf，以下是我的配置文件，更改相应的参数为下面的格式。<br/><br/>QUOTE:<br/>%org-name% = thismail.org<br/>%org-long-name% = LCSoft<br/>%web-site% = www.thismail.org<br/>%etc-dir% = /usr/local/etc/MailScanner<br/>%report-dir% = /usr/local/share/MailScanner/reports/en<br/>%rules-dir% = /usr/local/etc/MailScanner/rules<br/>%mcp-dir% = /usr/local/etc/MailScanner/mcp<br/>Run As User = postfix<br/>Run As Group = postfix<br/>Incoming Queue Dir = /var/spool/postfix/hold<br/>Outgoing Queue Dir = /var/spool/postfix/incoming<br/>MTA = postfix<br/>Sendmail = /usr/sbin/sendmail<br/>Monitors for ClamAV Updates = /var/db/clamav/*.cvd<br/>SpamAssassin User State Dir = /var/spool/MailScanner/spamassassin<br/>Custom Functions Dir = /usr/local/lib/MailScanner/MailScanner/CustomFunctions<br/>SpamAssassin Install Prefix = /usr/local/bin<br/>SpamAssassin Site Rules Dir = /usr/local/etc/mail/spamassassin<br/>SpamAssassin Local Rules Dir = /usr/local/share/spamassassin<br/><br/><br/>编辑配置文件/usr/local/etc/MailScanner/mcp/mcp.spam.assassin.prefs.conf<br/><br/>QUOTE:<br/>mail# ee /usr/local/etc/MailScanner/mcp/mcp.spam.assassin.prefs.conf<br/># MailScanner<br/># MailScanner users, please see the comments at the bottom of this file.<br/># MailScanner<br/>#<br/># SpamAssassin user preferences file.<br/>#<br/># Format:<br/>#<br/>#&nbsp;&nbsp; required_hits n<br/>#&nbsp;&nbsp;&nbsp;&nbsp; (how many hits are required to tag a mail as spam.)<br/>#<br/>#&nbsp;&nbsp; score SYMBOLIC_TEST_NAME n<br/>#&nbsp;&nbsp;&nbsp;&nbsp; (if this is omitted, 1 is used as a default score.<br/>#&nbsp;&nbsp;&nbsp;&nbsp; Set the score to 0 to ignore the test.)<br/>#<br/># # starts a comment, whitespace is not significant.<br/>#<br/>###########################################################################<br/><br/><br/># Whitelist and blacklist addresses are *not* patterns; they&#039;re just normal<br/># strings. one exception is that &quot;*@isp.com&quot; is allowed. They should be in<br/># lower-case. You can either add multiple addrs on one line,<br/># whitespace-separated, or you can use multiple lines.<br/>#<br/># Monty Solomon: he posts from an ISP that has often been the source of spam<br/># (no fault of his own ;), and sometimes uses Bcc: when mailing.<br/>#<br/>#whitelist_from&nbsp;&nbsp;&nbsp;&nbsp; monty@roscom.com电子邮件地址已被防垃圾邮件功能所隐藏， 您需要把Javascript功能打开才能看到。 <br/><br/># Add your blacklist entries in the same format...<br/>#<br/># blacklist_from&nbsp;&nbsp; friend@public.com电子邮件地址已被防垃圾邮件功能所隐藏， 您需要把Javascript功能打开才能看到。 <br/><br/># Mail using languages used in these country codes will not be marked<br/># as being possibly spam in a foreign language.<br/>#<br/>#ok_locales&nbsp;&nbsp;&nbsp;&nbsp; en<br/><br/>skip_rbl_checks 1<br/><br/>use_bayes 0<br/>use_dcc&nbsp;&nbsp; 0<br/>use_pyzor 0<br/>use_razor1 0<br/>use_razor2 0<br/><br/>decode_attachments 1<br/><br/><br/>编辑配置文件/usr/local/etc/MailScanner/rules/max.message.size.rules<br/><br/>QUOTE:<br/>mail# ee /usr/local/etc/MailScanner/rules/max.message.size.rules<br/># This is an example ruleset to show how rules can have resulting values<br/># other than yes and no. This ruleset demonstrates having a numerical result.<br/># The From: and To: rules show how simple domains can be used to select<br/># different values for the result of the ruleset.<br/># Note that the fields of each rule line can be separated by any whitespace,<br/># any combination of tabs and spaces.<br/>#<br/># The 2 lines involving domain3.com show that for email to user@domain3.com电子邮件地址已被防垃圾邮件功能所隐藏， 您需要把Javascript功能打开才能看到。 <br/># has a limit of 5Mbytes per message, while email to any other user<br/># @domain3.com has a limit of 500Kbytes per message.<br/>#<br/><br/>To:&nbsp;&nbsp;&nbsp;&nbsp; *@domain1.com&nbsp;&nbsp; 10M<br/>To:&nbsp;&nbsp;&nbsp;&nbsp; *@domain2.com&nbsp;&nbsp; 20M<br/>From:&nbsp;&nbsp; user@domain3.com电子邮件地址已被防垃圾邮件功能所隐藏， 您需要把Javascript功能打开才能看到。&nbsp;&nbsp; 5M<br/>From:&nbsp;&nbsp; *@domain3.com&nbsp;&nbsp; 500K<br/><br/>#<br/># The following line specifies the default result used when none of the<br/># other rules match. In this example,<br/># Maximum Message Size = 0<br/># means that there is no limit to the size of the message.<br/>#<br/><br/>FromOrTo: default&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0<br/><br/><br/>编辑配置文件/usr/local/etc/MailScanner/rules/bounce.rules<br/><br/>QUOTE:<br/>mail# ee /usr/local/etc/MailScanner/rules/bounce.rules<br/># You can use this ruleset to enable the &quot;bounce&quot; Spam Action.<br/># You must *only* enable this for mail from sites with which you have<br/># agreed to bounce possible spam. Use it on low-scoring spam only (&lt;10)<br/># and only to your regular customers for use in the rare case that a<br/># message is mis-tagged as spam when it shouldn&#039;t have been.<br/># Beware that many sites will automatically delete the bounce messages<br/># created by using this option unless you have agreed this with them in<br/># advance.<br/><br/># This next line gives an example of how you might enable this option for<br/># a frequent customer of yours.<br/>#From:&nbsp;&nbsp;&nbsp;&nbsp; yourcustomer.com&nbsp;&nbsp; yes<br/><br/># Under no circumstances should this be changed to &quot;yes&quot;.<br/>FromOrTo:&nbsp;&nbsp; default&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; no<br/><br/><br/>重新启动mailscanner.<br/><br/>QUOTE:<br/>mail# /usr/local/etc/rc.d/mailscanner restart<br/><br/><br/>加入中文垃圾邮件规则<br/><br/>QUOTE:<br/>mail# cd /usr/local/share/spamassassin<br/>mail# fetch http://www.ccert.edu.cn/spam/sa/Chinese_rules.cf<br/><br/>注意：由于加入了中文垃圾邮件规则，请把垃圾邮件的评分的分数设置为高一些。<br/>我的设置为8，最高分设置为10，这样可以降低中文邮件的错误识别率。用户可以根据自己的需要来改变这两个分值。<br/><br/>QUOTE:<br/>Required SpamAssassin Score = 8<br/>High SpamAssassin Score = 10<br/><br/>为了避免邮件扫描后主题变成乱码，建议改变以下设置为no<br/><br/>QUOTE:<br/>Virus Modify Subject = no<br/>Filename Modify Subject = no<br/>Content Modify Subject = no<br/>Disarmed Modify Subject = no<br/>Spam Modify Subject = yes<br/>High Scoring Spam Modify Subject = no<br/><br/>扫描垃圾邮件所执行的运作<br/><br/>QUOTE:<br/>Spam Actions = deliver<br/>High Scoring Spam Actions = delete<br/><br/>相关运作参数说明：<br/><br/>QUOTE:<br/>&quot;deliver&quot; -- 邮件正常的转送至原来的收信人。 <br/>&quot;delete&quot; -- 删除邮件。 <br/>&quot;store&quot; -- 将邮件存放至隔离区。 <br/>&quot;bounce&quot; -- 将邮件退给寄信人。 <br/>&quot;forward&quot; -- 提供一个 forward 的邮件位址给系统，系统会自动转寄一份。 <br/>&quot;striphtml&quot; -- 将内嵌 HTML 的邮件转成 Text，你必需要加入 &quot;deliver&quot;，系统才会帮你寄邮件。<br/><br/><br/>允许html邮件通行<br/><br/>QUOTE:<br/>Allow IFrame Tags = yes<br/>Allow Form Tags = yes<br/>Allow Script Tags = yes<br/>Allow WebBugs = disarm<br/>Allow Object Codebase Tags = yes<br/>Convert Dangerous HTML To Text = no<br/>Convert HTML To Text = no<br/><br/><br/>允许本机发送出去的邮件不被MailScanner视为垃圾邮件<br/><br/>QUOTE:<br/>mail# ee /usr/local/etc/MailScanner/rules/spam.whitelist.rules<br/>From:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 127.0.0.1&nbsp;&nbsp;&nbsp;&nbsp; yes<br/><br/>以上规则的说明：以上垃圾邮件的规则是加入了中文垃圾邮件主题和内容的评分规则，所以我设置了一个最低分为8分，最高分为10分的规则，8-10分间的邮件会被打上[spamd]的标识，高于10分的邮件会被自动的删除掉，以上规则允许html邮件通过。<br/><br/>第六章 安装webmail<br/>到开邮件邮件技术论坛<br/>http://www.thismail.org/bbs/thread.php?fid=17<br/>取得最新的webmail<br/>下载后传到服务器上的web目录，后配置php的全局变量为打开<br/><br/>QUOTE:<br/>register_globals = On<br/><br/><br/>并编辑webmail/config/config_inc.php中如下参数<br/><br/>QUOTE:<br/>$CFG_BASEPATH = &quot;/tmp/tmail/temp&quot;; //临时目录，如果不存在，修改完配置文件后再手动创建，并附于相关的权限<br/><br/>// Mysql<br/>define(MYSQL_HOST, &#039;localhost&#039;); //数据库主机名<br/>define(MYSQL_USER, &#039;postfix&#039;);&nbsp;&nbsp; //数据库用户名<br/>define(MYSQL_PASS, &#039;postfix&#039;);&nbsp;&nbsp; //数据库密码<br/>define(MYSQL_DATA, &#039;postfix&#039;);&nbsp;&nbsp; //数据库名称<br/>$CFG_NETDISK_PATH = &quot;/mail/netdisk&quot;; //文件管理(网络磁盘所在的系统路径)如果不存在，修改完配置文件后再手动创建，并附于相关的权限<br/>$CFG_NETDISK_DEFAULT_QUOTA = 10;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //文件管理(网络磁盘)默认大小为10MB,用户可根据自己的需要改变大小<br/>。<br/><br/><br/>QUOTE:<br/>mail# mkdir -p /tmp/tmail/temp<br/>mail# chown -R postfix:postfix /tmp/tmail<br/>mail# mkdir -p /mail/netdisk<br/>mail# chown -R postfix:postfix /mail/netdisk<br/><br/><br/>为了webmail能配合maildrop做中文邮件的过滤。请写/usr/sbin/maildecode文件<br/><br/>QUOTE:<br/>mail# ee /usr/sbin/maildecode<br/>#!/usr/bin/perl <br/><br/># Convert Base64 Or Quoted-printable TO Text <br/><br/>my $a = $ARGV[0] &amp;#124;&amp;#124; &#039;&#039;; <br/><br/>#Maybe arg is include Subject<br/>if ($a=~/^Subject/) { <br/>&nbsp;&nbsp;&nbsp;&nbsp;$a = $ARGV[1] &amp;#124;&amp;#124; &#039;&#039;; <br/>}; <br/><br/><br/>if ($a=~/=?[w-]+?B?(.*)?=$/) { <br/>&nbsp;&nbsp;use MIME::Base64; <br/>&nbsp;&nbsp;$a = decode_base64($1); <br/>}; <br/>if ($a=~/=?[w-]+?Q?(.*)?=$/) { <br/>&nbsp;&nbsp;use MIME::QuotedPrint; <br/>&nbsp;&nbsp;$a = decode_qp($1); <br/>}; <br/><br/>#open(OUTFILE, &quot;&gt;/tmp/list.log&quot;); <br/>#print OUTFILE $a; <br/>#close(OUTFILE); <br/><br/>print $a; <br/><br/>exit(0);<br/><br/><br/>并改变相关的权限<br/><br/>QUOTE:<br/>mail# chmod 755 /usr/sbin/maildecode<br/>mail# chown -R vmail:vmail /usr/sbin/maildecode<br/><br/><br/><br/><br/>安装成功后的webmail<br/><br/>&nbsp;&nbsp;<br/><br/><br/><br/>附一、常见问题<br/>正在收集中……<br/>附二、MailScanner.conf中文参数说明<br/>http://www.thismail.org/bbs/htm_data/7/0509/533.html 
]]>
</description>
</item><item>
<link>http://www.jackxiang.com/post//#blogcomment</link>
<title><![CDATA[[评论] 基于FreeBSD和Postfix的反垃圾、反病毒邮件系统与web mail安装 ]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>http://www.jackxiang.com/post//#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>