`
asdfbb
  • 浏览: 13920 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

Vsftpd虚拟用户设置

阅读更多

出处
http://wiki.ubuntu.org.cn/index.php?title=Vsftpd%E8%99%9A%E6%8B%9F%E7%94%A8%E6%88%B7%E8%AE%BE%E7%BD%AE&variant=zh-cn#.E8.83.BD.E6.88.90.EF.BC.9F

Vsftpd虚拟用户设置
出自Ubuntu中文
本文作者:dbzhang800

授权许可:创作共享协议

适用版本:

文章状态:完成

目录
[隐藏]
•1 目标
•2 创建虚拟用户数据库
◦2.1 创建文本文件loguser.txt
◦2.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 的主目录为 dbzh3 ,在该目录下拥有所有权限
[编辑] 创建虚拟用户数据库
[编辑] 创建文本文件loguser.txt
格式如下:

user_id
password 

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




db1
db100
db2
db200
db3
db300[编辑] 生成数据库
如果你以前没装过libdb4.6-util 或者你不清楚装没装,需先执行下面的命令

sudo apt-get install db4.6-util然后,我们执行

sudo db4.6_load -T -t hash -f /home/loguser.txt /etc/vsftpd_login.db
最后设置一下数据库文件的访问权限

sudo chmod 600 /etc/vsftpd_login.db[编辑] 配置PAM文件
新建/etc/pam.d/vsftpd.vu 内容如下:

auth required /lib/security/pam_userdb.so db=/etc/vsftpd_login
account required /lib/security/pam_userdb.so db=/etc/vsftpd_login•我们上一步建立的数据库 vsftpd_login 在此处被使用
•我们建立的虚拟用户将采用PAM进行验证,这是通过/etc/vsftpd.conf文件中的 语句pam_service_name=vsftpd.vu来启用的,稍后你将发现。
[编辑] 为虚拟用户创建本地系统用户
新建一个系统用户virtual,用户家目录为/home/ftp, 用户登录终端设为/bin/false(即使之不能登录系统)




sudo useradd virtual -d /home/ftp -s /bin/false
sudo chown virtual: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中




sudo mkdir /etc/vsftpd_user_conf
cd /etc/vsftpd_user_conf
sudo touch db1 db2 db3db1文件中的内容如下

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
local_root=/home/ftp/dbzh1我的这里面也有问题,

[编辑] 能成?
重启vsftpd我们就可以看到效果了^_^

/etc/init.d/vsftpd start|restart


500 OOPS: cannot change directory:

linux打开ftp遇到的问题 500 OOPS: cannot change directory:

google好多都是 执行这个就OK setsebool ftpd_disable_trans 1 service vsftpd restart

但是执行的时候遇到这个问题  Could not change active booleans: Invalid boolean
搜了好久终于解决

   setsebool -P ftp_home_dir=1

 

分享到:
评论

相关推荐

    vsftpd虚拟用户设置权限

    vsftpd 虚拟用户设置权限 vsftpd 虚拟用户设置权限是指在 vsftpd 服务器中,如何设置虚拟用户的权限,以满足不同的用户需求。本文将详细介绍如何设置虚拟用户的权限,包括普通用户、管理员用户和网站管理员用户的...

    vsftpd虚拟用户的配置

    ### vsftpd虚拟用户的配置详解 #### 一、虚拟用户概念 在介绍具体的配置步骤之前,我们先来了解一下什么是虚拟用户。虚拟用户是指在FTP服务器上使用的非真实系统账户,通常用于提高安全性以及方便管理和控制。 **...

    vsftpd虚拟用户建立,无错版

    VSFTPD 虚拟用户建立需要安装和配置 VSFTPD 服务,建立虚拟用户帐户,调整配置文件,设置上传权限,设置日志记录功能,设置目录标语功能和设置 PORT 过渡连接。通过这些步骤,可以实现虚拟用户的 FTP 访问。

    建立Vsftpd虚拟用户

    ### 建立Vsftpd虚拟用户 #### 1. FTP登录方式概述 FTP(File Transfer Protocol)是一种用于在网络上进行文件传输的标准协议。通过FTP,用户可以上传、下载以及管理远程服务器上的文件。根据登录方式的不同,FTP...

    两种方式建立Vsftpd虚拟用户.pdf

    两种方式建立Vsftpd虚拟用户 Vsftpd虚拟用户是FTP服务器的专有用户,使用虚拟用户登录FTP,只能访问FTP服务器提供的资源,大大增强了系统的安全。本文将介绍两种方式建立Vsftpd虚拟用户:本地数据文件方式和数据库...

    vsftpd虚拟目录安装

    总之,安装并配置VSFTPD虚拟目录涉及多个步骤,包括安装软件、配置服务、创建虚拟用户、设置数据库和权限,以及验证服务的正确运行。这个过程需要对Linux系统管理、FTP服务原理以及PAM认证机制有一定的理解。一旦...

    Centos 8 vsftpd多用户FTP服务器配置完美方案——同时解决PORT和PASV模式

    为了实现多用户虚拟用户方式,需要在vsftpd.conf文件中设置virtual_use_local_privs=YES和virtual_users=ftp-test1,ftp-test2等参数。 结论 本文介绍了CentOS 8系统中配置vsftpd多用户FTP服务器的详细步骤,包括...

    Centos7下安装vsftpd并启用虚拟用户访问

    ### Centos7下安装vsftpd并启用虚拟用户访问 #### 一、环境搭建与软件安装 在CentOS 7环境中部署vsftpd并实现虚拟用户登录,首先需要完成vsftpd服务的基本安装。 1. **安装vsftpd及其客户端**: ```bash yum ...

    CentOS 7中vsftpd服务安全部署(匿名用户、本地用户、虚拟用户管理).docx

    3. 设置 pam 认证:编辑 `/etc/pam.d/vsftpd`,添加针对虚拟用户的 pam 配置。 4. 修改 vsftpd 配置:启用虚拟用户模式(`virtual_use_local_users=YES`),配置 pam 模块认证。 5. 权限设定:为虚拟用户指定家目录...

    Centos中Vsftpd安装与虚拟用户设置.txt

    在IT领域,特别是服务器管理与网络服务配置方面,掌握如何在CentOS系统中安装与配置Vsftpd(Very Secure FTP Daemon)以及设置虚拟用户是一项关键技能。本文将深入解析这一主题,涵盖Vsftpd的基本概念、安装过程、...

    vsftpd_ftp服务器Linux虚拟用户配置(超详细)

    本教程将详细讲解如何在Linux环境下配置VSFTPD,实现FTP服务器的虚拟用户功能,以便为不同的用户提供独立的权限和目录访问。虚拟用户允许我们通过用户名和密码认证,而这些信息并不直接与系统的实际用户账户对应,...

    centos ftp虚拟用户设置全解

    CentOS FTP 虚拟用户设置全解 本文将详细介绍如何在 CentOS 操作系统中设置 FTP 虚拟用户。FTP(File Transfer Protocol,文件传输协议)是一种常用的文件传输协议,广泛应用于文件上传、下载等场景。CentOS 是一个...

    vsftpd 虚拟用户配置步骤

    下一步,我们需要建立虚拟用户访问目录,并设置 virtual 用户访问的权限。 #useradd -d /var/ftp/share -s /sbin/nologin virtual #chmod 700 /var/ftp/share 配置 VSFTPD 现在,我们需要配置 VSFTPD,以便使用...

    Vsftpd服务器虚拟用户配置.docx

    这里,`user_config_dir`设置为`/etc/vsftpd/user_config`,意味着每个虚拟用户都可以有自己的个性化配置文件。虚拟用户登录时,Vsftpd会查找`/etc/vsftpd/user_config/用户名.conf`文件,以应用特定的权限和限制。 ...

    linux下配置vsftpd和虚拟用户[文].pdf

    本文将详细介绍如何在Linux环境下配置VSFTPD以及设置虚拟用户。 首先,VSFTPD的主要配置文件位于`/etc/vsftpd/vsftpd.conf`。这个文件包含了所有VSFTPD服务的参数和设置,可以根据需求进行调整。例如,关闭匿名用户...

    Ubuntu Linux上安装SSH和Vsftpd的方法

    您可以编辑该文件以配置 Vsftpd 服务器的设置。例如,想要禁用匿名 FTP 登录,可以将以下行修改为: anonymous_enable=NO 想要允许本地系统用户登录 FTP 服务器,可以将以下行反注释: local_enable=YES 想要...

    linux下配置vsftpd和虚拟用户.pdf

    在Linux环境中配置VSFTPD(Very Secure File Transfer Protocol Daemon)服务并设置虚拟用户,是为了实现更安全、可控的FTP(File Transfer Protocol)访问。VSFTPD是一个开源的FTP服务器软件,因其安全性高而受到...

    vsftpd虚拟

    同时,为每个虚拟用户创建一个自定义配置文件,比如`/etc/vsftpd_user_conf/admin`,并设置相应的权限和功能: ``` anon_world_readable_only=NO write_enable=YES anon_upload_enable=YES anon_mkdir_write_enable...

Global site tag (gtag.js) - Google Analytics