最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

CentOS 7 搭建 Sendmail + Dovecot 郵件服務(wù)器:SMTP、POP3、IMAP 與 TLS

 更新時(shí)間:2026年07月28日 09:14:33   作者:qetfw  
本教程手把手教你使用CentOS7部署Sendmail+Dovecot,輕松實(shí)現(xiàn)SMTP收發(fā)、POP3/IMAP收信,并配置TLS加密,感興趣的朋友跟隨小編一起看看吧

# CentOS 7 搭建 Sendmail + Dovecot 郵件服務(wù)器:SMTP、POP3、IMAP 與 TLS

1. 服務(wù)介紹

Sendmail 是經(jīng)典郵件傳輸代理 MTA,負(fù)責(zé)通過(guò) SMTP 接收、路由和投遞郵件。Dovecot 提供 POP3、IMAP 和用戶認(rèn)證,使客戶端能夠讀取服務(wù)器郵箱。

本實(shí)驗(yàn)在 CentOS 7 搭建適合教學(xué)和內(nèi)網(wǎng)測(cè)試的郵件系統(tǒng):Sendmail 負(fù)責(zé) SMTP 與本地投遞,Dovecot 負(fù)責(zé) POP3/IMAP,TLS 保護(hù)客戶端與服務(wù)器之間的連接。

2. 準(zhǔn)備運(yùn)行環(huán)境

• 服務(wù)端:CentOS 7.x,主機(jī)名 mail.example.com,地址 10.1.100.101。

• 客戶端:Linux 或 Windows,地址 10.1.100.102。

• 郵件域:example.com。

• 操作權(quán)限:root 或具備 sudo 權(quán)限的管理員賬號(hào)。

• 網(wǎng)絡(luò)要求:軟件源可用,服務(wù)端和客戶端互通。

• DNS 要求:實(shí)驗(yàn)環(huán)境至少配置 mail.example.com 的 A 記錄和 example.com 的 MX 記錄。

hostnamectl set-hostname mail.example.com
echo '10.1.100.101 mail.example.com mail' >> /etc/hosts
hostname -f
ip addr
ip route
yum repolist

示例 DNS 記錄:

mail.example.com.    IN A     10.1.100.101
example.com.         IN MX 10 mail.example.com.

3. 相關(guān)知識(shí)

• Sendmail 是 MTA,負(fù)責(zé) SMTP 收發(fā)和路由;Dovecot 是郵件訪問(wèn)服務(wù),負(fù)責(zé) POP3、IMAP 和認(rèn)證。

• SMTP 常用 TCP 25;客戶端提交常用 587;SMTPS 常用 465。IMAP 使用 143/993,POP3 使用 110/995。

• Sendmail 默認(rèn)可能只監(jiān)聽(tīng)回環(huán)地址。允許遠(yuǎn)程連接前必須檢查 DAEMON_OPTIONS。

• CentOS 7 常默認(rèn)安裝 Postfix。Sendmail 與 Postfix 不能同時(shí)占用 TCP 25,切換前應(yīng)停止并禁用 Postfix。

/etc/mail/sendmail.mc 是主要模板;修改后用 make -C /etc/mail 生成 sendmail.cf,不要直接長(zhǎng)期維護(hù)生成文件。

/etc/mail/access 控制允許、拒絕和中繼來(lái)源。錯(cuò)誤配置 RELAY 會(huì)形成開(kāi)放中繼,被濫用發(fā)送垃圾郵件。

• 本實(shí)驗(yàn)只允許回環(huán)和 10.1.100.0/24 內(nèi)網(wǎng)中繼,不向任意互聯(lián)網(wǎng)地址開(kāi)放轉(zhuǎn)發(fā)。

• MX 記錄決定域的收信服務(wù)器;A 記錄解析郵件主機(jī);PTR 反向解析、SPF、DKIM、DMARC 影響公網(wǎng)投遞信譽(yù)。

• Sendmail 本地投遞默認(rèn)使用 mbox 郵箱。本文讓 Dovecot 讀取 /var/spool/mail/用戶名。

• TLS 只加密傳輸,不替代賬號(hào)權(quán)限、中繼限制和反垃圾策略。

4. 實(shí)驗(yàn)步驟

4.1 安裝軟件并處理 MTA 沖突

yum -y install sendmail sendmail-cf dovecot mailx openssl
systemctl disable --now postfix 2>/dev/null || true
ss -lntp | grep ':25 '
alternatives --set mta /usr/sbin/sendmail.sendmail
alternatives --display mta

確認(rèn) Sendmail 組件:

rpm -q sendmail sendmail-cf dovecot mailx
sendmail -d0.1 -bv root

4.2 創(chuàng)建郵件用戶和郵箱

useradd alice
useradd bob
passwd alice
passwd bob
touch /var/spool/mail/alice /var/spool/mail/bob
chown alice:mail /var/spool/mail/alice
chown bob:mail /var/spool/mail/bob
chmod 660 /var/spool/mail/alice /var/spool/mail/bob

檢查賬號(hào)和郵箱:

id alice
id bob
ls -l /var/spool/mail/alice /var/spool/mail/bob

4.3 配置 Sendmail 基本參數(shù)

備份配置:

cp -a /etc/mail/sendmail.mc /etc/mail/sendmail.mc.bak.$(date +%F-%H%M%S)
cp -a /etc/mail/access /etc/mail/access.bak.$(date +%F-%H%M%S)

編輯 /etc/mail/sendmail.mc。找到僅監(jiān)聽(tīng) 127.0.0.1 的行:

DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl

在行首加 dnl 注釋,使 Sendmail 按系統(tǒng)網(wǎng)絡(luò)配置監(jiān)聽(tīng) SMTP:

dnl DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl

MAILER 定義之前加入本地域和主機(jī)名:

define(`confDOMAIN_NAME', `mail.example.com')dnl
LOCAL_DOMAIN(`example.com')dnl
MASQUERADE_AS(`example.com')dnl
FEATURE(`masquerade_envelope')dnl

把本地域?qū)懭?/etc/mail/local-host-names

example.com
mail.example.com

4.4 配置中繼范圍

編輯 /etc/mail/access

Connect:127.0.0.1        RELAY
Connect:10.1.100          RELAY

生成 access 數(shù)據(jù)庫(kù):

makemap hash /etc/mail/access.db < /etc/mail/access

Connect:10.1.100 只適用于本實(shí)驗(yàn)網(wǎng)段。生產(chǎn)環(huán)境應(yīng)縮小到實(shí)際客戶端網(wǎng)段,或使用經(jīng)過(guò)認(rèn)證的 587 提交服務(wù),禁止配置 Connect:0 RELAY。

4.5 生成 TLS 證書(shū)

實(shí)驗(yàn)環(huán)境生成自簽名證書(shū):

mkdir -p /etc/pki/mail/private
openssl req -new -x509 -nodes -days 3650 -newkey rsa:2048 \
  -keyout /etc/pki/mail/private/mail.key \
  -out /etc/pki/mail/mail.crt \
  -subj '/C=CN/ST=Lab/L=Lab/O=Example/OU=IT/CN=mail.example.com'
chmod 600 /etc/pki/mail/private/mail.key
chmod 644 /etc/pki/mail/mail.crt

sendmail.mcMAILER 定義前加入:

define(`confCACERT_PATH', `/etc/pki/tls/certs')dnl
define(`confCACERT', `/etc/pki/tls/certs/ca-bundle.crt')dnl
define(`confSERVER_CERT', `/etc/pki/mail/mail.crt')dnl
define(`confSERVER_KEY', `/etc/pki/mail/private/mail.key')dnl

生成配置并檢查:

make -C /etc/mail
sendmail -C /etc/mail/sendmail.cf -bt -d0.4 </dev/null

4.6 配置 Dovecot

備份配置目錄:

cp -a /etc/dovecot /etc/dovecot.bak.$(date +%F-%H%M%S)

編輯 /etc/dovecot/dovecot.conf

protocols = imap pop3
listen = *

編輯 /etc/dovecot/conf.d/10-mail.conf

mail_location = mbox:~/mail:INBOX=/var/spool/mail/%u

編輯 /etc/dovecot/conf.d/10-auth.conf

disable_plaintext_auth = yes
auth_mechanisms = plain login

編輯 /etc/dovecot/conf.d/10-ssl.conf

ssl = required
ssl_cert = </etc/pki/mail/mail.crt
ssl_key = </etc/pki/mail/private/mail.key

檢查 Dovecot 最終配置:

doveconf -n
doveconf -n | egrep 'protocols|listen|mail_location|ssl|auth_mechanisms'

4.7 配置防火墻并啟動(dòng)服務(wù)

firewall-cmd --permanent --add-service=smtp
firewall-cmd --permanent --add-service=imap
firewall-cmd --permanent --add-service=imaps
firewall-cmd --permanent --add-service=pop3
firewall-cmd --permanent --add-service=pop3s
firewall-cmd --reload
systemctl enable --now sendmail dovecot
systemctl restart sendmail dovecot

不要關(guān)閉 SELinux。Sendmail 和 Dovecot 使用系統(tǒng)默認(rèn)路徑時(shí),發(fā)行版策略通常已包含所需權(quán)限。出現(xiàn)拒絕時(shí)先檢查 AVC 日志。

4.8 本機(jī)發(fā)送測(cè)試郵件

echo 'Sendmail local delivery test' | mail -s 'local test' alice
sleep 2
mail -u alice

也可以直接調(diào)用 Sendmail:

想親手搭建一個(gè)功能完整的郵件服務(wù)器嗎?本教程手把手教你使用CentOS7部署Sendmail+Dovecot,輕松實(shí)現(xiàn)SMTP收發(fā)、POP3/IMAP收信,并配置TLS加密,點(diǎn)擊獲取詳細(xì)的部署步驟和配置技巧,快速打造專屬于你的郵件系統(tǒng)

5. 驗(yàn)證結(jié)果

5.1 驗(yàn)證服務(wù)和端口

systemctl --no-pager --full status sendmail dovecot
ss -lntp | egrep ':25|:110|:143|:993|:995'
firewall-cmd --list-services

預(yù)期 Sendmail 監(jiān)聽(tīng) TCP 25,Dovecot 監(jiān)聽(tīng) 110、143、993、995;若配置 ssl = required,明文端口會(huì)要求升級(jí)到 TLS。

5.2 驗(yàn)證 DNS

dig +short A mail.example.com
dig +short MX example.com
dig +short -x 10.1.100.101

內(nèi)網(wǎng)實(shí)驗(yàn)沒(méi)有反向 DNS 時(shí),PTR 可能為空;公網(wǎng)郵件服務(wù)器應(yīng)由地址提供商配置正確 PTR。

5.3 驗(yàn)證 Sendmail 路由、隊(duì)列和日志

sendmail -bv alice@example.com
mailq
mailstats
grep -E 'sendmail|dovecot' /var/log/maillog | tail -n 100
journalctl -u sendmail -u dovecot -n 100 --no-pager

查看郵箱是否收到郵件:

ls -lh /var/spool/mail/alice
tail -n 40 /var/spool/mail/alice

5.4 驗(yàn)證 SMTP 與 TLS

openssl s_client -starttls smtp -connect mail.example.com:25 -servername mail.example.com

連接后應(yīng)看到 Sendmail SMTP 歡迎信息和證書(shū)信息。輸入 EHLO client.example.com 可查看服務(wù)能力。

5.5 驗(yàn)證 Dovecot 認(rèn)證和收信協(xié)議

doveadm auth test alice
openssl s_client -connect mail.example.com:993 -servername mail.example.com
openssl s_client -connect mail.example.com:995 -servername mail.example.com

Windows 或其他郵件客戶端參數(shù):

• 收件服務(wù)器:mail.example.com,IMAPS 端口 993,或 POP3S 端口 995。

• 發(fā)件服務(wù)器:mail.example.com,SMTP 端口 25,僅限實(shí)驗(yàn)網(wǎng)段。

• 用戶名:alice;密碼:Linux 用戶密碼。

• 自簽名證書(shū)會(huì)觸發(fā)信任提示,生產(chǎn)環(huán)境應(yīng)更換受信任證書(shū)。

服務(wù)狀態(tài)正常、端口監(jiān)聽(tīng)正確、本地郵件進(jìn)入 /var/spool/mail/alice、Dovecot 認(rèn)證成功、TLS 握手正常,說(shuō)明 Sendmail 與 Dovecot 郵件系統(tǒng)配置生效。

到此這篇關(guān)于CentOS 7 搭建 Sendmail + Dovecot 郵件服務(wù)器:SMTP、POP3、IMAP 與 TLS的文章就介紹到這了,更多相關(guān)CentOS 7 搭建郵件服務(wù)器內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

澄城县| 凯里市| 白朗县| 金门县| 湘西| 英吉沙县| 花莲市| 海门市| 托克托县| 长海县| 彩票| 榆树市| 富民县| 通河县| 通榆县| 理塘县| 翼城县| 潍坊市| 旅游| 贵港市| 将乐县| 陇川县| 崇文区| 始兴县| 霸州市| 泰安市| 安福县| 会理县| 荔波县| 长顺县| 万宁市| 同仁县| 哈尔滨市| 遂川县| 电白县| 漳平市| 山阴县| 苗栗县| 白城市| 尼勒克县| 友谊县|