天天看點

Linux_FTP伺服器目錄FTPFTP Server

<a href="#%E7%9B%AE%E5%BD%95">目錄</a>

<a href="#ftp">FTP</a>

<a href="#ftp-server">FTP Server</a>

<a href="#ftp-configuration">FTP configuration</a>

<a href="#global-config">Global config</a>

<a href="#anonymous-user-ftp-config">Anonymous user FTP Config</a>

<a href="#virtual-user-ftp">Virtual user FTP</a>

<a href="#local-user-ftp">Local user FTP</a>

FTP(File Transfer Protocol檔案傳輸協定),用于Internet上的控制檔案的雙向傳輸。同時,它也是一個Application。基于不同的作業系統有不同的FTP應用程式,而所有這些應用程式都遵守同一種FTP協定以傳輸檔案。在FTP的使用當中,使用者經常遇到兩個概念:”下載下傳”(Download)和”上傳”(Upload)。”下載下傳”檔案就是從遠端主機拷貝檔案至自己的計算機上;”上傳”檔案就是将檔案從自己的計算機中拷貝至遠端主機上。用Internet語言來說,使用者可通過FTPClient向(從)FTPServer上傳(下載下傳)檔案。

FTP也是一個C/S架構。使用者通過一個支援FTP協定的客戶機程式,連接配接到在遠端主機上的FTP伺服器程式。使用者通過客戶機程式向伺服器程式發出指令,伺服器程式執行使用者所發出的指令,并将執行的結果傳回到客戶機。比如說,使用者發出一條指令,要求伺服器向使用者傳送某一個檔案的一份拷貝,伺服器會響應這條指令,将指定檔案送至使用者的機器上。客戶機程式代表使用者接收到這個檔案,将其存放在使用者目錄中。

TCP/IP協定中,FTP标準指令TCP端口号為21,Port方式資料端口為20。FTP的任務是從一台計算機将檔案傳送到另一台計算機,不受作業系統的限制。

FTPServer通路權限類型:匿名使用者、虛拟使用者、本地使用者

FTPServer Support anonymous user,local user,Virtual user between share date.

Attention:But in the same computer, the virtual user and local user config can’t exist at the same time.

ServicePort:

a. TCP 21:Control commands transmission port.

b. TCP 20:Date transmission port.

Software:vsftpd

serviceName:vsftpd

User permission control file:

a. /etc/vsftpd/ftpuser –&gt; deny login user,have higher priority

b. /etc/vsftpd/user_list –&gt; only allow login user

vim /etc/vsftpd/vsftpd.conf

Attention:要實作匿名的下載下傳,修改,删除,建立時,不可以修改FTP根目錄的權限和屬主,但是可以在根目錄下建立AnonymousDir,并将其屬主:屬組修改為ftp:root,目錄權限為757(出于安全的考慮)。

step1. Create virtual user register DB file.

vim vuser.list

step2. Convert the format of userDB file to Berkey DB.

step3. Create FTP root file also virtual user mapped as system user.

虛拟使用者上傳時使用virtual使用者的身份來進行,其宿主目錄為/var/ftp/soft

step4. Create PAM authentication file to support virtual user login.(PAM Pluggable authentication modules)

vim /etc/pam.d/vsftpd.vu

step5. Edit the vsftp.conf file

step6. Set the specific permission for virtualUser.

vim /etc/vsftpd/vuser_dir/deradm

Edit the config file