文件服務器之FTP服務

1、FTP服務的簡介linux

用戶聯網的首要目的就是實現信息共享,文件傳輸是信息共享很是重要的一個內容之一。windows

Internet是一個很是複雜的計算機環境,有PC,有工做站,有MAC,有大型機,據統計鏈接在Internet上的計算機已有上千萬臺,而這些計算機可能運行不一樣的操做系統,有運行Unix的服務器,也有運行DOS以及Windows的PC機,而各類操做系統之間的文件交流問題,須要創建一個統一的文件傳輸協議。
安全

與大多數Internet服務同樣,FTP也是一個客戶機/服務器系統。用戶經過一個支持FTP協議的客戶機程序,鏈接到在遠程主機上的FTP服務器程序。用戶經過客戶機程序向服務器程序發出命令,服務器程序執行用戶所發出的命令,並將執行的結果返回到客戶機。bash

2、FTP服務器的工做模式服務器

1、ftp協議有兩類鏈接:命令鏈接和數據鏈接  ide

FTP是用來在兩臺計算機之間互相傳送文件。相比於HTTP,FTP協議要複雜得多。複雜的緣由,是由於FTP協議要用到兩個TCP鏈接,一個是命令鏈路,用來在FTP客戶端與服務器之間傳遞命令;另外一個是數據鏈路,用來上傳或下載數據。工具

二、ftp 的工做模式有兩種:主動模式和被動模式ui

   主動模式:客戶端向服務器的FTP端口(默認是21)發送鏈接請求,服務器接受鏈接,創建一條命令鏈路。當須要傳送數據時,客戶端在命令鏈路上用PORT命令告訴服務器:「我打開了XXXX端口,你過來鏈接我」。因而服務器從20端口向客戶端的XXXX端口發送鏈接請求,創建一條數據鏈路來傳送數據。 spa

   被動模式:客戶端向服務器的FTP端口(默認是21)發送鏈接請求,服務器接受鏈接,創建一條命令鏈路。當須要傳送數據時,服務器在命令鏈路上用PASV命令告訴客戶端:「我打開了XXXX端口,你過來鏈接我」。因而客戶端向服務器的XXXX端口發送鏈接請求,創建一條數據鏈路來傳送數據。操作系統

     三、數據的傳輸模式有兩種:二進制格式傳輸和文本格式傳輸。

3、實現FTP協議的軟件

    一、 linux中經常使用的實現FTP協議的軟件:wuftpd、proftpd、pureftpd、vsftpd(very secure)

    二、 windows系統下經常使用的還有 Server-U、Filezilla、IIS等

    三、專門訪問ftp客服端工具:ftp、lftp、gftp、filezilla

4、ftp協議的響應碼

    1xx:服務器信息

    2xx:正確響應信息

    3xx:正常響應,但某操做過程還沒有完成,須要進一步補充完成

    4xx:客戶端錯誤,由客戶端引發

    5xx:服務器端錯誤,服務器自身故障執行不成


5、vsftpd支持的用戶類型

    一、匿名用戶:事實上是服務器端自動映射的一個系統用戶

         使用公共的用戶帳號進行登陸,一般用於公共文件的下載。

    二、本地用戶:即爲 /etc/passwd中的用戶

         默認root和uid<500的用戶禁止訪問ftp,每一個用戶都使用各自宿主目錄

    三、虛擬用戶:事實上也是服務器自動映射的系統用戶

         多個虛擬用戶同時被映射爲同一個系統用戶,但不一樣的虛擬用戶能夠具備不一樣           的訪問權限。

6、vsftpd的工做特性

  vsftp中編輯其主配置文件,鎖定用戶與其家目錄中,有三種實現方式

     一、禁錮全部用戶

#   chroot_local_user=YES

     二、禁錮指定用戶即黑名單

#  chroot_list_enable=YES
#  chroot_list_file= /etc/vsftpd/chroot_list

      三、不由錮的指定用戶即白名單

# chroot_local_user=YES
# chroot_list_enable=YES
# chroot_list_file= /etc/vsftpd/chroot_list

7、vsftpd配置中與安全相關的設定

     一、傳輸速率的限定,默認單位爲字節

       anon_max_rate=

       local_max_rate=

       指定用戶的傳輸速率:user_config_dir= /etc/vsftpd/userconfs/

     二、鏈接數的限定

       max_clients=

       max_per_ip=

     三、創建FTP的帳號列表

       白名單

# userlist_enable=YES
# userlist_deny=NO

       黑名單

# userlist_enable=YES
# userlist_deny=YES

8、vsftpd配置文件中經常使用的配置修改

相關文章
相關標籤/搜索