Method and device for debugging cloud terminal and computer program product

By establishing a secure interaction channel and debugging channel between the cloud terminal and the debugging end, the problem that traditional ADB debugging methods cannot connect to cloud mobile phones is solved, and efficient and secure debugging of cloud terminals is achieved.

CN120475029APending Publication Date: 2025-08-12GUANGZHOU DULING TECH CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510795523.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-06-13
Publication Date
2025-08-12

AI Technical Summary

Technical Problem

Traditional ADB debugging methods cannot connect to cloud phones, resulting in the inability to debug cloud phones.

Method used

Through the proxy service container corresponding to the target cloud terminal, a secure interaction channel between the target cloud terminal and the debugging terminal is established, and a debugging channel is established based on it to realize the transmission of debugging data.

Benefits of technology

It improves the convenience and security of the cloud terminal debugging process, and ensures the secure transmission and accuracy of debugging data.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120475029A_ABST
    Figure CN120475029A_ABST
Patent Text Reader

Abstract

The invention provides a method and device for debugging a cloud terminal, electronic equipment, a storage medium and a computer program product, relates to the technical field of computers, in particular to the technical field of cloud computing and virtualization, and can be applied to a cloud terminal debugging scene. According to the specific implementation scheme, a secure interaction channel between a target cloud terminal and a debugging terminal is established through a proxy service container corresponding to the target cloud terminal, and the proxy service container is deployed in a server room where the target cloud terminal is located; on the basis of the secure interaction channel, establishing a debugging channel between the target cloud terminal and the debugging end; and transmitting the debugging data between the target cloud terminal and the debugging end based on the debugging channel. The invention provides a mode for debugging the cloud terminal, and the convenience and safety of the debugging process of the cloud terminal are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of computer technology, specifically to the field of cloud computing and virtualization technology, and more particularly to a method, apparatus, electronic device, storage medium, and computer program product for debugging a cloud terminal, which can be applied in cloud terminal debugging scenarios. Background Art

[0002] ADB (Android Debug Bridge) is a debugging tool provided by Android (a mobile operating system) for developers. Traditionally, ADB debugging involves connecting a debugging terminal to a phone via a data cable. However, cloud phones are deployed in the cloud, making traditional data cable connections impossible and, therefore, unsuitable for ADB debugging. Summary of the Invention

[0003] The present disclosure provides a method, apparatus, electronic device, storage medium, and computer program product for debugging a cloud terminal.

[0004] According to a first aspect, a method for debugging a cloud terminal is provided, comprising: establishing a secure interaction channel between a target cloud terminal and a debugging end through a proxy service container corresponding to the target cloud terminal, wherein the proxy service container is deployed in a server room where the target cloud terminal is located; establishing a debugging channel between the target cloud terminal and the debugging end on the basis of the secure interaction channel; and transmitting debugging data between the target cloud terminal and the debugging end based on the debugging channel.

[0005] According to a second aspect, a device for debugging a cloud terminal is provided, comprising: a secure channel establishing unit, configured to establish a secure interaction channel between a target cloud terminal and a debugging end through a proxy service container corresponding to the target cloud terminal, wherein the proxy service container is deployed in a server room where the target cloud terminal is located; a debugging channel establishing unit, configured to establish a debugging channel between the target cloud terminal and the debugging end on the basis of the secure interaction channel; and a debugging unit, configured to transmit debugging data between the target cloud terminal and the debugging end based on the debugging channel.

[0006] According to a third aspect, an electronic device is provided, comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so as to enable the at least one processor to execute the method described in any implementation manner of the first aspect.

[0007] According to a fourth aspect, a non-transitory computer-readable storage medium storing computer instructions is provided, where the computer instructions are used to cause a computer to execute the method as described in any implementation of the first aspect.

[0008] According to a fifth aspect, a computer program product is provided, comprising: a computer program, which implements the method described in any implementation manner of the first aspect when executed by a processor.

[0009] According to the technology disclosed in the present invention, a method and apparatus for debugging a cloud terminal are provided. A secure interaction channel is established between the target cloud terminal and the debugging terminal through a proxy service container corresponding to the target cloud terminal. A debugging channel is established on the basis of the secure interaction channel to debug the cloud terminal. This provides a method for debugging a cloud terminal, which improves the convenience and security of the cloud terminal debugging process.

[0010] It should be understood that the contents described in this section are not intended to identify the key or important features of the embodiments of the present disclosure, nor are they intended to limit the scope of the present disclosure. Other features of the present disclosure will become readily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0011] The accompanying drawings are provided to facilitate a better understanding of the present invention and do not constitute a limitation of the present disclosure. Figure 1 is an exemplary system architecture diagram in which an embodiment of the present disclosure may be applied; Figure 2 is a flow chart of an embodiment of a method for debugging a cloud terminal according to the present disclosure; Figure 3 is a schematic diagram of an application scenario of the method for debugging a cloud terminal according to this embodiment; Figure 4 is a flow chart of another embodiment of a method for debugging a cloud terminal according to the present disclosure; Figure 5 is a structural diagram of an embodiment of an apparatus for debugging a cloud terminal according to the present disclosure; Figure 6 It is a schematic diagram of the structure of a computer system suitable for implementing the embodiments of the present disclosure. DETAILED DESCRIPTION

[0012] The following description of exemplary embodiments of the present disclosure is made in conjunction with the accompanying drawings, including various details of the embodiments of the present disclosure to facilitate understanding. These details should be considered as merely exemplary. Therefore, those skilled in the art will recognize that various changes and modifications may be made to the embodiments described herein without departing from the scope and spirit of the present disclosure. Similarly, for the sake of clarity and conciseness, descriptions of well-known functions and structures are omitted in the following description.

[0013] In the technical solutions disclosed herein, the collection, storage, use, processing, transmission, provision and disclosure of user personal information involved comply with the provisions of relevant laws and regulations and do not violate public order and good morals.

[0014] Figure 1 An exemplary architecture 100 is shown to which the method and apparatus for debugging a cloud terminal of the present disclosure can be applied.

[0015] like Figure 1 As shown, system architecture 100 may include terminal devices 101, 102, and 103, a network 104, and a server 105. The communication connections between terminal devices 101, 102, and 103 constitute a topological network, and network 104 is used to provide a medium for communication links between terminal devices 101, 102, and 103 and server 105. Network 104 may include various connection types, such as wired or wireless communication links or fiber optic cables.

[0016] Terminal devices 101, 102, and 103 can be hardware devices or software that support network connection for data interaction and data processing. When terminal devices 101, 102, and 103 are hardware, they can be various electronic devices that support network connection, information acquisition, interaction, display, processing, and other functions, including but not limited to smartphones, tablet computers, e-book readers, laptop computers, and desktop computers. When terminal devices 101, 102, and 103 are software, they can be installed in the electronic devices listed above. They can be implemented as multiple software or software modules, for example, to provide distributed services, or they can be implemented as a single software or software module. No specific limitations are given here.

[0017] Server 105 can be a server that provides various services, such as receiving cloud terminal debugging requests from terminal devices 101, 102, and 103, and debugging the backend processing server of the deployed cloud terminal. Optionally, the server can feed back the debugging results to the terminal device. As an example, server 105 can be a cloud server.

[0018] It should be noted that a server can be either hardware or software. When a server is hardware, it can be implemented as a distributed server cluster consisting of multiple servers, or as a single server. When a server is software, it can be implemented as multiple software programs or software modules (for example, software or software modules used to provide distributed services), or as a single software program or software module. This is not specifically limited here.

[0019] It should also be noted that the methods for debugging a cloud terminal provided in the embodiments of the present disclosure are generally executed by a server, or by a server and a terminal device in cooperation with each other. Accordingly, the various components (e.g., various units) included in the apparatus for debugging a cloud terminal may be entirely located in the server, or may be separately located in the server and the terminal device.

[0020] It should be understood that Figure 1 The number of terminal devices, networks, and servers in the system is merely illustrative. Any number of terminal devices, networks, and servers may be provided as needed. If the electronic device on which the method for debugging a cloud terminal is running does not need to transmit data with other electronic devices, the system architecture may include only the electronic device (e.g., server) on which the method for debugging a cloud terminal is running.

[0021] Please refer to Figure 2 , Figure 2 This is a flowchart of a method for debugging a cloud terminal provided by an embodiment of the present disclosure. Process 200 includes the following steps: Step 201: Establish a secure interactive channel between the target cloud terminal and the debugging terminal through the proxy service container corresponding to the target cloud terminal.

[0022] In this embodiment, the execution subject of the method for debugging the cloud terminal (for example, Figure 1 The server in the target cloud terminal can establish a secure interaction channel between the target cloud terminal and the debugging terminal through the proxy service container corresponding to the target cloud terminal.

[0023] The proxy service container is deployed in the server room where the target cloud terminal is located. The proxy service in the proxy service container acts as an intermediate layer, allowing the debugging client to remotely access and debug the cloud terminal via the Internet without having to directly connect to the internal network where the cloud terminal is located.

[0024] Cloud terminals are virtualized terminal devices based on cloud computing technology. They offload traditional local computing, storage, and display functions to cloud servers, providing users with cloud resources via the network in the form of virtual terminals. These virtual terminals run in the cloud, and users can access and operate them through terminal devices such as thin clients, regular computers, and mobile devices using remote desktop protocols or specialized client software, achieving a similar experience to using a local device. Examples of cloud terminals include cloud phones and cloud computers.

[0025] In this embodiment, the above-mentioned execution entity can establish a first sub-channel between the proxy service container corresponding to the target cloud terminal and the debugging end; establish a second sub-channel between the proxy service container and the cloud terminal through the proxy service container; and combine the first sub-channel and the second sub-channel to generate a secure interaction channel.

[0026] As an example, the first sub-channel can be created through various communication protocols, such as SSH (Secure Shell) protocol, HTTP (Hypertext Transfer Protocol), HTTPS (Hypertext Transfer Protocol Secure), WebSocket protocol, SSL (Secure Sockets Layer), TLS (Transport Layer Security), FTP (File Transfer Protocol), SFTP (SSH File Transfer Protocol), and VPN (Virtual Private Network).

[0027] Using the SSH protocol as an example, install and configure SSH server software, such as OpenSSH, in the proxy service container. On the debugging end, use SSH client software, such as OpenSSH or PuTTY, and specify the proxy service container's IP address or domain name, SSH service port, and other information. Use the SSH client to initiate a connection request to the proxy service container's SSH service. The proxy service container's SSH server verifies the debugging end's identity and, if verification succeeds, establishes an SSH connection.

[0028] Since the proxy service container is deployed in the server room where the target cloud terminal is located, a second sub-channel between the proxy service container and the cloud terminal can be established through the server room intranet.

[0029] In some optional implementations of this embodiment, the execution entity may perform step 201 as follows: First, determine the network port corresponding to the proxy service container. The network port represents the connection port of the cloud terminal corresponding to the proxy service container in the network. Then, through the proxy service container, a secure communication channel is established between the target cloud terminal and the debugging terminal based on the network port.

[0030] The network port is used to listen for requests from the debugger on the external network and is the entry point for the proxy service container to communicate with the outside world. For example, you can set the port to 11515 and ensure that the port mapping is specified when creating the Docker container so that the external network can access the proxy service container through this port. Each container is assigned a port. In this way, different target objects (such as users who purchase cloud terminals) can access the container assigned to the target object through different network ports, realizing the customization of the proxy service container relative to the target object. All available network ports constitute a port pool. For network ports that are not assigned in the port pool, they can be assigned to the newly created proxy service container.

[0031] In this implementation, a first subchannel is first established between the debugger and the proxy service container based on the network port. Specifically, the debugger obtains the proxy service container's public network IP address and network port information. Using client software that supports tunneling, the debugger configures connection parameters, including the proxy service container's public network IP address and network port, according to the requirements of the corresponding protocol (e.g., SSH). The client software initiates a connection request, using the proxy service container's network port to establish an initial connection between the debugger and the proxy service container. Upon receiving the connection request, the proxy service container verifies the connection request based on a pre-defined security policy (e.g., key- or certificate-based authentication). If verification succeeds, a secure communication channel is established between the debugger and the proxy service container, laying the foundation for subsequent debugging channel establishment and ensuring secure communication between the debugger and the target cloud terminal. Through this secure communication channel, the debugger's request is forwarded to the target cloud terminal, and the target cloud terminal's response is returned to the debugger.

[0032] Then, based on the computer room intranet, a second sub-channel is established between the proxy service container and the target cloud terminal; finally, the first sub-channel and the second sub-channel are combined to generate a secure interaction channel.

[0033] This implementation provides a specific method for implementing a secure interaction channel. Establishing a secure interaction channel based on the network port corresponding to the proxy service container can conceal the actual network location of the target cloud terminal, reducing its direct exposure risk. At the same time, strict security policies, such as authentication and firewall rules, are implemented on the proxy service container to effectively prevent unauthorized access and attacks, ensuring debugging security. Furthermore, the proxy service container can centrally manage connection requests from multiple cloud terminals, uniformly control and monitor network access, improve resource utilization, simplify the network architecture, and facilitate maintenance and expansion.

[0034] In some optional implementations of this embodiment, the proxy service container is deployed in the server where the target cloud terminal is located, and multiple cloud terminals are set in the server. In this case, the network port is used to represent the connection ports of the multiple cloud terminals deployed in the server where the proxy service container is located in the network.

[0035] In this implementation, in response to determining that the target cloud terminal is included in the plurality of cloud terminals, the execution subject establishes a secure interaction channel between the target cloud terminal and the debugging terminal through the proxy service container according to the network port.

[0036] As an example, multiple cloud terminals have their own terminal identifications. The above-mentioned execution entity can match the terminal identification of the target cloud terminal with the terminal identifications of the multiple cloud terminals. In response to determining that the multiple terminal identifications corresponding to the multiple cloud terminals include the terminal identification of the target cloud terminal, it is determined that the multiple cloud terminals include the target cloud terminal.

[0037] In this implementation, before establishing a secure interactive channel, it is necessary to clearly identify the target cloud terminal as the cloud terminal corresponding to the proxy service container in order to accurately connect to the target cloud terminal and avoid mistakenly connecting to other cloud terminals, which may lead to resource waste and security risks. This facilitates the rational planning and allocation of network resources, and enables refined management of network bandwidth and other aspects according to the needs of each cloud terminal, thereby improving resource utilization.

[0038] In some optional implementations of this embodiment, the above-mentioned execution entity can execute the process of establishing a secure interaction channel in the following manner: first, determine the cloud terminal whitelist corresponding to the target object to which the debugging end belongs; then, in response to determining that the cloud terminal whitelist includes the target cloud terminal, establish a secure interaction channel between the target cloud terminal and the debugging end through the proxy service container according to the network port.

[0039] The target object of the debugging terminal is generally the user who purchased the cloud terminal. For each target object, a corresponding cloud terminal whitelist can be set. For example, the cloud terminal whitelist contains multiple cloud terminals purchased by the target object.

[0040] As an example, multiple cloud terminals in the cloud terminal whitelist have their own terminal identifications. The above-mentioned execution entity can match the terminal identification of the target cloud terminal with the terminal identification of the cloud terminals in the cloud terminal whitelist, and in response to determining that the terminal identification of the cloud terminal in the cloud terminal whitelist includes the terminal identification of the target cloud terminal, determine that the cloud terminal whitelist includes the target cloud terminal.

[0041] In this implementation, the cloud terminal whitelist mechanism restricts debugger access to authorized cloud terminals, preventing unauthorized access and improving security. This ensures that the debugger connects to the correct cloud terminal, preventing misoperations and improving debugging accuracy. Centrally maintaining a whitelist simplifies permission management and facilitates access control.

[0042] In some optional implementations of this embodiment, the above-mentioned execution entity can execute the process of establishing a secure interaction channel in the following manner: first, through the proxy service container, based on the network port, establish an external network interaction channel between the proxy service container and the debugging end; then, combine the external network interaction channel and the internal network interaction channel between the proxy service container and the target cloud terminal to establish a secure interaction channel.

[0043] For example, the debugger sends a connection request to the proxy container, specifying the proxy container's network port. Upon receiving the request, the proxy container verifies it based on a pre-defined security policy (such as a key- or certificate-based authentication method). If verification succeeds, an external network communication channel is established between the debugger and the proxy container.

[0044] The proxy service container uses the target cloud terminal identification information carried in the debugger request to search the cloud terminal whitelist for the corresponding target cloud terminal's intranet IP address. The proxy service container then leverages its shared intranet location to proactively establish an intranet communication channel with the target cloud terminal.

[0045] Finally, the proxy service container coordinates the external network interaction channel and the internal network interaction channel, forwards the debugging end's request to the target cloud terminal, and returns the target cloud terminal's response to the debugging end, thereby establishing a secure interaction channel between the debugging end and the target cloud terminal.

[0046] This implementation provides a specific method for establishing a secure interactive channel, cleverly integrating the advantages of both external and internal network connections. This ensures secure and stable communication between the debugging client and the target cloud terminal, while effectively hiding the cloud terminal's internal network information and reducing security risks. It also simplifies network configuration, making remote debugging more convenient and efficient, improving the user experience, and ensuring the security and reliability of data transmission.

[0047] Step 202: On the basis of the secure interactive channel, a debugging channel is established between the target cloud terminal and the debugging end.

[0048] In this embodiment, the execution entity may establish a debugging channel between the target cloud terminal and the debugging end based on the secure interactive channel.

[0049] The debugging channel includes, for example, an ADB channel, a VNC (Virtual Network Computing), and an RDP (Remote Desktop Protocol) channel.

[0050] Taking the ADB channel as an example, first, ensure that the ADB service is enabled on the target cloud terminal and obtain its ADB port number (usually 5555 by default) and intranet IP address. Install the ADB client tool on the debugger and ensure that it is functioning properly and supports connecting to ADB devices over the network. Then, open a command line terminal on the debugger. Use the adb connect localhost:local_port command, where local_port is the local listening port for the debugger previously set in the SSH channel. If the connection is successful, the ADB client on the debugger will display the device information of the target cloud terminal, indicating that the ADB debug channel has been successfully established. You can then use ADB commands on the debugger to debug the cloud terminal.

[0051] Step 203: Debug data is transmitted between the target cloud terminal and the debugging end based on the debugging channel.

[0052] In this embodiment, the execution entity may transmit debugging data between the target cloud terminal and the debugging end based on the debugging channel.

[0053] The debugging data includes, for example, system logs, application logs and other log data, application program data, debugging instructions and response data, and other data that may be involved in the debugging process.

[0054] In an example scenario, a developer deploys a mobile app on a cloud phone and needs to debug its functionality. The debugging process is as follows: Developers establish an ADB debugging channel between the debugger and the cloud phone through a secure interactive channel. Using ADB commands, they install the app on the cloud phone and launch it. On the debugger, they send debugging instructions to the app using ADB commands or a debugging tool (such as Android Studio), such as setting breakpoints, stepping through code, and viewing variable values. The cloud phone runs the app and performs the corresponding operations according to the debugging instructions, sending debugging data (such as log information and application status) back to the debugger through the debugging channel. Based on the returned debugging data, developers analyze the app's functionality and troubleshoot and fix any issues. Ultimately, they discovered a logical error in a specific feature of the app. After debugging and fixing it, the app's functionality on the mobile cloud is functioning normally.

[0055] In another example scenario, an enterprise user uses a cloud computer for graphic design and finds that the performance of the cloud computer is unstable and needs to be debugged. The debugging process is as follows: A debugging channel is established between the debugging client and the cloud computer through a secure interactive channel (e.g., using the SSH protocol). Performance monitoring tools are run on the cloud computer to collect performance data, including CPU (Central Processing Unit) usage, memory usage, disk I / O (Input / Output), network bandwidth, and so on. The collected performance data is transmitted to the debugging client through the debugging channel. The debugging client analyzes the performance data and discovers that the cloud computer's memory usage is too high when running large-scale design software, resulting in a slow system response. Based on the analysis results, the cloud computer's resource allocation is adjusted (e.g., by increasing memory), and performance data is collected and analyzed again to verify the performance optimization results. Ultimately, by optimizing the memory configuration, the cloud computer's performance is significantly improved, capable of running graphic design software smoothly and meeting the user's work needs.

[0056] In some optional implementations of this embodiment, the above-mentioned execution entity can perform the above-mentioned step 202 in the following manner: first, encrypt the debugging data using the symmetric key corresponding to the proxy service container to obtain encrypted data; then, based on the debugging channel, transmit the encrypted data between the target cloud terminal and the debugging end.

[0057] After establishing a secure communication channel, the symmetric key corresponding to the proxy service container can be negotiated based on the communication protocol used by the secure communication channel. Taking the SSH secure communication channel as an example, the SSH protocol automatically negotiates and generates a symmetric key.

[0058] During the communication process between the debug terminal and the proxy service container, debug data is encrypted and decrypted using a symmetric key. Specifically, for debug data sent from the debug terminal to the proxy service container, the debug terminal encrypts it using a symmetric key. The proxy service container decrypts the received encrypted data using the symmetric key and transmits the decrypted debug data to the target cloud terminal. For debug data sent from the proxy service container to the debug terminal, after receiving the debug data from the target cloud terminal, the proxy service container encrypts it using a symmetric key and transmits the encrypted data to the debug terminal. After receiving the encrypted data, the debug terminal decrypts it using the symmetric key.

[0059] In this implementation, the symmetric encryption of debugging data can effectively ensure the confidentiality and integrity of data during transmission, prevent information leakage or tampering, and enhance the security of the debugging process. In addition, the computational overhead of symmetric encryption is low, which can maintain the efficiency of debugging.

[0060] In some optional implementations of this embodiment, the above-mentioned execution entity can perform the encryption process based on the symmetric key in the following manner: first, determine the target symmetric key corresponding to the target object to which the debugging end belongs from multiple symmetric keys corresponding to the proxy service container; then, encrypt the debugging data using the target symmetric key to obtain encrypted data.

[0061] In some cases, cloud terminals for multiple target objects may be deployed on the same server. The proxy service container on that server contains the symmetric keys corresponding to each of these target objects. The proxy service container stores the correspondence between the target objects and the symmetric keys. This correspondence allows the target symmetric key corresponding to the target object to be determined, and data encryption and decryption can be performed based on the target symmetric key.

[0062] This implementation can accurately encrypt debugging data for different target objects, enhance the security of debugging in a multi-user environment, and facilitate unified management and maintenance, ensuring the confidentiality and integrity of data transmission.

[0063] Continue to see Figure 3 , Figure 3 Figure 300 is a schematic diagram of an application scenario for the method for debugging a cloud terminal according to this embodiment. A computer room includes multiple servers, wherein server 301 is deployed with multiple cloud terminals and a proxy service container 3011. A target cloud terminal 3012 among the multiple cloud terminals belongs to a target object 302. When the target object requires debugging of the target cloud terminal, a secure interaction channel 304 is established between the target cloud terminal and the target object's debugging terminal 303 via the proxy service container corresponding to the target cloud terminal. Based on the secure interaction channel, a debugging channel 305 is established between the target cloud terminal and the debugging terminal. Debug data is transmitted between the target cloud terminal and the debugging terminal over the debugging channel.

[0064] In this embodiment, a secure interaction channel is established between the target cloud terminal and the debugging end through the proxy service container corresponding to the target cloud terminal, so that a debugging channel is established on the basis of the secure interaction channel to debug the cloud terminal, providing a method for debugging the cloud terminal and improving the convenience and security of the cloud terminal debugging process.

[0065] In some optional implementations of this embodiment, before executing step 201, the execution entity may further perform the following operations: First, parameter data of a created container in the proxy service container set is determined; then, based on the parameter data, a proxy service container is created in the server room where the target cloud terminal is located.

[0066] The parameter data of the created container includes, for example, the name and network port of the created container. Based on the parameter data of the created container in the proxy service container set, the execution entity can determine the container name and network port that have already been used. When creating a new proxy service container in the server room where the target cloud terminal is located, it is necessary to avoid using parameter data that is consistent with the parameter data of the created container.

[0067] This implementation can effectively avoid container parameter conflicts, ensure the uniqueness and independence of each proxy service container, guarantee smooth communication between the target cloud terminal and the debugging end, and improve system stability and management efficiency.

[0068] In some optional implementations of this embodiment, before executing step 201, the execution entity may further perform the following operations: first, determine an asymmetric key pair corresponding to the proxy service container, where the asymmetric key pair includes a private key and a public key; then, send the private key to the debugging terminal and the public key to the proxy service container; and respond by authenticating the debugging terminal through the proxy service container based on the asymmetric key pair.

[0069] For example, after creating a proxy service container, an authorized certificate authority or trusted key management system generates an asymmetric key pair for the proxy service container, consisting of a private key and a corresponding public key. The generated private key is then sent to the debugger, which must securely store it to prevent leakage. The private key is used to sign or encrypt data sent to the proxy service container. The public key is then sent to the proxy service container, which uses it to verify or decrypt data sent by the debugger.

[0070] When the debugger attempts to establish a connection with the proxy service container, the debugger uses the private key to sign the authentication request data it sends, generates a digital signature, and sends the signed data to the proxy service container.

[0071] After receiving the request from the debugging end, the proxy service container verifies the digital signature using the pre-acquired public key to check the integrity of the data and the authenticity of the source.

[0072] If the verification succeeds, it means that the identity of the debugging end is legitimate, and the proxy service container allows the establishment of a connection and further performs subsequent operations according to business needs; if the verification fails, the connection request is rejected to ensure that only the legitimate debugging end can communicate with the proxy service container.

[0073] This implementation uses an asymmetric key pair to ensure secure communication between the debugger and the proxy container. The private key is used for signing or encryption locally on the debugger, while the public key is used for authentication in the proxy container. This prevents identity forgery, ensures data confidentiality and integrity, and improves the security and reliability of authentication.

[0074] Continue to refer Figure 4 , shows a schematic process 400 of another embodiment of a method for debugging a cloud terminal according to the present disclosure. In process 400, the following steps are included: Step 401: Determine parameter data of a created container in the proxy service container set.

[0075] Step 402: Create a proxy service container in the server room where the target cloud terminal is located according to the parameter data.

[0076] Step 403: Determine the asymmetric key pair corresponding to the proxy service container.

[0077] Among them, the asymmetric key pair includes a private key and a public key.

[0078] Step 404: Send the private key to the debugging terminal and send the public key to the proxy service container.

[0079] Step 405 : In response to the authentication of the debug terminal by the proxy service container based on the asymmetric key pair, and the multiple cloud terminals corresponding to the proxy service container include the target cloud terminal, it is determined whether the cloud terminal whitelist corresponding to the target object to which the debug terminal belongs includes the target cloud terminal.

[0080] Step 406 : In response to determining that the target cloud terminal is included in the plurality of cloud terminals, a secure interaction channel is established between the target cloud terminal and the debugging terminal through the proxy service container according to the network port corresponding to the proxy service container.

[0081] The network port is used to represent the connection ports of multiple cloud terminals corresponding to the proxy service container in the network.

[0082] Step 407: On the basis of the secure interactive channel, a debugging channel is established between the target cloud terminal and the debugging end.

[0083] Step 408: Encrypt the debugging data transmitted between the target cloud terminal and the debugging terminal using the symmetric key corresponding to the proxy service container to obtain encrypted data.

[0084] Step 409: Transmit encrypted data between the target cloud terminal and the debugging end based on the debugging channel.

[0085] The process 400 of the method for debugging a cloud terminal in this embodiment specifically illustrates the process of establishing a secure interactive channel, which helps to further improve the convenience and security of the cloud terminal debugging process.

[0086] Continue to refer Figure 5 As an implementation of the methods shown in the above figures, the present disclosure provides an embodiment of a device for debugging a cloud terminal. Figure 2Corresponding to the method embodiment shown, the system can be specifically applied to various electronic devices.

[0087] like Figure 5 As shown, the device 500 for debugging a cloud terminal includes: a secure channel establishing unit 501, which is configured to establish a secure interaction channel between the target cloud terminal and the debugging end through a proxy service container corresponding to the target cloud terminal, wherein the proxy service container is deployed in a server room where the target cloud terminal is located; a debugging channel establishing unit 502, which is configured to establish a debugging channel between the target cloud terminal and the debugging end on the basis of the secure interaction channel; and a debugging unit 503, which is configured to transmit debugging data between the target cloud terminal and the debugging end based on the debugging channel.

[0088] In some optional implementations of this embodiment, the secure channel establishing unit 501 is further configured to: determine the network port corresponding to the proxy service container, wherein the network port represents the connection port of the cloud terminal corresponding to the proxy service container in the network; and establish a secure interaction channel between the target cloud terminal and the debugging end through the proxy service container according to the network port.

[0089] In some optional implementations of this embodiment, the network port is used to represent the connection ports of multiple cloud terminals corresponding to the proxy service container in the network, and the secure channel establishing unit 501 is further configured to: in response to determining that the multiple cloud terminals include the target cloud terminal, establish a secure interaction channel between the target cloud terminal and the debugging end through the proxy service container according to the network port.

[0090] In some optional implementations of this embodiment, the secure channel establishing unit 501 is further configured to: determine a cloud terminal whitelist corresponding to the target object to which the debugging end belongs; in response to determining that the cloud terminal whitelist includes the target cloud terminal, establish a secure interaction channel between the target cloud terminal and the debugging end through the proxy service container according to the network port.

[0091] In some optional implementations of this embodiment, the secure channel establishing unit 501 is further configured to: establish an external network interaction channel between the proxy service container and the debugging end according to the network port through the proxy service container; and establish a secure interaction channel by combining the external network interaction channel and the internal network interaction channel between the proxy service container and the target cloud terminal.

[0092] In some optional implementations of this embodiment, the debugging unit 503 is further configured to: encrypt the debugging data using the symmetric key corresponding to the proxy service container to obtain encrypted data; and transmit the encrypted data between the target cloud terminal and the debugging end based on the debugging channel.

[0093] In some optional implementations of this embodiment, the debugging unit 503 is further configured to: determine a target symmetric key corresponding to a target object to which the debugging end belongs from multiple symmetric keys corresponding to the proxy service container; and encrypt the debugging data using the target symmetric key to obtain encrypted data.

[0094] In some optional implementations of this embodiment, the above-mentioned device also includes: a container creation unit (not shown in the figure), configured to: determine parameter data of a created container in the proxy service container set; and create a proxy service container in the server room where the target cloud terminal is located based on the parameter data.

[0095] In some optional implementations of this embodiment, the apparatus further includes an identity authentication unit (not shown), configured to: determine an asymmetric key pair corresponding to the proxy service container, wherein the asymmetric key pair includes a private key and a public key; send the private key to the debugging terminal, and send the public key to the proxy service container; and respond to authentication of the debugging terminal by the proxy service container based on the asymmetric key pair.

[0096] In this embodiment, a device for debugging a cloud terminal is provided. A secure interaction channel is established between the target cloud terminal and the debugging end through a proxy service container corresponding to the target cloud terminal. A debugging channel is established on the basis of the secure interaction channel to debug the cloud terminal, providing a method for debugging the cloud terminal and improving the convenience and security of the cloud terminal debugging process.

[0097] According to an embodiment of the present disclosure, the present disclosure also provides an electronic device, which includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor so that the method for debugging a cloud terminal described in any of the above embodiments can be implemented when the at least one processor executes the instructions.

[0098] According to an embodiment of the present disclosure, the present disclosure further provides a readable storage medium storing computer instructions, which are used to enable a computer to implement the method for debugging a cloud terminal described in any of the above embodiments when executed.

[0099] An embodiment of the present disclosure provides a computer program product, which, when executed by a processor, can implement the method for debugging a cloud terminal described in any of the above embodiments.

[0100] Figure 6A schematic block diagram of an example electronic device 600 that can be used to implement embodiments of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital assistants, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are provided as examples only and are not intended to limit the implementation of the present disclosure described and / or claimed herein.

[0101] like Figure 6 As shown, device 600 includes a computing unit 601, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 602 or a computer program loaded from a storage unit 608 into a random access memory (RAM) 603. RAM 603 may also store various programs and data required for the operation of device 600. Computing unit 601, ROM 602, and RAM 603 are interconnected via a bus 604. An input / output (I / O) interface 605 is also connected to bus 604.

[0102] Various components in device 600 are connected to I / O interface 605, including an input unit 606, such as a keyboard, mouse, etc.; an output unit 607, such as various types of displays, speakers, etc.; a storage unit 608, such as a magnetic disk, optical disk, etc.; and a communication unit 609, such as a network card, modem, wireless communication transceiver, etc. The communication unit 609 allows device 600 to exchange information / data with other devices via a computer network such as the Internet and / or various telecommunication networks.

[0103] The computing unit 601 can be any general-purpose and / or specialized processing component with processing and computing capabilities. Some examples of the computing unit 601 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various specialized artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 601 performs the various methods and processes described above, such as the method for debugging a cloud terminal. For example, in some embodiments, the method for debugging a cloud terminal can be implemented as a computer software program tangibly embodied in a machine-readable medium, such as the storage unit 608. In some embodiments, part or all of the computer program can be loaded and / or installed onto the device 600 via the ROM 602 and / or the communication unit 609. When the computer program is loaded into the RAM 603 and executed by the computing unit 601, one or more steps of the method for debugging a cloud terminal described above can be performed. Alternatively, in other embodiments, the computing unit 601 can be configured to perform the method for debugging a cloud terminal through any other suitable means (e.g., via firmware).

[0104] Various embodiments of the systems and techniques described above can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), system-on-chip systems (SOCs), programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments can include being implemented in one or more computer programs that are executable and / or interpreted on a programmable system that includes at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.

[0105] The program code for implementing the method of the present disclosure can be written in any combination of one or more programming languages. These program codes can be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable device for debugging a cloud terminal, so that when the program code is executed by the processor or controller, the functions / operations specified in the flow chart and / or block diagram are implemented. The program code can be executed entirely on the machine, partially on the machine, as a standalone software package, partially on the machine and partially on a remote machine, or entirely on a remote machine or server.

[0106] In the context of the present disclosure, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of machine-readable storage media may include an electrical connection based on one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), optical fibers, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0107] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the computer. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).

[0108] The systems and techniques described herein can be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such back-end components, middleware components, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network (LAN), a wide area network (WAN), and the Internet.

[0109] A computer system may include a client and a server. The client and server are typically remote from each other and typically interact via a communication network. This client-server relationship arises through computer programs running on the respective computers, establishing a client-server relationship. The server can be a cloud server, also known as a cloud computing server or cloud host. This server is a host product within the cloud computing service ecosystem that addresses the management difficulties and limited scalability of traditional physical hosts and virtual private server (VPS) services. It can also be a server in a distributed system or a server integrated with blockchain.

[0110] According to the technical solution of the embodiment of the present disclosure, a method and device for debugging a cloud terminal are provided. A secure interaction channel is established between the target cloud terminal and the debugging end through the proxy service container corresponding to the target cloud terminal, so that a debugging channel is established on the basis of the secure interaction channel to debug the cloud terminal. This provides a method for debugging the cloud terminal, which improves the convenience and security of the cloud terminal debugging process.

[0111] It should be understood that the various forms of the processes shown above can be used to reorder, add, or delete steps. For example, the steps described in this disclosure can be performed in parallel, sequentially, or in a different order, as long as the desired results of the technical solutions provided by this disclosure can be achieved. This is not a limitation herein.

[0112] The above specific embodiments do not constitute a limitation on the scope of protection of this disclosure. Those skilled in the art will appreciate that various modifications, combinations, sub-combinations, and substitutions may be made based on design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this disclosure shall be included within the scope of protection of this disclosure.

Claims

1. A method for debugging a cloud terminal, comprising: Establishing a secure interaction channel between the target cloud terminal and the debugging terminal through a proxy service container corresponding to the target cloud terminal, wherein the proxy service container is deployed in the server room where the target cloud terminal is located; On the basis of the secure interactive channel, establishing a debugging channel between the target cloud terminal and the debugging end; Based on the debugging channel, debugging data is transmitted between the target cloud terminal and the debugging end.

2. The method according to claim 1, wherein The step of establishing a secure interaction channel between the target cloud terminal and the debugging terminal through the proxy service container corresponding to the target cloud terminal includes: Determine a network port corresponding to the proxy service container, wherein the network port represents a connection port of the cloud terminal corresponding to the proxy service container in the network; A secure interactive channel is established between the target cloud terminal and the debugging terminal through the proxy service container according to the network port.

3. The method according to claim 2, wherein: The network port is used to represent the connection ports of multiple cloud terminals corresponding to the proxy service container in the network, and The step of establishing a secure interaction channel between the target cloud terminal and the debugging terminal according to the network port through the proxy service container includes: In response to determining that the target cloud terminal is included in the plurality of cloud terminals, a secure interaction channel is established between the target cloud terminal and the debugging terminal through the proxy service container according to the network port.

4. The method according to claim 2, wherein: The step of establishing a secure interaction channel between the target cloud terminal and the debugging terminal according to the network port through the proxy service container includes: Determine the cloud terminal whitelist corresponding to the target object to which the debugging terminal belongs; In response to determining that the target cloud terminal is included in the cloud terminal whitelist, a secure interaction channel is established between the target cloud terminal and the debugging terminal through the proxy service container according to the network port.

5. The method according to any one of claims 2 to 4, wherein The step of establishing a secure interaction channel between the target cloud terminal and the debugging terminal according to the network port through the proxy service container includes: Establishing an external network interaction channel between the proxy service container and the debugging terminal according to the network port through the proxy service container; The secure interaction channel is established by combining the external network interaction channel and the internal network interaction channel between the proxy service container and the target cloud terminal.

6. The method according to claim 1, wherein The transmitting debugging data between the target cloud terminal and the debugging end based on the debugging channel includes: Encrypting the debugging data using the symmetric key corresponding to the proxy service container to obtain encrypted data; Based on the debugging channel, the encrypted data is transmitted between the target cloud terminal and the debugging end.

7. The method according to claim 6, wherein: The step of encrypting the debugging data by using the symmetric key corresponding to the proxy service container to obtain encrypted data includes: Determine a target symmetric key corresponding to the target object to which the debugging terminal belongs from a plurality of symmetric keys corresponding to the proxy service container; The debugging data is encrypted using the target symmetric key to obtain the encrypted data.

8. The method according to claim 1, wherein Before establishing a secure interaction channel between the target cloud terminal and the debugging terminal through the proxy service container corresponding to the target cloud terminal, the method further includes: Determine parameter data of a created container in the proxy service container set; The proxy service container is created in the server room where the target cloud terminal is located according to the parameter data.

9. The method according to claim 1 or 8, wherein Before establishing a secure interaction channel between the target cloud terminal and the debugging terminal through the proxy service container corresponding to the target cloud terminal, the method further includes: Determine an asymmetric key pair corresponding to the proxy service container, wherein the asymmetric key pair includes a private key and a public key; Sending the private key to the debugging terminal and sending the public key to the proxy service container; In response to authenticating the debugging terminal through the proxy service container based on the asymmetric key pair.

10. A device for debugging a cloud terminal, comprising: a secure channel establishing unit configured to establish a secure interaction channel between the target cloud terminal and the debugging terminal through a proxy service container corresponding to the target cloud terminal, wherein the proxy service container is deployed in a server room where the target cloud terminal is located; A debugging channel establishing unit is configured to establish a debugging channel between the target cloud terminal and the debugging end based on the secure interactive channel; The debugging unit is configured to transmit debugging data between the target cloud terminal and the debugging end based on the debugging channel.

11. An electronic device, characterized in that: include: at least one processor; as well as a memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method according to any one of claims 1 to 9.

12. A non-transitory computer-readable storage medium storing computer instructions, characterized in that: The computer instructions are used to cause the computer to execute the method according to any one of claims 1 to 9.

13. A computer program product comprising: A computer program which, when executed by a processor, implements the method according to any one of claims 1 to 9.