Connection package to a raspberry or any other machine using ssh, it simplifies the deployment scripts and monitoring.

Overview

Raspinel

Connection package to a raspberry or any other machine using ssh, it simplifies the deployment scripts and monitoring.

⚠️ Warning : no security guarantee, please do not use this package for access to sensitive data.

⚠️ Developed only for window client to linux remote at the moment

Table of Contents

  1. Prerequisites
  2. Install
  3. Usage in command line
  4. Usage as application
  5. Usage as module
  6. License

Prerequisites

To use this program you need python 3.10, no support will be provided for previous versions.

You also need to install Putty and WinSCP

Install

This package is not available on pypi at the moment. To install it, you need to download it from git as below.

git clone https://github.com/Dashstrom/raspinel.git raspinel
cd raspinel
pip install .

Configuration

After downloading it you need to create a configuration file named .raspinel.yml in one of the following places :

  • $HOME\.raspinel.yml
  • $MODULE_PATH\.raspinel.yml
  • $PWD\.raspinel.yml

It must contain the following structure where only the host is mandatory.

hostname: 'REMOTE_HOSTNAME'
port: REMOTE_PORT
username: 'REMOTE_USERNAME'
password: 'REMOTE_PASSWORD'
timemout: CONNECTION_TIMEOUT_MS

You can also just use environment variables as :

export RASPINEL_HOSTNAME=${REMOTE_HOSTNAME}
export RASPINEL_PORT=${REMOTE_PORT}
export RASPINEL_PASSWORD=${REMOTE_USERNAME}
export RASPINEL_USERNAME=${REMOTE_PASSWORD}
export RASPINEL_TIMEOUT=${CONNECTION_TIMEOUT_MS}

You must of course replace the values given in the example by your own identifiers.

If all is well configure the following command should reply you hello world.

py -m raspinel "echo 'hello world'"

Usage in command line

The strength of this package is that it can be used as a command line tool, bellow are the supported command line functionality for the moment.

usage: py -m raspinel [-h] [-i] [-d src dest] [-u src dest] [commands ...]

Allows communication using ssh to get information, upload or download files or run commands.
Run without argument start program in GUI mode.

positional arguments:
  commands              commands to execute on remote

options:
  -h, --help            show this help message and exit
  -i, --info            show some information about remote
  -d src dest, --download src dest
                        download file from remote using sftp
  -u src dest, --upload src dest
                        upload file to remote using sftp

Usage as application

To launch the application, nothing could be simpler :

py -m raspinel

The main window

Image of Raspinel - Main Window

The Manager

Image of Raspinel - Manager

Usage as module

Here is a simple code that displays a hello world.

import sys
from raspinel import Client

if __name__ == "__main__":
    # connect from env or files
    clt = Client.resolve()
    
    # send command
    resp = clt.cmd("echo {}", "hello world")
    
    # show outputs
    print(resp.out)
    print(resp.err)
    
    # exit with the same exit code that command
    sys.exit(resp.exit)

For more details or help use py -c "help(__import__('raspinel'))"

License

raspinel is licensed under the terms of the GNU License (see the file LICENSE).

Owner
Dashstrom
Discord : Dashstrom#6593
Dashstrom
Compare the contents of your hosted and proxy repositories for coordinate collisions

Nexus Repository Manager dependency/namespace confusion checker This repository contains a script to check if you have artifacts containing the same n

Sonatype Community 59 Mar 31, 2022
Linkedin Connection Automation

Why spend an hour+ a week, connecting with the correct people on LinkedIn when you can go for lunch and let your computer do the hard work?

1 Nov 29, 2021
Whoisss is a website information gatharing Tool.

Whoisss Whoisss is a website information gatharing Tool. You can cse it to collect information about website. Usage apt-get update apt-get upgrade pkg

Md. Nur habib 2 Jan 23, 2022
🌐 Tools for Networking

🌐 Network Tools Tools for Networking This repository contains the tools needed to make networking easier. Make sure to download all of the requiremen

Tornaido 1 Jan 15, 2022
Qtas(Quite a Storage)is an experimental distributed storage system developed by Q-team in BJFU Advanced Computer Network sources.

Qtas(Quite a Storage)is a experimental distributed storage system developed by Q-team in BJFU Advanced Computer Network sources.

Jiaming Zhang 3 Jan 12, 2022
Pritunl is a distributed enterprise vpn server built using the OpenVPN protocol.

Pritunl is a distributed enterprise vpn server built using the OpenVPN protocol.

Pritunl 3.8k Jan 03, 2023
Keep your application settings in sync (OS X/Linux)

Mackup Keep your application settings in sync. Table of content Quickstart Usage What does it do Bullsh*t, what does it really do to my files Supporte

Laurent Raufaste 12.8k Jan 08, 2023
A web-based app that allows easy, simple - and if desired high-throughput - analysis of qPCR data

qpcr-Analyser A web-based GUI for the qpcr package that allows easy, simple and high-throughput analysis of qPCR data. As is described in more detail

1 Sep 13, 2022
DEMO SOCKET AF INET SSL PYTHON

DEMO_SOCKET_AF_INET_SSL_PYTHON Python demo of socket family as AF_INET using TCP with SSL. Compatibility : macOS & GNU/Linux Network Topology style :

Enola 1 Jan 24, 2022
A tool to generate valid ip addresses of 55 countries. These ip's can be used for OpenBullet.

IP-Grabber A tool to generate valid ip addresses of 55 countries. These ip's can be used for OpenBullet. ive added the feature to set the generated ip

Saad 9 Dec 17, 2022
Ping Verification Python Script

Python Script Port Scanner Script WHAT IS IT? Port scanner script using Python. HOW IT WORKS Once the script has been executed, it will request the ta

AC 0 Dec 12, 2021
A vpn that sits in your browser, accessible via a website

VPNInYourBrowser A vpn that sits in your browser, accessible via a website Example setup: https://VPNInBrowser.jaffa42.repl.co Setup Put the code onto

1 Jan 20, 2022
It can be used both locally and remotely (indicating IP and port)

It can be used both locally and remotely (indicating IP and port). It automatically finds the offset to the Instruction Pointer stored in the stack.

DiegoAltF4 13 Dec 29, 2022
Python Scrcpy Client - allows you to view and control android device in realtime

Python Scrcpy Client This package allows you to view and control android device in realtime. Note: This gif is compressed and experience lower quality

LengYue 126 Jan 02, 2023
A python socket.io client for Roboteur

Roboteur Client Example TODO Basic setup Install the requirements: $ pip install -r requirements.txt Run the application: $ python -m roboteur_client

Barry Buck 1 Oct 13, 2021
Tsunami-Fi is simple multi-tool bash application for Wi-Fi attacks

🪴 Tsunami-Fi 🪴 Русская версия README 🌿 Description 🌿 Tsunami-Fi is simple multi-tool bash application for Wi-Fi WPS PixieDust and NullPIN attack,

【Kiko】 35 Dec 09, 2022
Heroku Cloudflare App Domain

Heroku Cloudflare App Domain Creating branded herokuapp.com-like domains using Cloudflare, based on the app name (eg my-app-prod.example.com). Feature

Torchbox 2 Oct 04, 2022
Secure connection between tenhou Window client and server.

tenhou-secure The tenhou Windows client looks awesome. However, the traffic between the client and tenhou server is NOT encrypted, including your uniq

1 Nov 11, 2021
A transport agnostic sync/async RPC library that focuses on exposing services with a well-defined API using popular protocols.

WARNING: This is from spyne's development branch. This version is not released yet! Latest stable release can be found in the 2_13 branch. If you like

1.1k Dec 23, 2022
DataShare - Simple library for data sharing between scripts and public functions calling

DataShare - Simple library for data sharing between scripts and public functions calling. Installation. Install code, Delete LICENSE, README, readme.t

Ivan Perzhinsky. 1 Dec 17, 2021