zoukankan      html  css  js  c++  java
  • FTP文件传输服务

    一.FTP连接及传输模式

    1 控制连接:TCP 21,用于发送FTP命令信息
    2 数据连接:TCP 20,用于上传、下载数据
    3 数据连接建立类型:
    FTP分为主动模式和被动模式
    主动模式:服务器主动发起数据连接
    首先由客户端向服务端的21端口建立FTP控制连接。当需要传输数据时,客户端以PORT命令告知服务器“我打开了某端口,你过来链接我”,预算服务器从20端口向客户端的该端口发送请求并建立数据连接
    被动模式:服务器被动等待数据连接
    如果客户端所在网络的防火墙禁止主动模式连接,通常会使用被动模式
    首先由客户端向服务器的21号端口建立FTP控制连接。当需要传输数据时,服务器以PASV命令告知客户端“我打开了某端口,你过来链接我”,于是客户端向服务器的该端口(非20)发送请求并建立数据连接。
    传输模式
    在传输文件时,根据是否进行字符转换,分为文本模式和二进制模式
    文本模式:这种模式在传输文件时使用ASCII标准字符序列,一般只用于纯文本文件的传输
    二进制模式:这种模式不会转换文件中的字符序列,更适合传输程序、图片等非纯文本字符的文件。
    使用二进制模式比文本模式更有效率,大多数FTP客户端工具可以根据文件类型自动选择文件传输模式。

    二.用户类型

    匿名用户:不用输用户
    本地用户:本地的Linux登录用户
    虚拟用户:不同于本地用户,跟Linux账号没关系的
    FTP自己承认的虚拟账号
     

    三.安装服务

    ①匿名用户

    服务端

    安装

    1 mount /dev/sr0 /media/cdrom/
    2 mount: block device /dev/sr0 is write-protected, mounting read-on
    3 yum -y install vsftdp
     1 cd /var/ftp/
     2 ls
     3 pub
     4 ll
     5 total 4
     6 drwxr-xr-x. 2 root root 4096 Mar  1  2013 pub
     7 chown ftp pub/
     8 ll
     9 total 4
    10 drwxr-xr-x. 2 ftp root 4096 Mar  1  2013 pub
     1 anonymous_enable=YES   #开启匿名用户
     2 local_enable=YES             #本地用户    
     3 write_enable=YES            #写开启    
     4 local_umask=022            #权限掩码
     5 anon_upload_enable=YES       #开启匿名用户上传权限
     6 anon_umask=022                   #手动添加匿名用户权限掩码
     7 
     8 
     9 anon_mkdir_write_enable=YES                 #开启匿名用户新建目录anon_other_write_enable=YES                    #手动添加匿名用户
    10 
    11 dirmessage_enable=YES
    12 xferlog_enable=YES
    13 connect_from_port_20=YES
    14 xferlog_std_format=YES
    15 listen=YES
    16 pam_service_name=vsftpd
    17 userlist_enable=YES
    18 tcp_wrappers=YES
    1 /etc/init.d/vsftpd start
    2 /etc/init.d/vsftpd: line 34: [: =: unary operator expected
    3 Starting vsftpd for vsftpd:                                [  OK ]
    4 netstat -antup | grep vsftpd
    5 tcp        0      0 0.0.0.0:21                  0.0.0.0:*        
    6            LISTEN      1173/vsftpd         
    1 mount /dev/sr0 /media/cdrom/
    2 mount: block device /dev/sr0 is write-protected, mounting read-on
    3 yum -y install ftp

     /var/ftp/pub为共享目录 目录修改属主:chown ftp pub/

    测试

  • 相关阅读:
    android: 在android studio中使用retrolambda的步骤
    Shiro基础知识03----shiro授权(编程式授权),Permission详解,授权流程(zz)
    [Android] 关于Android的问号?和@符号的用法
    20170506 《摔跤吧,爸爸》观影笔记
    Android关于log日志,华为不输出log.v,log.d(zz)
    阅读日志:协鑫一年的多晶硅料产能能够生产做少装机容量的组件?
    《周鸿祎自述》读书笔记
    使用promise 和 generator来管理工作流
    读书笔记,《刻意练习》,第三章,心理表征
    读书笔记,《刻意练习》,第四章,黄金标准
  • 原文地址:https://www.cnblogs.com/GokouRuri-zwq/p/10085475.html
Copyright © 2011-2022 走看看