基于MySql验证的vsftpd虚拟用户 |
1. Mysql瀹夎yum -y install mariadb-server systemctl enable --now mariadb.service 1.2 寤鸿〃寤哄簱寤虹敤鎴?/h3>
mysql -e "CREATE DATABASE vsftpd;USE vsftpd; CREATE TABLE users (id INT AUTO_INCREMENT NOT NULL PRIMARY KEY, name CHAR(50) BINARY NOT NULL, password CHAR(48) BINARY NOT NULL); INSERT INTO users(name,password) values('qiu',password('123456')); INSERT INTO users(name,password) values('zhang',password('654321'));" mysql -e "select * from vsftpd.users;" 1.3 鍒涘缓杩滅▼杩炴帴璐︽埛mysql -e "create user vsftpd@'192.168.31.%' identified by 'Pana#123';" mysql -e "grant all on vsftpd.* to vsftpd@'192.168.31.%';" 2. 瀹夎FTP鏈嶅姟鍣?/h2>2.1 瀹夎vsftpdyum install -y vsftpd 2.2 瀹夎pam_mysqlyum -y install vsftpd gcc gcc-c++ make mariadb-devel pam-devel wget http://prdownloads.sourceforge.net/pam-mysql/pam_mysql-0.7RC1.tar.gz tar xf pam_mysql-0.7RC1.tar.gz cd pam_mysql-0.7RC1/ ./configure --with-pam-mods-dir=/lib64/security make install 2.2 寤虹珛pam璁よ瘉鎵闇鏂囦欢cat > /etc/pam.d/vsftpd.mysql<<EOF auth required pam_mysql.so user=vsftpd passwd=Pana#123 host=mysqlserver db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2 account required pam_mysql.so user=vsftpd passwd=Pana#123 host=mysqlserver db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2 EOF 娉ㄦ剰锛氫互涓婂弬鑰?README鏂囨 。 2.3 寤虹珛vsftpd鐢ㄦ埛mkdir -pv /data/ftproot/upload useradd -d /data/ftproot -s /sbin/nologin -r vuser setfacl -m u:vuser:rwx /data/ftproot/upload 2.4 淇敼vsftpd閰嶇疆鏂囦欢mkdir /etc/vsftpd/conf.d/ sed -Eri "s#(pam_service_name=vsftpd)#1.mysql#" /etc/vsftpd/vsftpd.conf echo "guest_enable=YES" >> /etc/vsftpd/vsftpd.conf echo "guest_username=vuser" >> /etc/vsftpd/vsftpd.conf 2.5 閲嶅惎vsftpd鏈嶅姟systemctl enable --now vsftpd 鍒版杩欑瘒鍏充簬鍩轰簬MySql楠岃瘉鐨剉sftpd铏氭嫙鐢ㄦ埛鐨勬枃绔犲氨浠嬬粛鍒拌繖浜?鏇村鐩稿叧MySql vsftpd铏氭嫙鐢ㄦ埛鍐呭璇锋悳绱㈣剼鏈箣瀹朵互鍓嶇殑鏂囩珷鎴栫户缁祻瑙堜笅闈㈢殑鐩稿叧鏂囩珷甯屾湜澶у浠ュ悗澶氬鏀寔鑴氭湰涔嬪锛?/p> |