vsftpd基于MySQL服務(wù)實(shí)現(xiàn):
站在用戶的角度思考問題,與客戶深入溝通,找到蓬安網(wǎng)站設(shè)計與蓬安網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗(yàn)好的作品,建站類型包括:網(wǎng)站建設(shè)、成都網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、申請域名、網(wǎng)頁空間、企業(yè)郵箱。業(yè)務(wù)覆蓋蓬安地區(qū)。
查看是maradb中是否有pam-mysql,在目錄/lib64/security/下。
沒有就編譯安裝pam-mysql
步驟:
1. # yum -y groupinstall "Development Tools" "Server Platform Development"
2. # yum -y install pam-devel openssl-devel mariadb-devel mariadb-server
3. # ./configure --with-mysql=/usr --with-openssl=/usr --with-pam=/usr --with-pam-mods-dir=/lib64/security
注:可使用./configure -help查看配置指令
# make && make install
4. 之后在mysql數(shù)據(jù)庫中創(chuàng)建數(shù)據(jù)庫、表,在表中定義三個字段id,name,passwd。 授權(quán)等一系列操作
在此步驟中需要創(chuàng)建以下內(nèi)容:
連上數(shù)據(jù)庫:開啟mariadb服務(wù)之后使用mysql命令
a、CREATE DATABASE vsftpd;##創(chuàng)建數(shù)據(jù)庫
b、use vsftpd;#切換至數(shù)據(jù)庫中
c、CREATE TABLE users (id int AUTO_INCREMENT NOT NULL PRIMARY KEY,name char(30) NOT NULL,password char(48) binary NOT NULL );##創(chuàng)建表
d、INSERT INTO users(name,password) VALUES ('tom',password('mageedu'));##創(chuàng)建一個用戶
e、INSERT INTO users(name,password) VALUES ('jerry',password('mageedu'));##創(chuàng)建一個用戶
f、SELECT * FROM users;##查看表
g、GRANT select ON vsftpd.* TO vsftpd@’127.0.0.1‘ IDENTIFIED BY 'mageedu';##授權(quán)用戶
h、FLUSH PRIVILEGES;
退出,可以再次連接數(shù)據(jù)庫,檢查是否創(chuàng)建數(shù)據(jù)庫和表及表的內(nèi)容是否成功。
5. pam配置文件;在目錄/etc/pam.d/下有個vsftpd,但在使用時要重新創(chuàng)建配置文件,在/etc/pam.d/目錄下創(chuàng)建 vsftpd.mysql 在里面添加下面內(nèi)容:(注意下面的內(nèi)容都是在上一步當(dāng)中的數(shù)據(jù)庫中添加創(chuàng)建過的)
auth required pam_mysql.so user=vsftpd passwd=mageedu host=localhost db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2(加密方式類型)
account required pam_mysql.so user=vsftpd passwd=mageedu host=localhost db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2
6.創(chuàng)建用戶:useradd -s /sbin/nologin -d /ftproot vuser
chmod go+rx /ftproot/
配置文件:在配置文件/etc/vsftpd/vsftpd.conf中添加pam_service_name=vsftpd.mysql
gusest_enable=YES
gusest_username=vuser
在此同時確保上面的配置正確。
7.這時使用另一臺主機(jī)嘗試是否可以成功登陸。
可以修改配置文件玩玩查看上傳等功能。
8.如果只允許其中一個用戶上傳,則可以通過以下方法:
a、首先將主配置文件中的上傳功能注釋了
b、創(chuàng)建一個用戶的專一配置文件目錄/etc/vsftpd/vusers.conf.d在此目錄下vim tom 在tom文件中添加anon_upload_enable=YES
vim jerry 在此文件中添加anon_upload_enable=NO
c、此時在主配置文件中要明確告訴vsftpd要使用用戶配置目錄,則在主配置文件中添加user_config_dir=/etc/vsftpd/vusers.conf.d/
d、重啟服務(wù)