

Sorry, I didn’t specify in my original post but I did plan to use .internal for my domains. And I never planned to open my ports on my firewall either so that’s good to know. But I’m still having issues despite this…
Here’s my Caddyfile:
# DO NOT EDIT THIS FILE -- OPNsense auto-generated file
# caddy_user=root
# Global Options
{
log {
output net unixgram//var/run/caddy/log.sock {
}
format json {
time_format rfc3339
}
}
servers {
protocols h1 h2
}
email [redacted]
grace_period 10s
skip_install_trust
import /usr/local/etc/caddy/caddy.d/*.global
}
# Reverse Proxy Configuration
immich.homelab.internal {
handle {
reverse_proxy 192.168.10.247:2283 {
}
}
}
import /usr/local/etc/caddy/caddy.d/*.conf
Here’s my firewall config (I allowed any source IP to Destination “This Firewall” & port 443/80 on my LAN/VLANs):

Here’s my Caddy configs:


And I did make a wildcard domain override (*.homelab.internal) in Unbound with this config:
Host = *
Domain = homelab.internal
Type = IPv4
IP = 192.168.10.247
I can ping my server’s IP, nslookup the homelab.internal domain, and ping homelab.internal. So the regular DNS entry is working, I just can’t get my reverse proxy to work…
I’m not too worried about lack of tls/https for my websites rn, I just want to get working concept lol.
But thanks for the caddyfile, although I’m not sure I can use it since OPNsense seems to like to auto generate the config based on the settings in the UI.
I’ve narrowed down my issue a little more with the help of frongt@lemmy.zip, and I’ve established that:
Pinging immich.homelab.internal gets a response from the correct IP. When typing http://immich.homelab.internal/ or http://immich.homelab.internal:2283/ in browser I get an ERR_NAME_NOT_RESOLVED page.
If I curl http://immich.homelab.internal/, I get:
curl: (7) Failed to connect to immich.homelab.internal port 80 after 6 ms: Could not connect to serverIf I curl http://immich.homelab.internal:2283/, I do get the html of the site at least.
Through some digging through other people’s forum posts, I made sure to turn off https redirects (auto_https disable_redirects).
I definitely know that it’s failing because Caddy isn’t redirecting my services from port 80 to their upstream port (2283, 8006, etc.), but I don’t know why it won’t redirect, even when looking at logs…