IP Library Granted Patent US 11,575,659
Granted Patent B2
US 11,575,659 · App. 17/667,490 · Granted Feb 7, 2023

Systems and methods for establishing secure remote connections to media devices

Inventors: Gopikumar Ranganathan (Madurai, IN); Rakesh Eluvan Periyaeluvan (Madurai, IN); Ranjith Rajan (Bangalore, IN)
Assignee: DISH NETWORK TECHNOLOGIES INDIA PRIVATE LIMITED
H04L63/0428G06F9/4416G06F11/0709G06F11/0778H04L9/321H04L67/141H04N21/64H04N21/647
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,575,659
App. No.
17/667,490
Granted
Feb 7, 2023
Kind
B2
Abstract

Systems and methods for establishing secure remote connections to media devices establish a secure shell (SSH) connection between two machines which are located in two different private networks, such as between a remote debugging computer and a receiving device. The receiving device has a persistent outbound connection with a message server. The remote debugging computer connects to a relay manager and obtains a relay instance IP address and port. The relay manager then forwards the relay instance IP address and port to the receiving device via the message server. After receiving the connection request from the message server, the receiving device connects to the relay instance IP and port and waits for the input data. The remote debugging computer performs an SSH handshake and the receiving device directly authenticates the SSH connection.

Claims (47)

1. A system for establishing secure remote connections to media devices, the system comprising:

at least one processor; and

at least one memory coupled to the at least one processor, the at least one memory having instructions thereon that, when executed by the at least one processor, cause actions to be performed including:

connecting, over a computer network, to a relay manager by a remote debugging computer that is remote from a receiving device and located in a different private network than the receiving device;

receiving, via the connection to the relay manager, a relay instance internet protocol (IP) address and port;

connecting, over a computer network by the remote debugging computer, to the relay instance IP address and port via a relay server that is in communication with the relay manager, wherein the receiving device is also connected to the relay instance IP address and port that was forwarded to the receiving device via a persistent outbound connection previously established by the receiving device to a message server in communication with the relay manager;

performing, over a computer network by the remote debugging computer, a secure shell (SSH) cryptographic handshake with an SSH server of the receiving device via the relay instance IP address and port; and

establishing, by the remote debugging computer an SSH connection to the receiving device as a result of the performing the SSH cryptographic handshake.

2. The system of claim 1 wherein the establishing the SSH connection to the receiving device further includes:

receiving, by the remote debugging computer, a prompt with an SSH password banner; and

enabling, by the remote debugging computer, access to the receiving device using the remote debugging computer via receiving input comprising login credentials in response to the prompt.

3. The system of claim 1 wherein the SSH connection to the receiving device is made via a secure remote terminal emulator.

4. The system of claim 3 wherein the secure remote terminal emulator is PuTTy.

5. The system of claim 1 wherein the receiving device is located behind a computer network firewall.

6. The system of claim 1 , wherein the instructions thereon, when executed by the at least one processor, further cause actions to be performed comprising:

receiving an end-user complaint regarding the receiving device; and

performing, with the remote debugging computer, debugging of the receiving device to address the end-user complaint over the SSH connection to the receiving device via the relay server.

7. The system of claim 1 , wherein the instructions thereon, when executed by the at least one processor, further cause actions to be performed comprising:

initiating, by the remote debugging computer over the SSH connection to the receiving device, a dump of a network trace and sending of data representing the dump of the network trace to the remote debugging computer.

8. The system of claim 1 , wherein the instructions thereon, when executed by the at least one processor, further cause actions to be performed comprising:

collecting, by the remote debugging computer from the receiving device over the SSH connection, central processing unit or memory utilization of the receiving device.

9. The system of claim 1 , wherein the instructions thereon, when executed by the at least one processor, further cause actions to be performed comprising:

receiving in real time, by the remote debugging computer from the receiving device over the SSH connection, state information indicative of a current state of the receiving device.

10. The system of claim 1 , wherein the instructions thereon, when executed by the at least one processor, further cause actions to be performed comprising:

receiving in real time, by the remote debugging computer from the receiving device over the SSH connection, information indicative of end-user network topology.

11. The system of claim 1 , wherein the instructions thereon, when executed by the at least one processor, further cause actions to be performed comprising:

initiating, by the remote debugging computer over the SSH connection to the receiving device, the remote debugging computer receiving debug files from the receiving device.

12. The system of claim 1 , wherein the instructions thereon, when executed by the at least one processor, further cause actions to be performed comprising:

initiating, by the remote debugging computer over the SSH connection to the receiving device, rebooting of the receiving device.

13. The system of claim 1 , wherein the instructions thereon, when executed by the at least one processor, further cause actions to be performed comprising:

initiating, by the remote debugging computer over the SSH connection to the receiving device, editing of a configuration of the receiving device.

14. The system of claim 1 , wherein one or more of the receiving device and the remote debugging computer is connected to a router that does not support port forwarding.

15. A non-transitory computer-readable storage medium having computer-executable instructions stored thereon that, when executed by at least one processor, cause actions to be performed including:

connecting, over a computer network, to a relay manager by a remote debugging computer that is remote from a receiving device and located in a different private network than the receiving device;

receiving, via the connection to the relay manager, a relay instance internet protocol (IP) address and port;

connecting, over a computer network by the remote debugging computer, to the relay instance IP address and port via a relay server that is in communication with the relay manager, wherein the receiving device is also connected to the relay instance IP address and port that was forwarded to the receiving device via a persistent outbound connection previously established by the receiving device to a message server in communication with the relay manager;

performing, over a computer network by the remote debugging computer, a secure shell (SSH) cryptographic handshake with an SSH server of the receiving device via the relay instance IP address and port; and

establishing, by the remote debugging computer an SSH connection to the receiving device as a result of the performing the SSH cryptographic handshake.

16. The non-transitory computer-readable storage medium of claim 15 wherein the establishing the SSH connection to the receiving device further includes:

receiving, by the remote debugging computer, a prompt with an SSH password banner; and

enabling, by the remote debugging computer, access to the receiving device using the remote debugging computer via receiving input comprising login credentials in response to the prompt.

17. The non-transitory computer-readable storage medium of claim 15 wherein the SSH connection to the receiving device is made via a secure remote terminal emulator.

18. The non-transitory computer-readable storage medium of claim 17 wherein the secure remote terminal emulator is PuTTy.

19. The non-transitory computer-readable storage medium of claim 15 wherein the receiving device is located behind a computer network firewall.

20. The non-transitory computer-readable storage medium of claim 15 , wherein the instructions thereon, when executed by the at least one processor, further cause actions to be performed comprising:

receiving an end-user complaint regarding the receiving device; and

performing, with the remote debugging computer, debugging of the receiving device to address the end-user complaint over the SSH connection to the receiving device via the relay server.

Assignments (2)
CHANGE OF NAME Recorded Jul 18, 2022
From: SLING MEDIA PRIVATE LIMITED
To: DISH NETWORK TECHNOLOGIES INDIA PRIVATE LIMITED
Reel/Frame 060535/0011 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 8, 2022
From: RANGANATHAN, GOPIKUMAR; ELUVAN PERIYAELUVAN, RAKESH; RAJAN, RANJITH
To: SLING MEDIA PVT LTD
Reel/Frame 058933/0130 →
Continuity (2)
Continuation 16374368 · Apr 3, 2019
Related Publication 20220166760A1 · May 26, 2022