国产宅男网站在线|亚洲A级性爱免费视频|亚洲中精品级在线|午夜福利AA毛

  • <dd id="gf5jf"><th id="gf5jf"></th></dd>

    <cite id="gf5jf"><label id="gf5jf"></label></cite>
  • <div id="gf5jf"><listing id="gf5jf"></listing></div>
    學(xué)習(xí)啦 > 學(xué)習(xí)電腦 > 操作系統(tǒng) > Linux教程 > Linux下架FTP的教程

    Linux下架FTP的教程

    時(shí)間: 志藝942 分享

    Linux下架FTP的教程

      wu-ftpd的安裝非常容易,大多數(shù)版本的Linux中都包含了wu-ftpd的rpm軟件包,你可以在安裝Linux時(shí)指定裝入。如果你想自行編譯源代碼,也可以ftp://ftp.wu-ftpd.org下載最新版本的源代碼包。 接下來(lái)是小編為大家收集的Linux下架FTP的教程,希望能幫到大家。

      Linux下架FTP的教程

      安裝好以后,可以用ckconfig命令來(lái)檢查是否已經(jīng)正確安裝。在/etc/passwd中可以指定ftp用戶的登入目錄。

      wu-ftpd主要有以下6個(gè)配置文件:

      ftpaccess(主要配置文件,控制存取權(quán)限)

      ftpconvertions(配置文件壓縮/解壓縮轉(zhuǎn)換)

      ftpgroups(設(shè)定ftp自己定義的群組)

      ftphosts(設(shè)定個(gè)別的用戶權(quán)限)

      ftpservers(設(shè)定不同IP/Domain Name以對(duì)應(yīng)到不同的虛擬主機(jī))

      ftpusers(設(shè)定哪些帳號(hào)不能用ftp連線)

      下面我們來(lái)一一介紹。

     ?、?etc/ftpaccess(wu-ftpd的主要配置文件)

      class--定義群組,用法如下:

      class<種類><用戶地址>[<用戶地址>……]

      由class定義的群組用戶才可以連線進(jìn)來(lái),可以使用多層式的class來(lái)規(guī)范哪些群組的用戶能夠從哪些地方上來(lái)。這里有三個(gè)重要的種類,real、anonymous個(gè)guest。real如果沒有列在定義中,那么這臺(tái)機(jī)器中任何真實(shí)的一般用戶都無(wú)法用自己的帳號(hào)連上來(lái)。anonymous如果沒有在定義,就表示不讓沒有帳號(hào)的的人連上來(lái)。如果有定義guest,那么guest群組的人就可以上來(lái)。另外<用戶地址>是指ftp上來(lái)的用戶會(huì)用到的IP地址,則可自行設(shè)定。以下是一些例子:

      class all real,guest,anonymous *

      定義了一個(gè)名為all的class,包含三種人,所有IP的連線用戶(也就是所有人都包括了)

      class local real localhost loopback

      local這個(gè)class說(shuō),只有real的用戶可以從本機(jī)機(jī)器連上來(lái)

      class remote guest,anonymous *

      remote這個(gè)class包含了從任何地方上來(lái)的guest和anonymous用戶,但是real用戶不算

      class rmtuser real !*.example.com

      rmtuser這個(gè)class包含了從外面來(lái)的(除了example.com)真實(shí)用戶

      autogroup--自動(dòng)對(duì)應(yīng)群組,用法如下:

      autogroup[……]

      當(dāng)你定義好的那些同屬于一個(gè)class的用戶,一旦連線上來(lái)就會(huì)被對(duì)應(yīng)到一個(gè)相應(yīng)的群組下面,這樣你就可以用Unix的文件權(quán)限對(duì)某一群人做限制。

      deny--拒絕某些地址連線,用法如下:

      deny<拒絕連線的地址><信息文件>

      禁止某些機(jī)器連線,并顯示<信息文件>。例如:

      deny 210.62.146.*:255.255.255.254 /etc/reject.msg

      guestgroup--設(shè)定訪客群

      guestuser--設(shè)定訪客帳號(hào)

      realgroup--設(shè)定真實(shí)群組

      realuser--設(shè)定真實(shí)帳號(hào)

      nice--設(shè)定給某些class多少優(yōu)先權(quán),用法如下:

      nice

      在Linux中,nice的值是-20(最優(yōu)先)到19(最后處理),這里你可以指定負(fù)的值來(lái)提高某class的優(yōu)先順序。

      defumask--設(shè)定某class的umask,用法如下:

      defumask[]

      umask是建立文件時(shí)該文件的的權(quán)限掩碼

      tcpwindow--設(shè)定tcpwindow的大小

      keepalive--設(shè)定是否使用TCP SO_KEEPALIVE來(lái)控制斷線情形

      timeout--設(shè)定連線超時(shí),用法如下:

      timeout accept<秒>

      接受連線超時(shí),預(yù)設(shè)120秒

      timeout connect<秒>

      連線建立超時(shí),預(yù)設(shè)120秒

      timeout data<秒>

      數(shù)據(jù)傳送超時(shí),預(yù)設(shè)1200秒

      timeout idle<秒>

      用戶發(fā)呆超時(shí),預(yù)設(shè)900秒

      file-limit--限制某class只能傳幾個(gè)文件,用法如下:

      file-limit[][]

      對(duì)某個(gè)class限制存取文件的數(shù)目,包含了in(上傳)、out(下載),total raw代表整個(gè)傳輸?shù)慕Y(jié)果,不光是數(shù)據(jù)文件。例如:

      file-limit out 20 lvfour

      限制lvfour這個(gè)class的用戶最多只能下載20個(gè)文件

      byte-limit--限制某class只能傳幾個(gè)字節(jié),用法跟file-limit相似

      limit-time--限制一個(gè)連線只能持續(xù)多久,用法如下:

      limit-time{*|anonymous|guest}<分鐘>

      為了避免有人掛在站上不下來(lái),可以用這個(gè)方法限制用戶的上線時(shí)間,例如:

      limit-time guest 5

      讓guest帳號(hào)的用戶只能用5分鐘

      limit--限制某class能同時(shí)幾人上線,用法如下:

      limit<連線數(shù)目><時(shí)間區(qū)段><額滿信息文件>

      設(shè)定某個(gè)class在某一時(shí)間區(qū)段內(nèi)最多能夠幾人同時(shí)上線,后面是當(dāng)超過(guò)連線數(shù)目時(shí)要顯示的信息。例如:

      limit all 32 Any /home/ftp/etc/toomanyuser.msg

      限制所有連線在任何時(shí)間只能有32個(gè)用戶,超過(guò)則拒絕連線并顯示信息

      limit levellone 5 Any2300-0600 /home/ftp/etc/toomanyuser.msg

      限制levellone這個(gè)class的用戶在23:00到6:00這段時(shí)間內(nèi)只能有5人連線

      noretrieve--設(shè)定哪些文件不可下載

      noretrieve[absolute/relative][class=]…[-][<文件名>…]

      absolute或relative指文件是用絕對(duì)路徑還是相對(duì)路徑

      allow=retrieve--設(shè)定哪些文件可以下載

      allow[absolute/relative][class=]…[-][<文件名>…]

      loginfails--設(shè)置登入錯(cuò)誤可嘗試的次數(shù)

      當(dāng)用戶連線時(shí)可能打錯(cuò)ID或密碼,這個(gè)設(shè)定可以讓他打錯(cuò)幾次以后就斷線,避免有人用窮舉法猜測(cè)密碼。

      private--設(shè)定線上是否可以執(zhí)行SITE GROUP/SITE GPASS

      當(dāng)開放SITE GROUP與SITE GPASS指令時(shí),可以用這兩個(gè)指令切換到/etc/ftpgroup的群組。一般而言我們不會(huì)用到這個(gè)功能,以避免安全漏洞。

      greeting--顯示Server的版本信息,用法如下:

      greeting

      當(dāng)用戶登入畫面顯示的server信息,full是預(yù)設(shè)值,包含版本號(hào)以及hostname,brief只有hostname,而terse只有“FTP server ready”的信息。

      barnner--設(shè)定未進(jìn)入Login畫面之前用戶看到的信息,用法如下:

      banner<文件路徑>

      這里敘述了在用戶登入時(shí),在還沒打ID/Password之前要出現(xiàn)的信息。文件路徑指的是相對(duì)于真實(shí)的路徑,而不是相對(duì)于ftp的根目錄。

      host--設(shè)定ftp主機(jī)名

      email--指定ftp管理者的email地址

      message--信息文件的設(shè)定,用法如下:

      message<文件>{<何時(shí)>{……}}

      這里的文件的路徑是相對(duì)于ftp的根目錄的,“何時(shí)”是指當(dāng)你做了什么動(dòng)作之后的反應(yīng),有幾個(gè)選擇:

      login(登入時(shí))

      cwd=<目錄>(進(jìn)入某目錄時(shí))

      class 名稱是前面已經(jīng)定義過(guò)的,允許你的信息只對(duì)哪些人發(fā)出。

      而信息文件的內(nèi)容除了文字以外,還可以使用以下一些事先定義好的代號(hào):

      %T(本機(jī)時(shí)間)

      %F(目前分區(qū)所剩余的空間)

      %C(目前所在的目錄)

      %E(管理者的E-mail)

      %R(客戶端主機(jī)名稱)

      %L(本機(jī)主機(jī)名稱)

      %U(用戶名稱)

      %M(與我相同class用戶允許多少人連線)

      %N(與我相同class用戶目前有多少人連線)

      %B(絕對(duì)磁盤限制大小,目前分區(qū)(單位blocks))

      %b(preferred磁盤限制大小,目前分區(qū)(單位blocks))

      %Q(目前已使用的blocks)

      %I(最大可使用的inodes(+1))

      %i(Preferred inodes限制)

      %q(目前使用的indoes)

      %H(超量使用磁盤空間的時(shí)間限制)

      %h(超量使用文件數(shù)目的時(shí)間限制)

      readme--通知用戶哪些README文件已經(jīng)更新

      log commands--記錄用戶所使用過(guò)的命令,用法如下:

      log commands<用戶種類>

      log transfers--記錄用戶所傳輸?shù)奈募?,用法如下?/p>

      log transfers<用戶種類><傳輸方向>

      設(shè)定有哪些類型的用戶傳輸文件需要記錄,包含了inbound(用戶上傳)和outbound(用戶下載),例如:

      log transfers anonymous,guest inbound,outbound

      log security--記錄安全性,用法如下:

      log security<用戶種類>

      特別用于記錄某類用戶關(guān)于noretrive、notar等有關(guān)安全性的記錄

      log syslog--記錄到系統(tǒng)的syslog文件

      alias--設(shè)定目錄別名,用法如下:

      alias<別名字符串><目錄>

      cdpath--設(shè)定cd更換目錄搜索順序

      compress,tar--設(shè)定是否自動(dòng)壓縮,用法如下:

      compress[……]

      tar[……]

      定義哪些人可以執(zhí)行壓縮以及tar

      shutdown--通知用戶要關(guān)站了

      shutdown<信息文件>

      如果信息文件存在的話,當(dāng)這個(gè)文件指定的某時(shí)間以后,就會(huì)拒絕連線并切斷已有的連線,等時(shí)間一到就關(guān)機(jī)。這個(gè)信息文件的格式如下:

      <年><月><日><時(shí)><分><拒絕倒數(shù)><斷線倒數(shù)><文字>

      daemon address--指定只監(jiān)聽某個(gè)IP地址,用法如下:

      daemon address

      當(dāng)你有許多IP的時(shí)候,使用這個(gè)選項(xiàng)將會(huì)取消其它任何虛擬FTP主機(jī)的設(shè)定。不設(shè)定的話,監(jiān)聽所有IP。

      virtual--設(shè)定虛擬FTP站臺(tái)

      wu-ftpd提供了虛擬主機(jī)的功能,也就是說(shuō),在同一臺(tái)機(jī)器上提供了不同F(xiàn)TP站臺(tái),以主機(jī)名稱或IP來(lái)區(qū)分;當(dāng)然你要用名稱的話,還需要跟DNS配合才行。virtual有很多個(gè)設(shè)定:

      virtual

      <路徑>

      可以是主機(jī)名或IP地址

      root指的是ftp的根目錄,banner是歡迎信息,logfile指的是這個(gè)虛擬站臺(tái)的log文件

      以下是一些例子:

      virtual virtual.com.bj root /home/ftp2

      virtual virtual.com.bj banner /etc/vftpbanner.2

      virtual virtual.com.bj logfile /etc/viftplog.2

      virtual

      <字母>

      用戶可以查到hostname跟管理者email,以下是一些例子:

      virtual 210.62.146.50 hostname virtual.site.com.bj

      virtual vritual.site.com.bj email ftpown@virtual.site.com.bj

      virtual

      allow<用戶>[<用戶>……]

      virtual

      deny<用戶>[<用戶>……]

      很明顯,以上兩個(gè)選項(xiàng)是設(shè)定是否允許連線的,以下是一些例子:

      virtual virtual.site.com.bj allow *

      virtual virtual.site.com.bj deny badman

      virtual

      private

      本虛擬站臺(tái)拒絕anonymous用戶

      defaultserver deny <用戶>[<用戶>……]

      defaultserver allow <用戶>[<用戶>……]

      當(dāng)我們使用了虛擬主機(jī),原先的deny,allow設(shè)定不知道要設(shè)哪個(gè)server,所以會(huì)無(wú)效,用defaultserver代表原來(lái)的主機(jī)

      defaultserver private

      主站臺(tái)拒絕anonymous用戶

      passive address--轉(zhuǎn)換IP數(shù)值

      passive address<外部ip>/cidr

      passive ports--passive的ports范圍

      passive ports

      pasv-allow--允許使用pasv

      pasv-allow[<地址>……]

      port-allow--允許使用port

      port-allow[<地址>……]

      mailserver--指定Upload通知的mail服務(wù)器

      incmail--指定anonymous upload的email通知地址

      virtual incmail--指定虛擬主機(jī)anonymous upload的email通知地址

      defaultserver incmail--指定預(yù)設(shè)主機(jī)anonymous upload的email通知地址

      mailfrom--通知的寄信人upload

      virtual mailfrom--虛擬主機(jī)upload通知的寄信人

      defaultserver mailfrom--預(yù)設(shè)主機(jī)upload通知的寄信人

      chmod--設(shè)定是否可以改變文件權(quán)限

      delete--設(shè)定是否可以刪除文件

      overwrite--覆蓋文件

      rename--重命名文件

      umask--允許設(shè)定umask

      passwd-check--設(shè)定anonymous FTP的密碼檢查程度,用法如下:

      passwd-check()

      設(shè)定對(duì)anonymous ftp用戶的密碼是否檢查,none表示不檢查,trivial為包含@的任意密碼,rfc822則表示密碼要遵循RFC822格式,enforce表示密碼檢查不過(guò)不允許進(jìn)入,warn表示密碼檢查不過(guò)只出現(xiàn)警告信息。

      deny=email--拒絕特定的email當(dāng)密碼

      path-filer--攝定哪些文件名不可使用

      path-filer<錯(cuò)誤信息文件><允許字符><不允許字符>

      upload--設(shè)定upload權(quán)限

      upload[absloute/relative][class=]…[-]<設(shè)定的目錄> >[dirs/nodirs][d_mode]

      用來(lái)對(duì)我們要設(shè)定的目錄做權(quán)限設(shè)定:

      absoulte/relative使用絕對(duì)路徑或是相對(duì)路徑

      class=指定某個(gè)class

      root-dir指的是對(duì)哪些root-dir的人,也就是chroot后的登入目錄,應(yīng)用這個(gè)規(guī)則

      設(shè)定的目錄指的就是我們要限制的目錄

      yes/no指得是能否在此目錄下開新文件

      owner,group指出是開出來(lái)的文件擁有者及群組

      Mode指的是文件權(quán)限

      dirs/nodirs指的是能否開新目錄

      d_mode設(shè)定建立新目錄時(shí)目錄的權(quán)限,如果不設(shè)定會(huì)根據(jù)mode來(lái)設(shè)定

      thoughput--控制下載速度

      thoughput<子目錄列表><文件><遠(yuǎn)端地址列表>

      對(duì)遠(yuǎn)端的地址,控制他抓某個(gè)子目錄下的某些文件時(shí)的速度,例如:

      thoughput /e/ftp * * oo - *

      thoughput /e/ftp /sw* * 1024 0.5 *

      thoughput /e/ftp sw* readme oo - *

      thoughput /e/ftp sw* * oo - *.foo.com

      以上的設(shè)定你是否能夠看出來(lái)呢?“oo”表示不限制bytes/sec,“-”或是“1.0”都是代表一倍。第一行的意思是說(shuō),在/e/ftp下面的文件不限制下載速度;第二行說(shuō),在/sw*下面的任何文件限速為1024bytes/sec*

      0.5=512bytes/sec;第三行又把readme文件的限速取消;最后一行則對(duì)*.foo.com開放全速。

      anonymous-root--對(duì)某class設(shè)定匿名用戶的根目錄

      anonymous-root[]

      guest-root--預(yù)設(shè)一個(gè)guest用戶根目錄

      guest-root[]

      其中用于指定uid的范圍

      deny-uid,deny-gid--拒絕某段UID(GID)范圍

      allow-uid,allow-gid--允許某段UID(GID)范圍

      restricted-uid,restricted-gid--限制用戶不能離開他的登錄目錄

      unrestricted-uid,unrestricted-gid--用戶可以離開他的登錄目錄

      dns refuse_mismatch--設(shè)定DNS查到名稱與用戶設(shè)定不符的動(dòng)作

      dns refuse_mismatch<信息文件>[override]

      當(dāng)用戶使用未注冊(cè)IP時(shí),拒絕他的連線,override則是不理會(huì)錯(cuò)誤而讓他連線,信息文件則是我們要給用戶看的。

      dns refuse_no_reverse--設(shè)定無(wú)反查記錄拒絕連線

      dns refuse_no_reverse<信息文件>[override]

      當(dāng)用戶的IP反查無(wú)記錄時(shí),拒絕他的連線

      dns resolveoptions--設(shè)定DNS解析選項(xiàng)

      dns resolveoptions[options]

      這里可以設(shè)定DNS解析選項(xiàng)

     ?、?etc/ftphosts

      ftphosts文件其實(shí)跟ftpaccess里面的access,deny很像,它是特別用來(lái)設(shè)定某些ID的連線,它沒有class定義,所以必須是真實(shí)用戶。

      allow|deny<用戶><地址>[<地址>……]

      以下是一些例子:

      allow rose 140.0.0/8

      deny jack 140.123.0.0:255.255.0.0

      允許rose從140.*.*.*進(jìn)來(lái),拒絕jack從140.123.*.*上來(lái)

     ?、?etc/ftpservers

      這個(gè)文件控制了當(dāng)你有不同的IP/hostname的時(shí)候,進(jìn)來(lái)的連線使用哪一個(gè)配置文件。例如:

      10.196.145.10 /etc/ftpd/ftpaccess.somedomain/

      10.196.145.200 /etc/ftpd/ftpaccess.someotherdomain/

      some.domain internal

      10.196.145.20 /etc/ftpd/config/faqs.org/

      ftp.some.domain /etc/ftpd/config/faqs.org/

     ?、?etc/ftpusers

      在這個(gè)文件里記錄的用戶禁止使用FTP

     ?、?etc/ftpgroups

      給SITE GROUP指令使用,線上切換group。SITE EXEC容易造成安全漏洞,一般我們都不開放。

     ?、?etc/ftpconversions

      用來(lái)做tar、compress、gzip等動(dòng)作指令配置文件,只要用預(yù)設(shè)即可,如果你不開放即時(shí)壓縮打包,也可以把內(nèi)容清除。

    看了“Linux下架FTP的教程”還想看:

    1.LINUX操作系統(tǒng)如何搭建FTP

    2.CentOS怎么安裝FTP服務(wù)器

    3.linux中怎么添加ftp用戶

    4.LINUX怎么搭建FTP服務(wù)器

    5.Linux ftp命令的使用方法有哪些

    2772148