`

Ubuntu中vsftpd采用虚拟用户方法实现不同用户不同权限

    博客分类:
  • ftp
阅读更多
注:以下大部分命令需要系统用户权限,前面加sudo

1、安装vsftpd和db4.8
  • $sudo apt-get install vsftpd
  • $sudo apt-get install db4.8-util


2、建立本地虚拟用户
  • $useradd -d /home/issme/ftp virtual
  • $chown virtual:virtual /home/issme/ftp

建立本地用户virtual,指定目录为/home/issme/ftp

3、建立虚拟用户数据库
  • $mkdir /etc/vsftpd
  • $vim /etc/vsftpd/login.txt
login.txt文件内容:
  • student
  • 123
  • admin
  • admin

注:奇数行为用户名,偶数行为密码。

  • $db4.8_load -T -t hash -f /etc/vsftpd/login.txt /etc/vsftpd/vsftpd_login.db
  • $chmod 600 /etc/vsftpd/vsftpd_login.db


4、建立基于vsftpd_login的PAM授权文件
  • vim /etc/pam.d/vsftpd.vu
vsftpd.vu文件内容:
  • auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
  • account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

注:有些文件的授权文件名为vsftpd而不是vsftpd,没有关系,只要在配置文件里应用相对应的文件就行

5、设置用户权限 建立用来存放用户权限设置文件的目录
  • $mkdir /etc/vfstpd/virtual

并在该文件夹下依次建立与logins.txt对应的帐号名称相同的文件 内容可以参考下面:
只允许下载
  • anon_world_readable_only=NO
  • local_root=/home/issme/ftp

允许建立,修改,但是不允许删除
  • anon_world_readable_only=NO
  • write_enable=YES
  • anon_mkdir_write_enable=YES
  • anon_upload_enable=YES
  • local_root=/home/issme/ftp

全部权限
  • anon_world_readable_only=NO
  • write_enable=YES
  • anon_mkdir_write_enable=YES
  • anon_upload_enable=YES
  • anon_other_write_enable=YES
  • local_root=/home/issme/ftp

注:local_root用来指定该用户的根路径

6、设置vsftpd.conf
  • $vim /etc/vsftpd.conf

修改内容如下:
  • listen=YES
  • connect_from_port_20=YES
  • ftpd_banner=Welcome to virtual FTP service.
  • 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=virtual
  • pam_service_name=vsftpd.vu
  • user_config_dir=/etc/vsftpd/virtual
  • xferlog_enable=YES
  • xferlog_file=/var/log/vsftpd.log


7、重新启动vsftpd
  • $service vsftpd restart



【可能出现的问题】
1、无法登陆 解决方法:
(1)检查ftp根目录目录是否存在;
(2)检查上面设置的各个路径是否正确;
(3)查看ftp根目录的owner属性是否是virtual
$ls -al /home
如果不是
$chown -R virtual /home/issme/ftp


【日常维护】
(1)更新帐号
$db4.8_load -T -t hash -f /etc/vsftpd/login.txt /etc/vsftpd/vsftpd_login.db
(2)更新/etc/vsftpd/virtual/下不同用户对应的权限
(3)重启vsftpd
$service vsftpd restart
分享到:
评论

相关推荐

    Ubuntu 10.04 搭建vsftpd 2.2.2

    在 Ubuntu 10.04 中,我们可以轻松地搭建 vsftpd 2.2.2 服务器,实现文件的上传和下载。 一、安装 vsftpd 软件 在 Ubuntu 10.04 中,我们可以使用 apt-get 命令来安装 vsftpd 软件。安装时,软件会创建一个配置...

    vsftpd ubuntu14.04服务端配置手册

    ### vsftpd Ubuntu ...通过以上步骤,您可以在 Ubuntu 14.04 系统上成功配置 vsftpd 服务,并实现虚拟用户的管理和权限控制等功能。在实际应用过程中,可以根据具体需求进一步调整配置参数,以满足不同的应用场景。

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

    在CentOS 8系统中,配置vsftpd多用户FTP服务器,实现多虚拟用户FTP连接,并同时解决FTP PORT和PASV模式下的问题。 vsftpd简介 vsftpd是非常流行的FTP服务器软件,支持多种操作系统,包括CentOS、Ubuntu、Debian等。...

    Ubuntu下Vsftpd服务器配置指南

    在Ubuntu系统中安装Vsftpd可以通过以下命令实现: ```bash sudo apt-get install vsftpd ``` 安装完成后,可以通过`netstat -tulnp | grep 21`来检查21端口是否已打开,该端口是Vsftpd默认使用的端口。成功安装后,...

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

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

    vsftpd-3.0.2.tar.gz

    在Linux环境中,vsftpd因其安全性、效率和易管理性而被广泛采用。接下来,我们将深入探讨vsftpd的基本概念、功能、安装与配置方法,以及3.0.2版本的一些特点。 1. **FTP服务**:FTP(File Transfer Protocol)是一...

    基于LINUX的VSFTPD服务的实现.pdf

    FTP协议在Linux操作系统中的实现通常涉及使用专门的FTP服务器软件,其中VSFTPD(Very Secure FTP Daemon)是备受推崇的一个选择。本文主要探讨如何在Linux平台上实现基于VSFTPD的FTP服务。 VSFTPD以其高安全性、...

    vsftpd-3.0.3-12-arm64.deb

    使用vsftpd_3.0.3-12_arm64.deb软件包,用户可以将FTP服务器配置为按照不同的权限虚拟用户,以及给用户对应的上传、下载权限。vsftpd还提供了插件接口,可以自定义脚本对FTP上传文件的事件进行拦截和处理,可进行...

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

    安装 VSFTPD FTP 服务器是 Linux 服务器应用电脑资料中的一部分,本文将详细介绍如何在 Ubuntu Server 10.4 上安装 VSFTPD FTP 服务器。 一、安装 VSFTPD 首先,使用以下命令安装 VSFTPD: ``` sudo apt-get ...

    ubantu下搭建vsftpd服务器.doc

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

    VSFTP的虚拟用户配置方法

    VSFTP的虚拟用户配置允许管理员为每个用户定义不同的权限和根目录,提高了系统的安全性。通过上述步骤,你已经学会了如何在Linux下配置VSFTP和虚拟用户,包括安装VSFTP、配置主配置文件、设置PAM模块、创建虚拟用户...

    vsftpd安装

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

    Vsftpd+mysql

    对于需要支持大量用户的场景,比如小型企业或网站,将Vsftpd与MySQL数据库结合使用可以实现更高效、更灵活的用户管理和权限控制。 #### 一、Vsftpd与MySQL结合的重要性 Vsftpd本身虽然提供了用户认证功能,但是...

    基于webmin的vsftpd服务器

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

    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服务。这种方式允许管理员为每个用户设置独立的权限,增加了系统的安全性。 **VSFTP虚拟用户的工作原理** VSFTP虚拟用户...

    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...

    samba和vsftpd实现主机与虚拟机文件共享

    由于安全性考虑,默认情况下 VSFTPD 不允许 FTP 用户在其家目录中执行无限制的操作。因此,我们可以在共享文件夹中创建一个名为 `pub` 的子文件夹,并赋予相应的权限: ```bash cd /home/chauvet/share mkdir pub ...

    CentOS_vsftpd的安装与配置

    3. **虚拟用户模式**:类似于本地用户模式,但用户账户不直接存储在Linux系统中,而是通过数据库或其他方式验证,适用于需要大规模用户管理的场景。 #### 二、vsftpd的安装 在不同的Linux发行版中,vsftpd的安装...

    linux之vsftpd

    VSFTPD还支持虚拟用户身份验证、SFTP支持、IPv6配置等高级特性。通过合理的配置,可以满足不同场景的需求,如限制特定IP的访问、设置访问速率限制等。 总结: VSFTPD是Linux环境中一个强大且安全的FTP服务器,其...

Global site tag (gtag.js) - Google Analytics