vsftp服务配置详解(3)

创建vsftpd所需用到的库,表,以及vsftpd用户
12345678910 mysql> create database vsftpd;
mysql> grant select on vsftpd.* to 'vsftpd'@'localhost' identified by '222222';
mysql> flush privileges;
 
mysql> create table users (
              id int AUTO_INCREMENT NOT NULL,
              name char(20) binary NOT NULL,
              password char(48) binary NOT NULL,
              primary key(id)
              );

添加虚拟用户:

mysql> insert into users(name,password) values('tom',password('tom'));
mysql> insert into users(name,password) values('jerry',password('jerry'));

配置vsftpd:
建立pam认证所需文件
12345 [root@sherry pam.d]# vim /etc/pam.d/vsftpd.mysql
# 认证时 crypt=2 mysql-password加密  3 md5 4sha1
auth required /lib64/security/pam_mysql.so user=vsftpd passwd=222222 host=127.0.0.1 db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2   
#  账号检验
account required /lib64/security/pam_mysql.so user=vsftpd passwd=222222 host=127.0.0.1 db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2

[root@sherry tftp]# useradd  -g sherry -s /sbin/nologin  -d /home/tftp testftp
[root@sherry home]# chmod go+rx tftp/

请确保/etc/vsftpd.conf中已经启用了以下选项
anonymous_enable=YES
local_enable=YES
write_enable=YES
anon_upload_enable=NO
anon_mkdir_write_enable=NO
chroot_local_user=YES
 
而后添加以下选项
guest_enable=YES
guest_username=testftp  #映射用户
pam_service_name=vsftpd.mysql

启动服务:
[root@sherry home]# /etc/init.d/vsftpd restart
Shutting down vsftpd:                                      [  OK  ]
Starting vsftpd for vsftpd:                                [  OK  ]

登入成功:
[root@martin ~]# lftp -u tom,tom 172.16.178.153
lftp tom@172.16.178.153:/> put a.bin.sql 
2448 bytes transferred
[root@sherry tftp]# ll
total 644
-rw------- 1 testftp sherry  2448 May 26 04:50 a.bin.sql

权限配置:
[root@sherry ~]# vim /etc/vsftpd/vsftpd.conf 
 # 配置vsftpd为虚拟用户使用配置文件目录vusers_config  名字随意 
user_config_dir=/etc/vsftpd/vusers_config

创建所需要目录,并为虚拟用户提供配置文件

[root@sherry ~]# mkdir /etc/vsftpd/vusers_config/
[root@sherry ~]# cd /etc/vsftpd/vusers_config/
[root@sherry ~]# touch tom jerry

虚拟用户对vsftpd服务的访问权限是通过匿名用户的相关指令进行的。比如,如果需要让tom用户具有上传文件的权限,可以修改/etc/vsftpd/vusers/tom文件,在里面添加如下选项即可。
[root@sherry ~]# /etc/vsftpd/vusers/tom
anon_upload_enable={YES|NO}
anon_mkdir_write_enable={YES|NO}
anon_other_write_enable={YES|NO}

玩转vsftpd服务器的四大高级配置:

vsFTPd配置教程:

Ubuntu实用简单的FTP架设

Ubuntu 上架设FTP服务器和Apache服务器

Ubuntu 13.04 安装 LAMP\vsftpd\Webmin\phpMyAdmin 服务及设置

RHEL6平台下SeLinux和vsftpd的匿名上传的简单案例

Linux系统vsftpd源码安装

openSUSE 13.2/13.1 下安装配置 FTP服务器 vsftpd 

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/6eae86e3d7bb7a0e3f47837ab9f559c2.html