VSFTP+MySQL虚拟用户配置

2019-06-08 05:05栏目:程序人生

VSFTPD是一种在UNIX/Linux中那个安全且快速的FTP服务器,方今已经被广大巨型站点所利用。VSFTPD匡助将用户名和口令保存在数据库文件或数据库服务器中。VSFTPD称这种方式的用户为虚构用户。相对于FTP的地面系统)用户来讲,虚拟用户只是FTP服务器的专有用户,虚拟用户只可以访问FTP服务器所提供的财富,那大大抓好系统自己的安全性。相对于无名用户来讲,虚拟用户必要用户名和密码能力获得FTP服务器中的文件,扩展了对用户和下载的可管理性。对于急需提供下载服务,但又不期望全体人都可以无名氏下载;既供给对下载用户打开管理,又思索到主机安全和管制有利于的FTP站点来讲,虚拟用户是一种极好的消除方案。本文介绍在RedHat Linux 9上哪些将VSFTPD的杜撰用户名和密码保存在MySQL数据库服务器中。
一、VSFTPD的安装
现阶段,VSFTPD的新式版本是一.2.0版。官方下载地址为ftp://vsftpd.beasts.org/users/cevans/vsftpd-壹.二.0.tar.gz。在装置前,供给先做以下策动职业:
VSFTPD私下认可配置中供给“nobody”用户。在系统中增多此用户,假设用户已经存在,useradd命令有照拂提醒。
[[email protected] root]# useradd nobody
useradd: user nobody exists
VSFTPD私下认可配置中必要“/usr/share/empty”目录。在系统中此目录,若是目录已经存在,mkdir命令有照料提示。
[[email protected] root]# mkdir /usr/share/empty/
mkdir: cannot create directory '/usr/share/empty': File exists
VSFTPD提供佚名FTP服务时,必要“ftp”用户和二个管用的佚名目录。
[[email protected] root]# mkdir /var/ftp/
[[email protected] root]# useradd -d /var/ftp ftp
接下去的操作对于ftp用户是还是不是早已存在都以行得通的。
[[email protected] root]# chown root.root /var/ftp
[[email protected] root]# chmod og-w /var/ftp
上述希图专业到位后,大家就足以初阶编写翻译源代码了。假定大家下载的vsftpd-1.二.0.tar.gz在/root目录,试行以下命令:
[[email protected] root]# tar zxvf vsftpd-1.2.0.tar.gz
[[email protected] root]# cd vsftpd-1.2.0
[[email protected] vsftpd-1.2.0]# make
[[email protected] vsftpd-1.2.0]# make install
上面包车型地铁“make install”命令将编写翻译好的2进制文件、手册等复制到相应目录。在RHL九上,大概须求手动实行以下复制:
[[email protected] vsftpd-1.2.0]# cp vsftpd /usr/local/sbin/vsftpd
[[email protected] vsftpd-1.2.0]# cp vsftpd.conf.5 /usr/local/share/man/man5
[[email protected] vsftpd-1.2.0]# cp vsftpd.8 /usr/local/share/man/man8
接下去,大家复制1个回顾的配置文件作为基础供前边修改。
[[email protected] vsftpd-1.2.0]# cp vsftpd.conf /etc
[[email protected] vsftpd-1.2.0]# cp RedHat/vsftpd.pam /etc/pam.d/ftp
复制PAM验证文件,以允许本地用户登六VSFTPD。
[[email protected] vsftpd-1.2.0]# cp RedHat/vsftpd.pam /etc/pam.d/ftp
二、创建guest用户
VSFTPD采取PAM形式注解虚拟用户。由于虚拟用户的用户名/口令被单独保存,由此在验证时,VSFTPD供给用一个连串用户的身份来读取数据库文件或数据库服务器以达成验证,那就是VSFTPD的guest用户。那正就像是无名氏用户也急需有二个系统用户ftp一样。当然,大家也得以把guest用户作为是杜撰用户在系统中的代表。下边在系统中增多vsftpdguest用户,作为VSFTPD的guest。
[[email protected] vsftpd-1.2.0]# useradd vsftpdguest
当虚拟用户登入后,所在的岗位为vsftpdguest的自己目录/home/vsftpdguest。倘若要让虚拟用户登陆到/var/ftp等别的目录,修改vsftpdguest的自己目录就能够。
3、设置VSFTPD配置文件
在/etc/vsftpd.conf文件中,加入以下选项:
guest_enable=YES
guest_username=vsftpdguest
下一场实行以下命令,让VSFTPD在后台运维:
[[email protected] vsftpd-1.2.0]# /usr/local/sbin/vsftpd &
4、将虚拟用户保存在MySQL数据库服务器中
作者们创制数据库vsftpdvu,表users,字段name和passwd用于保存虚拟用户的用户名和口令,相同的时间增添七个虚拟用户xiaotong和xiaowang。
[[email protected] vsftpd-1.2.0]# mysql -p
mysql>create database vsftpdvu;
mysql>use vsftpdvu;
mysql>create table users(name char(16) binary,passwd char(16) binary);
mysql>insert into users (name,passwd) values ('xiaotong',password('qqmywife'));
mysql>insert into users (name,passwd) values ('xiaowang',password('ttmywife'));
mysql>quit
下一场,授权vsftpdguest能够读vsftpdvu数据库的users表。试行以下命令:
[[email protected] vsftpd-1.2.0]# mysql -u root mysql -p
mysql>grant select on vsftpdvu.users to [email protected] identified by 'i52serial0';
mysql>quit
倘诺要表达刚才的操作是或不是成功能够举办上面发号施令:
[[email protected] vsftpd]#mysql -u vsftpdguest -pi52serial0 vsftpdvu
mysql>select * from users;
一旦成功,将会列出xiaotong、xiaowang和加密后的密码
五、设置MySQL的PAM验证
此地咱们要用到多少个应用mysql举行pam验证的开源项目
[[email protected] root]#tar xvzf pam_mysql-0.5.tar.gz
[[email protected] root]#cd pam_mysql
[[email protected] pam_mysql]#make
[[email protected] pam_mysql]#make install
make install这一步大概会并发错误,那只可以手动将该目录下转移的pam_mysql.o复制到/lib/security目录下。
接下去,大家要安装vsftpd的PAM验证文件。张开/etc/pam.d/ftp文件,到场以下内容:
auth required pam_mysql.o user=vsftpdguest passwd=i52serial0 host=localhost db=vsftpdvu table=users usercolumn=name passwdcolumn=passwd crypt=2
account required pam_mysql.o user=vsftpdguest passwd=i52serial0 host=localhost db=vsftpdvu table=users usercolumn=name passwdcolumn=passwd crypt=2
上边提到到的参数,只要对应前边数据库的装置就可以领会它们的含义。这里供给说明的是crypt参数。crypt表示口令字段中口令的加密方法:crypt=0,口令以公开药情势不加密)保存在数据库中;crypt=一,口令使用UNIX系统的DES加密方法加密后保存在数据库中;crypt=贰,口令经过MySQL的password()函数加密后保存。
6、进一步的杜撰用户安装
透过上述的手续,虚拟用户就足以健康使用了。这里介绍进一步的虚拟用户设置。首先,介绍虚拟用户的权力设置。
VSFTPD-1.2.0新添了virtual_use_local_privs参数,当该参数激活YES)时,虚拟用户选拔与本地用户一样的权力。当此参数关闭NO)时,虚拟用户采用与无名氏用户一样的权能,那约等于VSFTPD-1.贰.0在此以前版本对虚拟用户权限的处理方式。那三头种做法相比较,后者越发严酷一些,极度是在有写访问的处境下。暗许景况下此参数是停业的NO)。
当virtual_use_local_privs=YES时,只需安装write_enable=YES,虚拟用户就可以就全体写权限。而virtual_use_local_privs=NO时,对虚拟用户权限的装置就越来越多一些更严苛一些。
支配虚拟用户浏览目录:倘使让用户不可能浏览目录,但还可以够对文件操作,那么须要推行以下贰个步骤:一,配置文件中,anon_world_readable_only=YES。2,虚拟用户目录的权位改为只可以由vsftpdguest操作:
[[email protected] root]# chown vsftpdguest.vsftpdguest /home/vsftpdguest
[[email protected] root]# chmod 700 /home/vsftpdguest
允许虚拟用户上传文件:
write_enable=YES
anon_upload_enable=YES
允许虚拟用户修改文件名和删除文件:
anon_other_write_enable=YES
由于以上选拔的安装同1会对无名用户生效。假如不想无名用户趁机具有一致的权能,最佳是禁止无名用户登入。
说不上,由于虚拟用户在系统中是vsftpdguest身份,所以能够访问到系统的别样目录。为了越发安全,大家能够将虚拟用户限制在小编目录下。有两种做法:一,在安插文件中扩充以下选项
chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
然后,在/etc/vsftpd.chroot_list文件中出席虚拟用户名xiaotong和xiaowang。
第三种做法,在布局文件中期维修改chroot_local_user=YES。
透过修改后,虚拟用户登入后其根目录就限制在/home/vsftpdguest下,没办法访问别的目录。
7、虚拟用户的私有目录
世家能够窥见,无论是哪个虚拟用户,登入后所在的目录都以/home/vsftpdguest,即都是guest_username用户的本人目录。下边,介绍怎么样为每种虚拟用户创建自身目录。首先,在主配置文件中加入以下选项:
user_config_dir=/etc/vsftpd/vsftpd_user_conf
然后,生成/etc/vsftpd/vsftpd_user_conf目录,并在该目录下组建与特定虚拟用户同名的文件:
[[email protected] root]# mkdir /etc/vsftpd/vsftpd_user_conf
[[email protected] root]# cd /etc/vsftpd/vsftpd_user_conf
[[email protected] vsftpd_user_conf]# touch xiaowang
如上的操作为虚拟用户xiaowang创建了个人配置文件/etc/vsftpd/vsftpd_user_conf/xiaowang。接下来,在xiaowang的私有配置文件中校xiaowang的自己目录修改为/home/xiaowang,配置选项为:
local_root=/home/xiaowang
下一场,新建xiaowang目录,并将权力设为vsftpdguest:
[[email protected] vsftpd_user_conf]# mkdir /home/xiaowang
[[email protected] vsftpd_user_conf]# chown vsftpdguest.vsftpdguest ./xiaowang
[[email protected] vsftpd_user_conf]# chmod 600 /home/xiaowang
透过上述设置,xiaowang登入VSFTPD后,用“pwd”指令就可以开掘被自个儿被固定到本人的“/home/xiaowang”目录。
从文件系统档次来看,由于“/home/xiaowang”目录的权限是属于vsftpdguest的,所以任何的虚拟用户同样也足以访问xiaowang的本人目录。消除那一个主题素材也很轻松,大家只须要让VSFTPD肩负将虚拟用户限制在其本身目录,就能够制止虚拟用户的交互走访。具体做法参照前边第五步中所述,这里不再赘言。经过上述设置后,虚拟用户就足以享有属于自个儿的目录了。

  VSFTPD选择PAM情势注明虚拟用户。由于虚拟用户的用户名/口令被单独保存,因而在印证时,VSFTPD要求用3个系统用户的身价来读取数据库文件或数据库服务器以产生验证,那正是VSFTPD的guest用户。这正就如无名用户也须求有三个种类用户ftp同样。当然,我们也得以把guest用户作为是虚拟用户在系统中的代表。上边在系统中加多vsftpdguest用户,作为VSFTPD的guest。
  [[email protected] vsftpd-1.2.0]# useradd vsftpdguest
  当虚拟用户登入后,所在的地方为vsftpdguest的本身目录/home/vsftpdguest。假诺要让虚拟用户登陆到/var/ftp等其它目录,修改vsftpdguest的自身目录就可以。
  
  三、设置VSFTPD配置文件

 

vi /etc/pam.d/ftp ,内容如下
auth required /lib/security/pam_mysql.so user=ftpd passwd=123456 host=localhost db=ftpd table=user usercolumn=name passwdcolumn=passwd crypt=0

...

  大家创设数据库vsftpdvu,表users,字段name和passwd用于保存虚拟用户的用户名和口令,同期扩充八个虚拟用户xiaotong和xiaowang。
  
  [[email protected] vsftpd-1.2.0]# mysql -p
  mysql>create database vsftpdvu;
  mysql>use vsftpdvu;
  mysql>create table users(name char(16) binary,passwd char(16) binary);
  mysql>insert into users (name,passwd) values ('xiaotong',password('qqmywife'));
  mysql>insert into users (name,passwd) values ('xiaowang',password('ttmywife'));

 

[root@server2 vsftpd-2.0.3]# ftp 127.0.0.1

VSFTPD是1种在UNIX/Linux中那2个安全且高效的FTP服务器,近来早已被众多大型站点所运用。VSFTPD帮助将用户名和口令保存在数据库文件或数据库服务器中。VSFTPD称这种情势的用户为虚构用户。相对于FTP的本地(系统)用户来讲,虚拟用户只是FTP服务器的专有用户,虚拟用户只好访问FTP服务器所提供的能源,那大大巩固系统本人的安全性。绝对于无名用户来讲,虚拟用户要求用户名和密码技能博取FTP服务器中的文件,扩展了对用户和下载的可管理性。对于急需提供下载服务,但又不愿意全数人都足以佚名下载;既需求对下载用户打开管理,又思虑到主机安全和管制有利于的FTP站点来说,虚拟用户是一种极好的缓慢解决方案。本文介绍在RedHat Linux 九上如何将VSFTPD的虚拟用户名和密码保存在MySQL数据库服务器中。
  
  一、VSFTPD的安装

若是未有则下载pam-mysql安装(
自身下载的是pam_mysql-0.7RC1.tar.gz。
[[email protected] /]#cd /usr/local/src
[[email protected] src]#tar –zxvf pam_mysql-0.7RC1.tar.gz
[[email protected] src]#cd pam_mysql-0.7RC1
[[email protected] pam_mysql-0.7RC1]# ./configure --with-mysql=/usr/local/mysql/ --with-pam-mods-dir=/lib/security/
[[email protected] pam_mysql-0.7RC1]#make
[[email protected] pam_mysql-0.7RC1]#make install  

[root@server2 pam_mysql]# cp pam_mysql.so  /lib/security/

  在/etc/vsftpd.conf文件中,参预以下选项:
  guest_enable=YES
  guest_username=vsftpdguest
  
  然后进行以下命令,让VSFTPD在后台运营:
  [[email protected] vsftpd-1.2.0]# /usr/local/sbin/vsftpd &
  
  四、将虚拟用户保存在MySQL数据库服务器中

  1. 编写翻译MySQL的PAM认证模块
    翻看/lib/security目录下有未有MySQL对应的PAM模块。  

useradd -d /home/ftpd -s /sbin/nologin ftpd

  • 共3页:
  • 上一页
  • 1
  • 2
  • 3
  • 下一页

图片 1

Name (127.0.0.1:root): zhang1

  方今,VSFTPD的流行版本是一.二.0版。官方下载地址为ftp://vsftpd.beasts.org/users/cevans/vsftpd-1.二.0.tar.gz。在装置前,必要先做以下筹算干活:
  
  VSFTPD暗中同意配置中须要“nobody”用户。在系统中加多此用户,借使用户已经存在,useradd命令有对应提醒。
  [[email protected] root]# useradd nobody
  useradd: user nobody exists
  
  VSFTPD私下认可配置中供给“/usr/share/empty”目录。在系统中此目录,假设目录已经存在,mkdir命令有照管提示。
  [[email protected] root]# mkdir /usr/share/empty/
  mkdir: cannot create directory '/usr/share/empty': File exists
  
  VSFTPD提供无名氏FTP服务时,必要“ftp”用户和1个一蹴而就的佚名目录。
  [[email protected] root]# mkdir /var/ftp/
  [[email protected] root]# useradd -d /var/ftp ftp
  接下去的操作对于ftp用户是不是已经存在都是可行的。
  [[email protected] root]# chown root.root /var/ftp
  [[email protected] root]# chmod og-w /var/ftp
  
  以上策画职业产生后,大家就能够开首编写翻译源代码了。假定大家下载的vsftpd-1.贰.0.tar.gz在/root目录,实施以下命令:
  [[email protected] root]# tar zxvf vsftpd-1.2.0.tar.gz
  [[email protected] root]# cd vsftpd-1.2.0
  [[email protected] vsftpd-1.2.0]# make
  [[email protected] vsftpd-1.2.0]# make install
  
  上面包车型大巴“make install”命令将编写翻译好的2进制文件、手册等复制到相应目录。在帕杰罗HL九上,可能供给手动试行以下复制:
  [[email protected] vsftpd-1.2.0]# cp vsftpd /usr/local/sbin/vsftpd
  [[email protected] vsftpd-1.2.0]# cp vsftpd.conf.5 /usr/local/share/man/man5
  [[email protected] vsftpd-1.2.0]# cp vsftpd.8 /usr/local/share/man/man8
  
  接下去,大家复制3个简约的配备文件作为基础供后边修改。
  [[email protected] vsftpd-1.2.0]# cp vsftpd.conf /etc
  [[email protected] vsftpd-1.2.0]# cp RedHat/vsftpd.pam /etc/pam.d/ftp
  复制PAM验证文件,以允许本地用户登陆VSFTPD。
  [[email protected] vsftpd-1.2.0]# cp RedHat/vsftpd.pam /etc/pam.d/ftp
  
  二、创建guest用户

图片 2

不知情为何用二.10.0版本的时候make的时候老是出现:

...

  1. 加多虚拟用户口令文件
    [[email protected] /]#vi /etc/vsftpd/vftpuser.txt
    加多虚拟用户名和密码,一行用户名,一行密码,由此及彼。奇数行为用户名,偶数行为密码。
    bobyuan #用户名
    123456 #密码
    markwang #用户名
    123456 #密码  
  2. 更换虚拟用户口令认证文件
    将刚增加的vftpuser.txt虚拟用户口令文件转变到系统识别的口令认证文件。
    第二查看系统有未有安装生成口令认证文件所需的软件db四-utils。
    [[email protected] /]#rpm –qa |grep db4-utils
    [[email protected] /]#rpm –ivh db4-utils-4.3.29-9.fc6.i386.rpm
    下边采取db_load命令生成虚拟用户口令认证文件。
    [[email protected] /]#db_load –T –t hash –f /etc/vsftpd/vftpuser.txt /etc/vsftpd/vftpuser.db  
  3. 编纂vsftpd的PAM认证文件
    在/etc/pam.d目录下,
    [[email protected] /]#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  
  4. 确立地点映射用户并设置宿主目录权限
    全体的FTP虚拟用户必要利用一个种类用户,那个系统用户没有供给密码。
    [[email protected] /]#useradd –d /home/vftpsite –s /sbin/nologin vftpuser
    [[email protected] /]#chmod 700 /home/vftpsite  
  5. 配备vsftpd.conf(设置虚拟用户配置项)
    [[email protected] /]#vi /etc/vsftpd/vsftpd.conf
    guest_enable=YES #敞开虚拟用户
    guest_username=vftpuser #FTP虚拟用户对应的种类用户
    pam_service_name=vsftpd #PAM认证文件  
  6. 重启vsftpd服务
    [[email protected] /]#service vsftpd restart  
  7. 测试虚拟用户登陆FTP
    C:UserAdministrator>ftp 192.168.120.240
    连接到192.168.120.240。
    220 Welcome to BOB FTP server
    用户(192.168.120.240(none)):markwang
    331 Please specify the password.
    密码:
    230 Login successful.
     
    二、数据库服务器(MySQL)情势
  8. 安装MySQL
    自己动用的是Tar包安装的MySQL,版本号:mysql-6.0.⑧-阿尔法.tar.gz
    实际安装形式,请查看本身的另壹篇小说“安排LAMP Discuz!七.0”。  
  9. 树立地点映射用户并安装宿主目录权限
    [[email protected] /]#useradd –d /home/vftpsite –s /sbin/nologin vftpuser
    [[email protected] /]#chmod 700 /home/vftpsite  
  10. 配置vsftpd.conf(设置虚拟用户配置项)
    [[email protected] /]#vi /etc/vsftpd/vsftpd.conf
    guest_enable=YES #开启虚拟用户
    guest_username=vftpuser #FTP虚拟用户对应的种类用户
    pam_service_name=vsftpd #PAM认证文件  
  11. 在MySQL中创建用户口令数据库
    [[email protected] /]#mysql –u root –p
    mysql> create database vftpuser;   #确立虚拟用户数据库,库名vftpuser
    mysql> use vftpuser;  #进入vftpuser数据库
     
    mysql> create table users(name char(16) binary,passwd char(16) binary);  #制造虚拟用户口令表,表名users
     
    mysql> insert into users (name,passwd) values ('bobyuan',password('111')); 
    mysql>  insert into users (name,passwd) values ('markwang',password('111'));
    #确立七个虚拟用户,bobyuan和markwang
    注:在这里我用这种办法加多的虚拟用户密码都是经过MySQL加密的,加密后的密码pam-mysql不可能鉴定分别(MySQL和pam-mysql包容性有些标题),因而本次实验应用公开保存密码。
    增多明文密码:
    格局1:单个增添用户
    mysql> insert into users (name,passwd) values ('bobyuan', '111');
    mysql> insert into users (name,passwd) values ('markwang',‘111');
    办法贰:批量充裕用户
    新建vftpuser.txt文件
    [[email protected] /]#vi vftpuser.txt
    增添用户名和密码,注意字段数据里面要用Tab键隔断。
    bobyuan  111
    markwang 111
    mysql>use vftpuser;
    mysql>load data local infile “/vftpuser.txt”into table users;
    mysql>flush privileges;
     
    mysql> grant select on vftpuser.users to [email protected] identified by '111111';  #授权vftpuser那几个账号能够读取vftpuser数据库的user表  
  12. 申明第肆步的装置是或不是成功
    [[email protected] /]#mysql –u vftpuser –p
    mysql>show databases;
    mysql>use vftpuser;
    mysql>show tables;
    mysql>select * from users;
    mysql>quit
    如下图:

230 Login successful.    \业已报到成功了!

二种艺术创设Vsftpd虚拟用户
 
咱们登入FTP有三种办法,无名登入、本地用户登入和编造用户登入。
佚名登陆:在签到FTP时使用私下认可的用户名,一般是ftp或anonymous。
本地用户登入:使用系统用户登6,在/etc/passwd中。
编造用户登6:那是FTP专有用户,有二种办法贯彻虚拟用户,本地数据文件和数据库服务器。
FTP虚拟用户是FTP服务器的专有用户,使用虚拟用户登6FTP,只能访问FTP服务器提供的财富,大大升高了系统的日喀则。
 
本文实验的Linux系统是CentOS 五 update二
 
一、本地数据文件情势

1、 安装vsftp软件

  1. 编写vsftpd的PAM认证文件
    在/etc/pam.d目录下,
    [[email protected] /]#vi /etc/pam.d/vsftpd
    将里面别的的都注释掉,增加底下那两行:
    auth required pam_mysql.so user=vftpuser passwd=111111 host=localhost db=vftpuser table=users usercolumn=name passwdcolumn=passwd crypt=0
    account required pam_mysql.so user=vftpuser passwd=111111 host=localhost db=vftpuser table=users usercolumn=name passwdcolumn=passwd crypt=0
    crypt=0:表示口令使用公开情势保存在数据库中
    crypt=1:表示口令使用UNIX的DES加密方法加密后保存在数据库中
    crypt=贰:表示口令使用MySQL的password()函数加密后保存在数据库中
    crypt=三:表示口令使用MD5散列值的办法保存在数据库中  
  2. 重启vsftpd服务
    [[email protected] /]#service vsftpd restart  
  3. 测试虚拟用户登六FTP
    C:UserAdministrator>ftp 192.168.120.240
    Connected to 192.168.120.240.
    220 Welcome to BOB FTP server
    User (192.168.120.240:(none)): bobyuan
    331 Please specify the password.
    Password:
    230 Login successful.
    ftp> quit
    221 Goodbye.
     
    3、虚拟用户高等设置
  4. virtual_use_local_privs参数
    当virtual_use_local_privs=YES时,虚拟用户和本地用户有同一的权柄;
    当virtual_use_local_privs=NO时,虚拟用户和佚名用户有同等的权杖,暗中同意是NO。
     
    当virtual_use_local_privs=YES,write_enable=YES时,虚拟用户具有写权限(上传、下载、删除、重命名)。
     
    当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=YES,
    anon_upload_enable=YES时,虚拟用户不可能浏览目录,只可以上传文件,无别的权限。
     
    当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,
    anon_upload_enable=NO时,虚拟用户只好下载文件,无此外权限。
     
    当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,
    anon_upload_enable=YES时,虚拟用户只可以上传和下载文件,无其余权限。
     
    当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,
    anon_mkdir_write_enable=YES时,虚拟用户只可以下载文件和开创文件夹,无任何权限。
     
    当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,
    anon_other_write_enable=YES时,虚拟用户只好下载、删除和重命名文件,无其余权限。  
  5. 确立梯次虚拟用户本身的安顿文件
    [[email protected] /]#vi /etc/vsftpd/vsftpd.conf
    添加:
    user_config_dir=/etc/vsftpd/vsftpd_user_conf
    [[email protected] /]#mkdir /etc/vsftpd/vsftpd_user_conf
    编纂bobyuan的陈设文件
    [[email protected] /]#vi /etc/vsftpd/vsftpd_user_conf/bobyuan
    添加:
    anon_world_readable_only=NO #开放bobyuan的下载权限(只可以下载)。注意那个地点千万不能写成YES,不然bobyuan将无法列出文件和目录。
    编排markwang的配备文件
    [[email protected] /]#vi /etc/vsftpd/vsftpd_user_conf/markwang
    添加:
    write_enable=YES #盛开markwang的写权限
    anon_world_readable_only=NO #绽开markwang的下载权限
    anon_upload_enable=YES #盛开markwang的上传权限
    anon_mkdir_write_enable=YES #绽放markwang创制目录的权力
    anon_other_write_enable=YES #开放markwang删除和重命名的权位
     
    四、虚拟用户配置文件(实验)
  6. 持有虚拟用户采纳统一安顿
    [[email protected] /]#vi /etc/vsftpd/vsftpd.conf
    write_enable=YES
    anonymous_enable=NO
    local_enable=YES
    guest_enable=YES
    guest_username=vftpuser
    virtual_use_local_privs=NO
    pam_service_name=vsftpd
    anon_world_readable_only=NO #能够下载
    anon_upload_enable=NO(默认值)#不能上传
    anon_mkdir_write_enable=NO(默认值)#不可能新建文件夹
    anon_other_write_enable=NO(默认值)#无法去除和重命名文件
    ftpd_banner=Welcome to BOB FTP server
    xferlog_enable=YES
    xferlog_file=/var/log/vsftpd.log
    xferlog_std_format=YES
    ascii_upload_enable=YES
    ascii_download_enable=YES
    tcp_wrappers=NO
    setproctitle_enable=YES
    listen_port=21
    connect_from_port_20=YES
    idle_session_timeout=600
    data_connection_timeout=120
    max_clients=0
    max_per_ip=3
    local_max_rate=512000  
  7. 逐条虚拟用户使用本身配备
    [[email protected] /]#vi /etc/vsftpd/vsftpd.conf
    write_enable=YES
    anonymous_enable=NO
    local_enable=YES
    guest_enable=YES
    guest_username=vftpuser
    virtual_use_local_privs=NO
    pam_service_name=vsftpd
    user_config_dir=/etc/vsftpd/vsftpd_user_conf
    ftpd_banner=Welcome to BOB FTP server
    xferlog_enable=YES
    xferlog_file=/var/log/vsftpd.log
    xferlog_std_format=YES
    ascii_upload_enable=YES
    ascii_download_enable=YES
    tcp_wrappers=NO
    setproctitle_enable=YES
    listen_port=21
    connect_from_port_20=YES
    idle_session_timeout=600
    data_connection_timeout=120
    max_clients=0
    max_per_ip=3
    local_max_rate=512000
     
    [[email protected] /]#mkdir /etc/vsftpd/vsftpd_user_conf
    编纂bobyuan(FTP佚名用户)的布局文件
    [[email protected] /]#vi /etc/vsftpd/vsftpd_user_conf/bobyuan
    anon_world_readable_only=NO
    编排ftpadmin(FTP匿名管理员)的配备文件
    [[email protected] /]#vi /etc/vsftpd/vsftpd_user_conf/ftpadmin
    anon_world_readable_only=NO
    anon_upload_enable=YES
    anon_mkdir_write_enable=YES
    anon_other_write_enable=YES
     
    关于利用MySQL完结虚拟用户的另1篇文章,请参见“Vsftpd FTP服务器-虚拟用户(mysql)和本地用户同期表明”。
     
    正文出自 “大浪淘沙” 博客

#ifndef VSF_BUILDDEFS_H

大家登6FTP有二种情势,佚名登入、本地用户登入和编造用户登陆。 无名登六:在报到FTP时选拔暗中同意的用户名,...

[root@server2 ftp]# cd pam_mysql

(一)       创设一个库并安装相应权限

           [root@server2 vsftpd-2.0.3]# mysql –uroot

220 (vsFTPd 2.0.3)

安装vsftp:

   /usr/local/sbin/vsftpd /etc/vsftpd.conf &  //后台运营!

就此换来2.0.三本子!

[root@server2 ftp]# tar xzvf vsftpd-2.1.0.tar.gz

版权声明:本文由ca888发布于程序人生,转载请注明出处:VSFTP+MySQL虚拟用户配置