-
Notifications
You must be signed in to change notification settings - Fork 275
Monitoring FullpageOS devices
If you have multiple devices running FullpageOS (e.g. kiosks, displays, dashboards etc.), you might need to monitor them remotely for issues from time to time.
RaspberryPi Monitor Dashboard can help with that. It allows monitoring unlimited number of devices. It is easy to install and requires just a simple Python script that runs on each FullpageOS device. You have a central dashboard for monitoring stats such as temperature, CPU load, free memory and it can even post a screenshot to the dashboard, so you have visual control.
If you only need remote access and you have a public server or dyndns, you an use autossh to maintain a persistent connection. If you have many devices this will stop scaling because you have to remember which devices are on which ports, but for a few this could work out.
- On your jump host
- Create a user
iotwith/usr/sbin/nologinas shell and lock it usingusermod -L iot - Restrict what the iot user can do in your sshd_config:
Match User iot AllowTcpForwarding yes AllowAgentForwarding no X11Forwarding no PermitTunnel no PermitTTY no ForceCommand echo "Port forwarding only" GatewayPorts no
- Create a user
- On your pi device:
apt-get install autossh- Generate keys (ssh-keygen) and add it to your jump host's
~iot/.ssh/authorized_keys. Make sure permissions are correct. - Test autossh is working using the
ExecStartcommandline from below - Set up a systemd service at
/etc/systemd/system/autossh.service
[Unit] Description=Persistent SSH tunnel using autossh After=network-online.target Wants=network-online.target [Service] Type=simple User=pi # Change this to your non-root username Environment=AUTOSSH_GATETIME=0 ExecStart=/usr/bin/autossh -M 0 -N -T -o ServerAliveInterval=30 -o ServerAliveCountMax=3 -o ExitOnForwardFailure=yes -R 2222:localhost:22 iot@jumphost.example.com Restart=always RestartSec=10 [Install] WantedBy=multi user.target
sudo systemctl daemon reloadsudo systemctl enable autossh.servicesudo systemctl start autossh.service
- To connect:
- ssh into your jump host
-
ssh pi@localhost -p 2222# Replace pi with your username - Alternatively, you can use
ProxyJumpto connect directly from your machine by adding this your~/.ssh/config:Host my-remote-pi User pi # Change this ProxyJump myjumphost.example.com Hostname localhost Port 2222