Hướng dẫn cài đặt vsftpd trên CentOS 7
BÀI VIẾT

Hướng dẫn cài đặt vsftpd trên CentOS 7

4.6K
author Bùi Tấn Việt - 2021-10-15 20:42:29 (GMT+7)

Bạn không sử dụng CentOS 7?
Xem bài viết cho các distro khác

Giới thiệu

FTP viết tắt của từ File Transfer Protocol, là giao thức truyền file đơn giản giữa máy tính và máy chủ qua nhiều thập kỷ. Trên Linux, bạn có thể cài đặt vsftpd, một phần mềm chuyên dụng để máy chủ của bạn có thể làm FTP Server.

Bài viết này sẽ hướng dẫn bạn cài đặt vsftpd trên CentOS 7.

Yêu cầu

  • Máy chủ chạy hệ điều hành CentOS 7

  • Quyền root hoặc user có thể sudo

Bước 1: Cài đặt FTP với vsftpd

Thực hiện cài đặt vsfptd bằng lệnh yum

bash (root)
yum install vsftpd -y

Khởi động vsftpd và cho vsftpd khởi động cùng với hệ thống

bash (root)
systemctl start vsftpd
systemctl enable vsftpd

Bước 2: Cấu hình vsftpd

File cấu hình vsftpd được đặt tại /etc/vsftpd/vsftpd.conf

Bạn cần cấu hình với các chỉ định sau:

/etc/vsftpd/vsftpd.conf
. . .
anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
allow_writeable_chroot=YES
listen=YES
listen_ipv6=NO

userlist_enable=YES
userlist_file=/etc/vsftpd/user_list
userlist_deny=NO

pasv_enable=YES
pasv_max_port=10100
pasv_min_port=10090
. . . 

Trong đó:

  • anonymous_enable=NO: Chỉ định không cho phép anonymous user đăng nhập vào vsftpd

  • local_enable=YES: Cho phép các user trên máy chủ đăng nhập vào vsftpd

  • write_enable=YES: Cho phép ghi file qua FTP

  • chroot_local_user=YES: Chroot user vào thư mục home directory của chính user đó. Ví dụ user có thư mục tại /home/testuser thì khi kết nối qua FTP, user này chỉ có thể thao tác cũng như nhìn thấy cac file trong /home/testuser

  • listen=YES: Cho phép listen qua IPv4 socket

  • listen_ipv6=NO: Tắt vsftpd cho IPv6

  • userlist_enable=YES: Chỉ các user được chỉ định mới có thể login FTP

  • userlist_file=/etc/vsftpd/user_list: Khai báo file danh sách các user được đăng nhập FTP tại /etc/vsftpd/user_list

  • userlist_deny=NO: Khai báo file user_list trên là file chứa danh sách các user cho phép đăng nhập FTP

  • pasv_enable=YES: Bật chế độ FTP Passive Mode

  • pasv_max_port=10100pasv_min_port=10090: Chỉ định port nhỏ nhất và cao nhất của FTP Passive Mod.

Bước 3: Tạo user FTP thử nghiệm

Tạo user login FTP với tên là community123host

bash (root)
useradd community123host

Lưu ý: Với CentOS 7, user phải có shell mới có thể login được FTP. Vì vậy nếu bạn tạo user với lệnh chỉ định shell như useradd -s /sbin/nologin, user của bạn sẽ không thể login FTP!

Đặt mật khẩu cho community123host với lệnh passwd community123host. Bạn cần điền mật khẩu hai lần sau lệnh này.

bash (root)
passwd community123host
Changing password for user community123host.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.

Ở ví dụ trên đặt tên cho user là community123host, bạn có thể thay bằng tên user khác nếu bạn muốn.

Bước 4: Cho phép user login FTP

Khai báo user community123host vào file /etc/vsftpd/user_list.

/etc/vsftpd/user_list
# vsftpd userlist
# If userlist_deny=NO, only allow users in this file
# If userlist_deny=YES (default), never allow users in this file, and
# do not even prompt for a password.
# Note that the default vsftpd pam config also checks /etc/vsftpd/ftpusers
# for users that are denied.
community123host

Lưu ý: Nếu file user_list có nhiều user khác, hãy xóa đi và chỉ để lại user bạn mong muốn login FTP. Ở ví dụ trên chỉ để user community123host

Khởi động lại dịch vụ vsftpd

bash (root)
systemctl restart vsftpd.service

Bước 5: Kiểm tra hoạt động của FTP Server

Tải phần mềm FTP Client FileZilla và cài đặt trên máy tính của bạn tại đây https://filezilla-project.org/download.php. Sau khi cài đặt, mở FileZilla. Tại phần Host, Username, Password thực hiện điền như sau:

  • Host: IP Server của bạn

  • Username: Tên user login FTP, ở đây là community123host

  • Password: Password bạn đã đặt lúc thực hiện lệnh passwd

Bấm Quickconnect. Bạn sẽ nhận thông báo login thành công như sau:

Kết quả
Status:         Connecting to IP_SERVER...
Status:         Connection established, waiting for welcome message...
Status:         Insecure server, it does not support FTP over TLS.
Status:         Logged in
Status:         Retrieving directory listing...
Status:         Directory listing of "/" successful
Status:         Connection closed by server

Tại cửa sổ FTP của FileZilla, bạn có thể kéo thả một số file trên máy tính của mình vào để thử nghiệm upload file lên server.

Hoặc click chuột phải chọn Create Directory để tạo thư mục mới, chọn Create new file để tạo file mới.

Tổng kết

vsftpd là phần mềm FTP Server được sử dụng rất phổ biến và rộng rãi. Nó rất đơn giản, ổn định và bảo mật, vsftpd cũng có tuổi đời hơn 10 năm, vì vậy bạn có thể yên tâm sử dụng nó.

Chúc bạn thành công!


Bạn có làm được theo hướng dẫn này không?

Bài liên quan

Lệnh kiểm tra ứng dụng được cài bằng gói RPM nào
Lệnh kiểm tra ứng dụng được cài bằng gói RPM nào
Hướng dẫn cài đặt và cấu hình máy chủ Email với Exim, Roundcube và Dovecot trên CentOS 7
Hướng dẫn cài đặt và cấu hình máy chủ Email với Exim, Roundcube và Dovecot trên CentOS 7
Hướng dẫn cấu hình SSH Key trên CentOS 7
Hướng dẫn cấu hình SSH Key trên CentOS 7

Cloud VPS tại 123HOST

Hiệu năng, ổn định và bảo mật

Cloud VPS giá rẻ

Thuê Server Riêng

Chi phí thấp, cấu hình cao

Thuê Server Riêng
Thông tin tác giả
Bùi Tấn Việt

Co-Founder & CEO at 123HOST

Bình luận

Tính năng đang được phát triển

Đang tải bình luận
Liên hệ chúng tôi