1. 程式人生 > >ftp下實現文件和mysql驗證虛擬用戶

ftp下實現文件和mysql驗證虛擬用戶

虛擬用戶

一、基於文件驗證虛擬用戶

①創建虛擬用戶數據庫文件。

命令:vim /etc/vsftpd/viruser

技術分享

把文件轉化為數據庫格式。

命令:db_load -T -t hash -f viruser viruser.db

技術分享

②創建系統用戶和訪問FTP目錄。

技術分享

③創建pam配置文件。

命令:vim /etc/vsftpd/viruser.db

技術分享

④指定pam配置文件

技術分享

⑤關閉防火墻和selinux

技術分享

⑥給虛擬用戶設置各自的權限。

創建配置文件存放的目錄

命令:mkdir /etc/vsftpd/viruser.d/

修改ftp配置文件

命令:vim /etc/vsftpd/vsftpd.conf

user_config_dir=/etc/vsftpd/viruser.d/

進入虛擬用戶配置目錄下,創建各自虛擬用戶的權限。

命令:cd /etc/vsftpd/viruser.d/

ftp1虛擬用戶可讀可寫可上傳。

命令:vim ftp1

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

技術分享

ftp2只可讀。

命令:anon_upload_enable=NO

anon_mkdir_write_enable=NO

anon_other_write_enable=NO

技術分享

二、基於mysql實現驗證虛擬賬戶。 【就不貼照片了】

A機器:mysql服務器

B機器:ftp服務器

A機器:

①A安裝數據庫,運行安全腳本,創建數據庫用戶(存放虛擬賬戶)。

yum install mariadb

mysql_seure_installation 【運行安全腳本】

create database vsftpd; 【創建數據庫】

use vsftpd 【進入vsftpd數據庫裏面】

create table ftpusers(name char(30),passwd char(50)); 【在數據庫vsftpdb創建表】

grant all on vsftpd.* to ‘ftp‘@‘host‘ identified by ‘centos‘; 【創建vsftpd數據庫管理員】

insert into ftpusers values (‘ftp1‘,password(‘centos‘)), (‘ftp2‘,password(‘magedu‘)); 【對ftpusers表插入用戶

select * from ftpusers; 【查看創建的用戶】

B主機:

②安裝vsftpd包,編譯安裝pam_mysql【centos6光盤有】

yum install mariadb-devel pam-devel

./configure --with-pam-mods-dir=/lib64/security --with-pam=/usr/

make && make install

在FTP服務器上建立pam認證所需文件

vim /etc/pam.d/vsftpd.mysql 添加如下兩行

auth required pam_mysql.so user=ftpd 【遠程數據庫用戶名】passwd=centos host=遠程主機 db=vsftpd table=ftpusers usercolumn=name passwdcolumn=password crypt=2

account required pam_mysql.so user=vsftpd passwd=magedu host=mysqlserver db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2

修改ftpd主配置文件

vim /etc/ftpd/ftpd.conf

anonymous_enable=YES

guest_enable=YES

guest_username=vuser

pam_service_name=vsftpd.mysql

user_config_dir=/etc/vsftpd/vusers_config 【配置vsftpd為虛擬用戶使用配置文件目錄】

創建賬戶:在/etc/vsftpd/vusers_config下創建賬戶(文件)

創建所需要目錄,並為虛擬用戶提供配置文件

mkdir /etc/vsftpd/vusers_config/

cd /etc/vsftpd/vusers_config/

創建文件:

vim ftp1

anon_upload_enable=yes 【允許ftp1修改文件】

vim ftp2

local_root=/app/ftpdir2 【非匿名用戶登錄所在目錄】


ftp下實現文件和mysql驗證虛擬用戶