点我

FTP

概述

FTP(File Transfer Protocol,文件传输协议) 是 TCP/IP 协议组中的协议之一。

工作模式为“FTP服务器/FTP客户端”。

默认使用TCP端口中的 20和21这两个端口,其中20用于传输数据,21用于传输控制信息。

主要作用为:为用户提供上传和下载文件的服务。

工作方式

控制连接
客户端希望与FTP服务器建立上传下载的数据传输时,它首先向服务器的TCP 21端口发起一个建立连接的请求,FTP服务器接受来自客户端的请求,完成连接的建立过程,这样的连接就称为FTP控制连接。

数据连接

FTP控制连接建立之后,即可开始传输文件,传输文件的连接称为FTP数据连接。

FTP数据连接就是FTP传输数据的过程,它有两种"传输模式":

PORT(主动)方式的连接过程是:
客户端通过任意端口N(N>1024)向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,客户端在命令链路上用PORT命令告诉服务器客户端生成的端口N+1。于是服务器从20端口向客户端的N+1端口发送连接请求,建立一条数据链路来传送数据。

PASV(被动)方式的连接过程是:

客户端通过任意端口N(N>1024)向服务器的FTP端口(默认是21)发送连接请求并监听N+1端口。服务器接受连接,建立一条命令链路。当需要传送数据时,服务器在命令链路上用PASV命令告诉客户端服务器随机生成的端口 P 3333(P>1024)。于是客户端通过N+1端口向服务器的P端口发送连接请求,建立一条数据链路来传送数据。

在真实环境下,双方服务器默认应该都开启了防火墙,因此一般采用主动模式而非被动模式。

配置文件

主程序:/usr/sbin/vsftpd

服务名为:vsftpd

用户控制列表文件:

  • /etc/vsftpd/ftpusers //始终是黑名单
  • /etc/vsftpd/user_list //可当黑名单,也可当白名单
  • /etc/vsftpd/vsftpd.conf //主配置文件

应用场景

  1. 网站管理:用于上传和更新网站文件到服务器。
  2. 文件共享:在企业内部或跨网络共享大文件。
  3. 备份与恢复:用于备份服务器数据到远程存储。
  4. 软件更新:用于分发软件更新包。

匿名用户

在 FTP(文件传输协议)中,匿名用户是一种常见的概念。许多 FTP 服务器允许用户以“匿名”方式登录,通常使用以下方式:

  • 用户名:anonymous
  • 密码:通常为用户的电子邮件地址或其他任意字符串。

匿名用户的作用

  1. 公共文件访问

    • 匿名用户可以访问服务器上公开的文件夹,用于下载或上传到公共目录。
    • 例如,许多开源软件的下载站点允许用户以匿名方式下载软件包。
  2. 限制权限

    • 匿名用户通常被限制在特定的目录中,无法访问服务器的其他敏感区域。
    • 例如,匿名用户可能只能访问 /pub/anonymous 等公共目录。
  3. 简化访问流程

    • 匿名登录不需要用户注册或创建个人账号,方便用户快速访问公共资源。

安全性

  • 匿名用户虽然方便,但也存在一定的安全风险:

    • 公共目录可能被恶意用户滥用,例如上传恶意文件或占用存储空间。
    • 服务器管理员需要严格限制匿名用户的权限,确保服务器的安全性。
分类: Linux

评论

-- 评论已关闭 --

目录