如何进行vsftpd的虚拟用户建立

网络 网络管理
vsftpd建立虚拟用户是FTP服务器当中最为常用的手段。所以我们这里就来详细介绍一下有关内容,希望对大家有所帮助。

在前面我们已经对FTP服务器建立的安装配置进行了详述,这里我们再来对相关的用户建立进行一下解析。那么本地用户在这里就不多介绍了,主要介绍实现虚拟用户的二种方法:vsftpd建立虚拟用户的过程。

1、使用本地数据文件:

生成虚拟用户文件,建立/etc/vsftpd/vuser.txt文件,内容如下:

tonyzhang#虚拟用户1111  #虚拟用户1密码 tomqin   #虚拟用户2111  #虚拟用户2密码

安装生成数据库rpm包:db4-utils。

rpm -ivh db4-utils-4.3.29-9.fc6.i386.rpm  
  • 1.

生成虚拟用户数据库。

db_load -T -t hash -f /etc/vsftpd/vuser.txt /etc/vsftpd/vuser.txt  
  • 1.

创建本地映射用户,修改本地映射用户家目录权限。

useradd -d /var/ftp/vuserdir  -s /sbin/nologin vuserchmod o+rw /var/ftp/vuserdir  
  • 1.

修改pam认证文件/etc/pam.d/vsftpd,将原有内容注释。

authrequired  /lib/security/pam_userdb.so db=/etc/vsftpd/vusersaccount required  
/lib/security/pam_userdb.so db=/etc/vsftpd/vusers 
  • 1.
  • 2.

修改/etc/vsfptd/vsftp.conf,增加以下内容。

guest_enable=YESguest_username=vuser  
  • 1.

2、使用MySQL数据文件:

创建本地映射用户。

useradd -s /sbin/nologin vuser  
  • 1.

修改/etc/vsfptd/vsftp.conf,增加以下内容。

guest_enable=YESguest_username=vuser  
  • 1.

安装MySQL及相关软件包。

yum -y install mysql.i*yum -y install perl-DBD-MySQL.i*yum 
-y install mysql-server.i*yum -y install mysql-devel.i*  
  • 1.
  • 2.

在MySQL中建立数据库及用户表。

[root@polo ]  
# mysql -u root mysql -pmysql>create database ftpvuser;     
#建立用户数据库  
mysql>use ftpvuser;   
#打开数据库  
mysql>create table users(name char(16) binary,passwd char(16) binary);    
#建立存取用户信息表  
#插入二个用户及口令  
mysql>insert into users (name,passwd) values ('tonyzhang',password('111'));  
mysql>insert into users (name,passwd) values ('tomqin',password('111'));  
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.

#p#授权vuser可以读ftpvuser数据库的users表。

[root@polo ]  
#mysql -u root mysql -p mysql>grant select on ftpvuser.users to vuser@localhost identified by '123';   
mysql>quit  
  • 1.
  • 2.
  • 3.

在上述授权完成后,可通过下图方法验证授权是否成功。

编译MySQL的PAM认证模块。

首先需要下载(http://sourceforge.net/projects/pam-mysql)MySQL的PAM认证模块源码,使用tar命令解压后,进行编译。在编译前需要安装以下软件包。

yum -y install gcc.i*yum -y install gcc-c++.i*yum -y install pam-devel.i*  
  • 1.

安装完成后就可以进行编译。

./configuremakemake install  
  • 1.

编辑完成后可查看/lib/security目录下是否已有对应pam模块(如下图)。

查看/lib/security目录下是否已有对应pam模块

修改pam认证文件/etc/pam.d/vsftpd,将原有内容注释。

auth required pam_mysql.so user=vuser passwd=123 host=localhost db=ftpvuser table=users usercolumn=name passwdcolumn=passwd crypt=2account required pam_mysql.so user= vuser passwd=123 host=localhost db= ftpvuser table=users usercolumn=name passwdcolumn=passwd crypt=2

上述二种虚拟用户配置完成后,在通过以下步骤可针对每个虚拟用户指定不同的配置文件。

1、修改/etc/vsfptd/vsftp.conf

user_config_dir=/etc/vsftpd/vuserconf 
  • 1.

2、在/etc/vsfptd/vsftp.vuserconf目录下,以每个虚拟用户的用户名为名称建立配置文件即可。

责任编辑:佟健 来源: csdn.net
相关推荐

2010-07-01 13:35:51

vsftpd

2011-03-04 10:05:10

Vsftpd虚拟用户

2011-02-24 09:14:37

vsFTPd虚拟用户

2010-02-01 17:33:24

Python主线程

2011-03-03 17:02:50

Vsftpd

2011-02-21 17:32:37

Vsftpd

2010-02-22 18:27:14

CentOS vsft

2011-03-04 14:47:58

Vsftpd虚拟用户

2010-07-13 15:23:10

vsftpd

2010-12-27 13:26:25

FreeBSDvsftpd虚拟用户

2009-08-06 15:03:11

行虚拟机Apache设

2010-02-05 13:44:36

Dalvik虚拟机

2010-01-14 17:44:17

CentOS vsft

2011-07-25 10:48:34

服务器虚拟服务器

2010-01-13 16:13:38

centos vsft

2011-09-01 19:20:02

Ubuntu

2011-03-04 15:18:47

Vsftpd

2010-01-13 13:57:09

CentOS vsft

2009-12-01 14:38:28

路由器上网配置

2011-09-15 14:57:49

ubunturootuser用户
点赞
收藏

51CTO技术栈公众号