Teleconsole – Share Your Linux Terminal with Your Friends

Teleconsole is a free open source and powerful command line tool for sharing your Linux terminal session with people you trust. Your friends or team members can connect to your Linux terminal session via...

Teleconsole is a free open source and powerful command line tool for sharing your Linux terminal session with people you trust. Your friends or team members can connect to your Linux terminal session via a command-line over SSH or via a browser over HTTPS protocol.

How does it work?

Teleconsole is a clustered SSH server with a built-in SSH proxy and was written in GoLang. You can use this tool to launch secure SSH sessions, perform forwarding of local TCP ports and setup private proxies.

After you launch teleconsole on your system, it opens a new shell session and prints the unique session ID as well as a WebUI link which you need to share with your friends, for them to join via a command line over SSH or from their web browsers over HTTPS.

Read Also: GoTTY – Share Your Linux Terminal (TTY) as a Web Application


Additionally, teleconsole also enables for forwarding local TCP ports, thus allowing your friends to access the web applications running on your localhost in case it’s behind NAT.

Warning: Teleconsole comes with certain security risks that you should take note of; it creates an SSH server accessible via public Internet during the Teleconsole session, this will practically give your keyboard to anyone with a link.

How to Install Teleconsole in Linux

The fastest and easiest way to install Teleconsole on your Linux distribution is to type the following command in your terminal.

$ curl https://www.teleconsole.com/get.sh | sh

Once Teleconsole installed, you can start it by typing the following command. This is very useful when you get stuck in some configuration on a Linux box behind NAT. Just invite and share your Linux session with your friend to help you.

$ teleconsole
Sample Output
Starting local SSH server on localhost...
Requesting a disposable SSH proxy on as.teleconsole.com for tecmint...
Checking status of the SSH tunnel...
Your Teleconsole ID: asce38b0cbb9db97ef16562d1feffe5b84c9a204b8
WebUI for this session: https://as.teleconsole.com/s/ce38b0cbb9db97ef16562d1feffe5b84c9a204b8
To stop broadcasting, exit current shell by typing 'exit' or closing the window.

Next, copy the unique session ID printed or WebUI link and share it via a secure means with people you trust. Your friends can join in using the session ID as shown.

$ teleconsole join asce38b0cbb9db97ef16562d1feffe5b84c9a204b8

Or they can join by clicking on a WebUI link to access it via a web browser as shown in the following screen shot.

Share Linux SSH Session via Browser

Share Linux SSH Session via Browser

Now you and your friend both are using the same Linux terminal session running on your system, even if both of you are on different networks separated by NAT.

To stop broadcasting, exit the current shell by typing ‘exit’ command or closing the terminal window.

$ exit

How to Enable Port Forwarding

Another important feature of Teleconsole is, easy port forwarding, thereby enabling your friends to connect any TCP port running on your Linux system. Let’s assume you are working on a web project and it is currently accessible on your http://localhost:3000 . You can make your friends access it by forwarding port 3000 when you initiate a new session as shown.

$ teleconsole -f localhost:3000
Sample Output
Starting local SSH server on localhost...
Requesting a disposable SSH proxy on as.teleconsole.com for tecmint...
Checking status of the SSH tunnel...
Your Teleconsole ID: asce38b0cbb9db97ef16562d1feffe5b84c9a204b8
WebUI for this session: https://as.teleconsole.com/s/ce38b0cbb9db97ef16562d1feffe5b84c9a204b8
To stop broadcasting, exit current shell by typing 'exit' or closing the window.

Now when your friends join this session, they will see a message as shown.

ATTENTION: tecmint has invited you to access port 3000 on their machine via localhost:9000
Join Linux Session

Join Linux Session

They can then access your application from their browsers using the URL http://localhost:3000.

Important: Since Teleconsole is just an SSH server, any one you have shared your session ID with can request port forwarding without informing you, as shown.

$ teleconsole -f 3000:localhost:3000 join <session-id>

You can view the teleconsole help message with the following command.

$ teleconsole help

For more information, go to the Teleconsole Github repository.

That’s all! Teleconsole is a powerful SSH server to share your Unix/Linux terminal session with friends. In this article, we have explained how to use teleconsole to launch secure SSH sessions and share your terminal with friends and perform forwarding of local TCP ports.

If you have any questions or thoughts to share, use the comment form below to reach us.

Posted by wiredgorilla