| 導購 | 订阅 | 在线投稿
分享
 
 
 

在DEBIAN 下安裝POSTFIX 郵件系統

來源:互聯網  2008-05-31 00:04:44  評論

作者:馮勇 fengyongchuang # yahoo.com.cn (≠%26amp;鍵盤人生$:71633908) +

| 8zlE/i

日期:2006-05-18 +KuwkyIyM

gdVqI8%]Y

技術支持網站:www.extmail.org :y9fJ

X

QQ群: 9\ylxh i

:EWxg$

網管之家: 5929685 },/

網管之家-UNIX:3791457 Qhh']M[*Q

Extmail 群/postfix 1: 6769767 2[

Extmail 群/postfix 2: 18051473 bdB+PNmn(

%26amp;z^Rc2rvs

版權所有,複制或轉載時請保留作者信息。尊重他人的勞動成果就等于尊重自己。 w|jzXPmZ1

fN$#UwOm

如有問題請到下面網址提問: n6%26amp;?K6

'MLq(c )

http://www.extmail.org/forum/archive/2/0605/1771.html K5tkp`D

vP?c{ L2

本次文章的配置文件:mail.tar.gz O\ Hy#8M*

Bt

一直想寫一篇DEBIAN 下的郵件系統安裝文檔,因爲自己太懶一直沒有動手,今天閑著沒事,把文檔寫出來,供各位參考同時給自己留一份筆記。 mau%)iD

^h6g.eO@

這次沒有使用maildrop,原因:1、debian 裏的maildrop 版本好像是1.7的,配置有點複雜,所以沒有去研究,如果那位兄弟配置成功,告訴我。2、公司用webmail 的人少,郵件過濾規則很少人用,以前用maildrop 主要是用他來將垃圾郵件移到垃圾信箱,現在使用了slockd ,垃圾郵件少了,再說沒有用webmail。 B`tV9 B.

oaZI;;W

N7'VXl

!p5.$$~

一、安裝DEBAIN VmNO 6$aG

1、debian 的好處 pO|ydf

其實我喜歡很喜歡這個LINUX發行版,因爲他有點像freeBSD 的軟件安裝方式。我對debian 並不是十分熟悉,如果有寫錯的地方,請指正。 ?P;"B#eg*

},Ky# \mp

2、下載debian 可以到官方網站或linuxsir 下載。 ^~ ddT

我使用的版本是:debian-31r2-i386-netinst.iso )69j gVDv

z(` D /

http://debian.linuxsir.org/main/?q=node/92 @~5-@cg:$

bP%26amp;*38 nH

http://www.us.debian.org/ o*fk) if

1S1;:"eV

http://debian.cn99.com }[Puy2zK

02Eu !$kI

... jmr4 de6(a

Iw/-U6`f$P

3、安裝 DBRO-0W3

跟據我的愛好喜歡拿10G 左右的空間作爲系統,把數據資料放到另一個分區或硬盤中,並裝載到/home/data 這個目錄,如果你不喜歡這樣,可以跟據自己的愛好,修改配置文檔的路徑。 yt~i#3

KP S6j@

4、主機名 0z_fj'0

安裝時可以輸入主機名,或者編輯/etc/host.conf 修改你的主機名。 S }Bf.K

SNGl"(f

這裏使用 mail.extmail.org 爲例。 pt4ox"*5

f5ZFZO;B

5、更新你的軟件包 !

在複制完文件後,會出現一個配置過程,在配置 apt 那裏添加一個安裝源,選擇ftp 現先擇 china 可以選擇下面兩個安裝源: 5nnhW?@7

NHu/*++=

ftp.linuxforum.net 或 debian.cn99.com {+dz_A

E= 9

本人用的是網通ADSL 選擇ftp.linuxforum.net 好像快一點。 6uXa2p

lWgz kx*q

如果你在安裝時跳過了這一步,可以進入系統後可以再次運行base-config 選擇configure apt 進行再次配置。 $D2y}\,

* H;ljn

6、安裝SSH _J ` dC

爲了方便安裝,建義使用SSH 進行遠程操作,方便複制與粘貼。 ") O:A a}

]]uk8kF:

apt-get install ssh $R*$nz@

)RZ NQ:

*至于apt 系統的使用方法,建議大家去看debian 的文檔,寫得非常詳細。 $-/g'"

%Q=gZna

http://debian.linuxsir.org/book/reference/lyoo/ ^UZYjh[0

0i$eK2l

二、安裝軟件 _pD_W5L0|

1、下載需要的軟件 ll2tH16

到www.extmail.org 下載extmail/extman/slockd ,通過FTP 上傳到服務器,並解壓 A +^K;:

f)_T'A/:B;

tar zxvf extmail-0\[1\].23-20060219.tar.gz ^I9%26amp;Rqj~!

qbQ`V u@

tar zxvf extman-0\[1\].15-20060518.tar.gz P Xt6;

sW _PrGBP

tar zxvf slockd-0\[1\].08.tar.gz tgA4X 2

S: wc)p

V~Xwa %26amp;

M1~|PfQJv

2、安裝mysql qfaE_|b%:

mail:~# apt-get install mysql-server Y26}R;Fa

|@ 9fZw

安裝完mysql 後,將extman 的數據導入到mysql 中 `oJmjbc

m^I/byv)

mail:/home/fy138# cd extman-0.15-20060518/docs rax^NCPR#

i;9!aUL=

mail:/home/fy138/extman-0.15-20060518/docs# mysql -uroot Ds~K $)/t

[sYb !o) 

$:

打開extman-0.15-20060518/docs/init.sql 將裏{crypt} 這些字符串刪除,否則pop3可能無法登陸,如果你懶得去修改init.sql 可以安裝完成後用phpmyadmin修改相關記錄。 'B="jwbnW

g_-lB4_+

將uidnumber/gidnumber 改爲postfix 的uid/gid 查看uid/gid 方法 fI] a8-dh

I^T"z

mail:/etc/postfix# id postfix _ZUJff#

uid=105(postfix) gid=106(postfix) groups=106(postfix) nn}XyNH!`{

!0_{XQ8gT@

mail:/home/fy138/extman-0.15-20060518/docs# mysql -uroot =Qg"J 3A

( Uea_"

3、安裝apache 2 Cq*:^ c%26amp;

mail:~# apt-get install apache2 92 K }t6

_ dbC/

4、安裝php4 gzSMM`0 )c

mail:~# apt-get install php4 php4-mysql libapache2-mod-php4 phpmyadmin Zp{ , B

~0) drep

5、安裝postfix QP!WL

mail:~# apt-get install postfix postfix-mysql postfix-tls postfix-doc :%\,,Tiis

V \[(2}.

在彈出的對話框中選擇No configuration。 u]vw[j$l

;\V.';:

A、將extman目錄下所有 mysql_virtul_*.cf 複制到/etc/postfix 目錄下。 r@;J xZN

,3V-0cbq

mail:~#cd /home/fy138/extman-0.15-20060518/docs N~3K9z?s

C MFSbaX

注意,這裏我的存放位置是/home/fy138 ,不要照搬了。 qWTr'^2)

FO ,)d4 E

mail:/home/fy138/extman-0.15-20060518/docs# cp mysql_virtual_*.cf /etc/postfix/

^B(sj*Fo

B、配置 /etc/postfix/main.cf,如果你的main.cf 已存先改名再重新編輯一個,加入下面的內容。 M$ %26amp;Qx\

Cvd[=%~V0

?`YM3to

###################BASE################## *'WZHOg@

myhostname=mail.extmail.org z_}q!@ht%26amp;L

mydomain = extmail.org { Vw{|q8[}

mydestination = $myhostname ^:;HH'

local_recipient_maps = Ujh uXx[

smtpd_banner = extmail.org ESMTP Mail System OTFD ft

message_size_limit = 14680064 rqW^\Sn

#################MySQL################ F :*H Y|

5:P)_-V

virtual_gid_maps=static:106virtual_uid_maps=static:105virtual_transport = virtual 2Z+"DF

virtual_alias_maps =mysql:/etc/postfix/mysql_virtual_alias_maps.cf Re,Z3l2

virtual_mailbox_base = /home/data/domains #W8_! B

virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_domains_maps.cf Kk0@TUvB%26amp;

virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf [4 5Z=ZZ

 !!AnG(/

'md fxPu

################Quota################ MMy?eyP

virtual_create_maildirsize = yes \xL~${$9

virtual_mailbox_extended = yes 1J71+(@~

virtual_mailbox_limit_maps = mysql:/etc/postfix/mysql_virtual_mailbox_limit_maps.cf w \A Tx;-

virtual_mailbox_limit_override = yes 3.Ar ;

virtual_maildir_limit_message = Sorry,the user's Maildir has overdrawn his diskspace quota ,please tray again later. CN6c

virtual_overquota_bounce = yes "8kJXBqw

MZox4O

##############SASL#################### 5j2~S%26amp;

smtpd_sasl_auth_enable = yes ]ZR|MQ$Cik

smtpd_sasl2_auth_enable = yes j# sIr- L

smtpd_sasl_security_options = noanonymous t2VW'V`

broken_sasl_auth_clients = yes U{fr*_

r1gF#VO$

smtpd_recipient_restrictions = |L+vFSL

permit_mynetworks, permit_sasl_authenticated, reject_non_fqdn_hostname,?reject_non_fqdn_sender,?reject_non_fqdn_recipient,?reject_unauth_destination,?reject_unauth_pipelining,?reject_invalid_hostname,?check_policy_service inet:127.0.0.1:10030  $ Ye

將 /etc/postfix/目錄下面以mysql_virtul_*.cf 開頭的文件,將裏面的hosts=localhost 改爲hosts=127.0.0.1 ,否則postfix 連接mysql 會出現問題 。 Seiv{}

~xId+ H

如果更改master.cf 將postfix 不以chroot 方式運行是否正常?還沒有去試。 ]nGj9$=8$

gIxXz"

X!ZQ=JWN

gmjH-Ft

將/etc/postfix/master.cf中的下面幾行把注釋去掉 AH?gw\ 3n

346 n{K

/Hs%gb%

# only used by postfix-tls ]Skgm/ q

tlsmgr fifo - - n 300 1 tlsmgr *![Z4J*{

smtps inet n - n - - smtpd -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes = CC03%

587 inet n - n - - smtpd -o smtpd_enforce_tls=yes -o smtpd_sasl_auth_enable=yes TNR:Z

,;!2'O^@

%n:b{"

6、安裝cyrus-sasl2 G-vT/(Xrt

mail:~# apt-get install libsasl2 libsasl2-modules libsasl2-modules-sql 921c#RF

KTa ,B5_

創建/etc/postfix/sasl/smtpd.conf 加入下面的內容。 ck4{%26amp;zp%

z{ /fIHJg

ND%1wr `u

pwcheck_method:authdaemond ,{

log_level:3 `o*8wNh`)

mech_list:PLAIN LOGIN .W-SNqC)

authdaemond_path:/var/run/courier/authdaemon/socket _o?t(BZp

注意:在進行smtpd 認證測試時,maillog 提示找不到 /var/run/courier/authdaemon/socket 通常是下面的問題 :1、權限 2、chroot 。

3!5[=%26amp;

出錯郵件日志: ((~p[8p

%R5N4#Mi

May 20 17:35:26 mail postfix/smtpd[1229]: warning: SASL authentication failure: cannot connect to Courier authdaemond: No such file or directory Y`{R7un

v8c$1MpBj

+6eSgv_B

解決方法(引用wangpenghui 原文,Thanks! ^_^,本人使用了第二種方法,另外還要注意smtpd.conf文件中的空格!) W#.$x66

1%lqUpr^

解決方法有如下兩種, R%26amp;$?t%"F

1.對于postfix不做任何修改,而是在每次couier-authdaemon啓動之後都創建 -fkueXA^

?,Mo.

SZ2ldmlk[X

ln -f /var/run/courier/authdaemon/socket /var/spool/postfix/var/run/courier/authdaemon/socket XlWh

z})nA/ I}

的硬鏈接. 同時對于 [+Nu]-@

mSSYe%+dP

/var/run/courier/authdaemon/socket nV]8S[4O

/var/spool/postfix/var/run/courier/authdaemon/socket 5 #OI

`h

的整個路徑賦予postfix用戶于讀權限。一般爲755. #XEG\z

2.第二種就是修改postfix中master.cf文件的如下行: 9h{Eh

bW_`:

smtp inet n - - - - smtpd t|-I_]`X"

'1 L+c

爲 %FpMC.JE

o/2Z38=F

smtp inet n - n - - smtpd Ze7W96Px

}^y]bdD'

這樣smtpd程序就不是運行在chroot狀態,那麽postfix的smtpd程序就可以通過smtpd.conf中的 5.Q"[*b=Y

authdaemond_path參數找到authdaemon的socket文件。不過也要注意權限問題,要不然就會出現connection refused的錯誤。這裏指的權限是/var/run/courier/authdaemon/socket整個路徑的權限,而不僅僅是socket文件的權限。 sK/i(-@k

.2Orf|

第二種方法相對于第一種方法來說,比較容易,但是增大了安全隱患。管理員可自行選擇使用哪種方式。 $2~D;B

當然,我這裏也是抛磚引玉,肯定還有更好的解決辦法。希望大家能夠賜教。 F%26amp;mKJc!d;|

參考:http://www.extmail.org/forum/archive/2/0605/1723.html Wdo K(Z

?4V .

7、安裝courier-imap ld, qX

注意安裝時,會提示你是否創建一個目錄來放這些配置文件,要選擇 YES 否則可能你的文件位置與下面配置的不一樣。 m,2}^_

{Jm?Q}mUp

mail:~# apt-get install courier-authdaemon courier-authmysql courier-base courier-imap courier-pop courier-pop-ssl courier-imap-ssl xceT(

e~si{ *sJ

A、配置courier-authdaemon ,autdaemon 是郵件系統認證的主要軟件,很多人無法通過SMTPD認證多數問題在這裏。 kMhx7qBx[

gb;l.'o`

將/etc/courier/authdaemonrc 改名爲 /etc/courier/authdaemonrc.bak %26amp;HY`Y

V^hHb.S

_z]WII D

authmodulelist="authmysql" h_}mbMIOu

authmodulelistorig="authmysql" P[l-u^P

version="authdaemond.mysql" DXlRDDrt

daemons=5 ^@:v[ KPO

authdaemover=/var/run/courier/authdaemon a%_UNX

subsystem=mail 9uT#[G

DEBUG_LOGIN=2 KrI[vk[I%26amp;3

DEFAULTOPTIONS="wbnodsn=1" WU/7Fi

將/etc/courier/authmysqlrc 改名爲 authmysqlrc.bak ,創建/etc/courier/authmysqlrc 輸入下面的內容。 ;Z8|5Do

18!^y`Y

AQgq,R#

MYSQL_SERVER localhost P"xhe7SRn

MYSQL_USERNAME extmail aJ2=bBFwc

MYSQL_PASSWORD extmail (  X

MYSQL_PORT 0 4s-JE 

MYSQL_OPT 0 w$VB7 Ct

MYSQL_DATABASE extmail WJ.~KG7

MYSQL_SELECT_CLAUSE SELECT username,password,"",uidnumber,gidnumber,CONCAT('/home/data/domains/',homedir),CONCAT('/home/data/domains/',maildir),quota,name FROM mailbox WHERE username = '$(local_part)@$(domain)' af]jc{6N

修改authdaemond 的權限,讓其它程序有權限訪問他,重啓authdaemond 3\7fzQM=

}j7]^yI

chmod -R +x /var/run/courier/authdaemon *r!]ob

T R#1#=,*

/etc/init.d/courier-authdaemon restart

 R+!

B、創建測試用戶的目錄 y]oIJbjy0

BG8(^W'J{

mail:/etc/postfix# id postfix Kcy=^0.d

uid=105(postfix) gid=106(postfix) groups=106(postfix) V !vI/-YO

IZs|b'x(v

mail:/etc/courier# mkdir -p /home/data/domains/extmail.org/test F\vw9M v#

A`Y ]w

mail:/etc/courier# /usr/bin/maildirmake /home/data/domains/extmail.org/test/Maildir ^cn:5A.Z

mail:/etc/courier# chown -R 105:106 /home/data/domains/ 5Q4v?$

g86~^ |s

C、測試系統 Q H*W Gbx

Bg_]YkP+

打開一個窗口,輸入 tail -f /var/log/mail.log w(m{.'

olX7?P0

將測試的用戶名和密碼進行base64 編碼 E1[Q-zp9

:\T:6y

%perl -MMIME::Base64 -e 'print encode_base64("test\@extmail.org");' uk@#0{2n(

dGVzdEBleHRtYWlsLm9yZw== RW~fIv,/

%perl -MMIME::Base64 -e 'print encode_base64("test");' f'SB%!Ol

dGVzdA==測試smtpd 發郵件 tq-Ugu_I

d__!`o

mail:/etc/postfix# telnet localhost 25 eA=_ w@7

Trying 127.0.0.1... $-H'O Y

Connected to localhost. 8YrX

Escape character is '^]'. ru9M@7xM_

220 extmail.org ESMTP Mail System K8AjUc.

ehlo test qGHS/7\@D

250-mail.extmail.org @[,7!b

250-PIPELINING M'W.cYH

250-SIZE 14680064 ?E|?

250-VRFY im1  +r,

250-ETRN c6OoP8XP

250-AUTH LOGIN PLAIN WV7e9CV\o*

250-AUTH=LOGIN PLAIN D`a6[p,

250 8BITMIME I! SzuAr\

auth login `b]=j

334 VXNlcm5hbWU6 }v*`rA,

dGVzdEBleHRtYWlsLm9yZw== k:q/*  

334 UGFzc3dvcmQ6 rW*.CV

dGVzdA== H*Hv l

235 Authentication successful ,XgQ@~nzpi

mail from: D~VwF2 d

250 Ok +?3k( b;

rcpt to: z\},s%26amp;

250 Ok D_XzG9

data ,:K2Lfa

354 End data with . X$]= =|M44

test {tcWq!

. iC(R C3?j

250 Ok: queued as C2FF131B85 "vNx`OV

quit ]44$Ur![

221 Bye rovLVc@P

Connection closed by foreign host. $B)-Hy73

mW7ezG!%

mail.log 應該有如下記錄 /XBNoj|xg

% ?SO

9Vj774f }

May 20 19:37:32 mail postfix/smtpd[1763]: connect from localhost[127.0.0.1] !xCN`/hg

May 20 19:37:40 mail postfix/smtpd[1763]: disconnect from localhost[127.0.0.1] cJ[47@o\

May 20 19:37:43 mail postfix/smtpd[1763]: connect from localhost[127.0.0.1] uk.[;

May 20 19:38:24 mail authdaemond.mysql: received auth request, service=smtp, authtype=login F6gEnt =

May 20 19:38:24 mail authdaemond.mysql: authmysql: trying this module UGI pg

May 20 19:38:24 mail authdaemond.mysql: SQL query: SELECT username,password,"",uidnumber,gidnumber,CONCAT('/home/data/domains/',homedir),CONCAT('/home/data/domains/',maildir),quota,name FROM mailbox WHERE username = 'test@extmail.org' `:U#`-)Xq

May 20 19:38:24 mail authdaemond.mysql: password matches successfully bSb)/z1

May 20 19:38:24 mail authdaemond.mysql: authmysql: sysusername=null, sysuserid=105, sysgroupid=106, homedir=/home/data/domains/extmail.org/test, address=test@extmail.org, fullname=Test user, maildir=/home/data/domains/extmail.org/test/Maildir/, quota=5242880, options= z ;WA $a2

May 20 19:38:24 mail authdaemond.mysql: authmysql: clearpasswd=null, passwd=uywiuN.XggXXc /_hwB`\

May 20 19:38:24 mail authdaemond.mysql: authmysql: ACCEPT, username test@extmail.org OrS~LOj0zc

May 20 19:38:47 mail postfix/smtpd[1763]: C2FF131B85: client=localhost[127.0.0.1], sasl_method=login, sasl_username=test@extmail.org VL1x V

May 20 19:38:52 mail postfix/cleanup[1770]: C2FF131B85: message-id=20060520113836.C2FF131B85@mail.extmail.org pd#rC:-

May 20 19:38:52 mail postfix/qmgr[1699]: C2FF131B85: from=test@test.com, size=328, nrcpt=1 (queue active) T AYegH.

May 20 19:38:52 mail postfix/virtual[1772]: C2FF131B85: to=test@extmail.org, relay=virtual, delay=16, status=sent (delivered to maildir) jizpl6fOw

May 20 19:38:52 mail postfix/qmgr[1699]: C2FF131B85: removed =bE-Z7

May 20 19:38:55 mail postfix/smtpd[1763]: disconnect from localhost[127.0.0.1] 7xB\ZX

TQt{.{nI

測試pop3 收郵件 Y=vpY{Ly%26amp;

^4"(/mi_2

XIs|D+uQg

mail:/etc/postfix# telnet localhost 110 +:@$ z],d

Trying 127.0.0.1... 7GZaQRhI

Connected to localhost. \v: b to

Escape character is '^]'. 3Zft

+OK Hello there. ~xh/!6W2F

user test@extmail.org 9%26amp;n+5v-IJB

+OK Password required. nW4'`:)

pass test C8LrZ]=T

+OK logged in. 0S(+ 

list ;/!^":#

+OK POP3 clients that break here, they violate STD53. !9X 0

1 539 vsI',O;W8

2 423 kw"aGP_w

. qb{LuI@U

retr 2 ]cv%26amp;4/

+OK 423 octets follow. GX0iJ]n

Return-Path: test@test.com "heT4 \

X-Original-To: test@extmail.org 94Ly$Jo %26amp;

Delivered-To: test@extmail.org Lr38p/w

Received: from test (localhost [127.0.0.1]) )E1W0^YV

by mail.extmail.org (Postfix) with ESMTP id C2FF131B85 N=Uo^Ts^

for test@extmail.org; Sat, 20 May 2006 19:38:36 +0800 (CST) Y!1g7- ip

Message-Id: 20060520113836.C2FF131B85@mail.extmail.org $zU6TUvA!

Date: Sat, 20 May 2006 19:38:36 +0800 (CST) 8#{p[L#/

From: test@test.com hN$v~3 

To: undisclosed-recipients:; p^lsu

)w`U~-I

test v^

.  k=3:![

quit S5 2} JoR

+OK Bye-bye. [![_yw

Connection closed by foreign host. uxKQE;w

F4;#o

所産生的mail.log  {Q*BVR

) ;nX{}

如果你的pop3 信息沒有我這裏詳細,請檢查/etc/courier/pop3d 裏面有沒有打開 DEBUG_LOGIN=2 e]9 !i

d Rpvk%XM`

May 20 19:43:19 mail courierpop3login: Connection, ip=[::ffff:127.0.0.1] SF Fvtw 

May 20 19:43:28 mail courierpop3login: LOGIN: DEBUG: ip=[::ffff:127.0.0.1], command=USER oI"-WW%~L

May 20 19:43:32 mail courierpop3login: LOGIN: DEBUG: ip=[::ffff:127.0.0.1], command=PASS AEuF*i2

May 20 19:43:32 mail courierpop3login: LOGIN: DEBUG: ip=[::ffff:127.0.0.1], username=test@extmail.org #vgRN~

May 20 19:43:32 mail courierpop3login: LOGIN: DEBUG: ip=[::ffff:127.0.0.1], password=test %26amp;ZXW}u%+

May 20 19:43:32 mail courierpop3login: authdaemon: starting client module zx%bffB(;

May 20 19:43:32 mail authdaemond.mysql: received auth request, service=pop3, authtype=login {vj|d

May 20 19:43:32 mail authdaemond.mysql: authmysql: trying this module s *XF83;(

May 20 19:43:32 mail authdaemond.mysql: SQL query: SELECT username,password,"",uidnumber,gidnumber,CONCAT('/home/data/domains/',homedir),CONCAT('/home/data/domains/',maildir),quota,name FROM mailbox WHERE username = 'test@extmail.org' {~PG{lS5

May 20 19:43:32 mail authdaemond.mysql: password matches successfully 4S3DQ ap/

May 20 19:43:32 mail authdaemond.mysql: authmysql: sysusername=null, sysuserid=105, sysgroupid=106, homedir=/home/data/domains/extmail.org/test, address=test@extmail.org, fullname=Test user, maildir=/home/data/domains/extmail.org/test/Maildir/, quota=5242880, options=null .6{l]T[f4D

May 20 19:43:32 mail authdaemond.mysql: authmysql: clearpasswd=null, passwd=uywiuN.XggXXc 2f|(vbg*

May 20 19:43:32 mail authdaemond.mysql: authmysql: ACCEPT, username test@extmail.org BBr:!

May 20 19:43:32 mail courierpop3login: authdaemon: ACCEPT, username test@extmail.org v}:?O`~J

May 20 19:43:32 mail courierpop3login: LOGIN, user=test@extmail.org, ip=[::ffff:127.0.0.1] ygJ9nDn

May 20 19:43:46 mail courierpop3login: LOGOUT, user=test@extmail.org, ip=[::ffff:127.0.0.1], top=0, retr=411, time=14 5/N+bq8`Y

如果日志裏出現: ql!y-*eh

n#S%26amp;{Hv2

authdaemond.mysql: supplied password 'extmail' does not match encrypted password'{crypt}uywiuN.XggXXc' 請用phpmyadmin檢查extmail數據庫中mailbox 表中用戶密碼前面的{crypt}是否已經刪除。 phFh2%99

k;qV? H

如果出現 "Permission denied",請檢查目錄的權限,及extmail 數據庫中mailbox 表中的uidnumber/gidnumber 是否和目錄的權限一致。 9)pLJ:s

 /a)?%26amp;

至此,一個支持虛似域的郵件系統已配置完成,下面繼續配置殺毒,反垃圾郵件。 1j%F\F'

4$t[r8v%5

3}P* zh

1q [;^!

三、安裝內容過濾反垃圾郵件 'Y7F$(SaG

1、安裝軟件包 8"?A=8K

mail:~# apt-get install amavisd-new spamassassin clamav clamav-daemon clamav-freshclam arc bzip2 lzop zoo cpio =|O Q*|

NKV9#%26amp;y

在/etc/postfix/main.cf 加入 Gv{4(tG

G)glSF}U

content_filter = smtp-amavis:[127.0.0.1]:10024 |_C1

+U%Mu5Lu{

在/etc/postfix/master.cf 加入 jmf`H|4

1kUPEhO

~C"(a

smtp-amavis unix - - n - 2 smtp C,t+-Hnd

-o smtp_data_done_timeout=1200  M$bHbn`

-o disable_dns_lookups=yes j0V+%V\'

6#e7L

SvK'W4C

127.0.0.1:10025 inet n - n - - smtpd ON9k K

-o content_filter= \[#D3}M

-o local_recipient_maps= !ZUv~Gz

-o relay_recipient_maps= 0[$~iGR`

-o smtpd_restriction_classes= oaB2 8%26amp;o

-o smtpd_client_restrictions= jn6W 3%26amp;3

-o smtpd_helo_restrictions= 3Q;Pj-D:C

-o smtpd_sender_restrictions= nCFrMIl

-o smtpd_recipient_restrictions=permit_mynetworks,reject GqB4: #du

-o mynetworks=127.0.0.0/8 !teKbIq0.

配置amavisd-new ,編輯/etc/amavis/amavisd.conf,修改下面的內容。 rF)`s.

:jA8kwsfYz

大約在文件的78行位置。 50N25P

$vSQcAEN^$

$mydomain = 'extmail.org'; @ d0I6:

%iY^

跟據你自己的需要修改發現病毒垃圾郵件等的處理方法。 v0/:Y/*qi(

}Ds/N

D_DISCARD 丟棄,D_BOUNCE 退信,D_REJECT 拒絕,D_PASS 通過. u7iq nIK5

d?opA%

$final_virus_destiny = D_DISCARD; # (defaults to D_BOUNCE) )ww9 5}k)

$final_banned_destiny = D_BOUNCE; # (defaults to D_BOUNCE) *wCq8!EGe

$final_spam_destiny = D_REJECT; # (defaults to D_REJECT) DwQB5n

$final_bad_header_destiny = D_PASS; # (defaults to D_PASS), D_BOUNCE suggested %26amp;DU0]aB3

6`hmW4qY=

配置spamassassin,修改/etc/default/spamassassin @20np

_T7qs?)o

ENABLED=1 ;JfHw

@*WO$V0;

2、讓他隨系統啓動。 aE%)nPP:M

A、配置clamav 以支持amavisd-new 殺毒 31/~ 

1N 6M3o

編輯/etc/clamav/clamd.conf,將User clamav 改爲 Qqy7SF T[

p.F{p

User amavis 8 :/ Ct*

:

B、修改目錄的權限 C~xD!

QQ%26amp;.mm

{ %26amp;'\KI

mail:/etc/clamav# chown -R amavis:amavis /var/log/clamav/ _aF9eJeL^

mail:/etc/clamav# chown -R amavis:amavis /var/run/clamav/ H`P%26amp;A=if:

mail:/etc/clamav# chown -R amavis:amavis /var/lib/clamav fNv"gmW8

(!p`

編輯/etc/clamav/freshclam.con,將DatabaseOwner clamav改爲 -^KTmDs

}{KkE% k

DatabaseOwner amavis zb[pE_H{@

IT.Be]b"J

C、重啓服務 N5 Q(

ee YS-a5

mail:/etc/clamav# /etc/init.d/clamav-daemon restart {Q{HsH[n}

x

mail:/etc/clamav# /etc/init.d/clamav-freshclam restart t/wk { DG

LZ[1?-Cf

D、發病毒測試 0ZupE,en0a

q (/|_.*

ZWc"Ny6As%

mail:/var/run/clamav# telnet localhost 25 /v%q U7.@

Trying 127.0.0.1... (J;3L

Connected to localhost. u}Gv%_J

Escape character is '^]'. ''W 7oiP8

220 extmail.org ESMTP Mail System LEur2D*l

ehlo test m?tJar/8

250-mail.extmail.org XsSW(%94\

250-PIPELINING JnooLq9

250-SIZE 14680064 m{u%26amp;sS~

250-VRFY dpm

250-ETRN 1}'fd nn

250-AUTH LOGIN PLAIN nDBJ.H5

250-AUTH=LOGIN PLAIN A'C;a|e|

250 8BITMIME )'-5GZ

mail from: E%26amp;~`sH%26amp;

250 Ok [ny7O[#a

rcpt to: (thL!65

250 Ok }T~6O[]

data [-n/rH Md

354 End data with CRLF.CRLF cFgoy.I

X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H* !/6;i!iQG

. Iz~ mz_

250 Ok: queued as 8032C31B8B AkU8( r.K

quit ,$A%26amp;j6aE

221 Bye ){1N=lF;3j

Connection closed by foreign host. @Pn/7K(

所産生的mail.log :PKwaL/

|A slv

?m

May 20 22:51:43 mail postfix/smtpd[3362]: connect from localhost[127.0.0.1] {I(Na1y%2

May 20 22:52:07 mail postfix/smtpd[3362]: 8032C31B8B: client=localhost[127.0.0.1] \p:1~KUV)k

May 20 22:52:18 mail postfix/cleanup[3368]: 8032C31B8B: message-id=20060520145157.8032C31B8B@mail.extmail.org ,Z`N jn!

May 20 22:52:18 mail postfix/qmgr[2900]: 8032C31B8B: from=test@test.com, size=392, nrcpt=1 (queue active) V[,%26amp;v9Cj

May 20 22:52:18 mail postfix/smtpd[3371]: connect from localhost[127.0.0.1] 7+ 2X4.*F

May 20 22:52:18 mail postfix/smtpd[3371]: 46E6831B8C: client=localhost[127.0.0.1] yg$Di_ok

May 20 22:52:18 mail postfix/cleanup[3368]: 46E6831B8C: message-id=VA02687-02@mail.extmail.org dQVXwXot

May 20 22:52:18 mail postfix/qmgr[2900]: 46E6831B8C: from=, size=2268, nrcpt=1 (queue active) y+\,[\U

May 20 22:52:18 mail amavis[2687]: (02687-02) INFECTED (Eicar-Test-Signature), test@test.com - test@extmail.org, quarantine virus-20060520-225218-02687-02, Message-ID: 20060520145157.8032C31B8B@mail.extmail.org, Hits: - oDt92(|V

May 20 22:52:18 mail postfix/smtp[3370]: 8032C31B8B: to=test@extmail.org, relay=127.0.0.1[127.0.0.1], delay=21, status=sent (250 2.7.1 Ok, discarded, id=02687-02 - VIRUS: Eicar-Test-Signature) ; L!19 8ak

May 20 22:52:18 mail postfix/qmgr[2900]: 8032C31B8B: removed v1%'jxG#

May 20 22:52:18 mail postfix/smtpd[3371]: disconnect from localhost[127.0.0.1] |L8JR

May 20 22:52:20 mail postfix/smtpd[3362]: disconnect from localhost[127.0.0.1] YCC4R_w8~

xS?T!I.z

#f{ /J5p^

7lD }o

3、安裝extmail/extman +:P^ IJ

A、修改apache )bk\i\1j

HuuSHh$yB

修改apache 讓他以postfix 身份運行,否則extmail 創建的目錄郵件系統無法讀取,extmail 也無法讀取目錄。 (r=ww

.Ux}1o_f

或者你可以重新創建一個用戶,修改/etc/main.cf中的virtual_gid_maps,virtual_uid_maps就行了。 4UcylC 9b

7j K8?O

修改/etc/apache2/apache.conf 讓他以posftix身份執行。 {$-pa+*E

w(H6s1U1

將 4hDgokIO

-#-~u+f

User www-data ~9 %26amp;jWd

Group www-data YR3E/

"[Shc

改爲 7ot]%26amp;_5

2g88? s

User postfix gw.%

Group postfix EQE $3\D

3f*z%

加入虛似主機設置,創建/etc/apache2/site-enable/extmail.conf 輸入下面的內容。 %y l6a8j0

u]x8=N

'"8C6B;g

Alias /extman/cgi/ /var/www/cgi-bin/extman/cgi/ B[zE=z22

Alias /extman /var/www/cgi-bin/extman/html/ 'qXE*u8 wH

-\` GYfC

SetHandler cgi-script t5[#Mj7pv

Options +ExecCGI ^c$mp

AllowOverride All / Pym a_

/C*Gi u

hH x- i

7G@;6zSM

# config for ExtMail ZKB6ZUmh

Alias /extmail/cgi/ /var/www//cgi-bin/extmail/cgi/ o}H.rkj\v

Alias /extmail /var/www/cgi-bin/extmail/html/ qS7

o81ip41'

H7GO02J9

SetHandler cgi-script ~t.6|{n

Options +ExecCGI |oHj,[1

AllowOverride All Z8# MxsL

j ]u K

"`%0/huR5

B、重啓apache g(%26amp; 2J

7 bI

mail:~# /etc/init.d/apache2 restart 8@i#

9g $6Lk$)k

將文件複制到/var/www/cgi-bin/ ,如果你的目錄沒有cgi-bin這個文件夾,自己創建一個就可以了。 y^dvCIMi9

{H#;v(JXw

mail:/var/www/cgi-bin# cp -r /home/fy138/extmail-0.23-20060219/ ./extmail

U$+ xt;

mail:/var/www/cgi-bin# cp -r /home/fy138/extman-0.15-20060518/ ./extman nsRGwBHqQC

|u OLr?Y

C、配置extmail e;fWJ

%26amp;c`$Q Iy

mail:/var/www/cgi-bin# cd extmail/ oV~CFY

$LZ)?w%r

修改webmail.cf 下面的選項(注意系統沒有webmail.cf 這個文件,需要從webmail.cf.default 複制一份) d i]~0yky

F# P ]'X;

SYS_MAILDIR_BASE = /home/data/domains #郵件存儲的位置。 [

!bLRuhv-@

SYS_MYSQL_USER = extmail #數據庫的用戶名 2dXnkcxL

SYS_MYSQL_PASS = extmail #數據庫的密碼 a00 HLIR

SYS_MYSQL_DB = extmail #數據名字 ~;}sslY4

a8#M^ j5

SYS_MYSQL_SOCKET = /var/run/mysqld/mysqld.sock #mysql socket的位置 ? h4HNG]

di5#%26amp;uxu\

打開浏覽器輸入: http://yourip/extmail/即可看到extmail 的登陸窗口。 L!`W j)

2oJFLaR}

測試的用戶名:test 密碼:test 域:extmail.org 2?c/VbWW

;i_yR\~W

D、配置extman U 1+c2

W5I\-/m%

mail:/var/www/cgi-bin# cd extman sZI}i8

N\oDJ~V y

編輯webman.cf 修改下面的選項 0`A %4(,

o.:w(~02R

SYS_MAILDIR_BASE = /home/data/domains W]$+\=vQ~

u";F_#FsD

SYS_MYSQL_SOCKET = /var/run/mysqld/mysqld.sock yAs6/k{F

6Q {,zkk

創建extman 的臨時目錄 XXEqSyPXM

Ly!za

mail:/var/www/cgi-bin/extman# mkdir /tmp/extman Q$ [!aSGi=

mail:/var/www/cgi-bin/extman# chmod 777 /tmp/extman/ w_"nr.'7$

R{6Xf%26amp;vfw

創建extman 與extmail 軟件包的連接(因爲某些包在extmail 的目錄裏,所以要做鏈接) o^RQ#q9Po

a)f [OuH

mail:/var/www/cgi-bin/extman/libs/Ext# ./buildlink.sh build /var/www/cgi-bin/extmail/libs/Ext/ 4Z2

R*m0\4K6)

打開浏覽器輸入http://yourip/extman/ /Be%G"4

I9Odd OK

用戶名爲:root@extmail.org 密碼:extmail }^$- NP*p

'=\`5lEf

至此extmail/extman 已安裝完成,至于extman 的圖形日志安裝請看 (PGpExhE

Yl{~!v+

http://www.extmail.org/forum/read.php?tid=1524%26amp;fpage=1%26amp;toread=1 wRl$~$

keZz

4、安裝slockd %}^z]gX:0

詳細的安裝過程請看 LlFJ;q

Rf;x%26amp;La

http://www.extmail.org/forum/read.php?tid=1463%26amp;fpage=1%26amp;toread=1 ^ad[/uvwt

:BT*J

複制安裝文件 ^y +t;20`

O'Wfdh#D

mail:/usr/local# cp -r /home/fy138/slockd-0.08/ ./slockd ?X@

BJ;2Q

修改slockd 目config錄下的 main.cf ,將setsid 1 的注釋去掉。 oT6d] ?+

|Z%26amp;8Qc

修改postfix 的/etc/postfix/main.cf 讓他支持slockd lvGE ^cJ

lMP~dm}E

注意第一行是靠邊的,第二行開始都最後前面都要留一個空格的位置,意思是告訴postfix 一行寫不下,換了行。 $P@bG")Wk

`R}C R'B

%26amp; D_uXH

smtpd_recipient_restrictions = 9516-t$:,

permit_mynetworks, permit_sasl_authenticated, reject_non_fqdn_hostname,?reject_non_fqdn_sender,?reject_non_fqdn_recipient,?reject_unauth_destination,?reject_unauth_pipelining,?reject_invalid_hostname,?check_policy_service inet:127.0.0.1:10030 T\y, Eq!Y|

修改完成後執行 ;CHMexV{

)

mail:/usr/local/slockd# /etc/init.d/postfix reload A/Zd! S!

O3u

至于如何讓slockd 隨系統啓動目前還不知道,如果你知道請告訴我。

作者:馮勇 fengyongchuang # yahoo.com.cn (≠%26amp;鍵盤人生$:71633908) + | 8zlE/i 日期:2006-05-18 +KuwkyIyM gdVqI8%]Y 技術支持網站:www.extmail.org :y9fJ X QQ群: 9\ylxh i :EWxg$ 網管之家: 5929685 },/ 網管之家-UNIX:3791457 Qhh']M[*Q Extmail 群/postfix 1: 6769767 2[ Extmail 群/postfix 2: 18051473 bdB+PNmn( %26amp;z^Rc2rvs 版權所有,複制或轉載時請保留作者信息。尊重他人的勞動成果就等于尊重自己。 w|jzXPmZ1 fN$#UwOm 如有問題請到下面網址提問: n6%26amp;?K6 'MLq(c ) http://www.extmail.org/forum/archive/2/0605/1771.html K5tkp`D vP?c{ L2 本次文章的配置文件:mail.tar.gz O\ Hy#8M* Bt 一直想寫一篇DEBIAN 下的郵件系統安裝文檔,因爲自己太懶一直沒有動手,今天閑著沒事,把文檔寫出來,供各位參考同時給自己留一份筆記。 mau%)iD ^h6g.eO@ 這次沒有使用maildrop,原因:1、debian 裏的maildrop 版本好像是1.7的,配置有點複雜,所以沒有去研究,如果那位兄弟配置成功,告訴我。2、公司用webmail 的人少,郵件過濾規則很少人用,以前用maildrop 主要是用他來將垃圾郵件移到垃圾信箱,現在使用了slockd ,垃圾郵件少了,再說沒有用webmail。 B`tV9 B. oaZI;;W N7'VXl !p5.$$~ 一、安裝DEBAIN VmNO 6$aG 1、debian 的好處 pO|ydf 其實我喜歡很喜歡這個LINUX發行版,因爲他有點像freeBSD 的軟件安裝方式。我對debian 並不是十分熟悉,如果有寫錯的地方,請指正。 ?P;"B#eg* },Ky# \mp 2、下載debian 可以到官方網站或linuxsir 下載。 ^~ ddT 我使用的版本是:debian-31r2-i386-netinst.iso )69j gVDv z(` D / http://debian.linuxsir.org/main/?q=node/92 @~5-@cg:$ bP%26amp;*38 nH http://www.us.debian.org/ o*fk) if 1S1;:"eV http://debian.cn99.com }[Puy2zK 02Eu !$kI ... jmr4 de6(a Iw/-U6`f$P 3、安裝 DBRO-0W3 跟據我的愛好喜歡拿10G 左右的空間作爲系統,把數據資料放到另一個分區或硬盤中,並裝載到/home/data 這個目錄,如果你不喜歡這樣,可以跟據自己的愛好,修改配置文檔的路徑。 yt~i#3 KP S6j@ 4、主機名 0z_fj'0 安裝時可以輸入主機名,或者編輯/etc/host.conf 修改你的主機名。 S }Bf.K SNGl"(f 這裏使用 mail.extmail.org 爲例。 pt4ox"*5 f5ZFZO;B 5、更新你的軟件包 ! 在複制完文件後,會出現一個配置過程,在配置 apt 那裏添加一個安裝源,選擇ftp 現先擇 china 可以選擇下面兩個安裝源: 5nnhW?@7 NHu/*++= ftp.linuxforum.net 或 debian.cn99.com {+dz_A E= 9 本人用的是網通ADSL 選擇ftp.linuxforum.net 好像快一點。 6uXa2p lWgz kx*q 如果你在安裝時跳過了這一步,可以進入系統後可以再次運行base-config 選擇configure apt 進行再次配置。 $D2y}\, * H;ljn 6、安裝SSH _J ` dC 爲了方便安裝,建義使用SSH 進行遠程操作,方便複制與粘貼。 ") O:A a} ]]uk8kF: apt-get install ssh $R*$nz@ )RZ NQ: *至于apt 系統的使用方法,建議大家去看debian 的文檔,寫得非常詳細。 $-/g'" %Q=gZna http://debian.linuxsir.org/book/reference/lyoo/ ^UZYjh[0 0i$eK2l 二、安裝軟件 _pD_W5L0| 1、下載需要的軟件 ll2tH16 到www.extmail.org 下載extmail/extman/slockd ,通過FTP 上傳到服務器,並解壓 A +^K;: f)_T'A/:B; tar zxvf extmail-0\[1\].23-20060219.tar.gz ^I9%26amp;Rqj~! qbQ`V u@ tar zxvf extman-0\[1\].15-20060518.tar.gz P Xt6; sW _PrGBP tar zxvf slockd-0\[1\].08.tar.gz tgA4X 2 S: wc)p V~Xwa %26amp; M1~|PfQJv 2、安裝mysql qfaE_|b%: mail:~# apt-get install mysql-server Y26}R;Fa |@ 9fZw 安裝完mysql 後,將extman 的數據導入到mysql 中 `oJmjbc m^I/byv) mail:/home/fy138# cd extman-0.15-20060518/docs rax^NCPR# i;9!aUL= mail:/home/fy138/extman-0.15-20060518/docs# mysql -uroot Ds~K $)/t [sYb !o)  $: 打開extman-0.15-20060518/docs/init.sql 將裏{crypt} 這些字符串刪除,否則pop3可能無法登陸,如果你懶得去修改init.sql 可以安裝完成後用phpmyadmin修改相關記錄。 'B="jwbnW g_-lB4_+ 將uidnumber/gidnumber 改爲postfix 的uid/gid 查看uid/gid 方法 fI] a8-dh I^T"z mail:/etc/postfix# id postfix _ZUJff# uid=105(postfix) gid=106(postfix) groups=106(postfix) nn}XyNH!`{ !0_{XQ8gT@ mail:/home/fy138/extman-0.15-20060518/docs# mysql -uroot =Qg"J 3A ( Uea_" 3、安裝apache 2 Cq*:^ c%26amp; mail:~# apt-get install apache2 92 K }t6 _ dbC/ 4、安裝php4 gzSMM`0 )c mail:~# apt-get install php4 php4-mysql libapache2-mod-php4 phpmyadmin Zp{ , B ~0) drep 5、安裝postfix QP!WL mail:~# apt-get install postfix postfix-mysql postfix-tls postfix-doc :%\,,Tiis V \[(2}. 在彈出的對話框中選擇No configuration。 u]vw[j$l ;\V.';: A、將extman目錄下所有 mysql_virtul_*.cf 複制到/etc/postfix 目錄下。 r@;J xZN ,3V-0cbq mail:~#cd /home/fy138/extman-0.15-20060518/docs N~3K9z?s C MFSbaX 注意,這裏我的存放位置是/home/fy138 ,不要照搬了。 qWTr'^2) FO ,)d4 E mail:/home/fy138/extman-0.15-20060518/docs# cp mysql_virtual_*.cf /etc/postfix/ ^B(sj*Fo B、配置 /etc/postfix/main.cf,如果你的main.cf 已存先改名再重新編輯一個,加入下面的內容。 M$ %26amp;Qx\ Cvd[=%~V0 ?`YM3to ###################BASE################## *'WZHOg@ myhostname=mail.extmail.org z_}q!@ht%26amp;L mydomain = extmail.org { Vw{|q8[} mydestination = $myhostname ^:;HH' local_recipient_maps = Ujh uXx[ smtpd_banner = extmail.org ESMTP Mail System OTFD ft message_size_limit = 14680064 rqW^\Sn #################MySQL################ F :*H Y| 5:P)_-V virtual_gid_maps=static:106virtual_uid_maps=static:105virtual_transport = virtual 2Z+"DF virtual_alias_maps =mysql:/etc/postfix/mysql_virtual_alias_maps.cf Re,Z3l2 virtual_mailbox_base = /home/data/domains #W8_! B virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_domains_maps.cf Kk0@TUvB%26amp; virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf [4 5Z=ZZ  !!AnG(/ 'md fxPu ################Quota################ MMy?eyP virtual_create_maildirsize = yes \xL~${$9 virtual_mailbox_extended = yes 1J71+(@~ virtual_mailbox_limit_maps = mysql:/etc/postfix/mysql_virtual_mailbox_limit_maps.cf w \A Tx;- virtual_mailbox_limit_override = yes 3.Ar ; virtual_maildir_limit_message = Sorry,the user's Maildir has overdrawn his diskspace quota ,please tray again later. CN6c virtual_overquota_bounce = yes "8kJXBqw MZox4O ##############SASL#################### 5j2~S%26amp; smtpd_sasl_auth_enable = yes ]ZR|MQ$Cik smtpd_sasl2_auth_enable = yes j# sIr- L smtpd_sasl_security_options = noanonymous t2VW'V` broken_sasl_auth_clients = yes U{fr*_ r1gF#VO$ smtpd_recipient_restrictions = |L+vFSL permit_mynetworks, permit_sasl_authenticated, reject_non_fqdn_hostname,?reject_non_fqdn_sender,?reject_non_fqdn_recipient,?reject_unauth_destination,?reject_unauth_pipelining,?reject_invalid_hostname,?check_policy_service inet:127.0.0.1:10030  $ Ye 將 /etc/postfix/目錄下面以mysql_virtul_*.cf 開頭的文件,將裏面的hosts=localhost 改爲hosts=127.0.0.1 ,否則postfix 連接mysql 會出現問題 。 Seiv{} ~xId+ H 如果更改master.cf 將postfix 不以chroot 方式運行是否正常?還沒有去試。 ]nGj9$=8$ gIxXz" X!ZQ=JWN gmjH-Ft 將/etc/postfix/master.cf中的下面幾行把注釋去掉 AH?gw\ 3n 346 n{K /Hs%gb% # only used by postfix-tls ]Skgm/ q tlsmgr fifo - - n 300 1 tlsmgr *![Z4J*{ smtps inet n - n - - smtpd -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes = CC03% 587 inet n - n - - smtpd -o smtpd_enforce_tls=yes -o smtpd_sasl_auth_enable=yes TNR:Z ,;!2'O^@ %n:b{" 6、安裝cyrus-sasl2 G-vT/(Xrt mail:~# apt-get install libsasl2 libsasl2-modules libsasl2-modules-sql 921c#RF KTa ,B5_ 創建/etc/postfix/sasl/smtpd.conf 加入下面的內容。 ck4{%26amp;zp% z{ /fIHJg ND%1wr `u pwcheck_method:authdaemond ,{ log_level:3 `o*8wNh`) mech_list:PLAIN LOGIN .W-SNqC) authdaemond_path:/var/run/courier/authdaemon/socket _o?t(BZp 注意:在進行smtpd 認證測試時,maillog 提示找不到 /var/run/courier/authdaemon/socket 通常是下面的問題 :1、權限 2、chroot 。 3!5[=%26amp; 出錯郵件日志: ((~p[8p %R5N4#Mi May 20 17:35:26 mail postfix/smtpd[1229]: warning: SASL authentication failure: cannot connect to Courier authdaemond: No such file or directory Y`{R7un v8c$1MpBj +6eSgv_B 解決方法(引用wangpenghui 原文,Thanks! ^_^,本人使用了第二種方法,另外還要注意smtpd.conf文件中的空格!) W#.$x66 1%lqUpr^ 解決方法有如下兩種, R%26amp;$?t%"F 1.對于postfix不做任何修改,而是在每次couier-authdaemon啓動之後都創建 -fkueXA^ ?,Mo. SZ2ldmlk[X ln -f /var/run/courier/authdaemon/socket /var/spool/postfix/var/run/courier/authdaemon/socket XlWh z})nA/ I} 的硬鏈接. 同時對于 [+Nu]-@ mSSYe%+dP /var/run/courier/authdaemon/socket nV]8S[4O /var/spool/postfix/var/run/courier/authdaemon/socket 5 #OI `h 的整個路徑賦予postfix用戶于讀權限。一般爲755. #XEG\z 2.第二種就是修改postfix中master.cf文件的如下行: 9h{Eh bW_`: smtp inet n - - - - smtpd t|-I_]`X" '1 L+c 爲 %FpMC.JE o/2Z38=F smtp inet n - n - - smtpd Ze7W96Px }^y]bdD' 這樣smtpd程序就不是運行在chroot狀態,那麽postfix的smtpd程序就可以通過smtpd.conf中的 5.Q"[*b=Y authdaemond_path參數找到authdaemon的socket文件。不過也要注意權限問題,要不然就會出現connection refused的錯誤。這裏指的權限是/var/run/courier/authdaemon/socket整個路徑的權限,而不僅僅是socket文件的權限。 sK/i(-@k .2Orf| 第二種方法相對于第一種方法來說,比較容易,但是增大了安全隱患。管理員可自行選擇使用哪種方式。 $2~D;B 當然,我這裏也是抛磚引玉,肯定還有更好的解決辦法。希望大家能夠賜教。 F%26amp;mKJc!d;| 參考:http://www.extmail.org/forum/archive/2/0605/1723.html Wdo K(Z ?4V . 7、安裝courier-imap ld, qX 注意安裝時,會提示你是否創建一個目錄來放這些配置文件,要選擇 YES 否則可能你的文件位置與下面配置的不一樣。 m,2}^_ {Jm?Q}mUp mail:~# apt-get install courier-authdaemon courier-authmysql courier-base courier-imap courier-pop courier-pop-ssl courier-imap-ssl xceT( e~si{ *sJ A、配置courier-authdaemon ,autdaemon 是郵件系統認證的主要軟件,很多人無法通過SMTPD認證多數問題在這裏。 kMhx7qBx[ gb;l.'o` 將/etc/courier/authdaemonrc 改名爲 /etc/courier/authdaemonrc.bak %26amp;HY`Y V^hHb.S _z]WII D authmodulelist="authmysql" h_}mbMIOu authmodulelistorig="authmysql" P[l-u^P version="authdaemond.mysql" DXlRDDrt daemons=5 ^@:v[ KPO authdaemover=/var/run/courier/authdaemon a%_UNX subsystem=mail 9uT#[G DEBUG_LOGIN=2 KrI[vk[I%26amp;3 DEFAULTOPTIONS="wbnodsn=1" WU/7Fi 將/etc/courier/authmysqlrc 改名爲 authmysqlrc.bak ,創建/etc/courier/authmysqlrc 輸入下面的內容。 ;Z8|5Do 18!^y`Y AQgq,R# MYSQL_SERVER localhost P"xhe7SRn MYSQL_USERNAME extmail aJ2=bBFwc MYSQL_PASSWORD extmail (  X MYSQL_PORT 0 4s-JE  MYSQL_OPT 0 w$VB7 Ct MYSQL_DATABASE extmail WJ.~KG7 MYSQL_SELECT_CLAUSE SELECT username,password,"",uidnumber,gidnumber,CONCAT('/home/data/domains/',homedir),CONCAT('/home/data/domains/',maildir),quota,name FROM mailbox WHERE username = '$(local_part)@$(domain)' af]jc{6N 修改authdaemond 的權限,讓其它程序有權限訪問他,重啓authdaemond 3\7fzQM= }j7]^yI chmod -R +x /var/run/courier/authdaemon *r!]ob T R#1#=,* /etc/init.d/courier-authdaemon restart  R+! B、創建測試用戶的目錄 y]oIJbjy0 BG8(^W'J{ mail:/etc/postfix# id postfix Kcy=^0.d uid=105(postfix) gid=106(postfix) groups=106(postfix) V !vI/-YO IZs|b'x(v mail:/etc/courier# mkdir -p /home/data/domains/extmail.org/test F\vw9M v# A`Y ]w mail:/etc/courier# /usr/bin/maildirmake /home/data/domains/extmail.org/test/Maildir ^cn:5A.Z mail:/etc/courier# chown -R 105:106 /home/data/domains/ 5Q4v?$ g86~^ |s C、測試系統 Q H*W Gbx Bg_]YkP+ 打開一個窗口,輸入 tail -f /var/log/mail.log w(m{.' olX7?P0 將測試的用戶名和密碼進行base64 編碼 E1[Q-zp9 :\T:6y %perl -MMIME::Base64 -e 'print encode_base64("test\@extmail.org");' uk@#0{2n( dGVzdEBleHRtYWlsLm9yZw== RW~fIv,/ %perl -MMIME::Base64 -e 'print encode_base64("test");' f'SB%!Ol dGVzdA==測試smtpd 發郵件 tq-Ugu_I d__!`o mail:/etc/postfix# telnet localhost 25 eA=_ w@7 Trying 127.0.0.1... $-H'O Y Connected to localhost. 8YrX Escape character is '^]'. ru9M@7xM_ 220 extmail.org ESMTP Mail System K8AjUc. ehlo test qGHS/7\@D 250-mail.extmail.org @[,7!b 250-PIPELINING M'W.cYH 250-SIZE 14680064 ?E|? 250-VRFY im1  +r, 250-ETRN c6OoP8XP 250-AUTH LOGIN PLAIN WV7e9CV\o* 250-AUTH=LOGIN PLAIN D`a6[p, 250 8BITMIME I! SzuAr\ auth login `b]=j 334 VXNlcm5hbWU6 }v*`rA, dGVzdEBleHRtYWlsLm9yZw== k:q/*   334 UGFzc3dvcmQ6 rW*.CV dGVzdA== H*Hv l 235 Authentication successful ,XgQ@~nzpi mail from: D~VwF2 d 250 Ok +?3k( b; rcpt to: z\},s%26amp; 250 Ok D_XzG9 data ,:K2Lfa 354 End data with . X$]= =|M44 test {tcWq! . iC(R C3?j 250 Ok: queued as C2FF131B85 "vNx`OV quit ]44$Ur![ 221 Bye rovLVc@P Connection closed by foreign host. $B)-Hy73 mW7ezG!% mail.log 應該有如下記錄 /XBNoj|xg % ?SO 9Vj774f } May 20 19:37:32 mail postfix/smtpd[1763]: connect from localhost[127.0.0.1] !xCN`/hg May 20 19:37:40 mail postfix/smtpd[1763]: disconnect from localhost[127.0.0.1] cJ[47@o\ May 20 19:37:43 mail postfix/smtpd[1763]: connect from localhost[127.0.0.1] uk.[; May 20 19:38:24 mail authdaemond.mysql: received auth request, service=smtp, authtype=login F6gEnt = May 20 19:38:24 mail authdaemond.mysql: authmysql: trying this module UGI pg May 20 19:38:24 mail authdaemond.mysql: SQL query: SELECT username,password,"",uidnumber,gidnumber,CONCAT('/home/data/domains/',homedir),CONCAT('/home/data/domains/',maildir),quota,name FROM mailbox WHERE username = 'test@extmail.org' `:U#`-)Xq May 20 19:38:24 mail authdaemond.mysql: password matches successfully bSb)/z1 May 20 19:38:24 mail authdaemond.mysql: authmysql: sysusername=null, sysuserid=105, sysgroupid=106, homedir=/home/data/domains/extmail.org/test, address=test@extmail.org, fullname=Test user, maildir=/home/data/domains/extmail.org/test/Maildir/, quota=5242880, options= z ;WA $a2 May 20 19:38:24 mail authdaemond.mysql: authmysql: clearpasswd=null, passwd=uywiuN.XggXXc /_hwB`\ May 20 19:38:24 mail authdaemond.mysql: authmysql: ACCEPT, username test@extmail.org OrS~LOj0zc May 20 19:38:47 mail postfix/smtpd[1763]: C2FF131B85: client=localhost[127.0.0.1], sasl_method=login, sasl_username=test@extmail.org VL1x V May 20 19:38:52 mail postfix/cleanup[1770]: C2FF131B85: message-id=20060520113836.C2FF131B85@mail.extmail.org pd#rC:- May 20 19:38:52 mail postfix/qmgr[1699]: C2FF131B85: from=test@test.com, size=328, nrcpt=1 (queue active) T AYegH. May 20 19:38:52 mail postfix/virtual[1772]: C2FF131B85: to=test@extmail.org, relay=virtual, delay=16, status=sent (delivered to maildir) jizpl6fOw May 20 19:38:52 mail postfix/qmgr[1699]: C2FF131B85: removed =bE-Z7 May 20 19:38:55 mail postfix/smtpd[1763]: disconnect from localhost[127.0.0.1] 7xB\ZX TQt{.{nI 測試pop3 收郵件 Y=vpY{Ly%26amp; ^4"(/mi_2 XIs|D+uQg mail:/etc/postfix# telnet localhost 110 +:@$ z],d Trying 127.0.0.1... 7GZaQRhI Connected to localhost. \v: b to Escape character is '^]'. 3Zft +OK Hello there. ~xh/!6W2F user test@extmail.org 9%26amp;n+5v-IJB +OK Password required. nW4'`:) pass test C8LrZ]=T +OK logged in. 0S(+  list ;/!^":# +OK POP3 clients that break here, they violate STD53. !9X 0 1 539 vsI',O;W8 2 423 kw"aGP_w . qb{LuI@U retr 2 ]cv%26amp;4/ +OK 423 octets follow. GX0iJ]n Return-Path: test@test.com "heT4 \ X-Original-To: test@extmail.org 94Ly$Jo %26amp; Delivered-To: test@extmail.org Lr38p/w Received: from test (localhost [127.0.0.1]) )E1W0^YV by mail.extmail.org (Postfix) with ESMTP id C2FF131B85 N=Uo^Ts^ for test@extmail.org; Sat, 20 May 2006 19:38:36 +0800 (CST) Y!1g7- ip Message-Id: 20060520113836.C2FF131B85@mail.extmail.org $zU6TUvA! Date: Sat, 20 May 2006 19:38:36 +0800 (CST) 8#{p[L#/ From: test@test.com hN$v~3  To: undisclosed-recipients:; p^lsu )w`U~-I test v^ .  k=3:![ quit S5 2} JoR +OK Bye-bye. [![_yw Connection closed by foreign host. uxKQE;w F4;#o 所産生的mail.log  {Q*BVR ) ;nX{} 如果你的pop3 信息沒有我這裏詳細,請檢查/etc/courier/pop3d 裏面有沒有打開 DEBUG_LOGIN=2 e]9 !i d Rpvk%XM` May 20 19:43:19 mail courierpop3login: Connection, ip=[::ffff:127.0.0.1] SF Fvtw  May 20 19:43:28 mail courierpop3login: LOGIN: DEBUG: ip=[::ffff:127.0.0.1], command=USER oI"-WW%~L May 20 19:43:32 mail courierpop3login: LOGIN: DEBUG: ip=[::ffff:127.0.0.1], command=PASS AEuF*i2 May 20 19:43:32 mail courierpop3login: LOGIN: DEBUG: ip=[::ffff:127.0.0.1], username=test@extmail.org #vgRN~ May 20 19:43:32 mail courierpop3login: LOGIN: DEBUG: ip=[::ffff:127.0.0.1], password=test %26amp;ZXW}u%+ May 20 19:43:32 mail courierpop3login: authdaemon: starting client module zx%bffB(; May 20 19:43:32 mail authdaemond.mysql: received auth request, service=pop3, authtype=login {vj|d May 20 19:43:32 mail authdaemond.mysql: authmysql: trying this module s *XF83;( May 20 19:43:32 mail authdaemond.mysql: SQL query: SELECT username,password,"",uidnumber,gidnumber,CONCAT('/home/data/domains/',homedir),CONCAT('/home/data/domains/',maildir),quota,name FROM mailbox WHERE username = 'test@extmail.org' {~PG{lS5 May 20 19:43:32 mail authdaemond.mysql: password matches successfully 4S3DQ ap/ May 20 19:43:32 mail authdaemond.mysql: authmysql: sysusername=null, sysuserid=105, sysgroupid=106, homedir=/home/data/domains/extmail.org/test, address=test@extmail.org, fullname=Test user, maildir=/home/data/domains/extmail.org/test/Maildir/, quota=5242880, options=null .6{l]T[f4D May 20 19:43:32 mail authdaemond.mysql: authmysql: clearpasswd=null, passwd=uywiuN.XggXXc 2f|(vbg* May 20 19:43:32 mail authdaemond.mysql: authmysql: ACCEPT, username test@extmail.org BBr:! May 20 19:43:32 mail courierpop3login: authdaemon: ACCEPT, username test@extmail.org v}:?O`~J May 20 19:43:32 mail courierpop3login: LOGIN, user=test@extmail.org, ip=[::ffff:127.0.0.1] ygJ9nDn May 20 19:43:46 mail courierpop3login: LOGOUT, user=test@extmail.org, ip=[::ffff:127.0.0.1], top=0, retr=411, time=14 5/N+bq8`Y 如果日志裏出現: ql!y-*eh n#S%26amp;{Hv2 authdaemond.mysql: supplied password 'extmail' does not match encrypted password'{crypt}uywiuN.XggXXc' 請用phpmyadmin檢查extmail數據庫中mailbox 表中用戶密碼前面的{crypt}是否已經刪除。 phFh2%99 k;qV? H 如果出現 "Permission denied",請檢查目錄的權限,及extmail 數據庫中mailbox 表中的uidnumber/gidnumber 是否和目錄的權限一致。 9)pLJ:s  /a)?%26amp; 至此,一個支持虛似域的郵件系統已配置完成,下面繼續配置殺毒,反垃圾郵件。 1j%F\F' 4$t[r8v%5 3}P* zh 1q [;^! 三、安裝內容過濾反垃圾郵件 'Y7F$(SaG 1、安裝軟件包 8"?A=8K mail:~# apt-get install amavisd-new spamassassin clamav clamav-daemon clamav-freshclam arc bzip2 lzop zoo cpio =|O Q*| NKV9#%26amp;y 在/etc/postfix/main.cf 加入 Gv{4(tG G)glSF}U content_filter = smtp-amavis:[127.0.0.1]:10024 |_C1 +U%Mu5Lu{ 在/etc/postfix/master.cf 加入 jmf`H|4 1kUPEhO ~C"(a smtp-amavis unix - - n - 2 smtp C,t+-Hnd -o smtp_data_done_timeout=1200  M$bHbn` -o disable_dns_lookups=yes j0V+%V\' 6#e7L SvK'W4C 127.0.0.1:10025 inet n - n - - smtpd ON9k K -o content_filter= \[#D3}M -o local_recipient_maps= !ZUv~Gz -o relay_recipient_maps= 0[$~iGR` -o smtpd_restriction_classes= oaB2 8%26amp;o -o smtpd_client_restrictions= jn6W 3%26amp;3 -o smtpd_helo_restrictions= 3Q;Pj-D:C -o smtpd_sender_restrictions= nCFrMIl -o smtpd_recipient_restrictions=permit_mynetworks,reject GqB4: #du -o mynetworks=127.0.0.0/8 !teKbIq0. 配置amavisd-new ,編輯/etc/amavis/amavisd.conf,修改下面的內容。 rF)`s. :jA8kwsfYz 大約在文件的78行位置。 50N25P $vSQcAEN^$ $mydomain = 'extmail.org'; @ d0I6: %iY^ 跟據你自己的需要修改發現病毒垃圾郵件等的處理方法。 v0/:Y/*qi( }Ds/N D_DISCARD 丟棄,D_BOUNCE 退信,D_REJECT 拒絕,D_PASS 通過. u7iq nIK5 d?opA% $final_virus_destiny = D_DISCARD; # (defaults to D_BOUNCE) )ww9 5}k) $final_banned_destiny = D_BOUNCE; # (defaults to D_BOUNCE) *wCq8!EGe $final_spam_destiny = D_REJECT; # (defaults to D_REJECT) DwQB5n $final_bad_header_destiny = D_PASS; # (defaults to D_PASS), D_BOUNCE suggested %26amp;DU0]aB3 6`hmW4qY= 配置spamassassin,修改/etc/default/spamassassin @20np _T7qs?)o ENABLED=1 ;JfHw @*WO$V0; 2、讓他隨系統啓動。 aE%)nPP:M A、配置clamav 以支持amavisd-new 殺毒 31/~  1N 6M3o 編輯/etc/clamav/clamd.conf,將User clamav 改爲 Qqy7SF T[ p.F{p User amavis 8 :/ Ct* : B、修改目錄的權限 C~xD! QQ%26amp;.mm { %26amp;'\KI mail:/etc/clamav# chown -R amavis:amavis /var/log/clamav/ _aF9eJeL^ mail:/etc/clamav# chown -R amavis:amavis /var/run/clamav/ H`P%26amp;A=if: mail:/etc/clamav# chown -R amavis:amavis /var/lib/clamav fNv"gmW8 (!p` 編輯/etc/clamav/freshclam.con,將DatabaseOwner clamav改爲 -^KTmDs }{KkE% k DatabaseOwner amavis zb[pE_H{@ IT.Be]b"J C、重啓服務 N5 Q( ee YS-a5 mail:/etc/clamav# /etc/init.d/clamav-daemon restart {Q{HsH[n} x mail:/etc/clamav# /etc/init.d/clamav-freshclam restart t/wk { DG LZ[1?-Cf D、發病毒測試 0ZupE,en0a q (/|_.* ZWc"Ny6As% mail:/var/run/clamav# telnet localhost 25 /v%q U7.@ Trying 127.0.0.1... (J;3L Connected to localhost. u}Gv%_J Escape character is '^]'. ''W 7oiP8 220 extmail.org ESMTP Mail System LEur2D*l ehlo test m?tJar/8 250-mail.extmail.org XsSW(%94\ 250-PIPELINING JnooLq9 250-SIZE 14680064 m{u%26amp;sS~ 250-VRFY dpm 250-ETRN 1}'fd nn 250-AUTH LOGIN PLAIN nDBJ.H5 250-AUTH=LOGIN PLAIN A'C;a|e| 250 8BITMIME )'-5GZ mail from: E%26amp;~`sH%26amp; 250 Ok [ny7O[#a rcpt to: (thL!65 250 Ok }T~6O[] data [-n/rH Md 354 End data with CRLF.CRLF cFgoy.I X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H* !/6;i!iQG . Iz~ mz_ 250 Ok: queued as 8032C31B8B AkU8( r.K quit ,$A%26amp;j6aE 221 Bye ){1N=lF;3j Connection closed by foreign host. @Pn/7K( 所産生的mail.log :PKwaL/ |A slv ?m May 20 22:51:43 mail postfix/smtpd[3362]: connect from localhost[127.0.0.1] {I(Na1y%2 May 20 22:52:07 mail postfix/smtpd[3362]: 8032C31B8B: client=localhost[127.0.0.1] \p:1~KUV)k May 20 22:52:18 mail postfix/cleanup[3368]: 8032C31B8B: message-id=20060520145157.8032C31B8B@mail.extmail.org ,Z`N jn! May 20 22:52:18 mail postfix/qmgr[2900]: 8032C31B8B: from=test@test.com, size=392, nrcpt=1 (queue active) V[,%26amp;v9Cj May 20 22:52:18 mail postfix/smtpd[3371]: connect from localhost[127.0.0.1] 7+ 2X4.*F May 20 22:52:18 mail postfix/smtpd[3371]: 46E6831B8C: client=localhost[127.0.0.1] yg$Di_ok May 20 22:52:18 mail postfix/cleanup[3368]: 46E6831B8C: message-id=VA02687-02@mail.extmail.org dQVXwXot May 20 22:52:18 mail postfix/qmgr[2900]: 46E6831B8C: from=, size=2268, nrcpt=1 (queue active) y+\,[\U May 20 22:52:18 mail amavis[2687]: (02687-02) INFECTED (Eicar-Test-Signature), test@test.com - test@extmail.org, quarantine virus-20060520-225218-02687-02, Message-ID: 20060520145157.8032C31B8B@mail.extmail.org, Hits: - oDt92(|V May 20 22:52:18 mail postfix/smtp[3370]: 8032C31B8B: to=test@extmail.org, relay=127.0.0.1[127.0.0.1], delay=21, status=sent (250 2.7.1 Ok, discarded, id=02687-02 - VIRUS: Eicar-Test-Signature) ; L!19 8ak May 20 22:52:18 mail postfix/qmgr[2900]: 8032C31B8B: removed v1%'jxG# May 20 22:52:18 mail postfix/smtpd[3371]: disconnect from localhost[127.0.0.1] |L8JR May 20 22:52:20 mail postfix/smtpd[3362]: disconnect from localhost[127.0.0.1] YCC4R_w8~ xS?T!I.z #f{ /J5p^ 7lD }o 3、安裝extmail/extman +:P^ IJ A、修改apache )bk\i\1j HuuSHh$yB 修改apache 讓他以postfix 身份運行,否則extmail 創建的目錄郵件系統無法讀取,extmail 也無法讀取目錄。 (r=ww .Ux}1o_f 或者你可以重新創建一個用戶,修改/etc/main.cf中的virtual_gid_maps,virtual_uid_maps就行了。 4UcylC 9b 7j K8?O 修改/etc/apache2/apache.conf 讓他以posftix身份執行。 {$-pa+*E w(H6s1U1 將 4hDgokIO -#-~u+f User www-data ~9 %26amp;jWd Group www-data YR3E/ "[Shc 改爲 7ot]%26amp;_5 2g88? s User postfix gw.% Group postfix EQE $3\D 3f*z% 加入虛似主機設置,創建/etc/apache2/site-enable/extmail.conf 輸入下面的內容。 %y l6a8j0 u]x8=N '"8C6B;g Alias /extman/cgi/ /var/www/cgi-bin/extman/cgi/ B[zE=z22 Alias /extman /var/www/cgi-bin/extman/html/ 'qXE*u8 wH -\` GYfC SetHandler cgi-script t5[#Mj7pv Options +ExecCGI ^c$mp AllowOverride All / Pym a_ /C*Gi u hH x- i 7G@;6zSM # config for ExtMail ZKB6ZUmh Alias /extmail/cgi/ /var/www//cgi-bin/extmail/cgi/ o}H.rkj\v Alias /extmail /var/www/cgi-bin/extmail/html/ qS7 o81ip41' H7GO02J9 SetHandler cgi-script ~t.6|{n Options +ExecCGI |oHj,[1 AllowOverride All Z8# MxsL j ]u K "`%0/huR5 B、重啓apache g(%26amp; 2J 7 bI mail:~# /etc/init.d/apache2 restart 8@i# 9g $6Lk$)k 將文件複制到/var/www/cgi-bin/ ,如果你的目錄沒有cgi-bin這個文件夾,自己創建一個就可以了。 y^dvCIMi9 {H#;v(JXw mail:/var/www/cgi-bin# cp -r /home/fy138/extmail-0.23-20060219/ ./extmail U$+ xt; mail:/var/www/cgi-bin# cp -r /home/fy138/extman-0.15-20060518/ ./extman nsRGwBHqQC |u OLr?Y C、配置extmail e;fWJ %26amp;c`$Q Iy mail:/var/www/cgi-bin# cd extmail/ oV~CFY $LZ)?w%r 修改webmail.cf 下面的選項(注意系統沒有webmail.cf 這個文件,需要從webmail.cf.default 複制一份) d i]~0yky F# P ]'X; SYS_MAILDIR_BASE = /home/data/domains #郵件存儲的位置。 [ !bLRuhv-@ SYS_MYSQL_USER = extmail #數據庫的用戶名 2dXnkcxL SYS_MYSQL_PASS = extmail #數據庫的密碼 a00 HLIR SYS_MYSQL_DB = extmail #數據名字 ~;}sslY4 a8#M^ j5 SYS_MYSQL_SOCKET = /var/run/mysqld/mysqld.sock #mysql socket的位置 ? h4HNG] di5#%26amp;uxu\ 打開浏覽器輸入: http://yourip/extmail/即可看到extmail 的登陸窗口。 L!`W j) 2oJFLaR} 測試的用戶名:test 密碼:test 域:extmail.org 2?c/VbWW ;i_yR\~W D、配置extman U 1+c2 W5I\-/m% mail:/var/www/cgi-bin# cd extman sZI}i8 N\oDJ~V y 編輯webman.cf 修改下面的選項 0`A %4(, o.:w(~02R SYS_MAILDIR_BASE = /home/data/domains W]$+\=vQ~ u";F_#FsD SYS_MYSQL_SOCKET = /var/run/mysqld/mysqld.sock yAs6/k{F 6Q {,zkk 創建extman 的臨時目錄 XXEqSyPXM Ly!za mail:/var/www/cgi-bin/extman# mkdir /tmp/extman Q$ [!aSGi= mail:/var/www/cgi-bin/extman# chmod 777 /tmp/extman/ w_"nr.'7$ R{6Xf%26amp;vfw 創建extman 與extmail 軟件包的連接(因爲某些包在extmail 的目錄裏,所以要做鏈接) o^RQ#q9Po a)f [OuH mail:/var/www/cgi-bin/extman/libs/Ext# ./buildlink.sh build /var/www/cgi-bin/extmail/libs/Ext/ 4Z2 R*m0\4K6) 打開浏覽器輸入http://yourip/extman/ /Be%G"4 I9Odd OK 用戶名爲:root@extmail.org 密碼:extmail }^$- NP*p '=\`5lEf 至此extmail/extman 已安裝完成,至于extman 的圖形日志安裝請看 (PGpExhE Yl{~!v+ http://www.extmail.org/forum/read.php?tid=1524%26amp;fpage=1%26amp;toread=1 wRl$~$ keZz 4、安裝slockd %}^z]gX:0 詳細的安裝過程請看 LlFJ;q Rf;x%26amp;La http://www.extmail.org/forum/read.php?tid=1463%26amp;fpage=1%26amp;toread=1 ^ad[/uvwt :BT*J 複制安裝文件 ^y +t;20` O'Wfdh#D mail:/usr/local# cp -r /home/fy138/slockd-0.08/ ./slockd ?X@ BJ;2Q 修改slockd 目config錄下的 main.cf ,將setsid 1 的注釋去掉。 oT6d] ?+ |Z%26amp;8Qc 修改postfix 的/etc/postfix/main.cf 讓他支持slockd lvGE ^cJ lMP~dm}E 注意第一行是靠邊的,第二行開始都最後前面都要留一個空格的位置,意思是告訴postfix 一行寫不下,換了行。 $P@bG")Wk `R}C R'B %26amp; D_uXH smtpd_recipient_restrictions = 9516-t$:, permit_mynetworks, permit_sasl_authenticated, reject_non_fqdn_hostname,?reject_non_fqdn_sender,?reject_non_fqdn_recipient,?reject_unauth_destination,?reject_unauth_pipelining,?reject_invalid_hostname,?check_policy_service inet:127.0.0.1:10030 T\y, Eq!Y| 修改完成後執行 ;CHMexV{ ) mail:/usr/local/slockd# /etc/init.d/postfix reload A/Zd! S! O3u 至于如何讓slockd 隨系統啓動目前還不知道,如果你知道請告訴我。
󰈣󰈤
王朝萬家燈火計劃
期待原創作者加盟
 
 
 
>>返回首頁<<
 
 
 
 
 熱帖排行
 
 
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有