Join Kasa and Tapo devices to your network without a TP-Link account

You’re telling me I need yet another account to use my Tapo and Kasa “smart” devices? Thanks, but no thanks. Here’s how to connect these to your Wi-Fi network without giving out personal information. This post assumes you have a Home Assistant instance up and running to manage your IoT devices. Install python-kasa pip install python-kasa Join device to your home network Some devices might require authentication, mine does not. Scan for Wi-Fi access points: ...

October 23, 2025 · (updated November 26) · 3 min · Anh Minh PHO

Restrict subdomain access to LAN only with Caddy

There are subdomains on my home network that I only want accessible locally. While there are no public DNS records pointing to them, the URLs are still visible thanks to Certificate Transparency, and I want to add a layer of security just to be sure. Here’s where Caddy snippets are convenient to block all WAN traffic for select subdomains. The following snippet in my Caddyfile blocks all traffic coming from outside the subnets after remote_ip, in the blocks where it’s used. ...

September 29, 2025 · (updated December 2) · 1 min · Anh Minh PHO

Caddy HTTPS with the OVH DNS plugin

I’ve recently started using subdomains for services I only access locally. I want Caddy to serve them through HTTPS so I don’t get annoying warnings about the connection being insecure, while blocking access from WAN just to be extra safe, which I cover here. The thing is, port 80 is not forwarded on my router, which is required for the ACME HTTP-01 challenge. I also don’t want a DNS record for my private subdomains to appear publicly (I use the hosts file in my router to provide DNS resolution locally). EDIT: Certificate Transparency is a thing… Thank you Laurent! ...

September 26, 2025 · (updated October 18) · 2 min · Anh Minh PHO