daxbax-tunnel

Reach a computer behind NAT over SSH, at an address nobody can guess:
k7x2m9pqa3vd8h4wz5tn.tunnel.daxbax.com

The computer runs a small client that holds one outgoing connection to the relay. Nothing on the computer listens on the network. Whoever knows the name connects through the relay to the computer's own SSH server; SSH stays end to end.

1. Put a computer behind an address

Linux (as root):

curl -fsSL https://tunnel.daxbax.com/install.sh | sudo bash

macOS (as yourself, no sudo):

curl -fsSL https://tunnel.daxbax.com/install.sh | bash

The script downloads the program, checks its checksum, gets a connection code by itself, installs a service that starts with the computer and prints the address and how to connect. If you were given a code (by a program that uses this relay), add it at the end: ... | bash -s -- <code>. To remove everything: the same command with -s -- --uninstall.

Windows: not packaged yet. Download daxbax-tunnel-windows-amd64.exe below, then run daxbax-tunnel client enroll <code> and daxbax-tunnel client run.

2. Connect to it

Put the same program (below) on the machine you connect from, and use it as the SSH proxy:

ssh -o ProxyCommand='daxbax-tunnel dial --relay tunnel.daxbax.com:8443 --pin sha256:bacf2c46813e23b8462f40146473bb2ee6fe21b0589c3b63d01fcd87685c9038 %h' USER@ADDRESS

The pin is the fingerprint of this relay's own certificate authority; the program refuses any relay that does not present it.

3. Use it from a program

Programs get codes and see their computers through an API with a key; see docs/API.md. DaxBax Neo uses it.

Доступ по SSH к компьютеру за NAT по адресу, который нельзя угадать:
k7x2m9pqa3vd8h4wz5tn.tunnel.daxbax.com

На компьютере работает маленький клиент с одним исходящим соединением к ретранслятору. Компьютер сам ничего не слушает в сети. Кто знает имя, подключается через ретранслятор к SSH-серверу самого компьютера; SSH остаётся сквозным.

1. Поставить компьютер за адрес

Linux (от root):

curl -fsSL https://tunnel.daxbax.com/install.sh | sudo bash

macOS (от своего пользователя, без sudo):

curl -fsSL https://tunnel.daxbax.com/install.sh | bash

Скрипт скачивает программу, проверяет контрольную сумму, сам получает код подключения, ставит службу, которая запускается вместе с компьютером, и печатает адрес и способ подключения. Если вам дали код (программа, которая использует этот ретранслятор), добавьте его в конец: ... | bash -s -- <код>. Чтобы всё удалить, та же команда с -s -- --uninstall.

Windows: пока без установщика. Скачайте daxbax-tunnel-windows-amd64.exe ниже и запустите daxbax-tunnel client enroll <код> и daxbax-tunnel client run.

2. Подключиться

Поставьте эту же программу (ниже) на машину, с которой вы подключаетесь, и используйте её как SSH-прокси:

ssh -o ProxyCommand='daxbax-tunnel dial --relay tunnel.daxbax.com:8443 --pin sha256:bacf2c46813e23b8462f40146473bb2ee6fe21b0589c3b63d01fcd87685c9038 %h' USER@АДРЕС

Отпечаток (pin) — это отпечаток собственного центра сертификатов этого ретранслятора; программа не соединится с ретранслятором, который его не предъявит.

3. Из программы

Программы получают коды и видят свои компьютеры через API по ключу: docs/API.md. Так работает DaxBax Neo.

Downloads

filesizesha256
daxbax-tunnel-darwin-amd6410.4 MBb77784669038b2a3689cd7a0f09fbf700301a5e39f46494a7b539398a7eefb61
daxbax-tunnel-darwin-arm649.7 MBbb9ae6d67e5979edfbb7cc6ea33e8774f48b4e42f43f47c051192b8d0168a1dc
daxbax-tunnel-linux-amd6410.2 MB0a54f115a0141f776b15cccb84d5ce41483922553a056e29508f6d52e04184de
daxbax-tunnel-linux-arm649.5 MB174ce26d4090847077611762d94cc46a1f43f9936aee03e2b09eec8e91e82841
daxbax-tunnel-windows-amd64.exe10.6 MBfe0e1bceee8450adc472bcb44ca4a92f925b7482ea1c49e06185b2112c459fe1
daxbax-tunnel-windows-arm64.exe9.6 MB009ed7cbbc517e25fd5cf561b553dc1c56bfac8e2f2fe7cfac1f6ae35824c1a5

Relay: tunnel.daxbax.com:8443 · pin: sha256:bacf2c46813e23b8462f40146473bb2ee6fe21b0589c3b63d01fcd87685c9038 · source