基于VSFTPD的ftp服务的搭建-实验报告
[*]实验环境:fedora 10
[*]安装
vsftpd- //主要的包
db4-utils //一个负责生成db的工具包
[*]运行
安装好了以后不需要多少修改即可启动服务,默认的配置即可匿名登录。
lftp localhost即可测试本机ftp服务。
[*]关于拒绝访问的用户
在/etc/vsftpd 目录下user_list以及ftpuser两个文件记录了不允许访问的用户黑名单。
[*]虚拟用户帐户
为了提高系统安全性,以及避免创建大量的系统用户,我们可以创建虚拟用户账户给用户使用。
[*]首先写好一个用户账户文件,我在/etc/vsftpd下创建了virtualusers这个文件,写入以下内容:
kitty #用户名
123456 #密码
jack
54321
为了安全起见,把virtualusers这个文件权限改为640
[*]写好后,在当前目录下执行以下这条命令
db_load -T -t hash -f virtualusers virtualusers.db 后面那个文件将被生成在当前目录下面。
[*]修改主配置文件 /etc/vsftpd/vsftpd.conf,在最后加入:
guest_enable=YES
guest_username=vftpuser #指定登录后以哪个用户名操作
user_config_dir=/etc/vsftpd/vconf #虚拟用户的单独配置
chroot_local_user=YES #启用chroot
user_sub_token=$USER
同时,我们修改anonymous_enable=NO anon_upload_enable=NO anon_mkdir_write_enable=NO
[*]若需要修改虚拟用户上传的文件Umask,需要在主配置内加入以下几条:
virtual_use_local_privs=YES
chmod_enable=YES
local_umask=022
[*]这样主配置里的匿名用户的使用就给禁用了。接下来我们创建vconf目录,并且在这个目录下创建单用户的配置如下:
kitty文件:
local_root=/var/kitty #登录后的主目录
anon_root=/var/kitty #这些配置在登录后会覆盖掉主配置中的选项
write_enable=YES
anon_world_readable_only=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
类似的也创建并写一个jack文件。
[*]修改vsftpd的pam的配置
配置文件地址在/etc/pam.d/vsftpd的这个位置。在前面增加如下内容:
auth sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/virtualusers crypt=hash
account sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/virtualusers crypt=hash
如果是64位系统,这里调用lib64
[*]最后我们创建/var/jack和/var/kitty这两个目录,并且修改owner为vftpuser
[*]重启服务,测试
lftp jack@localhost
之后输入我们配置的密码54321,就会进入自己的主目录了。
页:
[1]