先还是放入REHL 的安装光盘(一般来说REHL4的安装光盘有4张的但为了使用方便我就集成了一张)
在linux的系统下一般用的都是vsftp
进入到安装的目录下
#cd /media/cdrom/RedHat/RPMS
查找vsftp的安装包
#ll *vsftp*
安装vsftp
#rpm -ivh vsftpd*
建立口令库文件以便搭建server好之后再客户机上访问
#vi /login.txt
mike
123
john
321
其中奇数行是用户的password 偶数行则是用户名
生成vsftpd的认证文件,先安装db4
#ll  *db4-utils*
#rpm -ivh  db4-utils*
#db_load  -T  -t hash -f /logins.txt /etc/vsftpd//vsftpd_login.d
在/etc/pam.d目录中建立vsftpd的虚拟用户身份认证所需的PAM配置文件:
#vi /etc/pam.d/vsftpd.vu
auth  required /lib/security/pam_userdb.so  db=/etc/vsftpd/vsftpd_login
account required /lib/security/pam_userdb.so  db=/etc/vsftpd/vsftpd_login
建立vsftpd虚拟用户所需的系统用户账号。名为virtual,并指定用户的宿主目录是/home/ftpsite,设置宿主目录的权限威可读写
#useradd -d /home/ftpsite virtual
#chmod 700 /home/ftpsite
在vsftpd的主配置文件中添加虚拟用户的配置项;
#vim /etc/vsftpd/vsftpd.conf
guest_enable=YES
guest_username=virtual
pam_service_name=vsftp.vu
在/home/ftpsite下建立文件夹方便测试
#touch  /home/ftpsite/afile
重启vsftpd服务:
# service  vsftpd restart
现在我们可以访问vsftpd server  在widnows  clienter的IE浏览器键入ftp ://servip
但当我们拿虚拟用户 Mike或John登录的时候可以在页面上发现什么也没有,这到底 是怎么回事呢?当然是权限的问题和用户配置文件目录。现在我们就离建立用户配置文件目录
先在vsftpd的配置文件中添加用户配置文件目录设置
#vi /etc/vsftpd/vsftpd.conf
user_config_dir=/etc/vsftpd_user_conf
现在使用mkdir建立用户配置文件目录
#mkdir  /etc//vsftpd_user_conf
然后是为虚拟用户单独建立配置文件用户配置文件名称与用户名是相同的
#touch  /etc/vsftpd_user_conf/mike
#touch  /etc/vsftpd_user_conf/john
并在配置问件目录中添加权限下面是权限举例:
anon_world_readable_only=NO  表示用户可以浏览FTP目录和下载文件
anon_upload_enable=YES           表示用户可以上传文件
anon_mkdir_write_enable=YES   表示用户具有建立和删除目录的权限
ano_other_write_enable=YES      表示  用户具有文件改名和删除文件的权限
做完这些之后我们再一次启动服务,然后在客户机上验证。
补充内容:
在linux的ftp server中的资源限制还是有很多的比如我们现在来做这个小的综合:
       ftp Server允许本地用户和匿名用户登录;ftp Server的本地用户在登录时需要被禁锢在宿主目录中;ftp Server的所有客户端最大连接数不超过100个;同一ip地址的ftp客户机与FTP  Server建立的最大连接数不超过5个;FTP Server的本地用户最大传输速率设置为50KB;匿名用户最大传输速率为20KB。就需要我们在vsftpd.conf进行以下配置:
anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connenct_from_port_20=YES
xferlog_std_format=YES
pam_service_name=vsftpd
userlist_enable=YES
listen=YES
tcp_wrappers=YES
chroot_local_user=YES
max_clients=100
max_per_ip=5
local_max_rate=500000
anon_max_rate=200000