---
title: "輕量簡單 Mail Server - Mailu 安裝教學"
description: "官方簡介Mailu是一個簡單而功能齊全的郵件服務器，它是一組 Docker Image。它是開源軟體，可以接受建議和外部貢獻。該項目旨在為人們提供易於安裝，易於維護且功能齊全的郵件服務器，不發行專有軟體或流行的軟體中經常出現的不相關功能。"
canonical_url: "https://hannoeru.me/posts/mailu-mail-server-install"
---

> Index of every page on this site: [llms.txt](https://hannoeru.me/llms.txt)

## 官方簡介

Mailu 是一個簡單而功能齊全的郵件服務器，它是一組 Docker<br />


Image。它是開源軟體，可以接受建議和外部貢獻。該項目旨在為人們提供易於安裝，易於維護且功能齊全的郵件服務器，不發行專有軟體或流行的軟體中經常出現的不相關功能。

### 主要架構

- **標準電子郵件服務器**：IMAP 和 IMAP+、SMTP 跟 Submission。
- **進階電子郵件功能**：別名、域別名、自定義路由。
- **Web訪問**：多個 Webmail 和管理界面。
- **用戶功能**：別名、自動回复、自動轉發、獲取的帳戶。
- **管理員功能**：全局管理員、公告、每個域的委派、配額。
- **安全性**：強制 TLS，Let's encrypt！、輸出 DKIM、防病毒掃描程序。
- **反垃圾郵件**：自動學習、灰名單、DMARC 和 SPF。
- **自由**：全部都是開源軟體、不會追蹤資料。

## 伺服器

> **重要：** Linode（現為 Akamai Cloud Computing Services）與大多數雲端服務商預設封鎖對外 port 25。安裝前請先向服務商申請解封，否則郵件無法寄出。

這次的伺服器我選擇了 Linode 的虛擬伺服器

官方網站：[https://www.linode.com/](https://www.linode.com/)

到 Linodes 目錄，選擇 Add a Linode，設定如下：

![wp-image-532](https://hannoeru.me/images/2020/03/screenshot-2020-03-06-2.08.53.png)

之後記得到下方設定 root 密碼，如果有 SSH Key 可以在這裡上傳（不知道的話不用）。

確定金額 5USD / 一個月 按下 Create ，開始創建虛擬機。

## 安裝 Docker && Docker Compose

> **更新（2026）：** Docker Compose V1 已於 2023 年停止支援。現在的安裝方式是使用 Docker 官方 repository 的 `docker-compose-plugin` 套件，指令為 `docker compose`（中間沒有 `-`）。目前 Mailu 版本為 3.x，設定介面與本文的畫面可能略有不同。

在自己的電腦，打開終端機輸入：

```bash
ssh root@server-ip
```

### 安裝 Docker

官方安裝腳本：

```bash
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh
```

### 安裝 Docker Compose

安裝 Docker Compose plugin

```bash
sudo apt-get update
sudo apt-get install docker-compose-plugin
```

測試安裝

```bash
docker compose version
```

如果有出現版本資訊就是成功了

## 生成 Mailu 安裝檔案

網域名稱：`domain.com`

主機名稱：`mail.domain.com`

以上兩個請替換成自己的網域和主機名稱

官方設定檔生成網站：[https://setup.mailu.io/](https://setup.mailu.io/)

選擇 Compose 點選 Next

![wp-image-538](https://hannoeru.me/images/2020/03/screenshot-2020-03-06-2.24.47.png)<br />

![wp-image-535](https://hannoeru.me/images/2020/03/screenshot-2020-03-06-2.25.59.png)<br />

![wp-image-537](https://hannoeru.me/images/2020/03/screenshot-2020-03-06-2.26.10.png)

替換 server-ip 為你的 Linode IP（虛擬機IP）

![wp-image-536](https://hannoeru.me/images/2020/03/screenshot-2020-03-06-2.26.35.png)<br />

![wp-image-534](https://hannoeru.me/images/2020/03/screenshot-2020-03-06-2.26.43.png)

最後點選 Setup Mailu 就會秀出這樣的頁面：

![wp-image-539](https://hannoeru.me/images/2020/03/screenshot-2020-03-06-2.34.08.png)

跟照他的指示

創建資料夾：

```bash
mkdir /mailu
cd /mailu
wget 網頁顯示的網址
```

啟動伺服器：

```bash
docker compose -p mailu up -d
# 替換 PASSWORD => 管理員密碼（新版的 Mailu 安裝精靈會直接建立管理員帳號）
docker compose -p mailu exec admin flask mailu admin admin domain.com PASSWORD
```

## 設定 DNS

設定一筆 Ａ 紀錄指向 Linode 虛擬伺服器 IP

```bash
mail.domain.com.  IN  A  a.b.c.d
```

除了 A 紀錄之外，郵件伺服器還需要以下 DNS 紀錄（詳細值可在管理界面確認）：

- `MX`：指向 `mail.domain.com`
- `SPF`（TXT）：`v=spf1 mx ~all`
- `DKIM`（TXT）：管理界面產生的金鑰
- `DMARC`（TXT）：`v=DMARC1; p=none`

過一陣子後，開啟瀏覽器進去 [https://mail.domain.com/admin](https://mail.domain.com/admin) 並登入，成功的話就代表伺服器成功啟動了。

進去 Mail Domains 點選第一個 Icon

![wp-image-540](https://hannoeru.me/images/2020/03/screenshot_2020-03-06_2_45_03.png)

裡面就會列出剩餘要設定的 DNS 紀錄了。

全部設定完以後就可以登入測試看看寄信了喔。

剩餘的功能就讓大家自己去摸索了，這個界面應該是沒有太困難，有問題在下面留言，我有空都會回覆。

## Sitemap

See the full [sitemap](https://hannoeru.me/sitemap.md) for all pages.
