Using jd to Manage Caddy Configuration

Caddy is a powerful, extensible server written in go. Though its native configuration format is json, it supports Caddyfile which is very easy to write. For the majority of use cases, caddy’s default configuration is enough. For power users, however, some configurations are not exposed in Caddyfile and must be set using json. Because caddy config uses json format, we can use tools that modify json to produce caddy config....

published on June 19, 2023 · 2 min · 369 words

Http3 Demo

This post first demonstrates http1, http2, http3 like akamai, then shows how the demo works. Demonstrations info Firefox has a bug/feature that it will cache images even though instructed not to. Use another browser or hard refresh to rerun the tests. HTTP1 Click to test http1 HTTP2 Click to test http2 HTTP3 info If the image is gray, http3 is not used. There are several reasons why this may happen:...

published on May 17, 2023 · last edited on August 10, 2023 · 3 min · 443 words

Writing a Forward Auth for ttyd

Background ttyd is a simple tool for sharing terminal over the web. It can be used in place of ssh clients to manage remote servers as it only requires the presence of a browser with internet connectivity. It can be used with a variety of commands ranging from showing the output of top command to fully interactive bash session. However, ttyd itself only supports basic auth and auth proxy. In basic auth mode, ttyd authenticates requests from a predefined list of users....

published on February 28, 2023 · last edited on April 21, 2023 · 5 min · 940 words