FTP-Vsftpd的高階應用:虛擬使用者
簡介
虛擬使用者都是匿名使用者,故虛擬使用者的許可權由匿名使用者相關指令指定
所有的虛擬使用者都會對映給一個系統使用者,如vusers,訪問時的檔案目錄是此係統使用者的家目錄
虛擬使用者的存放方式:
hash編碼的檔案(奇數行為使用者名稱,偶數行為密碼)
關係型資料庫(透過第三方模組pam-mysql實現認證)
例項分析
wKioL1M0tAmCBEyKAACmcPFciDs352.jpg
配置
安裝所需的程式
# 安裝mysql和pam_mysql(由epel源提供)
yum -y install vsftpd mysql-server mysql-devel pam_mysql
建立虛擬使用者帳號
# 1. 準備資料庫及相關表
# 首先請確保mysql服務已經正常啟動。而後,按需要建立儲存虛擬使用者的資料庫即可,這裡將其建立為vsftpd資料庫。
mysql> create database vsftpd;
mysql> grant select on vsftpd.* to ftpuser@localhost identified by 'jason11';
mysql> grant select on vsftpd.* to ftpuser@127.0.0.1 identified by 'jason11';
mysql> grant select on vsftpd.* to ftpuser@‘192.168.%.%’ identified by 'jason11';
mysql> flush privileges;
mysql> use vsftpd;
mysql> create table users (
-> id int AUTO_INCREMENT NOT NULL,
-> name char(20) binary NOT NULL,
-> password char(48) binary NOT NULL,
-> primary key(id)
-> );
# 2. 新增測試的虛擬使用者
mysql> insert into users(name,password) values('tom','magedu');
mysql> insert into users(name,password) values('jerry','magedu');
配置vsftpd
# 1.建立pam認證所需檔案
vi /etc/pam.d/vsftpd.mysql
# 新增如下兩行
auth required /lib/security/pam_mysql.so user= ftpuser passwd=jason11 host=localhost db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=0
account required /lib/security/pam_mysql.so user= ftpuser passwd=jason11 host=localhost db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=0
# 2.修改vsftpd的配置檔案,使其適應mysql認證
# 建立虛擬使用者對映的系統使用者及對應的目錄
useradd -s /sbin/nologin -d /var/ftproot vuser # 設定vuser的家目錄為/var/ftproot
chmod go+rx /var/ftproot
# 請確保/etc/vsftpd.conf中已經啟用了以下選項
anonymous_enable=YES
local_enable=YES
write_enable=YES
anon_upload_enable=NO
anon_mkdir_write_enable=NO
chroot_local_user=YES
# 而後新增以下選項
guest_enable=YES
guest_username=vuser
# 並確保pam_service_name選項的值如下所示
pam_service_name=vsftpd.mysql
啟動vsftpd服務
# 啟動服務
service vsftpd start
chkconfig vsftpd on
# 檢視埠開啟情況
ss -tunl |grep 21
高階應用
配置不同的虛擬使用者具有不同的訪問許可權
# 1. 配置vsftpd為虛擬使用者使用配置檔案目錄
vim /etc/vsftpd/vsftpd.conf
# 新增如下選項
user_config_dir=/etc/vsftpd/vusers_config
# 2. 建立所需要目錄,併為虛擬使用者提供配置檔案
mkdir /etc/vsftpd/vusers_config/
cd /etc/vsftpd/vusers_config/
touch tom jerry
# 3. 配置虛擬使用者的訪問許可權
# 讓tom使用者具有上傳檔案、刪除檔案、建立目錄等許可權
vi /etc/vsftpd/vusers/tom
anon_upload_enable=YES
anon_mkdir_write_enable= YES
anon_other_write_enable=YES
# 讓jerry使用者僅具有檢視下載許可權
vi /etc/vsftpd/vusers/jerry
anon_upload_enable=NO
anon_mkdir_write_enable= NO
anon_other_write_enable=NO
使用者登入密碼加密
# 1. 修改pam_mysql的加密方式
vi /etc/pam.d/vsftpd.mysql
auth required /lib/security/pam_mysql.so user= ftpuser passwd=jason11 host=localhost db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2
account required /lib/security/pam_mysql.so user= ftpuser passwd=jason11 host=localhost db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2
# 修改crypt的值即可,0代表MySqL中使用者密碼不加密儲存,1代表crypt函式加密,2代表MySQL中的PASSWORD函式加密,3代表MD5加密,4代表SHA1加密
# 2. 需修改存入MySQL中的虛擬使用者的登入密碼為加密形式,如
mysql> insert into users(name,password) values('tom',password('jason11'));
mysql> insert into users(name,password) values('jerry',password('jason11'));
上一篇:FTP-工作原理及Vsftpd基礎配置
©著作權歸作者所有:來自51CTO部落格作者xxrenzhe11的原創作品,如需轉載,請註明出處,否則將追究法律責任
加密FTP虛擬使用者新解Linux
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/1795/viewspace-2820674/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- AWK高階應用
- Redis 高階應用Redis
- HarmonyOS Next 使用者認證的高階應用與擴充
- 天翼雲虛擬IP地址及其在高可用叢集中的應用
- React 高階應用 -- 高階元件 Heigher Order ComponentReact元件
- Android 高階面試-4:虛擬機器相關Android面試虛擬機
- 伺服器虛擬化的應用前景伺服器
- 虛擬音訊應用:Loopback Mac音訊OOPMac
- Loopback for Mac(虛擬音訊應用)OOPMac音訊
- react 高階元件的 理解和應用React元件
- 向量(高階的隨機化應用)隨機
- 「Mybatis系列」Mybatis高階應用MyBatis
- 徹底釋放虛擬化,Docker的應用Docker
- 基於PostGIS的高階應用(5)–PolygonSplitingGo
- 分享Python的5種高階特徵應用Python特徵
- 【北京】虛擬幣企業招聘go高階後端工程師Go後端工程師
- 元宇宙技術對於虛擬模擬應用的影響元宇宙
- LVS高階應用-會話保持會話
- ansible高階應用ansible-vault
- Docker 運維高階應用管理Docker運維
- Linux中Postfix虛擬使用者及虛擬域(六)Linux
- 說說 vue-router 元件的高階應用Vue元件
- React 中的高階元件及其應用場景React元件
- MACD技術的高階應用--MACD與波浪Mac
- 高階玩法之類的裝飾器的應用
- vsftp vuser虛擬使用者FTP
- Hive 高階應用開發示例(一)Hive
- C++高階應用_設計模式C++設計模式
- tomcat中虛擬主機以及web應用程式的配置TomcatWeb
- IPPSWAP模式應用開發:革命性DAPP賦予使用者虛擬世界的盈利機會模式APP虛擬世界
- STM32F103 高階應用(2)——中斷應用
- 國產網路卡:虛擬化應用,民族品牌
- 2020年焊工(高階)模擬試題及焊工(高階)模擬考試
- 虛擬數字儲存表——SQLServer2012可高用SQLServer
- 虛擬主播技術在智慧問答中的應用
- 在Linux中,如何進行虛擬化技術的應用?Linux
- VR虛擬現實表現出的三大應用特徵VR特徵
- WinRAR初級中級高階等應用