Last Updated on 16/11/2024
Pure-FTPd là một phần mềm máy chủ FTP mã nguồn mở, được thiết kế để cung cấp một dịch vụ truyền tải tệp tin (File Transfer Protocol) an toàn, ổn định và hiệu quả. Được phát triển với mục tiêu đơn giản hóa việc cấu hình nhưng vẫn đảm bảo hiệu suất và bảo mật, Pure-FTPd là một lựa chọn phổ biến trên các hệ thống Linux và Unix.
Tính năng chính của Pure-FTPd
- An toàn: Pure-FTPd hỗ trợ nhiều tính năng bảo mật như mã hóa kết nối bằng FTPS (FTP Secure) và TLS/SSL, kiểm soát kết nối thông qua giới hạn số lượng phiên làm việc, và hỗ trợ tính năng “chroot” để cách ly người dùng vào các thư mục cụ thể, tránh việc truy cập trái phép vào hệ thống.
- Hiệu suất cao: Phần mềm này được thiết kế để tiêu tốn ít tài nguyên hệ thống nhất có thể, cho phép quản lý số lượng lớn người dùng đồng thời mà không ảnh hưởng đến hiệu suất máy chủ. Nhờ khả năng tối ưu hóa, Pure-FTPd xử lý tốt các tải nặng với tốc độ truyền tải ổn định.
- Dễ cấu hình: Pure-FTPd cung cấp các file cấu hình rõ ràng và dễ chỉnh sửa, giúp quản trị viên dễ dàng thiết lập và quản lý các tính năng. Ngoài ra, Pure-FTPd có thể được biên dịch với nhiều tùy chọn để hỗ trợ các hệ thống khác nhau, từ cơ sở dữ liệu MySQL, PostgreSQL cho đến hỗ trợ LDAP.
- Tính năng hiện đại: Hỗ trợ các tính năng hiện đại như tạo tài khoản ảo, giới hạn băng thông cho từng người dùng, cho phép nén dữ liệu khi truyền tải, và khả năng kiểm tra tính toàn vẹn của tệp để đảm bảo dữ liệu không bị hỏng hóc trong quá trình tải lên/tải xuống.
Lợi ích khi sử dụng Pure-FTPd
Pure-FTPd không chỉ là một máy chủ FTP thông thường mà còn cung cấp các công cụ quản lý tiện ích, giúp tiết kiệm thời gian cho quản trị viên hệ thống. Với sự hỗ trợ rộng rãi và các bản cập nhật thường xuyên từ cộng đồng, Pure-FTPd vẫn luôn duy trì được tính ổn định và bảo mật trước các lỗ hổng mới.
Tại sao chọn Pure-FTPd?
Nếu bạn cần một máy chủ FTP đáng tin cậy, dễ cấu hình nhưng không muốn hy sinh bảo mật hoặc hiệu suất, Pure-FTPd là một lựa chọn tuyệt vời. Nó phù hợp từ các hệ thống nhỏ lẻ đến những hệ thống lớn cần quản lý hàng ngàn kết nối cùng lúc, đảm bảo truyền tải dữ liệu nhanh chóng và an toàn mà không gây phức tạp cho người dùng.
Dưới đây là các giá trị chúng ta cần chỉnh sửa trong quá trình sử dụng.
Đường dẫn file cấu hình: /etc/pure-ftpd/pure-ftpd.conf
I. MaxClientsPerIP
Trong Pure-FTPd, tham số MaxClientsNumber
quy định số lượng kết nối FTP tối đa mà máy chủ có thể chấp nhận cùng một lúc. Đây là một giới hạn tổng thể để ngăn chặn máy chủ bị quá tải khi có quá nhiều kết nối đồng thời, bảo vệ tài nguyên của máy chủ khỏi bị sử dụng quá mức.
Ví dụ về ý nghĩa:
- Nếu bạn đặt
MaxClientsNumber
là 50, điều đó có nghĩa là máy chủ FTP của bạn sẽ chỉ cho phép tối đa 50 kết nối đồng thời. Khi con số này đạt tới giới hạn, bất kỳ kết nối mới nào sẽ bị từ chối cho đến khi có một kết nối khác được ngắt.
Lý do sử dụng MaxClientsNumber
:
- Bảo vệ tài nguyên máy chủ: Ngăn chặn việc tiêu tốn quá nhiều tài nguyên hệ thống, đảm bảo máy chủ không bị quá tải.
- Quản lý tải: Đảm bảo dịch vụ FTP duy trì tốc độ ổn định, không bị chậm khi số lượng người dùng tăng cao.
- An ninh: Giúp ngăn chặn các cuộc tấn công DoS (Denial of Service) khi có ai đó cố gắng tạo nhiều kết nối để làm gián đoạn dịch vụ.
Nếu bạn muốn thay đổi giá trị này, bạn có thể chỉnh sửa trực tiếp trong file cấu hình /etc/pure-ftpd/pure-ftpd.conf
:
MaxClientsNumber 50
Bạn có thể nâng giá trị này lên tuỳ theo mục đích sử dụng của mình
MaxClientsNumber 100
II. MaxClientsPerIP
MaxClientsPerIP
trong Pure-FTPd là một tham số giới hạn số lượng kết nối FTP tối đa mà mỗi địa chỉ IP có thể mở đồng thời. Điều này có nghĩa là từ một địa chỉ IP cụ thể, chỉ một số lượng kết nối nhất định được phép đến máy chủ FTP.
Thiết lập mặc định của MaxClientsPerIP
thường là 8 , tham số này có thể hơi ít nên đôi khi xuất hiện lỗi 421 Too many connections (15) from this IP .
Cách khắc phục là tăng giá trị này lên trong file cấu hình Pure-FTPd.
nano /etc/pure-ftpd/pure-ftpd.conf
sau đó bạn tìm đến dòng
# Maximum number of simultaneous clients with the same IP address
MaxClientsPerIP 8
và chính giá trị MaxClientsPerIP thành 250 hoặc bất kỳ giá trị khác nào phù hợp. 250 là số lượng kết nối không cao hay cũng không thấp. Bạn có thể lựa chọn giá trị này cho cấu hình.
III. MaxIdleTime
MaxIdleTime
: Quy định khoảng thời gian tối đa mà một kết nối có thể không hoạt động trước khi bị ngắt. Mặc định thông số này là 15 phút. Bạn có thể điều chỉnh lên 30 phút hoặc cao hơn.
Sau khi chỉnh, bạn cần khởi động lại Pure-FPTd để thay đổi có hiệu lực.
Centos/Almalinux/Rockylinux…:
systemctl restart pure-ftpd
trên Ubuntu/Debian/…:
service pure-ftpd restart