OpenWRT router with dynamic DNS client (if you don't have a static IP) and OpenVPN server installed to connect to your network. SSH or maybe open source VNC to maintain your devices. don't use android or windows to login.
They are good solutions. I tried them. And they worked well.