Vsftpd中添加虚拟用户

运维 系统运维
本文介绍了在Vsftpd下添加虚拟用户:通过pam认证,用db_load添加虚拟用户。

  Vsftpd中添加虚拟用户通过pam认证方式,添加虚拟用户

  通过pam认证,用db_load添加用户,是真正的虚拟用户。现在我们简单的介绍一下,通过以后的学习,我们再深入补充:

  1、在/etc/pam.d/目录中创建一个文件ftp

  1.   [root@linuxsir001 root]# touch /etc/pam.d/ftp  
  2.  

  2、在/etc/pam.d/ftp里面加上如下的两行

  1.   auth required /lib/security/pam_userdb.so db=/etc/vsftpd_login  
  2.  
  3.   account required /lib/security/pam_userdb.so db=/etc/vsftpd_login  
  4.  

  3、创建一系统的用户名用密码的文件logins.txt

  1.   [root@linuxsir001 root]# touch logins.txt  
  2.  

  在logins.txt文件中,输入如下的内容。这个内容您可以自己来定。比如我下面的。其实linuxsir007是FTP的虚拟用户名,123456是linuxsir007的密码;linuxsir008是虚拟用户名,234567是linuxsir008的密码,以此类推,您想加入几个就是几个;下面是我添加的FTP的虚拟用户名和密码。

  1.   linuxsir007  
  2.  
  3.   123456  
  4.  
  5.   linuxsir008  
  6.  
  7.   234567  
  8.  
  9.   linuxsir009  
  10.  
  11.   567890  
  12.  
  13.   linuxsir010  
  14.  
  15.   678901  
  16.  
  17.   linuxsir011  
  18.  
  19.   789012  
  20.  

  4、创建一个真实的用户名linuxsir006,这个linuxsir006的用户,所在的家目录由您来定。我在这里不多说了。我是按系统默认的来添加的。

  1.   [root@linuxsir001 root]# useradd linuxsir006  
  2.  

  5、把/etc/hosts复制到/home/linuxsir006,并改变它的属主

  1.   [root@linuxsir001 root]#cp /etc/hosts /home/linuxsir006/hosts  
  2.  
  3.   [root@linuxsir001 root]#chown linuxsir006.linuxsir006 /home/linuxsir006/hosts  
  4.  

  6、通过db_load来创建虚拟用户的库文件。我们在前面建的logins.txt文件,我是放在了/root用户目录下。所以咱们得把目录切换到/root目录来创建虚拟用户的库文件。

  1.   [root@linuxsir001 root]# db_load -T -t hash -f logins.txt /etc/vsftpd_login.db  
  2.  

  7、更改vsftpd.conf文件,加入如下的几行

  1.   pam_service_name=ftp 
  2.  
  3.   guest_enable=YES 
  4.  
  5.   guest_username=linuxsir006 
  6.  
  7.   anon_world_readable_only=NO 
  8.  

  8、重启vsFTPd服务器;改了一系列的文件,不要忘记重启vsFTPd服务器

  我是用standalone模式的,当然用下面的方法

  1.   [root@linuxsir001 root]# service vsftpd restart  
  2.  

  关闭 vsftpd: [ 确定 ]

  为 vsftpd 启动 vsftpd: [ 确定 ]

  1.   [root@linuxsir001 root]#  
  2.  

  如果您用的是xinetd模式来启动vsFTPd,我们要重启xinetd服务器

  1.   [root@linuxsir001 root]# service xinetd restart  
  2.  

  停止 xinetd: [ 确定 ]

  启动 xinetd: [ 确定 ]

  1.   [root@linuxsir001 root]#  
  2.  

  9、如果您想让用户登入FTP时,登入成功的相应的信息,请把您制作的.message复制到您的用户的家目录中,这方面的请参考前面的补充。

  10、测试:

  1.   [root@linuxsir001 root]# ftp 192.168.0.1  
  2.  

  Connected to 192.168.0.1.

  220 (vsFTPd 1.1.3)

  530 Please login with USER and PASS.

  530 Please login with USER and PASS.

  KERBEROS_V4 rejected as an authentication type

  Name (192.168.0.1:root): linuxsir007

  331 Please specify the password.

  Password:

  230-欢迎光临LinuxSir自由FTP

  230-在这里,您将得到最真诚的帮助!

  230-本站限度为30KB!

  230-每个IP限四个线程

  230-请大家遵守FTP的有关规定。

  230-多谢合作!

  230-

  230-LinuxSir管理部

  230 Login successful. Have fun.

  Remote system type is UNIX.

  Using binary mode to transfer files.

  ftp> ls

  227 Entering Passive Mode (192,168,0,1,85,171)

  150 Here comes the directory listing.

  -rw-r--r-- 1 ftp ftp 174 Jun 01 12:59 hosts

  drwxr-xr-x 3 ftp ftp 4096 Jun 01 13:29 linuxsir008

  drwxr-xr-x 2 ftp ftp 4096 Jun 01 13:24 sun

  226 Directory send OK.

  ftp>

【编辑推荐】

  1. 如何把vsftpd启动方式改变为xinetd
  2. Vsftpd实现虚拟账号
  3. VSFTPD配置虚拟FTP服务器
责任编辑:zhaolei 来源: CSDN
相关推荐

2011-02-21 17:32:37

Vsftpd

2011-02-24 09:14:37

vsFTPd虚拟用户

2011-03-04 10:05:10

Vsftpd虚拟用户

2011-03-03 17:02:50

Vsftpd

2010-02-22 18:27:14

CentOS vsft

2010-12-27 13:26:25

FreeBSDvsftpd虚拟用户

2010-01-13 13:57:09

CentOS vsft

2010-07-01 13:29:08

vsftpd

2011-08-23 17:26:05

2010-05-20 12:57:38

2015-08-25 14:34:20

LinuxvsftpdFTP

2011-03-04 13:26:08

Vsftpd虚拟账号

2011-03-01 09:29:45

vsftpd用户目录

2010-02-04 13:43:26

Linux vsFTP

2010-07-01 13:35:51

vsftpd

2011-03-04 15:18:47

Vsftpd

2011-03-03 16:47:32

2010-02-22 17:07:16

CentOS vsft

2011-03-04 09:10:57

Vsftpd用户

2011-03-04 15:20:48

Vsftpd
点赞
收藏

51CTO技术栈公众号