1. The problem I’m having:
I have Caddy set up as a reverse proxy for a couple of services I run on my home network so I only have to open port 443 on my router. Sometimes, my qBittorrent instance gets these drive-by login attempts (they just try the default login a bunch of times) and because of the repeat failed login attempts, the source IP for those attempts gets banned for an hour. This is great, except that qBittorrent thinks that the IP address for all attempted connections is my Caddy host’s IP, which means that I get locked out for an hour too! Is there any way to configure Caddy so that my qBittorrent instance sees the requests as coming from their actual original IP?
2. Error messages and/or full log output:
This isn’t really an error, I think I just need some guidance on my configuration. I can provide this info if you think it’ll be relevant though.
3. Caddy version:
v2.10.0
4. How I installed and ran Caddy:
Installed from apt, run as a systemd service
a. System environment:
Ubuntu 24.04.2 LTS
b. Command:
This is the ExecStart line in my systemd service
ExecStart=/usr/bin/caddy run --environ --config /etc/caddy/Caddyfile
c. Service/unit/compose file:
See above
d. My complete Caddy config:
{
email [REDACTED]
debug
}
jellyfin.[MY_DOMAIN].ca {
reverse_proxy 192.168.0.100:8096
handle_errors {
respond "Jellyfin: {client_ip}: {err.status_code} {err.status_text}"
}
}
qbt.[MY_DOMAIN].ca {
reverse_proxy 192.168.0.100:8113
handle_errors {
respond "qBittorrent: {err.status_code} {err.status_text}"
}
}