VSFTPD多用戶不同許可權安裝記錄及錯誤解決辦法
說明:
ftp需要多用戶。每個用戶只能操作自己根目錄裡面的東西。不能操作超過自己根目錄的
1,匿名用戶可以登錄,但是不能訪問虛擬用戶的宿主目錄,只能訪問共享目錄
2,虛擬用戶對自己的宿主目錄有任何許可權,且只能在自己宿主目錄中操作
一:系統及目錄說明
系統環境:CentOS-7-x86_64-Minimal-1708.iso
系統位數:64
ftp根目錄:/home/data/ftp
ftp配置文件目錄:/etc/vsftpd
ftp虛擬用戶許可權配置文件目錄: /etc/vsftpd/vuser_config
虛擬用戶對應的目錄:如jin:/home/data/ftp/jin
二:安裝步驟
1:關閉selinux和防火牆或者是開啟允許的埠。否則訪問會有問題。
這裡就直接關閉防火牆。
關閉selinux的命令:
關閉防火牆的命令:
2:安裝vsftpd及加密工具db_load
命令:
出現如上。安裝完成。
3:創建本地用戶[用於映射虛擬用戶。也就是虛擬用戶的宿主]
3.1:創建ftp用戶目錄
命令:
3.2:創建用戶
命令:
說明:可以直接使用3.2步驟創建。
3.3:更新許可權和組許可權
命令:
更新許可權:
賦予組許可權:
4:創建虛擬用戶[用戶名和密碼]文件
用於存放虛擬用戶登錄的
命令:
說明:
奇數列是用戶名,偶數列是密碼。
上圖表示:創建了兩個用戶
用戶名為 jin 密碼為123456
用戶名為 jinc 密碼為123456
5:生成加密用戶文件
切換到vsftpd目錄下:
命令:
使用命令,生成加密文件:
命令:
查看是否生成文件:
給生成的加密文件賦權
命令:
6:創建認證PAM文件
編輯命令:vi /etc/pam.d/vuser.vu
輸入:
說明:
因為本教程使用的系統是64位的。所有 pam_userdb.so在 /lib64/security/pam_userdb.so。如果使用32位系統的的,不知道userdb.so在哪裡,可以使用find命令進行查詢操作。
find命令:
找到之,修改成對應的。注意,不需要/usr
7:修改配置文件
先複製vsfptd.conf配置文件。
命令:
這裡修改的比較多。使用vi命令比較麻煩。所以可以使用記事本打開。
複製以下內容,替換之前內容:
8:重啟vsftp伺服器
查找vsftpd.service所在目錄:
(可以使用 chmod -R 給對應目錄賦權)
切換到對應目錄後,使用重啟命令:
查看啟動狀態:
已經啟動。
9:創建虛擬用戶[許可權]配置文件
在創建存放虛擬用戶許可權目錄:vuser_config
命令:
切換到許可權目錄,創建對應用戶許可權。
命令:cd /etc/vsftpd/vuser_config/
創建jin擁有所有許可權
使用vi命令輸入以下信息:
說明:
local_root=/home/data/ftp/jin #設置登錄後禁錮的目錄
write_enable=yes #開放寫許可權
anon_world_readable_only=no #開放下載許可權
anon_upload_enable=yes #開放上傳許可權
anon_mkdir_write_enable=yes #開放創建目錄的許可權
anon_other_write_enable=yes #開放刪除和重命名的許可權
在創建jinc用戶,只有上傳下載的許可權:
同樣使用vi命令,輸入:/home/data/ftp
10:修改虛擬用戶目錄許可權
查看創建的jin和jinc文件:
賦許可權700的 命令:
使用jin登錄測試。
出現錯誤信息:
解決如下:
11:創建虛擬用戶自己的目錄
mkdir /home/data/ftp/jin
mkdir /home/data/ftp/jinc
創建完成之後,重新登錄。
登錄成功
三:新增用戶
1:在虛擬用戶密碼文件中新增
添加用戶名、密碼:
2:重新生成加密文件:
切換到vsftpd目錄下:
命令:
使用命令:
錯誤信息:
db_load: BDB5090 unexpected end of input data or key/data pair
db_load: BDB5079 odd number of key/data pairs
解決方案:
在對添加用戶文件後面添加一個回車即可。
(解決參考:http://blog.sina.com.cn/s/blog_44322a5c0100b0uh.html
)
3:創建虛擬用戶的家目錄
mkdir /home/data/ftp/mytest
4:創建虛擬用戶許可權文件
切換:
cd /etc/vsftpd/vuser_config
使用vi命令進行編輯。
保存後,使用新建用戶進行登錄測試。
注意:
如果只是在vuser-list中新增了用戶信息。沒有創建新用戶的家目錄和許可權文件。則新用戶將用戶ftp目錄下最高許可權!!!
錯誤信息:
Job for vsftpd.service failed because the control process exited with error code. See "systemctl status vsftpd.service" and "journalctl -xe" for details.
使用命令查看:
systemctl status vsftpd.service
查看21埠:
lsof -i:21
被佔用了。
關閉後。重啟啟動
※spring boot 整合shiro 錯誤
※賣家:110嗎?這個買家有問題,瘋了
TAG:凱哥java |