Dựa trên ngữ cảnh, “phân quyền domain” ở đây có thể hiểu là thiết lập quyền truy cập (access control) cho domain/website trong aaPanel khi sử dụng OpenLiteSpeed (OLS) làm web server. aaPanel hỗ trợ OLS một cách tích hợp, nhưng OLS không hỗ trợ đầy đủ các directive .htaccess như Apache (chỉ hỗ trợ rewrite rules). Do đó, việc phân quyền thường được thực hiện qua giao diện aaPanel (cho quyền file/folder cơ bản) hoặc qua cấu hình OLS Admin Console (cho quyền truy cập IP, basic auth, v.v.).
Lưu ý quan trọng:
- Đảm bảo bạn đã cài đặt OLS trên aaPanel (qua App Store > Deployment > Install OpenLiteSpeed). Nếu chưa, hãy gỡ web server cũ (Nginx/Apache) trước.
- aaPanel không hỗ trợ phân quyền người dùng đa tài khoản (chỉ 1 tài khoản admin), nên phân quyền ở đây tập trung vào file/folder và truy cập web.
- Truy cập OLS Admin Console tại https://IP_SERVER:7080 (mật khẩu mặc định: admin/123456, hoặc reset qua SSH: /usr/local/lsws/admin/misc/admpass.sh).
Dưới đây là các cách phân quyền phổ biến, theo thứ tự từ cơ bản đến nâng cao.
1. Phân quyền file/folder cho domain (qua File Manager của aaPanel)
Đây là cách đơn giản nhất để set quyền đọc/ghi cho thư mục website (ví dụ: chỉ admin mới ghi file, người dùng khác chỉ đọc). Mỗi domain có thư mục riêng tại /www/wwwroot/[domain]/.
Các bước:
- Đăng nhập aaPanel > Chọn Files (Quản lý file).
- Duyệt đến thư mục domain (ví dụ: /www/wwwroot/example.com).
- Chọn file/folder cần phân quyền > Nhấp Permission (Quyền).
- Set quyền theo chuẩn (thường dùng cho web):
- 755 cho thư mục (owner: read/write/execute; group/other: read/execute).
- 644 cho file (owner: read/write; group/other: read).
- Owner thường là www (user của OLS).
- Nhấp Submit để áp dụng.
Ví dụ quyền cho WordPress trên OLS:
| Thư mục/File | Quyền khuyến nghị | Lý do |
|---|---|---|
| /wp-content/uploads/ | 755 (thư mục), 644 (file) | Cho phép upload file an toàn. |
| /wp-config.php | 600 | Chỉ owner đọc/ghi, bảo mật config. |
| Toàn bộ root domain | 755 | Tránh lỗi 403 Forbidden. |
Nếu gặp lỗi 403 sau khi set, kiểm tra owner: SSH vào server và chạy chown -R www:www /www/wwwroot/[domain].
2. Phân quyền truy cập domain theo IP (Access Control qua OLS Admin)
Giới hạn chỉ IP cụ thể mới truy cập được domain (ví dụ: chỉ từ văn phòng).
Các bước:
- Truy cập OLS Admin Console (https://IP:7080).
- Đi đến Virtual Hosts > Chọn virtual host của domain (aaPanel tự tạo khi add site).
- Chọn Context > Add (thêm context cho root / hoặc thư mục con).
- Type: Static hoặc Rewrite (nếu cần rule).
- URI: / (toàn domain) hoặc /admin/ (thư mục con).
- Location: Đường dẫn thực tế (ví dụ: /www/wwwroot/example.com).
- Trong Access tab:
- Access Allowed: Thêm IP cho phép, ví dụ: 192.168.1.0/24 (mạng nội bộ) hoặc 203.0.113.1 (IP cụ thể).
- Access Denied: Thêm IP chặn nếu cần.
- Set Accessible: Yes (cho phép) hoặc No (chặn tất cả).
- Lưu và Graceful Restart server (OLS > Actions > Graceful Restart).
Ví dụ rule chặn tất cả trừ IP Việt Nam (dùng CIDR):
- Allowed: 103.1.0.0/16, 113.160.0.0/11 (các dải IP VN phổ biến).
- Kết quả: Truy cập từ IP ngoài sẽ bị 403.
3. Bảo vệ domain bằng Basic Auth (Mật khẩu HTTP)
Yêu cầu username/password để truy cập thư mục/domain.
Các bước:
- Tạo file .htpasswd (lưu user/pass mã hóa): SSH vào server, chạy htpasswd -c /www/server/panel/vhost/.htpasswd username (nhập pass).
- Trong OLS Admin > Virtual Hosts > [Domain] > Context > Add (cho thư mục cần bảo vệ, ví dụ /admin/).
- Type: Static.
- URI: /admin/.
- Realm: Tên realm (ví dụ: “Admin Area”).
- Authorization:
- Auth User File: /www/server/panel/vhost/.htpasswd.
- Auth Name: “Restricted Area”.
- Set Accessible: Yes.
- Lưu và restart.
- Trong aaPanel, bạn có thể set tương tự qua Sites > [Domain] > Config > Rewrite (thêm rule nếu cần).
Lưu ý: OLS hỗ trợ basic auth native, nhưng không hỗ trợ đầy đủ .htaccess auth directives. Nếu dùng .htaccess, chỉ rewrite rules hoạt động.
4. Phân quyền nâng cao qua Rewrite Rules (cho URL cụ thể)
Nếu cần chặn theo user-agent, referer, hoặc redirect.
Các bước:
- Trong aaPanel > Sites > [Domain] > Conf > Rewrite (OLS tự parse .htaccess).
- Thêm rule vào file .htaccess tại root domain:
text
RewriteEngine On RewriteCond %{REMOTE_ADDR} !^203\.0\.113\.1$ RewriteRule ^admin/ - [F] # Chặn tất cả trừ IP cụ thể truy cập /admin/ - Hoặc qua OLS Admin > Virtual Hosts > Rewrite > Add rule tương tự.
- Restart OLS.
Lỗi thường gặp và khắc phục
- Lỗi 403 Forbidden: Kiểm tra quyền file (755/644), owner www:www, và firewall (mở port 80/443 qua aaPanel > Security).
- Virtual host không map đúng: aaPanel đôi khi default về /www/wwwroot. Sửa trong Sites > [Domain] > Root Directory.
- OLS không nhận config aaPanel: Restart OLS sau thay đổi, hoặc kiểm tra log tại /usr/local/lsws/logs/.
- Nếu dùng WordPress, cài LSCache plugin để tối ưu, và set quyền wp-config.php = 600.
Nếu bạn cần phân quyền người dùng aaPanel (không phải domain), hiện aaPanel chưa hỗ trợ đa user – cân nhắc dùng CyberPanel nếu cần. Nếu gặp lỗi cụ thể, cung cấp thêm chi tiết để hỗ trợ chi tiết hơn!
Nguồn tham khảo: Tài liệu chính thức OpenLiteSpeed , diễn đàn aaPanel , và hướng dẫn cài đặt
