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 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 set up private proxies.

After you launch a 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.

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 screenshot.

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, anyone 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.

If you read this far, tweet to the author to show them you care. Tweet a thanks
Aaron Kili
Aaron Kili is a Linux and F.O.S.S enthusiast, an upcoming Linux SysAdmin, web developer, and currently a content creator for TecMint who loves working with computers and strongly believes in sharing knowledge.

Each tutorial at TecMint is created by a team of experienced Linux system administrators so that it meets our high-quality standards.

Join the TecMint Weekly Newsletter (More Than 156,129 Linux Enthusiasts Have Subscribed)
Was this article helpful? Please add a comment or buy me a coffee to show your appreciation.

10 thoughts on “Teleconsole – Share Your Linux Terminal with Your Friends”

  1. Starting local SSH server on localhost…
    Requesting a disposable SSH proxy on teleconsole.com for lbian…
    Checking status of the SSH tunnel…
    SSH tunnel cannot be established, please try again.

    I can not use it on my system ubuntu18.04. is there anyone who can help me with that?

    Reply
  2. Another Linux application that fills out a much-needed gap, as they say. Seriously, it has been possible to do things like this with Linux for years (e.g. VNC.) This seems to be somebody saying “let’s see if we can do it in Go”, and little else. And its security model is awful.

    Reply
  3. Pretty useless for enterprise as it allows console over the public Internet breaking security policies for all. If users could use their own servers though and keep everything internal to their own network it may be useful for 1st/2nd/3rd line support collaboration.

    Reply

Got something to say? Join the discussion.

Thank you for taking the time to share your thoughts with us. We appreciate your decision to leave a comment and value your contribution to the discussion. It's important to note that we moderate all comments in accordance with our comment policy to ensure a respectful and constructive conversation.

Rest assured that your email address will remain private and will not be published or shared with anyone. We prioritize the privacy and security of our users.