OPNsense Forum

International Forums => German - Deutsch => Topic started by: Anderer on October 07, 2025, 12:21:40 PM

Title: Port-Einstellungen für Nextcloud hinter HAProxy
Post by: Anderer on October 07, 2025, 12:21:40 PM
Hallo zusammen,

ich brauche bitte nochmals Unterstützung - vermutlich bzgl. der Port-Einstellungen für Nextcloud hinter HAProxy auf OPNsense.

OPNsense wurde nochmals CLEAN installiert (im Wesentlichen nur IP-/Range geändert). Weiterhin wurde nur HAProxy strikt nach Tutorial installiert und 1 FW-Regel ergänzt: WAN, pass, in, first match, IPv4, TCP, Ports: 80, 443, Rest: beliebig. LE Zertifikat mit A+ sowie dynDNS von extern und intern funktionieren ohne Fehler.

Nextcloud wurde mit folgendem Befehl auf NAS heruntergeladen:

bash

sudo docker pull ghcr.io/nextcloud-releases/all-in-one:lates

Die Installation von Nextcloud AIO im Reverse-Proxy-Mode wurde mit folgendem Befehl gestartet:
bash

# Verwende NUR diesen offiziellen Befehl von [url=https://nextcloud.com/all-in-one/]https://nextcloud.com/all-in-one/[/url]

sudo docker run \
--init \
--sig-proxy=false \
--name nextcloud-aio-mastercontainer \
--restart always \
--publish 8080:8080 \
--env APACHE_PORT=11000 \
--env APACHE_IP_BINDING=0.0.0.0 \
--env SKIP_DOMAIN_VALIDATION=true \
--volume nextcloud_aio_mastercontainer:/mnt/docker-aio-config \
--volume /var/run/docker.sock:/var/run/docker.sock:ro \
ghcr.io/nextcloud-releases/all-in-one:latest

Die Installation wurde mit any_string.SUBDOMAIN.dedyn.io aufgerufen und komplett durchgeführt. Alle Container werden grün/running angezeigt. Username: admin, PASSWORD - alles sieht korrekt aus. Eigentlich sollte ich jetzt Nextcloud aufrufen können.

FEHLER: Wenn ich auf "Open your Nextcloud" klicke, dann wird das gleiche Fenster (https://nc.SUBDOMAIN.dedyn.io/containers) mit der Installation geöffnet. Im alten Fenster steht dann, dass nur 1 Instanz laufen kann. Wenn ich Nextcloud über https://192.168.50.8:8080 aufrufe kommt:  The login is blocked since Nextcloud is running. Please use the automatic login (https://github.com/nextcloud/all-in-one#how-to-easily-log-in-to-the-aio-interface) from your Nextcloud.  http://192.168.50.8:8080 ergibt "Bad Request".

Frage: gibt es Hinweise, welche Port-Einstellungen (z. B. wegen 11000 oder 443) noch vorgenommen werden müssen? Leider finde ich kein konkretes Tutorial, das meine Fragen beantworten und ich möchte auch ungern die Einstellungen durch Ausprobieren zerschießen. Dankeschön.

Meine Einstellungen in OPNsense bzg. Nextcloud:

Topologie:
WAN / Internet                 Telekom 225/47 Mbit/s
--------------
  |
  |       VDSL                
  |
.-+-----------.
|  FritzBox   |                172.168.178.1   Modem
'-+-----------'
  |
  |     WiFi-5
  |
.-+-----------.
|FritzRepeater|                172.168.178.17  Access-Point
'-+-----------'
  |
  |     1G LAN
  |
.-+-----------.             .- 172.168.178.5   Exposed Host (IPcv4+IPv6), sebständige Portfreigabe
|  OPNsense   |             |
'-+-----------'             '- 172.168.50.1/24 DHCP-Server, FW, Reverse Proxy, VPN
  |
  |   2.5G LAN
  |
.-+-----------.
|ASUS GT-BE98 |                172.168.50.2    Access-Point, kein DHCP-Server, keine FW, kein VPN
'-++++--------'
  ||||
  |||| 10G LAN
  ||||          .------------.
  |||+----------+DXP-480T NAS| 172.168.50.8   Netzlaufwerke, Nextcloud, Home Assistant etc.
  |||           '------------'
  |||  10G LAN
  |||           .------------.
  ||+-----------+  Notebook  | 172.168.50.4    Windows 11
  ||            '------------'
  ||  2.5G LAN
  ||            .------------.
  |+------------+  Clients   | 172.168.50.x    Mini PC, Notebook, NAS
  |             '------------'
  |     WiFi-7
  |             .------------.
  +-------------+  Clients   | 172.168.50.x    Tablet, Notebook, Smartphones, IoT (später: VLAN)
                '------------'
Title: Re: Port-Einstellungen für Nextcloud hinter HAProxy
Post by: viragomann on October 07, 2025, 02:22:37 PM
Quote from: Anderer on October 07, 2025, 12:21:40 PMFEHLER: Wenn ich auf "Open your Nextcloud" klicke, dann wird das gleiche Fenster (https://nc.subdomain.dedyn.io/containers (https://nc.subdomain.dedyn.io/containers)) mit der Installation geöffnet.
Was rufst du ursprünglich auf?

192.168.50.8 ist die Container IP bzw. die des Hosts?

Was ist, wenn du https://192.168.50.8:11000 aufruftst?

Der HAproxy Konfiguration oben kann ich nicht folgen. Kannst du bitte die Ausgabe von HAProxy: Config Export posten? Deine öffentliche IP und Domains kannst / solltest du natürlich ersetzen.
Title: Re: Port-Einstellungen für Nextcloud hinter HAProxy
Post by: Anderer on October 07, 2025, 02:43:47 PM
nc.SUBDOMAIN.dedyn.io um Nextcloud AIO Installation zu starten. Diese dynDNS habe ich dann auch während der Installation eingetragen, da NC damit aufgerufen werden soll.

Port 11000 hatte ich vor der Installation in den Einstellungen nicht berücksichtigt.

Ich konnte die  dynDNS oder https://192.168.50.8:8080 aufrufen. http://192.168.50.8:8080 funktionierte nicht.

Ich habe anschließend jeweils 2 Server, 2 Backend und 2 Mapfile Einträge für beide Ports erzeugt:
NC jeweils für Port 11000 (Apache) und
NC-AIO jeweils für Port 8080 (NC-AIO Installation)
Andere Backends habe ich mit "..." ausgeblendet. Die funktionierten problemlos.

Jetzt kann ich nur noch https://192.168.50.8:8080 aufrufen und ich würde die NC-AIO Installation nochmals komplett neu machen, finde jedoch keine klaren Angaben zu den Porteinstellungen.

Anonymisierte HAproxy Konfiguration:
#
# Automatically generated configuration.
# Do not edit this file manually.
#

global
    uid                         80
    gid                         80
    chroot                      /var/haproxy
    daemon
    stats                       socket /var/run/haproxy.socket group proxy mode 775 level admin
    nbthread                    8
    hard-stop-after             60s
    no strict-limits
    maxconn                     10000
    ocsp-update.mindelay 300
    ocsp-update.maxdelay 3600
    httpclient.resolvers.prefer   ipv4
    tune.ssl.default-dh-param   4096
    spread-checks               2
    tune.bufsize                16384
    tune.lua.maxmem             0
    log                         /var/run/log local0 info
    lua-prepend-path            /tmp/haproxy/lua/?.lua

defaults
    log     global
    option redispatch -1
    maxconn 5000
    timeout client 30s
    timeout connect 30s
    timeout server 30s
    retries 3
    default-server init-addr last,libc
    default-server maxconn 5000

# autogenerated entries for ACLs

# autogenerated entries for config in backends/frontends

# autogenerated entries for stats


# Frontend: 0_SNI_frontend (Listening on 0.0.0.0:80, 0.0.0.0:443)
frontend 0_SNI_frontend
    bind 0.0.0.0:443 name 0.0.0.0:443
    bind 0.0.0.0:80 name 0.0.0.0:80
    mode tcp
    default_backend SSL_backend

    # logging options

# Frontend: 1_HTTP_frontend (Listening on 127.4.4.3:80)
frontend 1_HTTP_frontend
    bind 127.4.4.3:80 name 127.4.4.3:80 accept-proxy
    mode http
    option http-keep-alive

    # logging options
    # ACL: NoSSL_condition
    acl acl_999adjrfkda9832:76863999 ssl_fc

    # ACTION: HTTPtoHTTPS_rule
    http-request redirect scheme https code 301 if !acl_999adjrfkda9832:76863999

# Frontend: 1_HTTPS_frontend (Listening on 127.4.4.3:443)
frontend 1_HTTPS_frontend
    http-response set-header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload"
    bind 127.4.4.3:443 name 127.4.4.3:443 accept-proxy ssl curves secp384r1 strict-sni  no-sslv3 no-tlsv10 no-tlsv11 no-tls-tickets ciphers ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES256-GCM-SHA384 ciphersuites TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256 alpn h2,http/1.1 crt-list /tmp/haproxy/ssl/999adjrfkda9832:76863999.certlist
    mode http
    option http-keep-alive

    # logging options
    # ACL: LOCAL_SUBDOMAINS_SUBNETS_condition
    acl acl_999adjrfkda9832:76863999 src 192.168.50.0/24

    # ACTION: LOCAL_SUBDOMAINS_rule
    use_backend %[req.hdr(host),lower,map_dom(/tmp/haproxy/mapfiles/999adjrfkda9832:76863999.txt)] if !acl_999adjrfkda9832:76863999
    # ACTION: PUBLIC_SUBDOMAINS_rule
    # NOTE: actions with no ACLs/conditions will always match
    use_backend %[req.hdr(host),lower,map_dom(/tmp/haproxy/mapfiles/999adjrfkda9832:76863999.txt)]

# Backend: SSL_backend ()
backend SSL_backend
    # health checking is DISABLED
    mode tcp
    balance source
    # stickiness
    stick-table type ip size 50k expire 30m 
    stick on src
    server SSL_server 127.4.4.3 send-proxy-v2 check-send-proxy

...

# Backend: NC_backend (Nextcloud Apache Backend)
backend NC_backend
    # health checking is DISABLED
    mode http
    balance source
    # stickiness
    stick-table type ip size 50k expire 30m 
    stick on src
    http-reuse safe
    server NC_server 192.168.50.8:11000 ssl verify none

# Backend: NC-AIO_backend (Nextcloud AIO Installation Backend)
backend NC-AIO_backend
    # health checking is DISABLED
    mode http
    balance source
    # stickiness
    stick-table type ip size 50k expire 30m 
    stick on src
    http-reuse safe
    server NC-AIO_server 192.168.50.8:8080 ssl verify none

# statistics are DISABLED
Title: Re: Port-Einstellungen für Nextcloud hinter HAProxy
Post by: viragomann on October 07, 2025, 02:58:28 PM
Quote from: Anderer on October 07, 2025, 02:43:47 PMPort 11000 hatte ich vor der Installation in den Einstellungen nicht berücksichtigt
Laut der oben geposteten Konfiguration hast du den Port angegeben:
Quote
Quote from: Anderer on October 07, 2025, 12:21:40 PM--env APACHE_PORT=11000 \
Und das ist der Port, an dem Nextcloud hören soll.
Also hast du diesen nun versucht aufzurufen?
Title: Re: Port-Einstellungen für Nextcloud hinter HAProxy
Post by: Anderer on October 07, 2025, 04:46:01 PM
Sorry, ich verstehe Folgendes nicht:


Wenn ich diese beiden Infos (1. + 3.) oder ggf. noch andere Hinweise hätte, dann würde ich Nextcloud nochmals neu installieren. Leider hatte ich kein Tutorial für Nextcloud hinter HAProxy gefunden, welches diese Fragen beantwortet.



Evtl. kommt noch ein ganz anderes Problem hinzu, aber dazu würde ich ggf. ein separates Ticket öffnen - hier nur zur Info:
Heute hat sich die öffentliche IP geändert und diese wurde (IPv4+6) NICHT in deSEC aktualisiert. Ich habe dann zunächst IPv4 manuell aktualisiert, dann IPv6 und danach beide (A und AAAA) Records gelöscht. Danach habe ich einen neuen Token erstellt, die Einträge aktualisiert und ein neues Zertifikat für *.SUBDOMAIN.dedyn.io ausgestellt. Das hat auf OPNsense funktioniert, ABER: in deSEC wurde der TOKEN angeblich NIE verwendet und ssllabs.com zeigt "Unable to connect to the server" und "no secure protocols supportet". Von extern komme ich auch nicht mehr auf meine dynDNS, sondern nur noch von intern. Gestern, vor der Installation von Nextcloud, hatte das alles funktioniert :-(

  
Title: Re: Port-Einstellungen für Nextcloud hinter HAProxy
Post by: viragomann on October 07, 2025, 05:15:47 PM
Quote from: Anderer on October 07, 2025, 04:46:01 PMServices: HAProxy: Settings: Real Servers
FRAGE: brauche ich 1.2 und 1.3 oder nur Port 8080 oder nur Port 11000?
Beides.
Auf 8080 lauscht der Master Container, auf 11000 die Nextcloud Instanz.

Quote from: Anderer on October 07, 2025, 04:46:01 PMServices: HAProxy: Settings: Virtual Services: Public Services
0_SNI_frontend, Listening on 0.0.0.0:80, 0.0.0.0:443
Falls noch nicht gemacht, musst du die OPNsense WebGUI auf einen anderen Port legen (System: Settings: Administration) und HTTP Redirect deaktivieren.

Quote from: Anderer on October 07, 2025, 04:46:01 PMFRAGE: Muss ich (bei Nextcloud) etwas anders einstellen wegen localhost 127.0.0.1 oder Apache IP Binding 0.0.0.0 ?
Im Container?
Weiß jetzt nicht, was du genau meinst. Der Server ist mit 0.0.0.0 an alle IP gebunden.
Wenn auf dem Host eine Firewall läuft, müssen die Ports 8080 und 11000 geöffnet werden.

Quote from: Anderer on October 07, 2025, 04:46:01 PMLeider hatte ich kein Tutorial für Nextcloud hinter HAProxy gefunden, welches diese Fragen beantwortet.
AIO benötigt eine besondere Konfiguration.
Reverse Proxy Documentation (https://github.com/nextcloud/all-in-one/blob/main/reverse-proxy.md#reverse-proxy-documentation)

Quote from: Anderer on October 07, 2025, 04:46:01 PMHeute hat sich die öffentliche IP geändert und diese wurde (IPv4+6) NICHT in deSEC aktualisiert.
Da sollte was im Log stehen.
Aber ein eigener Thread wäre angebracht. Ich verwende dynamisches DNS nicht mit OPNsense.
Title: Re: Port-Einstellungen für Nextcloud hinter HAProxy
Post by: Anderer on October 07, 2025, 05:42:45 PM
Quote from: viragomann on October 07, 2025, 05:15:47 PMBeides.
Auf 8080 lauscht der Master Container, auf 11000 die Nextcloud Instanz.
OK, Danke. Das habe ich (jedoch erst gestern nach der NC-AIO Installation) angelegt, aber ich habe im Docker nochmals alles komplett gelöscht und soeben NC-AIO neu intalliert.

Quote from: viragomann on October 07, 2025, 05:15:47 PMOPNsense WebGUI auf einen anderen Port legen (System: Settings: Administration) und HTTP Redirect deaktivieren.
Ja, beides entsprechend HAProxy Tutorial bereits erledigt.

Quote from: viragomann on October 07, 2025, 05:15:47 PMWenn auf dem Host eine Firewall läuft, müssen die Ports 8080 und 11000 geöffnet werden.
Eine Firewall läuft eigentlich nur auf OPNsense - oder ggf. auf dem Notebook. Auf dem NAS ist die FW jedenfalls deaktiviert.
Meine OPNsense FW hat nur 1 zusätzliche Regel (seit CLEAN bzw. "out-of-the-box"):
WAN, pass, in, first match, IPv4, TCP, Ports: 80, 443, Rest: beliebig


ich dachte, dass die Ports gerade nicht geöffnet werden sollen und es deshalb HAProxy gibt, aber ich bin da ziemlich weit am Anfang.

Quote from: viragomann on October 07, 2025, 05:15:47 PMAIO benötigt eine besondere Konfiguration.
Reverse Proxy Documentation (https://github.com/nextcloud/all-in-one/blob/main/reverse-proxy.md#reverse-proxy-documentation)
Ja, ich habe mich an folgende Doku etc. strikt gehalten, soweit ich es verstanden hatte:


Jetzt kann ich die Installation nur über https://192.168.50.8:8080 aufrufen (aber nicht über dynDNS) und würde OPNsense per Snapshot auf den Stand von gestern zurücksetzen, das Zertifikat nochmals ausstellen und dynDNS testen, dann die Services in HAProxy ergänzen und Nextcloud-AIO Installation nochmals starten.


Title: Re: Port-Einstellungen für Nextcloud hinter HAProxy
Post by: viragomann on October 07, 2025, 05:53:13 PM
Quote from: Anderer on October 07, 2025, 05:42:45 PMFRAGE: muss ich hier Port 11000 ergänzen oder kommen nur 80 und 443 von extern, da 8080 und 11000 nur im LAN bzw. über HAProxy läuft?
Am WAN ist nur 80 und 443 zu öffnen.
Auf 8080 und 11000 lauschen die AIO Container, das eigentlich Backend.

HAproxy sollte über https://192.168.50.8:11000 auf die Nextcloud zugreifen (Backend / Real Server Konfiguration). Danach habe ich vor 5 Posts gefragt.
Und über https://192.168.50.8:8080 auf den Master Container / Administration.

Quote from: Anderer on October 07, 2025, 05:42:45 PMwürde OPNsense per Snapshot auf den Stand von gestern zurücksetzen
Das geht feiner in System: Configuration: History.
Title: Re: Port-Einstellungen für Nextcloud hinter HAProxy
Post by: Anderer on October 07, 2025, 06:14:00 PM
Quote from: viragomann on October 07, 2025, 05:53:13 PMHAproxy sollte über https://192.168.50.8:11000 (https://192.168.50.8:11000/) auf die Nextcloud zugreifen (Backend / Real Server Konfiguration). Danach habe ich vor 5 Posts gefragt
Sorry, ich dachte, dass ich es auch mehrfach beantwortet habe, aber evtl. missverständlich. Anbei noch ein PrintScreen.
ich habe beide Server, Backends und Map File Einträge angelegt.

Quote from: viragomann on October 07, 2025, 05:53:13 PMDas geht feiner in System: Configuration: History.
Danke für den Hinweis! Das schaue ich mir jetzt an