CentOS7服务器环境下vsftpd安装及配置方法

2019-01-16 22:06:40丽君

C:Usersxiaor>ftp 192.168.5.147 连接到 192.168.5.147。 220 (vsFTPd 3.0.2) 200 Always in UTF8 mode. 用户(192.168.5.147:(none)): anonymous 331 Please specify the password. 密码: 230 Login successful. ftp> ftp> ls 200 PORT command successful. Consider using PASV. 425 Failed to establish connection. ftp>

解决方法:

可以在ftp下使用命令:quote PASV 

4x:虚拟用户配置(重头戏,最推荐)

1、添加虚拟用户口令文件并生成认证文件

[root@localhost vsftpd]# vi /etc/vsftpd/vuser.txt [root@localhost vsftpd]# yum -y install db4-utils [root@localhost vsftpd]# db_load -T -t hash -f /etc/vsftpd/vuser.txt /etc/vsftpd/vuser.db

2、编辑vsftpd的PAM认证文件

[root@localhost vsftpd]# vi /etc/pam.d/vsftpd 在其文件中添加下面两行,并注释其它行 auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser #%PAM-1.0 #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 auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser

3、建立本地映射用户并设置宿主目录权限

[root@localhost vsftpd]# useradd -d /home/vftproot -s /sbin/nologin vuser [root@localhost vsftpd]# ll /home/ [root@localhost vsftpd]# chmod 555 /home/vftproot/ [root@localhost vsftpd]# ll /home/

4、修改配置文件,重启vsftpd服务,并测试

[root@localhost vsftpd]# vi /etc/vsftpd/vsftpd.conf guest_enable=YES guest_username=vuser pam_service_name=vsftpd [root@localhost vsftpd]# systemctl restart vsftpd.service

5、调整虚拟用户权限,并继续设置:到此下载可以但上传是不是行的

[root@localhost vsftpd]# vi /etc/vsftpd/vsftpd.conf anonymous_enable=NO local_enable=YES anon_upload_enable=YES anon_mkdir_write_enable=YES anon_other_write_enable=YES [root@localhost_centos vsftpd]# systemctl restart vsftpd.service  [root@localhost vsftpd]# mkdir /home/vftproot/pub  [root@localhost vsftpd]# chmod 777 /home/vftproot/pub  [root@localhost vsftpd]# ll -d /home//vftproot/pub  drwxrwxrwx. 2 root root 4096 Nov 12 16:33 /home//vftproot/pub

至此虚拟用户上传也是可以了!

C:Usersxiaor>ftp 192.168.5.147 连接到 192.168.5.147。 220 (vsFTPd 3.0.2) 200 Always in UTF8 mode. 用户(192.168.5.147:(none)): ftpxrl 331 Please specify the password. 密码: 230 Login successful. ftp> ls 200 PORT command successful. Consider using PASV. 150 Here comes the directory listing. pub t1.txt 226 Directory send OK. ftp: 收到 16 字节,用时 0.00秒 16000.00千字节/秒。 ftp> cd pub 250 Directory successfully changed. ftp> put abc.txt 200 PORT command successful. Consider using PASV. 150 Ok to send data. 226 Transfer complete. ftp>