|
| 1 | +--- |
| 2 | +title: Casual commercial surveillance |
| 3 | +style: fill |
| 4 | +color: info |
| 5 | +description: Installing and configuring a simple home surveillance camera |
| 6 | +--- |
| 7 | + |
| 8 | +Let's explore practical and secure low-cost home surveillance options. |
| 9 | + |
| 10 | +--- |
| 11 | + |
| 12 | +# Introduction |
| 13 | + |
| 14 | +After weighing many options — **DIY Raspberry Pi cameras**, **solar IP cams**, **commercial "plug-and-play" cameras**, even **contracted surveillance services** — this post kicks off a small series about *realistic, budget-friendly home surveillance setups*. |
| 15 | + |
| 16 | +In this first entry, I'll cover the **"casual commercial"** route: an off-the-shelf Wi-Fi camera one can find [online](https://es.aliexpress.com/i/1005009621892310.html) (I bought it on Wallapop), managed entirely through a mobile app. |
| 17 | + |
| 18 | +Other (future) posts will cover the DIY (RasPi Cam) and solar setups, among others. |
| 19 | + |
| 20 | +--- |
| 21 | + |
| 22 | +# The device: a V720 E27-type camera |
| 23 | + |
| 24 | +I picked up a **cheap 10 € E27 screw-base camera** (light-bulb style) on Wallapop. |
| 25 | +It connects to the **V720 app**, made by *广州钱柜物联科技有限公司*, which has **5 M+ downloads**. |
| 26 | + |
| 27 | + |
| 28 | + |
| 29 | +--- |
| 30 | + |
| 31 | +## What I discovered when connecting it |
| 32 | + |
| 33 | +Setup was simple: connect the camera to the 2.4 GHz Wi-Fi and link it in the app. |
| 34 | +From my router's web panel (`http://192.168.1.1/`) I noticed the camera runs **RT-Thread**, a lightweight real-time OS used in many IoT devices. |
| 35 | + |
| 36 | + |
| 37 | + |
| 38 | +--- |
| 39 | + |
| 40 | +## Security observations |
| 41 | + |
| 42 | +While convenient, these low-cost cameras share a few recurring issues: |
| 43 | + |
| 44 | +* Default or weak passwords. |
| 45 | +* Cloud connections to unknown third-party servers. |
| 46 | +* Outdated firmware or hidden backdoors. |
| 47 | +* Unencrypted local services (HTTP / RTSP) and risky UPnP behavior. |
| 48 | + |
| 49 | + |
| 50 | + |
| 51 | +--- |
| 52 | + |
| 53 | +# Options I considered |
| 54 | + |
| 55 | +1. **Just connect it to my main Wi-Fi.** |
| 56 | + – Fast and easy, but it exposes my entire home network to any camera flaw. |
| 57 | + |
| 58 | +2. **Use an ESP32 as an isolated gateway.** |
| 59 | + – Cool idea on paper (camera → ESP32 → router), |
| 60 | + but **not worth it in practice**: the ESP32 lacks true routing/firewall features, |
| 61 | + and adding it can *increase* the attack surface. |
| 62 | + |
| 63 | + > **Note:** I dropped this approach after testing; the ESP32 is great for prototyping, |
| 64 | + > but not for continuous IoT video bridging and a vulnerability dressed as an isolating gateway. |
| 65 | +
|
| 66 | +3. **Network isolation at the router level.** |
| 67 | + – The solution I kept: manage everything from the router, |
| 68 | + creating a dedicated network just for cameras. |
| 69 | + |
| 70 | +--- |
| 71 | + |
| 72 | +# Router configuration |
| 73 | + |
| 74 | +Accessed via `http://192.168.1.1/` |
| 75 | +(First step: changed the default credentials to a strong, unique password.) |
| 76 | + |
| 77 | + |
| 78 | + |
| 79 | +### Recommended steps to apply |
| 80 | + |
| 81 | +1. **Changed the admin credentials.** |
| 82 | + It is important to never leave factory defaults active. |
| 83 | + |
| 84 | +2. **Disabled remote / WAN management.** |
| 85 | + The admin panel must be accessible only from inside the LAN. |
| 86 | + |
| 87 | +3. **Updated the router firmware.** |
| 88 | + Critical for patching known vulnerabilities. |
| 89 | + |
| 90 | +4. **(Optional) Created a dedicated "Camera" SSID / VLAN.** |
| 91 | + Devices on this network can't see my laptops or phones. |
| 92 | + *Client / AP isolation enabled.* |
| 93 | + |
| 94 | +5. **(Optional) Blocked Internet access for that VLAN.** |
| 95 | + Only local communication with my NVR is allowed. |
| 96 | + |
| 97 | +6. **Disabled UPnP and WPS.** |
| 98 | + These can open ports or pair devices automatically — unsafe defaults. |
| 99 | + |
| 100 | +7. **Forced WPA2 / WPA3 encryption.** |
| 101 | + Using a long, unique passphrase. |
| 102 | + |
| 103 | +--- |
| 104 | + |
| 105 | +## (Optional) Basic firewall rules (concept) |
| 106 | + |
| 107 | +The goal would be the following: |
| 108 | + |
| 109 | +* **Deny all** outbound traffic from the camera network to the Internet. |
| 110 | +* **Allow only** camera → NVR (local) traffic. |
| 111 | + |
| 112 | +```bash |
| 113 | +# Example (OpenWRT / iptables) |
| 114 | +iptables -I FORWARD -s 192.168.3.0/24 -o eth0 -j REJECT |
| 115 | +iptables -I FORWARD -s 192.168.3.0/24 -d 192.168.1.100 -p tcp --dport 554 -j ACCEPT |
| 116 | +``` |
| 117 | + |
| 118 | +> **Tip:** order matters — specific ALLOWs first, then the general DENY. |
| 119 | +
|
| 120 | +--- |
| 121 | + |
| 122 | +## Optional: Cellular connectivity, motion detection & edge AI |
| 123 | + |
| 124 | +Besides using local Wi-Fi, it's also possible to equip or pair the camera with **cellular connectivity** (SIM card via 4G/LTE, NB-IoT, or LTE-M). This allows recording or sending alerts even when Wi-Fi is down — or as a fully independent channel. |
| 125 | + |
| 126 | +### Technical overview |
| 127 | + |
| 128 | +A setup like this can work with: |
| 129 | + |
| 130 | +* A **cellular module** connected to the camera or to a small **gateway** (ESP32, Raspberry Pi, etc.). |
| 131 | +* A **local buffer** to store short clips or frames before upload. |
| 132 | +* **Motion detection** handled locally (basic pixel-difference or bounding-box detection). |
| 133 | + |
| 134 | +This way, one can run a **lightweight AI model** (e.g., TinyYOLO, MobileNet-SSD...) to filter out irrelevant motion — only sending alerts when humans or unusual objects are detected, nested with a simple alert system can send photos directly via Telegram, e.g.: |
| 135 | + |
| 136 | +``` |
| 137 | +https://api.telegram.org/bot<YOUR_TOKEN>/sendPhoto?chat_id=<CHAT_ID>&photo=<FILE> |
| 138 | +``` |
| 139 | + |
| 140 | +Or other push alerts like Firebase or Pushover. |
| 141 | + |
| 142 | +--- |
| 143 | + |
| 144 | +## Legal note (Spain) |
| 145 | + |
| 146 | +Under Spanish and EU privacy law (AEPD guidelines), **indoor home cameras** used strictly within your private property are generally considered **domestic use**. |
| 147 | +That means: |
| 148 | + |
| 149 | +* No need for a public notice sign if the camera doesn't record public areas or neighbors. |
| 150 | +* Don't capture audio conversations or external zones (street, shared areas). |
| 151 | +* Community or business installations do require signage and compliance with full GDPR/LOPD protocols. |
| 152 | + |
| 153 | +*Summary:* |
| 154 | + |
| 155 | +> If your camera records only inside your home and doesn't capture other people's private areas or the public street, you're typically not required to display a surveillance notice. |
| 156 | +> Always disable audio recording and maintain secure access credentials. |
| 157 | +
|
| 158 | +--- |
| 159 | + |
| 160 | +## Power setup: light socket or dedicated outlet |
| 161 | + |
| 162 | +Currently, the camera is powered from an **existing E27 light socket**, which provides 230 V AC. It's a simple plug-and-play setup since the device behaves like a standard bulb. |
| 163 | + |
| 164 | +### Electrical basics (Spain / EU) |
| 165 | + |
| 166 | +* **Voltage:** 230 V AC, 50 Hz |
| 167 | +* **Phase (L):** brown/black — live |
| 168 | +* **Neutral (N):** blue — return |
| 169 | +* **Earth (PE):** green/yellow — safety ground |
| 170 | + |
| 171 | +The camera consumes aprox. 5.8 W and internally converts AC to DC. The **earth** wire doesn't carry current — it's purely a safety path in case of faults. |
| 172 | + |
| 173 | +### Moving the camera elsewhere |
| 174 | + |
| 175 | +One can extend power from a nearby junction box: |
| 176 | + |
| 177 | +1. Take **L and N** from a lighting circuit (10 A breaker). |
| 178 | +2. Add **PE** to the new socket or metal housing. |
| 179 | +3. Use an **insulated enclosure** for connections. |
| 180 | +4. Test polarity and insulation before re-energizing. |
| 181 | + |
| 182 | +> **Safety tip:** Work only with the circuit powered off with electrical insulating gloves (**IEC 60903**). |
| 183 | +> Permanent wiring must comply with Spain's **REBT** standard (grounding, RCD protection, proper insulation, etc.). |
| 184 | +
|
| 185 | +### Practical alternative |
| 186 | + |
| 187 | +Of course, if one doesn't want to modify the fixed wiring: |
| 188 | + |
| 189 | +* Use a **lamp extension with a switch**, or |
| 190 | +* An **E27-to-Schuko adapter** plugged into a standard outlet. |
| 191 | + |
| 192 | +--- |
| 193 | + |
| 194 | +# Conclusion |
| 195 | + |
| 196 | +## Results and impressions |
| 197 | + |
| 198 | +* The camera now works securely **remotely** an the configuration is local. |
| 199 | +* The main home network stays partially **isolated and safe**. |
| 200 | + |
| 201 | +> For a 10 € gadget, it does its basic job fine — |
| 202 | +> as long as it's treated as an *inherently untrusted device*. |
| 203 | +> Isolation is the single most effective control. |
| 204 | +
|
| 205 | +Among all considered approaches, the **commercial Wi-Fi camera + router-level isolation** may represent the best balance between **cost, convenience, and security**. |
| 206 | + |
| 207 | +> Upcoming posts will explore: |
| 208 | +> – A solar-powered standalone camera build. |
| 209 | +> – A fully local encrypted Raspberry Pi camera. |
| 210 | +> – Integration with Home Assistant/AI/IoT through VPN access. |
| 211 | +
|
| 212 | +Finally, Ojoloco looks like this: |
| 213 | + |
| 214 | + |
| 215 | + |
| 216 | + |
| 217 | + |
| 218 | +--- |
| 219 | + |
| 220 | +# References |
| 221 | + |
| 222 | +* Router login / credentials guides: |
| 223 | + [https://router-network.com/zte-router-login](https://router-network.com/zte-router-login) |
| 224 | + [https://bandaancha.eu/foros/zte-zxhn-f6640-contrasena-administracion-1750092](https://bandaancha.eu/foros/zte-zxhn-f6640-contrasena-administracion-1750092) |
| 225 | + |
| 226 | +* RT-Thread camera discussion: |
| 227 | + [Popular A9 Mini Wi-Fi Camera & the HA Challenge – Home Assistant Community](https://community.home-assistant.io/t/popular-a9-mini-wi-fi-camera-the-ha-challenge/230108?page=8) |
| 228 | + |
| 229 | +* General home-network hardening: |
| 230 | + – CISA guidelines (UPnP / IoT) |
| 231 | + – Consumer Reports: Use WPA3 & keep firmware updated |
| 232 | + |
| 233 | +* [AEPD Guides](https://www.aepd.es/en/guides-and-tools/guides) |
| 234 | + |
| 235 | +* [Popular A9 Mini Wi-Fi Camera & the HA Challenge – Home Assistant Community](https://community.home-assistant.io/t/popular-a9-mini-wi-fi-camera-the-ha-challenge/230108?page=8) |
0 commit comments