实战:用Linux构建高效FTP服务器
5.生成一个测试文件。先切换至virtual_user用户身份,然后在/ftpsite目录下创建一个文件: #su -virtual_user $vi /ftpsite/mytest This is a test file. $su - root 6.编辑/etc/vsftpd/vsftpd.conf文件,使其整个文件内容如下所示(去掉了注释内容): anonymous_enable=NO local_enable=YES local_umask=022 xferlog_enable=YES connect_from_port_20=YES xferlog_std_format=YES listen=YES write_enable=YES anon_upload_enable=YES anon_mkdir_write_enable=YES anon_other_write_enable=YES one_process_model=NO chroot_local_user=YES ftpd_banner=Welcom to my FTP server. anon_world_readable_only=NO guest_enable=YES guest_username=virtual_user pam_service_name=vsftp.vu 上面代码中,guest_enable=YES表示启用虚拟用户;guest_username=virtual则是将虚拟用户映射为本地用户,这样虚拟用户登录后才能进入本地用户virtual的目录/ftpsite;pam_service_name=vsftp.vu指定PAM的配置文件为vsftp.vu。 7.重新启动VSFTP #service vsftpd restart 8.以虚拟用户gou(Linux中并无该账号)进行测试: # ftp 127.0.0.1 Connected to 127.0.0.1 (127.0.0.1)。 220 Welcom to my FTP server. Name (127.0.0.1:root): gou 331 Please specify the password. Password: 230 Login successful. Have fun. Remote system type is UNIX. Using binary mode to transfer files. 测试下载服务器目录中的一个文件mytest: ftp》 get mytest local: mytest remote: mytest 227 Entering Passive Mode (127,0,0,1,159,19) 150 Opening BINARY mode data connection for mytest (21 bytes)。 226 File send OK. 21 bytes received in 0.00038 secs (54 Kbytes/sec) 测试上传本机目录中的文件vsftpd.conf: ftp》 !ls account.db chroot_list k mytest userconf vsftpd.conf ftp》 put vsftpd.conf local: vsftpd.conf remote: vsftpd.conf 227 Entering Passive Mode (127,0,0,1,117,203) 150 Ok to send data. 226 File receive OK. 4229 bytes sent in 0.00195 secs (2.1e+03 Kbytes/sec) 可以看到,使用没有系统账号的虚拟用户可以成功完成上传、下载的工作。但该FTP虚拟服务器只允许虚拟用户登录,其它系统用户无法登录,如系统用户user1不是虚拟用户,则不能登录该虚拟服务器。 # ftp 127.0.0.1 Connected to 127.0.0.1 (127.0.0.1)。 220 Welcom to my FTP server. Name (127.0.0.1:root): user1 331 Please specify the password. Password: 530 Login incorrect. Login failed. 在虚拟FTP服务器中,也可以对各个用户的权限进行设置。方法是在/etc/vsftpd.conf文件中添加如下一行: user_config_dir=用户配置文件目录 然后在用户配置文件目录下创建相应的用户配置文件,比如为上述名为gou的用户创建一个配置文件(假设配置文件目录为/etc/user_config_dir): #vi /etc/user_config_dir/gou write_enable=NO anono_upload_enable=NO 重启FTP服务器,这时再使用账号gou来登录,就已经没有上传的权限 (编辑:晋中站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |