`
wangrl
  • 浏览: 152321 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

vsFTPd添加虚拟用户

 
阅读更多

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

  • dcp_temp
  • dcp_bak

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

  • mrsuser
  • mrsadmin

使得

  • 用户mrsuser 的主目录为 dcp_temp,在该目录下只有只读权限
  • 用户mrsadmin 的主目录为 dcp_bak,在该目录下拥有所有权限

创建虚拟用户数据库

创建文本文件loguser.txt

格式如下:

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

生成数据库

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

apt-get install db4.6-util

然后,我们执行

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 内容如下:

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来启用的,稍后你将发现。

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

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


sudo useradd vsftpd -d /home/vsftpd -s /bin/false


sudo chown vsftpd:vsftpd /home/vsftpd

/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=vsftpd //是刚才为虚拟用户创建本地系统用户名
user_config_dir=/etc/vsftpd/vsftpd_user_conf 


pam_service_name=vsftpd


local_enable=YES

现在为止,我们的3个用户都可以工作了,可是它们的根目录现在都是/home/vsftpd,权限也都一样。 那么怎么才能完成我们预定的目标呢?

/etc/vsftpd/vsftpd_user_conf

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

user_config_dir=/etc/vsftpd/vsftpd_user_conf

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

mkdir /etc/vsftpd/vsftpd_user_conf


cd /etc/vsftpd/vsftpd_user_conf


touch mrsuser mrsadmin mrstest

mrsuser文件中的内容如下

local_root=/home/vsftpd/dcp_temp

同样,mrstest文件中的内容

local_root=/home/vsftpd/dcp_test

那么,mrsadmin的内容呢? 其实也很简单

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/vsftpd/mrsadmin

这里要注意不能有空格,不然登录的时候会提示出错。 我的这里面也有问题,

能成?

重启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

在拥有上传或创建文件的权限下,若出现 553 Could not create file

若vsftpd用户都使用同一个主目录 ,假设是/home/vsftpd

这个目录的权限应该是770,owner是root,group是vsftpd

chmod 770 /home/vsftpd

chown root:vsftpd /home/vsftpd






分享到:
评论

相关推荐

    vsftpd虚拟用户的配置

    - 编辑或创建`/etc/pam.d/vsftpd`文件,添加以下内容以启用虚拟用户的PAM认证。 ```bash # vi /etc/pam.d/vsftpd auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login account required /...

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

    在文件中添加虚拟用户的账号密码信息。 2. **创建数据库文件**: ```bash db_load -T -t hash -f /etc/vsftpd/login.txt /etc/vsftpd/login.db ``` #### 四、编辑PAM验证文件 为了支持虚拟用户的认证,需要...

    建立Vsftpd虚拟用户

    ##### 3.1 添加虚拟用户口令文件 - 首先需要创建一个包含虚拟用户名和密码的文件,例如`vuser.txt`。每对用户名和密码占两行,如: ```bash [root@localhost ~]# vi /etc/vsftpd/vuser.txt vuser1 vpasswd1 ...

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

    在本文中,我们将深入探讨如何在CentOS 5.5 x86_64环境下配置Vsftpd服务器的虚拟用户模式。虚拟用户模式允许管理员创建独立于系统用户的FTP账户,提供更高的安全性和管理便利性。 首先,我们需要安装Vsftpd和必要的...

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

    1. 添加虚拟用户口令文件 在 Vsftpd 中,我们需要添加虚拟用户名和密码,一行用户名,一行密码,以此类推。奇数行为用户名,偶数行为密码。 2. 生成虚拟用户口令认证文件 将刚添加的 vftpuser.txt 虚拟用户口令...

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

    6. 添加虚拟用户到表中,例如添加“user1”: ``` INSERT INTO vsftpd_users (username, password, home_dir) VALUES ('user1', 'MD5_HASH', '/var/ftp/user1'); ``` 记得用`md5sum`生成MD5哈希值,替换'MD5_HASH'。...

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

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

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

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

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

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

    vsftpd配置虚拟用户登录的方法

    本篇文章将详细讲解如何配置VSFTPD以支持虚拟用户登录,这种方法可以为用户提供独立的权限控制,提高系统的安全性。 首先,我们需要确保系统已经安装了VSFTPD。在大多数Linux发行版中,可以通过`yum`或`apt-get`来...

    vsftpd虚拟

    以下将详细介绍如何在Linux环境下使用VSFTPD建立虚拟用户。 首先,我们需要创建一个虚拟用户口令库文件。这个文件存储了虚拟用户的用户名和密码。例如,我们可以创建一个名为`account.txt`的文件,其中包含类似以下...

    vsftpd 虚拟用户配置步骤

    VSFTPD 虚拟用户配置步骤 VSFTPD 是一个功能强大且流行的 FTP 服务器软件,对于大多数 Linux 发行版来说都是默认的 FTP 服务器解决方案。虚拟用户配置是 VSFTPD 中的一种高级配置方式,允许管理员创建虚拟用户账户...

    CentOS5中vsftp虚拟用户配置

    要添加新的虚拟用户,只需要增加logins_list文件的内容,然后重新生成vsftpd_login.db文件,并增加虚拟用户设置就可以了。当然,需要重启vsftpd服务。 小结 本文介绍了CentOS5中vsftp虚拟用户配置的实例,包括安装...

    centos 6 安装vsftpd与PAM虚拟用户的方法

    现在,VSFTPD已经配置为使用PAM虚拟用户,用户可以通过添加到`vuser_passwd.txt`和`chroot_list`文件来管理。这种方法提高了安全性,因为虚拟用户不会与系统用户共享认证信息,同时可以限制用户访问特定的目录。

    vsftpd详解

    2. 配置PAM(Pluggable Authentication Modules),在`pam.d/vsftpd`文件中添加规则,使vsftpd能够读取并验证虚拟用户的凭证。`pam.d.txt`应该包含了这些详细信息。 3. 在`vsftp.conf`中启用虚拟用户支持,如设置`...

    linuxFTP创建虚拟用户扫描.pdf

    6. FTP 服务的配置:可以在 FTP 服务的配置文件中添加虚拟用户的配置信息。例如,可以添加虚拟用户的用户名和密码。 这些知识点都是关于 Linux 系统中虚拟用户的创建和 FTP 服务的配置和管理。

    linuxFTP创建虚拟用户参考.pdf

    在文件中添加虚拟用户的配置信息。 七、启动服务 输入 service vsftpd start(或者是 restart)命令启动 vsftpd 服务。 八、测试虚拟用户 使用客户机登录到 FTP 服务器,使用虚拟用户登录。如果需要设置虚拟用户...

    使用pam_mysql和VSFTPD实现ftp虚拟账号

    - `/opt/vsftpd/users`: 虚拟用户(ftp)的家目录。 - `/opt/vsftpd/empty`: VSFTPD用户的家目录。 - `/opt/vsftpd/users/pub`: 匿名用户(anoftp)的家目录。 - `/etc/vsftpd.conf`: VSFTPD配置文件。 - `/etc...

    vsftpd ubuntu14.04服务端配置手册

    #### 三、添加虚拟用户口令文件 1. **创建虚拟用户文件**:在 `/etc/vsftpd` 目录下(如果不存在,请手动创建)创建一个名为 `vftpuser.txt` 的文本文件。 ``` sudo gedit /etc/vsftpd/vftpuser.txt ``` 2. **...

Global site tag (gtag.js) - Google Analytics