Attach a USB drive for extra disk space, and turn your router into a
web server. The default server included in CeroWRT, ‘lighttpd’,
supports multihoming, URL rewriting, and CGI scripting; the Lua
language is installed by default, and Python can be added easily. (I
have a CeroWRT router hosting two websites with CGI, using an 8G
thumb drive for storage space.)
Run an authoritative DNS server – it supports dynamic DNS and fully
automatic DNSSEC signing. (The same CeroWRT router hosts about a
dozen signed domains.)