Git Product home page Git Product logo

robotito's Introduction

Robo-TiTO

Robo-TiTO gives you an alternative access to a remote machine terminal.

Main Objective

Sometimes you cannot reach an ssh ip:port of an host by a lot of reasons:

  • host is behind NAT
  • firewall protection
  • remote host with dynamic ip
  • port redirections
  • annoying administrators

Robo-TiTO allows you circumvent these problems and execute commands remotely on your server.

Get involved

Drop a ๐Ÿ‘ or a comment on Robo-TiTO's Research

Description

This is a light-weight bot connecting through XMPP (eg.: GTalk) that allows you run shell command remotely. Robo-TiTO will not open a port to be accessed, instead of that, it will connect to a jabber service. You send your commands in a chat session and receive terminal output back. You will be "talking" to your server like you always did, but now you will get some answers from it.

Requirements

  • Ruby >= 2.0.0

Installation

bundle install

# adjust the bot credentials and server settings using the example file provided
cp config/credentials.rb.example config/credentials.rb
vim config/credentials.rb

start with

./robotitod start

check additional available options with

./robotitod -h

Authentication

Robo-TiTO uses OTP (One Time Password) for authentication. You can use Google Authenticator, available for Android and iPhone, You just need to add a time based account entry with the credentials you specified in the credentials.rb file.

Thanks

Philippe Creux and its suggestion on gist

https://gist.github.com/258561

robotito's People

Contributors

andreyserdjuk avatar formigarafa avatar wmoc avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

robotito's Issues

Authentication how-to

I've used Robo-TiTO a few years ago and was happy with it.
Now I tried to install it again and have some problems. I got it to register the xmpp account correctly. I can see it come online from another account. A few years ago there were no one time passwords and I can"t figure out how it works.

In the credentials.rb file in the PASSWD section, what kind of username needs to be used here exactly? The user of the account I want to use for remote access? Only the username or including the @server.com part?

What do I need to do for authentification? Just enter the six digits from Google Authenticator? After that I could directly send shell commands?

Sorry, probably I just oversee something, but I right now I can't figure out how it works.
Is there another way to contact you?

Detailed setup for newbie

Hello.
I'm quite new in the jabber/xmpp world.
I created account on jabber.org and jabber.at let's say [email protected] for running on my raspberry, and [email protected] for clients.

My credentials will looks like:

# Robo-TiTO connects to Jabber using these settings.
BOT_LOGIN         = "[email protected]"
BOT_PASSWORD      = "password"
BOT_JABBER_HOST_SERVER = 'jabber.org'
BOT_JABBER_SERVER_PORT = 5222

# Robo-TiTO only accepts commands from contacts listed on AllowedUsers array.
PASSWD = {
  "[email protected]" => "base32secret_for_one_time_passwords",
}

I'm using Google Auth for my personal gmail account, but I don't get how can I get/generate base32secret_for_one_time_passwords ?

If I left it as it is: then the raspberry respond to me:

client: pwd
rasperry: Unknown User: pwd

client: whoami
raspberry: Unknown User: whoami

and so on...

Research: Are you using it?

Please leave a :+1: to let me know who are using Robo-TiTO.

If you have any concerns, suggestion or even complaint, now is the time and this is the place.

I have been noticing some posts and comments about the project around the web and I would like to have your opinion to guide my the next steps.

thanks.

How does it work with Gtalk ?

Hello,

I have installed Robotito, configured a google account with, and started. It says :

:/opt/robotito# ./robotitod start -t
Connecting...
Connected.

So with my proper google account, I start gTalk, and start a chat with the google account configured in config/credentials.rb .

And now ... I don't know what can I do in order to get the bot :p
Can you help me please ?

Regards,

Nicolas

jabber login

to login your google account must be set to use less secure apps.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.