導航:首頁 > 編程系統 > linuxpostfix配置

linuxpostfix配置

發布時間:2023-08-18 20:46:45

㈠ 在linux下如何配置postfix與dovecot才能使客戶端outlook成功連接到電子郵件伺服器上需要詳細步驟,謝謝

1.配置

a. /etc/postfix/main.cf

配置mydomian(域名),myhostname,myorigin,inet_interfaces=all(其他關閉),mynetworks-style,mydestination,mynetworks,relay_domains,home_mailbox

配置主機名和域名 mydomain myhostname

設置由本機寄出的郵件所使用的域名或主機名稱 myorigin

設置postfix服務監聽的網路介面 inet_interfaces

設置可接受郵件的主機名稱和域名 mydestination

設置可以轉發哪些網路的郵件 mynetworks

設置可以轉發哪些網域的郵件 relay_domains = sina.cn

b.驗證:

telnet localhost 25

mail from:[email protected](發件人任意)

rcpt to:[email protected](收件人創建的名字和設置好的域名)

data(輸入信息)

.(結束輸入)

quit(離開)


2.配置dovecot

yum install -y dovecot

a.配置文件:a. vim /etc/dovecot/dovecot.conf (protocols = imap pop3)

b. vim /etc/dovecot/conf.d/10-auth.conf

(disable_plaintext_auth = no)

c. vim /etc/dovecot/conf.d/10-mail.conf

(mail_location = maildir:~/Maildir)地址要和postfix伺服器配置文件中的home_mailbox地址一致

d. vim /etc/dovecot/conf.d/10-ssl.conf

(ssl = yes)

e. vim /etc/pam.d/dovecot (查看pam認證文件)

b.驗證:

[root@CentOS6 ~]# telnet localhost 110

Trying ::1...

Connected to localhost.

Escape character is '^]'.

+OK Dovecot ready.

user user1

+OK

pass 123

+OK Logged in.

list

+OK 4 messages:

1 472

2 458

3 464

4 464

.

retr 3

+OK 464 octets

Return-Path: <[email protected]>

X-Original-To: [email protected]

Delivered-To: [email protected]


3.郵件客戶端的配置

a. 關閉防火牆,selinux

b. 設置收發郵件伺服器

我這里是用的foxmail 看我的截圖

這樣就可以了


㈡ 141Linux 安裝及配置郵件伺服器

效果截圖

Sendmail :sendmail 是最古老的 MTA(Mail Transfer Agent,電子郵件系統)之一,最早它誕生的時候,Internet 還沒有被標准化,當時主機之間使用的是 UUCP 技術來交換郵件。它被設計得比較靈活,便於配置和運行於各種類型的機器。
Qmail :qmail 是新生一代的 MTA 代表,它以速度快、體積小、易配蘆巧置安裝等特性而著稱。作者 D.J.Bernstein 是一個數學教授,富有傳奇色彩。他於 1995 年開發 qmail,1996 年發布 0.70 版,並使用了多種當時比較先進的 技術,包括 Maildir,與 sendmail 單個 binary 不同的模塊化設計,許可權分離,以及使用了大量由他編寫的配套工具,如 daemontool,ucsip-tcp 等。qmai 迅速成為了 Internet 上最有名的 MTA,使用者眾。
postfix :postfix 如今已經獨樹一幟,流水線、模塊化缺灶的設計,兼顧了效率和功能。靈活的配置和擴展,使得配置 postfix 變得富有趣味。其主要的特點是速度快、穩定,而且配置/功能非常強大,並和 sendmail 類似,提供了與外部程序對接伏嘩扮的 API/protocol。尤其是配置部分,postfix 另一個優勢是至今依然保持活躍的開發工作,而且穩步發展,適合高流量大負載的系統,擴充能力較強。本實驗也是基於 postfix 伺服器軟體來實現。

郵件伺服器基本的工作原理
MUA(Mail User Agent):向外發送郵件,以及提供用戶瀏覽與編寫郵件的功能。
MTA(Mail Transfer Agent):(可以理解為 smtpd 伺服器)幫忙將用戶的郵件傳遞出去或接收進來。
MDA(Mail Delivery Agent):將接收下來的郵件存放到對應用戶郵筒當中的程序。通過分析 MTA 所收到郵件的表頭或內容,來判斷此郵件是屬於哪個用戶,然後決定將此郵件投遞給哪個用戶的郵筒里。
MRA(Mail Retrieval Agent):通過 MRA 伺服器提供的郵政服務協議(POP)來接收自己的郵件。

郵件中繼:
SMTPD 要支持郵件路由功能,需要打開 Open Relay 開放式中繼。
SMTPD 是根據收件人判斷郵件是否需要中繼,而且只給指定的客戶端中繼。

註:當 DNS 上存在多個 MX 記錄的主機這時就是根據 DNS 的郵件級判斷了。DNS 上定義的值越小,其優先順序越高。輔助交換器接受到郵件並不能保存郵件。而是這個輔助交換器會等到主郵件交換器空閑的時候把代替它接受下來的郵件在轉給主郵件交換器。所以任何郵件處理都是主郵件交換器處理的。所以我們實際情況下,如果有 2 台伺服器做郵件交換器,性能比較高的應該為主的。

安裝配置過程中,postfix 通過 Internet 發送和接收 email,並存儲在用戶郵箱里。同時客戶也可以通過 IMAP 或者 POP3 恢復他們的郵件。其中的客戶認證是通過 Courier Authdaemon 模塊的。下圖表示出了這個過程:

出現安裝界面時,首先按下 <tab> 鍵切換到確定,然後按下回車。

安裝 postfix 的時候會問你安裝的伺服器類型,對於我們的需要,我們選擇默認的 Internet Site,這是最符合我們的伺服器類型,然後按下回車確認。

使用 vim 編輯配置文件:

大概在第 31 行,編輯 myhostname,修改為 myhostname = shiyanlou.com。
然後我們把alias_map參數修改為 alias_maps = hash:/etc/postfix/virtual,之後會講解virtual裡面填寫什麼。
之後設置mynetworks段落,它定義可以使用這台伺服器的主機,我們這里就用默認的本地地址。你也可設置為其他地址。
編輯完成後按下 Esc 鍵,輸入 :wq 保存退出。

此命令創建了一個用戶 master,其中 -d 和 -m 選項用來為登錄名 master 產生一個主目錄 /usr/master(/usr 為默認的用戶主目錄所在的父目錄)。

我們編寫之前設置的 virtual 文件,這些郵箱地址是用來傳送郵件的。

在這個文件里,我們將設置一個表,對應相關的郵件地址。

完成後保存關閉文件。
我們可以通過調用下面這個命令來實現我們的映射:

接著我們重啟 postfix,完成我們的修改:

我們可以用 shiyanlou 這個賬號給 master 這個賬號發一封郵件。首先我們需要安裝一個命令行收發郵件的軟體 mailutils 。

寫一封郵件

輸入如下內容:

其中 -s 參數是指郵件的標題,< 後面是將要發送的郵件內容從 hello.txt 中重定向。這個命令如果正確執行不會有輸出。
然後我們切換到 master 用戶,查看我們的郵件。

按下回車建可以查看郵件內容,輸入 quit 即可退出郵箱。

Linux 郵件伺服器原理介紹,編譯安裝 Postfix 實現本地的郵件服務
Ubuntu 伺服器指南-郵件服務-Postfix
how-to-run-your-own-mail-server-with-mail-in-a-box-on-ubuntu-14-04

㈢ linux郵件伺服器搭建

EMOS很簡單噢,就是CENTOS這個LINUX操作系統自帶的安裝組件,只要配置少量的配置 ,都是用RPM包安裝,非常快捷。

㈣ LINUX郵件伺服器搭建

1. 用以下命令查看系統是否安裝了sendmail:
[root@mail /root]# rpm – |grep sendmail
sendmail-8.11.0-8
2. 卸載sendmail:
[root@mail /root]# rpm -e sendmail –nodeps
3. 用以下命令殺死運行中的sendmail進程:
[root@mail /root]# killall sendmail
如果系統提示:
sendmail: no process killed
則說明當前系統中沒有sendmail進程。
4. 安裝postfix:
[root@mail /root]# rpm -ivh postfix-20010228release-2.i386.rpm
若已經安裝,則此步可以省略。(註:安裝時最好用rpm包,會自動創建postfix用戶和postfix組)
5. 安裝imap
rpm –ivh /mnt/cdrom/RedHat/RPMS/ imap-4.7c2-12.rpm
imap使pop3有效,即打開110埠。(註:安裝時最好用rpm包)
若已經安裝,則此步可以省略。
6. 檢查系統中是否安裝了cyrus-sasl
執行以下命令查看系統中是否安裝了cyrus-sasl:
rpm –qa |grep cyurs
如果您看到以下提示,則說明已經安裝了cyrus-sasl
[root@test bye2000]# rpm -qa |grep sasl
cyrus-sasl-devel-1.5.24-17
cyrus-sasl-1.5.24-17
否則,請用rpm –ivh 命令先安裝所需sasl-cyrus包。
7.修改postfix用戶
同時應該讓該用戶不能登錄到系統,也即不為該用戶指定可執行的登錄外殼程序和可用
的用戶宿主目錄。
編輯/etc/passwd文件中的相關條目如下所示:
postfix:x:89:89::/no/where:/no/shell [編輯後,只修改藍色部分就可以了]
即:修改用戶的Home directory和Shell 參照 /etc/passwd文件

8.編輯postfix的主要配置文件/etc/postfix/main.cf,根據需求只需修改以下幾個參數:
1)mydomain
指明你的域名,在這里我們指定:
mydomain = xx.com
2)myorigin
myorigin參數指明發件人所在的域名。如果你的用戶的郵件地址為[email protected],則該參數指定@後面的域名。在這里我們指定:
myorigin = $mydomain
3)inet_interfaces
inet_interfaces = all 監聽所有埠
4)mydestination
mydestination參數指定postfix接收郵件時收件人的域名,換句話說,也就是你的postfix
系統要接收什麼樣的郵件。通常與myorigin一樣:
mydestination = $mydomain
5)mynetworks_style
設置網路類型,我們指定:
mynetworks_style = subnet
6)ynetworks
定義可以使用的此smtp伺服器發信的客戶ip地址,因為公司的ip范圍已知,所以我們
指定:
mynetworks = 192.168.1.0/24
註:此項可根據情況而定,主要是指定ip范圍,假如公司的ip劃分是按照網段來的,例如:10.10.1.0~10.10.1.9,10.10.3.0~10.10.3.9等等更細。根據需要,該項可以不設置。
7)SMTP的配置
為了告訴postfix採用sasl來進行SMTP的用戶認證,我們必須在/etc/postfix/main.cf文件的最後添加以下幾行:
smtpd_sasl_auth_enable = yes
smtpd_recipient_restrictions = permit_sasl_authenticated
permit_auth_destination reject
broken_sasl_auth_clients = yes
smtpd_sasl_security_options = noanonymous
說明如下:
smtpd_sasl_auth_enable:告訴SMTP客戶,該SMTP伺服器需要進行用戶認證。

smtpd_recipient_restrictions = permit_sasl_authenticated
permit_auth_destination reject
僅僅中繼通過SMTP認證的客戶端郵件,以及接收本postfix為最後一站的郵件。
broken_sasl_auth_clients = yes
有一些Microsoft 的SMTP客戶端,比如Outlook Express 4.X採用的是非標準的SMTP認證協議,將該選項設置為yes可以解決這類不兼容問題。
smtpd_sasl_security_options = noanonymous
控制本地SMTP認證所採用的機制,這里是允許任何非匿名認證方法。
9.配置SASL
進入/usr/lib/sasl/目錄,用touch新建這樣一個文件:
[root@test sasl]# touch smtpd.conf
在該文件中加入以下內容:
[root@test sasl]# more smtpd.conf
pwcheck_method:pam
也就是指定通過PAM來進行用戶認證。
10.配置PAM
進入/etc/pam.d/目錄,用touch新建這樣一個文件:
[root@test pam.d]# touch smtp
在該文件中加入如下內容:
[root@test pam.d]# more smtp
#%PAM-1.0
auth required /lib/security/pam_stack.so service=system-auth
account required /lib/security/pam_stack.so service=system-auth
也即和/etc/pam.d/pop文件的內容是一致的。
11.修改/etc/shadow文件許可權
因為PAM最終要去讀取/etc/shadow文件的內容來進行用戶認證,但是/etc/shadow文件
許可權是設置為只有root用戶可以讀寫,而我們的postfix是運行在postfix用戶許可權之下,所以我們要合理的設置/etc/shadow文件許可權,以便讓pam可以讀取其內容。
執行以下命令,讓root組也可以讀取shadow:
[root@test /etc]# chmod 640 /etc/shadow
然後再將postfix用戶加入root組,採用以下命令:
[root@test /etc]# usermod -G root postfix

12.編輯postfix的主要配置文件/etc/postfix/master.cf
# ==========================================================================
# service type private unpriv chroot wakeup maxproc command + args
# (yes) (yes) (yes) (never) (100)
# ==========================================================================
smtp inet n - n - - smtpd
這里開始
#smtps inet n - n - - smtpd
# -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes
#submission inet n - n - - smtpd
# -o smtpd_enforce_tls=yes -o smtpd_sasl_auth_enable=yes
這里結束
#628 inet n - n - - qmqpd
把我標的注釋部分去掉即可。
13.配置pop3
RedHat7.0已經使用xinetd代替了以前的inetd,為了使pop3服務啟動,我們編輯
/etc/xinetd.d/ipop3文件,將其中的disable = yes改為disable = no 以便啟動pop3
服務。
為了使改動生效,執行以下命令:
/etc/rc.d/init.d/xinetd reload
14.啟動postfix
執行以下命令啟動postfix:
/etc/rc.d/init.d/postfix start
這樣,一個支持SMTP認證的postfix郵件伺服器就配好了。

㈤ postfix 的常見功能和配置有哪些

postfix是一種MTA,用來收發郵件

service:postfix

port:25

proto:smtp

datafile:/var/spool/mail/user

queue:/var/spool/postfix

log:/var/log/maillog

paraments: http://www.postfix.org/postconf.5.html


configuration:/etc/postfix/main.cf(主要配置如下參數)

myhostname:默認為主機名(可自己寫)

mydomain:默認為主機的域(...)

myorigin:當發信時,如果不寫@domain,默認用該變數值補齊,默認為mydomain

mydestination:該變數決定什麼樣後綴的郵件到達該MTA的時候會被該MTA接受

inet_interfaces:監聽哪個網卡

relayhost:找一個幫忙轉發的MTA,可以是[IP],也可以是hostname,如果hostname寫在[]中,可以避免查dns

mynetworks:信任的網路,如果信任,可以幫忙轉發.如果不設置,默認使用該機器網卡的網段(所有網卡)

local_transport=error:local delivery disabled //本地不接受郵huh件


備註:修改hostname的時候,修改網卡配置的時候,會改變/etc/resolv.conf文件的內容,影響DNS的正常使用,在/etc/NetworkManager/NetworkManager.conf中添加dns=none就會不受影響。



【relayhost】

relayhost參數指定了下一個MTA,自己可以不做DNS解析,將郵件發給RELAYHOST,RELAYHOST幫忙解析

relayhost=[IP]/hostname

hostname必須可以解析,默認的解析方法時DNS,如果想要用/etc/hosts解析,需要修改一個參數

smtp_host_lookup,該參數的值可以時dns(只有dns);native(只用/etc/nsswitch.conf);dns,native(優先dns)


【transport】

transport:作用和relayhost一樣,但是不是無條件幫忙轉發,有域的限定

/etc/postfix/main.cf transport_maps = hash:/etc/postfix/transport(文件可以隨意,這個時默認的)

domain smtp:[IP]:25

生成資料庫:postmap /etc/postfixe/transport 生成資料庫 transport.db

備註:transport的優先順序 > mydestination > relayhost

備註:transport的資料庫表有好幾種格式,postconf -m 可以查看支持的資料庫表格式,常見的有hash,regexp

如果為regexp格式,transport文件中的轉發格式則不同:

/filter/ :relayhost //filter中的「.」符號要加轉義符號


【queue】

當郵件發不出去的時候,會將郵件留在queue里,/var/spool/postfix下

mailq查看queue中的郵件

postqueue -f 嘗試重新發送queue中的郵件

postqueue -i q_id 把指定的郵件再發送一次

postsuper -d All 刪除queue中的所有郵件

postsuper -d ALL queuename 刪除特定queue內的所有郵件

postconf 查看主配置文件的參數

postconf -d 查看主配置文件參數的默認值


關於郵件在queue中的發送的幾個參數:


queue_run_delay:一個檢測queue的程序自服務啟動後運行的時間間隔

maximal_backoff_time:在檢測程序跑的時候,queue中的郵件超過該時間的會被重新發送

minimal_backoff_time:當超過最小值還沒有發送成功,發送的時間會變成*2,一直到最大的間隔

maximal_queue_lifetime:在queue中存在的最長時間,超過被刪除(系統認為該郵件發布出去)

【telnet】

一種測試MTA是否能正常通信的方式

telnet ****** 25 (某台MTA的25號埠)

ehlo *** //表明身份

mail from: user@domain //郵件來源

rcpt to: user@domain //郵件發往

data //之後輸入郵件的內容

subject: //主題,下面就可以輸入郵件的正文


【alias】

/etc/aliases里可以定義別名,到達MTA本地的郵件會走這個文件,

例如:定義了a1:root,創建新的資料庫,newaliases 則發給a1的郵件會存在/var/mail/root中


【virtual aliases domain】

雖然感覺並沒有什麼卵用,但是還是能起到一點點一個MTA上面可以接受多個域的郵件,存放地方還不會混亂的一個機制

/etc/postfix/main.cf :

virtual_alias_domains=domain1,domain2

virtual_alias_map = hash:/etc/postfix/virtual(默認為該文件,可以修改)

/etc/postfix/virtual

user@domain1 user1(local user) //發給某個域的某個用戶的郵件存在/var/spool/mail/user1中


【virtual mailbox domain】

/etc/postfix/main.cf

virtual_mailbox_domains = domain

virtual_mailbox_base = /var/mail/vhosts //發過來的郵件會基於這個目錄

virtual_mailbox_maps = hash:/etc/postfix/vmailbox

virtual_minimum_uid = 100 //系統默認值,如果下面兩個參數小於該值,就會報錯

virtual_uid_maps = static:5000

virtual_gid_maps = static:5000

/etc/postfix/vmailbox

user@domain file //發給該用戶的郵件會存在該文件里

user@domain dir //發給該用戶的郵件會存在該目錄下的一個文件里,這樣,每一封郵件都有一個文件

postmap /etc/postfix.vmailbox

chown 5000:5000 存放郵件的上層目錄


【sasl】

加在MTA外面的一層認證,當用我這個MTA幫忙轉發的時候,就像RELAYHOST和transport中被信任以外,還可以時通過驗證的,有該MTA的user去做驗證

1.install cyrus-sasl,cyrus-sasl-plain

2. /etc/postfix/main.cf:

smtpd_sasl_path = smtpd //默認值

3./etc/sasl2/smtpd.conf

pwcheck_method: saslauthd

mech_list: PLAIN LOGIN //默認就有

4. /etc/sysconfig/saslauthd:

MECH=shadow/pam

5. saslauthd restart

6.# testsaslauthd -u xxx -p xxx //用用戶和密碼測試sasl是否成功

7./etc/postfix/main.cf:

smtpd_sasl_auth_enable = yes //sasl在postfix中生效

broken_sasl_auth_clients = yes //兼容微軟的outlook

smtpd_relay_restrictions = permit_mynetworks, permit_sasl_authenticated,reject_unauth_destination

8.# echo -ne '00username00password' | openssl base64 //用戶和密碼生成base64的密文,當另一台MTA將郵件傳過來轉發時,要進行認證


備註:sasl 採用 /etc/shadow 文件驗證用戶的時候,selinux 會有限制,為了解除selinux 的限制,需要打開 saslauthd_read_shadow 布爾值

test:

telnet:

auth plain 密文

user username

pass password

認證成功就可以幫助轉發了

㈥ 用linux系統搭建postfix郵件伺服器,但是區域網可以實現互發郵件,不能給其他的公網郵箱互發郵件,求解

你的區域網內可以發郵件,是不是你的DNS指向的問題。/etc/resolv.conf的nameserver是不是不能解析外面的域名啊

㈦ linux mail伺服器怎麼用

一、概述:

在配置郵件伺服器之前,先解釋幾個概念。

通常使用Email都很容易,但是Internet的郵件系統是通過幾個復雜的部分連接而成的,對於最終用戶而言,我們熟悉的Outlook,Foxmail等都是用來收信和發信的,稱之為MUA:Mail User Agent,郵件用戶代理。

MUA並非直接將郵件發送至收件人手中,而是通過MTA:Mail Transfer Agent,郵件傳輸代理代為傳遞,Sendmail和Postfix就是扮演MTA的角色。

一封郵件從MUA發出後,可能通過一個或多個MTA傳遞,最終到達MDA:Mail Delivery Agent,郵件投遞代理,郵件到達MDA後,就存放在某個文件或特殊的資料庫里,我們將這個長期保存郵件的地方稱之為郵箱。

一旦郵件到達郵箱,就原地不動了,等用戶再通過MUA將其取走,就是用Outlook,Foxmail等軟體收信的過程。

所以一封郵件的流程是:

發件人:MUA --發送--> MTA -> 若干個MTA... -> MTA -> MDA <--收取-- MUA:收件人

MUA到MTA,以及MTA到MTA之間使用的協議就是SMTP協議,而收郵件時,MUA到MDA之間使用的協議最常用的是POP3或IMAP。

需要注意的是,專業郵件服務商都有大量的機器來為用戶服務,所以通常MTA和MDA並不是同一台伺服器,因此,在Outlook等軟體里,我們需要分別填寫SMTP發送伺服器的地址和POP3接收伺服器的地址。

Linux系統下郵件伺服器的搭建(Postfix+Dovecot)

對於網站來說,發送各種例如注冊通知的郵件是很基本的一個需求,之前我一直用的是騰訊的企業郵箱,感覺挺方便的,直接可以綁定QQ郵箱接收郵件,網站配置一下SMTP也就可以發出郵件。

但是在前幾天由於有重要信息需要立即通知用戶,所以選擇了群發郵件的方式。在當我以為一切都是辣么完美的時候,陸續有用戶過來問我什麼情況,我都會跟他們說請查收郵件,但是有好幾個人說並沒有任何

郵件,於是我試著再發一次,結果返回了錯誤提示。在網上找了下原因,後來看到這個:各大免費郵箱郵件群發賬戶SMTP伺服器配置及SMTP發送量限制情況,才知道是因為發信數量限制了。

所以只好另尋出路了,然後我在知乎上面找到了很多個提供郵件發送的服務商,大概有這些:SendGrid、MailChimp、Amazon SES、SendCloud、Mailgun等等,在看了不少人的建議之後,我選擇了Mailgun。

Mailgun注冊和配置都挺簡單,很快我就成功的發出了第一封郵件,懷著這封欣喜,我又發送了幾封郵件,可是悲劇發生在第三封郵件,Mailgun後台有詳細的發送記錄,這個非常不錯,在後台我看到我的郵件被拒收了,原因大概是該伺服器IP的發信頻率超過騰訊郵箱限制。所以這里就涉及到IP的問題,目前第三方的郵件發送服務普遍都是共享IP(後面還試過SendCloud、),而共享IP並不能確定是否已經達到接收方的數量限制,一旦達到了就無法再發送。這就是說還需要使用獨立IP才能保證郵件有較高的到達率,接著就看了各家的獨立IP價格,一般都是二十幾甚至四十幾美刀一個月,這對於我們這種小站長郵件需求不高的來說確實有點貴,買台VPS都不用這個價吧。

經過上面這些折騰,也算明白了如果要想順暢的發出郵件的話,除了花錢,就只有自己搭建一個郵件伺服器了。

好了,下面開始進入正題,教你搭建一個簡單的郵件伺服器。

用於搭建的伺服器信息

阿里雲 Centos 6.5 32位

Postfix-2.8.12.tar.gz Postfix MTA(郵件傳輸代理)
Dovecot-2.1.8.tar.gz IMAP 和 POP3 郵件伺服器
Postfixadmin-2.3.5.tar.gz 採用PHP編寫的開源WEB郵箱及域名賬號管理工具
Roundcubemail-0.8.1.tar.gz 採用php編寫的開源IMAP郵件WEB客戶端

安裝過程

1.安裝Postfix

yum -y install postfix

安裝完成還需要替換系統自帶的sendmail:

rpm -e sendmail
或者
yum remove sendmail

修改MTA(默認郵件傳輸代理)

alternatives --config mta

然後直接回車即可。

檢查一下是不是已經設置成功了。

alternatives --display mta

第一行可以看到mta的狀態。 例如:mat - status is manual.

2.安裝Dovecot

yum -y install dovecot

3.配置Postfix

編輯/etc/postfix/main.cf,可以下載下來修改,也可以使用vi進行編輯:

vi /etc/postfix/main.cf

修改如下:

# 75行: 取消注釋,設置hostname
myhostname = mail.lomu.me
# 83行: 取消注釋,設置域名
mydomain = lomu.me
# 99行: 取消注釋
myorigin = $mydomain
# 116行: 修改
inet_interfaces = all
# 119行: 推薦ipv4,如果支持ipv6,則可以為all
inet_protocols = ipv4
# 164行: 添加
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
# 264行: 取消注釋,指定內網和本地的IP地址范圍
mynetworks = 127.0.0.0/8, 10.0.0.0/24
# 419行: 取消注釋,郵件保存目錄
home_mailbox = Maildir/
# 571行: 添加
smtpd_banner = $myhostname ESMTP

# 添加到最後
# 規定郵件最大尺寸為10M
message_size_limit = 10485760
# 規定收件箱最大容量為1G
mailbox_size_limit = 1073741824
# SMTP認證
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain = $myhostname
smtpd_recipient_restrictions = permit_mynetworks,permit_auth_destination,permit_sasl_authenticated,reject

修改好了之後使用/etc/rc.d/init.d/postfix start開啟postfix,使用chkconfig postfix on將postfix開機啟動。

4.配置Dovecot

修改如下:

[root@mail ~]# vi /etc/dovecot/dovecot.conf
# 26行: 如果不使用IPv6,請修改為*
listen = *

[root@mail ~]# vi /etc/dovecot/conf.d/10-auth.conf
# 9行: 取消注釋並修改
disable_plaintext_auth = no
# 97行: 添加
auth_mechanisms = plain login

[root@mail ~]# vi /etc/dovecot/conf.d/10-mail.conf
# 30行: 取消注釋並添加
mail_location = maildir:~/Maildir

[root@mail ~]# vi /etc/dovecot/conf.d/10-master.conf
# 88-90行: 取消注釋並添加
# Postfix smtp驗證
unix_listener /var/spool/postfix/private/auth {
mode = 0666
user = postfix
group = postfix
}

[root@mail ~]# /etc/rc.d/init.d/dovecot start
Starting Dovecot Imap: [ OK ]

[root@mail ~]# chkconfig dovecot on

到這里,我們的郵件伺服器就已經搭建成功了。

5.域名解析

最後別忘了還需要進行域名解析工作。

添加一個子域名mail,A記錄解析到伺服器IP。

再添加一個MX記錄,主機記錄為空,記錄值為上面解析的二級域名mail.lomu.me,優先順序10。

注意:解析生效可能需要一段時間。


6.防火牆設置


/sbin/iptables -A INPUT -p tcp --dport 25 -j ACCEPT

/sbin/iptables -A INPUT -p tcp --dport 110 -j ACCEPT

/sbin/iptables -A INPUT -p tcp --dport 143 -j ACCEPT

突破封鎖25口的轉發

/sbin/iptables -t nat -A PREROUTING -p tcp -m tcp --dport 10025 -j REDIRECT --to-ports 25

7.郵箱使用

一切都弄好以後,就可以使用Foxmail等第三方軟體來收發郵件了。在這里需要說一下,系統用戶就是郵件的用戶,例如root,就是一個郵箱用戶,郵箱是[email protected],密碼就是root的密碼,所以需要創建用戶,只要使用useradd創建用戶,再使用passwd設置密碼。

好了,假如我們創建一個admin的用戶:

# 創建用戶
useradd admin
#設置密碼,會要求輸入兩次密碼
passwd admin

接下來登錄Foxmail,如圖:


點擊創建,進入:

這里需要注意,郵件賬號是admin,並不是郵箱,另外我們沒有配置SSL,所以也不要勾選。 接下來點擊創建,如果一切正常的話,你已經成功了。



閱讀全文

與linuxpostfix配置相關的資料

熱點內容
w7電腦如何連接網路列印機共享的列印機 瀏覽:474
文件標題是什麼 瀏覽:575
js獲得粘貼的數據 瀏覽:384
什麼是pdb文件 瀏覽:89
windowsphone微信 瀏覽:128
小米3基帶文件 瀏覽:763
新建文件路徑是什麼 瀏覽:504
word默認擴展名 瀏覽:753
網路電話插口如何接線的 瀏覽:330
美妝相機2016版本 瀏覽:901
五年級學什麼編程最好 瀏覽:471
沈陽什麼app騎手好 瀏覽:596
微信群成員頭像是灰色 瀏覽:495
找房用什麼app 瀏覽:174
osx賬戶恢復配置文件 瀏覽:966
安卓m1卡破解 瀏覽:557
系統保護文件是什麼 瀏覽:200
冒險島老物品代碼 瀏覽:834
南航app如何綁定護照 瀏覽:140
公眾號小程序怎麼製作 瀏覽:24

友情鏈接