千家信息网

CentOS5.3系统设置vsftpd虚拟用户的详细步骤

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章主要介绍"CentOS5.3系统设置vsftpd虚拟用户的详细步骤",在日常操作中,相信很多人在CentOS5.3系统设置vsftpd虚拟用户的详细步骤问题上存在疑惑,小编查阅了各式资料,整理
千家信息网最后更新 2026年11月01日CentOS5.3系统设置vsftpd虚拟用户的详细步骤

这篇文章主要介绍"CentOS5.3系统设置vsftpd虚拟用户的详细步骤",在日常操作中,相信很多人在CentOS5.3系统设置vsftpd虚拟用户的详细步骤问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"CentOS5.3系统设置vsftpd虚拟用户的详细步骤"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

我们登录FTP有三种方式,匿名登录、本地用户登录和虚拟用户登录。

匿名登录:在登录FTP时使用默认的用户名,一般是ftp或anonymous。

本地用户登录:使用系统用户登录,在/etc/passwd中。

虚拟用户登录:这是FTP专有用户,有两种方式实现虚拟用户,本地数据文件和数据库服务器。

FTP虚拟用户是FTP服务器的专有用户,使用虚拟用户登录FTP,只能访问FTP服务器提供的资源,大大增强了系统的安全。

本文的Linux系统是CentOS 5.3

yum -y install vsftpd

一、建立Vsftpd虚拟用户:

1、添加虚拟用户口令文件安装Vsftpd

[root@51ou.com ~]#vi /etc/vsftpd/vftpuser.txt

添加虚拟用户名和密码,一行用户名,一行密码,以此类推。奇数行为用户名,偶数行为密码。

ftp1 #用户名

123456 #密码

ftp2 #用户名

123456 #密码

2、生成虚拟用户口令认证文件

将刚添加的vftpuser.txt虚拟用户口令文件转换成系统识别的口令认证文件。

首先查看系统有没有安装生成口令认证文件所需的软件db4-utils。

下面使用db_load命令生成虚拟用户口令认证文件。

[root@51ou.com ~]# db_load -T -t hash -f /home/vuser.txt /etc/vsftpd_login.db

-bash: db_load: command not found

###############################

出现没有db_load的提示是因为有些db4的包没有安装,需要安装下列包:

db4-*.rpm

db4-tcl-*.rpm

db4-utils-*.rpm

或者直接: yum -y install db4 db4-tcl db4-utils

db_load命令主要是用来生成db数据库使用的

格式:

db_load -T -t hash -f passwd.txt /etc/vsftpd/user_passwd.db

生成一个hash码型的数据库文件供ftp虚拟用户使用。

##########################

[root@51ou.com ~]#db_load -T -t hash -f /etc/vsftpd/vftpuser.txt /etc/vsftpd/vftpuser.db

3、编辑vsftpd的PAM认证文件

在/etc/pam.d目录下,

[root@51ou.com ~]#vi /etc/pam.d/vsftpd

将里面其他的都注释掉,添加下面这两行:

auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vftpuser

account required /lib/security/pam_userdb.so db=/etc/vsftpd/vftpuser

4、建立本地映射用户并设置宿主目录权限

所有的FTP虚拟用户需要使用一个系统用户,这个系统用户不需要密码。

[root@51ou.com ~]#useradd -d /home/vftpsite -s /sbin/nologin vftpuser

[root@51ou.com ~]#chmod 755 /home/vftpsite //网上为700,设置为700后FTP用户无上传权限

5、配置vsftpd.conf(设置虚拟用户配置项)

[root@51ou.com ~]#vi /etc/vsftpd/vsftpd.conf

guest_enable=YES #开启虚拟用户

guest_username=vftpuser #FTP虚拟用户对应的系统用户[useradd -d /home/vftpsite -s

/sbin/nologin vftpuser]

pam_service_name=vsftpd #PAM认证文件

6、重启vsftpd服务

[root@51ou.com ~]#service vsftpd restart

7、测试虚拟用户登录FTP

C:\Documents and Settings\Administrator>ftp 192.168.2.12

Connected to 192.168.2.12.

220 (vsFTPd 2.0.5)

User (192.168.2.12:(none)): ftp1

331 Please specify the password.

Password:

500 OOPS: cannot change directory:/home/vftpsiteConnection closed by remote host

.//在配置vsftpd的时候连接vsftpd出现了500 OOPS: cannot change directory:/home/vftpsite

的错误,vftpsite为登录时使用的本地用户名。

解决办法:

[root@51ou.com ~]# setsebool -P ftp_home_dir on

也有网上说在终端输入命令:

setsebool -P ftpd_disable_trans 1

service vsftpd restart

就OK了!

测试:

C:\Documents and Settings\Administrator>ftp 192.168.2.12

Connected to 192.168.2.12.

220 (vsFTPd 2.0.5)

User (192.168.2.12:(none)): ftp1

331 Please specify the password.

Password:

230 Login successful.

二、虚拟用户高级设置:

1、virtual_use_local_privs参数

当virtual_use_local_privs=YES时,虚拟用户和本地用户有相同的权限;

当virtual_use_local_privs=NO时,虚拟用户和匿名用户有相同的权限,默认是NO。

当virtual_use_local_privs=YES,write_enable=YES时,虚拟用户具有写权限(上传、下载、删除

、重命名)。

当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=YES,

anon_upload_enable=YES时,虚拟用户不能浏览目录,只能上传文件,无其他权限。

当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,

anon_upload_enable=NO时,虚拟用户只能下载文件,无其他权限。

当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,

anon_upload_enable=YES时,虚拟用户只能上传和下载文件,无其他权限。

当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,

anon_mkdir_write_enable=YES时,虚拟用户只能下载文件和创建文件夹,无其他权限。

当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,

anon_other_write_enable=YES时,虚拟用户只能下载、删除和重命名文件,无其他权限。

2. 建立各个虚拟用户自身的配置文件

[root@51ou.com ~]#vi /etc/vsftpd/vsftpd.conf

添加:

user_config_dir=/etc/vsftpd/vsftpd_user_conf

[root@51ou.com ~]#mkdir /etc/vsftpd/vsftpd_user_conf

编辑ftp1的配置文件

[root@51ou.com ~]#vi /etc/vsftpd/vsftpd_user_conf/ftp1

添加:

anon_world_readable_only=NO #开放ftp1的下载权限(只能下载)。注意这个地方千万不能写成YES

,否则ftp1将不能列出文件和目录。

编辑ftp2的配置文件

[root@51ou.com ~]#vi /etc/vsftpd/vsftpd_user_conf/ftp2

添加:

write_enable=YES #开放ftp2的写权限

anon_world_readable_only=NO #开放ftp2的下载权限

anon_upload_enable=YES #开放ftp2的上传权限

anon_mkdir_write_enable=YES #开放ftp2创建目录的权限

anon_other_write_enable=YES #开放ftp2删除和重命名的权限

3、所有虚拟用户使用一般配置

[root@51ou.com ~]#vi /etc/vsftpd/vsftpd.conf

write_enable=YES

anonymous_enable=NO

local_enable=YES

guest_enable=YES

guest_username=vftpuser

virtual_use_local_privs=NO

pam_service_name=vsftpd

anon_world_readable_only=NO #可以下载

anon_upload_enable=NO(默认值) #不能上传

anon_mkdir_write_enable=NO(默认值) #不能新建文件夹

anon_other_write_enable=NO(默认值) #不能删除和重命名文件

ftpd_banner=Welcome to yoozhu FTP server

xferlog_enable=YES

xferlog_file=/var/log/vsftpd.log

xferlog_std_format=YES

ascii_upload_enable=YES

ascii_download_enable=YES

tcp_wrappers=NO

setproctitle_enable=YES

listen_port=21

connect_from_port_20=YES

idle_session_timeout=600

data_connection_timeout=120

max_clients=0

max_per_ip=3

local_max_rate=512000

4、各个虚拟用户使用自身配置

[root@51ou.com ~]#vi /etc/vsftpd/vsftpd.conf

write_enable=YES

anonymous_enable=NO

local_enable=YES

guest_enable=YES

guest_username=vftpuser

virtual_use_local_privs=NO

pam_service_name=vsftpd

user_config_dir=/etc/vsftpd/vsftpd_user_conf #设定用户配置文件存放目录

ftpd_banner=Welcome to yoozhu FTP server

xferlog_enable=YES

xferlog_file=/var/log/vsftpd.log

xferlog_std_format=YES

ascii_upload_enable=YES

ascii_download_enable=YES

tcp_wrappers=NO

setproctitle_enable=YES

listen_port=21

connect_from_port_20=YES

idle_session_timeout=600

data_connection_timeout=120

max_clients=0

max_per_ip=3

local_max_rate=512000

[root@51ou.com ~]#mkdir /etc/vsftpd/vsftpd_user_conf

编辑ftp1的配置文件

[root@51ou.com ~]#vi /etc/vsftpd/vsftpd_user_conf/ftp1

anon_world_readable_only=NO

编辑ftp2的配置文件

[root@CentOS5 /]#vi /etc/vsftpd/vsftpd_user_conf/ftp2

anon_world_readable_only=NO

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

到此,关于"CentOS5.3系统设置vsftpd虚拟用户的详细步骤"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

用户 文件 权限 系统 登录 配置 用户名 口令 密码 目录 开放 认证 生成 步骤 数据 学习 服务 命令 数据库 服务器 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技园 广州为想互联网科技有限公司 广州万易互联网科技有限公司 美国互联网保险保险科技 互联网 科技创新 互联网科技公司怎么样 唐信互联网科技 亿账通互联网科技 火传媒上海互联网科技 西藏七维空间互联网科技有限公司 互联网教育科技公司vipkid 互联网科技教育视频 河南猎农互联网科技有限公司 互联网媒体平台算高科技产业 洛阳昕诺飞互联网科技有限公司 互联网科技和法律行业 互联网第三次科技革命特征 四川互联网展示科技馆设计 张召忠谈中国互联网科技 互联网时代科技型公司的机会 互联网是不是新科技 鸠鸠互联网科技 卓越科技(互联网 ) 健康食品互联网创新科技园项目 燊美集互联网科技有限公司 允成互联网科技有限公司融资 翼展科技 首家互联网医院 2021世界互联网领先科技成果发布 互联网界的黑科技 互联网公司属于科技吗
0