天天看點

015 Rust網絡程式設計,FTP介紹

FTP協定介紹

FTP(File Transfer Protocol,檔案傳輸協定)是 TCP/IP 協定組中的協定之一。其主要作用是在伺服器和用戶端之間實作檔案的傳輸和共享。FTP協定運作在TCP連接配接上,保證了檔案傳輸的可靠性。

FTP使用了兩個并行的tcp來傳輸檔案:一個是控制連接配接,使用21号端口;一個是資料連接配接,使用20号端口,控制連接配接用于在兩個主機之間傳輸控制資訊,如密碼,使用者辨別,存放、擷取檔案等指令。資料連接配接用于實際發送一個檔案,發送完檔案之後資料連接配接會關閉。

FTP主要有主動模式和被動模式兩種。主動模式是TFP用戶端告訴服務端用哪個端口作為資料端口,然後讓服務端來連接配接自己。被動模式則是由用戶端發起控制連接配接請求和資料連接配接請求。

ubuntu下搭建FTP伺服器

  • 建立檔案夾
cd ~
mkdir ftpserver      
  • 安裝ftp伺服器
sudo apt-get install vsftpd      
  • 配置vsftpd.conf檔案:
sudo vim /etc/vsftpd.conf      
anonymous_enable=NO
anon_root=/home/xxx/ftpserver
no_anon_password=YES
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES      
  • 添加組使用者
sudo groupadd ftpgroup      
  • 增加使用者,例如使用者名為tt
sudo useradd -g ftpgroup -d ~/ftpserver/tt -M tt      
  • 建立tt對應的檔案夾tt
mkdir tt //在ftpserver目錄下
sudo chmod 777 tt      
  • 設定密碼
sudo passwd tt      
  • 重新開機vsftpd
sudo /etc/init.d/vsftpd restart      

測試

  • 打開終端,輸入:
ftp 127.0.0.1      
  • 輸入使用者名tt
  • 輸入密碼
  • 使用get指令下載下傳
  • 使用put指令上傳

繼續閱讀