差異處

這裏顯示兩個版本的差異處。

連向這個比對檢視

兩邊的前次修訂版 前次修改
下次修改
前次修改
tech:mailu [2023/08/20 18:09] – [安裝程序] jonathantech:mailu [2025/01/16 12:49] (目前版本) – [安裝程序] jonathan
行 1: 行 1:
-====== 安裝設定 MailU (Docker ComposeMail Server ====== +====== 安裝設定 Mailu 郵件主機(Docker) ====== 
-  * 安裝環境 : OS:[[tech/docker|Ubuntu 20.04 +Docker]] vCore:1 RAM:2G HD:55G+  * 安裝環境 : OS:[[tech/docker|Ubuntu 22.04 +Docker]] vCore:1 RAM:2G HD:55G
   * 設定資訊 : Exp.   * 設定資訊 : Exp.
     * DNS :      * DNS : 
-      * mail01.ichiayi.com.  IN  A  140.82.11.111+      * mail01.ichiayi.com.  IN  A  45.76.145.111
       * mail01.ichiayi.com.  IN  MX  10 mail01.ichiayi.com.       * mail01.ichiayi.com.  IN  MX  10 mail01.ichiayi.com.
     * Reverse DNS :     * Reverse DNS :
-      * 140.82.11.111 -> mail01.ichiayi.com+      * 45.76.145.111 -> mail01.ichiayi.com
     * DKIM/SPF & DMARC Entries     * DKIM/SPF & DMARC Entries
       * 等安裝好 MailU 再透過 admin 生成相關資訊到 DNS 進行設定       * 等安裝好 MailU 再透過 admin 生成相關資訊到 DNS 進行設定
行 14: 行 14:
       * 25, 80, 110, 143, 443, 465, 587, 993 或 995       * 25, 80, 110, 143, 443, 465, 587, 993 或 995
  
-====== 安裝程序 ===== +<note important> 
-  - [[tech/docker|安裝 Ubuntu 20.04 +Docker]]+**如果要使用 Let's Encrypt 免費憑證必須要** 
 +  - DNS 內 A Record 需要有 hostname 並指向 Mail Server 的 IP Exp. mail01.ichiayi.com -> 45.76.145.111 
 +  - hostname 就是 Mail Server 名稱 Exp. mail01.ichiayi.com 
 +</note> 
 + 
 +===== 安裝程序 ===== 
 +  - [[tech/docker|安裝 Ubuntu 22.04 +Docker]]
   - 開啟主機防火牆<cli>   - 開啟主機防火牆<cli>
 ufw allow proto tcp from any to any port 25,80,110,143,443,465,587,993,995 comment 'Open SSH/Web/Mail ports' ufw allow proto tcp from any to any port 25,80,110,143,443,465,587,993,995 comment 'Open SSH/Web/Mail ports'
 ufw allow proto udp from any to any port 161 comment 'Open SNMP ports' ufw allow proto udp from any to any port 161 comment 'Open SNMP ports'
 </cli> </cli>
-  - 使用 https://setup.mailu.io/2.0/ 產生設定檔 +  - 使用 https://setup.mailu.io/2024.06/ 產生設定檔 
-    - Version : 2.0+    - Version : 2024.06
     - Step1:     - Step1:
       - Mailu storage path: /mailu       - Mailu storage path: /mailu
行 32: 行 38:
       - Website name : mail01 for ichiayi.com       - Website name : mail01 for ichiayi.com
       - Linked Website URL : https://www.ichiayi.com       - Linked Website URL : https://www.ichiayi.com
-      - Enable the admin UI : /admin+      - Enable the admin UI : [V]
     - Step 2 - Pick some features     - Step 2 - Pick some features
       - Enable Web email client : none       - Enable Web email client : none
 +      - Enable oletools : [ ]
     - Step 3 - expose Mailu to the world     - Step 3 - expose Mailu to the world
       - IPv4 listen address : 0.0.0.0       - IPv4 listen address : 0.0.0.0
-      - Subnet of the docker network : 172.18.0.1/16 +      - Subnet of the docker network : 192.168.203.0/24 
-      - Public hostnames : ichiayi-mailu.ichiayi.com +      - Enable an internal DNS resolver (unbound) [V] 
-  - 依照 https://setup.mailu.io/2.0/ 建議執行+      - Public hostnames : mail01.ichiayi.com 
 +  - 依照 https://setup.mailu.io/2024.06/ 建議執行
     - Step 1 - Download your configuration files<cli>     - Step 1 - Download your configuration files<cli>
 mkdir /mailu mkdir /mailu
 cd /mailu cd /mailu
-wget https://setup.mailu.io/2.0/file/0827c1b0-1fad-479d-xxxx-23a71d37744f/docker-compose.yml +wget https://setup.mailu.io/2024.06/file/0827c1b0-1fad-479d-xxxx-23a71d37744f/docker-compose.yml 
-wget https://setup.mailu.io/2.0/file/0827c1b0-1fad-479d-xxxx-23a71d37744f/mailu.env+wget https://setup.mailu.io/2024.06/file/0827c1b0-1fad-479d-xxxx-23a71d37744f/mailu.env
 </cli> </cli>
     - Step 2 - Review the configuration : 確認 docker-compose.yml 與 mailu.env 內容是否正常     - Step 2 - Review the configuration : 確認 docker-compose.yml 與 mailu.env 內容是否正常
行 52: 行 60:
 </cli> </cli>
     * 等啟動 MailU 服務後, 設定管理者密碼 Exp. My_12345Password <cli>     * 等啟動 MailU 服務後, 設定管理者密碼 Exp. My_12345Password <cli>
-docker compose -p mailu exec admin flask mailu admin admin mail01.ichiayi.com My_12345Password+docker compose -p mailu exec admin flask mailu admin admin mail01.ichiayi.com 'My_12345Password'
 </cli> </cli>
     * 連上 Web 管理介面 https://mail01.ichiayi.com/admin     * 連上 Web 管理介面 https://mail01.ichiayi.com/admin
-      * Administration -> Mail domains -> Actions -> Details 可以看到 DNS SPF entries / DNS TLSA entry / DNS client auto-configuration entries 的設定資訊+      * Administration -> Mail domains -> Actions -> Details 可以看到 DNS SPF entries / DNS TLSA entry / DNS client auto-configuration entries 的設定資訊 \\ {{:tech:2023-08-20_214602.png?1000|}} 
 + 
 +===== Mailu 管理介面 - Antispam ===== 
 +  * Status : \\ {{:tech:2023-08-20_214930.png|}} 
 +  * Throughput : \\ {{:tech:2023-08-20_215102.png|}} 
 +  * History : \\ {{:tech:2023-08-20_215238.png|}} 
 + 
 +===== Mailu 更版升級 ===== 
 +  * 只要執行以下命令就可以直接更版 <cli> 
 +docker compose pull && docker compose up -d 
 +</cli> 
 +  * 查看啟動過程 Logs <cli> 
 +docker compose logs -f 
 +</cli> 
 + 
 +===== 常見問題 ===== 
 +  - postfix 紀錄出現 Sender address rejected: not owned by user 無法寄出信件問題 
 +    * 只要在管理介面將寄信者帳號的 Allow the user to spoof the sender (send email as anyone) 打勾即可 
 +    * Administration -> Mail domain -> Manage -> Users -> Actions -> Edit \\ {{:tech:2023-08-21_085051.png|}}   
 +  - 寄信錯誤訊息出現 4.2.1 : SASL login name rejected: You are sending too many emails too fast. 
 +    * 參考 - https://mailu.io/master/configuration.html 
 +    * Mailu 預設每個用戶每日寄信上限為 200 封, 超過就會出現這訊息 
 +    * 可以透過修改 mailu.env 內的 MESSAGE_RATELIMIT 數值或是將寄信帳號加入 MESSAGE_RATELIMIT_EXEMPTION 
 +    * 重啟 docker compose 來讓新的設定生效 
 + 
 +<note warning> 
 +  * **這問題已經在 2.0.22(2023/08/29) 解決 - https://github.com/Mailu/Mailu/releases/tag/2.0.22** 
 + 
 +---- 
 +  * **2.0.20(2023/08/16) ghcr.io/mailu/dovecot:2.0 -> mailu-imap-1 在主機端只有 ipv4 會無法正常運作** 
 +  * 可參考 https://github.com/Mailu/Mailu/issues/2913 在 /mailu/overrides/dovecot/ 目錄內產生 dovecot.conf 檔案內容 <cli> 
 +listen = * 
 +</cli>docker compose 重啟 smtp 服務即可解決 
 +</note> 
 ===== 參考網址 ===== ===== 參考網址 =====
   * https://github.com/Mailu/Mailu   * https://github.com/Mailu/Mailu
  • tech/mailu.1692526144.txt.gz
  • 上一次變更: 2023/08/20 18:09
  • jonathan