CentOS7 vsftp 配置虛擬使用者
阿新 • • 發佈:2021-12-21
1、安裝
yum install vsftpd db4-utils
2、備份配置檔案
cd /etc/vsftpd/
cp vsftpd.conf vsftpd.src.conf
3、修改配置檔案如下
vim vsftpd.conf
listen=YES anonymous_enable=NO dirmessage_enable=YES xferlog_enable=YES xferlog_file=/var/log/vsftpd.log xferlog_std_format=YES chroot_list_enable=YES chroot_list_file=/etc/vsftpd/chroot_list chroot_local_user=YES guest_enable=yes guest_username=vsftpd user_config_dir=/etc/vsftpd/vsftpd_user_conf pam_service_name=vsftpd local_enable=YES pasv_enable=YES pasv_min_port=5090 pasv_max_port=6000
4、建立虛擬使用者賬戶檔案
vim /etc/vsftpd/userfile
user1 123456 user2 123456
5、根據虛擬使用者賬戶檔案生成虛擬使用者配置檔案vsftpd_login.db
db_load -T -t hash -f /etc/vsftpd/userfile /etc/vsftpd/vsftpd_login.db
chmod 600 /etc/vsftpd/vsftpd_login.db
6、配置虛擬使用者登入認證,註釋掉全部內容,新增下面的兩行,最終效果如下:
vim /etc/pam.d/vsftpd
#%PAM-1.0 auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login #session optional pam_keyinit.so force revoke #auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed #auth required pam_shells.so #auth include password-auth #account include password-auth #session required pam_loginuid.so #session include password-auth
7、限制虛擬使用者切換主目錄
vim /etc/vsftpd/chroot_list
user1
user2
8、建立配置檔案目錄
mkdir /etc/vsftpd/vsftpd_user_conf
9、按使用者名稱為每個使用者寫配置內容
僅下載許可權
vim /etc/vsftpd/vsftpd_user_conf/user1
anon_world_readable_only=NO
local_root=/home/vsftpd/user1
上傳、下載許可權,不能刪除、不能重新命名
anon_world_readable_only=NO write_enable=YES anon_upload_enable=YES anon_mkdir_write_enable=YES local_root=/home/vsftpd/user1
全部許可權:可上傳、下載、刪除和改名
write_enable=YES anon_world_readable_only=NO anon_upload_enable=YES anon_mkdir_write_enable=YES anon_other_write_enable=YES local_root=/home/vsftpd/user1
10、建立vsftpd使用者(與vsftpd.conf 檔案中的:guest_username=vsftpd 一致)
useradd -d /home/vsftpd -s /sbin/nologin vsftpd chown -R vsftpd:vsftpd /home/vsftpd
11、重啟vsftpd服務
systemctl vsftpd restart.service
注意:建議使用filezilla等工具進行登入,如果出現問題,有明確的問題提示。