The answer for this oddity is within the systemd unit file.
From the documentation:
Takes a boolean argument or the special values “full
” or “strict
”. If true, mounts the /usr
and /boot
directories read-only for processes invoked by this unit. If set to “full
”, the /etc
directory is mounted read-only, too.
– systemd.exec
Immediately after that, we have this line:
Which explicitly grants Caddy the ability to read and write to this directory only. So regardless of the permissions on the host, systemd has made it impossible to write in /etc
outside of that location.