基于Fedora上建立功能强大的邮件服务器
点击次数:23 次 发布日期:2008-11-22 09:43:11 作者:源代码网
|
源代码网推荐一、软件的准备 源代码网推荐A.检查你的系统是否已安装了以下软件 源代码网推荐1.pam 源代码网推荐2.pam-devel 源代码网推荐3.mysql 源代码网推荐4.mysql-servel 源代码网推荐5.mysql-devel 源代码网推荐6.imap-devel 源代码网推荐7.sharutils 源代码网推荐 源代码网推荐B.下载以下软件 源代码网推荐1.metamail*.i386.rpm 源代码网推荐2.pam-mysql 源代码网推荐3.cyrus-sasl-2.1.15 源代码网推荐4.postfix-2.0.16 源代码网推荐5.courier-imap 源代码网推荐 源代码网推荐C.说明 源代码网推荐 源代码网推荐mysql-devel在第3个盘。我忘了装,结果pam-mysql和postfix的编译过不了。metamail和sharutils是取验证码用的。 源代码网推荐 源代码网推荐二、mysql数据库和表的建立 源代码网推荐A.[root@localhostroot]#mysql 源代码网推荐 源代码网推荐WelcometotheMySQLmonitor. Commandsendwith;org. 源代码网推荐YourMySQLconnectionidis3toserverversion:3.23.58 源代码网推荐 源代码网推荐Type"help;"or"h"forhelp.Type"c"toclearthebuffer. 源代码网推荐 源代码网推荐mysql>usemysql 源代码网推荐Readingtableinformationforcompletionoftableandcolumnnames 源代码网推荐Youcanturnoffthisfeaturetogetaquickerstartupwith-A 源代码网推荐 源代码网推荐Databasechanged 源代码网推荐mysql>INSERTINTOdb(Host,Db,User,Select_priv)VALUES("localhost","postfix","postfix","Y"); 源代码网推荐QueryOK,1rowaffected(0.00sec) 源代码网推荐 源代码网推荐mysql>CREATEDATABASEpostfix; 源代码网推荐QueryOK,1rowaffected(0.00sec) 源代码网推荐 源代码网推荐mysql>GRANTALLONpostfix.*TOpostfix@localhost 源代码网推荐->IDENTIFIEDBY"postfix"; 源代码网推荐QueryOK,0rowsaffected(0.00sec) 源代码网推荐 源代码网推荐mysql>FLUSHPRIVILEGES; 源代码网推荐QueryOK,0rowsaffected(0.00sec) 源代码网推荐 源代码网推荐mysql>quit 源代码网推荐Bye 源代码网推荐 源代码网推荐B.把下列文字复制存为postfix.sql 源代码网推荐 源代码网推荐########potfix_sql########bigin################## 源代码网推荐CREATETABLEalias( 源代码网推荐usernamevarchar(255)NOTNULLdefault"", 源代码网推荐gototextNOTNULL, 源代码网推荐domainvarchar(255)NOTNULLdefault"", 源代码网推荐PRIMARYKEY(username) 源代码网推荐)TYPE=MyISAM; 源代码网推荐CREATETABLEdomain( 源代码网推荐domainvarchar(255)NOTNULLdefault"", 源代码网推荐descriptionvarchar(255)NOTNULLdefault"", 源代码网推荐PRIMARYKEY(domain) 源代码网推荐)TYPE=MyISAM; 源代码网推荐 源代码网推荐CREATETABLEmailbox( 源代码网推荐useridchar(20)binaryNOTNULLdefault"", 源代码网推荐usernamevarchar(255)NOTNULLdefault"", 源代码网推荐passwordvarchar(255)NOTNULLdefault"", 源代码网推荐homevarchar(255)NOTNULLdefault"", 源代码网推荐maildirvarchar(255)NOTNULLdefault"", 源代码网推荐namevarchar(255)NOTNULLdefault"", 源代码网推荐uidsmallint(5)unsignedNOTNULLdefault"12345", 源代码网推荐gidsmallint(5)unsignedNOTNULLdefault"12345", 源代码网推荐quotavarchar(255)NOTNULLdefault"", 源代码网推荐domainvarchar(255)NOTNULLdefault"", 源代码网推荐create_datedateNOTNULLdefault"0000-00-00", 源代码网推荐create_timetimeNOTNULLdefault"00:00:00", 源代码网推荐change_datedateNOTNULLdefault"0000-00-00", 源代码网推荐change_timetimeNOTNULLdefault"00:00:00", 源代码网推荐last_accessint(10)unsignedNOTNULLdefault"0", 源代码网推荐passwd_lastchangedint(10)unsignedNOTNULLdefault"0", 源代码网推荐statustinyint(4)NOTNULLdefault"1", 源代码网推荐PRIMARYKEY(username), 源代码网推荐KEYstatus(status) 源代码网推荐)TYPE=MyISAM; 源代码网推荐#####################end######################## 源代码网推荐 源代码网推荐[root@localhostroot]#mysqlpostfix</work/postfix.sql 源代码网推荐 源代码网推荐C.对表的内容的一些说明. 源代码网推荐 源代码网推荐mysql>usepostfix 源代码网推荐Readingtableinformationforcompletionoftableandcolumnnames 源代码网推荐Youcanturnoffthisfeaturetogetaquickerstartupwith-A 源代码网推荐 源代码网推荐Databasechanged 源代码网推荐mysql>showtables; 源代码网推荐+-------------------+ 源代码网推荐|Tables_in_postfix| 源代码网推荐+-------------------+ 源代码网推荐|alias| 源代码网推荐|domain| 源代码网推荐|mailbox | 源代码网推荐+-------------------+ 源代码网推荐3rowsinset(0.00sec) 源代码网推荐 源代码网推荐mysql>descalias; 源代码网推荐+----------+--------------+------+-----+---------+-------+ 源代码网推荐|Field|Type|Null|Key|Default|Extra| 源代码网推荐+----------+--------------+------+-----+---------+-------+ 源代码网推荐|username|varchar(255)| |PRI|| | 源代码网推荐|goto|text| ||| | 源代码网推荐|domain |varchar(255)| ||| | 源代码网推荐+----------+--------------+------+-----+---------+-------+ 源代码网推荐3rowsinset(0.00sec) 源代码网推荐 源代码网推荐mysql>descdomain; 源代码网推荐+-------------+--------------+------+-----+---------+-------+ 源代码网推荐|Field |Type|Null|Key|Default|Extra| 源代码网推荐+-------------+--------------+------+-----+---------+-------+ 源代码网推荐|domain |varchar(255)| |PRI|| | 源代码网推荐|description|varchar(255)| ||| | 源代码网推荐+-------------+--------------+------+-----+---------+-------+ 源代码网推荐2rowsinset(0.00sec) 源代码网推荐 源代码网推荐mysql>descmailbox; 源代码网推荐+--------------------+----------------------+------+-----+------------+-------+ 源代码网推荐|Field |Type|Null|Key|Default|Extra| 源代码网推荐+--------------------+----------------------+------+-----+------------+-------+ 源代码网推荐|userid|varchar(20)binary | ||| | 源代码网推荐|username |varchar(255)| |PRI|| | 源代码网推荐|password |varchar(255)| ||| | 源代码网推荐|home |varchar(255)| ||| | 源代码网推荐|maildir|varchar(255)| ||| | 源代码网推荐|name |varchar(255)| ||| | 源代码网推荐|uid|smallint(5)unsigned| ||12345 | | 源代码网推荐|gid|smallint(5)unsigned| ||12345 | | 源代码网推荐|quota |varchar(255)| ||| | 源代码网推荐|domain|varchar(255)| ||| | 源代码网推荐|create_date|date| ||0000-00-00| | 源代码网推荐|create_time|time| ||00:00:00 | | 源代码网推荐|change_date|date| ||0000-00-00| | 源代码网推荐|change_time|time| ||00:00:00 | | 源代码网推荐|last_access|int(10)unsigned| ||0 | | 源代码网推荐|passwd_lastchanged|int(10)unsigned| ||0 | | 源代码网推荐|status|tinyint(4) | |MUL|1 | | 源代码网推荐+--------------------+----------------------+------+-----+------------+-------+ 源代码网推荐17rowsinset(0.00sec) 源代码网推荐 源代码网推荐mysql> 源代码网推荐domain表的解释: 源代码网推荐domain任意的domain. 源代码网推荐description通常是2种"local:"用于本地的or"virtual:"用于是虚拟的. 源代码网推荐alias表的解释: 源代码网推荐username是虚拟的邮箱address@domain.tld,将被转发到goto下的联结中. 源代码网推荐goto可以用简单的名字,如果是本地用户名,如(root,postmaster,etc.),或者是整个的邮箱名字,user@domain.tld。 源代码网推荐 源代码网推荐Mailbox表的内容: 源代码网推荐Userid使用者编码 源代码网推荐username可以是user.domain.tld或user@domain.tld 源代码网推荐password在mysql中用encrypt("password")输入. 源代码网推荐name使用着的真实姓名。 源代码网推荐uid虚拟用户身份uid 源代码网推荐gid组的gid 源代码网推荐home"/usr/local/virtual/".Maildirs必须在此目录下。 源代码网推荐domain这栏可以不要,但有些软件需要他。 源代码网推荐maildir是整个地址,必须带”/”结尾。 源代码网推荐Quota邮箱的空间或信息量的限制。 源代码网推荐status0为禁止。"MYSQL_WHERE_CLAUSE=status" . 源代码网推荐 源代码网推荐三、pam-mysql的编译 源代码网推荐tarpam-mysql-5.0.tar.gz 源代码网推荐makecppam_mysql.so/lib/security 源代码网推荐 源代码网推荐四、修改pam 源代码网推荐[root@localhostpam_mysql]#cd/etc/pam.d 源代码网推荐[root@localhostpam.d]#cp/work/postfixpostfix 源代码网推荐[root@localhostpam.d]# 源代码网推荐postfix的内容如下: 源代码网推荐##########/etc/pam.d/postfix################## 源代码网推荐echoauthsufficientpam_mysql.souser=postfixpasswd=postfixhost=localhostdb=postfixtable=mailboxusercolumn=usernamepasswdcolumn=passwordcrypt=1 源代码网推荐echoaccountrequir源代码网供稿. |
