1.檢視是否安裝了vsftpd服務
rpm -qa|grep vsftpd
2.如果沒有安裝,進行安裝vsftp服務
yum -y install vsftpd
3.配置vsftpd檔案
vi /etc/vsftpd/vsftpd.conf
備註:最好備份一下,防止改錯了啟動不了。cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.back
配置檔案的內容如下
anonymous_enable=no#設定不允許匿名訪問
local_enable=yes#設定本地使用者可以訪問。注:如使用虛擬宿主使用者,在該專案設定為no的情況下所有虛擬使用者將無法訪問
chroot_list_enable=yes#使使用者不能離開主目錄
chroot_list_file=/etc/vsftpd/chroot_list
ascii_upload_enable=yes
pam_service_name=vsftpd#pam認證檔名pam將根據/etc/pam.d/vsftpd進行認證
#已下三個請在配置檔案中手動新增
guest_enable=yes#設定啟用虛擬使用者功能
guest_username=ftp#指定虛擬使用者的宿主使用者,centos中已經有內建的ftp使用者了
user_config_dir=/etc/vsftpd/vuser_conf#設定虛擬使用者個人vsftp的centos ftp服務檔案存放路徑。存放虛擬使用者個性的centos ftp服務檔案(配置檔名=虛擬使用者名稱
建立4.chroot_list檔案,並把vftpd.conf配置檔案中的guest_username(這裡是ftp)寫入即可
vi /etc/vsftpd/chroot_list
按 i 寫入自己的賬號名稱 這裡我是寫人 ftp 然後儲存
5. 建立使用者密碼檔案/etc/vsftpd/vuser_passwd.txt ,注意奇行是使用者名稱,偶行是密碼
6. 生成虛擬使用者認證的db檔案
db_load -t -t hash -r /etc/vsftpd/vuser_passwd.txt /etc/vsftpd/vuser_passwd.db
7. 編輯認證檔案/etc/pam.d/vsftpd
把注釋去掉,然後加上已下幾條
注:db=/etc/vsftpd/vuser_passwd 中的vuser_passwd 是你生成的虛擬使用者的db檔案
檢視系統版本號: getconf long_bit
系統為32位:
auth required pam_userdb.so db=/etc/vsftpd/vuser_passwd account required pam_userdb.so db=/etc/vsftpd/vuser_passwd
系統為64位:
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_passwd account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_passwd
8. 建立虛擬使用者配置檔案
mkdir /etc/vsftpd/vuser_conf/
vi /etc/vsftpd/vuser_conf/xzhftp //檔名等於vuser_passwd.txt裡面的賬戶名,否則
9. 設定使用者配置檔案內容
local_root=/var/www/html#虛擬使用者根目錄,根據實際情況修改 該目錄必須要有讀寫許可權 chmod -r 777 目錄
write_enable=yes //可寫
anon_umask=022 //掩碼
anon_world_readable_only=no
anon_upload_enable=yes
anon_mkdir_write_enable=yes
anon_other_write_enable=yes
10. 設定selinux
我這裡吧 selinux=disabled
vi /etc/selinux/config
11. 啟動vsftpd服務
service vsftpd start
centos7啟動: systemctl start vsftpd.service
12. 新增使用者
useradd -g root -m -d /var/www/html -s /sbin/nologin ftpuser
如果報錯可以選擇這種
useradd zbphp.com -d /var/virtual/zbphp.com
設定使用者密碼
passwd ftpuser
最後添上新增使用者ftp出現連線500的錯誤
vsftpd:500 oops: vsftpd: refusing to run with writable root inside chroot ()錯誤的解決方法
從2.3.5之後,vsftpd增強了安全檢查,如果使用者被限定在了其主目錄下,則該使用者的主目錄不能再具有寫許可權了!如果檢查發現還有寫許可權,就會報該錯誤。
要修復這個錯誤,可以用命令chmod a-w /home/user去除使用者主目錄的寫許可權,注意把目錄替換成你自己的。或者你可以在vsftpd的配置檔案中增加下列新增一項:
allow_writeable_chroot=yes
vsftp賬號 VSFTP使用者許可權配置
vsftpd.conf檔案 connect from port 20 yes anonymous enable no write enable yes local umask 002 listen port 21 listen yes pasv enable yes use localtime ye...
vsftp配置手冊
使用vsftp 程式及pam 元件來完成vsftp 搭建,實現ftp 功能。1.ftp功能 2.使用者鎖定目錄 3.4.不使用系統帳戶驗證 5.多使用者支援 vsftpd 2.0.7 db4 devel 4.2.52 7.1 db4 4.2.52 7.1 db4 utils 4.2.52 7.1元件...
vsftp 配置錯誤
在配置了vsftpd 服務後,發現雖然能夠登陸,但是有如下錯誤 cannot change directory home 500 oops cannot change directory home 500 oops child died 解決方法 在終端輸入命令 setsebool ftpd dis...