CPC H04L 63/029 (2013.01) [H04L 12/4633 (2013.01); H04L 63/0209 (2013.01); H04L 63/0281 (2013.01); H04L 63/083 (2013.01); H04L 63/0884 (2013.01); H04L 67/02 (2013.01); H04L 67/56 (2022.05)] | 20 Claims |
1. A system for communications between publicly accessible and publicly non-accessible servers and a remote device, comprising:
a processor; and
memory storing instructions that, when executed by the processor, causes the system to perform a set of operations for communications between servers and a remote device, the set of operations comprising:
receiving, at a proxy service for access to backend servers, a request from a remote device to access backend servers, the remote device physically outside the premises at which the backend servers reside;
when the backend server is publicly accessible, forwarding the request to the publicly accessible backend server, executing the request and returning results of the request to the remote device;
when the backend server is publicly non-accessible, executing:
determining, by the proxy service, a tunnel agent that implements a tunneling communication channel associated with the backend server and a tunnel service enabling secure access to the publicly non-accessible backend server;
forwarding the request to the tunnel service determined by the proxy service;
executing the request by the tunnel agent by way of a Hypertext Transfer Protocol (HTTP) request, the tunnel agent servicing the publicly non-accessible backend server;
forwarding the request to the publicly non-accessible backend server; and
executing the request and returning results of the request to the tunnel agent, the tunnel agent returning results to the tunnel service, the tunnel service returning results to the proxy service, the proxy service returning the results to the remote device.
|