在上一篇文章中,我們探討了 Dovecot 如何與 Postfix 協同工作的原理

現在讓我們來了解 Dovecot 是如何進行設定,以及其設定文件的結構是什麼樣的。

🎯 本文的核心內容

  • Dovecot 設定文件的結構
  • 主要設定文件 dovecot.conf 和詳細設定文件的角色
  • 為什麼要將設定分為多個文件(結構性原因)
  • 利用 !include 進行設定文件載入的原理
  • 設定文件的應用順序與優先級(這非常重要!)

📌 Dovecot 設定文件結構

Dovecot 的設定文件位於 /etc/dovecot/ 目錄下,結構如下:

/etc/dovecot/
│── dovecot.conf            # Dovecot 的主要設定文件
│── conf.d/                 # 包含詳細設定文件的目錄
│   ├── 10-auth.conf        # 用戶認證相關設定
│   ├── 10-mail.conf        # 郵件存儲(郵件匣)相關設定
│   ├── 10-master.conf      # 服務流程與端口相關設定
│   ├── 10-ssl.conf         # SSL/TLS 相關設定
│   ├── 15-lda.conf         # 本地郵件投遞(郵件匣投遞)相關設定
│   ├── 20-lmtp.conf        # LMTP 協議相關設定(與 Postfix 連接)
│   ├── 90-plugin.conf      # Dovecot 插件相關設定
│   ├── 90-quota.conf       # 郵件容量限制(Quota)設定
│   ├── 90-sieve.conf       # Sieve 郵件過濾設定
│── dovecot-sql.conf.ext    # 用於虛擬用戶(DB)環境的 SQL 整合設定
│── dovecot-dict-sql.conf.ext  # 使用 Quota 等 Dict 時所需的 SQL 設定

Dovecot 設定文件結構概覽

Dovecot Configuration Structure

1️⃣ dovecot.conf(主要設定文件)

dovecot.conf 是 Dovecot 的主要設定文件,負責管理整體設定。

在這裡,我們使用 !include 語法載入各個設定文件。雖然可以直接在這裡編寫設定,但大多數詳細設定是在 conf.d/ 下的各個文件中管理。

# /etc/dovecot/dovecot.conf
disable_plaintext_auth = yes
ssl = required

# 載入個別設定文件
!include conf.d/*.conf

這裡有個重要的點!

  • !include conf.d/*.confconf.d/ 目錄中的 所有 .conf 文件按順序被載入
  • 因此 設定文件的應用順序非常重要(這部分會稍後說明!)。

2️⃣ conf.d/ 目錄(詳細設定文件)

Dovecot 的詳細設定文件按照功能分開,邏輯上區分,有助於維護。

📌 必需的設定文件(以下四個文件可視為必需的詳細設定文件)

文件名稱 說明
10-auth.conf 用戶認證相關設定
10-mail.conf 郵件匣路徑及郵件存儲設定
10-master.conf Dovecot 執行的服務流程設定(IMAP、POP3、LMTP 等)
10-ssl.conf TLS/SSL 加密設定

🔹 為什麼要將設定文件分為多個文件?

  •  易於管理 → 按功能分開設定,只修改所需部分
  • 提供靈活性 → 可輕易地啟用/禁用特定設定
  • 版本更新和維護方便 → 在 Dovecot 更新時,只需替換特定設定文件

我們將其分開,因此,
所需的功能能夠得以啟用,或僅需修改特定設定會變得更加方便。

🔹 設定文件應用原理(!include 語法)

dovecot.conf 中載入個別設定文件時,使用 !include 來應用設定。

# /etc/dovecot/dovecot.conf
!include conf.d/*.conf

設定文件載入順序的重要性

  • conf.d/ 內的設定文件按數字順序執行。
  • 也就是說,10-ssl.conf 中的設定可以被 99-custom.conf 覆蓋。
  • 考慮設定文件的優先順序進行整理是非常重要的。

結論:理解 Dovecot 設定文件,能實現更強大的客製化!

  • Dovecot 在 dovecot.conf 中使用 !include 語法載入 conf.d/ 目錄的設定文件。
  • conf.d/ 中的設定文件是 按數字順序執行,因此文件名稱很重要。
  •  將設定分為多個文件,旨在簡化管理和維護。
  •  要覆蓋特定設定,只需將 文件名稱設置為更大的數字,讓其後執行。

🚀 下一篇預告

本篇文章探討了 Dovecot 設定文件的結構與應用方式。

但由於設定文件太多,一次理解所有內容可能會感到困難。

因此在下一篇中,我們將專注於幾個運行 Dovecot 所需的關鍵設定文件

📌 下一篇將探討的關鍵設定文件

  • 10-auth.conf → 用戶認證相關設定
  • 10-mail.conf → 郵件匣路徑及郵件存儲設定
  • 10-master.conf → Dovecot 執行的服務流程設定(IMAP、POP3、LMTP 等)
  • 10-ssl.conf → TLS/SSL 加密設定

僅了解這些設定即可順利運行郵件伺服器。

其餘的設定文件則用於調整附加功能,因而在運行後再逐步學習會更有效率。

在下一篇中,我們將逐一分析這四個必需的設定文件,了解設定如何實際應用。

下篇再見! 🚀😊