FTP(File Transfer Protocol,文件传输协议)是典型的C/S结构的应用层协议,需要由服务端软件、客户端软件两个部分共同实现文件传输功能。FTP连接有两种模式:主动模式(服务器主动发起数据连接)和被动模式(服务器被动等待数据连接)。 下面我将在Redhat6.5中搭建ftp服务,包括匿名用户登录,普通用户身份验证登录,黑名单,虚拟用户登录,并在win7客户端进行登录验证 1、在Linux中安装ftp软件包 2、开启ftp服务 3、此时便可以在win7中使用匿名用户ftp进行登录,无密码,在此之前需关闭Linux防火墙和安全功能 4、添加zhangsan和lisi用户,并且可以身份验证访问ftp服务 此时zhangsan,lisi可正常登录ftp,但有缺点就是其可以自由游走,切换目录,安全性较低 5、编辑ftp配置文件/etc/vsftpd/vsftpd.conf禁锢家目录使登录ftp的用户不可随意切换目录 6、将zhangsan加入user_list文件中,user_list默认为黑名单,则zhangsan便不可登录ftp服务,lisi可正常登录 若想uesr_list变为白名单,则只要在ftp配置文件末尾加入:userlist_deny=NO即可 7、建立lisa,tom虚拟用户账户使用ftp 8、将vuser文件转换成数据库文件,并给vuser和转换后的vuser.db数据库文件设置权限,不让别人看见里面的信息 9、创建一个用户为vuser 指定家目录/opt/vuser 并不使用shell登陆 10、编辑pam认证模块支持虚拟用户的登陆,在文件中写入 auth required pam_userdb.so db=/etc/vsftpd/vuser account required pam_userdb.so db=/etc/vsftpd/vuser 11、编辑ftp配置文件,开启虚拟用户,使用pam认证登陆 12、重启ftp服务:service vsftpd restart,在win7客户端使用虚拟用户进行登录