一、安裝vsftpd
1、安裝vsftpd: yum install vsftpd -y
2、啟動vsftpd: systemctl start vsftpd
3、設置開機啟動:systemctl enable vsftpd
4、創(chuàng)建ftp根目錄: mkdir -p /ftpserver
二、設置配置文件:vim /etc/vsftpd/vsftpd.conf
listen=NO // 如此條改為了,等于YES也行
listen-address=172.16.0.236 // 綁定本機IP
#禁止匿名訪問
anonymous_enable=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
chroot_list_enable=NO // 不允許用戶離開自己的主目錄
chroot_list_file=/etc/vsftpd.chroot_list // 虛擬用戶列表,每行一個用戶名
local_enable=YES // 允許本地用戶訪問
write_enable=YES // 允許本地用戶寫入
local_umask=022 // 上傳后的文件的默認掩碼
chroot_local_user=YES // 禁止本地用戶離開自己的主目錄
pam_service_name=vsftpd.vu // 權限驗證需要的加密文件
guest_enable=YES // 開啟虛擬用戶功能
guest_username=ftp // 虛擬用戶的宿主目錄
virtual_use_local_privs=YES // 用戶登錄后操作目錄和本地用戶權限一樣
user_config_dir=/etc/vsftpd/vconf // 虛擬用戶主目錄設置文件
allow_writeable_chroot=YES // 允許寫入用戶主目錄,這條特別重要
三、添加用戶,并創(chuàng)建用戶目錄
1、vim /etc/vsftpd.chroot_list,添加兩個用戶如進去,分別為:
user1
user2
2、mkdir -p /ftpserver/user1 /ftpserver/user2 // 創(chuàng)建用戶目錄
3、chmod –R 755 /ftpserver/user1 /ftpserver/user2 // 修改目錄權限
四、設置用戶密碼和數據庫
1、echo -e "user1\n123456\nuser2\n123456" >/etc/vsftpd/vusers.list // 創(chuàng)建用戶和密碼
2、cd /etc/vsftpd
3、db_load –T –t hash –f vusers.list vusers.db
4、chmod 600 vusers.*
五、指定認證方式,添加如下內容 vim /etc/pam.d/vsftpd.vu
#%pam-1.0
auth required pam_userdb.so db=/etc/vsftpd/vusers
account required pam_userdb.so db=/etc/vsftpd/vusers
六、創(chuàng)建文件并指定ftp用戶目錄
1、mkdir –p /etc/vsftpd/vconf
2、cd /etc/vsftpd/vconf
3、touch user1 user2
4、添加內容,vim user1
local_root=/ftpserver/user1
5、vim user2
local_root=/ftpserver/user2
七、重啟服務即可訪問FTP:systemctl restart vsftpd
八、添加新用戶
1、創(chuàng)建新用戶目錄:mkdir -p /ftpserver/test1
2、 添加用戶名,vim /etc/vsftpd.chroot_list,添加內容: test1
3、修改目錄權限Chmod –R 755 /ftpserver/test1
4、添加用戶及密碼,vim /etc/vsftpd/vusers.list
test1 //用戶名
a123456 //密碼
5、設置數據庫
cd /etc/vsftpd
db_load –T –t hash –f vusers.list vusers.db
chmod 600 vusers.*
6、創(chuàng)建文件名文件,并指定用戶目錄
touch /etc/vsftpd/vconf/test1
vim /etc/vsftpd/vconf/test1
local_root=/ftpserver/test1
7、重啟服務即可:systemctl restart vsftpd
注意事項:
1、如讓用戶有寫入權限,則需給用戶目錄添加其它用戶的寫入權限: chmod o+w /ftpserver/jefflee
2、如還訪問不了,記得設置(打開:vim /etc/selinux/config):SELINUX=permissive