|NO.Z.00023|——————————|^^ 部署 ^^|——|Linux&VSFTP服務.V05|---------------------------------------------------|VSFTP部署|虛擬驗證|
阿新 • • 發佈:2022-03-25
[LinuxNetworkEnd:Linux&VSFTP服務.V05] [Applications.LinuxNetworkEnd] [|VSFTP|匿名登入|本地登入|虛擬賬戶登入|openssl+vsftpd加密驗證|]
一、虛擬使用者驗證實驗(待驗證):
### --- 建立FTP的虛擬使用者的使用者資料庫檔案(在/etc/vsftpd) [root@server21 ~]# vim /etc/vsftpd/vsftpd.user a1 // 注:該檔名可以隨時定義,檔案內容格式,奇數行使用者,偶數行密碼 123456 a2 123456 a3 123456
~~~ 配置資料庫登入驗證的資料庫檔案
[root@server21 ~]# db_load -T -t hash -f /etc/vsftpd/vsftpd.user /etc/vsftpd/vsftpd.db //-T:將普通檔案轉換為資料庫檔案,-t:使用什麼加密型別,-f:指定要轉換的原檔案
[root@server21 ~]# ll /etc/vsftpd/ // 將使用者密碼的存放文字轉化為資料庫型別,並使用hash加密
-rw-r--r-- 1 root root 12288 Feb 4 11:01 vsftpd.db
~~~ 修改檔案許可權為600,保證其安全性 [root@server21 ~]# chmod 600 /etc/vsftpd/vsftpd.db
### --- 建立FTP虛擬使用者的對映使用者,並制定其使用者家目錄
~~~ 建立virtual使用者作為ftp的虛擬使用者的對映使用者
~~~ 不需要設定密碼,只需要virtual為使用者提供一個家目錄
[root@server21 ~]# useradd -d /var/ftproot -s /sbin/nologin virtual
### --- 建立支援迅疾使用者的PAM認證檔案,新增虛擬使用者支援 ~~~ 使用模板生成自己的認證配置檔案,方便一會呼叫 [root@server21 ~]# cp -a /etc/pam.d/vsftpd /etc/pam.d/vsftpd.pam
~~~ 編輯新生成的檔案,vsftpd.pam(清空原來內容,新增下列兩行)
[root@server21 ~]# vim /etc/pam.d/vsftpd.pam
auth required pam_userdb.so db=/etc/vsftpd/vsftpd // db已經聲明瞭呼叫資料庫檔案,所以vsftpd不需要加字尾
account required pam_userad.so db=/etc/vsftpd/vsftpd
~~~ 在vsftpd.conf檔案中新增支援配置
~~~ 修改:
[root@server21 ~]# vim /etc/vsftpd/vsftpd.conf
pam_service_name=vsftpd.pam
~~~ 新增:
guest_enable=YES // 開啟匿名使用者
guest_username=virtual // 匿名使用者的隱射使用者是誰
user_config_dir=/etc/vsftpd/dir // 匿名使用者的配置目錄在哪裡
~~~ 提前建立dir目錄
[root@server21 ~]# mkdir /etc/vsftpd/dir
### --- 為虛擬使用者建立獨立的配置檔案,啟動服務並測試
~~~ 注:做虛擬使用者配置檔案設定時,將主配置檔案中自定義的匿名使用者相關設定註釋掉
[root@server21 ~]# vim /etc/vsftpd/vsftpd.conf // 註釋如下內容
#anon_upload_enable=YES
#anon_mkdir_write_enable=YES
#anon_other_write_enable=YES
~~~ 使用者a1可以上傳:
[root@server21 ~]# vim /etc/vsftpd/dir/a1
anon_upload_enable=YES // 允許上傳檔案
~~~ 使用者a2可以建立目錄或檔案
[root@server21 ~]# vim /etc/vsftpd/dir/a2
anon_mkdir_write_enable=YES // 允許建立目錄
~~~ 使用者a3可以修改檔名:
[root@server21 ~]# vim /etc/vsftpd/dir/a3
anon_upload_enable=YES // 允許上傳檔案(為了覆蓋開啟的)
anon_other_write_enable=YES // 允許重名和刪除檔案/覆蓋
~~~ 注:給對映使用者的家目錄設定o+r讓虛擬使用者有讀許可權
[root@server21 ~]# chmod o+r /var/ftproot/
~~~ 重啟服務
[root@server21 ~]# service vsftpd restart
### --- 客戶端測試
[root@server22 ~]# ftp 20.20.20.21
Name (20.20.20.21:root): a1
Password:123456
[root@server22 ~]# ftp 20.20.20.21
Name (20.20.20.21:root): a2
Password:123456
[root@server22 ~]# ftp 20.20.20.21
Name (20.20.20.21:root): a3
Password:123456
===============================END===============================
Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart ——W.S.Landor
來自為知筆記(Wiz)