- 添加虚拟用户口令文件
1
vi /etc/vsftpd/vftpuser.txt
添加虚拟用户名和密码,一行用户名,一行密码,以此类推。奇数行为用户名,偶数行为密码。
bobyuan #用户名
123456 #密码
markwang #用户名
123456 #密码 - 生成虚拟用户口令认证文件
将刚添加的vftpuser.txt虚拟用户口令文件转换成系统识别的口令认证文件。
首先查看系统有没有安装生成口令认证文件所需的软件db4-utils。
1 2
rpm –qa |grep db4-utils rpm –ivh db4-utils-4.3.29-9.fc6.i386.rpm
下面使用db_load命令生成虚拟用户口令认证文件。
1
db_load –T –t hash –f /etc/vsftpd/vftpuser.txt /etc/vsftpd/vftpuser.db
- 编辑vsftpd的PAM认证文件
在/etc/pam.d目录下,
1
vi /etc/pam.d/vsftpd
将里面其他的都注释掉,添加下面这两行:
1 2
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vftpuser account required /lib/security/pam_userdb.so db=/etc/vsftpd/vftpuser
- 建立本地映射用户并设置宿主目录权限
所有的FTP虚拟用户需要使用一个系统用户,这个系统用户不需要密码。1 2
useradd –d /home/vftpsite –s /sbin/nologin vftpuser chmod 700 /home/vftpsite
- 配置vsftpd.conf(设置虚拟用户配置项)
1
vi /etc/vsftpd/vsftpd.conf
1 2 3
guest_enable=YES #开启虚拟用户 guest_username=vftpuser #FTP虚拟用户对应的系统用户 pam_service_name=vsftpd #PAM认证文件
- 重启vsftpd服务
1
service vsftpd restart
- 测试虚拟用户登录FTP
1 2 3 4 5 6 7
C:/User/Administrator>ftp 192.168.120.240 连接到192.168.120.240。 220 Welcome to BOB FTP server 用户(192.168.120.240(none)):markwang 331 Please specify the password. 密码: 230 Login successful.
Q&A
在设置好ftp后使用xftp软件连接时可以连上但是提示如下,无法显示远程文件夹
问题原因
由于ftp连接模式port模式和pasv模式。设置ftp 链接模式为port (主动模式) ,ftp客户端一般默认使用的pasv(被动模式) 。如果不修改模式,用户链接服务器后,目录一直不能显示。所以要修改为主动模式。