Ich versuche gerade meinen NGINX Proxy Manager mit Caddy abzulösen.
Wenn ich Caddy starte, bekomme ich folgenden Fehler im Log:
"warn","ts":"2025-05-18T10:38:13Z","logger":"http.auto_https","msg":"server is listening only on the HTTP port, so no automatic HTTPS will be applied to this server","server_name":"srv1","http_port":80}
Schau in /var/log/caddy/caddy.log nach.
Halte dich an die Anleitung dann klappt es wahrscheinlich:
https://docs.opnsense.org/manual/how-tos/caddy.html#prepare-opnsense-for-caddy-after-installation
Im Log steht folgendes:
{"level":"info","ts":1747564888.5042763,"msg":"using config from file","file":"/usr/local/etc/caddy/Caddyfile"}
{"level":"warn","ts":1747564888.504377,"msg":"No files matching import glob pattern","pattern":"/usr/local/etc/caddy/caddy.d/*.layer4listener"}
{"level":"warn","ts":1747564888.5043943,"msg":"No files matching import glob pattern","pattern":"/usr/local/etc/caddy/caddy.d/*.layer4global"}
{"level":"warn","ts":1747564888.5044076,"msg":"No files matching import glob pattern","pattern":"/usr/local/etc/caddy/caddy.d/*.global"}
{"level":"warn","ts":1747564888.5044427,"msg":"No files matching import glob pattern","pattern":"/usr/local/etc/caddy/caddy.d/*.conf"}
{"level":"info","ts":1747564888.5054502,"msg":"adapted config to JSON","adapter":"caddyfile"}
{"level":"info","ts":1747564888.505937,"msg":"redirected default logger","from":"stderr","to":"unixgram//var/run/caddy/log.sock"}
Error: loading initial config: loading new config: http app module: start: listening on :443: listen tcp :443: bind: address already in use
Error: caddy process exited with error: exit status 1
{"level":"info","ts":1747565211.815949,"msg":"using config from file","file":"/usr/local/etc/caddy/Caddyfile"}
{"level":"warn","ts":1747565211.8160388,"msg":"No files matching import glob pattern","pattern":"/usr/local/etc/caddy/caddy.d/*.layer4listener"}
{"level":"warn","ts":1747565211.8160534,"msg":"No files matching import glob pattern","pattern":"/usr/local/etc/caddy/caddy.d/*.layer4global"}
{"level":"warn","ts":1747565211.8160672,"msg":"No files matching import glob pattern","pattern":"/usr/local/etc/caddy/caddy.d/*.global"}
{"level":"warn","ts":1747565211.8160834,"msg":"No files matching import glob pattern","pattern":"/usr/local/etc/caddy/caddy.d/*.conf"}
{"level":"info","ts":1747565211.817014,"msg":"adapted config to JSON","adapter":"caddyfile"}
{"level":"info","ts":1747565211.8173897,"msg":"redirected default logger","from":"stderr","to":"unixgram//var/run/caddy/log.sock"}
Error: loading initial config: loading new config: http app module: start: listening on :80: listen tcp :80: bind: address already in use
Error: caddy process exited with error: exit status 1
Das habe ich mir schon fast gedacht.
Kann ich irgendwie nachgucken was diese Ports benutzt.
Die WebGUI läuft bereits auf einem anderen Port.
Problem ist gelöst, man sollte die Anleitung richtig lesen.
Enable the checkbox for HTTP Redirect - Disable web GUI redirect rule.
Das hatte ich nicht gemacht.
Super :)
Ich habe das gleiche Problem, nur tritt es nach jedem Neustart auf. Trotz der aktivierten Checkbox bei ,,HTTP Redirect – Disable web GUI redirect rule" kann Caddy nicht gestartet werden. Wenn ich die Checkbox entferne, OPNsense neu starte und die Checkbox anschließend wieder setze, ist Port 80 frei und ich kann Caddy starten.
Da ich am Anfang die Vermutung hatte, dass das UI die Konfiguration nicht richtig speichert/überträgt, habe ich auch im Config-File nachgeschaut, das ebenfalls i. O. aussieht.
<webgui>
<protocol>https</protocol>
<port>55443</port>
<ssl-ciphers/>
<interfaces/>
<compression/>
<althostnames>....</althostnames>
<authmode>Local Database</authmode>
<ssl-certref>....</ssl-certref>
<ssl-hsts>1</ssl-hsts>
<disablehttpredirect>1</disablehttpredirect>
</webgui>
Hat jemand eine Idee, woran es liegen könnte?
was sagt denn "sockstat -l" nach einem neustart (bevor irgendwas gestartet/geändert wurde)
Hier "sockstat -l" nach einem Neustart ohne Änderungen (Caddy läuft nicht)
USER COMMAND PID FD PROTO LOCAL ADDRESS FOREIGN ADDRESS
www httpd 42342 3 tcp6 *:80 *:*
www httpd 42342 4 tcp4 *:80 *:*
www httpd 40505 3 tcp6 *:80 *:*
www httpd 40505 4 tcp4 *:80 *:*
www httpd 40440 3 tcp6 *:80 *:*
www httpd 40440 4 tcp4 *:80 *:*
www httpd 40434 3 tcp6 *:80 *:*
www httpd 40434 4 tcp4 *:80 *:*
www httpd 39886 3 tcp6 *:80 *:*
www httpd 39886 4 tcp4 *:80 *:*
www httpd 14759 3 tcp6 *:80 *:*
www httpd 14759 4 tcp4 *:80 *:*
www httpd 70992 3 tcp6 *:80 *:*
www httpd 70992 4 tcp4 *:80 *:*
www httpd 616 3 tcp6 *:80 *:*
www httpd 616 4 tcp4 *:80 *:*
www httpd 234 3 tcp6 *:80 *:*
www httpd 234 4 tcp4 *:80 *:*
www httpd 99553 3 tcp6 *:80 *:*
www httpd 99553 4 tcp4 *:80 *:*
root httpd 95116 3 tcp6 *:80 *:*
root httpd 95116 4 tcp4 *:80 *:*
Ich habe herausgefunden, dass Port 80 von Apache 2.4 (httpd) belegt wird. Warum dieser installiert ist und beim Systemstart gestartet wird, ist mir unklar. Möglicherweise ein Überbleibsel eines Plugins.