CN111049909B - 软件发布方法 - Google Patents
软件发布方法 Download PDFInfo
- Publication number
- CN111049909B CN111049909B CN201911297939.8A CN201911297939A CN111049909B CN 111049909 B CN111049909 B CN 111049909B CN 201911297939 A CN201911297939 A CN 201911297939A CN 111049909 B CN111049909 B CN 111049909B
- Authority
- CN
- China
- Prior art keywords
- client
- release
- file
- server
- software
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 29
- 230000005540 biological transmission Effects 0.000 claims abstract description 6
- 230000008569 process Effects 0.000 claims description 13
- 230000004048 modification Effects 0.000 claims description 7
- 238000012986 modification Methods 0.000 claims description 7
- 230000003993 interaction Effects 0.000 claims description 3
- 238000012545 processing Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 241000700605 Viruses Species 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 208000015181 infectious disease Diseases 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
- G06F21/128—Restricting unauthorised execution of programs involving web programs, i.e. using technology especially used in internet, generally interacting with a web browser, e.g. hypertext markup language [HTML], applets, java
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/51—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0442—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
- H04L67/5683—Storage of data provided by user terminals, i.e. reverse caching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
- H04L69/162—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明涉及软件自动安装部署发布技术领域,更具体的说,涉及一种软件自动发布方法。该方法的步骤为:客户端向服务器端发起发布连接请求;服务端接收客户端的连接请求,并进行安全认证;安全认证通过,客户端发起获取服务器端文件版本信息请求;服务端接收客户端请求指令,将目标文件夹中所有文件版本信息传送给客户端;客户端接收到服务端传送的版本信息,比对文件信息;根据比对结果,在服务端更新发布文件信息。采用本发明后,不仅仅解决文件信息传输的安全问题,同时可以解决软件发布自动备份。
Description
技术领域
本发明涉及一种软件自动安装部署发布方法,属于软件版本自动升级的技术领域。
背景技术
规模较小的软件公司软件安装部署靠人工发布,发展到一定规模,纯人工操作无法满足***发布更新的时效性和正确性。软件安装部署逐步走向自动化。通过自动化工具代替人工劳动方式,提高工作效率。
目前相对自动化的发布软件,一般是开通网络文件共享445端口,通过文件比对的方式确定哪些文件发生变动,然后执行文件同步。对网络端口的要求比较特殊,必须开通445端口。445端口一般企业不建议开放,现在流行的勒索病毒都是通过445端口在局域网中进行文件感染,蠕虫病毒可以通过网络文件共享445端口进行传播。给公司网络安全引入风险。
发明内容
本发明的目的是提供一种软件发布方法,通过Windows Socket通信技术+RSA加密技术实现网络环境下的软件智能发布过程的安全管理,不仅仅解决传输的问题,同时可以解决软件发布自动备份。。
为了实现上述目的,本发明提供了一种软件发布方法,所述方法包括以下步骤:
(1)用户点击发布,客户端向服务器端发起发布连接请求;
(2)服务端接收客户端的连接请求,并进行安全认证;
(3)安全认证通过,客户端发起获取服务器端文件版本信息请求;
(4)服务端接收客户端请求指令,将目标文件夹中所有文件版本信息传送给客户端;
(5)客户端接收到服务端传送的版本信息,按照预定规则将源文件夹中的文件信息与目标文件中的文件信息逐一比对,根据比对结果,决定是否更新发布文件版本;
(6)如果需要更新发布,则客户端发起文件包传送请求;
(7)服务端接收客户端传送的文件发布包,将发布包的内容发布到目标文件夹;
(8)服务端向客户端反馈本次发布结果,客户端将本次发布记录提交到统一发布平台。
本发明进一步完善的是,在用户点击发布前,还要做如下操作:用户登陆客户端,客户端显示所有在线的服务端列表,用户在客户端中选择本次要发布软件的目标服务端;在软件发布的源文件夹和目标文件夹配置软件文件信息,并予以保存。
本发明进一步完善的是,文件信息比对的预定规则可以采用以下两种模式中的任意一种:
模式一、比对文件最后修改日期,如果服务器端文件信息和客户端文件信息的最后修改日期不同则认为文件不同,需要更新发布;
模式二、比对文件内容,通过计算文件内容的HASH值来进行比对。如果客户端文件和服务器端文件的HASH值不同则认为文件不同,需要更新发布。
本发明进一步完善的是,文件信息比对过程缓存在客户端。
本发明进一步完善的是,客户端与服务端间采用Socket方式进行信息交互。
本发明进一步完善的是,所述安全认证账号、密码通过RAS非对称加密传输。
本发明通过服务端程序接收客户端的指令,服务端程序自动执行文件版本比对、文件备份、文件发布操作,让管理人员不用登陆远程服务器,实现远程安装部署,提高问题处理的高效性、安全性。每次的发布过程都自动记录到平台,实现发布过程可跟踪,提高可管理性。通过客户端和服务器端两端通信的加密,提高软件发布过程的安全性。
附图说明
本发明上述的以及其他的特征、性质和优势将通过下面结合附图和实施例的描述而变的更加明显,在附图中相同的附图标记始终表示相同的特征,其中:
图1为本发明实施例提供的一种软件自动发布的方法的流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释发明,并不用于限定发明。
本发明的目的是克服现有技术中存在的不足,提供一种应用软件自动发布***及方法,其不仅能实现软件智能发布过程的安全管理,同时可以解决软件发布自动备份。
按照本发明提供的方案,所述软件发布方法包括如下步骤:
(1)用户点击发布,客户端向服务器端发起发布连接请求;
(2)服务端接收客户端的连接请求,并进行安全认证;
(3)安全认证通过,客户端发起获取服务器端文件版本信息请求;
(4)服务端接收客户端请求获取服务器端文件版本信息指令后,遍历目标
文件夹中所有文件返回文件的版本信息,并将目标文件夹中的版本信息传送给客户端;
(5)客户端接收到服务端传送的版本信息后,按照预定规则将源文件夹中的文件信息与目标文件中的文件信息逐一比对,根据比对结果,决定是否更新发布文件版本;
(6)如果需要更新发布,则客户端对发布包进行zip压缩,通过压缩减少网络流量,发起文件传送请求;
(7)服务端收到发布包,进行zip解压缩处理,服务端根据发布包里的文件清单,对目标文件夹的文件进行统一备份处理,备份完毕之后,将发布包的内容发布到目标文件夹;
(8)服务端向客户端反馈本次发布结果,客户端将本次发布记录提交到统一发布平台,通过统一发布平台管理所有发布记录。
(9)客户端结束发布。
进一步地,安全认证账号、密码通过RAS非对称加密传输,以保证传输内容不会被泄露;
进一步地,用户点击发布前,还要做如下操作:用户登陆客户端,客户端显示所有在线的服务端列表,用户在客户端中选择本次要发布软件的目标服务端;在软件发布的源文件夹和目标文件夹配置软件文件信息,并予以保存;然后进行软件发布。
进一步地,文件信息比对的方式采用两种模式:
模式一、比对文件最后修改日期,如果服务器端文件和客户端文件的最后修改日期不同则认为文件不同,需要更新发布;
模式二、比对文件内容,通过计算文件内容的HASH值来进行比对。如果
客户端文件和服务器端文件的HASH值不同则认为文件不同,需要更新发布。
进一步地,为了加速比对的过程,设计将本次比对的过程缓存在客户端,下次比对时候可以直接从本地缓存中直接获取到服务端的文件版本信息,避免每次都到远程服务端获取版本信息。
进一步地,客户端与服务端间采用Socket方式进行信息交互。
其中,目标服务器上安装有服务端软件,所述服务端软件用于接收客户端的发布文件,客户端安装有客户端软件,客户端软件用于将客户端本机电脑上的文件发布到远程服务器上。
本发明通过服务端程序接收客户端的指令,服务端程序自动执行文件版本比对、文件备份、文件发布操作,让管理人员不用登陆远程服务器,实现远程安装部署,提高问题处理的高效性、安全性。每次的发布过程都自动记录到平台,实现发布过程可跟踪,提高可管理性。通过客户端和服务器端两端通信的加密,提高软件发布过程的安全性。
上述实施例是提供给熟悉本领域内的人员来实现或使用本发明的,熟悉本领域的人员可在不脱离本发明的发明思想的情况下,对上述实施例做出种种修改或变化,因而本发明的保护范围并不被上述实施例所限,而应该是符合权利要求书提到的创新性特征的最大范围。
Claims (5)
1.一种软件发布方法,其特征在于,所述方法包括以下步骤:
(1)用户点击发布,客户端向服务器端发起发布连接请求;
(2)服务端接收客户端的连接请求,并进行安全认证;
(3)安全认证通过,客户端发起获取服务器端文件版本信息请求;
(4)服务端接收客户端请求指令,将目标文件夹中所有文件版本信息传送给客户端;
(5)客户端接收到服务端传送的版本信息,按照预定规则将源文件夹中的文件信息与目标文件中的文件信息逐一比对,根据比对结果,决定是否更新发布文件版本,所述预定规则包括两种模式,其中:
模式一、比对文件最后修改日期,如果服务器端文件信息和客户端文件信息的最后修改日期不同则认为文件不同,需要更新发布;
模式二、比对文件内容,通过计算文件内容的HASH值来进行比对,如果客户端文件和服务器端文件的HASH值不同则认为文件不同,需要更新发布;
(6)如果需要更新发布,则客户端发起文件包传送请求;
(7)服务端接收客户端传送的文件发布包,将发布包的内容发布到目标文件夹;
(8)服务端向客户端反馈本次发布结果,客户端将本次发布记录提交到统一发布平台。
2.根据权利要求1所述的软件发布方法,其特征在于,在用户点击发布前,还要做如下操作:用户登陆客户端,客户端显示所有在线的服务端列表,用户在客户端中选择本次要发布软件的目标服务端;在软件发布的源文件夹和目标文件夹配置软件文件信息,并予以保存。
3.根据权利要求1所述的软件发布方法,其特征在于,文件信息比对过程缓存在客户端。
4.根据权利要求1所述的软件发布方法,其特征在于,客户端与服务端间采用Socket方式进行信息交互。
5.根据权利要求1所述的软件发布方法,其特征在于,所述服务端接收客户端的连接请求,并进行安全认证,包括:将所述进行安全认证需要用到的安全认证账号和密码进行RAS非对称加密传输。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911297939.8A CN111049909B (zh) | 2019-12-17 | 2019-12-17 | 软件发布方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911297939.8A CN111049909B (zh) | 2019-12-17 | 2019-12-17 | 软件发布方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111049909A CN111049909A (zh) | 2020-04-21 |
CN111049909B true CN111049909B (zh) | 2024-04-02 |
Family
ID=70236942
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911297939.8A Active CN111049909B (zh) | 2019-12-17 | 2019-12-17 | 软件发布方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111049909B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113946359A (zh) * | 2021-11-02 | 2022-01-18 | 中国银行股份有限公司 | 版本更新方法、装置及*** |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7076496B1 (en) * | 2001-02-23 | 2006-07-11 | 3Com Corporation | Method and system for server based software product release version tracking |
CN101944170A (zh) * | 2010-09-20 | 2011-01-12 | 中兴通讯股份有限公司 | 一种软件版本发布方法、***及装置 |
CN108874409A (zh) * | 2017-05-09 | 2018-11-23 | 腾讯科技(深圳)有限公司 | 一种信息更新方法、装置、服务器及*** |
CN109040069A (zh) * | 2018-08-06 | 2018-12-18 | 江苏易安联网络技术有限公司 | 一种云应用程序的发布方法、发布***及访问方法 |
CN109617694A (zh) * | 2018-12-21 | 2019-04-12 | 网易(杭州)网络有限公司 | 一种应用程序发布方法和装置 |
CN110336695A (zh) * | 2019-06-21 | 2019-10-15 | 威富通科技有限公司 | 一种部署和维护应用的方法和服务器 |
-
2019
- 2019-12-17 CN CN201911297939.8A patent/CN111049909B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7076496B1 (en) * | 2001-02-23 | 2006-07-11 | 3Com Corporation | Method and system for server based software product release version tracking |
CN101944170A (zh) * | 2010-09-20 | 2011-01-12 | 中兴通讯股份有限公司 | 一种软件版本发布方法、***及装置 |
CN108874409A (zh) * | 2017-05-09 | 2018-11-23 | 腾讯科技(深圳)有限公司 | 一种信息更新方法、装置、服务器及*** |
CN109040069A (zh) * | 2018-08-06 | 2018-12-18 | 江苏易安联网络技术有限公司 | 一种云应用程序的发布方法、发布***及访问方法 |
CN109617694A (zh) * | 2018-12-21 | 2019-04-12 | 网易(杭州)网络有限公司 | 一种应用程序发布方法和装置 |
CN110336695A (zh) * | 2019-06-21 | 2019-10-15 | 威富通科技有限公司 | 一种部署和维护应用的方法和服务器 |
Also Published As
Publication number | Publication date |
---|---|
CN111049909A (zh) | 2020-04-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7021324B2 (ja) | ロード可能な航空機用ソフトウェアパーツ(lsap)を配信する方法及び装置 | |
US11216445B2 (en) | Monitoring alignment of computer file states across a group of users | |
CN107924411B (zh) | 一种事务***中ui状态的恢复的方法和*** | |
US10776159B2 (en) | Distributed storage-based filed delivery system and method using calculated dependencies between tasks to ensure consistancy of files | |
CN102369713B (zh) | ***配置项的自动迁移方法和设备 | |
US9311326B2 (en) | Virtual file system for automated data replication and review | |
CN102437938B (zh) | 面向大规模网络监测的虚拟化部署***和方法 | |
US8549327B2 (en) | Background service process for local collection of data in an electronic discovery system | |
US9158785B1 (en) | Managing and synchronizing content between a document sharing platform and an enterprise social platform | |
US20040162900A1 (en) | Distributed content management system | |
US20140359282A1 (en) | Systems and methods for enabling searchable encryption | |
US10140121B2 (en) | Sending a command with client information to allow any remote server to communicate directly with client | |
US10541961B2 (en) | System and method for automating actions in distributed computing | |
US20140181940A1 (en) | File management method and system and storage mediums | |
CN110912754A (zh) | 一种用于批量运维远程主机的方法和管理*** | |
CN111049909B (zh) | 软件发布方法 | |
CN110958293B (zh) | 基于云服务器的文件传输方法、***、服务器及存储介质 | |
CN112468511A (zh) | 文件传输方法和装置 | |
US20100293148A1 (en) | Network attached storage backup | |
CN105607606A (zh) | 一种基于双主板架构的数据采集装置及方法 | |
US20150365439A1 (en) | Synchronization of security-related data | |
US11570183B2 (en) | Tenant grouping for secure transport of content | |
US11709801B2 (en) | File-based sharing using content distributions network | |
CN112612802A (zh) | 一种实时数据中台的处理方法、装置及平台 | |
KR20080107339A (ko) | 복수의 이벤트 식별자가 포함된 데이타구조체를 이용한 데이타동기화 방법 및 상기 방법을 이용한 데이타 백업솔루션 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |