Make your BeagleBone accessible from anywhere via the Yaler relay.
Setting up your device requires a relay domain. Please sign up to get one.
Plug in external power and make sure the BeagleBone is connected to the Internet via Ethernet, Wi-Fi or 3G.
This tutorial is for Debian. Not your OS? See how to access BeagleBone Angstrom or BeagleBone Ubuntu from the Web.
Follow these steps to install YalerTunnel on the BeagleBone.
$ cd ~
$ sudo apt-get update
$ sudo apt-get install libssl-dev ca-certificates
$ mkdir yalertunnel $ cd yalertunnel
$ curl -LO http://s3.yaler.net/yalertunnel/YalerTunnel2-v2.3.2.src.tar.gz $ tar xfzmv YalerTunnel2-v2.3.2.src.tar.gz $ make
A Web server or service has been installed and is running on the BeagleBone.
How to configure YalerTunnel on your BeagleBone to make a local Web service accessible from anywhere.
$ sudo curl -L http://s3.yaler.net/beaglebone-debian/yalertunnel.service -o /lib/systemd/system/yalertunnel.service
$ sudo ln -s /lib/systemd/system/yalertunnel.service /etc/systemd/system/multi-user.target.wants/yalertunnel.service
$ sudo nano /lib/systemd/system/yalertunnel.service
Check the path (default: /home/debian/yalertunnel), set the port of the local Web service (default: 80), and set your relay domain1 [Unit] ⋮ 7 ExecStart=/home/debian/yalertunnel/yalertunnel server 127.0.0.1:80 try.yaler.io:80 RELAY_DOMAIN -min-listeners 1
Save changes with CTRL-X, then Y, then RETURN. Do not change the local IP (default: 127.0.0.1), unless the Web service runs on a separate device in the same network.
$ sudo systemctl daemon-reload $ sudo systemctl enable yalertunnel.service $ sudo systemctl start yalertunnel.service
$ sudo reboot
How to remove YalerTunnel to disable Web access from anywhere.
$ sudo systemctl stop yalertunnel.service $ sudo rm /etc/systemd/system/multi-user.target.wants/yalertunnel.service $ sudo rm /lib/systemd/system/yalertunnel.service $ sudo reboot
The SSH daemon sshd is running (per default) on the BeagleBone.
How to configure YalerTunnel on your BeagleBone to allow SSH access from anywhere.
$ sudo curl -L http://s3.yaler.net/beaglebone-debian/yalertunnel-ssh.service -o /lib/systemd/system/yalertunnel-ssh.service
$ sudo ln -s /lib/systemd/system/yalertunnel-ssh.service /etc/systemd/system/multi-user.target.wants/yalertunnel-ssh.service
$ sudo nano /lib/systemd/system/yalertunnel-ssh.service
Check the path (default: /home/debian/yalertunnel), set the port of the local SSH service (default: 22), and set your relay domain1 [Unit] ⋮ 7 ExecStart=/home/debian/yalertunnel/yalertunnel proxy 127.0.0.1:22 try.yaler.io:80 RELAY_DOMAIN
Save changes with CTRL-X, then Y, then RETURN. Do not change the local IP (default: 127.0.0.1), unless the SSH service runs on a separate device in the same network.
$ sudo systemctl daemon-reload $ sudo systemctl enable yalertunnel-ssh.service $ sudo systemctl start yalertunnel-ssh.service
$ sudo reboot
How to remove YalerTunnel to disable SSH access from anywhere.
$ sudo systemctl stop yalertunnel-ssh.service $ sudo rm /etc/systemd/system/multi-user.target.wants/yalertunnel-ssh.service $ sudo rm /lib/systemd/system/yalertunnel-ssh.service $ sudo reboot
How to fix common issues.
$ ~/yalertunnel/yalertunnel
$ ps aux | grep [y]aler
To enable Web and SSH access at the same time, or tunnel another protocol, please get in touch.
This work by Yaler GmbH is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.