寶塔PUREFTP下載
1. 我在linux下裝的是pureftp,怎麼查看ftp用戶,有怎麼給這些用戶設置許可權啊最好有命令
(以下內容屬於轉載.)pure-ftp默認採用Linux的root用戶。採用virtual users(虛擬帳戶) 則能夠更好的控制訪問權項。
建立一個ftp用戶的文件夾,也就是ftp共享文件夾。
#mkdir /usr/local/ftpdir
建立一個ftp用戶與組:
#groupadd ftpgroup
#useradd -g ftpgroup -d /usr/local/nginx/html -s /bin/bash ftpftp
進入安裝執行目錄
#cd /usr/local/pureftp/bin
建立第一個虛擬用戶:
#pure-pw useradd widebright -u ftpftp -d /usr/local/nginx/html/ -f /usr/local/pureftp/pure-ftpd.passwd
運行之後會提示你輸入一個 widebright用戶的密碼。
說明: widebright 就是要創建FTP登陸賬戶 ,ftpftp 是關聯的linux用戶,
-d指定起始目錄,並鎖定於該目錄。如果不鎖定,則用-D 如果需要不同的許可權,可以使用chown chmod配置linux用戶與組的指定目錄的許可權,
-f 指定生成的密碼文件的保存位置。
如果想修改用戶,可以自己查看pure-pw命令的用法。
如果提示-bash: pure-pw: command not found, 即環境變數里沒有這個路徑,不添加路徑的話要指定pure-pw的絕對路徑
這里是: /usr/local/pureftp/bin/pure-pw useradd widebright -u ftpftp -d /usr/local/nignx/html -f /usr/local/pureftp/pure-ftpd.passwd
之後會提示輸入密碼和再次輸入密碼: Password: Enter it again:
4. 生成密碼資料庫
#pure-pw mkdb /usr/local/pureftp/pure-ftpd.pdb -f /usr/local/pureftp/pure-ftpd.passwd
/usr/local/pureftp/pure-ftpd.pdb 是要生成的密碼資料庫保存的位置。-f 指定根據那個密碼文件生成,
這里採用的是先前生成的包含widebright用戶的密碼配置文件。/usr/local/pureftp/pure-ftpd.passwd
這是為:
#/usr/local/pureftp/bin/pure-pw mkdb /usr/local/pureftp/pure-ftpd.pdb -f /usr/local/pureftp/pure-ftpd.passwd
5. 啟動pure-ftpd 伺服器。
# /usr/local/pureftp/sbin/pure-ftpd -l puredb:/usr/local/pureftp/pure-ftpd.pdb & ====這里還是用的絕對路徑
-l 指定賬戶密碼資料庫,這里採用先前生成的puredb資料庫
& 是讓 pure-ftpd在後台運行
6.執行 ps -ef | grep pure-ftpd 可以看得到ftp 伺服器已經啟動了。
root 25839 20560 0 10:03 pts/0 00:00:00 pure-ftpd (SERVER)
root 25841 20560 0 10:03 pts/0 00:00:00 grep pure-ftpd
7. 一點小問題
伺服器啟動後,在windows 資源管理器中輸入ftp://widebright@伺服器IP 這樣的語句已經
可以訪問到剛才創建的ftp伺服器了。下載也很正常,可就是不能上傳。
用戶文件權項問題, 這個和關聯的linux用戶的文件夾權項有關,
我採用的是ftpftp用戶所以執行
#chown ftpftp /usr/local/nginx/html
就可以上傳文件了。
如果不能上傳文件的話用ls -l 來看看你的linux用戶有沒有相應的文件夾的寫許可權,必要的時候採用chown chmod命令修改。
附上網上找的pure-pw command not found的錯誤解決方法,這里沒有測試
1. 報沒找到命令是因為pure-pw所在的目錄沒有加到PATH環境變數中。
解決辦法有兩個:
a)把這個目錄加到PATH環境變數里
比如 export PATH=$PATH:/usr/local/pureftpd/bin,想永久生效的話得修改用戶的profile
2)用絕對路徑訪問pure-pw
比如 /usr/local/pureftpd/bin/pure-pw
附上用戶刪除命令:
#/usr/local/pureftp/bin/pure-pw userdel widebright222 -f /usr/local/pureftp/pure-ftpd.passwd
附上用戶宿主目錄修改命令
# /usr/local/pureftp/bin/pure-pw usermod widebright -d 新目錄 -f /usr/local/pureftp/pure-ftpd.passwd
2. 確認pureftpd使用的是這個配置文件,確認修改配置文件以後重新啟動pureftpd
安裝後nginx或apache改變ftpftp的宿主目錄,以及widebright上傳路徑,
改變ftpftp用戶的宿主目錄為/usr/local/nginx/html ,這里ningx的站點目錄為/usr/local/nginx/html/
#usrmod -d /usr/local/nginx/html ftpftp
改變上傳路徑
# /usr/local/pureftp/bin/pure-pw --help 查看help看到修改用戶上傳路徑用pure-pw usrmod -d
# /usr/local/pureftp/bin/pure-pw usermod widebright -d 新目錄 -f /usr/local/pureftp/pure-ftpd.passwd
然後重啟pure-ftp, 不知怎麼重啟, ps查看pure-ftp的進程結束掉,然後
#pure-pw mkdb /usr/local/pureftp/pure-ftpd.pdb -f /usr/local/pureftp/pure-ftpd.passwd 重新生成資料庫密碼
# /usr/local/pureftp/sbin/pure-ftpd -l puredb:/usr/local/pureftp/pure-ftpd.pdb & 再啟動
2. linux pureftp 用戶的許可權問題
不知道這么做有沒有安全問題,
vim /etc/passwd
vim /etc/group
將ftp用戶uid和用戶組gid都修改為和www-data相同的33
vim /etc/pure-ftpd/conf/MinUID
將1000修改為33或者注釋掉