1.首先安装vsftpd和一些工具:
sudo apt-get install vsftpd libpam-pwdfile apache2-utils
PAM是负责认证连接的,apache2-utils主要是使用其中的htpasswd命令,来管理用户认证。
2.配置PAM来负责用户认证:
sudo vim /etc/pam.d/vsftpd
将其中的所有行都注释掉,我们要使用PAM-pwdfile来进行认证连接,其中的ftpd.passwd这个文件名字和路径一会儿我们就创建:
auth required pam_pwdfile.so pwdfile /etc/ftpd.passwd
account required pam_permit.so
3.创建用户名密码文件
sudo htpasswd -c /etc/ftpd.passwd gnuhpc
其中gnuhpc是用户名,若以后想添加多个用户则使用
sudo htpasswd /etc/ftpd.passwd gnuhpc2
4.创建FTP主目录
我们创建/home/vftp这个目录,把它的权限设置为755
sudo mkdir –m 755 /home/vftp
然后将其owner改为ftp:
sudo chown ftp:ftp /home/vftp
5.配置vsftpd
sudo vim /etc/vsftpd.conf
修改以下配置选项,保留其余选项是默认就可以
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
chroot_local_user=YES
virtual_use_local_privs=YES
guest_enable=YES
user_sub_token=$USER
local_root=/home/vftp/$USER
hide_ids=YES
解释如下:
anonymous_enable=NO 不允许匿名
local_enable=YES 非匿名的登录方式必须打开的选项
write_enable=YES 设置是否可写
local_umask=022 设置umask,022选项表示755,具体参看Linux权限表示。
chroot_local_user=YES 限制用户的目录访问权限,即当用户登录FTP服务器后,不能访问自己目录以外的其他目录或文件
virtual_use_local_privs=YES 虚拟用户与本地用户使用同样的权限,默认是与匿名用户权限相同
guest_enable=YES 将所有非匿名登录都划归为guest登录,将这个虚拟用户映射到guest_username指定的本地用户
user_sub_token=$USER 自动进入虚拟用户名对应的主目录下的子目录,比如用户gnuhpc登录就会到local_root/gnuhpc这个目录下
local_root=/home/vftp/$USER 指定了用户登录以后直接到达的目录
hide_ids=YES 隐藏ID
6.添加用户目录
以gnuhpc这个用户为例,我们创建/home/vftp/gnuhpc这个目录,把它的权限设置为755
sudo mkdir –m 755 /home/vftp/gnuhpc
然后将其owner改为ftp:
sudo chown ftp:ftp /home/vftp/gnuhpc
7.重启服务:
sudo service vsftpd restart
这样我们就已经设置好了一个可上传下载的虚拟用户,以后添加用户的时候只用执行第3,6步和第7步就能添加新的虚拟用户了。
附1:若你想每一个用户都有自己的主目录和配置权限那么在vsftpd.conf中设置
user_config_dir=/etc/vsftpd/user
附2:若你想限制本地用户登录ftp请创建一个用户列表文件,举例我们创建/etc/vsftpd/user_list,内容为
gnuhpc
gnuhpc2
并且在vsftpd.conf中设置:
userlist_deny=NO
userlist_file=/etc/vsftpd/user_list
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/user_list
那么只有这个列表上的用户可以登录。
Author:gnuhpc
WebSite:blog.csdn.net/gnuhpc
分享到:
相关推荐
### vsftpd虚拟用户的配置详解 #### 一、虚拟用户概念 在介绍具体的配置步骤之前,我们先来...通过上述步骤,我们可以成功配置vsftpd虚拟用户,不仅可以提高FTP服务器的安全性,还可以更灵活地管理用户的访问权限。
安装时,软件会创建一个配置文件“vsftpd.conf”在/etc 目录下,并创建一个系统用户“ftp”,该用户的密码为“ftp”。同时,软件还会在/srv 目录下创建一个 ftp 文件夹,该文件夹的所有者是“root”,群组是“ftp”...
VSFTPD 虚拟用户建立是指在 CentOS 服务器上安装和配置 VSFTPD 服务,以便实现虚拟用户的 FTP 访问。下面是相关的知识点: 1. 安装 VSFTPD 服务 在 CentOS 服务器上,需要安装 VSFTPD 服务相关组件,包括 VSFTPD ...
vsftpd 虚拟用户设置权限 vsftpd 虚拟用户设置权限是指在 vsftpd 服务器中,如何设置虚拟用户的权限,以满足不同的用户需求。本文将详细介绍如何设置虚拟用户的权限,包括普通用户、管理员用户和网站管理员用户的...
### Centos7下安装vsftpd并启用虚拟用户访问 ...以上步骤完成了CentOS 7环境下vsftpd的安装与虚拟用户功能的配置。通过这种方式,可以有效地管理FTP服务器上的用户访问权限,提高安全性与灵活性。
Centos 8 vsftpd 多用户 FTP 服务器配置完美方案 在CentOS 8系统中,配置vsftpd多用户FTP服务器,实现多虚拟用户...同时,本文还介绍了vsftpd.conf配置文件的详细参数设置,实现了多用户虚拟用户方式的FTP服务器配置。
你可能需要修改配置文件 `/etc/vsftpd.conf` 来调整用户权限、匿名访问、PASV模式等设置。例如,禁止匿名访问可以在配置文件中取消注释 `anonymous_enable=YES` 行。 7. **验证安装**:最后,可以使用FTP客户端测试...
有时候会遇到客户是内网环境的,无法在线通过apt-get install vsftpd进行安装,本文将提供vsftpd_3.0.3的离线安装包。 安装步骤 1、上传至指定文件夹后,执行命令 tar -zxvf vsftpd_3.0.3.tar.gz 进行解压 2、然后...
两种方式建立Vsftpd虚拟用户 Vsftpd虚拟用户是FTP服务器的专有用户,使用虚拟用户登录FTP,只能访问FTP服务器提供的资源,大大增强了...通过这两种方式,可以方便地建立 Vsftpd 虚拟用户,增强 FTP 服务器的安全性。
Ubuntu Linux 上安装 SSH 和 Vsftpd 的方法 在 Ubuntu Linux 中,安装 SSH 和 Vsftpd 是非常重要的步骤,它们分别提供了安全的远程登录和...通过本文,您可以了解如何安装和配置 SSH 和 Vsftpd 服务器以满足您的需求。
总之,安装并配置VSFTPD虚拟目录涉及多个步骤,包括安装软件、配置服务、创建虚拟用户、设置数据库和权限,以及验证服务的正确运行。这个过程需要对Linux系统管理、FTP服务原理以及PAM认证机制有一定的理解。一旦...
### 建立Vsftpd虚拟用户 #### 1. FTP登录方式概述 FTP(File Transfer ...通过以上步骤,我们可以成功地配置Vsftpd服务器使用虚拟用户进行认证,这不仅可以提高系统的安全性,同时也便于管理员管理和维护用户账号。
本文详细介绍了 Ubuntu 下 vsftpd 的安装、配置和使用,包括安装 vsftpd 服务、添加用户、配置 ftp 服务、使用 ftp 服务下载文件等内容。同时,本文还详细介绍了 vsftpd 的配置文件列表和配置选项,帮助读者更好地...
### vsftpd Ubuntu ...通过以上步骤,您可以在 Ubuntu 14.04 系统上成功配置 vsftpd 服务,并实现虚拟用户的管理和权限控制等功能。在实际应用过程中,可以根据具体需求进一步调整配置参数,以满足不同的应用场景。
在本文中,我们将深入探讨如何在CentOS 5.5 x86_64环境下配置Vsftpd服务器的虚拟用户模式。虚拟用户模式允许管理员创建独立于系统用户的FTP账户,提供更高的安全性和管理便利性。 首先,我们需要安装Vsftpd和必要的...
本教程将详细讲解如何在Linux环境下配置VSFTPD,实现FTP服务器的虚拟用户功能,以便为不同的用户提供独立的权限和目录访问。虚拟用户允许我们通过用户名和密码认证,而这些信息并不直接与系统的实际用户账户对应,...
VSFTPD 虚拟用户配置步骤 VSFTPD 是一个功能强大且流行的 FTP 服务器软件,对于大多数 Linux 发行版来说都是默认的 FTP 服务器解决方案。虚拟用户配置是 VSFTPD 中的一种高级配置方式,允许管理员创建虚拟用户账户...
### Ubuntu下Vsftpd服务器配置指南 #### 一、Vsftpd简介与许可说明 Vsftpd是一款在Linux系统上非常流行的FTP服务器软件,它以其高效性、安全性以及丰富的功能而受到广泛赞誉。根据给定内容,我们可以了解到Vsftpd...