一:简介
ftp中的用户:
1.系统实体账户:这些账户默认登录的家目录是自己的home目录,并且可以任意切换目录,如果要使用系统帐号作为ftp帐号,最好让将这些用户禁锢在自己的家目录中,并
且设置这些用户的shell为/sbin/nologin
2.匿名用户:一般就给下载权限即可,默认登录后的主目录在/var/ftp
3.虚拟账户:相对比较安全这些用户都不是系统账户,只具有对ftp的相关操作权限,可以自定义用户主目录
虚拟账号即是系统中不存在的帐号,其目的是实现安全
二:案例
案例要求:使用虚拟账号登录ftp服务器
配置步骤:
编辑虚拟账号
[root@localhost vsftpd]# vim viruser.txt
test
123
test1
123
test2
123
~
把虚拟账号文件转变成数据库
首先安装db4-utils-4.3.29-10.el5.i386.rpm
[root@localhost Server]# rpm -ivh db4-utils-4.3.29-10.el5.i386.rpm
Preparing... ########################################### [100%]
1:db4-utils ########################################### [100%]
[root@localhost vsftpd]# db_load -T -t hash -f viruser.txt viruser.db
编辑接口文件
[root@localhost vsftpd]# vim /etc/pam.d/vsftpd
#%PAM-1.0
auth required pam_userdb.so db=/etc/vsftpd/viruser
account required pam_userdb.so db=/etc/vsftpd/viruser
虚拟账号映射到真实帐号
建立帐号
[root@localhost vsftpd]# useradd user8
编辑vsftpd配置文件
[root@localhost vsftpd]# vim /etc/vsftpd/vsftpd.conf
129 guest_enable=YES
130 guest_username=user8
进入user8家目录,新建文件
[root@localhost ~]# cd /home/user8
[root@localhost user8]# touch nxl
修改权限
[root@localhost home]# chmod a+rx user8
[root@localhost vsftpd]# service vsftpd restart
关闭 vsftpd: [确定]
为 vsftpd 启动 vsftpd: [确定]
测试:
设置匿名帐号和本地账号速度
编辑配置文件
[root@localhost home]# vim /etc/vsftpd/vsftpd.conf
anon_max_rate=100000
local_max_rate=1000000
创建一个文件用于测试
[root@localhost pub]# cd /var/ftp/pub/
[root@localhost pub]# dd if=/dev/zero of=nxl bs=1M count=1
1+0 records in
1+0 records out
1048576 bytes (1.0 MB) copied, 0.00297739 seconds, 352 MB/s
[root@localhost pub]# ll
总计 1028
-rw-r--r-- 1 root root 1048576 08-20 00:03 nxl
[root@localhost home]# service vsftpd restart
关闭 vsftpd: [确定]
为 vsftpd 启动 vsftpd: [确定]
用匿名帐号登录
用系统帐号登录