FREEBSD上vsftp+MYSQL实现虚拟用户验证

混江龙づ霸主 提交于 2019-12-10 17:57:11
1、VSFTP配置
vsftpd.conf的配置。PORT安装
listen=yes
guest_enable=yes
guest_username=vsftpdguest
其它按默认配置。
2、PAM验证配置 /etc/pam.d/ftp,使用默认ftp的文件,但已经将/etc/pam.d/ftp清空,填入以下,
auth required pam_mysql.so user=vsftpdguest passwd=vsftpdguest host=localhost db=vsftpd table=us
ers usercolumn=name passwdcolumn=passwd crypt=2
account required pam_mysql.so user=vsftpdguest passwd=vsftpdguest host=localhost db=vsftpd table
=users usercolumn=name passwdcolumn=passwd crypt=2
用wc -l /etc/pam.d/ftp返回值为2行。
3、MYSQL内的数据库配置
# mysql
mysql> create database vsftpd; 
mysql> use vsftpd; 
mysql> create table users(name varchar(20) 
binary,passwd varchar(50) binary); 
mysql> insert into users (name,passwd) values 
('test',password('123456')); 
mysql> grant select on vsftpdvu.users to vsftpdguest@localhost 
identified by 'vsftpdguest'; 
4、测试新建的users表是否正常
mysql -u vsftpdguest -ptest vsftpd 
mysql>use vsftpd;
mysql>select * from users; 
返回结果为test 和加密后的123456 码.

5、登陆测试
app# ftp localhost
Trying ::1...
ftp: connect to address ::1: Connection refused
Trying 127.0.0.1...
Connected to localhost.
220 (vsFTPd 2.0.5)
Name (localhost:root): test
331 Please specify the password.
Password:
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!