我们登录FTP有三种方式,匿名登录、本地用户登录和虚拟用户登录。
匿名登录:在登录FTP时使用默认的用户名,一般是ftp或anonymous。
本地用户登录:使用系统用户登录,在/etc/passwd中。
虚拟用户登录:这是FTP专有用户,有两种方式实现虚拟用户,本地数据文件和数据库服务器。
FTP虚拟用户是FTP服务器的专有用户,使用虚拟用户登录FTP,只能访问FTP服务器提供的资源,大大增强了系统的安全。
1 安装vsftp (yum方式安装)
yum install vsftpd -y
2 添加虚拟用户口令文件
[root@CentOS5 /]#vi /etc/vsftpd/vftpuser.txt
添加虚拟用户名和密码,一行用户名,一行密码,以此类推。奇数行为用户名,偶数行为密码。
bobyuan #用户名
123456 #密码
markwang #用户名
123456 #密码
3 生成虚拟用户口令认证文件
将刚添加的vftpuser.txt虚拟用户口令文件转换成系统识别的口令认证文件。
首先查看系统有没有安装生成口令认证文件所需的软件db4-utils。
[root@CentOS5 /]#rpm -qa |grep db4-utils
如果没有则需要单独安装
[root@CentOS5 /]#rpm -ivh db4-utils-4.3.29-9.fc6.i386.rpm
下面使用db_load命令生成虚拟用户口令认证文件。
[root@CentOS5 /]#db_load -T -t hash -f /etc/vsftpd/vftpuser.txt /etc/vsftpd/vftpuser.db
4 编辑vsftpd的PAM认证文件
在/etc/pam.d目录下,
[root@CentOS5 /]#vi /etc/pam.d/vsftpd
将里面其他的都注释掉,添加下面这两行:
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vftpuser
account required /lib/security/pam_userdb.so db=/etc/vsftpd/vftpuser
注:64位系统需使用下面的两行
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpuser
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpuser
5 配置vsftpd.conf(设置虚拟用户配置项)
[root@CentOS5 /]#vi /etc/vsftpd/vsftpd.conf
anonymous_enable=NO #关闭匿名用户【该项已存在,需修改】
guest_enable=YES #开启虚拟用户
guest_username=vftpuser #FTP虚拟用户对应的系统用户
pam_service_name=vsftpd #PAM认证文件
user_config_dir=/etc/vsftpd/vsftpd_config_dir #用户配置文件的目录
6 编辑用户配置文件
vi /etc/vsftpd/vsftpd_config_dir/user1
local_root=/data/ftproot/user1 #【该用户的主目录】
anon_world_readable_only=NO #【下载权限】
anon_upload_enable=YES #【上传权限】
anon_mkdir_write_enable=YES #【创建目录的权限】
anon_other_write_enable=NO #【删除和重命名的权限】
7 启动vsftpd
/etc/init.d/vsftpd start
8 检查
ftp 127.0.0.1
输入用户名密码登录,然后使用put命令上传文件
put a.txt
dir检查文件上传成功即可.
分享到:
相关推荐
RedHat6 建立基于防火墙和SELinux的虚拟用户vsFTP 知识点一:安装vsFTP * RedHat6 安装vsFTP需要使用yum install vsftpd命令,安装的版本为vsftpd-2.2.2-6.el6.i686 * 为了建立匿名账户的vsFTP,还需要安装db4和...
提供的"vsFTP虚拟用户设置.mp4"视频和"vsFTP服务器设置虚拟用户访问.pdf"文档应该会更详细地展示每个步骤的操作过程,包括可能出现的问题及解决方法。这种方法的优点是提高了安全性,因为每个虚拟用户都被限制在他们...
Linux系统中的Web服务器集成VSFTP...本文详细介绍了 Linux 系统中集成 VSFTP 的方法,包括安装 VSFTP、配置 VSFTP 和添加虚拟账户。通过这篇文章,我们可以更好地理解 Linux 系统中的 FTP 服务,并提高我们的技术能力。
虚拟用户允许你创建独立于系统用户的账户,这些账户仅用于FTP登录,可以限制它们的权限和访问路径。实现虚拟用户的方式有多种,常见的如使用PAM(Pluggable Authentication Modules)或者MySQL/PostgreSQL数据库进行...
完成以上步骤后,VSFTP将以MySQL数据库中的用户和密码作为认证方式,提供虚拟用户的FTP服务。这种方法提高了安全性,因为每个虚拟用户的权限和访问都受到严格的控制,同时,通过日志功能可以监控FTP活动,便于管理和...
本文将详细介绍在Linux环境下配置vsftp的三种方法:匿名用户形式、本地用户形式以及虚拟用户形式。 ### 一、Vsftp的三种实现方式 1. **匿名用户形式**:默认安装后,系统仅允许匿名用户访问FTP服务器。匿名用户...
### Linux下vsftp的搭建及quota的使用 #### 一、vsftp的搭建与配置 在Linux环境下构建vsftp服务器并实现quota限制是一项常见的网络管理任务。以下是对给定文件内容的深入解析与扩展。 ##### 1. 安装vsftp工具 在...
通过运行`useradd vuser -s /sbin/nologin`和`passwd vuser`命令,我们可以创建这个账户,并设定它不能登录shell,这样可以避免虚拟用户直接访问系统资源。 接下来,我们需要建立一个包含虚拟用户凭证的数据库,...
- **虚拟账户**不受操作系统认可,仅由VSFTPD服务管理,多个虚拟账户可以映射到一个本地账户。 2.1.1 **创建本地账户** - 添加一个专用FTP账户,如`ftpuser`,并设置为不可登录: ``` [root@localhost ~]# ...
【Vsftp服务器配置】 Vsftp (Very Secure FTPd) 是一个非常受欢迎的开源FTP服务器软件,尤其适用于...通过这种方式配置的Vsftp服务器,能够提供安全的FTP服务,同时利用虚拟用户机制增强了账户管理的灵活性和安全性。
虚拟用户允许你使用非系统用户账户进行FTP访问,通常配合PAM(Pluggable Authentication Modules)和MySQL、PostgreSQL等数据库来存储用户认证信息。 在`vsftpd.conf`中,你需要开启PAM认证和虚拟用户模式,可能的...
该教程介绍了vsftp的三种实现方式:匿名用户形式、本地用户形式以及虚拟用户形式。 **一、匿名用户形式** 默认情况下,vsftp允许匿名用户访问,这意味着任何人都可以通过"anonymous"账户登录并浏览FTP服务器上的...
Vsftp提供了多种访问方式,满足不同安全需求。默认情况下,它允许匿名用户访问,但通过配置,也可以支持基于/etc/passwd的本地用户身份验证,甚至支持使用数据库文件或服务器进行虚拟用户的认证。虚拟用户模式提高了...
Vsftp提供了三种主要的用户访问方式: 1. 匿名用户形式:默认情况下,系统允许匿名用户访问FTP服务器。 2. 本地用户形式:使用系统中的/etc/passwd文件进行身份验证。 3. 虚拟用户形式:通过外部数据库或文件存储...
指定VSFTP服务的运行账户。如果不指定,则使用`ftp`账户运行。 6. **`write_enable=YES`** 是否允许写入操作。设置为`YES`则允许用户上传或修改文件。 7. **`anon_upload_enable=YES`** 匿名用户是否可以上传...
如果要让vsFTP支持虚拟用户,需要修改PAM配置文件。 默认情况下,vsFTP将`/var/ftp`作为FTP根目录,但只有Root用户具有写权限。为了允许文件上传,通常会在该目录下创建子目录,如`/var/ftp/pub`,供用户上传文件。...