以下的設定需求如下:
1) 禁止匿名登入
2) 使用者只能連到自己的 Home Directory,禁止連到其他的目錄
3) 使用者可以上傳檔案、覆蓋,但禁止刪除、下載
(開啟 FTP卻禁止使用者下載~~~ 這有點奇怪吧,哈哈哈)
操作步驟如下
1) 下載 ProFTP
- 我比較偷懶,到 http://rpm.pbone.net/ 下載 rpm 包
- 將下載的 rpm 包放置主機上,然後 rpm -ivh 即可安裝
3) 編輯 /etc/proftpd.conf
DefaultRoot ~ !adm (設定使用者只能到 Home Directory)
<Global> (此參數適合整個FTP網站)
AllowOverwrite no (擁有檔案複寫的權限)
# <Limit ALL SITE_CHMOD>
# AllowAll
# </Limit>
<Limit WRITE> (寫入權限設定)
AllowAll
</Limit>
<Limit DELE RMD RETR > (刪除檔案及目錄、下載權限設定)
DenyAll
</Limit>
</Global>
4) 將 ProFTP 服務啟動
以下我將各參數使用目的列出,若有需要可自行變換:
CMD: Change Working Directory 改變目錄
MKD: MaKe Directory建立目錄的權限
RNFR: ReName FRom 更改目錄名的權限
DELE: DELEte 刪除文件的權限
RMD: ReMove Directory 刪除目錄的權限
RETR: RETRieve 從服務端下載到客戶端的權限
STOR: STORe 從客戶端上傳到服務端的權限
READ: 可讀的權限,不包括列目錄的權限,相當於RETR,STAT等
WRITE: 寫文件或者目錄的權限,包括MKD和RMD
DIRS: 是否允許列目錄,相當於LIST,NLST等權限,還是比較實用的
ALL: 所有權限
LOGIN: 是否允許登陸的權限
針對權限的應用對象,可用下列方式設定。
AllowUser 針對某個用戶允許的Limit
DenyUser 針對某個用戶禁止的Limit
AllowGroup 針對某個用戶組允許的Limit
DenyGroup 針對某個用戶組禁止的Limit
AllowAll 針對所有用戶組允許的Limit
DenyAll 針對所有用戶禁止的Limit
PS: 以上的使用環境為 CentOS 5.10。
DefaultRoot ~ !adm (設定使用者只能到 Home Directory)
<Global> (此參數適合整個FTP網站)
AllowOverwrite no (擁有檔案複寫的權限)
# <Limit ALL SITE_CHMOD>
# AllowAll
# </Limit>
<Limit WRITE> (寫入權限設定)
AllowAll
</Limit>
<Limit DELE RMD RETR > (刪除檔案及目錄、下載權限設定)
DenyAll
</Limit>
</Global>
4) 將 ProFTP 服務啟動
- service proftpd start
5) 若需要開機就啟動的話,請下以下參數
- chkconfig proftpd on
以下我將各參數使用目的列出,若有需要可自行變換:
CMD: Change Working Directory 改變目錄
MKD: MaKe Directory建立目錄的權限
RNFR: ReName FRom 更改目錄名的權限
DELE: DELEte 刪除文件的權限
RMD: ReMove Directory 刪除目錄的權限
RETR: RETRieve 從服務端下載到客戶端的權限
STOR: STORe 從客戶端上傳到服務端的權限
READ: 可讀的權限,不包括列目錄的權限,相當於RETR,STAT等
WRITE: 寫文件或者目錄的權限,包括MKD和RMD
DIRS: 是否允許列目錄,相當於LIST,NLST等權限,還是比較實用的
ALL: 所有權限
LOGIN: 是否允許登陸的權限
針對權限的應用對象,可用下列方式設定。
AllowUser 針對某個用戶允許的Limit
DenyUser 針對某個用戶禁止的Limit
AllowGroup 針對某個用戶組允許的Limit
DenyGroup 針對某個用戶組禁止的Limit
AllowAll 針對所有用戶組允許的Limit
DenyAll 針對所有用戶禁止的Limit
PS: 以上的使用環境為 CentOS 5.10。
沒有留言:
張貼留言