Hướng dẫn cài đặt và cấu hình Pure-FTPd trên Ubuntu
1. Pure-FTPd là gì?
Pure-FTPd là một FTP server miễn phí, an toàn và hiệu quả, được thiết kế để dễ cài đặt và sử dụng trên các hệ điều hành Unix/Linux. Pure-FTPd được sử dụng để cung cấp dịch vụ truyền tải file qua giao thức FTP (File Transfer Protocol).
Ưu điểm:
- Hỗ trợ FTPS (FTP Secure) sử dụng SSL/TLS để mã hóa dữ liệu.
- Chống tấn công DoS và hạn chế kết nối.
- Hỗ trợ virtual users và chroot để giới hạn truy cập vào các thư mục cụ thể.
2. Cài đặt Pure-FTPd trên Ubuntu?
Bạn SSH vào server cần cài đặt: https://helpdesk.inet.vn/knowledgebase/huong-dan-su-dung-putty-de-ket-noi-ssh-toi-vps-linux
Chạy lệnh cập nhật và lệnh cài đặt pure-ftpd:
sudo apt update
sudo apt install pure-ftpd -yHiển thi như sau là đã cài đặt thành công

Bạn có thể kiểm tra service đã hoạt động chưa với lệnh sau
sudo systemctl status pure-ftpd
3. Cấu hình Pure-FTPd trên Ubuntu:
Bạn mở file cấu hình của pure-ftpd tại đường dẫn /etc/pure-ftpd/pure-ftpd.conf và sửa các trường như sau để thiết lập bảo mật cơ bản
Không cho phéptruy cập nặc danh
NoAnonymous yes
Bật chỉ support truy cập địa chỉ IP4
IPV4Only yes
Bật chỉ support truy cập địa chỉ IP6
IPV6Only yes
Bật chỉ cho phép user truy cập trên các thư mục con của user đó
ChrootEveryone yesSau khi thay đổi bạn khởi động lại pure-ftpd để thay đổi có hiệu lực
systemctl restart pure-ftpd4. Quản lý user của pure-fptd
- Tạo user pure-fptd
Trước khi tạo user trong pure-ftpd bạn cần có sẵn user trong hệ thống hệ điều hành hiện tại và không phải user root
Tạo một nhóm dành riêng cho người dùng FTP:
sudo groupadd ftpgroupTạo người dùng cho Pure-FTPd:
sudo useradd -g ftpgroup -d /dev/null -s /etc inetftpKhi đã có user trong hệ thống bạn có thể tạo user ảo trong pure-ftpd, user ảo ftpu này sẽ có quyền với file như là user thật inetftp với quyền truy cập là trong thư mục /home/inetftp/ftpu
pure-pw useradd ftpu -u inetftp -d /home/inetftp/ftpu
Sau khi tạo thành công bạn thực hiện commit dữ liệu pure-ftpd để có hiệu lực
pure-pw mkdbLệnh này bạn cần sử dụng sau khi thêm, sửa, xóa user trong pure-ftpd
- Xóa user trong pure-fptd
pure-pw userdel ftpu
pure-pw mkdb- Đổi pass user trong pure-fptd
pure-pw passwd ftpu
// nhập mật khẩu mới
pure-pw mkdb
5. Mở port FTP trên tường lửa
Nếu server bạn đang sử dụng có cài đặt tường lửa bạn cần mở port để có thể sử dụng:
- Port FTP mặc định: 21
- PassivePort của pure-ftpd: Bạn thể xem dải port này trong file cấu hình pure-ftpd.conf
cat /etc/pure-ftpd/pure-ftpd.conf | grep PassivePort
Ví du ảnh trên là từ port 30000 đến 50000
Server Ubuntu tại iNET dùng tường lửa ufw nên sẽ mở port như sau
sudo ufw allow 21
sudo ufw allow 30000:50000/tcp
6. Kiểm tra
Bạn có thể dùng phần mầm FTP (ví dụ Filezilla) kết nối và kiểm tra.
Nếu khi kết nối bạn gặp lỗi 530 Login authentication failed mặc dù đã điền đúng user và password

Bạn chạy thêm lệnh sau và thử kết nối lại nhé.
sudo ln -s /etc/pure-ftpd/conf/PureDB /etc/pure-ftpd/auth/50pure
systemctl restart pure-ftpd
Như sau là đã kết nối thành công
