Linux FTP服务学习

ftp服务与文件服务器类似,NFS主要用于网络存储,Samba主要用于文件服务器,可以允许客户端从服务端上下载或上传文件,他们之间的主要区别是:

·FTP服务器主要用在互联网上使用,也可以用在局域网内,文件服务器大多都在局域网内部使用,互联网上的用户没法访问Samba文件服务器。NFS可以进行跨互联网使用,但一般不建议这样使用,因为NFS基于IP验证,又安全隐患。

·客户端用户在访问FTP服务器时,无法在线修改服务器上的数据,必须要先将文件下载到本地才能进行修改,文件服务器则支持直接在线修改。

·FTP服务器支持断点续传,更适合大容量的文件的传输;Samba文件服务器不支持断点续传,支持小型文件的传输。

如果只需要在局域网内部实现文件的下载和上传,那么文件服务器更合适;如果是需要在互联网内提供文件下载和上传,则就要使用FTP服务器。

FTP服务时采用的客户端/服务器的模式,通过TCP协议进行连接,FTP服务需要在客户端和服务端之间建立两条连接,一条是控制连接,专门用于传送控制信息,如查看文件列表,删除文件等,控制连接会在整个会话期间一直打开;另外一条连接时数据连接,专门用于用户上传或下载文件时的数据发送,文件发送结束后,数据连接自动关闭。

  1. FTP服务使用的协议属于应用层TCP的协议,端口号是TCP的21号端口(主端口),20端口(一个辅助端口),辅助端口永远比主端口号-1,所以如果主端口号进行了改动,副端口号还是会跟着改动。
  2. 控制连接所采用的就是主端口,数据连接时采用的辅助端口,在工作时,是先建立控制连接,再根据是否下载或上传文件建立数据连接。
  3. FTP工作模式:根据连接的建立有关,特别是数据的连接;netstat -nt查看已经建立的连接,连接一般都是由客户端主动发起的,服务端是被动的;无论是主动模式还是被动模式,都是指站在服务器的角度来看的。
  4. 主动模式:主动模式又叫标准模式或PORT模式,

·客户端主动通过随机端口号m(41952-65535)申请与服务器的TCP21号端口建立控制连接。

·要创建数据连接时,客户端再随机生成一个端口号n利用PORT命令通过控制连接发送给服务器。

·服务器这时要通过TCP20端口号主动与客户端的n端口去建立数据连接。这就是主动模式。

  1. 被动模式:又叫PASV模式,

·客户端主动通过随机端口号m申请与服务器TCP21号端口建立控制连接。

·客户端发送PASV指令传给服务器。

·这时客户端要主动连服务器,但并不是服务器的20端口,而是服务器随机生成一个端口x发给客户端。

·客户端再随机生成一个端口n主动与服务器的随机端口x建立数据连接。

  1. 根据防火墙的规矩,

在主动模式下,对服务器来说入站的数据有控制连接,所以要将21端口开放,对于客户端来说,入站的是建立的数据连接,由于客户端的端口号是随机生成的,所以无法设置防火墙,因为在使用主动模式时要将防火墙关闭。

在被动模式下,对服务器来说,入站的数据有控制连接,也有数据连接,因为要开放21号端口,但数据连接的端口号也是随机生成的,所以采用连接追踪的方式,对于客户端来说,没有入站的规则,所以对客户端的防火墙没有设置要求,现在FTP服务大多采用被动模式。

  1. FTP服务的配置:

客户端软件:在Windows系统中有一些专门的FTP客户端软件,但推荐采用系统内置的资源管理器来访问FTP服务(URL:ftp://服务器的IP),默认是匿名访问,另外Windows系统中还内置了FTP命令行工具(ftp 服务器IP),在Linux系统中也可以通过ftp命令来访问FTP服务(ftp命令也需要单独安装),其操作和Windows系统命令行操作是一致的,只不过虽然默认是匿名访问,也要给匿名用户一个用户名(anonymous/ftp),

FTP服务端的软件有很多,Windows server里的IIS,还有Windows平台的第三方软件Serv-U等,在centos7系统中使用的一款名叫vsftpd的FTP服务端软件,“vs”代指“very secure”,所以vsftpd软件的特点就是安全性和稳定性突出。

  1. vsftpd的主配置文件时/etc/vsftpd/vsftpd.conf,文件里大部分都是注释,一般#后边有空格的注释行就是代表单纯的注释,#后没有空格的就属于配置项,这些配置默认时不生效的,里面一些设置项的意思:

·anonymous_enable=YES:开启匿名用户登录

·local_enable=YES:允许使用本地(系统/自己创建的)用户登录;(严禁使用root用户去访问FTP服务)

·write_enable=YES:是否允许上传文件,当然要想使客户端能够上传文件,还必须要满足系统权限能够有写入才可以实现。

Vsftpd服务的默认主目录是/var/ftp,里面有一个默认的子目录“pub”/var目录里面存放的数据是变化的,比如,ftp目录,网站主目录,日志信息等。

  1. vsftpd服务中有三类用户,匿名用户,系统用户,虚拟用户;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值