I read this before posting. I hope my question is on-topic here.
I'm working on an almost-IoT device that has a limited interaction with the Internet. Let's think about an "offline" product (say a lamp just as an example) with a module to expand some functions on the network.
Basically, it can exchange data on the LAN with other devices, it is connected to the Internet to retrieve the current datetime (NTP) and for firmware upgrade (not implemented yet).
But it also provides a webserver for user configuration and interaction. Although it is intended to be used inside a LAN, I cannot do anything if a user forward a port on its own router to access the web page from outside the LAN.
To avoid the more complexity about HTTPS, I was told to implement an HTTP server. But I wonder if this is acceptable for a commercial product, even within the specific context described above.
Eventually, my questions are:
- is it acceptable to use HTTP for a device potentially connected outside a LAN?
- if it's better/mandatory to go with HTTPS, is it acceptable to use self-signed certificates or we have to buy a "real" certificate?
I read this question, but the scenario is a bit different.
My concern is not limited about what a malicious user can do if he gain the access to the device only (he can turn on/off the lamp!) but if he can do anything bad on other devices too using ours as starting point.