Home

Awesome

remoteTelegramShell

remoteTelegramShell is a remote shell for Linux that makes use of Telegram's conection to send commands and receive their output from the computer. This tool is specially useful if you want to connect to a computer that is behind a private network without opening ports or just want to control your computer through Telegram, without using any ssh client.

Check remoteDiscordShell out for a similar solution working in Discord.

alt tag

Features

alt tag

How it works

To access to the computer control, Telegram users must log into the system, the password will be asked through DM to any unregistered user who sends a command.

Once the user is logged in, all (allowed) commands sent will be processed by the computer and the generated output will be sent back to the user in real time.

There is a configurable list of forbidden commands that shouldn't be used due to unexpected behaviour (e.g. non generating output commands such nano or vim).

There is a set of special commands for specific actions such update or upgrade the system, the list of avaliable special commands is the following:

Installation guide

First step is downloading this project, use this command:

git clone https://github.com/EnriqueMoran/remoteTelegramShell.git

After cloning the repository in your own computer (it should be Linux OS), the following step is installing pyTelegramBotApi library (notice that this bot is compatible with python 3.7+, so pip3 might be necessary to use):

pip install pyTelegramBotApi
  1. On telegram, create a new bot (talk to @BotFather) and save the token.

alt tag

  1. For using the bot in groups, you must disable privacy (/setprivacy).

alt tag

  1. Edit config.txt file and fill the blanks (file paths MUST be absolute).

alt tag

Depending on the chosen directory and if sudo parameter is active, it might be necessary to change access permissions of files, this can be done with chmod command.

  1. Last step is executing .py script and start using our computer through Telegram.
python3 pyTelegramShellBot.py
python3 pyTelegramShellBot.py &              (this will run the script in background)

Sending and receiving files

To send files just drag and drop on the chat, or click on send file button, they will be stored in configured shared folder.

alt tag

To download files from the computer use "/getfile + path" (e.g. /getfile /home/user/Desktop/test-file.txt).

alt tag

TODO

Version history

Check project releases for more info.