十、FTP服务器配置和管理

  

,FTP是互联网上使用非常广泛的一种通信协议,用于在不同的主机之间进行文件传输.Linux系统下常用的FTP服务器软件包括有wu-ftpd; vsftpd(非常安全的FTP守护进程);proftpd; pureftpd等。客户端软件有

,CLI: ftp; lftp; (wget  lftpget)下载工具,非交互式

,GUI: gftpd ;一种fxp软件;一种上传软件;Filezilla

,FTP采用C/S的工作模式,通过TCP协议建立客户端和服务器之间的连接。但与其他大多数的应用协议不同,FTP协议在客户端和服务器之间建立了两套通信链路,分别是控制链路和数据链路。其中,控制链路负责FTP会话过程中FTP命令的发送和接收,数据链路则负责数据的传输.FTP客户端与服务器之间的通信过程如下所示:

1,用户使用FTP协议的客户机程序,连接到远程的FTP服务器程序上

2,用户使用客户端程序进行FTP文件的上传或下载,FTP客户端程序通过控制链路向FTP发送相应的控制命令

3,服务器程序接收并执行用户所发出的命令

4, FTP服务器将执行结果返回到客户端

,默认情况下,FTP服务器程序使用两个预分配端口20和21号,分别用于传输数据链路和控制链路。但是传输数据又可以分为主动模式与被动模式,其数据传输端口有所不同。

,主动模式工作的原理:FTP客户端连接到FTP服务器的21端口,发送用户名和密码登录,登录成功后要列清单表或者读取数据时,客户端随机开放一个端口(1024以上),发送港口命令到FTP服务器,告诉服务器客户端采用主动模式并开放端口,FTP服务器收到港主动模式命令和端口号后,通过服务器的20端口和客户端开放的端口连接,发送数据,原理如下图:

十、FTP服务器配置和管理

,被动模式工作原理:FTP客户端连接到FTP服务器的21端口,发送用户名和密码登录,登录成功后要列清单表或者读取数据时,发送PASV命令到FTP服务器,服务器在本地随机开放一个端口(1024以上),然后把开放的端口告诉客户端,客户端再连接到服务器开放的端口进行数据传输,原理如下图:

十、FTP服务器配置和管理

参考:https://my.oschina.net/binny/blog/17469

,

,vsftpd可以通过rpm包或者源码安装,通过rpm安装只需使用yum命令即可,这里介绍源码安装。其官方地址为http://vsftpd.beasts.org/,这里以3.0.2版本介绍vsftpd的安装与配置。

文件的组成:

/etc/vsftpd:,配置文件目录

/etc/d/摆在/vsftpd:,服务脚本

/usr/sbin/vsftpd:主程序

/var/ftp:数据文件目录(匿名用户访问目录)

/etc/pam.d/vsftpd:,认证文件,pam (Plugable身份验证模块)插件式认证模块

,模块化库文件:/lib64/安全/pam *。所以

,认证配置文件:/etc/pam.conf和/etc/pam。d/*

基本配置:/etc/vsftpd/vsftpd。参看

 <李> 

<强>

,vsftpd支持两种启动方式:xinetd和独立的,其中,xinetd是通过xinetd进程来启动和关闭vsftpd服务,这是vsftpd默认启动方式.standalone方式则是采用独立进程启动和关闭,与普通程序的启动方式一样。

xinetd方式:

,采用这种方式时,vsftpd不能单独管理,当vsftpd需要重启时,也必须重启整个xinetd服务器。

独立方式:

,使用这种方式时,vsftpd服务将作为单独的进程来启动和关闭,配置独立启动方式步骤为:

[root@mylinux  vsftpd-3.0.2] #, vim /etc/xinetd.d/vsftpd ,, #将diabale选项改为是的   ,,,service  ftp   ,,,{   ,,,,,,,,,,,socket_type ,,,,,,,,,,,,=,流   ,,,,,,,,,,,wait ,,,,,,,,,,,,,,,,,,,=,   ,,,,,,,,,,,user ,,,,,,,,,,,,,,,,,,,=,根   ,,,,,,,,,,,server ,,,,,,,,,,,,,,,,,=,/usr/地方/sbin/vsftpd   号,,,,,,,,,,server_args ,,,,,,,,,,,=号,,,,,,,,,,log_on_success ,,,,,,,,, +=, DURATION  USERID   号,,,,,,,,,,log_on_failure ,,,,,,,,, +=, USERID   ,,,,,,,,,,,nice ,,,,,,,,,,,,,,,,,,,=10   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

十、FTP服务器配置和管理