#!/bin/bash ################################################################################ # Author: Fred (support@qo-op.com) # Version: 0.1 # License: AGPL-3.0 (https://choosealicense.com/licenses/agpl-3.0/) ################################################################################ # Activate SUPPORT MODE: open ssh over IPFS MY_PATH="`dirname \"$0\"`" # relative MY_PATH="`( cd \"$MY_PATH\" && pwd )`" # absolutized and normalized ######################################################################## YOU=$(ps auxf --sort=+utime | grep -w ipfs | grep -v -E 'color=auto|grep' | tail -n 1 | cut -d " " -f 1) || er+=" ipfs daemon not running" IPFSNODEID=$(ipfs id -f='\n') || er+=" ipfs id problem" WHOAMI=$(sbotc whoami | jq -r .id) || er+=" sbotc whoami problem" [[ "$YOU" == "" || "$IPFSNODEID" == "" || "$WHOAMI" == "" ]] && echo "ERROR : $er " && exit 1 ######################################################################## # TODO ESTABLISH A PORT FORWARD STRATEGY (depending on Node Flavour) # Arrange local port forwarded to swarm # GET _uidna (means g1sms/init.sh been run) [[ -f /home/$YOU/.zen/ipfs/.$IPFSNODEID/G1SSB/_uidna ]] && UIDNA=$(cat /home/$YOU/.zen/ipfs/.$IPFSNODEID/G1SSB/_uidna) # G1sms SSB ID "@t+KD4vY/aLlNjWur6LfIEUqb06+E4cZNg3rokOqbFz0=.ed25519" # IPFS ID : QmVywXoBSz7JZ5vunYYVwi72SdTizvFt7k7qd3ooyYHvHA [[ "$IPFSNODEID" == "QmVywXoBSz7JZ5vunYYVwi72SdTizvFt7k7qd3ooyYHvHA" ]] && ipfs p2p listen /x/g1pub-ssh /ip4/127.0.0.1/tcp/22 # or CLOSE ipfs p2p close /x/g1pub-ssh if [[ "$IPFSNODEID" == "QmVywXoBSz7JZ5vunYYVwi72SdTizvFt7k7qd3ooyYHvHA" ]]; then # G1Pub : QmVywXoBSz7JZ5vunYYVwi72SdTizvFt7k7qd3ooyYHvHA # I am a g1sms NODE, pushing my web interface ipfs p2p listen /x/g1pub-ssh /ip4/127.0.0.1/tcp/22 fi