Cài đặt và cấu hình vsftpd trên CentOS 7 từ source

Vsftpd (Very secure FTP daemon) là bản FTP server mặc định cho Ubuntu, CentOS, .. Vì vậy, bài viết sẽ cài đặt và cấu hình VSFTPD làm FTP server.

Cài đặt vsftpd

Download và cài đặt thư viện libcap cho vsftpd

cd /opt
wget https://rpmfind.net/linux/centos/7.5.1804/os/x86_64/Packages/libcap-2.22-9.el7.x86_64.rpm
wget https://rpmfind.net/linux/centos/7.5.1804/os/x86_64/Packages/libcap-devel-2.22-9.el7.x86_64.rpm
rpm -ivh libcap-2.22-9.el7.x86_64.rpm 
rpm -ivh libcap-devel-2.22-9.el7.x86_64.rpm

Download bản cuối vsftpd tại đây

cd /opt
wget https://security.appspot.com/downloads/vsftpd-3.0.3.tar.gz 
tar -xvf vsftpd-3.0.3.tar.gz cd vsftpd-3.0.3/
#Thực hiện cài đặt
make && make install

Tạo tài khoản người dùng FTP

useradd vsftpduser
passwd vsftpduser

Home directory mặc định của người dùng là /home/vsftpduser.

Thay đổi home directory của vsftpduser đến directory mà chúng ta chỉ định cho vsftpduser được phép truy cập.

usermod --home /var/www/example/ vsftpduser

Gán quyền cho người dùng ftp và thiết lập bảo mật

Chỉnh sửa tệp /etc/vsftpd.conf để gán quyền cho phép người dùng truy cập và thiết lập bảo mật.

  • Không cho phép truy cập anonymous

anonymous_enable=NO

  • Cho phép truy cập ftp từ người dùng đã tạo trên server
local_enable=YES
write_enable=YES

Cấu hình tùy chọn này cho phép truy cập FTP từ local users và được quyền write.

  • Cho phép hoặc từ chối đăng nhập ftp từ danh sách người dùng

Mặc định khi enable userlist thì thuộc tính userlist_deny là YES, vì vậy nếu user nằm trong danh sách userlist thì sẽ không login được FTP. Để cho phép chỉ user nằm trong userlist được phép login FTP và all users còn lại là DENY thì chúng ta thay đổi thuộc tính userlist_deny đến NO

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

Ở đây, chúng ta khai báo danh sách tài khoản user được phép login FTP vào tệp tin /etc/vsftpd/user_list và thực hiện add user trên một dòng của tệp tin. Khi đó thực hiện add user vào tệp tin /etc/vsftpd/user_list

echo "vsftpduser" >/etc/vsftpd/user_list

  • Cho phép user chỉ được phép login vào home directory

Nếu để cấu hình mặc định thì user mà login ftp có quyền truy cập tất cả thư mục, tệp tin được phân quyền trên hệ thống. Để đảm bảo tính bảo mật cho hệ thống, chúng ta sẽ cô lập user truy cập trong phạm vi home directory của người dùng đó. Sử dụng thuộc tính chroot cho phép chúng ta thực hiện việc này.

Một số tùy chọn cho chroot user

  • Cho phép chroot đến all users
chroot_list_enable=YES

chroot_list_enable=NO

  • Cho phép chroot một số user được chỉ định

chroot_local_user=NO

chroot_list_enable=YES

chroot_list_file=chroot_list_file=/etc/vsftpd/chroot_list

Khi đó thêm user ftp cần chroot vào tệp tin /etc/vsftpd/chroot_list

  • Không cho phép chroot một số user chỉ định
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=chroot_list_file=/etc/vsftpd/chroot_list

Note: Để cho phép có thể write vào chroot thì thêm tùy chọn sau vào tệp cấu hình

allow_writeable_chroot=YES

Start dịch vụ vsftpd và kiểm tra log in FTP

vsftpd &

Kiểm tra login FTP bằng dòng lệnh

ftp localhost

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

Bài viết liên quan

Leave a Reply

Your email address will not be published. Required fields are marked *