Crates.io | bodo_connect |
lib.rs | bodo_connect |
version | 0.8.2 |
source | src |
created_at | 2023-04-06 09:50:49.849343 |
updated_at | 2024-11-02 18:33:12.074893 |
description | A library for mapping/connecting to your hosts in the whole world wide web. |
homepage | |
repository | https://github.com/topongo/bodo_connect |
max_upload_size | |
id | 832084 |
size | 156,258 |
It supports:
Install it with cargo install bodo_connect
.
Or build it simply by cloning this repo using cargo:
git clone https://github.com/topongo/bodo_connect
cd bodo_connect
cargo build --release
# execute it directly
target/release/bodoConnect
# or install it with cargo
cargo install --path .
For legacy reasons, the binary for this crate is named bodoConnect
and not bodo_connect
.
wol
command on the master host of the target network.Usage: bodoConnect [OPTIONS] <HOST> [EXTRA]...
Arguments:
<HOST> Host to connect to
[EXTRA]... Extra argument(s), if no -S or -R is used, it will be passed to the remote machine as command
Options:
--networkmap <NETWORKMAP> Select different networkmap.json file
-w, --wake Wake host before connecting
-t, --tty Pass -t parameter to ssh (force tty allocation)
-d... Set verbosity level
-q, --quiet Don't log anything
-n, --dry Send to stdout the generated command without executing it
-R, --rsync [WIP] Creates rsync commands
-S, --sshfs [WIP] Creates sshfs commands
-l, --loop Retry connection until ssh returns 0
-h, --help Print help
-V, --version Print version
A little clarification on how a networkmap is structured:
NetworkMap
: a list of Subnets
Subnet
:
subdomain
and it contains a list of hosts
(and optionally by a static external ip address, eip
).Host
:
name
, that must be unique in the whole network map, it must contain:
ip
addressport
user
eport
.
master
, so it is considered to be always powered on and exposed for incoming ssh connection from foreign hostsWaker
: an optional structure that defines how a host can be wakened. It supports:
Example of a newtorkmap