歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux服務器 >> 基於Linux的FTP服務器權限管理

基於Linux的FTP服務器權限管理

日期:2017/3/2 16:43:29   编辑:Linux服務器

當我們搭建好一個FTP服務器後,接下去的工作就是要對這個服務器進行權限的管理與設置。因為這項工作直接關系到FTP服務器上文件的安全,關系到FTP服務器運行的穩定。所以,作為企業的網絡管理員,不能夠忽視這項工作的重要性。

  在Linux下,管理FTP服務器的權限比Windwos環境下,相對來說,要復雜一點。因為Linux下,主要通過命令行的方式來實現權限的管理與配置。而在Windows環境下,則可以通過圖形界面來配置,故後者相對簡單一點。不過,若從靈活性上來講,則前者要優越的多。如WU-FTP,是Linux操作系統上利用的最廣泛的FTP軟件。其在權限的管理上,就比微軟自帶的FTP服務器要靈活的多。再配上Linux操作系統本身的安全性,使得WU-FTP服務器的安全更上一層樓。

  下面筆者就集合WU-FTP軟件,談談在Linux下如何做好FTP服務器權限的管理。

  若用一句話來概括的話,Wu-FTP軟件主要通過組來管理其自身的訪問權限。具體的來講,可以從以下幾個方面了解這個服務器權限管理的全貌。

  一、如何定義一個組?

  定義FTP服務器的訪問組,也叫做類,是FTP服務器權限管理的最基本的動作。後續的權限管理,都是根據這個組來定義的。/etc/ftpaccess 配置文件是用來配置WU-FTP訪問權限的主要參數文件。大部分的FTP服務器權限都是在這個文件中進行配置。

  若我們需要定義一個FTP的組,就需要在這個參數文件中,加入如下的語句:

  Class QA real,guest,anonymous 192.168.1.*

  這條語句的意思是,現在定一個QA的組。在這個組中,包括三種類型的用戶,分別為REAL(真實定義的用戶)、GUEST(GUEST帳戶)、ANONYMOUS(匿名訪問帳戶)。若現在有這三種類型的帳戶,從子網為192.168.1.*的地方訪問這個FTP服務器的話,則就屬於QA這個組。若是其他的IP地址訪問,即使其用戶屬於這三個類型的帳戶,其也不屬於QA這個組,不具有這個組的訪問權限。很明顯,通過這種方式,還可以實現根據IP地址與帳戶結合的方式來管理FTP服務器訪問權限。這比光憑帳戶來管理,相對來說,要安全一點。

  這種配置方式還有另外的一些變形,對其進行合理的搭配,可以大大的提高訪問的安全性與靈活性。

  第一種變形:IP地址可以以域名的方式來定義,這在大型網絡中,如集團型企業的網絡中用的比較普遍。如現在有一個集團企業,下面有A、B、C三個子公司。為了公司員工之間文件交流的方便,集團企業在網上建立了FTP服務器。但是,現在集團網絡管理員希望各個子公司平時只能夠訪問FTP服務器下自己的公司的文件夾。對於其他子公司的文件夾他們不能訪問。此時,就可以建立三個組,分別對應各自的域名。如:Class A企業 real,guest,anonymous A公司的網絡域名。這條語句的意思就是從A公司訪問FTP服務器的帳戶都屬於組“A企業”。然後再為這個組配置相關的權限,就可以實現A企業的用戶只能夠訪問某個特定的文件。

  第二種變形方式:利用“!”符號來排除某些特定的IP地址。如有時候,我們可能會把某些特定的IP地址分配給外來的用戶。如當客戶來訪的時候,我們就給其分配一個特定的IP地址。這主要是為了防止這些用戶隨意的訪問我們公司的網絡資源。為此,我們就需要利用“!”符號排除某些IP地址。我們只需要在上面例子的IP地址前面,加入這個感歎號,即表示排除了這個IP地址
二、針對組的一些具體權限的設置。

  設置好上面的組之後,我們接下去的工作,就是針對這些組設置具體的權限。下面筆者就探討一下,一些常用權限的設置。

  1、某個組的用戶只能夠查看或者下載FTP服務器上的文件,而不能上傳文件。

  這是組權限控制中非常常用的一些功能。如有時候企業可能要給客戶看一些大的設計圖紙。由於設計圖紙比較大,通過郵件等方式根本無法傳輸。為此,有些企業就會專門建立FTP服務器,讓客戶能夠直接從這個服務器上下載設計圖紙,以提高文件傳輸的效率。不過,為了安全考慮,客戶只能夠下載文件,而不能夠向這個FTP服務器上傳任何的文件。為了實現這個目的,我們就需要利用file-limit參數來實現這個需求。這個參數主要用來限制某個組的任何一個用戶允許上傳文件的數量。若我們把客戶的帳戶歸類為一個組,然後把這個上傳文件的數量定義為0。如此的話,只要是客戶登陸FTP服務器的時候,他們可以訪問這個FTP服務器,但是卻無法上傳任何文件。

  2、設置最大連接數。

  為了FTP服務器的穩定性考慮,我們一般需要限制訪問人數。由於WU-FTP是根據組(類)來控制最大連接數的,所以,這裡配置的時候要注意兩個問題。一是合理配置各個類的最大連接人數。如企業中可能是根據部門的類別來配置具體的組。所以,此時,應該跟部門的人數不同,來合理設置組的最大連接數。二就是要根據FTP服務器的性能與硬件資源,來合理配置FTP服務器的總的連接數。這個總的連接數就是各個組的連接數的總合。若同時連接在服務器上人太多的話,則很可能FTP服務器會因為資源耗竭而當機。所以,一般情況下,當企業的FTP服務器不僅向企業內部網絡開放,也像企業外部網絡開放的時候,則就需要注意,這個FTP服務器最大連接數的限制。為了達到這個目的,我們需要配置limit 參數,來制定某個類的最大連接數。同時,也可以制定一個文本文件,當達到最大人數的時候,給訪問者顯示上面內容,如致歉方面的內容。

  3、訪問拒絕文件信息的配置。

  雖然當訪問被拒絕的時候,不給用戶反映信息,也是可行的。但是如此配置的話,就不怎麼人性化。用戶訪問FTP服務器的時候,當沒有權限時,應該讓服務器向用戶說明是由於什麼原因沒有沒有訪問成功。如此的話,不但對用戶比較友好;當出現故障的時候,也利於我們排除故障。

  下面,筆者就談談如何配置這個提示文件。提示文件包括常量與變量兩塊內容。常量就是一些描述性的說明,如“對不起,你不能夠訪問”等等。但是,很明顯,常量的話,不能夠反映拒絕訪問的具體信息。為了能夠充分顯示被拒絕訪問的原因,WU-FTP服務器提供了一些變量。通過這些變量,可以很直觀的反映出用戶被拒絕訪問的原因。

  %N:這個變量名表示某個組(類)當前連接的用戶數目。如我們在設置FTP連接數的時候,有這方面的設置,則就可以利用這個變量來說明問題。如可以如下方式配置出錯提示文件:“對不起,現在這個類的訪問認為位%N ,超過了最大連接人數,請稍候再試。”。如此的話,這個變量會把當前的實際連接人數顯示出來。

  %E:管理員的郵件地址。在這個FTPACCESS參數文件中,還可以配置網絡管理員的郵件地址。當FTP服務器出現故障的時候,則可以向這個郵件地址發送郵件。現在若我們希望能夠在這個出錯信息中,顯示網絡管理員的郵箱地址,以方便當訪問出現故障時,用戶向網絡管理員發送郵件尋求幫助。為此,我們可以如下定義這個出錯文件:“對不起,暫時不能夠訪問,若有疑問,請發郵件%E詢問”。如此的話,在出錯文件中,就會把這個參數文件中定義的網絡管理員EMAIL顯示在上面。

  %T:本地當前時間。有時候,我們會在歡迎界面上顯示當前的時間。如現在時間是多少多少,原因你訪問等等友好信息。此時,就可以利用%T參數顯示本地當前時間。另外,在有些企業也可能要限制FTP服務器的訪問時間,如只允許在早上八點到下午五點的上班時間訪問。此時,就需要在出錯時間中加入這個本級時間參數。從而提示用戶,現在的時間是不能夠訪問FTP服務器的等等。

  %C:當前的工作目錄。有時候,往往還需要對用戶進行工作目錄的限制。如某些用戶只能夠訪問特定的目錄等等。此時,也有必要向用戶顯示他們當前的訪問目錄,以提示他們已經越界了。此時,就可以在出錯文件中,加入%C參數,讓出錯文件顯示當前的目錄。

  總之,在這個出錯信息配置文件中,我們要出於清晰明了的目的,向用戶展示被拒絕訪問的原因。如此的話,一方面我們網絡管理員可以減少很多的工作量,不用老實被用戶煩這煩那的。另一方面,也會為我們解決故障提供線索。如此的話,只要用戶報上出錯的提示,則我們就可以知道問題發生的原因了,從而為解決故障贏得了時間

Copyright © Linux教程網 All Rights Reserved