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
BlueHawk is an HTTP/1.1 compliant web server developed in python

This project is done as a part of Computer Networks course. It aims at the implementation of the HTTP/1.1 Protocol based on RFC 2616 and includes the basic HTTP methods of GET, POST, PUT, DELETE and

2 Nov 11, 2022
ExtDNS synchronizes labeled records in docker-compose with DNS providers.

ExtDNS for docker-compose ExtDNS synchronizes labeled records in docker-compose with DNS providers. Inspired by External DNS, ExtDNS makes resources d

DNTSK 6 Dec 24, 2022
Anonymously Reverse shell over Tor Network using Hidden Services without portfortwarding

Anonymously Reverse shell over Tor Network using Hidden Services without portfortwarding Tor ağı ile Dark Web servislerini kullanarak anonim biçimde p

249 Dec 29, 2022
Easily share folders between VMs.

This package aims to solve the problem of inter-VM file sharing (rather than manual copying) by allowing a VM to mount folders from any other VM's file system (or mounted network shares).

Rudd-O 12 Oct 17, 2022
Base on browser-time to get har from network, and use python to analyze the data .

base on browser-time to get har from network, and use python to analyze the data

1 Dec 20, 2021
Dokumentasi belajar Network automation

Repositori belajar network automation dengan Docker, Python & GNS3 Using Frameworks and integrate with: Paramiko Netmiko Telnetlib CSV SFTP Netmiko, S

Daniel.Pepuho 3 Mar 15, 2022
A Scapy implementation of SMS-SUBMIT and (U)SIM Application Toolkit command packets.

A Scapy implementation of SMS-SUBMIT and (U)SIM Application Toolkit command packets.

mnemonic 83 Dec 11, 2022
This is the code repository for Mastering Python for Networking and Security – Second Edition

Mastering Python for Networking and Security – Second Edition This is the code repository for Mastering Python for Networking and Security – Second Ed

Frank Gottinger 1 Feb 09, 2022
Wifijammer - Continuously jam all wifi clients/routers

wifijammer Continuously jam all wifi clients and access points within range. The effectiveness of this script is constrained by your wireless card. Al

Dan McInerney 3.5k Dec 31, 2022
pfSense integration with Home Assistant

hass-pfsense Join pfSense with home-assistant! hass-pfsense uses the built-in xmlrpc service of pfSense for all interactions. No special plugins or so

Travis Glenn Hansen 105 Dec 24, 2022
Process incoming JSON-RPC requests in Python

August 16, 2021: Version 5 has been released. Read about the changes in version 5, or read the full documentation. Version 5 is for Python 3.8+ only.

Exploding Labs 156 Dec 31, 2022
Fmog: Fortinet Mass Object Generator. This script will take a list of IP addresses and create address objects with the same name

Fmog: Fortinet Mass Object Generator This script will take a list of IP addresses and create address objects with the same name. It will also add them

2 Oct 26, 2021
Lightweight asyncio compatible utilities for consuming broker messages.

A simple asyncio compatible consumer for handling amqp messages.

Mehdi Kamani 3 Apr 10, 2022
This is simple script that changes the config register of a cisco router over serial so that you can reset the password

Cisco-router-config-bypass-tool- This is simple script that changes the config register of a cisco router over serial so that you can bypass the confi

James 1 Jan 02, 2022
A Python library to ease the integration with the Beem Africa (SMS, AIRTIME, OTP, 2WAY-SMS, BPAY, USSD)

python-client A Python library to easy the integration with the Beem Africa SMS Gateway Features to be Implemented Airtime OTP SMS Two way SMS USSD Bp

Beem Africa 24 Oct 29, 2022
PcapConverter - A project for generating 15min frames out of a .pcap file containing network traffic

CMB Assignment 02 code + notebooks This is a project for containing code for the

Yannik S 2 Jan 24, 2022
VRF-StarkNet - Contracts for verifiable randomness on StarkNet

VRF-StarkNet Contracts for verifiable randomness on StarkNet Motivation Deployed

Non 32 Oct 30, 2022
An HTML interface for finetuning the sync map output from aeneas

finetuneas 3.0 finetuneas is a simple HTML interface for fine tuning sync maps output by aeneas Version 3.0 Easier adjusting time: following cells wil

Firat Özdemir 50 Mar 12, 2022
InfraGenie is allows you to split out your infrastructure project into separate independent pieces, each with its own terraform state.

🧞 InfraGenie InfraGenie is allows you to split out your infrastructure project into separate independent pieces, each with its own terraform state. T

Digger 53 Nov 23, 2022
OpenNeoMC:an Open-source Tool for Particle Transport Optimization that Combining OpenMC with NEORL

OpenNeoMC:an Open-source Tool for Particle Transport Optimization that Combining OpenMC with NEORL OpenMC is a community-developed Monte Carlo neutron

7 Aug 17, 2022