Linux下vsftpd虚拟用户建立方法Word格式.docx

上传人:b****5 文档编号:8430284 上传时间:2023-05-11 格式:DOCX 页数:19 大小:789.40KB
下载 相关 举报
Linux下vsftpd虚拟用户建立方法Word格式.docx_第1页
第1页 / 共19页
Linux下vsftpd虚拟用户建立方法Word格式.docx_第2页
第2页 / 共19页
Linux下vsftpd虚拟用户建立方法Word格式.docx_第3页
第3页 / 共19页
Linux下vsftpd虚拟用户建立方法Word格式.docx_第4页
第4页 / 共19页
Linux下vsftpd虚拟用户建立方法Word格式.docx_第5页
第5页 / 共19页
Linux下vsftpd虚拟用户建立方法Word格式.docx_第6页
第6页 / 共19页
Linux下vsftpd虚拟用户建立方法Word格式.docx_第7页
第7页 / 共19页
Linux下vsftpd虚拟用户建立方法Word格式.docx_第8页
第8页 / 共19页
Linux下vsftpd虚拟用户建立方法Word格式.docx_第9页
第9页 / 共19页
Linux下vsftpd虚拟用户建立方法Word格式.docx_第10页
第10页 / 共19页
Linux下vsftpd虚拟用户建立方法Word格式.docx_第11页
第11页 / 共19页
Linux下vsftpd虚拟用户建立方法Word格式.docx_第12页
第12页 / 共19页
Linux下vsftpd虚拟用户建立方法Word格式.docx_第13页
第13页 / 共19页
Linux下vsftpd虚拟用户建立方法Word格式.docx_第14页
第14页 / 共19页
Linux下vsftpd虚拟用户建立方法Word格式.docx_第15页
第15页 / 共19页
Linux下vsftpd虚拟用户建立方法Word格式.docx_第16页
第16页 / 共19页
Linux下vsftpd虚拟用户建立方法Word格式.docx_第17页
第17页 / 共19页
Linux下vsftpd虚拟用户建立方法Word格式.docx_第18页
第18页 / 共19页
Linux下vsftpd虚拟用户建立方法Word格式.docx_第19页
第19页 / 共19页
亲,该文档总共19页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

Linux下vsftpd虚拟用户建立方法Word格式.docx

《Linux下vsftpd虚拟用户建立方法Word格式.docx》由会员分享,可在线阅读,更多相关《Linux下vsftpd虚拟用户建立方法Word格式.docx(19页珍藏版)》请在冰点文库上搜索。

Linux下vsftpd虚拟用户建立方法Word格式.docx

(4)建立虚拟用户目录

建立好虚拟用户的PAM口令认证文件后,接下来还要创建虚拟用户的工作环境,在FTP服务器上创建一个用户,用来映射所有的虚拟用户,具体命令如下:

useradd–d/var/ftp–s/sbin/nologinvftp

在/var/ftp/创建目录并改变其属性和它的属主

useradd-d/var/ftp/testvftp

chmod700/var/ftp/test

在目录中添加test_file测试文件

(5)修改vsftpd.conf配置文件

Listen_yes

Anonymous_enable=no

Local_enable=yes

Write_enable=no

Anon_upload_enable=no

Anon_mkdir_write_enable=no

Anon_other_write_enable=no

Chroot_local_user=yes

Guest_enable=yes----------起用虚拟用户

Guest_username=vftp-----将虚拟用户映射为本地用户

Listen_port=5555

Max_client=10

Max_per_ip=1

Ftpd_banner=thisisavirtualserverandusers

Pam_service_name=ftp.v

注:

在主配置文件中给的权限越低,在后面分用户管理的时候对拥护的权限划分的空间就越大,因为主配置文件最高的限制服务先读主配置文件,然后再读用户的配置文件。

(6)创建单个虚拟用户配置文件

对每个虚拟用户,可分别设置不同的权限。

例如,为每个虚拟用户设置一个home目录,则该虚拟用户将不能访问其他用户的目录。

首先在vsftpd.conf配置文件中添加以下一行,用来指定个人配置文件的目录:

user_config_dir=/etc/vsftpd/vsftpd_user_conf

在/etc/vsftpd/目录中创建一个名为vsftpd_user_conf的目录,并在该目录中用每个虚拟用户的名称创建一个配置文件。

例如,使用以下命令创建虚拟用户名ftp1的配置文件:

vi/etc/vsftpd/vsftpd_user_conf/ftp1

在该文件中输入如下所示的配置选项。

local_root=/var/ftp/ftp1

anon_world_readable_only=no

write_enable=yes

anon_upload_enable=yes

anon_other_write_enable=yes

在/var/ftp目录中为每个虚拟用户创建一个个人目录,如为ftp1用户创建名为ftp1的目录。

将以上设置都完成以后,执行以下命令重启vsftpd进程:

servicevsftpdrestart

(7)测试虚拟用户

接下来测试虚拟用户的使用,在使用之前,先复制一些文件到/var/ftp/目录中以测试下载功能。

实验步骤:

为了更方便的测试实验环境,本实验采用ftpall作为所有员工的公共用户,xiaonuo作为每个用户的代表。

 

一、挂在第一张RHEL4安装光盘,并安装vsftpd软件包。

二、建立虚拟用户口令库文件

建立虚拟用户的口令库文件,文件中奇数行设置虚拟用户的用户名,偶数行设置用户的口令。

为了便于记忆可以将文件命名为.txt文件。

不过Linux下文件是不支持扩展名滴哦,只是为了标示而已。

注意:

用户的口令库文件中,不要存在空格和空行

三、生成vsftpd的认证文件

使用db_load命令生成认证文件,“-f”命令选项设置的值是虚拟用户的口令库文件,即vsftpd_login.txt,命令的参数设置为需要生成的认证文件名vsftpd_login.db,该文件必须放在“/etc/vsftpd/”中。

db_load是软件包db4_utils带的命令,在RHEL4是默认安装的,在RHEL5上没有安装,需要安装db4_utils这个软件包才支持db_load命令。

由于vsftpd的认证文件vsftpd_login.db里保存了所有虚拟用户的用户名和密码,为了增强其安全性,应当设置只有root才可以查看。

四、建立虚拟用户所需的PAM配置文件

修改/etc/pam.d/vsftpd文件

将默认配置全部用“#”注释在最后添加

authrequired/lib/security/pam_userdb.sodb=/etc/vsftpd/vsftpd_login

accountrequired/lib/security/pam_userdb.sodb=/etc/vsftpd/vsftpd_login

也可以另外建立一个文件,但是要在/etc/vsftpd/vsftpd.conf中将pam_service_name=vsftpd后面的值改为新建文件的名称。

五、建立虚拟用户及要访问的目录并设置相应的权限。

建立vsftpd虚拟目录所需的系统公共用户账号,账号名为ftpall,指定用户的宿主目录是“/var/ftp/ftpall”

建立vsftpd虚拟目录所需的系统单用户账号,账号名为xiaonuo,指定用户的宿主目录是“/var/ftp/xiaonuo”

参数“-d”是建立用户之后,并将自己的宿主目录指向指定的位置。

用户名和宿主目录名称最好一样,便于记忆。

这些用户都会存放在系统的/etc/passwd下,并且用户密码都存放在vsftpd认证文件中。

所以是不能用虚拟用户登录系统的,安全性自然而然也加强了。

建立的虚拟用户的宿主目录默认都是700权限,由于ftpall是公共目录,是不允许普通用户修改、添加、删除和重命名的,所以将其改成500(读+执行)即可。

参数“-R”是修改用户宿主目录以及目录里所有子文件的属性。

六、设置vsftpd.cong主配置文件。

在对vsftpd.conf配置文件进行修改前,应先将原有的文件进行备份,以便出现配置错误时可进行恢复。

在vsftpd.conf配置文件中添加虚拟用的配置项,内容如下:

anonymous_enable=NO禁用匿名用户登录

local_enable=YES启用本地用户登录(本质上是为了能够让虚拟用户登录)

chroot_local_user=YES将所有本地用户限制在自己的目录中

pam_service_name=vsftpd配置vsftpd使用的PAM模块为vsftpd

user_config_dir=/etc/vsftpd/users_config设置虚拟账户配置文件的主目录为/users_config(后面创建)

max_clients=100设置FTP服务器最大接入客户端数为100个

max_per_ip=3设置每个IP地址最大连接数为3个

local_max_rate=300000FTP服务器的本地用户最大传输速率设置为300KB/s

anon_max_rate=100000FTP服务器匿名用户最大传输速率设置为100KB/s

七、设置公用用户ftpall的配置文件

首先创建虚拟用户配置文件的主文件夹users_config,并在此文件夹下建立虚拟用户的文件ftpall和xiaonuo。

在/etc/vsftpd/user_config/ftpall配置文件中添加虚拟用的配置项,内容如下:

guest_enable=YES开启虚拟账户登录

guest_username=ftpall设置ftpall对应的系统账户为ftpall

anon_world_readable_only=NO允许用户浏览FTP目录和下载文件

anon_max_rate=100000限制传输速率为100KB/s

八、设置单用户xiaonuo的配置文件

在/etc/vsftpd/user_config/xiaonuo配置文件中添加虚拟用的配置项,内容如下:

guest_username=xiaonuo设置xiaonuo目录对应的系统账户为xiaonuo

anon_other_write_enable=YES允许用户进行文件改名和删除文件的权限

anon_mkdir_write_enable=YES表示用户具有建立和删除目录的权利

anon_upload_enable=YES表示用户可以上传文件

anon_max_rate=300000限制传输速度为300KB/s

通过对以上配置项的组合设置,vsftpd可以为每个虚拟用户配置不同的FTP权限,用户配置文件中没有的配置项将按照vsftpd.conf配置文件中的内容设置。

九、重新启动vsftpd服务,使所有配置文件的设置生效。

使用/etc/rc.d/init.d/vsftpdrestart或者servicesvsftpdrestart命令重新启动vsftpd服务。

十、测试公共用户ftpall的权限。

在测试之前,首先在/var/ftp/ftpall和/var/ftp/xiaonuo中创建文件和文件夹做测试用。

公共用户ftpall使用常用的IE浏览器进行访问FTP服务器,测试ftpall的权限。

将客户机机上的文件复制到FTP服务器上提示出错,测试成功!

重命名FTP服务器上的文件提示出错,测试成功!

删除FTP服务器上的文件提示出错,测试成功!

重命名FTP服务器上的文件夹提示出错,测试成功!

将FTP服务器上的文件拖拽的本地文件夹中,测试成功。

整个测试过程说明使用ftpall用户登录FTP服务器,只能下载文件,不允许增加、删除、修改、重命名文件或文件夹。

十一、测试xiaonuo用户

使用命令提示符窗口测试虚拟用户xiaonuo的权限。

首先使用匿名用户登录,可以看到登录失败,原因是因为在主配置文件vsftpd.conf的anonymous_enable=NO的缘故,如果开启,则登录成功,而且能够看到所有用户的宿主目录名称,虽然不能访问,但如果恶意用户使用用户名猜测密码则会造成一定的危害。

使用虚拟用户xiaonuo登录FTP服务器。

使用dir或者ls–l命令可以查看到xiaonuo用户宿主目录里的内容,而ftpall里的内容是看不到的,这也就实现了用户目录的隔离。

使用get命令下载文件到本地测试成功。

使用put命令上传文件到FTP服务器上测试成功

使用rename命令重命名FTP服务器上的文件测试成功。

使用rename命令重命名FTP服务器上的文件夹测试成功。

使用delete删除FTP服务器上的文件测试成功。

使用rmdir删除FTP服务器上的空目录测试成功。

下载速度或者上传速度的测试,可将速度调整低一点,便可以看出效果来。

通过上面的实验可以看出,所有员工使用公共虚拟用户ftpall登录FTP服务器只能查看和下载FTP服务器上共享的文件,而每个员工使用分发的虚拟用户名登录FTP服务器可以实现添加、删除、修改、查询宿主目录里的文件或文件夹,这也就实现了Dreanfire公司的业务需求,同时也增强了FTP服务器的安全性。

Vsftpd虚拟用户设置

出自Ubuntu中文

本文作者:

dbzhang800

授权许可:

创作共享协议

适用版本:

文章状态:

完成

目录

[隐藏]

∙1目标

∙2创建虚拟用户数据库

o2.1创建文本文件loguser.txt

o2.2生成数据库

∙3配置PAM文件

∙4为虚拟用户创建本地系统用户

∙5/etc/vsftpd.conf

∙6/etc/vsftpd_user_conf

∙7完成

目标

首先我们假定你已经安装了vsftpd,并在/home/ftp目录下建立了以下两个子目录

∙dbzh1

∙dbzh2

下面,我们要建3个虚拟用户,密码分别是用户名后加"

00"

∙db1

∙db2

∙db3

使得

∙用户db1的主目录为dbzh1,在该目录下只有只读权限

∙用户db2的主目录为dbzh2,在该目录下只有只读权限

∙用户db3的主目录为dbzh1,在该目录下拥有所有权限

创建虚拟用户数据库

创建文本文件loguser.txt

格式如下:

user_id

password

于是,我们loguser.txt文件的内容为

db1

db100

db2

db200

db3

db300

生成数据库

如果你以前没装过libdb4.6-util或者你不清楚装没装,需先执行下面的命令

sudoapt-getinstalldb4.6-util

然后,我们执行

sudodb4.6_load-T-thash-floguser.txt/etc/vsftpd_login.db

最后设置一下数据库文件的访问权限

sudochmod600/etc/vsftpd_login.db

配置PAM文件

新建/etc/pam.d/vsftpd.vu内容如下:

authrequired/lib/security/pam_userdb.sodb=/etc/vsftpd_login

accountrequired/lib/security/pam_userdb.sodb=/etc/vsftpd_login

∙我们上一步建立的数据库vsftpd_login在此处被使用

∙我们建立的虚拟用户将采用PAM进行验证,这是通过/etc/vsftpd.conf文件中的语句pam_service_name=vsftpd.vu来启用的,稍后你将发现。

为虚拟用户创建本地系统用户

新建一个系统用户virtual,用户家目录为/home/ftp,用户登录终端设为/bin/false(即使之不能登录系统)

sudouseraddvirtual-d/home/ftp-s/bin/false

sudochownvirtual:

virtual/home/ftp

/etc/vsftpd.conf

根据需要创建/etc/vsftpd.conf,一般要确保含有一下设置:

listen=YES

anonymous_enable=NO

dirmessage_enable=YES

xferlog_enable=YES

xferlog_file=/var/log/vsftpd.log

xferlog_std_format=YES

chroot_local_user=YES

guest_enable=YES

guest_username=virtual

user_config_dir=/etc/vsftpd_user_conf

pam_service_name=vsftpd.vu

local_enable=YES

secure_chroot_dir=/var/run/vsftpd

到现在为止,我们的3个用户都可以工作了,可是它们的根目录现在都是/home/ftp,权限也都一样。

那么怎么才能完成我们预定的目标呢?

/etc/vsftpd_user_conf

在上面的配置中,有这么一行

user_config_dir=/etc/vsftpd_user_conf

现在,我们要把各个用户的配置文件放到目录/etc/vsftpd_user_conf中

sudomkdir/etc/vsftpd_user_conf

cd/etc/vsftpd_user_conf

sudotouchdb1db2db3

db1文件中的内容如下

local_root=/home/ftp/dbzh1

同样,db2文件中的内容

local_root=/home/ftp/dbzh2

那么,db3的内容呢?

其实也很简单

write_enable=YES

anon_world_readable_only=NO

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

完成

重启vsftpd我们就可以看到效果了^_^

/etc/init.d/vsftpdstart|restart

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2