I'm working on a project that tries to replace cloud-based services used by home devices with a server running locally. The goal is to make the devices usable without depending on outside vendors or internet access. I recently published an early version of the project and would really appreciate feedback on whether the idea is technically practical, what limitations I should expect, and what I should improve. I'm not a professional programmer, so much of it was built experimentally, but I think it could become a useful project. One concern I've already encountered is whether devices will accept a local server when they expect HTTPS and a certificate from the original cloud service.
1 Answer
This approach can work for some devices, especially when you can reproduce the API calls and control the local network. The biggest obstacle is usually TLS certificate verification: many devices expect a specific hostname and certificate, so simply pointing them at a different local server may cause the connection to fail. You may also need to reproduce authentication, request formats, firmware behavior, and any cloud-side logic the device depends on.
Only if the device allows it or you control its trust store or firmware. In many cases, certificate pinning or a fixed vendor certificate prevents an ordinary replacement. It’s generally better to use a locally trusted certificate with the expected hostname, where possible, rather than trying to break the device’s security checks.

Could the TLS certificate verification be bypassed or replaced so the device accepts the local server?