# FTP và SFTP

> Truyền file an toàn qua SFTP bằng tài khoản hosting hoặc SSH key, hoặc tạo thêm tài khoản FTP có TLS, mỗi tài khoản giới hạn trong một thư mục và có hạn mức tuỳ chọn.

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

Mọi tài khoản hosting đều truyền file được qua SFTP, dùng cùng tên đăng nhập và mật khẩu với panel. Với lập trình viên hay designer chỉ nên thấy một thư mục, bạn có thể tạo thêm tài khoản FTP riêng ở trang **FTP / SFTP**.

## SFTP bằng tài khoản hosting

SFTP luôn có sẵn khi gói hosting của tài khoản cho phép (tuỳ chọn SFTP trong gói).

| Thiết lập | Giá trị |
| --- | --- |
| Giao thức | SFTP |
| Host | tên máy chủ hoặc IP |
| Cổng | 22 |
| Tên đăng nhập | tên tài khoản hosting |
| Mật khẩu | mật khẩu của tài khoản |

Phiên làm việc bị giới hạn (chroot) trong thư mục home của tài khoản: bạn thấy `domains/`, `backups/` và các thư mục của mình, không thấy gì của tài khoản khác. Website nằm trong `domains/<tên-miền>/public_html` (hoặc thư mục gốc của website).

File tải lên qua SFTP thuộc về tài khoản hosting nên PHP đọc được với đúng quyền. Nếu ứng dụng báo "permission denied" sau khi tải lên bằng công cụ khác, hãy tải lại qua SFTP hoặc sửa quyền trong Quản lý file (file 640, thư mục 750).

Lưu ý: **Tài khoản của tôi → Đổi mật khẩu** chỉ đổi mật khẩu panel; hãy liên hệ nhà cung cấp để đổi mật khẩu SFTP.

### Đăng nhập bằng SSH key

Key an toàn hơn mật khẩu và dùng được với FileZilla, WinSCP, rsync qua SFTP và các công cụ tương tự.

1. Mở **Tài khoản của tôi** và tìm thẻ **SFTP & SSH key**.
2. Dán public key, mỗi dòng một key, ví dụ:

   ```text
   ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAA… ban@laptop
   ```

3. Bấm **Thêm key**.
4. Khi key đã đăng nhập được, bật **Chỉ dùng key** để tắt đăng nhập bằng mật khẩu cho tài khoản này.

Loại key được chấp nhận: Ed25519, ECDSA (P-256, P-384, P-521), RSA từ 2048 bit trở lên, và các loại key bảo mật phần cứng (`sk-ssh-ed25519@openssh.com`, `sk-ecdsa-sha2-nistp256@openssh.com`).

Thẻ này cũng hiển thị **Vân tay máy chủ (kiểm tra ở lần kết nối đầu)**. Hãy đối chiếu với vân tay phần mềm hiển thị ở lần kết nối đầu tiên để chắc chắn bạn đang kết nối đúng máy chủ.

Tạo key trên máy tính của bạn:

```bash
ssh-keygen -t ed25519 -C "ban@laptop"
cat ~/.ssh/id_ed25519.pub   # dán dòng này vào panel
sftp alice@server.example.com
```

## Tài khoản FTP

FTP là tuỳ chọn. Quản trị viên cài FTP server (Pure-FTPd có TLS) bằng nút **Cài FTP server** trong trang **FTP / SFTP**, hoặc từ **Thành phần**. Trình cài đặt mở cổng 21 và dải cổng passive 30000-30100 trên tường lửa.

### Tạo tài khoản FTP

1. Ở trang **FTP / SFTP**, bấm **Tạo tài khoản FTP**.
2. Nhập **Tên đăng nhập**. Tên luôn có tiền tố là tên tài khoản hosting, ví dụ `alice_designer`.
3. Nhập hoặc tạo **Mật khẩu** (8 đến 128 ký tự).
4. Chọn **Thư mục** mà tài khoản bị giới hạn trong đó:
   - `domains/` (tất cả website);
   - `domains/<tên-miền>` hoặc `domains/<tên-miền>/public_html` cho một website;
   - với website Git hoặc ứng dụng, `domains/<tên-miền>/shared` hoặc `domains/<tên-miền>/source`.
5. Đặt **Hạn mức (MB)** nếu muốn giới hạn dung lượng lưu trữ (`0` = không giới hạn).
6. Bấm **Tạo** và sao chép thông tin đăng nhập.

Tài khoản FTP không thể ra ngoài thư mục được chỉ định, và file tải lên thuộc về tài khoản hosting. Số tài khoản FTP tối đa do gói hosting quy định (gói mới mặc định 10). Sửa tài khoản để đổi mật khẩu, thư mục hoặc hạn mức; để trống mật khẩu để giữ nguyên.

### Cấu hình phần mềm FTP

FTP bắt buộc dùng TLS (FTPS tường minh); đăng nhập không mã hoá bị từ chối.

| Thiết lập | Giá trị |
| --- | --- |
| Giao thức | FTP với TLS tường minh (FTPES) |
| Host | tên máy chủ hoặc IP |
| Cổng | 21 |
| Chế độ truyền | Passive (cổng 30000-30100) |
| Tên đăng nhập | tên FTP đầy đủ, ví dụ `alice_designer` |

Trong FileZilla, chọn mã hoá **Require explicit FTP over TLS**. FTPS dùng chứng chỉ của panel: hãy cấu hình **Cài đặt → Tên miền & SSL cho panel** để phần mềm FTP thấy chứng chỉ tin cậy thay vì cảnh báo.

Mỗi IP được mở tối đa 10 kết nối, và máy chủ nhận tối đa 100 kết nối FTP cùng lúc.

## Nên dùng cách nào?

| Nhu cầu | Cách dùng |
| --- | --- |
| Bạn tự quản lý website của mình | SFTP bằng tài khoản hosting, tốt nhất dùng SSH key và bật **Chỉ dùng key**. |
| Freelancer cần file của một website | Tài khoản FTP giới hạn trong `domains/<tên-miền>/public_html`, hoặc thêm họ làm **Thành viên** của website. |
| Công cụ cũ chỉ hỗ trợ FTP | Tài khoản FTP có TLS. |
| File lớn hoặc rất nhiều file | SFTP hoặc rsync qua SFTP; hoặc tải một file nén lên **Quản lý file** rồi **Giải nén** ngay trên máy chủ. |

## Xử lý sự cố

| Hiện tượng | Cần kiểm tra |
| --- | --- |
| SFTP: "Permission denied" khi đăng nhập | Sai mật khẩu, đang bật **Chỉ dùng key**, hoặc gói không có SFTP. |
| FTP: đăng nhập được nhưng không hiện danh sách file | Dải cổng passive 30000-30100 phải mở trên mọi tường lửa giữa bạn và máy chủ; dùng chế độ passive. |
| FTP: bị từ chối trước khi kiểm tra mật khẩu | Phần mềm đang dùng FTP thường: chuyển sang FTP với TLS tường minh. |
| Phần mềm cảnh báo chứng chỉ | Đặt tên miền panel và cấp chứng chỉ trong **Cài đặt**. |
