1.安裝vsftp、mysql、epel_release(epel源,后面要安裝的pam_mysql認證模塊需要這個源)、pam_mysql
2.剛裝的mysql運行一下/usr/bin/mysql_secure_installation
3.建立數據庫vsftpd,建表user,
create database vsftpd;
use vsftpd;
create users(id int auto_increment primary key,name char(20) binary,passwd char(41) binary);
4.插入兩條測試用戶數據
insert into users(name,passwd) values(t1,password('t1'));
insert into users(name,passwd) values(t2,password('t2'));
5.添加連接數據庫的用戶(vsftpd)以及密碼(vsftpdp@ssword)
grant select on vsftpd.* to 'vsftpd'@'127.0.0.1' identified by 'vsftpdp@ssword';
6.添加pam配置文件并修改vsftpd.conf
在/etc/pam.d/下建立文件 vsftpd.mysql
添加內容:
auth required pam_mysql.so user=vsftpd passwd=cztvu host=127.0.0.1 db=vsftpd table=users usercolumn=name passwdcolumn=passwd crypt=2
account required pam_mysql.so user=vsftpd passwd=cztvu host=127.0.0.1 db=vsftpd table=users usercolumn=name passwdcolumn=passwd crypt=2
修改vsftpd.conf添加
guest_enable=yes
guest_username=vuser (虛擬用戶映射到系統的vuser本地用戶,我們需要等下在后面添加一下vuser本地用戶)
user_config_dir=/etc/vsftpd/vuser_conf/ (這個目錄里面可以添加對應的虛擬用戶名稱的配置文件,可以給不同的虛擬用戶配置不同的權限)
pam_service_name=vsftpd.mysql
7.添加vuser本地用戶
useradd -s /sbin/nologin vuser -d /var/ftproot (這個目錄/var/ftproot可以自己定,最終你可以通過配置虛擬用戶的配置文件,指定虛擬用戶的根目錄)
8.本例虛擬用戶是t1、t2所以你需要在/etc/vsftpd/vuser_conf/這個目錄下建立同名的t1 t2配置文件,具體配置根據實際需求而定。
調試配置的時候要注意文件夾權限。
原創文章,作者:duiduifei,如若轉載,請注明出處:http://www.www58058.com/19123