OPNsense
  • Home
  • Help
  • Search
  • Login
  • Register

  • OPNsense Forum »
  • International Forums »
  • German - Deutsch (Moderator: Patrick M. Hausen) »
  • Reverserver Proxy für Nextcloud mit Onlyoffice
« previous next »
  • Print
Pages: [1]

Author Topic: Reverserver Proxy für Nextcloud mit Onlyoffice  (Read 3619 times)

shb256

  • Jr. Member
  • **
  • Posts: 87
  • Karma: 1
    • View Profile
Reverserver Proxy für Nextcloud mit Onlyoffice
« on: November 21, 2018, 09:29:04 am »
Hallo,

ich möchte Nextcloud mit onlyoffice hinter opnsense betreiben.
Die grundsätzliche Einrichtung von nginx ist klar.

hier ist das beispiel von onlyoffice für einen reversen nginx proxy

Code: [Select]
#Use this example for the proxy document server running at 'backendserver-address'
# into the virtual directory 'documentserver-virtual-path'.

upstream docservice {
  server backendserver-address;
}

map $http_x_forwarded_proto $the_scheme {
     default $http_x_forwarded_proto;
     "" $scheme;
}

map $http_x_forwarded_host $the_host {
    default $http_x_forwarded_host;
    "" $host;
}

map $http_upgrade $proxy_connection {
  default upgrade;
  "" close;
}

proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $proxy_connection;
proxy_set_header X-Forwarded-Host $the_host/documentserver-virtual-path;
proxy_set_header X-Forwarded-Proto $the_scheme;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;


server {
  listen 0.0.0.0:80;
  listen [::]:80 default_server;
  server_tokens off;

  location /documentserver-virtual-path/ {
    proxy_pass http://docservice/;
    proxy_http_version 1.1;
  }
}
genauer geht es mir um diesen Abschnitt:
Quote
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $proxy_connection;
proxy_set_header X-Forwarded-Host $the_host/documentserver-virtual-path;
proxy_set_header X-Forwarded-Proto $the_scheme;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

so sieht meine location section aus
Code: [Select]
    if ($scheme != "https") {
        return 302 https://$host$request_uri;
    }
    autoindex off;
    http2_push_preload off;
    proxy_set_header Host $host;
    proxy_set_header X-TLS-Cipher $ssl_cipher;
    proxy_set_header X-TLS-Protocol $ssl_protocol;
    proxy_set_header X-TLS-SNI-Host $ssl_server_name;
    # proxy headers for backend server
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_pass http://upstream50c9cb5f9daa4878ab3cf696f9e0416d;


damit sind meiner Meinung nach alle Punkte außer
Code: [Select]
proxy_set_header X-Forwarded-Host $the_host/documentserver-virtual-path;
mit abgebacken

Als Fehlermeldung erhalte ich im Browser

Quote
ERR_TOO_MANY_REDIRECTS

Was es bedeutet ist klar, allerdings ist mir nicht klar wie es lösen kann. Ich denke es liegt am Header für X-Forwarded-Host. Gibt es die Möglichkeit zusäzlicher header optionen hinzuzufügen

Danke
 shb
Logged

fabian

  • Hero Member
  • *****
  • Posts: 2769
  • Karma: 200
  • OPNsense Contributor (Language, VPN, Proxy, etc.)
    • View Profile
    • Personal Homepage
Re: Reverserver Proxy für Nextcloud mit Onlyoffice
« Reply #1 on: November 21, 2018, 05:35:11 pm »
Quote from: shb256 on November 21, 2018, 09:29:04 am
so sieht meine location section aus
Code: [Select]
    if ($scheme != "https") {
        return 302 https://$host$request_uri;
    }
    autoindex off;
    http2_push_preload off;
    proxy_set_header Host $host;
    proxy_set_header X-TLS-Cipher $ssl_cipher;
    proxy_set_header X-TLS-Protocol $ssl_protocol;
    proxy_set_header X-TLS-SNI-Host $ssl_server_name;
    # proxy headers for backend server
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_pass http://upstream50c9cb5f9daa4878ab3cf696f9e0416d;


Schaut schon mal ganz gut aus, wobei du für Connection und Upgrade noch das Websocket-Feature (Advanced Option) dazuschalten solltest:
https://github.com/ONLYOFFICE/document-server-proxy/blob/master/nginx/minimal.conf


Quote from: shb256 on November 21, 2018, 09:29:04 am
damit sind meiner Meinung nach alle Punkte außer
Code: [Select]
proxy_set_header X-Forwarded-Host $the_host/documentserver-virtual-path;
mit abgebacken

Den solltest du auch nicht brauchen, da beim nginx-Plugin der originale "Host"-Header erhalten bleibt. Das ist eher ein Problem wenn der Proxy den Header ändern würde.

Quote from: shb256 on November 21, 2018, 09:29:04 am
Als Fehlermeldung erhalte ich im Browser

Quote
ERR_TOO_MANY_REDIRECTS

Browser wird im Kreis geschickt.Würde hier mal curl zum testen nehmen (-I) und auch mal den Request anschauen, der beim Server ankommt. Ggf. fehlt irgendwas oder der Server will irgendeine spezielle Umleitung (HTTP <-> HTTPS o. Ä.)

Quote from: shb256 on November 21, 2018, 09:29:04 am
Was es bedeutet ist klar, allerdings ist mir nicht klar wie es lösen kann. Ich denke es liegt am Header für X-Forwarded-Host. Gibt es die Möglichkeit zusäzlicher header optionen hinzuzufügen

Danke
 shb
Derzeit nicht, notfalls musst du die Datei location.conf patchen. Die Zusatzheader waren bis vor kurzem nicht möglich (und sind es immer noch nicht), weil der Core die Funktionalität nicht bietet, Key-Value-Daten zu verwalten. Den notwendingen Pull-Request habe ich schon gemacht, aber es ist noch nicht klar, ob die Änderung im nächsten Update kommen wird - daher wird vermutlich auch nginx 1.4, welches diese Features nutzt, ein devel-only release.
Logged

shb256

  • Jr. Member
  • **
  • Posts: 87
  • Karma: 1
    • View Profile
Re: Reverserver Proxy für Nextcloud mit Onlyoffice
« Reply #2 on: November 22, 2018, 09:35:25 am »
Danke für die Unterstützung.

CURL -I hat 302 angezeigt. ich habe jetzt einfach nochmal den docker container gelöscht und den nginx neu eingerichtet.

Jetzt läuft es.

shb
Logged

fabian

  • Hero Member
  • *****
  • Posts: 2769
  • Karma: 200
  • OPNsense Contributor (Language, VPN, Proxy, etc.)
    • View Profile
    • Personal Homepage
Re: Reverserver Proxy für Nextcloud mit Onlyoffice
« Reply #3 on: November 22, 2018, 05:51:09 pm »
Also in dem Fall ein Fehler beim Einrichten des Containers?
Falls es wen interessiert, währe es dennoch nützlich, wenn du den Fehler noch dazu schreibst.
Logged

shb256

  • Jr. Member
  • **
  • Posts: 87
  • Karma: 1
    • View Profile
Re: Reverserver Proxy für Nextcloud mit Onlyoffice
« Reply #4 on: November 22, 2018, 08:47:44 pm »
Also wo genau der Fehler lag kann ich leider nicht genau sagen.
Alles einfach nochmal gelöscht
Onlyoffice starte ich mit
Code: [Select]
docker run -i -t -d -p 8181:80 --restart=always onlyoffice/documentserverOpnsense habe ich nach dem online howto eingerichtet
https://wiki.opnsense.org/manual/how-tos/nginx.html
PLUS wie bereits beschrieben in locations in "advanced mode" aktivieren und am Ende den "WebSocket" aktivieren

und bei HTTP Server "https only". Das Zertifikat kommt ganznormal vom Let's Encrypt

Wenn noch Fragen sind, einfach hier nochmal schreiben

shb
Logged

  • Print
Pages: [1]
« previous next »
  • OPNsense Forum »
  • International Forums »
  • German - Deutsch (Moderator: Patrick M. Hausen) »
  • Reverserver Proxy für Nextcloud mit Onlyoffice
 

OPNsense is an OSS project © Deciso B.V. 2015 - 2024 All rights reserved
  • SMF 2.0.19 | SMF © 2021, Simple Machines
    Privacy Policy
    | XHTML | RSS | WAP2