过期域名预定抢注

 找回密碼
 免费注册

在vps建立一個自己的接收郵件服務器

[複製鏈接]
發表於 2014-1-15 13:21:17 | 顯示全部樓層 |閱讀模式
本帖最後由 hudba 於 2014-1-15 13:26 編輯
5 _9 J6 i6 s9 Y  q2 [
$ o0 R$ v* |8 F; v有一個自己的接收郵件服務器的好處:# ]; t& w' [2 ]1 o3 u- Y  t
  • 主要是自由方便,
  • 可以有自己的域名郵箱,
  • 不求人,
  • 想多少個名字就多少個名字* Z3 a/ E5 l) s! o1 {& p* d
8 ?6 U$ \* k4 b  j8 {" `) O
發郵件相對簡單,這裡主要介紹如何使用dovecot配置一個接受郵件的服務器。
) @, h8 `  Q7 x. x: M% J環境:$ w2 o) i, I$ {3 B5 B
服務器使用debian,如果不是debian,配置文件的路徑稍有差別,需要自己修改,但過程一樣。
/ x' m/ K5 g  N8 ]2 P$ |9 M( }郵件處理smtp協議使用:exim3 L, _* I4 \8 S* H# ^  |
郵件處理imap,pop3,lmtp協議使用:dovecot7 k' y& V" Q7 p
/ B; O2 H4 r3 d! A0 f
郵件接收&閱讀原理:
) o8 l6 V' q# I郵件最終的投遞ip是由域名(比如yourdomain.com)裡面的mx記錄決定的。
1 t! b9 W: e7 _8 O* v" G" K* I) N比如在namecheap裡面這樣設置後,@yourdomain.com的郵件將會由yourdomain.com的郵件服務器接收
4 M. q7 V) J; c3 N' M% l, g. I- e mx.PNG
! a4 T8 q5 V# d, Z$ F) ~, N4 w9 a6 r郵件發出後會以smtp協議進行投遞,發送和接受郵件的服務器都要安裝處理smtp協議的軟件,我們這裡就是exim。
+ U- u$ D" o2 j6 U' d我們的exim收到別處來的郵件後,需要用lmtp協議把郵件存起來,這裡我們使用dovecot處理lmtp協議。
+ [. X+ t& Z/ q5 c, i( V7 d* W1 k郵件存儲了,需要閱讀的時候,需要使用pop3或者imap協議,dovecot也會處理這兩個協議。
1 t7 b8 p9 S  I8 J( [/ ]郵件閱讀還需要客戶端,可以使用gmail或者outlook這些去和dovecot通訊下載郵件來讀。
3 y" F8 l4 O& o" t. U3 X) t) {' i# E- G2 s% _- i- b$ C: u
安裝步驟:
0 M2 I' C* l: E( m1 ?- e1. 去namecheap裡面設置mx,把@yourdomain.com設置到你的vps上面,如上面所附圖( E' F9 I9 w! a9 [4 E. s
9 y8 ]5 `) V1 z& J2 @- c
2. 安裝exim 和dovecot
  1. aptitude install exim dovecot-pop3d dovecot-lmtpd
複製代碼
3. 配置dovecot
' x* R8 B2 n! q0 h建立一個linux用戶專用存放郵件,這樣收到的郵件都將存到/home/vmail裡面:
  1. groupadd vmail
    & w; r! D7 d) g; M
  2. useradd vmail -r -g vmail -d /home/vmail -m -s /sbin/nologin -c "mail user"
複製代碼

! G" n' z" S5 {0 v8 _; [5 f設置郵箱賬戶
,運行:
  1. pico /etc/dovecot/passwd
複製代碼
然後輸入用戶名,密碼組合如下格式,想輸入多少賬戶就輸入多少賬戶:
  1. [email protected]:{PLAIN}mypassword! |3 U9 k; E- ?$ m
  2. [email protected]:{PLAIN}anotherpassword
    : Q% I+ [1 e( s& D/ d2 h
複製代碼

4 z: D  ~" q+ R& b' Q配置dovecot本身
,運行:
  1. pico /etc/dovecot/dovecot.conf
複製代碼
刪除原來的內容,使用如下的內容,在原來的基礎上看一下差別修改一下也成:
  1. protocols = pop3
    / y- k- R2 g; V3 w& I

  2. ' V0 A, {. d/ J; p: J+ |: [2 o
  3. # It's nice to have separate log files for Dovecot. You could do this
    " r% J& C3 i4 I; h. I
  4. # by changing syslog configuration also, but this is easier.' ~) x/ Y# G: z+ ?8 l
  5. log_path = /var/log/dovecot.log, D- ^9 e/ G! ~0 w
  6. info_log_path = /var/log/dovecot-info.log; c% V  \6 o2 S- M: m: A4 j* f
  7. % e2 s: _# }7 e- p7 M  [' w9 E
  8. # Disable SSL for now.
    & h5 @* i; I, b4 h
  9. ssl = yes5 F( s* S$ A& ^8 u- V; ~
  10. ssl_cert = </etc/dovecot/dovecot.pem8 ~3 M) j( q! I$ p! T. P
  11. ssl_key = </etc/dovecot/private/dovecot.pem
    , u$ @; Q7 d  H+ i
  12. ! v. _5 P7 I) R
  13. disable_plaintext_auth = no
      W& P+ p; Z  N0 d6 u
  14. ( ~2 P* N' T. }2 u+ F# H
  15. # We're using Maildir format
    ( ^: t- w+ n6 Q5 M- W& T
  16. mail_location = maildir:~/Maildir+ r5 i) w0 t4 s1 P: G" ]9 e

  17. $ w; P- O% N+ s7 L  P
  18. # If you're using POP3, you'll need this:; ~. ?1 k+ y& N) d% u# m/ }
  19. pop3_uidl_format = %g
    ; H& j4 z8 P" d1 P" F% n

  20. 5 G4 {  y) y0 ^& {. g. ]
  21. # Authentication configuration:
    + G: A$ H7 k/ |: T
  22. auth_verbose = yes
    ! X1 `4 T* t# A
  23. auth_mechanisms = plain0 Q1 a2 Y, c# r1 d$ @$ ^+ H! d$ n
  24. passdb {1 `; b" K9 n( b& O0 d$ N9 e% v
  25.   driver = passwd-file
      y3 c5 [: N; X5 r9 y3 Y1 A& l
  26.   args = /etc/dovecot/passwd, P3 V; t3 z. ?7 H) Z/ g" ^
  27. }, F8 _; @0 E3 W" @( Q0 G
  28. userdb {
    - `/ y+ E& t$ t+ @* Z+ T0 b: z, p3 H" L
  29.   driver = static
    : M5 L' ]) _0 u* X  \9 [: U
  30.   args = uid=vmail gid=vmail home=/home/vmail/%u, ~$ p, U5 L# Y. g% }8 n7 u
  31. }& G8 O7 `; _! P' M  ]% Q$ B

  32. 8 N' I  }* o; `& ]- f( {
  33. service lmtp {
    ( I, o5 j8 b+ W  J6 q
  34.   inet_listener lmtp {7 q1 x& r0 q! Z  |& Z* F
  35.     address = 127.0.0.1 ::12 z; c! _4 E: v. f; i4 x7 X
  36.     port = 24+ x3 w9 n. o9 v( c9 L5 j- p8 z
  37.   }3 D3 R9 M2 u! ]3 y8 U2 y

  38. 5 Q: }. p- d: y5 R% f
  39.   unix_listener lmtp {; V2 X( t1 `* o8 w; D5 J! e
  40.     mode = 0666
    . v6 z$ ^. s6 C$ q6 M
  41.   }& G4 M( Z5 q- F$ t4 h! u- o. Q, ~0 u, i
  42. }
複製代碼

* X5 E0 P8 O; b" |9 S$ J重啟服務
:
  1. service dovecot restart
複製代碼
7 K) m" R4 U" Y6 A! P# Q% ~
檢查一下
dovecot是否已經在監聽端口:
  1. lsof -ni
複製代碼
已經可以看到在監聽pop3,pop3s,還有lmtp的24號共3個端口了。0 R% F$ e0 T8 x* P! }
dovecot-ports.PNG
) {+ Z" ?# r7 p1 _- _  [
2 o* M* }5 r! N# U( \* |4. 配置exim:
5 U! t3 S1 A* w* t2 y: ]運行配置嚮導:
  1. dpkg-reconfigure exim4-config
複製代碼
這一個嚮導步驟比較多:8 U% c. q; w- A( f
第一步要選internet site; mail is sent and received directly using SMTP
7 w$ ^" }! S& [1 V然後遇到有textbox輸入的如果怕麻煩全部刪除原來內容,留空進下一步。
, g. R6 s9 e6 N: G9 S6 ~7 a3 U' Q有一個問題:Keep number of DNS-queries minimal (Dial-on-Demand)? ,選默認No' |0 @) ^' j, N
還有一個問題:Split configuration into small files?選Yes
7 v8 f6 g! {0 d$ t/ m: x4 Z; U% e
$ [- n+ o* |8 U% n' [配置exim進行lmtp方式投遞,運行:
  1. pico /etc/exim4/conf.d/router/900_exim4-config_local_user
複製代碼
然後把文件內容替換為:
  1. local_user:
    1 W7 P1 q3 @6 u& T: c
  2.         transport = dovecot_lmtp
    / Q, V' a  q7 P  s
  3.         domains = +local_domains
    5 g& t0 W6 t. i! e1 y% ]& ~% i1 S
  4.         driver = manualroute
    : a& ]! u$ b$ A3 V9 ]2 a, K- V1 A
  5.         route_list = "* 127.0.0.1 byname"6 b( d- [% V0 e) n
  6.         self = send" o5 C# a/ i5 U- J7 j8 S) o& t1 c
複製代碼
' v9 F$ r% Y; b3 N
運行以下命令,會新建一個文件:
  1. pico /etc/exim4/conf.d/transport/40_exim4-config_dovecot_lmtp
複製代碼
然後輸入以下內容:
  1. dovecot_lmtp:
    2 S% l3 I! x# R" w4 m6 |' Q: U
  2.         driver = smtp
    # u2 W4 f: M4 A8 V
  3.         protocol = lmtp
    : h  G5 V9 y3 U# Z2 U
  4.         port = 24
複製代碼

* d) X# ~3 C3 Q/ H7 Y重啟exim:
  1. service exim4 restart
複製代碼
檢查exim在公網監聽smtp端口:
  1. lsof -ni
複製代碼
exim-smtp.PNG
6 D0 u& f" O6 n% g8 H+ j* H1 m. z# N# [一定要是*:smtp,如果只有127.0.0.1:smtp或者根本沒有smtp端口,說明配置錯誤。需要去/var/log/exim4里面看log文件排錯,另外dovecot的log也在/var/log/dovecot.log
; a; v+ L9 F: s, A' a/ T7 d4 u: u; P
我使用gmail pop3作為閱讀客戶端,所以沒有用imap,如果需要可以在安裝的時候執行,應該不需要額外的配置更改:
  1. aptitude install dovecot-imapd
複製代碼

, Z5 q/ x8 s! ]! G) _' \

評分

參與人數 2點點 +6 收起 理由
冷夜追风 + 5 好复杂啊,楼主技术弟~
bethlehem + 1 鼓勵

查看全部評分

發表於 2014-1-16 07:43:01 | 顯示全部樓層
乾貨啊 以後嘗試著搭建一下          + Y. @5 ]! ^4 p+ J3 f

點評

可以自己处理邮件还是不错的,有精力的可以试一下。;)  發表於 2014-1-16 09:29
回復 给力 爆菊

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 免费注册

本版積分規則

过期高净值品牌域名预定抢注

4um點基跨境網編創業社區

GMT+8, 2024-11-27 14:15

By DZ X3.5

小黑屋

快速回復 返回頂部 返回列表