Ubuntu操作系统学习笔记之FTP基础

2023-11-08

说明

    FTP, File Transfer Protocol
    一个 古老但应用极为广泛 的互联网协议
    FTP提供了一种可靠的方式在网络上进行文件共享.
    C/S 架构, 基于 TCP, 提供了数据传输的可靠性
    标准端口: 20 (数据端口) ; 21 (指令端口) 


连接

    FTP会话时包含了两个通道,一个叫控制通道,一个叫数据通道。
    控制通道:控制通道是和FTP服务器进行沟通的通道,连接FTP,发送FTP指令都是通过控制通道来完成的。
    数据通道:数据通道是和FTP服务器进行文件传输或者列表的通道。
    FTP协议中,控制连接均有客户端发起,而数据连接有两种工作方式:PORT方式和PASV方式

工作模式

    主动模式

        Active Mode. 由 服务端 发起数据传输的连接
        流程
            1) client 与 server的21端口 建立连接, 用于发送命令
            2) 接收数据
                在控制通道上发送 PORT命令
                PORT命令 包含 client用什么端口接收 server传过来的数据
            3) 传输数据
                server通过20端口 与client建立新的连接, 发送数据

    被动模式

        Passive Mode. 由 客户端 发起数据传输的连接
        流程
            1) client 与 server的21端口 建立连接, 用于发送命令
            2) server打开一个 随机端口(1024~5000), 通知client在此端口上传输数据
            3) client 在 server通知的端口上建立连接

    注

        由于网关防火墙的原因, server(外网)无法对client(内外)主动建立连接
        因此, 一般使用的是 被动模式


vsftpd

    说明
        vsftpd, Very Secure FTP Daemon
        vsftpd 提供了一种 快速、稳定、安全 的FTP服务
    安装
       apt-get install vsftpd
    启动
        service vsftpd restart

配置/目录
        主配置文件: /etc/vsftpd/vsftpd.conf
        用户名单: /etc/vsftpd/ftpusers
        控制名单: /etc/vsftpd/user_list
        共享目录: /var/ftp

    用户
        说明
            vsftpd 基于 用户 进行管理单位
            每个用户可通过ftp方式访问 自己可访问的目录及文件
        类型
            正常用户(普通用户、系统用户)
            匿名用户(anonymous)
            虚拟用户(ftp-only)
        匿名用户
            vsftpd在安装过程中 创建的 ftp用户
            默认home目录指向 /var/ftp/
            任何 没有权限限制的 文件, 可通过匿名用户共享
            打开匿名用户上传

外部用户登陆
        1) 临时关闭服务器上的防火墙
            # service iptables stop
        2) MS-DOC登陆
            C:\Windows\System32>ftp 192.168.1.107
            示例

lftp

    说明: Linux命令行下 连接 FTP的工具
    安装: # yum install lftp
    登陆: lftp -u <user>[,<pass>]
        匿名
        普通用户
    帮助
    下载: ~>get [OPTS] <rfile> [-o <lfile>]
    上传: ~>put [OPTS] <lfile> [-o <rfile>]


DropBox机制

    说明: 具有dropbox功能的目录 只能上传, 但无法浏览
    实现
        mkdir /var/ftp/mydropbox
        chmod 2733 mydropbox



本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Ubuntu操作系统学习笔记之FTP基础 的相关文章

  • 毕业设计 基于Arduino的计算器

    0 前言 这两年开始毕业设计和毕业答辩的要求和难度不断提升 传统的毕设题目缺少创新和亮点 往往达不到毕业答辩的要求 这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求 为了大家能够顺利以及最少的精力通过毕设 学长分享优质毕业设计项
  • 暑期实训日志11——webstorm+chrome实时浏览插件

    在网上看到一个webstorm chrome里JetBrains IDE Support能够实现实时浏览的小工具 感觉非常实用 一 JetBrains IDE Support下载 下载地址 直接从谷歌商店下载也可 前提是进得去 下载好后打开

随机推荐

  • sqli-labs(28-28a)

    Less 28 1 测试http 127 0 0 1 sqli labs Less 28 id 1 27 页面回显不正常 但又没有错误提示 报错注入没戏 尝试闭合语句 加单引号回显不正常 说明sql语句闭合至少有 可能有 判断有无 在Les
  • log4cplus基础知识

    一 简介 log4cplus是C 编写的开源的日志系统 具有线程安全 灵活 以及多粒度控制的特点 通过将信息划分优先级使其可以面向程序调试 运行 测试 和维护等全生命周期 你可以选择将信息输出到屏幕 文件 NT event log 甚至是远
  • SSM controller要能跳转页面又要能返回字符串

    SpringMVC因为添加了下面这个bean 视图解析器 当你方法返回的是 json 字符串等其它值时 会404 跳转 jsp jsp页面
  • 回文数的判断

    文章目录 题目 一 方案一 二 方案二 三 方案三 四 方案四 题目 判断一个整数是否是回文数 回文数是指正序 从左向右 和倒序 从右向左 读都是一样的整数 提示 下面案例可供参考 一 方案一 public boolean palindro
  • 二叉树 深度优先搜索(DFS)、广度优先搜索(BFS)

    深度优先搜索算法 Depth First Search DFS是搜索算法的一种 它沿着树的深度遍历树的节点 尽可能深的搜索树的分支 当节点v的所有边都己被探寻过 搜索将回溯到发现节点v的那条边的起始节点 这一过程一直进行到已发现从源节点可达
  • pytorch Embedding模块,自动为文本加载预训练的embedding

    pytorch 提供了一个简便方法torch nn Embedding from pretrained 可以将文本与预训练的embedding对应起来 词 embedding word1 0 2 3 4 word2 1 2 3 4 word
  • Pytorch(六)(模型参数的遍历) —— model.parameters() & model.named_parameters() & model.state_dict()

    神经网络的模型参数 model parameters model named parameters model state dict 这三个方法都可以查看神经网络的参数信息 用于更新参数 或者用于模型的保存 作用都类似 写法略有出入 就以P
  • 爬虫技术研究综述

    爬虫技术研究综述 整理 Ackarlix 挨踢网 中文IT技术社区 http www aitic net 引言 随着网络的迅速发展 万维网成为大量信息的载体 如何有效地提取并利用这些信息成为一个巨大的挑战 搜索引擎 Search Engin
  • react运行项目出现报错:process is not defined

    具体报错效果 导致页面完全不能动弹 点击按钮没有效果 解决方式 首先删除 package lock json 文件夹 然后执行命令 npm install react error overlay 6 0 9 最后重新启动项目
  • End-to-End Object Detection with Transformers[DETR]

    End to End Object Detection with Transformers DETR 背景 概述 相关技术 输入 提取特征 获取position embedding transformer encoder decoder 回
  • C++ 学习笔记(17)tuple类型、bitset类型、随机数(引擎和分布)、IO库(操纵符、未格式化输入输出、随机访问)

    C 学习笔记 17 tuple类型 bitset类型 随机数 引擎和分布 IO库 操纵符 未格式化输入输出 随机访问 参考书籍 C Primer 5th 17 1 tuple 类型 17 1 1 定义和初始化tuple tuple 的构造函
  • 极路由 1s HC5661 玩转 openwrt

    注意 我的极路由1s是老版本的 是不带A的 安装篇 1 安装breed 根据这篇文章安装breed 成功后你就拥有了一台刷不死的路由器 2 下载openwrt系统 在这个网站可以下载 选择HC5661的版本 3 断电 按住reset键 上电
  • 在字符串中删除特定字符

    题目 在字符串中删除特定字符 删除后字符串变为 hi i a 即将原串中包含t e s中的都删除掉了 分析 方法 1 从头扫描原串 每遇到一个字符 在要删的串中比一遍 有的话就删除当前字符 然后继续下一个字符的判断 方法 2 由于方法 1
  • Shell编程学习(三)条件判断、流程控制

    条件判断 test 类似于if 前面说到过 可以用来判断上一个命令是否正确执行 我们就用一下这个命令来查看 等号两边要有空格 root iZwz9hv1phm24s3jicy8x1Z echo a 12 root iZwz9hv1phm24
  • MySQL是怎样运行的:从根儿上理解MySQL

    文章目录 快速查询的秘籍 B 树索引 1 没有索引的查找 1 1 在一个页中的查找 1 2 在很多页中查找 2 索引 2 1 一个简单的索引方案 2 2 InnoDB中的索引方案 1 聚簇索引 2 二级索引 2 3 InnoDB的B 树索引
  • python输出文件有省略号_解决python 输出是省略号的问题

    这个问题非常非常重要 搞了一晚上都没解决好 但是真的很简单很简单 如果你也 是用的numpy array 如果你也想得到输出矩阵的全部内容 而不是省略形式 0 10284943 0 0959931 0 00076021 0 01035775
  • 计算机技能应用大赛Java

    GO GO GO 大家好 我是你们的晴天学长 这是Java初赛考试范围知识点的快速链接 请自取哦 各位小伙伴觉得有帮助的话 可以给博主来波关注哦 考试范围 Java基础及环境 JDK发展历史 不同版本的进阶内容 Java程序的编写 编译 调
  • Unbuntu 20.4 配置RTX2080ti环境

    具体配置 显卡驱动460 cuda 11 0 3 450 51 06 linux run cudnn 11 3 linux x64 v8 2 1 32 Tensirflow 1 13 1 python 3 6 亲测有效
  • 微服务Ribbon在docker中无法通过服务名(SERVICE-ID)映射到宿主机IP

    I O error on GET request for http API ADMIN microservice 1 280d0f4200d8 nested exception isjava net UnknownHostException
  • Ubuntu操作系统学习笔记之FTP基础

    说明 FTP File Transfer Protocol 一个 古老但应用极为广泛 的互联网协议 FTP提供了一种可靠的方式在网络上进行文件共享 C S 架构 基于 TCP 提供了数据传输的可靠性 标准端口 20 数据端口 21 指令端口