zoukankan      html  css  js  c++  java
  • FTP简单搭建(一)

    一、FTP服务介绍

    vsftp(very security ftp file transfer protocol 非常文件传输协议)

    FTP分为主动模式和被动模式。

    主动模式:(不安全,传数据的端口是固定的20号,容易被截取)

    1、        客向服的21号端口发送连接请求信号

    2、        服使用20号端口主动和客连接,服使用20号发送的数据,客通过>1024的随机端口接收。

    被动模式:(安全,传数据的端口是>1024的随机端口,不易被截取)

    1、        客向服的21号端口发送连接请求信号

    2、        服使用>1024随机端口主动和客连接,服使用>1024的随机端口发送的数据,客通过>1024+1的随机端口接收。

    #lftp  登录服务器的这一瞬间的流程:

    1、-------------tcp connection ------------->

       首先,客户端向服务端发送建立连接的请求

    2、<-------------220  ready ----------------

       服务端反馈220的代码,表明21号端口处于正常侦听状态

    3、-------------USER --------------------->

       客户端向服务端发送一个用户名

    4、<-------------331 authentication-----------

       服务端反馈331代码,要求客户端输入验证密码

    5、-------------PASSWD------------------->

      客户端向服务端发送密码

    6、<-------------230 login-------------------

       服务端反馈230代码,如果验证通过允许客登录

    7、-------------pwd ----------------------->

       客户端向服务端发送一条指令,例如pwd显示当前路径

    8、<-------------257 work path --------------

       服务端反馈代码,显示当前工作路径,每个指令的反馈代码都不同

    二、实验环境

    VMware Workstation Pro15

    Red Hat Enterprise Linux Server release 7.3 (Maipo)

    xshell 6(可不需要)

    三、安装服务

    [root@b ~]# yum install -y vsftpd lftp

    四、匿名用户访问

    直接重启服务即可

    [root@b ~]# systemctl restart vsftpd

    测试

    [root@b ~]# >/var/ftp/pub/1
    [root@b ~]# ll /var/ftp/pub/1
    -rw-r--r--. 1 root root 0 Jul 25 06:24 /var/ftp/pub/1
    [root@b ~]# lftp b.kkcn.host
    lftp b.kkcn.host:~> ls                          
    drwxr-xr-x    2 0        0              15 Jul 25 10:24 pub
    lftp b.kkcn.host:/> cd pub/
    lftp b.kkcn.host:/pub> ls
    -rw-r--r--    1 0        0               0 Jul 25 10:24 1
    lftp b.kkcn.host:/pub> get 1
    lftp b.kkcn.host:/pub> exit
    [root@b ~]# ll
    -rw-r--r--. 1 root root    0 Jul 25 06:24 1

    五、配置文件简述

    vim /etc/vsftpd/vsftpd.conf      主配置文件
    
    anonymous_enable=YES      允许匿名访问
    
    local_enable=YES          允许本地
    
    write_enable=YES          允许写入
    
    anon_upload_enable=YES      允许匿名上传
    
    anon_mkdir_write_ enable=YES    允许匿名用户创建新的目录
    
    dirmessage_enalbe=YES        开启目录提示功能
    
    xferlog_enable=YES          激活上传下载的日志          
    
    connect_from_port_20=YES      开启20号端口的主动模式
    
    chown_username=whoever      指定匿名上传的用户
    
    xferlog_file=/var/log/xferlog      日志文件,这个要反注释打开
    
    xferlog_std_format=YES        启用日志的标准格式
    
    idle_session_timeout=600   连接上服务器10分钟内,如果什么操作都不做,就会被服务器踢掉,默认300秒
    
    date-connection-timeout=120 会话超时时间,如果因为断线导致连接断开,2分钟后,服务端会把客户端踢下去,默认300秒
    
    ftpd_banner=Welcome to joinlabs    欢迎信息,在lftp没用
    
    listen=NO              NO只侦听ipv4,   YES侦听ipv4和ipv6
    
    listen_ipv6=YES            支持ipv6,但是不侦听ipv6也没用
    
    userlist_enable=YES         启用黑名单

    六、配套设置

  • 相关阅读:
    Android调用系统相机和相册并解决data为空,OOM,图片角度不对的问题
    Android 工作流提交审批填写审批意见PopWindow工具类
    解决ionic安装不上的方法
    nodeJs 报maximum call stack size exceeded js
    命令行运行ionic run android 出现running one or more of the platforms Error
    Ionic run android失败解决方法。
    Android Scrollview嵌套下listView动态加载数据,解决onScrollChanged执行多次数据重复问题
    Android 自定义ListView动态加载数据
    Android ListView显示不同样式的item
    day 43
  • 原文地址:https://www.cnblogs.com/kklinux/p/ftp_1.html
Copyright © 2011-2022 走看看