Access your BeagleBone Angstrom from the Web

Make your BeagleBone accessible from anywhere via the Yaler relay.

Prerequisites

Setting up your device requires a relay domain. Please sign up to get one.

Setting up the hardware

Plug in external power and make sure the BeagleBone is connected to the Internet via Ethernet, Wi-Fi or 3G.

This tutorial is for Angstrom. Not your OS? See how to access BeagleBone Debian or BeagleBone Ubuntu from the Web.

Installing YalerTunnel on Angstrom

Follow these steps to install YalerTunnel on the BeagleBone.

  1. Open a shell on your BeagleBone (default login is root, no password), or type
    $ cd ~
  2. Create a yalertunnel directory
    $ mkdir yalertunnel
    $ cd yalertunnel
  3. Download, unzip and build the YalerTunnel source
    $ curl -LO http://s3.yaler.net/yalertunnel/YalerTunnel2-v2.3.2.src.tar.gz
    $ tar xfzmv YalerTunnel2-v2.3.2.src.tar.gz
    $ make
  4. Done. Now either enable Web access or SSH access.


Web access

Prerequisites

A Web server or service is running (per default) on the BeagleBone.

Enabling Web access on Angstrom

How to configure YalerTunnel on your BeagleBone to make a local Web service accessible from anywhere.

  1. Download the yalertunnel.service startup script
    $ curl -L http://s3.yaler.net/beaglebone/yalertunnel.service -o /lib/systemd/system/yalertunnel.service
  2. Create a symbolic link
    $ ln -s  /lib/systemd/system/yalertunnel.service /etc/systemd/system/multi-user.target.wants/yalertunnel.service
  3. Open the yalertunnel.service script with
    $ nano /lib/systemd/system/yalertunnel.service
    Check the path (default: /home/root/yalertunnel), set the port of the local Web service (default: 80), and set your relay domain
    1 [Unit]
    
    7 ExecStart=/home/root/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.

  4. Reboot your BeagleBone to run the script
    $ reboot
  5. Done. Now, see how to access your device from any Web browser or with Curl or from iOS or from Android (and resolve errors).

Disabling Web access on Angstrom

How to remove YalerTunnel to disable Web access from anywhere.

  1. Open a shell on your BeagleBone and type
    $ systemctl stop yalertunnel.service
    $ rm /etc/systemd/system/multi-user.target.wants/yalertunnel.service
    $ rm /lib/systemd/system/yalertunnel.service
    $ reboot


SSH access

Prerequisites

The SSH daemon sshd is running (per default) on the BeagleBone.

Enabling SSH access on Angstrom

How to configure YalerTunnel on your BeagleBone to allow SSH access from anywhere.

  1. Download the yalertunnel-ssh.service startup script
    $ curl -L http://s3.yaler.net/beaglebone/yalertunnel-ssh.service -o /lib/systemd/system/yalertunnel-ssh.service
  2. Create a symbolic link
    $ ln -s /lib/systemd/system/yalertunnel-ssh.service /etc/systemd/system/multi-user.target.wants/yalertunnel-ssh.service
  3. Open the yalertunnel-ssh.service script with
    $ nano /lib/systemd/system/yalertunnel-ssh.service
    Check the path (default: /home/root/yalertunnel), set the port of the local SSH service (default: 22), and set your relay domain
    1 [Unit]
    
    7 ExecStart=/home/root/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.

  4. Reboot your BeagleBone to run the script
    $ reboot
  5. Done. Now, see how to access your device with Putty or with SSH (for Linux, Mac OS X).

Disabling SSH access on Angstrom

How to remove YalerTunnel to disable SSH access from anywhere.

  1. Open a shell on your BeagleBone and type
    $ systemctl stop yalertunnel-ssh.service
    $ rm /etc/systemd/system/multi-user.target.wants/yalertunnel-ssh.service
    $ rm /lib/systemd/system/yalertunnel-ssh.service
    $ reboot


To enable Web and SSH access at the same time, or tunnel another protocol, please get in touch.


Creative Commons License This work by Yaler GmbH is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.