1.FTP工作原理
FTP服务是一种专门用于文件传输的服务,该服务使用的是文件传输协议。FTP是基于客户端/服务器模式的。
FTP有两种工作模式,一种是主动模式,另一种是被动模式。
(1)主动模式
首先,FTP客户端开户一个大于1024的端口N,并和FTP服务器的21号端口建立连接,然后开放N+1号端口进行监听,同时向服务器发送PORT N+1命令(客户端用什么端口接收数据)。服务器端在发送数据的时候,通过自己的TCP 20号端口发送数据。此时,服务器端必须建立一条用于数据传输的连接,所以称为主动模式。
(2)被动模式
FTP客户端随机开户一个大于1024的端口N,用于向服务器的21号端口发起连接,同时开启N+1端口,然后向服务器发送PASV命令,通知服务器处于被动模式,服务器收到命令后,开启一个大于1024的端口进行监听,如1521,然后用PORT P命令去通知客户端, 自己的数据端口是1521,然后FTP客户端建立一条连接。所以这种方式也称为被动模式。
2.几种流行的FTP软件
Wu-ftpd
这个软件有着极佳的性能,但同时也有不少的安全漏洞。
Proftdp
具有安全,容易配置,速度快等特点。
vsFTPd
vsFTPd是very secure-FTPd缩写,是RHEL5内置的ftp服务器。支持很多FTP服务器不支持的功能,具有非常高的安全特性。同时支持带宽限制,IPV6协议,创建虚拟用户等功能。
PureFTPd
PureFTPd是内置在SuSE,Debian中的ftp服务器软件,RHEL5没有包含它。
Serv-U
Serv-U是Windows系统下常用的FTP服务器。
3. vsFTPd服务器
(1)确定是否安装vsFTPd服务器
在RHEL5下执行命令:
rpm -q vsftpd
(2)启动vsFTPd服务
service vsftpd start
(3)重新启动vsFTP服务
service vsftpd restart
(3)停止vsFTPd服务
service vsftpd stop
(4)自动启动vsFTPd服务
ntsysv 找到vsftpd,这样在下次机器启动时就会自动启动了。
/etc/vsftpd/vsftpd.conf 是FTP的核心配置文件,可以修改此文件以满足不同的需求。
4. Windows下访问FTP服务器
(1)进入cmd
(2)ftp 222.27.253.108 (FTP服务器的IP)
(3)用户名,匿名(anonymous),无密码。
(4)cd /var/ftp/pub/
(6)下载: get 文件名
上传: put 文件名