环境:AS4;vsftpd2.0.1(系统自带rpm包);
1 在进行FTP服务器配置之前,首先要确认LINUX系统中是否已经安装了FTP服务器软件包,Red Had Linux AS 4提供了FTP服务器的rpm包,使用如下命令检查:
# rpm –qa |grep vsftpd
结果现实为:
vsftpd-2.0.1-5.EL4.5
如果没有安装,则需要 Red Had Linux AS 4 安装盘来安装。
2 创建相应的实体用户和用户的操作目录、创建虚拟的公共目录操作目录
#groupadd future #创建我的ftp用户组
#useradd –g future test #创建实体用户test并隶属于future组
#passwd test
#mkdir –p /home/test/pub #创建用户test的操作目录pub
#mkdir –p /var/ftp/pub #创建虚拟的公共目录操作目录( 让匿名用户登陆后访问的也是该目录)默认是已经创建好的
3 将创建的目录权限改为770
#chmod –R 770 /home/test/pub
#chmod –R 770 /var/ftp/pub
4 将test用户的/pub目录挂载到 /ftp/pub,这样 /ftp/pub目录和test用户家目录下的pub文件夹是公共同步的。所有的对虚拟公共目录的操作都是对/ftp/pub目录的操作
#mount --bind /var/ftp/pub /home/test/pub
注:
对于大量用户,需要开机启动挂载则编辑/etc/rc.d/rc.local
在文档的最后添加:
mount --bind /var/ftp/pub /home/test/pub
让test用户有权限访问/var/ftp/pub
#chown –R test.future /var/ftp/pub
5匿名用户权限
打开vsftpd.conf(/etc/vsftpd/vsftpd.conf)配置文件
#vi /etc/vsftpd/vsftpd.conf
anonymous_enable=YES //允许匿名登陆
anon_upload_enable=YES //允许匿名上传
write_enable=YES //匿名用户对文件系统的上传目录有写的权限
anon_world_readable_only=NO //开放匿名用户的浏览权限
设置完后,重启vsftp服务(#service vsftpd restart),测试ftp是否正常登录.
6 若要增加、删除ftp用户:
添加ftp用户如test1
#useradd –g future test1
#mkdir –p /home/test1/pub
#mount --bind /var/ftp/pub /home/test1/pub
#vi /etc/rc.d/rc.local
#在最后一行添加
mount --bind /var/ftp/pub /home/test1/pub
删除ftp用户如test1:
#userdel test1
#umount /home/test1/pub
#cd /home
#rm –rf test1
#vi /etc/rc.d/rc.local
#删除最后一行于test相关的内容
mount --bind /var/ftp/pub /home/test1/pub
注意事项:/ftp/pub目录和每个用户家目录下的pub文件夹是公共同步的,应防止其联动更改属组及权限。如需要更改test用户目录权限,则需执行
#umount /home/test/pub
然后使用相应的chown或chmod;