在Fedora上建立自己的邮件服务器(4)
来源:天极Yesky 时间:2007-09-12 13:51:00
D.配置postfix.
1.主要是main.cf的配置。
virtual_alias_maps=mysql:/etc/postfix/mysql_virtual_alias_maps.cf
virtual_gid_maps=static:12345
virtual_mailbox_base=/usr/local/virtual
virtual_mailbox_domains=mysql:/etc/postfix/mysql_virtual_domains_maps.cf
virtual_mailbox_maps=mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
virtual_mailbox_limit=51200000
virtual_minimum_uid=12345
virtual_transport=virtual
virtual_uid_maps=static:12345
smtpd_sasl_auth_enable=yes
#smtpd_sasl_local_domain=$myhostname
smtpd_recipient_restrictions=permit_mynetworkspermit_sasl_authenticatedpermit_aut-h_destinationreject
smtpd_sasl_security_options=noanonymous
smtpd_client_restrictions=permit_sasl_authenticated
broken_sasl_auth_clients=yes
2.mysql_virtual_alias_maps.cf如下
user=postfix
password=postfix
hosts=localhost
dbname=postfix
table=alias
select_field=goto
where_field=username
3.mysql_virtual_domains_maps.cf如下
user=postfix
password=postfix
hosts=localhost
dbname=postfix
table=domain
select_field=description
where_field=domain
4.mysql_virtual_mailbox_maps.cf如下
user=postfix
password=postfix
hosts=localhost
dbname=postfix
table=mailbox
select_field=maildir
where_field=username
E.建立
[root@localhostroot]#mkdir/usr/local/virtual
[root@localhostroot]#chown-Rpostfix:postfix/usr/local/virtual
[root@localhostroot]#chmod-R751/usr/local/virtual
七、测试端口25
A.mysql>usepostfix
Readingtableinformationforcompletionoftableandcolumnnames
Youcanturnoffthisfeaturetogetaquickerstartupwith-A
Databasechanged
mysql>showtables;
+----------+
|Tables_in_postfix|
+----------+
|alias|
|domain|
|mailbox|
+----------+
3rowsinset(0.00sec)
mysql>INSERTINTOalias(username,goto)VALUES('postmaster@lansemail.com','tester@lansemail.com');
QueryOK,1rowaffected(0.08sec)
mysql>INSERTINTOdomain(domain,description)VALUES('lansemail.com','local:');QueryOK,1rowaffected(0.00sec)
mysql>INSERTINTOmailbox(username,password,home,maildir,name,domain,create_date,create_time)VALUES('tester','$1$pi.WVgBx$a3dUCzBnbY76jnZlqWQCQ/','/usr/local/virtual/','tester@lansemail.com/','tes-ter','lansemail.com','2003-11-19','21:24:00');QueryOK,1rowaffected(0.03sec)-
mysql>select*frommailbox
->;
+----+-----+---+----+-----+----+----+--+----+--+-+-+----+------+-------+----------+----+
|userid|username|password|home|maildir|name|uid|gid|quota|domain|create_date|cre-ate_time|change_date|change_time|last_access|passwd_lastchanged|status|
+----+-----+------------------+-----------+------------+----+----+----+----+--------+-------+-------+-------+-------+-------+----------+----+
||tester|$1$pi.WVgBx$a3dUCzBnbY76jnZlqWQCQ/|/usr/local/virtual/|tester@lansemail.com/|tester-|12345|12345||lansemail.com|2003-11-19|21:24:00|0000-00-00|00:00:00|0|0|1|
+----+-----+------------------+-----------+------------+----+----+----+----+--------+-------+-------+-------+-------+-------+----------+----+
1rowinset(0.11sec)
mysql>
这里用的username为tester,只是用来测试端口用的,正式使用一定要用全名tester@lansemail.com.否则信件收不到,信息如下
无法到达以下收件人:
'tester@lansemail.com',时间为21/11/200313:05
450<tester@lansemail.com>:Userunknowninlocalrecipienttable
B.[root@localhostpostfix]#telnetlocalhost25
Trying127.0.0.1...
Connectedtolocalhost.
Escapecharacteris'^]'.
220localhost.localdomainESMTPPostfix
ehlolocalhost
250-localhost.localdomain
250-PIPELINING
250-SIZE10240000
250-VRFY
250-ETRN
250-AUTHLOGINPLAINOTP
250-AUTH=LOGINPLAINOTP
250-XVERP
2508BITMIME
authplaindGVzdGVyAHRlc3RlcgB0ZXN0cHc=
235Authenticationsuccessful
quit
221Bye
Connectionclosedbyforeignhost.
[root@localhostpostfix]#telnetlocalhost25
Trying127.0.0.1...
Connectedtolocalhost.
Escapecharacteris'^]'.
220localhost.localdomainESMTPPostfix
ehlolocalhost
250-localhost.localdomain
250-PIPELINING
250-SIZE10240000
250-VRFY
250-ETRN
250-AUTHLOGINPLAINOTP
250-AUTH=LOGINPLAINOTP
250-XVERP
2508BITMIME
authlogin
334VXNlcm5hbWU6
dGVzdGVy-->username:tester(用printf'tester'|mmencode取得。)
334UGFzc3dvcmQ6
dGVzdHB3-->password:testpw
235Authenticationsuccessful
quit
221Bye
Connectionclosedbyforeignhost.
[root@localhostpostfix]#