『壹』 怎樣在linux下架設郵件伺服器Sendmail
一.安裝Sendmail 完全安裝Red Hat Linux 9.0時,Sendmail就會自動內置,版本號為8.12.8-4。如果你不確定Linux是否已經安裝有sendmail,可以輸入以下命令查看: [root@ahpeng root] rpm–qagrep sendmail 如果確定沒有安裝,請在圖形界面下依次選擇單擊「主菜單-系統設置-添加刪除應用程序」,然後在打開的「軟體包管理」窗口裡選中「郵件伺服器」選項,點「更新」後按照提示安裝即可。 另一種辦法是:直碧或接插悔賀伍入Linux第1張安裝光碟,選擇/RedHat/RPMS目錄下的sendmail-8.12.8-4.i386.rpm安裝包,之後運行[root@ahpeng RPMS] # rpm -ivh sendmail-8.12.8-4.i386.rpm即可開始安裝,再用此方法在第3張安裝光碟的同目錄下依次安裝sendmail-cf.8.12.8-4.i386.rpm、sendmail-doc. 8.12.8-4.i386.rpm。 二.啟動Sendmail服務系統 筆者建議使用帶參數的Sendmail命令控制郵件伺服器的運行: [root@ahpeng root]#sendmail -bd –q12h -b:設定Sendmail服務運行於後台。 -d:指定Sendmail以Daemon(守護進程)方式運行。 -q:設定當Sendmail無法成功發送郵件時,就將郵件保存在隊列里,並指定保存時間。上面的12h表示保留12小時。 此外,要檢測Sendmail伺服器是否正常運行,可以使用命令行: [root@ahpeng root]# /etc/rc.d/init.d/sendmail status。 三.配置Sendmail sendmail.cf的配置語法比較難懂,一般資料上都是採用m4宏處理程序來生成所需的sendmail.cf文件(使用m4編譯工具一般不容易出錯,還可避免某些帶有安全漏洞的宏對伺服器造成的破壞)。其配置文件位於/etc/mail/sendmail.cf,在創建的過程中還需要一個模板文件,Linux自帶有一個模板文件,位於/etc/mail/sendmail.mc。故可以直接通過修改sendmail.mc模板來達到定製sendmail.cf文件的目的,而不必去死啃哪些難理解的配置命令。配置步驟為: 第一步:用模板文件sendmail.mc生成sendmail.cf配置文件,並導出到/etc/mail/目錄下,使用命令行:m4 /etc/mail/sendmail.mc >/etc/mail/sendmail.cf 第二步:再用[root@ahpeng root] /etc/rc.d/init.d/sendmail restart命令行重啟sendmail。 至此,郵件服務系統配置完成,已經正常工作。接下來拍返就是創建具體的帳戶了。
『貳』 Linux的郵件伺服器
1 組建兩台郵件伺服器A與B與一台DNS,其中
A 192.168.100.102/24 有域名mail.rhce.com
B 192.168.100.101/24 有域名mail.example.com
DNS 192.168.100.98則A上有如下配置
/etc/mail/local-host-names 用於定義收搭亮坦發郵件的主機別名
# local-host-names - include all aliases for your machine here.
rhce.com #註:不可少,否則收不到郵鍵橘件,雖然可以發
mail.rhce.com #註:可不要/etc/mail/access #該文件用於限制哪些客戶端可以使用此郵件伺服器來轉發郵件 (也可全不配,默認即是轉發的)
rhce.com RELAY
example.com RELAY
192.168.100. RELAY
192.168.10. REJECT #設置拒絕轉發192.168.10網段的郵件註:可以設置的選項還有 OK/REJECT/DISCARD/ERROR:550
B上有如下配置
/etc/mail/local-host-names (也可不配)
# local-host-names - include all aliases for your machine here.
example.com
mail.example.com/etc/mail/access
rhce.com RELAY
example.com RELAY
192.168.100. RELAY A和B均打開sendmail/dovecot服務 註:只有使用了dovecot才能使用Foxmail/OutLokk等通過POP3/IMAP協議接受郵件改/etc/mail/sendmail.cf 設置
O DaemonPortOptions=Port=smtp,Addr=0.0.0.0, Name=MTA
service sendmail restart 註:要在0.0.0.0上監聽
service dovecot restart 註:此時查看是否打開了110/143埠,實際上還打開了993(IMAP-SSL)/995(POP3-SSL)埠;
雙方分別設置192.168.100.98為dns的IP
此外雙方均要用makemap hash access.db<access 生成訪問許可庫文件
另外雙方的hostname與/etc/sysconfig/network中的知桐域名均要設為相應的域名DNS中的設置如下
如果DNS伺服器也作為網關的話,DNS首先要打開ip轉發功能;
named.confoptions {
directory "/var/named";
mp-file "/var/named/data/cache_mp.db";
statistics-file "/var/named/data/named_stats.txt";
};
include "/etc/rndc.key";zone "." {
type hint;
file "named.ca";
};zone "example.com" {
type master;
file "example.com.zone";
allow-transfer {
192.168.1.177;
192.168.7.17;
};
};
zone "rhce.com" {
type master;
file "rhce.com.zone";
allow-transfer {
192.168.1.177;
192.168.7.17;
};
};example.com.zone$ttl 38400
example.com. IN SOA dns.example.com. admin.example.com. (
2005090503 ;Serial
10800 ;Refresh
3600 ;Retry
604800 ;Expire
38400 ) ;Negative Cache TTL
example.com. IN NS dns.example.com.
rhel4 IN CNAME dns
bbs IN CNAME www
samba IN CNAME www
example.com. IN MX 5 mail
mail IN A 192.168.100.101
rhce.com.zone$ttl 38400
rhce.com. IN SOA dns.rhce.com. admin.rhce.com. (
2005090503 ;Serial
10800 ;Refresh
3600 ;Retry
604800 ;Expire
38400 ) ;Negative Cache TTL
rhce.com. IN NS dns.rhce.com.
www.rhce.com. IN A 192.168.100.29
rhel4 IN CNAME dns
bbs IN CNAME www
samba IN CNAME www
rhce.com. IN MX 5 mail
mail IN A 192.168.100.102 註:linux默認是不讓用戶用root用戶登錄郵箱的,可以換為alading或其它用戶;
可以用 host -t mx example.com可以查詢出example.com的MX記錄 設置POP3S和IMAPS伺服器都必須生成相應的密鑰和證書; pop3埠110,imap埠143,pop3s埠995,imaps埠993;
伺服器使用私鑰加密郵件,客戶端收郵件時,使用證書中的公鑰對郵件進行解密,才能夠正常讀郵件;
製作私鑰和自簽名證書
cd /etc/pki/tls/certs/
make dovecot.pem #該文件保存郵件伺服器的私鑰和公鑰信息;
vi /etc/dovecot.conf
將
ssl_cert_file = /etc/pki/dovecot/certs/dovecot.pem
ssl_key_file = /etc/pki/dovecot/private/dovecot.pem
改為
ssl_cert_file = /etc/pki/tls/certs/dovecot.pem
ssl_key_file = /etc/pki/tls/certs/dovecot.pem
service dovecot restart關於Foxmail的使用
1 默認情況下不可以登錄到root的郵箱,但可以用於發送
2 如果普通用戶不能登錄到郵箱,用passwd 設置密碼後,再打開foxmail的郵箱賬戶設置,設置郵件伺服器里頭的高級設置,點中SMTP與POP3的SSL連接再試試;TLS Transport Layer Security
PKI Public Key Infrastructure
『叄』 linux上如何適應郵件伺服器客戶端
單擊「開始」按鈕,指向「所有程序」,指向「管理工具」,然後單擊「POP3 服務」。在「POP3 服務」下面,在左側樹中單擊「HQ-CON-DC-01」。單擊「新域」鏈接,鍵入「contoso.com」作為「域名」,然後單擊「確定」。
在右窗格中,雙擊「contoso.com」。在「HQ-CON-DC-01」下面,左窗格中的樹將展開並顯示「contoso.com」域。單擊「添加郵箱」鏈接。在「添加郵箱」屏幕上,鍵入「mike」作為「郵箱名」,清除「為此郵箱創建相關聯的用戶」復選框,單擊「確定」,在出現「POP3 服務」確認屏幕後,再次單擊「確定」。
再次單擊「添加郵箱」鏈接,重復步驟 5 為「Administrator」創建郵箱。
『肆』 Linux 建郵件伺服器
分類: 電腦/網路 >> 互聯網
問題描述:
Linux 下怎麼建郵件伺服器?
或者用什麼軟體?
解析:
一、安裝環境
安裝平台:RedHat Linux 7.3
安裝的機器: mail.mydomain
軟體包:核氏
qmail-1.03 qmail基本系統
ucspi-tcp-0.88 tcpsever等服務程序
daemontools-0.76 監視工具
checkpassword-0.90 pop3驗證用戶的程序
軟體來源:
qmail
cr.yp.to/
inter7/main
注意:每個包安裝前務必先仔細閱嫌氏棚讀INSTALL和FAQ,很多問題在FAQ都有解決方法。
二、安裝步驟
1、准備工作
刪除sendmail
# rpm -e --nodeps sendmail
2、安裝qmail
1)創建qmail安裝目錄
#mkdir /var/qmail
2)添加qmail必需的用戶和組
#groupadd nofiles
#useradd -g nofiles -d /var/qmail/alias alias
#useradd -g nofiles -d /var/qmail qmaild
#useradd -g nofiles -d /var/qmail qmaill
#useradd -g nofiles -d /var/qmail qmailp
#groupadd qmail
#useradd -g qmail -d /var/qmail qmailq
#useradd -g qmail -d /var/qmail qmailr
#useradd -g qmail -d /var/qmail qmails
3)解壓、解包和編譯
(假設這些包都下載到/tmp目錄下)
#cd /tmp
#tar xzvf qmail-1.03.tar.gz
#cd qmail-1.03
進入qmail目錄後,仔細閱讀一下README和INSTALL文件.然後開始編譯qmail
打DNS補丁
#vi dns.c
跳到24行將PACKETSZ改為65536
#make setup check
4)配置
#./config
或
#./config-fast mail.mydomain
5)建立系統別名
#(cd /var/qmail/alias; touch .qmail-postmaster .qmail-mailer-daemon .qmail-root)
#chmod 644 ~alias/.qmail*
可以在這些別名文件中指定管理用戶來接受這些系統郵件,如
#echo admin > ~alias/.qmail*
6)建立啟動文件和用戶的Maildir
說明:個人比較喜歡將Maildir改為.Maildir,以便列目錄時隱藏掉
#cp -p /var/qmail/boot/home /var/qmail/rc
#chmod 755 /var/qmail/rc
編輯 /var/qmail/rc
修改其中./Mailbox成為./.Maildir以支持maildir的pop收信方式,如下:
# !/bin/sh
# Using splogger to send the log through syslog.
# Using qmail-local to deliver messages to ~/Maildir by default.
exec env - PATH="/var/qmail/bin:$PATH" qmail-start ./.Maildir
其中splogger qmail指令刪除,以後改用芹則multilog
已存在用戶建立maildir:
$ /var/qmail/bin/maildirmake ~/.Maildir
$ echo ./.Maildir/ > ~/.qmail
建立maildir的方法(對於後面要建立的用戶):
# /var/qmail/bin/maildirmake /etc/skel/.Maildir
# echo ./.Maildir/ > /etc/skel/.qmail
7)刪除臨時目錄
# rm -rf /tmp/qmail-1.03
3、安裝ucspi-tcp-0.88
#tar zxvf ucspi-tcp-0.88.tar.gz
#cd ucspi-tcp-0.88
#make
#make setup check
執行文件將被安裝在/usr/local/bin中。
4、安裝checkpassword
#tar zxvf checkpassword-0.90.tar.gz
#cd checkpassword-0.90
#make
#make setup check
#chmod og-rx /bin/checkpassword
執行文件checkpassword將被安裝在/bin中。
如果不對/etc/passwd中的用戶開放mail,則不需要裝checkpassword,而只要裝vpopmail就行了。
5、安裝daemontools
# mkdir -p /package
# chmod 1755 /package
# cd /package
# tar -xvzf daemontools-0.76.tar.gz
# cd admin/daemontools-0.76
# package/install
將/etc/inittab中最後一行的svscanboot注釋掉
重啟:# kill -HUP 1
說明:改inittab是個人喜好
6、建立 SMTP 轉信規則
1) 建立 /etc/tcp. *** tp
內容為":allow"
# echo ":allow" > /etc/tcp. *** tp
此為接受任何Client端所發出子轉送信件
若要拒絕某些IP所發出的Relay則修改 /etc/tcp. *** tp如下
192.10.10.:allow,RELAYCLIENT=""
127.:allow, RELAYCLIENT=""
如此,除192.10.10.*及127.*之外的所有地址,都將被拒絕轉送信件。
2)轉換tcp. *** tp成為cdb格式
#/usr/local/bin/tcprules /etc/tcp. *** tp.cdb /etc/tcp. *** tp.tmp < /etc/tcp. *** tp
注意:若對tcp. *** tp有任何變更,都必須經過tcprules轉換成為cdb文件才會生效。
另外,tcp. *** tp若為空白,則表示拒絕所有的轉送,因為預設的規則為deny。
至此,轉送規則已建立,稍後將依此規則啟動qmail- *** tpd。
7、建立啟動系統服務腳本
1)建立LOG目錄
# mkdir /var/log/qmail
# chown qmaill.nofiles /var/log/qmail
# mkdir /var/log/qmail/ *** tpd
# chown qmaill.nofiles /var/log/qmail/ *** tpd
# mkdir /var/log/qmail/pop3d
# chown qmaill.nofiles /var/log/qmail/pop3d
2)設定services
移除id.conf中有關 *** tp及pop3的設定(加上#號)
註:redhat7.3用xid代替id了,就不用改了
編輯/etc/services,確認以下設定(實際並不按下面的順序):
*** tp 25/tcp mail
# pop-3 110/tcp #pop version 3
# pop-3 110/udp
pop3 110/tcp
pop3 110/udp
3)寫send/ *** tpd/pop3d的supervise腳本run
# cd /var/qmail
# mkdir -p supervise/qmail-send/log
# mkdir -p supervise/qmail- *** tpd/log
# mkdir -p supervise/qmail-pop3d/log
# cd supervise/qmail-send
# ln -s /var/qmail/rc run
其它run內容如下:
qmail-send/log/run:
#!/bin/sh
exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t /var/log/qmail
qmail- *** tpd/run:
#!/bin/sh
QMAILUID=`id -u qmaild`
QMAILGID=`id -g qmaild`
exec /usr/local/bin/tcpserver -v -p -x /etc/tcp. *** tp.cdb -u $QMAILUID -g $QMAILGID 0 *** tp /var/qmail/bin/qmail- *** tpd 2>&1
qmail- *** tpd/log/run:
#!/bin/sh
exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t /var/log/qmail/ *** tpd
qmail-pop3d/run:
#!/bin/sh
exec /usr/local/bin/tcpserver -v -R 0 pop3 /var/qmail/bin/qmail-popup mail.mydomain /bin/checkpassword /var/qmail/bin/qmail-pop3d .Maildir 2>&1
qmail-pop3d/log/run:
#!/bin/sh
exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t /var/log/qmail/pop3d
4)建自啟動腳本/etc/init.d/qmail
內容如下:
#!/bin/bash
# cconfig: 2345 96 6
#
######################################################################
# Description: Script to control qmail process #
# File: /etc/rc.d/init.d/qmail #
######################################################################
# Setup environment for script execution
. /etc/rc.d/init.d/functions
PATH=$PATH:/var/qmail/bin:/usr/local/bin
export PATH
SVSCANPID="/var/run/svscan.pid"
stopQmail() {
if [ -f $SVSCANPID ]; then
kill `cat $SVSCANPID`
rm -f $SVSCANPID
fi
svc -dx /var/qmail/supervise/qmail-pop3d/log
svc -dx /var/qmail/supervise/qmail-pop3d
svc -dx /var/qmail/supervise/qmail- *** tpd/log
svc -dx /var/qmail/supervise/qmail- *** tpd
svc -dx /var/qmail/supervise/qmail-send/log
svc -dx /var/qmail/supervise/qmail-send
}
case "$1" in
start)
echo "Starting qmail/ *** tp/pop3 ..."
cd /var/qmail/supervise
env - PATH="$PATH" svscan &
echo $! > $SVSCANPID
;;
stop)
echo "Stoping qmail/ *** tp/pop3 ..."
stopQmail
;;
restart)
$0 stop
$0 start
;;
status)
;;
*)
echo "Usage: $0 {start|stop|status}"
exit 1
esac
exit 0
加入cconfig管理
# chmod 755 qmail
# cconfig -add qmail
運行ntsysv關閉或啟動服務
三、tips
1、使用userName@mydomain形式的命名
# cd /var/qmail/alias
# echo mydomain >> locals
2、改密碼
對於僅開放mail的用戶可將shell改成passwd
# useradd -s /usr/bin/passwd userName
然後用tel改密碼
3、qmail1.03有不少補丁,根據你的需要打吧。
說明:附件為我的/etc/init.d/qmail和supervise腳本run
『伍』 LINUX下如何搭建郵件伺服器
可以使用U-Mail郵件伺服器
步驟如下:
1、下載U-Mail郵件系統forCentOS(6.X)一體盤
請去http://www.comingchina.com/html/downloads/下載U-Mail郵件伺服器最新版本。
2、解析好域名,將域名的MX記錄和的A記錄解析到郵件伺服器的IP地址。
MX記錄和A記錄解析方法參考:http://www.comingchina.com/html/faq/anzhuangzhongzhuangbeifen/954.html
如果是將郵件伺服器放置在內網,通過埠映射的方式將外網IP的服務埠映射到內網,那麼必須映射埠:25、110、80等。
3、將BIOS啟動方式設置為光碟機啟動,並放入U-MailforCentOS(6.X)一體盤光碟
4、出現安裝界面後,按回車鍵
5、設置TCP/IP參數(使用Tab鍵切換,空格鍵選擇),選擇如下圖,按「OK」按鈕。
『陸』 linux裡面怎樣配置郵件伺服器
Sendmail伺服器配置
首先,在DNS正向解析上添加一個郵件交換器的名稱
這里順便把dns的測試也附上:
啟動sendmail
正向主區域配置文件:
修改sendmail的配置文件
vi /etc/mail/sendmail.cf
改成
修改sendmail的配置文件
vi /etc/mail/sendmail.mc
去掉dnl
再添加兩行
做輸入重定向m4 /etc/mail/sendmail.mc>/etc/mail/sendmail.cf
編輯 /etc/mail/access
執行makemap hash /etc/mail/access.db </etc/mail/access
編輯vi /etc/mail/local-host-names把郵件伺服器使用的域名給添加上去
重啟sendmail服務
最後給[email protected]發送測試郵件
End。。。
『柒』 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,所以也不要勾選。 接下來點擊創建,如果一切正常的話,你已經成功了。
『捌』 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中搭建郵件伺服器
兄弟,建議你使用U-Mail郵件伺服器軟體去搭建郵件伺服器,安裝很方便。U-mail在數千家企業單位應用需求基礎上,做了大量改進,使之更加適合政府、教育、企事業集團和從事銷售企業郵箱的網路服務商、集成商使用。歷經十年的研發,U-Mail已成為國內唯一一款具有全球收發保證的郵件系統。無縫內嵌卡巴斯基殺毒引擎,是最強大的郵件反垃圾反病毒軟體,終身使用免費升級,以高安全、高穩定性位居業界前列。
『拾』 linux配置郵件伺服器,提示外部主機關閉
這個問題可能是由於您的郵件伺服器被配置為拒絕來自外部主機的連接所導致的。這是一種常見的安全措施,可以防止未經授權的訪問和攻擊。
要解決這個問題,您需要檢查您的郵件伺服器的配置文件,以確保它允許來自外部主機的連接。具體來說,您需要檢查余陵以下配置項:
1. 檢查您的郵件伺服器是否配置為監聽所有網路介面。您可以通過查看配置文件中的「bind」或「listen」選項來確定這一點。如果這些選項被設置為「localhost」或「127.0.0.1」,則您的郵件伺服器只能接受來自本地主機的連接。
2. 檢查您的防火牆設置,確保它們允許來自外部主機的郵件流量。您可以使用iptables或ufw等豎喊戚工具來配置防火牆規則。
3. 檢查您的DNS設置,確保您的郵件伺服器的MX記錄已正確配置,並且可以從外部訪問。
如果您已經檢查了以上配置項,但仍然無法解決問題,則可能需要檢查您的ISP是否封鎖了SMTP埠(通常是25埠)。如果是這樣,您可以嘗試使用其他埠(如587)來發送郵件。
總之,要解決這個問題,滲塌您需要仔細檢查您的郵件伺服器的配置,並確保它可以從外部主機訪問。