PureFTPd 問(wèn)答集中文版
Pureftpd是一款快速,高質(zhì)量,功能齊全的ftp服務(wù)器,最重要的是可以支持設(shè)置客戶端默認(rèn)編碼,Pureftpd非常強(qiáng)大非常好用,但是相信你們都有相關(guān)PureFTPd的自己的問(wèn)題,我在這里搜集了好多,去看看有沒(méi)你想要的答案!
1、用戶可以刪除屬于root的文件?
Q:我有一個(gè)屬于"john"的文件夾,不過(guò)我放進(jìn)了一些屬于"root"(或者其他用戶)的 文件.然而,我發(fā)現(xiàn)John可以刪除這些文件!
A:是的,這時(shí)標(biāo)準(zhǔn)的Unix行為:文件夾的所有者可以在他的文件夾內(nèi)為所欲為,無(wú) 視文件的所有者。如果你希望有不可變的文件,檢查操作系統(tǒng)有沒(méi)有這樣的功能。
例如,在linux操作系統(tǒng)、ext2/ext3文件系統(tǒng)上,用"chattr +i
2、多用戶共享的文件夾
Q:我有一個(gè)“public”文件夾。所有的用戶動(dòng)可以在此文件夾內(nèi)下載、上傳。文件 夾中文件的權(quán)限是777.不過(guò),用戶“john”可以刪除屬于用戶“joe”的文件。怎么避免這種事情發(fā)生?
A:對(duì)文件夾進(jìn)行如下操作:chmod 1777 public。這樣,文件夾仍是公共的(可寫(xiě) 、可讀),但只有文件所有者才可以刪除文件。
3、限制文件夾的可見(jiàn)性
Q:我希望人們只能看到自己的主目錄和自己的文件,而不希望他們看我的系統(tǒng)文件 。
A:這個(gè)功能叫做“chroot”。你可以帶著“-A”選項(xiàng)運(yùn)行pure-ftpd來(lái)啟動(dòng)這個(gè)功 能,就可以對(duì)所有的非root用戶進(jìn)行限制。
你也可以選擇“-a
不要同時(shí)使用-a
另外一種方法是選定你希望chroot的用戶。可以用“/./”的技巧(參考README 文 件)或者虛擬用戶來(lái)實(shí)現(xiàn)。
4、共享的文件夾和chroot
Q:我有一個(gè)文件夾,假設(shè)叫/var/incoming。我希望每個(gè)用戶都可以共享這個(gè)文件夾。但我希望每個(gè)用戶都被chroot。所以,/var/incoming應(yīng)該在“joe”和“john” 的帳戶可見(jiàn),但他們已經(jīng)被chroot了。這樣,怎么使/var/incoming對(duì)這些賬戶可見(jiàn)?
A:建立符號(hào)鏈接并不起作用,因?yàn)橐坏┍籧hroot,就意味著在基礎(chǔ)文件夾(用戶的 主目錄)之外的任何東西--包括符號(hào)鏈接--都不可訪問(wèn)。
不過(guò)所有的現(xiàn)代的操作系統(tǒng)都支持把本地目錄掛載到幾個(gè)不同的位置。要使/home/john/incoming和/home/joe/incoming都有/var/incoming的副本,可以使用下列命令:
* Linux : mount --bind /var/incoming /home/john/incoming
mount --bind /var/incoming /home/joe/incoming
* Solaris : mount -F lofs /var/incoming /home/john/incoming
mount -F lofs /var/incoming /home/joe/incoming
* BSD : mount_null /var/incoming /home/john/incoming
mount_null /var/incoming /home/joe/incoming
警告:FreeBSD的mount_null已經(jīng)損壞,而且會(huì)導(dǎo)致低于4.4的發(fā)布版FreeBSD系統(tǒng)的內(nèi)核崩潰。
另外一個(gè)解決方法是重新編譯Pure_FTPd,在./configure時(shí),加上--with-virtualchroot。使用虛擬chroot,指向在chroot文件夾外面的文件的符號(hào)連接也可以達(dá)到。在二進(jìn)制包中,這個(gè)功能已經(jīng)啟用。
5、Tar 和/或 gzip不工作
Q:能不能像在Wu-FTPd中一樣使用“get directory.tar”命令?(Sven Goldt)
A:很不幸,不能。服務(wù)器建立gzip/tar既不是已經(jīng)存在的功能,也不是計(jì)劃中的功 能。對(duì)Wu-FTPd和BSD ftpd的嚴(yán)重的安全漏洞,這個(gè)功能難逃責(zé)任。此功能占用了大量服務(wù)器資源(可以導(dǎo)致拒絕服務(wù)式攻擊)。它也不容易建立(chroot環(huán)境=>需要 添加/etc/lib/bin文件夾,在某些平臺(tái)上添加/dev,等等)
6、如何限制對(duì)點(diǎn)文件的訪問(wèn)?
Q:有沒(méi)有防止人們?cè)L問(wèn)“.”文件/文件夾(像.bash_history, .profile, .ssh ...)的選項(xiàng),即使這些用戶是文件的所有者?(William Kern)
A:有。“-x”(--prohibitdotfileswrite),防止用戶對(duì)點(diǎn)文件的寫(xiě)/刪除/改變權(quán)限/重命名操作,即使用戶擁有這些文件。不過(guò),這些文件仍然可以列出,因?yàn)槠髨D通過(guò)故意把事情搞的模糊不清來(lái)保障安全是非常愚蠢的,而且軟件也不該欺騙用戶 。不過(guò),用戶不能改變文件的內(nèi)容。
同樣,你也可以選用“-X”(--prohibitdotfilesread)選項(xiàng),這樣,用戶就無(wú)法讀 取點(diǎn)文件,也無(wú)法進(jìn)入以點(diǎn)開(kāi)頭的文件夾。
7、日志文件
Q:日志信息記錄到了哪里?怎么把日志導(dǎo)入一個(gè)特定的文件?怎么停止日志記錄?
A:日志信息發(fā)送到系統(tǒng)日志守護(hù)精靈。系統(tǒng)日志守護(hù)精靈通常叫做“syslogd”或“syslog-ng”。這個(gè)守護(hù)精靈負(fù)責(zé)從不同的程序中按照設(shè)備(范圍)和優(yōu)先級(jí)(緊急程度:debug, info, warning, error, critical...)把日志事件發(fā)送到日志文件 。
Pure-FTPd的日志信息默認(rèn)和“ftp”工具發(fā)送(在一些沒(méi)有“ftp”工具的老系統(tǒng)上,是“local2”).
除非你告訴syslogd把帶有"ftp"的信息重新導(dǎo)入特定的文件,這些信息就會(huì)被傳送到 /var/adm/messages, /var/log/messages,/var/adm/syslog 或 /var/log/syslog
檢查/etc/syslogd.conf,其中應(yīng)該有一行類似于:
*.*;mail.none;news.none -/var/log/messages
只要加上ftp.none:
*.*;ftp.none;mail.none.news.none -/var/log/messages
如果希望FTP信息寫(xiě)入一個(gè)特定的文件,只要加上:
ftp.* /var/log/ftp
所有的FTP信息都會(huì)寫(xiě)入/var/log/ftp.這些信息只會(huì)到這兒.
可以給pure-ftpd添加-f <工具名稱>(或者--facility=<工具名稱>)選項(xiàng)來(lái)改變所使用的工具
要完全禁止日志,使用 -f none (或--facility=none).如果你從來(lái)不讀log文件,推 薦這樣做:這樣會(huì)增進(jìn)服務(wù)器的性能表現(xiàn),減少磁盤(pán)的I/O.
通過(guò)閱讀上文,想必大家能找到自己所需要的東西,即使沒(méi)找到?jīng)]事,就當(dāng)看看Pureftpd方面的知識(shí)!希望本文對(duì)大家有所幫助!
【編輯推薦】
- 用shell用戶或虛擬用戶登錄pureftpd
- Pureftpd功能之系統(tǒng)帳號(hào)分離
- Pureftpd的權(quán)限控制
- 用pureftpd在slackware 10.1下架設(shè)帶web管理的ftp服務(wù)器
- Pureftpd之MYSQL數(shù)據(jù)庫(kù)所使用的函數(shù)
- Pureftpd-mysql.conf 設(shè)定
- Pureftpd兩種啟動(dòng)方式
- 加密pureftpd_php_manager目錄