Skip to main content

A Python-based SSH forced-command gatekeeper for remote callbacks.

Project description

ssh-backchannel

WARNING. This is vibe coded. Review before use.

Sometimes I want to do things on my local machine from a remotes machine I am ssh'd into. ssh-backchannel provides a means to do so - in a moderately secure way. It allows you to run a local command from a remote machine, while asking for confirmation from your local machine.

Architecture

A limited ssh key is created and passed to other machines when you log in. This key can only run a command which asks you for permission before running commands.

Alternatives and prior work

If you are happy with it you could use ssh auth forwarding and just ssh into your machine. This adds a little more security since you must approve each command.

If you just want to write to your clipboard there are tools which use OSC escape codes to send data via your terminal. The only downside is that you need to set up terminal to handle deal with this. I do not like debugging this sort of stuff.

Caveat

This only works if your host can be reached from the remote machine and may involve openning your machine ot the internet or using a VPN / being on the same subnet. Reverse proxying would probably be the easiest fix.

It is assumed that there is only one user who consistently uses a machine.

Alternatively, you could use reverse proxying in your ssh config.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ssh_backchannel-1.1.2.tar.gz (4.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ssh_backchannel-1.1.2-py3-none-any.whl (4.6 kB view details)

Uploaded Python 3

File details

Details for the file ssh_backchannel-1.1.2.tar.gz.

File metadata

  • Download URL: ssh_backchannel-1.1.2.tar.gz
  • Upload date:
  • Size: 4.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for ssh_backchannel-1.1.2.tar.gz
Algorithm Hash digest
SHA256 0865fc0c54de63397ef83c624c25fe0f5db06450ae78d4ee444e319c50c66159
MD5 00fe1d5b1c364d5c0515d45b29774e29
BLAKE2b-256 dad362e1755979a9dd323c7952e72c7f337edd68c9e898e7d52e6cf108b1fce5

See more details on using hashes here.

File details

Details for the file ssh_backchannel-1.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for ssh_backchannel-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 a232376d6188525adce05afe17d98b0d3918a5fd820d49e4d53dc673e7e559f7
MD5 22a3528da614550cbab3dc6b3ff3a749
BLAKE2b-256 8eda74eb16eaeb6a4ae92a19c58fbca9ca912b33976978c36965e5f039324584

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page