Required:
-
some binaries in your PATH +
sshd
instance running: ngrok, jl, tmux, jq; to install all that, run:sudo apt install openssh-server tmux jq snapd sudo snap install ngrok go install github.com/koenbollen/jl@latest
-
the
ngroker
script somewhere in your PATH, e.g.:curl -sL https://raw.githubusercontent.com/maelvls/ngroker/master/ngroker > /tmp/ngroker install /tmp/ngroker $(go env GOPATH)/bin
(1) Make sure sshd
is running (go to  → System Preferences → Sharing → check the box "Remote login")
(2) Install ngroker
by running the following commands:
brew install jq tmux koenbollen/public/jl
brew cask install ngrok
curl -sL https://raw.githubusercontent.com/maelvls/ngroker/master/ngroker > /tmp/ngroker
install /tmp/ngroker /usr/local/bin
(2) Then, make sure you are registered with ngrok (e.g. using your Github account to signup/log in)
(3) Copy the authtoken
in the ngrok setup page and run:
ngrok authtoken <the-token-displayed-in-get-started-setup>
Finally you can create a session someone by giving the script their Github
username (e.g. maelvls
). The session will happen in tmux attach -t ngroker
# Share session with mael
ngroker maelvls
# Let's be crazy and share the session with two people!
ngroker maelvls Callisto13
% ssh jack@0.tcp.eu.ngrok.io -p 15597
kex_exchange_identification: Connection closed by remote host
that means sshd isn't running on the machine that runs ngroker