歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Unix知識 >> 關於Unix >> 基於LINUX系統的proftp的學習筆記(二)

基於LINUX系統的proftp的學習筆記(二)

日期:2017/3/6 15:51:14   编辑:關於Unix
這裡要講一個非常實用的命令 /usr/local/proftpd/sbin/ftpshut 這個命令還是比較實用的,因為你可能需要不斷的調整你的 服務器 ,而這個命令就非常靈活,可以在不停止proftpd進程的前提下,定時停止ftp連接,這裡將會詳細說它是怎麼使用的。 ftpshut [ -l mi
  這裡要講一個非常實用的命令
  
  /usr/local/proftpd/sbin/ftpshut
  這個命令還是比較實用的,因為你可能需要不斷的調整你的服務器,而這個命令就非常靈活,可以在不停止proftpd進程的前提下,定時停止ftp連接,這裡將會詳細說它是怎麼使用的。
  
  ftpshut [ -l min ] [ -d min ] time [ warning-message ... ]
  
  -l min: 在ftp關閉服務之前的幾分鐘內,嘗試建立新的ftp連接均不被接受
  -d min: 在ftp關閉服務之前的幾分鐘內,已經建立的ftp連接將被中止
  time: 在多少時間後,服務器將關閉ftp服務,格式有兩種
  +number 經過number分鐘後關閉
  MMHH 在今天MM:HH服務器將關閉
  
  注意,這裡我們用這個命令是把ftp服務給停了,但實際的proftpd進程還沒停止,所以一般調試ftp會使用到這個命令。
  
  舉例:
  再經過30分鐘後,FTP服務將關閉,在這之前的20分鐘不可接受任何新的ftp連接,已經建立的在服務關閉前10分鐘強制斷線,並在客戶端顯示“FTP Server Will shutdown at time”
  
  ftpshut -l 20 -d 10 +30 "FTP Server Will shutdown at time"
  
  其實ftpshut就是產生/etc/shutmsg ,你只要刪除這個文件ftp又可以重新服務,或者
  直接
  
  ftpshut -R
  
  好了,開始講一些proftpd的基本配置吧,其實大家如果熟悉apache的配置的話,你會發現proftpd的設置基本都是類似的,它的配置基本格式是
  
  #全局設置
  設置項目1 參數1
  設置項目2 參數2
  
  #某個目錄的設置
  
  ...
  ...
  

  
  #關於匿名用戶的設置
  
  ...
  ...
  
  ...
  ...
  

  
  
  我們用到的比較多的可能是Limit的使用,Limit大致有以下動作,基本能覆蓋全部的權限了,大家靈活使用就是了。
  
  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:是否允許登陸的權限
  針對上面這個Limit所應用的對象,又包括以下范圍
  AllowUser 針對某個用戶允許的Limit
  DenyUser 針對某個用戶禁止的Limit
  AllowGroup 針對某個用戶組允許的Limit
  DenyGroup 針對某個用戶組禁止的Limit
  AllowAll 針對所有用戶組允許的Limit
  DenyAll 針對所有用戶禁止的Limit
  關於限制速率的參數為:
  TransferRate STOR|RETR 速度(Kbytes/s) user 使用者
  
  下面我們以例子來解說proftp的配置,這樣大家可能更加容易理解。
  
  1。ftp服務器支持斷點續傳,且最大支持同時10人在線,每個ip只允許一個連接;
  2。允許ftpusers用戶組只能訪問自己的目錄,而不能訪問上級或者其他目錄;
  3。用戶登陸服務器時不顯示ftp服務器版本信息,以增加安全性;
  4。建立一個kaoyan的ftp帳戶,屬於ftpusers組,kaoyan用戶只允許下載,沒有可寫的權限。下載速率限制在50Kbytes/s。
  5。建立一個upload用戶,也屬於ftpusers組,同kaoyan用戶的宿主目錄一樣,允許upload用戶上傳文件和創建目錄的權限,但不允許下載,並且不允許刪除目錄和文件的權限,上傳的速率控制在100Kbytes/s
  
  先是前期的用戶和組添加以及目錄的權限設置
  
  group add ftpusers
  useradd -d /home/kaoyan -g ftpusers -s /bin/fales kaoyan
  useradd -d /home/kaoyan -g ftpusers -s /bin/fales upload
  chown -R kaoyan:upload /home/kaoyan
  chmod -R 775 /home/kaoyan
  如果你只想ftpusers組的用戶訪問,可以設置成770都行。
  設置/usr/local/proftpd/etc/proftpd.conf
  
  注意#表示注釋,對設置沒影響,可以不寫
  
  ServerName "Frank's FTP Server"
  ServerType standalone
  DefaultServer on
  Port 21
  Umask 022
  MaxInstances 30 #最多有30個proftpd的PID
  User nobody
  Group nobody
  TimeoutStalled 10
  MaxClients 10 #最多允許10個用戶在線
  MaxClientsPerHost 1 "對不起,一個IP只允許一個連接"
  AllowStoreRestart on
  #允許斷點續傳(上傳),斷點續續(下載)是默認支持的,不用設置
  DisplayLogin welcome.msg #歡迎詞文件
  ServerIdent off #屏蔽服務器版本信息
  DefaultRoot ~ ftpusers #設置ftpusers組只能訪問自己的目錄
  
  
  AllowOverwrite on
  

  
   #不允許寫
  DenyUser kaoyan
  

   #不允許刪除,改名,下載
  DenyUser upload
  

  TransferRate RETR 50 user kaoyan
  TransferRate STOR 100 user upload
  

  
  我這裡實現的方式還可以通過
  
  
  
  ...
  
  ...
  
  
  
  <>
  
  ...
  
  ...
  
  

Copyright © Linux教程網 All Rights Reserved