FTP文件传输服务
FTP文件传输服务
一 、FTP 连接及传输的模式
l 控制连接:TCP21,用于发送FTP命令信息。
l 数据连接:TCP 20, 用于上传下载数据。
- · 数据连接建立的类型:
- ·主动模式: 服务器主动发起数据连接。首先由客户端向服务端的21端口建立FTP控制连接。当需要数据传输时,客户端以PORT命令告诉服务器“我打开了某端口,你过来连接我”,于是服务器从20端口向客户端的该端口发送请求,并建立数据连接。
- ·被动模式:若客户端所在的防火墙禁止主动模式连接,首先由客户端向服务端的21端口建立FTP控制连接。当需要数据传输时,服务器以PASV命令告诉客户端“我打开了某端口,你过来连接我”,于是客户端向服务器的该端口(非20)发送请求,并建立数据连接。
l 传输模式:依据传输文件时,是否进行字符转换,分为文本模式和二进制模式。
- ·文本模式:又称ASCII(American Standard Code for information interchange 美国信息交换标准码)模式,这种模式在传输文件时使用ASCII标准字符序列,一般只用于纯文本文件的传输。
- ·二进制模式:又称Binary 模式,这种模式不会转换文件的字符序列,更适合传输程序、图片等非纯文本字符的文件。
二进制模式比文本模式效率高,大多数FTP客户端可以根据文件类型选择文件传输模式。
二、FTP的用户类型
三、FTP服务器软件的种类
四、FTP客户端软件的种类
五、 搭建匿名访问的FTP服务
l 1、安装FTP服务软件 :vsftpd

l 2、准备匿名FTP访问的目录

l 3、修改匿名用户配置并启动vsftpd服务



l 4、测试匿名FTP服务器
在客户端安装FTP客户端 :ftp
FTP文件传输服务的更多相关文章
- FTP 文件传输服务
昨晚心血来潮,尝试用python写了一个ftp文件传输服务,可以接收指令,从远程ftp服务器同步指定目录数据,最后没用上,开源出来. https://github.com/jadepeng/ftp_t ...
- FTP文件传输服务!
一.FTP 连接及传输模式 1.控制连接:TCP 21,用于发送 FTP 命令信息2.数据连接:TCP 20,用于上传.下载数据3.数据连接的建立类型: (1)主动模式:服务器主动发起数据连接 (2 ...
- 网站优化与Cdn文件传输服务
网站优化与Cdn文件传输服务 如今互联网无处不在,其方便快捷.性质和低成本的经济特点,已经逐渐成为商务贸易.信息分发和数据交付的一个重要渠道.要想让数据的分发带来巨大的效益,那么网民的满意是唯一的办法 ...
- 【RL-TCPnet网络教程】第35章 FTP文件传输协议基础知识
第35章 FTP文件传输协议基础知识 本章节为大家讲解FTP(File Transfer Protocol,文件传输协议)的基础知识,方便后面章节的实战操作. (本章的知识点主要整理自网络) ...
- FTP文件传输服务器原理
FTP服务器,全称File Transfer Protocol Server,是在互联网上提供文件存储和访问服务的计算机,它们依照FTP协议提供服务.FTP,文件传输协议(File Transfer ...
- Python实现终端FTP文件传输
实现终端FTP文件传输 代码结构: .├── client.py├── readme.txt└── server.py 运行截图: readme.txt tftp文件服务器 项目功能: * 客户端有简 ...
- WCF大文件传输服务
由于项目需要,自己写一个基于WCF的大文件传输服务雏形.觉得有一定的参考价值,因此放在网上分享. 目前版本为v1.1特点如下: 1.文件传输端口为18650 2.上传和下载文件 3.支持获取文件传输状 ...
- SSIS 学习之旅 FTP文件传输-脚本任务
这一章主要讲解一下用脚本怎么把CSV文件抛送到FTP服务器上 设计: 通过Demon库的Users表数据生成CSV文件. 生成后的CSV文件抛送到FTP指定目录下. 控件的使用这里就不做详细讲 ...
- Python自带HTTP文件传输服务
一行命令搭建一个基于python的http文件传输服务 由于今天朋友想要一个文件,而我恰好有,因为这个文件比较大,网速不是很给力,所以想到了python自己有这么一个功能,这样不仅不需要下载其他软件, ...
随机推荐
- 『流畅的Python』第1~4章笔记_数据结构、编码
由于1~4章内容零散且基础,所以统计一下涉及到的内容,记录一下,方便查阅(第一张图右键新页面打开即可看到清晰大图)
- js里获取页面高度和文档高度
$(window).height() 和 $(document).height()的区别 $(window).height()代表了当前可见区域的大小,$(document).height()则代表了 ...
- CSS font-family字体大合集
在写文字内容占大篇幅的页面是,总是会面临着改变字体的需求,以下为font-family常用合集以及一部分文字效果: windows常见内置中文字体 字体中文名 字体英文名 ...
- git(一) 基本操作
git简介 产生历史 git是目前世界上最先进的分布式版本控制系统. 2005年,Linus花了两周时间自己用C写了一个分布式版本控制系统,这就是git. git的两个特点 版本控制:可以解决多人同时 ...
- 数组去重复的时候遇到length变成1 的bug
arrUnique:function(arr){ //传入空数组的时候有bug,length会变成1 所以修复下 if(arr.length == 0){ return []; } arr.sort( ...
- python四
三元运算 name = "张三" if 1 == 2 else "李四" print(name) name1 = "张三" if 1 == ...
- find补充和目录结构
第1章 find找出文件然后通过ls -l显示文件的详细信息 找出/oldboy 以.sh结尾的文件,显示文件详细信息 1.1 方法一: find /oldboy/ -type f -name &qu ...
- 如何使用 Excel 对象将 DataGridView 数据导出到 Excel
转载出处:https://code.msdn.microsoft.com/How-to-insert-image-into-93964561 本项目阐述如何使用 Open XML SDK 将图像插入到 ...
- git多账号切换
修改: git config --global user.name "Your_Username" git config --global user.email username@ ...
- JavaWeb在线电子相册springmvc
(一) 这学期上了一们叫做J2EE的选修课,本以为很水,没想到这个课这么烦气,最后大实验是一个springmvc的电子相册,做了两个周,终于完事了,姑且把这一篇叫做(一)吧 粗略看了一下啊,两个人的实 ...