The PIs are all imaged off the same SD card. The only difference is the Mac Address / CPU ID. I monitor them with a python script that pings my webserver on a regular basis to upload data.
The problem is, its one-way communication and sometimes the units stop responding and I have to go out in the field and plug in a keyboard. Half the time, if I could just SSH in, I could fix it from home.
Remote services are too expensive once you start getting into 10+ units. This should be simple but I can't seem to wrap my head around it. Should I create a Bastion host that all the units log in to? would that even allow me to tunnel in?
Do I need to set up some kind of SSH hub?
This is a bit on the DevOps edge of my knowledge, which is mostly system design and app development.