# Thành phần tuỳ chọn

> Thêm mail, webmail, DNS, WAF, Apache, FTP, PostgreSQL, MongoDB, Adminer, Docker và lưu trữ S3 cho server ZoPanel, ngay khi cài hoặc sau này ở trang Thành phần.

Source: https://zopanel.net/vi/docs/components  
Updated: 2026-10-07

Bản cài mặc định của ZoPanel (`--profile web`) chỉ gồm web stack: nginx, PHP, MariaDB, SFTP, tường lửa và panel. Mọi thứ khác là **thành phần** tuỳ chọn, chỉ thêm khi cần, vì thành phần nào cũng tốn RAM. Bạn có thể chọn thành phần ngay khi cài, hoặc thêm bất cứ lúc nào từ panel.

## Các thành phần có sẵn

| ID | Thành phần | Bổ sung | RAM tăng thêm (ước tính) |
| --- | --- | --- | --- |
| `mail` | Mail server | Postfix, Dovecot và Rspamd: hộp thư, chuyển tiếp, DKIM, lọc spam, quy tắc Sieve | ~300 MB |
| `webmail` | Webmail | Đọc và gửi thư trên trình duyệt (cổng 2096) | ~40 MB |
| `dav` | Lịch & danh bạ | CalDAV/CardDAV cho mọi hộp thư (Radicale), cổng 2080 | ~40 MB |
| `dns` | Máy chủ DNS | PowerDNS: vùng DNS của khách, DNSSEC, chứng chỉ wildcard | ~30 MB |
| `waf` | Tường lửa ứng dụng web | ModSecurity với bộ luật OWASP CRS, bật theo từng website | ~130 MB |
| `apache` | Apache (.htaccess) | Cho phép website bật chế độ Apache để file `.htaccess` hoạt động | ~40 MB |
| `ftp` | FTP server | Pure-FTPd có TLS cho khách vẫn dùng FTP | ~10 MB |
| `postgres` | PostgreSQL | Database PostgreSQL cho ứng dụng | ~120 MB |
| `mongo` | MongoDB | Database MongoDB cho Node.js và ứng dụng khác | ~250 MB |
| `adminer` | Adminer | Giao diện web quản lý MariaDB, PostgreSQL và MongoDB | ~20 MB |
| `docker` | Docker | Chạy ứng dụng Kho ứng dụng và deploy bằng Dockerfile, cách ly theo website | ~150 MB |
| `storage` | Lưu trữ S3 | Bucket tương thích S3 cho khách | ~150 MB |

Các phụ thuộc được tự động thêm:

- `webmail` và `dav` cần mail server, nên `mail` được cài kèm.
- `storage` cần Docker, nên `docker` được cài kèm.

`storage` cần license Pro; với gói Free, thành phần này bị bỏ qua. Apache cũng tự được cài lần đầu khi một website bật chế độ Apache, nên hiếm khi bạn phải thêm thủ công.

## Cài thành phần từ panel

1. Đăng nhập bằng quản trị viên và vào **Thành phần** (trong nhóm **Máy chủ** của menu).
2. Các thành phần được chia nhóm **Email**, **Web & bảo mật**, **Cơ sở dữ liệu** và **Ứng dụng**. Thành phần đã cài có nhãn **đã cài**.
3. Đánh dấu các thành phần cần cài. Panel hiển thị lượng RAM tăng thêm ước tính.
4. Nếu chọn mail server, nhập **Tên máy chủ mail**, ví dụ `mail.example.com`. Tên này phải trỏ về server; hãy nhờ nhà cung cấp VPS cấu hình reverse DNS (PTR).
5. Nếu chọn máy chủ DNS, nhập **Nameserver**, ví dụ `ns1.example.com, ns2.example.com`. Tạo chúng dưới dạng glue record (bản ghi A trỏ về IP server) tại nhà đăng ký của tên miền đó.
6. Bấm **Cài N thành phần**.

Việc cài đặt chạy thành một tác vụ nền. Bạn có thể đóng cửa sổ và theo dõi ở **Tác vụ**. Thành phần đã cài sẽ được bỏ qua. Nếu một thành phần lỗi, các thành phần khác vẫn tiếp tục và tác vụ liệt kê những gì chưa cài được; bạn có thể cài lại sau.

Một số trang cũng cho cài thẳng thành phần của nó, ví dụ **Cài máy chủ email** ở trang **Email** hay **Cài FTP server** ở trang **FTP / SFTP**.

## Chọn thành phần khi cài đặt

### Profile

| Profile | Thành phần |
| --- | --- |
| `web` (mặc định) | Không có: chỉ web stack |
| `full` | `mail`, `webmail`, `dav`, `dns`, `waf`, `apache`, `ftp`, `postgres`, `adminer`, `docker` |

```bash
curl -fsSL https://get.zopanel.net | sudo bash -s -- --profile full \
  --mail-hostname mail.example.com \
  --nameservers ns1.example.com,ns2.example.com
```

### Chọn từng thành phần

Thêm thành phần vào bất kỳ profile nào bằng `--with`, cách nhau bởi dấu phẩy:

```bash
curl -fsSL https://get.zopanel.net | sudo bash -s -- --with waf,docker,postgres
```

`mongo` và `storage` không nằm trong `full`; hãy thêm bằng `--with`.

### Bộ cài cần thông tin gì

| Thành phần | Tham số | Nếu thiếu |
| --- | --- | --- |
| `mail`, `webmail` | `--mail-hostname mail.example.com` | Bị bỏ qua kèm thông báo. Nếu `--hostname` có từ ba phần trở lên (ví dụ `srv1.example.com`), hostname đó được dùng làm tên máy chủ mail. |
| `dns` | `--nameservers ns1.example.com,ns2.example.com` | Bị bỏ qua kèm thông báo |

Bộ cài không tự cài thành phần. Nó xếp hàng chúng, và panel cài chúng thành một tác vụ nền ngay sau khi khởi động, xem được ở **Tác vụ**. Nếu bộ cài khởi động lại server (vì kernel mới), các thành phần được cài sau khi khởi động lại. Nếu server khởi động lại giữa chừng, tác vụ sẽ tiếp tục.

## Cổng được mở

Khi cài, các thành phần tự mở cổng của mình trên tường lửa UFW. Nếu nhà cung cấp có tường lửa riêng, hãy mở cả ở đó.

| Thành phần | Cổng |
| --- | --- |
| Mail server | 25, 465, 587 (SMTP), 143, 993 (IMAP), 110, 995 (POP3) |
| Webmail | 2096 |
| Lịch & danh bạ | 2080 |
| Máy chủ DNS | 53 TCP và UDP |
| FTP server | 21 và dải cổng passive 30000-30100 |
| Adminer | 8889 |

## Sau khi cài

| Thành phần | Dùng ở đâu |
| --- | --- |
| Mail server, webmail, lịch & danh bạ | Trang **Email**: bật email cho tên miền, tạo hộp thư, kiểm tra bản ghi DNS và khả năng gửi thư |
| Máy chủ DNS | Trang **DNS**: zone, bản ghi, DNSSEC, DNS cluster |
| Tường lửa ứng dụng web | Trang **Bảo mật** cho mọi website, và tab **Công cụ** của từng website; nên bắt đầu với **Chỉ phát hiện (ghi log)** vài ngày rồi chuyển sang chặn |
| Apache (.htaccess) | Tab **Công cụ** của website: **Hỗ trợ .htaccess (chế độ Apache)** |
| FTP server | Trang **FTP / SFTP**: tài khoản FTP giới hạn trong một thư mục |
| PostgreSQL, MongoDB, Adminer | Trang **Cơ sở dữ liệu** |
| Docker | **Kho ứng dụng**, và deploy Docker hoặc Dockerfile cho website |
| Lưu trữ S3 | Trang **Lưu trữ S3**: bucket và khoá truy cập |

## Tính RAM trước khi cài

Mỗi thành phần chiếm RAM thường trực, phần RAM đó không còn cho website dùng. Trên server 1-2 GB, chỉ cài những gì thực sự dùng. Trang **Tối ưu** và thẻ **Hiệu năng PHP** trong **Cài đặt → Hệ thống** cho thấy RAM được chia giữa hệ thống và khách thế nào sau khi thêm thành phần.
