FTP服務虛擬使用者模式搭建

2021-10-24 13:21:44 字數 3470 閱讀 3000

虛擬使用者模式:三種模式中最安全的一種認證模式,它需要為ftp服務單獨建立使用者資料庫檔案,虛擬出用來進行口令驗證的賬戶資訊,而這些賬戶資訊在伺服器系統中實際上是不存在的,僅供ftp服務程式進行認證使用。這樣,即使黑客破解了賬戶資訊也無法登入伺服器,從而有效降低了破壞範圍和影響。

實驗目標:搭建ftp服務中虛擬使用者登陸模式,並了解其原理與作用。

實驗準備:兩台c6標準虛擬機器。(selinux與防火牆已關閉)

實驗ip規劃:ftp服務端:192.168.10.10

​ ftp客戶端:192.168.10.11

安裝服務端:

yum install vsftpd -y
建立使用者資料庫檔案:

cd /etc/vsftpd

vim user.list

奇數行為賬戶名,偶數行為密碼。

zhangsan

123lisi

123

明文資訊既不安全,也不符合讓vsftpd服務程式直接載入的格式,因此需要使用db_load命令用演算法將原始的明文資訊檔案轉換成資料庫檔案,並且降低資料庫檔案的許可權(避免其他人看到資料庫檔案的內容),然後再把原始的明文資訊檔案刪除。

使用雜湊演算法加密資訊檔案:

db_load -t -t hash -f user.list user.db
賦予600許可權:

chmod 600 user.*
建立虛擬使用者以及ftp服務用於儲存檔案的根目錄

ps:當虛擬使用者登入後所訪問的預設位置。

useradd -d /var/user -s /sbin/nologin virtual
由於linux系統中的每乙個檔案都有所有者、所屬組屬性,例如使用虛擬賬戶「張三」新建了乙個檔案,但是系統中找不到賬戶「張三」,就會導致這個檔案的許可權出現錯誤。為此,需要再建立乙個可以對映到虛擬使用者的系統本地使用者。簡單來說,就是讓虛擬使用者預設登入到與之有對映關係的這個系統本地使用者的家目錄中,虛擬使用者建立的檔案的屬性也都歸屬於這個系統本地使用者,從而避免linux系統無法處理虛擬使用者所建立檔案的屬性許可權。

為了方便管理ftp伺服器上的資料,可以把這個系統本地使用者的家目錄設定為/var目錄(該目錄用來存放經常發生改變的資料)。並且為了安全起見,我們將這個系統本地使用者設定為不允許登入ftp伺服器,這不會影響虛擬使用者登入,而且還可以避免黑客通過這個系統本地使用者進行登入。

賦予儲存目錄許可權:

chmod 755 /var/user/
新建乙個用於虛擬使用者認證的pam檔案vsftpd.vu,其中pam檔案內的「db=」引數為使用db_load命令生成的賬戶密碼資料庫檔案的路徑,但不用寫資料庫檔案的字尾

cd /etc/pam.d/

cp vsftpd vsftpd.a

vim vsftpd.a

清空原本資料,新增以下資訊:

auth   required     pam_userdb.so  db=/etc/vsftpd/user

account required pam_userdb.so db=/etc/vsftpd/user

ps:開頭注釋資訊不能刪除!!

vim /etc/vsftpd/vsftpd.conf
檔案末尾新增:

pam_service_name=vsftpd.a

userlist_enable=yes

guest_enable=yes

guest_username=virtual

user_config_dir=/etc/vsftpd/conf

zhangsan和lisi都是用於vsftpd服務程式認證的虛擬賬戶,但是我們依然想對這兩人進行區別對待。比如,允許張三上傳、建立、修改、檢視、刪除檔案,只允許李四檢視檔案。這可以通過vsftpd服務程式來實現。只需新建乙個目錄,在裡面分別建立兩個以zhangsan和lisi命名的檔案,其中在名為zhangsan的檔案中寫入允許的相關許可權(使用匿名使用者的引數):

建立目錄:

cd /etc/vsftpd/

mkdir conf

建立限制檔案:

cd conf/

touch lisi

vim zhangsan

zhangsan新增以下控制許可權:

anon_upload_enable=yes 

anon_mkdir_write_enable=yes

anon_other_write_enable=yes

lisi不新增任何控制許可權。

建立zhangsan與lisi使用者,密碼均為123

useradd zhangsan

passwd zhangsan

useradd lisi

passwd lisi

儲存,重啟服務。

service vsftpd restart
客戶端使用lisi使用者登陸:

進行常規操作:

使用zhangsan登陸:

建立與改名:

確保自己在ftp介面中,並且登陸了zhangsan使用者

服務端檢視:

建立與改名操作成功。

上傳與刪除:

put woaixuexi.txt

rmdir chou

服務端檢視:

實驗成功,張三擁有上述許可權。

該文件於2023年10月8日由vonmerlot重新整理。

vsftpd服務虛擬使用者配置

所謂虛擬使用者就是沒有使用真實的帳戶,但ftp登入需要乙個使用者身份,這個時候我們可以給它建立乙個使用者,專門來給這些虛擬的使用者用ok拉。建立虛擬使用者 useradd d home ftpsite virtual chown virtual.virtual home ftpsite 修改 etc...

搭建FTP服務(匿名 本地 虛擬使用者)

1.4虛擬使用者登入 1.5開啟服務 2.客戶端配置 3.驗證 yum y install vsftpdanonymous enable yes 允許匿名賬戶登入 anon upload enable yes 允許匿名賬戶上傳 anon mkdir write enable yes 允許匿名賬戶新建...

vsftpd服務虛擬使用者訪問配置

1 建立虛擬使用者 sudo vi etc vsftpd vuser.txt 在vsuer.txt中新增使用者名稱密碼 如 tom 需要安裝db4 util 2 根據vuser.txt建立資料庫檔案 將文字轉換成資料庫認證檔案 sudo load db t t 指定演算法 hash f 指定檔案 e...