1. A computer implemented method for enabling access of a client device to a remote desktop implemented within a remote virtual machine engine selected from one or more virtual machine engines running on a virtual host, the method comprising: receiving, from the client device, a connection request for establishing a connection between a proxy client of the client device and the selected remote virtual machine engine; if authorization data associated with the connection request complies with a predefined access data structure and corresponding access rules, requesting, directly from the virtual host, destination data identifying the selected remote virtual machine engine in the virtual host; receiving, directly from the virtual host, the destination data identifying the selected remote virtual machine engine in the virtual host; sending, to a proxy service, a session request based on the destination data identifying the selected remote virtual machine engine for establishing a session with the selected remote virtual machine engine through the proxy service in accordance with the authorization data; receiving, from the proxy service, proxy connection data configured to allow the client device to establish a proxy connection for the session with the selected remote virtual machine engine in the virtual host via a wide area network independently of operating systems used by the client device and the selected remote virtual machine engine; and sending the proxy connection data to the client device to enable the client device to establish the proxy connection for the session with the selected remote virtual machine engine over the wide area network and to directly control the selected remote virtual machine engine through the session.