`
w1985chun
  • 浏览: 106603 次
  • 性别: Icon_minigender_1
  • 来自: 陕西
社区版块
存档分类
最新评论

Ubuntu上的Vsftpd虚拟用户设置

 
阅读更多



文章来源:
http://wiki.ubuntu.org.cn/Vsftpd%E8%99%9A%E6%8B%9F%E7%94%A8%E6%88%B7%E8%AE%BE%E7%BD%AE

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


    dbzh1
    dbzh2
    dbzh3

下面,我们要建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来启用的,稍后你将发现。





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

新建一个系统用户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_user_conf
pam_service_name=vsftpd.vu
local_enable=YES
secure_chroot_dir=/var/run/vsftpd

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





/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 db3
db1文件中的内容如下

local_root=/home/vsftpd/dbzh1
同样,db2文件中的内容

local_root=/home/vsftpd/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/vsftpd/dbzh3
这里要注意不能有空格,不然登录的时候会提示出错。 我的这里面也有问题,





能成?

重启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
分享到:
评论

相关推荐

    Ubuntu Linux上安装SSH和Vsftpd的方法

    Ubuntu Linux 上安装 SSH 和 Vsftpd 的方法 在 Ubuntu Linux 中,安装 SSH 和 Vsftpd 是非常重要的步骤,它们分别提供了安全的远程登录和文件传输功能。下面是关于 Ubuntu Linux 上安装 SSH 和 Vsftpd 的详细介绍:...

    Ubuntu 10.04 搭建vsftpd 2.2.2

    Ubuntu 10.04 搭建 vsftpd 2.2.2 vsftpd 是一个功能强大且高效的 FTP 服务器软件,它广泛应用于 Unix 及其它操作系统中。在 Ubuntu 10.04 中,我们可以轻松地搭建 vsftpd 2.2.2 服务器,实现文件的上传和下载。 一...

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

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

    vsftpd ubuntu14.04服务端配置手册

    本文档将详细介绍如何在 Ubuntu 14.04 系统上安装和配置 vsftpd 服务,包括必要的软件安装、虚拟用户的添加及管理、权限配置等方面,以确保服务的安全性和稳定性。 #### 二、安装必要软件 首先,确保服务器已更新...

    Ubuntu下Vsftpd服务器配置指南

    Vsftpd还支持虚拟路径和虚拟用户的功能,这些功能使得管理员可以根据不同的需求灵活地管理和配置FTP服务。 #### 十五、实例与参考 文档中还提供了具体的实例和参考链接,帮助用户更好地理解和应用Vsftpd的各项功能...

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

    如果没有,可以通过包管理器来安装,例如在Ubuntu/Debian上使用`apt-get install vsftpd`,在CentOS/RHEL上使用`yum install vsftpd`。 接下来,我们需要创建一个用于存储虚拟用户信息的数据库。这通常通过PAM...

    vsftpd-3.0.2.tar.gz

    例如,在Ubuntu或Debian上,可以运行`sudo apt-get install vsftpd`;在CentOS或Fedora上,使用`sudo yum install vsftpd`或`sudo dnf install vsftpd`。 5. **配置vsftpd**:主要通过编辑`/etc/vsftpd.conf`配置...

    vsftp连接错误cannot locate user entry:vsftpd

    例如,命令“adduser -g vsftpd -s /sbin/nologin vsftpd”将创建一个用户名和用户组均为vsftpd的用户,并且该用户登录shell被设置为/sbin/nologin,这意味着该用户不能直接登录系统,增加了系统安全性。 4. 重启...

    ubuntu server 安装vsftpd FTP服务器linux服务器应用 电脑资料.doc.docx

    Ubuntu Server 安装 VSFTPD FTP 服务器 Linux 服务器应用电脑资料 安装 VSFTPD FTP 服务器是 Linux ...本文介绍了如何在 Ubuntu Server 10.4 上安装 VSFTPD FTP 服务器,包括安装、配置、认证用户和解决问题等内容。

    vsftpd-3.0.5

    vsftpd 是“very secure FTP daemon”的缩写,安全性是它的一个最大的特点。 vsftpd 是一个 UNIX 类操作系统上运行的...比如:非常高的安全性需求、带宽限制、良好的可伸缩性、可创建虚拟用户、支持IPv6、速率高等。

    基于webmin的vsftpd服务器

    对于VSFTPD服务器的配置,Webmin提供了一个专门的模块,使得配置文件的修改、用户权限的设定、虚拟用户的支持等复杂操作变得简单易行。 接下来,让我们关注一下如何在系统上安装和配置基于Webmin的VSFTPD服务器: ...

    vsftpd-3.0.3-12-arm64.deb

    vsftpd软件包具有很多功能,包括支持ipv6、支持虚拟用户、支持SSL / TLS安全传输、支持虚拟用户分配权限、支持文件限速等。因此,它被广泛地用于各种Linux系统的FTP服务器的实现。 使用vsftpd_3.0.3-12_arm64.deb...

    ubantu下搭建vsftpd服务器.doc

    UBuntu下搭建vsftpd服务器实现本地用户、匿名用户和虚拟用户的上传下载 本资源摘要信息是关于在UBuntu 16.04下搭建vsftpd服务器的实验报告,实现了本地用户、匿名用户和虚拟用户的上传下载。下面是对实验报告的知识...

    vsftpd安装

    除了基本配置外,vsftpd还提供了丰富的高级功能,如速率控制、多线程处理、虚拟用户认证等。例如,通过`user_config_dir`可以为不同用户提供个性化的配置选项,实现更灵活的速率限制或其他特殊需求。 #### 结论 ...

    Vsftpd+mysql

    - 在Debian或Ubuntu系统上安装Vsftpd可以通过以下命令完成: ```bash sudo apt-get install vsftpd ``` - 安装完成后,需要配置Vsftpd的服务参数。默认情况下,Vsftpd的主配置文件位于`/etc/vsftpd.conf`。需要...

    Ubuntu 14.04 LTS Server 安装vsftpd3.0.2.docx

    【Ubuntu 14.04 LTS Server ...总之,安装和配置Ubuntu 14.04 LTS Server上的vsftpd 3.0.2涉及多个层面,包括系统更新、语言环境、网络配置、用户管理以及权限控制。正确设置这些环节将确保FTP服务的安全、稳定和高效。

    vsftp 虚拟用户

    这种方式允许管理员为每个用户设置独立的权限,增加了系统的安全性。 **VSFTP虚拟用户的工作原理** VSFTP虚拟用户机制通过将用户认证与系统用户分离,使得FTP服务可以独立于操作系统用户进行管理。通常,它会结合...

    Ubuntu 14.04 LTS Server 安装vsftpd3.0.2.pdf

    本文主要介绍如何在Ubuntu 14.04 LTS Server上安装和配置vsftpd 3.0.2,以及同时设置SSH、静态IP/DNS和ACL权限。以下是一些关键步骤和概念: 1. **系统安装**: - 在安装Ubuntu 14.04 LTS Server时,仅选择OpenSSH...

    UbuntuFTP设置.pdf

    本文档将指导您如何在 Ubuntu 系统中设置 FTP 服务器,使用 VSFTPD 软件包,并且创建三个虚拟用户,每个用户拥有不同的权限和主目录。 虚拟用户数据库的创建 首先,我们需要创建一个虚拟用户数据库。在这里,我们...

    VSFTP的虚拟用户配置方法

    通过上述步骤,你已经学会了如何在Linux下配置VSFTP和虚拟用户,包括安装VSFTP、配置主配置文件、设置PAM模块、创建虚拟用户数据库以及测试登录。这种方法对于多用户环境非常有用,尤其是当需要精细控制每个用户访问...

Global site tag (gtag.js) - Google Analytics