第十七章 linux的FTP服务器
----------------------------------
一、FTP的基本概念
-
FTP作用
FTP (文件传输协议)是TCP/IP协议栈所提供的一种子协议,该子协议具体可以实现在以下功能:
-
从客户向服务器发送一个文件
-
从服务器向客户发送一个文件
-
从服务器向客户发送文件或目录列表
-
FTP的工作体系
FTP工作在TCP/ip模型的第四层上,服务器与客户机之间利用TCP的21号端口传送信号指令;利用20号端口用于传送数据;具体工作过程如下:
-
客户机启动客户端程序,通过TCP的“三次握手”建立服务器的连接
-
服务器对客户机进行身份验证
-
进行相应目录操作和数据传输
-
断开连接
-
FTP的数据传输模式
主动传输模式:
在这种模式下,服务器向客户端发起一个用于数据传输的连接,客户端的连接端口是由服务器和客户端通过协商通过的
被动传输模式:
在这种模式下,客户端向服务器发起一个用于数据传输的连接,客户端的连接端口是发起这个数据连接请求时使用的端口号
-
Linux下常见的FTP软件
(1)wu-ftp
wu-ftp是历史最久的非商业FTP服务器软件之一,主要有以下特点:
-
可以限制最高访问人数,以维持系统的最佳运行效率
-
可以记录文件上传和下载的全过程
-
可以支持匿名FTP服务
-
可以支持虚拟FTP主机
-
可以控制不同网段及其对FTP服务器的存取权限和访问时段
(2)proftp
proftpd是在意图修改wu-ftp一些不足情况下产生的,具体有如下特点:
-
单配置文件,配置简单
-
基于单个目录的.ftpaccess设置文件,类似apache的.htaccess文件
-
可以设置为从xinetd启动,或者是独立ftp服务器两种运行方式
-
强大的log功能
-
支持以非root身份运行,从而减少了安全隐患
-
支持匿名FTP功能
(3)vsftpd
-
是一个安全、高速、稳定的FTP服务器
-
可设定多个基于IP的虚拟FTP服务器
-
匿名FTP服务器更是十分容易
-
不执行任何外部程序,从而减少了安全隐患
-
支持虚拟用户,且支持每个虚拟用户具有独立的配置
-
可以设置为从xinetd启动,或者是独立FTP服务器两种运行方式
-
支持PAM或xinetd/tcp_wrappers的认证方式
-
支持带宽限制
二.FTP服务器配置
1.安装FTP服务的相关软件
装载第三张安装盘,且执行以下命令:
#rpm -ivh vsftpd-1.1.3-8.i386.rpm
相关文件:
/etc/vsftpd/vsftpd.conf 主配置文件
/etc/vsftpd.ftpusers 指定哪些用户不能访问FTP服务器
/etc/vsftpd.user_list 可以根据vsftpd.conf文件中的设置来决定该文件中指定的用户是否可以访问ftp服务器
/etc/rc.d/init.d/vsftpd vsftpd的启动脚本文件
2.修改/etc/vsftpd/vsftpd.conf文件
#vi /etc/vsftpd/vsftpd.conf
功能:设置FTP服务器相关选项
文件格式:#说明语句
...........
...........
|
----------------------------------