yum 安裝 vsftpd 程式:
yum install vsftpd -y
2 、修改配置檔案
vi /etc/vsftpd/vsftpd.conf
#虛擬使用者配置檔案的目錄
user_config_dir=/etc/vsftpd/ftpuser
#是否允許 anonymous 登入 FTP 站羣服務器
anonymous_enable=NO
#//是否允許本地使用者登入 FTP 站羣服務器, 預設是允許
local_enable=YES
#//是否允許使用者具有在 FTP 站羣服務器檔案中執行寫的許可權, 預設是允許
write_enable=YES
local_umask=022
anon_upload_enable=YES
virtual_use_local_privs=yes
anon_mkdir_write_enable=YES
anon_world_readable_only=YES
xferlog_enable=YES
connect_from_port_20=YES
listen_port=21
ftp_data_port=20
xferlog_file=/var/log/xferlog
xferlog_std_format=NO
ftpd_banner=Welcome to FTP service
chroot_local_user=yes
listen=YES
userlist_enable=YES
tcp_wrappers=YES
syslog_enable=yes
port_enable=YES
chown_uploads=YES
#設定 PAM 認證服務的配置檔名稱, 該檔案存放在/etc/pam.d/目錄下
pam_service_name=meizu_ftp
#是否啓用來賓使用者 (也就是啓用虛擬使用者)
guest_enable=YES
#如果啓用了虛擬使用者後上傳檔案修改檔案的使用者名稱
guest_username=mzftp
use_localtime=YES
connect_timeout=600
data_connection_timeout=600
idle_session_timeout=600
3 、在/etc/vsftpd/下建立存放虛擬使用者的認證檔案
mkdir /etc/vsftpd/ftpuser
4 、為虛擬使用者建立對應的檔案,如:ftptest
vim /etc/vsftpd/ftpuser/ftptest
local_root=/data/ftpdata/ftp1
anon_world_readable_only=no
write_enable=yes
anon_upload_enable=yes
anon_mkdir_write_enable=YES
anon_other_write_enable=yes
建立 ftptest 虛擬使用者對應的 ftp 存放目錄: mkdir -p /data/ftpdata/ftp1
5 、生成虛擬使用者的賬號密碼 db 資料庫檔案
vim /etc/vsftpd/login.txt   #奇數行 使用者名稱,雙數行 密碼
ftptest
test123456
mzwentai
wentai@111.com
db_load -T -t hash -f /etc/vsftpd/login.txt /etc/vsftpd/login.db
(ps: 增加使用者是重複這部操作)
6 、更改 pam 認證模組
vim /etc/pam.d/meizu_ftp  #這個檔名要與主配置檔案中的 pam_service_name 指定的一致,最後面的 login 就是 login.db,但是這裏的字尾是不需要寫的
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/login
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/login
7 、建立使用者 mzftp ,賦 mzftp 目錄許可權 #這個要與主配置檔案中的 guest_username 指定的一致
useradd -s /sbin/nologin mzftp
chown -R mzftp.mzftp /data/ftpdata/ftp1
8 、啓動服務
service vsftpd start
測試:
在我的電腦上輸入 ftp://10.3.135.199 登陸,使用者密碼登陸 ftptest/test123456
新建個資料夾,然後從我的電腦複製個檔案,貼上過去,有許可權表示測試成功