ftp服务器软件(详解ftp协议,力荐)
ftp服务器软件文章列表:
详解ftp协议,力荐
文章下方附学习资源,自助领取
You know some birds are not meant to be caged, their feathers are just too bright.
1 概述
FTP为File Transfer Protocol的缩写,即文件传输协议,是TCP/IP 协议族中的协议之一。FTP是一个用于在计算机网络上在客户端和服务器之间进行文件传输的应用层协议。RFC 959定义了FTP协议规范。
FTP可谓网络协议中的活化石。其原始规范由Abhay Bhushan编写,并于1971年4月16日作为RFC 114发布。而被人熟知的tcp/IP协议要等到1983年才成为大部分因特网共同遵守的一种网络规则。同大多数Internet服务一样,FTP也是一个客户/服务器系统(C/S系统)。用户通过一个客户端程序连接至在远程计算机上运行的服务器程序。依照FTP协议提供服务,进行文件传送的计算机就是FTP服务器,而连接FTP服务器,遵循FTP协议与服务器传送文件的电脑就是FTP客户端。用户要连上FTP 服务器,就要用到 FTP 的客户端软件,通常Windows系统自带“ftp”命令,这是一个命令行的FTP客户端程序,另外常用的FTP客户端程序还有FileZilla、 CuteFTP。
FTP实现的目标:
促进文件的共享(计算机程序或数据);
鼓励间接或者隐式的使用远程计算机;
向用户屏蔽不同主机中各种文件存储系统(File system)的细节;
可靠和高效的传输数据。
2 实验环境搭建
为了更透彻的理解和掌握FTP,在叙述FTP协议内容的同时,也需要以“实战 ” 的方式抓取FTP客户端和FTP服务器之间交互的网络包,以此和FTP协议相互印证,加深理解。本节主要介绍抓取FTP网络包的环境搭建。实验环境将以Windows系统平台作为FTP客户端,以linux系统虚拟机作为FTP服务器。
FTP实验环境搭建:
在Windows系统安装wireshark抓包工具;
在Windows系统安装linux虚拟机(本次实验版本:Ubuntu 16.04);
熟悉Windows系统下"ftp"命令行的使用。
在微软帮助文档(HTTPS://docs.microsoft.com/en-us/previous-versions/orphan-topics/ws.10/cc755356(v=ws.10))中已经将"ftp"命令行介绍得比较详细,有需要可以点击查看。为了内容上的连贯性,本节会对常用的"ftp"命令行进行讲解。
常用的"ftp"命令行(可以打开cmd或PowerShell进行验证):
ftp 服务器域名(ip地址),如:ftp ftp.gnu.org,进行FTP服务器登录;
ftp>? 或 ftp>help,显示"ftp"命令行说明;
ftp>dir,显示FTP服务器目录文件和子目录列表;
ftp>cd,切换FTP服务器上的工作目录;
ftp>ls,显示FTP服务器上目录文件和子目录的缩写列表;
ftp>pwd,显示FTP服务器上的当前目录;
ftp>mdir,显示FTP服务器上目录文件和子目录列表,如:mdir Music 1.txt,将服务器目录Music中文件和子目录列表详细信息存入本地文件1.txt中;
ftp>binary(或bi),将文件传送类型设置为二进制模式;
ftp>ASCII,将文件传送类型设置为默认的ASCII;
ftp>delete,删除远程计算机上的文件,如:delete 123.c,删除服务器上的123.c文件;
ftp>get,将远程服务器文件复制到本地计算机上,如get 123.c,将服务器上的123.c文件,复制到本地;
ftp>mget,将远程服务器多个文件复制到本地计算机,如mget 123.c 456.c,将文件123.c和456.c复制到本地计算机上;
ftp>put,将本地文件复制到远程计算机上,如:put 789.c,
ftp>disconnect,从服务器断开,但保留"ftp"命令行提示(依然是处于"ftp"命令行模式,未退出);
ftp>open,与指定的远程FTP服务器连接,可以通过IP地址或计算机名称指定计算机(DNS或主机文件必须可用);
ftp>quit或(bye),结束与远程服务器的FTP会话并退出"ftp"命令行模式;
ftp>status,显示 FTP 连接和切换的当前状态;
ftp>debug,切换调试,当调试打开时,客户端发送到远程服务器的每个命令都将打印。默认情况下,调试是关闭的;
ftp>!,从"ftp"命令行子系统退出到cmd或PowerShell的shell。
注意"ftp"命令行只是Windows系统自带的FTP客户端程序,"ftp"命令行的使用和将要介绍的FTP文件传输协议无关。
3 FTP详解
FTP作为一个古老的协议,现在仍然被广泛使用,一定有其过人之处。其最大的一个优点就是部署、使用起来非常简单。只要两个设备部署了FTP客户程序和FTP服务程序,知道用户名和密码,就能够实现文件的轻松互传。甚至一些匿名FTP服务器,就算没有用户名和密码也能够访问。如一些软件分发、资料分享,就可能使用到匿名FTP服务器。
嵌入式物联网需要学的东西真的非常多,千万不要学错了路线和内容,导致工资要不上去!
无偿分享大家一个资料包,差不多150多G。里面学习内容、面经、项目都比较新也比较全!某鱼上买估计至少要好几十。
点击这里找小助理0元领取:嵌入式物联网学习资料(头条)
3.1 文件传输过程
FTP使用简单并不意味着其实现简单。与常见的应用层协议http只需要一个TCP连接不同,FTP需要两个TCP连接来完成文件的传输。其中一个称为控制连接,一个称为数据连接。
默认情况下,FTP使用20和21这两个端口,其中20用于数据连接(传递数据),21用于控制连接(传递控制信息)。但是,是否使用20作为传输数据的端口与FTP使用的传输模式有关,如果采用主动模式,那么数据传输端口就是20;如果采用被动模式,则具体最终使用哪个端口要服务器端和客户端协商决定。
如下图所示,描述了使用FTP进行文件传输的过程,用户通过客户端程序(ftp命令行或FileZilla)与ftp服务器进行交互。用户的输入逻辑会被用户协议解释器解析,转换成FTP命令,通过控制连接(一个tcp连接,port口为21)给到服务器协议解释器,服务器协议解释器会回应一个FTP应答。并且根据传输过来的FTP命令类型,服务器协议解释器可能需要去启动服务器数据传输功能,其过程包括服务器主动发起建立一个tcp连接(用port口20),通过该连接服务端和客户端就可以进行数据传输了。在数据传输完成后,服务端会将该数据连接关闭掉,直到下一次需要文件传输时才又开启,所以可以看到数据连接是随时开、随时关。而控制连接在被创建后,其会一直保持下去,随时等待用户命名的输入,直到主动断开。
3.2 报文格式
在FTP协议中,FTP命令和FTP应答,是以ASCII码形式的明文传递。FTP命令的一般报文格式是:命令 选项参数 rn,FTP应答的一般报文格式为:状态码 报文选项 rn。先来介绍FTP命令。
FTP命令都是3或4个字节的大写ASCII字符组成,其中一些命令带选项参数。从客户端向服务器发送的FTP命令有很多,在rfc959中有定义。本节介绍一些常用的。
命令 说明ABOR 放弃先前的FTP命令和数据传输LIST filelist 列表显示文件或目录PASS password 服务器上的密码PORT n1,n2,n3,n4,n5,n6 客户端IP地址(n1 .n2 .n3 .n4)和端口(n5 × 256 n6)QUIT 从服务器退出RETR filename 检索(取)一个文件STOR filename 存储(放)一个文件SYST 服务器返回系统类型TYPE type 说明文件类型:A表示ASCII码,I表示二进制类型USER username 服务器上用户名
FTP应答的状态码是ASCII码形式的3位数字,并且跟有报文选项。应答状态码中每一位数字都有不同的含义。应答状态码第1位和第2位的含义如下,第3位给出出错报文的附加含义。
状态码 解释1yz 正面的初步答复。该操作正在启动,但在发送另一个命令之前需要另一个回复。2yz 肯定完成回复,可以发送新命令。3yz 正面的中间答复。命令已被接受,但必须发送另一个命令。4yz 暂时否定完成回复请求的操作没有发生,但错误情况是暂时的,因此可以稍后重新发出命令。5yz 永久否定完成回复。 该命令未被接受,不应重试。x0z 语法错误。x1z 信息。x2z 连接。涉及控制或数据连接的回复。x3z 身份验证和记帐。回复登录或记帐命令。x4z 未指定。x5z 文件系统状态。
一些典型的状态码含义如下:
125 数据连接已经打开,数据传输开始
200 命令OK
214 帮助消息(针对用户)
331 用户名OK,需要密码
425 无法打开数据连接
452 写入文件时出错
500 语法错误(无法识别的命令)
501 语法错误(无效参数)。
502 未实现的 MODE 类型。
下面来通过抓实际环境中的网络包,看客户端和服务器的FTP命令、FTP应答交互过程。使用前面介绍的windows环境下的"ftp"命令行和FTP服务器进行交互。如下图所示为客户端登录到FTP服务器的抓包过程,客户端ip地址为192.168.2.6,服务端ip地址为192.168.2.2。如图中红框所示,可以看到首先客户端和服务器通过tcp三次握手建立了一条tcp通路,服务端端口号21,客户端端口号是22655,这条通路就是上面所说的控制连接。因为没有进行文件数据传输,所以数据连接尚未建立。
windows环境"ftp"命令行客户端展现的交互过程:
ftp> open 192.168.2.2连接到 192.168.2.2。220 (vsFTPd 3.0.3)---> OPTS UTF8 ON200 Always in UTF8 mode.用户(192.168.2.2:(none)): book---> USER book331 Please specify the password.密码:---> PASS 123456230 Login successful.
客户端登录到FTP服务器的抓包过程
建立好控制连接之后,客户端和服务器就开始了报文交互,如图中的绿框所示,下面文字也描述了其报文交互过程,并且做了注释。
服务端(192.168.2.2): 220 (vsFTPd 3.0.3) //220,表示服务器准备完成,客户端可以发送命令了。 后面跟的是FTP服务器的版本信息。客户端(192.168.2.6):OPTS UTF8 ON //表示服务器需要切换到UTF8字符集进行工作。服务端(192.168.2.2): 200 Always in UTF8 mode. //200,表示命令执行成功,后面的提示信息表示已经工作再UTF8模式下了。客户端(192.168.2.6):USER book //指定用户book登录服务端(192.168.2.2): 331 Please specify the password. //331 表示需要输入密码客户端(192.168.2.6):PASS 123456 //客户端输入密码123456服务端(192.168.2.2): 230 Login successful. //# 230 表示用户登入成功
下图展示了第一个FTP应答报文220 (vsFTPd 3.0.3)rn的二进制数据形式,其也印证了FTP报文是以ASCII码明文进行传递的。220 (vsFTPd 3.0.3)rn报文的20个字节(包含空格)的ASCII码为32 32 30 20 28 76 73 46 54 50 64 20 33 2e 30 2e 33 29 0d 0a。
第一个FTP应答报文
3.3 数据连接
上一节看到了控制连接的建立和连接建立之后的客户端和服务器之间的报文交互。本节来看一下数据连接。数据连接有如下三个用途:
从客户向服务器发送一个文件。
从服务器向客户发送一个文件。
从服务器向客户发送文件或目录列表。
这里再强调一下控制连接一直保持到客户端—服务器连接的全过程,但数据连接可以根据需要随时开、随时关。根据FTP数据连接的用途可以看到,在进行文件传输或是查询服务器端文件或目录列表时,需要创建数据连接。数据连接的创建过程如下:
数据连接的创建由客户端控制,因为是客户端发出需要数据连接的命令(获取文件、上传文件或列出目录)。
客户端通常在客户端主机上选择一个临时端口号来结束数据连接。客户端从该端口发出被动打开。
客户端使用PORT命令通过控制连接将此端口号发送到服务器。
服务器接收控制连接上的端口号,并向客户端主机上的该端口发出主动打开。数据连接的服务器端始终使用端口20。
下面来进行网络抓包看一下实际的数据连接建立过程。通过windows环境下的"ftp"命令行客户端向FTP服务器请求一个文件123.c来触发数据连接的建立。下图为数据连接的网络抓包过程。客户端通过PORT命令将端口信息(192,168,2,6,88,137、端口号:88*256 137=22665)传到服务端;服务端通过自身20端口和客户端22665端口,主动建立TCP连接,此连接就是为数据连接。文件数据123.c就是通过该连接进行传输。文件数据传输完成后,服务端又会主动发起断开该连接,如下图中红框所示的四次挥手。
windows环境"ftp"命令行客户端展现的交互过程:
ftp> get 123.c---> PORT 192,168,2,6,88,137200 PORT command successful. Consider using PASV.---> RETR 123.c150 Opening BINARY mode data connection for 123.c (48 bytes).226 Transfer complete.ftp: 收到 48 字节,用时 0.00秒 16.00千字节/秒。ftp>
数据连接建立过程
3.4 主动模式
思考一下上一节描述的数据连接会有什么问题?其发起数据连接过程为,客户端通过PORT命令将客户端监听的端口号传递给服务端,服务端通过固定的20端口主动去和客户端监听的端口进行TCP连接,此连接就是数据连接。可以看到如果客户端的防火墙阻止了服务器的主动连接请求,那么数据连接就会失败。所以主动模式有一定缺陷。
上面描述的这种连接模式就是主动模式,主动是相对于服务端来说的。下图示意了主动模式过程,控制连接是客户端发起,数据连接是服务端发起。
主动模式
3.5 被动模式
为了解决主动模式所面临的问题,FTP协议也支持被动模式。被动模式的示意图如下图所示:控制连接和数据连接都由客户端主动发起,而且服务端数据连接端口不在是固定端口20,而是被分配了一个临时端口。因为两次连接都是客户端主动发起,所以就不会有防火墙的问题。
被动模式
通过网络数据包来看一下被动模式的交互过程。客户端通过发送PASV,表明客户端明确告知FTP服务器它使用被动模式。服务器收到PASV后,会分配一个临时端口号37499(192,168,2,5,146,123,端口号=146*256 123=34799),并通过报文将该端口号通知到客户端。明确好了两端的端口号,客户端就会主动通过TCP三次握手和服务器建立连接,该连接就是数据连接。在文件传输完毕后,服务器通过TCP四次挥手,断开该连接。
被动模式网络数据包
3.6 匿名服务器
回忆一下上面介绍的客户端向FTP服务器发起连接的过程,第一步基本都需要输入服务器的用户名和密码。但有一些FTP服务器天然就是为了分发软件和共享文件而存在,让每一个人都申请用户名和密码,将非常的不方便。匿名FTP(anonymous FTP)就是为了应对这种场景而出现的。
匿名FTP服务器的实质是:提供服务的机构在它的FTP服务器上建立一个公开账户(一般为anonymous),并赋予该账户访问公共目录的权限。用户想要登录到这些FTP服务器时,无需事先申请用户账户和密码,可以用anonymous作为用户名,用自己的E-mail地址做密码或直接不输入密码,便可登录,获取FTP服务。
如ftp.gnu.org就是一个匿名服务器,用于GNU 的软件分发和资料共享。如下是其登录过程,直接用anonymous当作用户名,不需要输入密码。
ftp> open ftp.gnu.org连接到 ftp.gnu.org。220 GNU FTP server ready.200 Always in UTF8 mode.用户(ftp.gnu.org:(none)): anonymous230-NOTICE (Updated October 15 2021):230-230-If you maintain scripts used to access ftp.gnu.org over FTP,230-we strongly encourage you to change them to use HTTPS instead.230-230-Eventually we hope to shut down FTP protocol access, but plan230-to give notice here and other places for several months ahead230-of time.230-230----230-230-Due to U.S. Export Regulations, all cryptographic software on this230-site is subject to the following legal notice:230-230- This site includes publicly available encryption source code230- which, together with object code resulting from the compiling of230- publicly available source code, may be exported from the United230- States under License Exception "TSU" pursuant to 15 C.F.R. Section230- 740.13(e).230-230-This legal notice applies to cryptographic software only. Please see230-the Bureau of Industry and Security (www.bxa.doc.gov) for more230-information about current U.S. regulations.230 Login successful.ftp>
4 总结
FTP是一个用于在计算机网络上在客户端和服务器之间进行文件传输的应用层协议。RFC 959定义了FTP协议规范。
FTP需要两个TCP连接来完成文件的传输。其中一个称为控制连接,一个称为数据连接。
控制连接一直保持到客户端—服务器连接的全过程,但数据连接可以根据需要随时开、随时关。
数据连接可以分为主动模式和被动模式,主动模式有被客户端防火墙阻止的风险。
主动模式,FTP使用20和21这两个端口,其中20用于数据连接(传递数据),21用于控制连接(传递控制信息)。
如果采用被动模式,具体最终使用哪个端口做数据连接要服务器端和客户端协商决定。
FTP报文是以ASCII码明文进行传递的。
文章来源于橙子随记 ,作者橙子
本文转载自“?????嵌入式大杂烩”,如有侵权,请联系删除
原文链接:https://mp.weixin.qq.com/s/pB_zWsO-vpYTlUCEOpQNwA
版权声明:本文来源网络,免费传达知识,版权归原作者所有。如涉及作品版权问题,请联系我进行删除。
站长必备的5款 Mac 端 FTP 上传/下载工具
FTP 上传/下载工具是站长的必备软件之一,FTP 上传工具客户端很多,至于 FTP上传工具哪个好用?要看个人喜欢,以及服务器的支持。下面是小编为大家整理的5款 Mac 端简单好用的 FTP 客户端,有需要的用户可前往软件官网或是维奥网 Mac 软件区进行搜索下载。
1、 Mountain Duck
软件介绍
开发商:iterate GmbH
语言:英文
兼容性:OS X 10.9 或更高版本 64 位处理器
用户评分:☆ ☆ ☆ ☆ ☆
功能详情
Mountain Duck Mac版是一款Mac OS平台上的云存储空间本地管理工具。
1、支持将远程 FTP 空间、WebDEV、Swift、S3、Azure、Rackspace、Google Cloud 等云存储服务转入 Mac 本地管理;
2、支将云目录放入 Finder.app 同步管理,比如像上传,删除等操作,都可以和远程空间保持同步。
推荐理由
功能全面、实用,操作简单。
界面截图
其他
官网售价:$39
2、Vicomsoft FTP Client
软件介绍
开发商:Vicomsoft
语言:英文
兼容性:OS X 10.9 或更高版本 64 位处理器
用户评分:☆ ☆ ☆ ☆ ☆
功能详情
Vicomsoft FTP Client Mac 版是一款专业级、功能丰富、快速且值得信耐的 FTP/SFTP/FTPS 客户端。
1、与苹果的设计保持一致,FTP客户端拥有许多Mac OS X的界面元素,以其高分辨率Retina显示屏的支持,动画工具栏拖动,使得它不仅易于使用,且让你拥有一个真正的使用乐趣;
2、同时利用CPU和内存资源的最小级别的操作对其各个方面进行了优化,提供最快的完成时间,采用专门技术,最大限度地提高吞吐量,降低延迟;
3、超过19年的在Mac平台上的FTP传输经验的结晶。
推荐理由
Vicomsoft FTP Client Mac版首次发布于1997年,而最新的 5.5 版本即是 Vicomsoft FTP Client 在 Mac 平台上 19 年 FTP 传输经验的集成。它拥有极致的性能和无与伦比的可靠性,以及时尚直观的用户界面。
界面截图
其他
官网售价:$25,约¥164
3、Yummy FTP
软件介绍
开发商:Yummy Software
语言:英文 、简体中文
兼容性:OS X 10.9 或更高版本 64 位处理器
用户评分: ☆ ☆ ☆ ☆ ☆
功能详情
Yummy FTP 是一款非常好用的 FTP、FTP SSL TLS 和 SFTP 客户端。
1、高度调整加速转移,多连接FTP引擎超快速传输;
2、自动故障恢复;
3、可直接拖放上传到服务器;
4、定义本地文件夹自动上传到指定的服务器;
5、丰富的远程编辑支持;
6、能编辑任何的应用程序,你甚至可以重新自定义每个应用程序和文件的类型,包括内置的文本编辑器;
7、同步浏览本地和远程目录;
8、文件/文件夹过滤;
9、高级内置设置文字,图形,视频,音频的预览;
10、将图形放大到全尺寸检查,甚至直接从远程编辑文本预览;
11、对全部书签进行收藏;
12、轻松访问您的服务器和普通文件夹,配置站点的特定设置。
推荐理由
Yummy FTP 是一个非常高速、灵活并且完全可靠的 Mac OS X 下的文件传输工具,它具有非常漂亮和直觉的用户界面,像 Finder 一样的 FTP 浏览器、工具栏和随处可用的拖拽。它结合并改进了其它文件传输方案中最好的功能,添加了大量独特的强大功能,以一个高度可调谐的FTP引擎驱动。
界面截图
其他
官网售价:$24.99,约¥164
4、Captain FTP
软件介绍
开发商: Xnet Communications
语言:英文
兼容性:OS X 10.9 或更高版本 64 位处理器
用户评分:☆ ☆ ☆ ☆ ☆
功能详情
Captain FTP 是一款 MAC 系统上功能强大的 FTP SFTP 客户端软件,最特别的是她能够把 FTP 远程目录变为 Mac桌面上一个普通的虚拟文件夹。
1、当你将文件拖入这个虚拟folder时就会与远程服务器进行同步,文件会直接上传至FTP目录下;
2、支持 Unicode 及中文文件名;
3、支持多线程下载和上传,可导入其他用 FTP/SFTP 程序(Fetch 、Transmit)中的书签;
4、此外,Captain FTP 还提供了:定时同步服务;
5、对 FTP, FTPS, SFTP, TLS/SSL, WebDAV, Amazon S3, Youtube, iDisk, Bonjour,AFP 完美支持;同时连接多部FTP目录;对文件进行备份;
6、直接烧录FTP文件至CD/DVD;对文本文件进行对比;
7、自动重连,重新恢复传输;
8、自动从本地文件夹同步文件至 FTP ;
9、对FTP文件直接进行编辑,预览;
10、传输前对文件进行打包压缩以节省带宽和流量。
界面截图
其他
官网售价:$29,约¥190
5、Transmit
软件介绍
开发商:PANIC INC
语言:英文
兼容性:OS X 10.9 或更高版本 64 位处理器
用户评分:☆ ☆ ☆ ☆ ☆
功能详情
Transmit for Mac是一款功能齐全Mac用户必备的FTP客户端
1、支持多标签同时打开多个站点,点击一个远程项目即刻获得其 URL,在远程文件目录中进行搜索;
2、可以通过Transmit的标签系统同时进行多处连接,简单快捷的获取目录并使用多种功能;
3、Transmit中还提供如打包下载,同步Mac电脑或服务器和服务器传输等功能。
推荐理由
Transmit for Mac是一款功能齐全Mac用户必备的FTP客户端。其兼容于FTP,SFTP和TLS/SSL协议,提供比Finder更加迅速的iDisk账户接入。与此同时,用户还可以通过Transmit在任意应用程序中无须下载即可实时编辑文档,方便简洁,一步到位。
界面截图
其他
官网售价:$34.99,约¥229
本站一直致力于为用户打造一个正版Mac中文软件/游戏下载平台,本站所有软件均为正版,众多优秀软件均已由WeiOSX 团队汉化,只为给您更好的体验。欢迎各位用户下载本站正版 Mac 应用、Mac游戏,或是下载本站应用商城Mac蜂。本站也将继续为各位Mac用户带来更多精彩的Mac 软件 /游戏,持续关注本站将为您带来更多惊喜!任何有关Mac软硬件问题均可在下方粉丝群内反馈。
(关注:维奥网weiosx,掌握更多 正版Mac软件,Mac游戏最新信息!加入WeiOSX 粉丝交流QQ群 161351545,获取更多正版Mac软件,Mac游戏下载资源!)
实现电脑文件自动同步到FTP
在电脑使用的过程中最害怕的就是文件丢失,尤其是办公电脑,里面包含很多公司重要,一旦遗失会造成不可挽回的损失,所以我们通常是要对电脑本地文件进行备份,有的人喜欢备份到网盘,有的人会备份到U盘或者移动硬盘,这些都是不错的选择。
但也有不少小伙伴希望备份到FTP服务器上,那么具体应该如何操作呢?所以今天我来教大家一个好用的方法,可以实现定时自动备份,只需要用到一个简单的工具即可完成,快来和我一起学习吧。
使用的工具软件:FileYee数据备份恢复
工具软件下载地址:https://www.xmisoft.com/download/FileYee3.0.8.2.exe
具体的操作步骤如下:
步骤1,打开电脑上安装好的FileYee数据备份恢复软件,左边设置备份源,添加电脑上需要备份的文件件所在文件夹;右边下拉先选择“FTP目录”,然后点击“服务器管理”,按照步骤配置FTP。
步骤2,中间设置文件备份的同步方式,有很多种,根据自己的需求选择合适的即可。然后点击“高级设置”,设置自动备份的相关参数,如果不设置就会默认一个小时开启备份一次。
步骤3,输入备份任务的名称,点击右边的【创建任务】按钮,创建备份任务,成功后会自动跳转到任务管理页面。
步骤4,点击备份任务右边的“开始”图标,就可以启动备份了。当下方的执行结果为“成功”的时候,说明备份完成。之后不要退出软件,就会自动备份电脑文件FTP服务器中。
上面就是电脑文件备份到FTP服务器上的解决办法,只要简单的设置就可实现自动备份,不需要每次手动开启,方便很多,赶紧去试试看吧。
日常电脑操作烦琐,使用这5个软件,可以自动执行电脑任务
宏记录器是Windows缺乏的一个工具,如果你曾经使用过MS Office或LibreOffice套件,那么你可能熟悉它们具有的宏工具,使用户能够记录一系列选定的功能或操作,自动执行许多重复性任务。
如果Windows 10包含类似的宏录制器,就可以自动执行大量需要手动输入的电脑任务,例如,可以设置宏,一次自动启动四个可选程序或调整主题设置。
由于Windows缺少宏记录工具,一些商家就开发出了用于创建宏和应用程序的自动化软件。这些程序允许用户从头开始编写宏和应用程序脚本,或者不太懂代码的人也可以记录宏。某些Windows自动化软件可能允许用户在GUI中设置批处理文件以自动执行任务,更高级的自动化程序通常是脚本工具。以下是五个可以在Windows中自动执行电脑任务的程序。
1、RoboTask(推荐)
RoboTask用户可以使用大量自定义变量和更高级的选项自动执行一系列电脑任务。使用此软件可以自动打开多个程序和文档、管理自动备份、发送电子邮件、处理文件夹和文件、使用指定的触发器关闭Windows等等。
RoboTask可以通过选择操作然后对其进行编辑来自动执行电脑任务,以进一步满足用户要求。例如,可以为软件应用程序、FTP服务器、电子邮件、ZIP文件、流量控制和文件处理选择205个自动操作。除了设置自动化任务外,还可以向其中添加激活宏的各种触发事件,例如,可以设置系统事件以激活自动化任务或在特定时间安排它们。RoboTask有自己的宏录制器,可以使用它记录鼠标和键盘操作以自动执行任务。此外,该软件还具有服务管理实用程序,即使你未登录Windows,也可以使自动化任务使用系统权限。该程序还支持插件,其基本插件允许用户创建自定义基本脚本。
2、WinAutomation
WinAutomation使用户能够构建“软件机器人”以自动执行任务。WinAutomation是一个高级应用程序,用于创建宏脚本以自动化Windows、网站、Web应用程序和其他第三方软件。
WinAutomation具有比AutoHotkey更广泛的GUI。该程序最好的一点是它的Visual Software Robot Designer,它具有拖放式UI,可以将操作拖放到脚本中,还包括可视调试器工具提示和突出显示错误的帮助气球。
该软件具有宏记录器,可以使用它记录鼠标点击和击键,因此,使用WinAutomation自动执行任务不需要手动编写脚本。该程序还有一个Web记录器专门用于自动化浏览器任务,如表单填写。使用该软件的电子邮件自动化操作工具,可以发送自动化电子邮件,并自动化电子邮件处理和排序。
这个程序有一个方便的任务调度器工具来安排宏和程序在特定时间运行,用户还可以使用UI设计器为软件机器人设计自己的对话框窗口。
3、Macro Express
Macro Express具有一组宏命令,可用于自动执行Windows。Macro Express Pro使用户能够同时运行宏,并包含增强的脚本编辑器,还有一个可以从U盘运行的便携版软件。
Macro Express具有脚本编辑器和直接编辑器工具,用户可以使用脚本命令从头开始创建宏。直接编辑器向用户显示每个宏命令的更多特定详细信息。可以使用具有各种捕获设置的软件Capture实用程序来记录宏。快速向导可以指导用户创建宏。
该软件甚至可以创建浮动菜单,从中选择要播放的宏。Macro Express的另一个好处是它提供了多种激活宏的方法,包括键盘快捷键、浮动菜单、系统事件、日程安排和鼠标点击。甚至可以将宏配置为在更具体的窗口或程序中运行。
4、AutoHotkey
AutoHotkey是一个开源脚本软件,该程序具有直观的脚本语言,可以使用该语言自动完成大量任务,该软件还使用户能够重新映射键盘并创建鼠标热键。
通过AutoHotkey,可以设置脚本来安排系统扫描、填写表单字段、打开软件或带击键的网页、自动关闭程序等等。使用该软件的脚本语言,用户可以使用自定义GUI将基本和更复杂的脚本编译为可移植的EXE文件。请注意,此软件没有自己的文本编辑器,因此用户必须在记事本或其他第三方程序中编译脚本。可以从系统托盘图标中选择大多数AutoHotkey的选项。
5、JitBit Macro Recorder
JitBit Macro Recorder包括一个宏录制器和可视化编辑器,用于插入自定义命令以自动执行电脑任务。
JitBit Macro Recorder是一个灵活的软件包,可以使用它来记录和编辑宏。使用宏编辑器,用户可以在“关闭”、“打开文件”和“启动网站”的行中插入额外的自定义命令,并在宏代码中包含for循环和if-then语句。甚至可以将C#代码段添加到Premium版本的宏中。Macro Recorder包含各种录制选项,用户可以使用这些选项配置播放速度、循环播放、选择其他录制模式以及设置宏录制滤镜。然后,该软件允许你添加键盘快捷键以激活使用。Premium和Pro版本还包括一个调度工具和EXE编译器,用于将宏转换为EXE文件。
有许多软件可以自动执行电脑任务,但是这五个程序具有很多实用的工具和功能,可用于创建宏和脚本以自动化Windows和其他第三方软件,总的来说,它们可以提高工作效率,节省大量时间,推荐大家使用!
1.阅后如果喜欢,不妨点赞、收藏、评论和关注一下。
2.如果喜欢玩软件,请关注本头条号阅读相关文章。
3.在学习中有什么问题,欢迎与我沟通交流,今日头条号搜索【微课传媒】,我在这里等你哟!
centos下部署FTP
一、yum安装vsftp
yum -y install vsftpd
二、启动服务
systemctl start vsftpd.service
三、配置文件路径
/etc/vsftpd
功能一(匿名):
1、首先我们在企业中ftp服务器,一般情况下都会有个共享服务器,允许员工下载一些公司的软件或者常用的软件包(方便,不用再取外网去下载,也省带宽)
2、vsftp提供了匿名登录,默认anonymous_enable=YES的情况下,就启用了匿名访问,这种情况下你只能把需要给用户的文件,存放到/var/ftp/pub下(默认路径),如果想更改的话需要添加anon_root= /data/pub,后面的路径就是匿名登录后实际访问的目录。如果,总是那么多如果,匿名用户也需要上传的功能的话(一般情况下不会的)
vsftpd.conf
3、我们设置了匿名访问的目录是/data/pub里面,还是上传不了文件,有人说直接改成777就可以,但是改成777就无法访问了,这是由于vsftpd的安全性设置,我们需要在pub里面再创建一个upload的文件(文件夹名字随便起),给他一个777的权限就OK了。
功能二(虚拟用户):
1、首先修改配置文件
备份配置文件
#cp vsftpd.conf vsftpd.conf.bak
#echo ‘’ > vsftpd.conf
#vim /etc/vsftpd/vsftpd.conf
2、配置文件内容(虚拟用户必须关闭虚拟用户anonymous_enable=NO)
anonymous_enable=NO
write_enable=YES
chroot_local_user=YES
chroot_list_enable=YES
use_localtime=YES
local_enable=YES
allow_writeable_chroot=YES
xferlog_enable=YES
local_umask=022
pam_service_name=vsftpd
use_localtime=YES
listen_port=21
chroot_local_user=YES
idle_session_timeout=120
data_connection_timeout=120
guest_enable=YES
guest_username=ftpuser
user_config_dir=/etc/vsftpd/vuser_conf
virtual_use_local_privs=YES
pasv_min_port=10060
pasv_max_port=10090
accept_timeout=5
connect_timeout=1
四、创建宿主用户
# 创建用户 ftpuser 指定 `/home/vsftpd` 目录
useradd -g root -M -d /home/vsftpd -s /sbin/nologin ftpuser
# 设置用户 ftpuser 的密码
passwd ftpuser
# 把 /home/vsftpd 的所有权给ftpuser.root
chown -R ftpuser.root /home/vsftpd
五、建立虚拟用户文件
touch /etc/vsftpd/vuser_passwd
# 编辑虚拟用户名单文件:(
# 第一行账号,第二行密码,注意:不能使用root做用户名,系统保留)
vi /etc/vsftpd/vuser_passwd
# 编辑内容,下面是 vuser_passwd 内容
ftp1
12345678
ftp2
12345678
:wq!#保存退出
六、生成虚拟用户数据文件
db_load -T -t hash -f /etc/vsftpd/vuser_passwd /etc/vsftpd/vuser_passwd.db
chmod 600 /etc/vsftpd/vuser_passwd.db
七、创建用户配置
mkdir /etc/vsftpd/vuser_conf # 建立虚拟用户个人vsftp的配置文件
cd /etc/vsftpd/vuser_conf # 进入目录
touch ftp1 ftp2
每个文件(ftp1和ftp2写入如下内容,local_root=/home/vsftpd/ftp1#这里写入这个用户的实际存储路劲)
local_root=/home/vsftpd/ftp1
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
八、创建用户
#mkdir -p /home/vsftpd/ftp1
#mkdir -p /home/vsftpd/ftp2
九、服务运维
systemctl restart vsftpd.service # 重启服务
systemctl start vsftpd.service # 启动服务
systemctl status vsftpd.service # 服务状态查看
十、生成虚拟用户的PAM文件
# cd /etc/pam.d/
备份vsftpd文件
#cp vsftpd vsftpd.bak
修改vsftpd文件内容(加入第二和第三行,下面的都全部注释,注意下面是64位操作系统,如果是32位的话lib64需要改成lib)
#%PAM-1.0
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_passwd
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_passwd
#session optional pam_keyinit.so force revoke
#auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpUsers onerr=succeed
#auth required pam_shells.so
#auth include password-auth
#account include password-auth
#session required pam_loginuid.so
#session include password-auth
十一、客户端调试
1、首先每次更改配置需要重启vsftpd服务。
2、上面每个配置文件中的内容最好是手动键入(曾经的我直接粘贴进去,cat就是没问题,但是粘贴进去就是不行)
3、客户端windows打开cmd到后台进行连接,网页和资源管理器里面都会有缓存也看不到报错。
4、服务器tail -f /var/log/secure查看日志(也可以tail -f /var/log/messages,这个看不出什么,前者更精准)
5、客户端报错示例(坑了我好久,它说chroot没有读到/etc/vsftpd/chroot_list这个文件,所以我们新建这个文件就行,记得重启服务)。
6、如果虚拟用户登录到自己的宿主目录后,不能上传文件的话,服务器端需要在宿主目录里面再新建一个文件夹,给这文件夹777权限,就可以了(直接把宿主目录设置777就会登录不了)
7、新增用户的话,需要在/etc/vsftpd/vsuser.passwd里面追加用户(删除就是删除用户),记得使用db_load重新生成vsuser.passwd文件即可,vuser_confi里面新建一个新建账户的权限文件,宿主目录记得新建存储文件。
8、建议使用ftp工具和cmd验证
C:UsersAdministrator>ftp 192.168.1.238
连接到 192.168.1.238。
220 (vsFTPd 3.0.2)
200 Always in UTF8 mode.
用户(192.168.1.238:(none)): ftp1
331 Please specify the password.
密码:
500 OOPS: could not read chroot() list file:/etc/vsftpd/chroot_list
500 OOPS: priv_sock_get_result
远程主机关闭连接。
9、连接成功
C:UsersAdministrator>ftp 192.168.1.238
连接到 192.168.1.238。
220 (vsFTPd 3.0.2)
200 Always in UTF8 mode.
用户(192.168.1.238:(none)): ftp1
331 Please specify the password.
密码:
230 Login successful