[GELÖST] Nextcloud Client Probleme

Du hast Fragen oder ein Problem bei der Installation.....
Einfach Fragen.
Wenn du Fragen zu einem Programm hast das nicht Bestandteil des Skripts ist benutz bitte den Bereich Userprojekte viewforum.php?f=33
Antworten
sebkorn
User
User
Beiträge: 9
Registriert: Fr 20. Aug 2021, 10:50

[GELÖST] Nextcloud Client Probleme

Beitrag von sebkorn »

Hallo allerseits,

ich habe meine Nextcloud via Portfreigabe nach außen freigegeben und über eine Subdomain erreichbar gemacht (nextclud.XXX.de). Via trafeik und letsencrypt habe ich versucht ein Zertifikat zu erstellen, was leider aber nicht wirklich funktioniert hat (Im Browser bekomme ich noch immer Warnmeldungen). Das ist zwar nicht schön, wäre aber nicht weiter dramatisch.

Hauptroblem: Wenn ich meinen Laptop mit dem offiziellen Nextcloud Client mit meiner Cloud verbinden möchte kommt die Fehlermeldung "Die Polling-URL beginnt nicht mit HTTPS, obwohl die Anmelde-URL mit HTTPS beginnt. Die Anmeldung ist nicht möglich, da dies ein Sicherheitsproblem darstellen könnte. [...]".
Ich hab leider bisher keine Lösung dafür gefunden. Aktuell sieht die Docker-Compose für Trafik folgendermaßen aus:

Code: Alles auswählen

  traefik:
    image: traefik:v2.4
    container_name: traefik
    restart: unless-stopped
    ports:
      # - "80:80" # as internal http
      - "591:591" # as external http
      - "2280:8080" # config port
      - "443:443" # external https
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:ro
      - ./volumes/traefik/traefik/:/etc/traefik/
      - ./volumes/traefik/letsencrypt:/letsencrypt
    logging:
      options:
        max-size: "5m"
        max-file: "3"
Der relevante Nextcloudteil sieht folgendermaßen aus:

Code: Alles auswählen

    ports:
      - "8080:80"
    labels:
      - traefik.enable=true
      - traefik.http.routers.nextcloud.middlewares=nextcloud,nextcloud_redirect
      - traefik.http.routers.nextcloud.tls.certresolver=letsEncrypt
      - traefik.http.routers.nextcloud.rule=Host(`nextcloud.XXX.de`)
      - traefik.http.routers.nextcloud.entrypoints=web, web-secured
      - traefik.http.routers.nextcloud.tls=true
      - traefik.http.middlewares.nextcloud.headers.stsSeconds=15552000
      - traefik.http.middlewares.nextcloud.headers.stsPreload=true
      - traefik.http.middlewares.nextcloud_redirect.redirectregex.permanent=true
      - traefik.http.middlewares.nextcloud_redirect.redirectregex.regex=^https://(.*)/.well-known/(card|cal)dav
      - traefik.http.middlewares.nextcloud_redirect.redirectregex.replacement=https://$${1}/remote.php/dav/
In meiner Fritzbox habe ich Port 443 nach außen auf 443 freigegeben und Port 80 extern an Port 591 intern. Da habe ich aber in den letzten Wochen schon einiges rumprobiert, das hat alles nicht so richtig geklappt...

Falls mir jemand helfen könnte, wie ich das Problem beheben kann wäre das super! Je nach dem wie schnell das geht, mache ich dann später nochmal ein Thema für die Zertifikatproblematik auf.
Schönen Sonntag allerseits
Sebastian

Benutzeravatar
ei23felix
Administrator
Administrator
Beiträge: 353
Registriert: Sa 17. Jul 2021, 10:44
Kontaktdaten:

Re: Nextcloud Client Probleme

Beitrag von ei23felix »

Hoi Sebastian,
SSL-Zertifikate werden über Traefik automatisch erstellt soweit die konfiguration stimmt...
Wenn du eine Warnmeldung bekommst, dann hast du zumindest schonmal das meiste richtig konfiguriert.
Irgendwas läuft noch schief...

Kannst du ein Zertifikat für beispielsweise Grafana oder eine Webseite erstellen?

Deine Docker-compose.yml ist korrekt
optional kannst du bei Nextcloud

Code: Alles auswählen

    ports:
      - "8080:80"
entfernen, denn Nextcloud soll ja über Traefik geleitet werden und braucht daher keinen offenen internen Port. Aber wie gesagt: Optional.
In meiner Fritzbox habe ich Port 443 nach außen auf 443 freigegeben und Port 80 extern an Port 591 intern. Da habe ich aber in den letzten Wochen schon einiges rumprobiert, das hat alles nicht so richtig geklappt...
Das ist schon mal sehr wichtig und richtig. Auch wenn es hauptsächlich um https geht, ist der Port 80 wichtig für die Erstellung der Zertifikate.
Meistens geht da was schief, prüf nochmal nach ob da auch wirklich alles übernommen und aktiv ist.
Extern 80 auf intern 591 am Pi.
Sonst schau auch hier nochmal https://ei23.de/smarthome/traefik-rever ... er-hosten/
Ich hab am Pi den Port 591 (ist ein alternativer http Port) für Traefik genommen, weil der Port 80 Netzwerkintern für die Programm-Übersicht gebraucht wird (kann man auch über Traefik machen, falls man da noch intern irgendwas veranstalten will, aber brauchen die wenigsten)


Nextcloud Official ist sehr strikt und zickig, da muss die /home/pi/ei23-docker/volumes/nextcloud/html/config/config.php
noch bearbeitet werden. Ich hab fast ein ganzes Wochenende gebraucht bis da alles ordentlich lief...
Ist leider von offizieller Seite noch schlecht dokumentiert, das findet man nur über die Foren...

Folgendes brauchst du da:
Du musst explitzit einen Proxy (in diesem fall Traefik bzw. das Docker Gateway) angeben

Code: Alles auswählen

'trusted_proxies' => 
  array (
    0 => '172.18.0.0/16',
  ),
dann deine Trusted Domains anpassen

Code: Alles auswählen

'trusted_domains' => 
  array (
    0 => 'nextcloud.XXX.de',
  ),
und noch folgendes für Client Nutzung (Laptop und Smartphone):

Code: Alles auswählen

'overwrite.cli.url' => 'https://nextcloud.XXX.de',
'overwritehost' => 'nextcloud.XXX.de',
'overwriteprotocol' => 'https',
  

Ich hoffe mit den Tipps findest du das Problem!
Gruß
Felix
  • Böse Menschen sind selten tatsächlich böse, meistens eher faul oder dumm.
  • Du kannst nur dann sicher sein, wenn du weißt, dass du nie ganz sicher sein kannst.
  • Du kannst nur unabhängig werden, wenn du weißt, dass du nie ganz unabhängig sein wirst.

sebkorn
User
User
Beiträge: 9
Registriert: Fr 20. Aug 2021, 10:50

Re: Nextcloud Client Probleme

Beitrag von sebkorn »

Vielen Dank für die schnelle Antwort!
'overwrite.cli.url' => 'https://nextcloud.XXX.de',
'overwritehost' => 'nextcloud.XXX.de',
'overwriteprotocol' => 'https',
Das hier hat geholfen, jetzt kommt das Problem im Client nicht mehr, danke dafür! Der Rest war schon vorher so eingegeben.

Bleibt die Warnmeldung des Zertifikats. Die acme.json hat jeweils einen Eintrag für grafana und nextcloud. Wenn ich die Adressen besuche kommt eine Warnmeldung. Könnte es ggf. daran liege, dass ich eine Subdomain verwende? Den Stagingserver habe ich gewechselt und verwende den richtigen Server. Hier meine traefik.yml:

Code: Alles auswählen

entryPoints:
  lan:
    address: :80
  web:
    address: :591
    http:
      redirections:
        entrypoint:
          to: web-secured
          scheme: https
  web-secured:
    address: :443

certificatesResolvers:
  letsEncrypt:
    acme:
      email: Meine@Mail.de
      storage: /letsencrypt/acme.json
      # caserver: https://acme-staging-v02.api.letsencrypt.org/directory # this is for testing
      caserver: https://acme-v02.api.letsencrypt.org/directory
      httpChallenge:
        entryPoint: web

providers:
  docker:
    endpoint: unix:///var/run/docker.sock
    exposedByDefault: false
  file:
    directory: /etc/traefik/dynamic/

api:
  insecure: true
In meinem Fritzboxmenü ist Port 80 auf 591 freigegeben, Protokoll ist TCP, auf einen Screenshot verzichte ich an dieser Stelle. Auf Port 80 könnte ich natürlich noch wechseln, andererseits gefällt es mir ganz gut, um auf das Dashboard zu kommen nicht zusätzlich noch den Port eingeben zu müssen. Wenn wir es also anders schaffen könnten wäre es ganz nice.

Vielleicht habt ihr ja noch eine andere Idee oder könnt sagen, welche Infos hilfreich sein könnten. WIe gesagt, es schränkt die Usability nur bedingt ein, deshalb wäre es nicht sehr schlimm wenn es so bleibt, aber schön ist was anderes :?

Schönen Wochenstart allerseits
Sebastian

Benutzeravatar
ei23felix
Administrator
Administrator
Beiträge: 353
Registriert: Sa 17. Jul 2021, 10:44
Kontaktdaten:

Re: Nextcloud Client Probleme

Beitrag von ei23felix »

Auf Port 80 könnte ich natürlich noch wechseln, andererseits gefällt es mir ganz gut, um auf das Dashboard zu kommen nicht zusätzlich noch den Port eingeben zu müssen. Wenn wir es also anders schaffen könnten wäre es ganz nice.
Die Umleitung 80 -> 591 wird sicher nicht das Problem sein, das geht defintiv.

Wenn dein Domainanbieter keine Wildcard für Subdomains bietet, kann es auch Probleme machen.
Wenn du z.B. nextcloud.deinedomain.de erreichst (mit Warnung) und diese nur über Traefik eingestellt hast, dann sollte es daran auch nicht liegen.
Also anders gesagt, wenn nur deinedomain.de auf deine IP zeigt und du http://[beliebigesubdomain].deinedomain.de dennoch erreichen kannst.

Die Config sieht richtig aus, aber:
Hast auch wirklich eine korrekte Mail in der Config angegeben?
Das kann auch zu Problemen führen.

Oder ganz blöd ;) einfach mal Strg+F5 im Browser um die Seite nicht aus dem Cache zu laden.
Alternativ halt Browserdaten löschen.
  • Böse Menschen sind selten tatsächlich böse, meistens eher faul oder dumm.
  • Du kannst nur dann sicher sein, wenn du weißt, dass du nie ganz sicher sein kannst.
  • Du kannst nur unabhängig werden, wenn du weißt, dass du nie ganz unabhängig sein wirst.

sebkorn
User
User
Beiträge: 9
Registriert: Fr 20. Aug 2021, 10:50

Re: Nextcloud Client Probleme

Beitrag von sebkorn »

Danke nochmal für die Antwort. Aber das war es jetzt alles leider auch nicht. E-Mail Adresse ist echt, habe ich jetzt auch nochmal verändert, hat aber nix gebracht.

Wildcards sind erlaubt, es ist so, dass ich XXX.ddnss.de registiriert habe (bei ddnss.de), und dann in traefik eben nextcloud.XXX.ddnss.de bzw. grafana.XXX.ddnss.de angegeben habe, also so wie ich es bei dir auch verstanden habe.

Cache löschen hat auch nichts gebracht.

Folgendes ist mir jetzt noch aufgefallen:
1. In meiner acme.json steht folgende Zeile:

Code: Alles auswählen

"uri": "https://acme-v02.api.letsencrypt.org/acme/acct/153250940"
Das müsste meiner Meinung nach so passen, weil bei einem Staging Server dann acme-staging-.... stehen müsste.

Wenn ich in meinem Browser aber oben auf das Schloss klicke steht als Ersteller des Zertifikats "(STAGING) Artificial Apricot R3". Irgendwo steht dann auch noch, dass das von let's Encrypt ist. Aber das müsste doch eigentlich anders sein, oder? Bei diesem Forum z.B. steht direkt R3 von Let's Encrypt als Austeller. Ich weiß leider nicht wie genau das alles funktioniert, aber kann es sein, dass irgendwo noch das Staging Zertifikat (mit dem ich vorher getestet habe) liegt? Hast du da spontan eine Idee, wo ich das finden könnte bzw. wie ich das löschen kann?

sebkorn
User
User
Beiträge: 9
Registriert: Fr 20. Aug 2021, 10:50

Re: Nextcloud Client Probleme

Beitrag von sebkorn »

"Haben Sie versucht das Gerät ein und wieder aus zu schalten?" Ganz so einfach war es nicht, aber ähnlich einfach: Ich habe die alter acme.json gelöscht und dann mit docker restart traefik ein neues Zertifikat beantragt. Es hat ein paar Minuten gedauert, aber jetzt passt es und funktioniert, der Thread kann also geschlossen werden. Danke nochmal für die schnelle Hilfe, bin richtig happy dass jetzt alles so gut funktioniert! :D

Antworten