Nextcloud et Collabora derriere un reverse proxy Nginx

Rédigé par Tonton Ayo Aucun commentaire
Classé dans : serveur, linux Mots clés : serveur, reverse proxy,

Bon, un pense bête plus qu'un post.

J'ai mon serveur Nextcloud et Collabora online qui sont derriere un reverse proxy Nginx. Ces 2 bidules necessite 2 ou 3 paramètres en plus sur la config de celui-ci et forcément, Nextcloud est moins pointilleux , voici un exemple:

server {
        server_name nextcloud.tonputinde.dns;
                location / {
                proxy_pass         https://192.168.0.XX/;
                proxy_set_header    Host $host;
        }
        location = /.well-known/carddav {
         return 301 $scheme://$host:$server_port/remote.php/dav;
        }
        location = /.well-known/caldav {
         return 301 $scheme://$host:$server_port/remote.php/dav;
        }

    listen [::]:443 ssl;
    listen 443 ssl;
    ssl_certificate /etc/tonputindecertificat.pem;
    ssl_certificate_key /etc/tonputindecertificatprivkey.pem;
    ssl_dhparam /etc/tonputindecertificat-dhparams.pem;

}

Voila pour Nextcloud, rien de bien compliqué. Pour Collabora c'est un peu plus long :

server {
        listen 9980 ssl;
        listen [::]:9980 ssl;
        server_name _;
        #location / {
        #proxy_pass     https://192.168.0.xx:9980/;
        #proxy_set_header    Host $host;
        #}

    ssl_certificate /etc/tonputindecertificat.pem;
    ssl_certificate_key /etc/tonputindecertificatprivkey.pem;
    ssl_dhparam /etc/tonputindecertificat-dhparams.pem;

#config reverse collabora
    # static files
    location ^~ /loleaflet {
        proxy_pass https://192.168.0.xx:9980;
        proxy_set_header Host $http_host;
    }

    # WOPI discovery URL
    location ^~ /hosting/discovery {
        proxy_pass https://192.168.0.xx:9980;
        proxy_set_header Host $http_host;
    }

    # Capabilities
    location ^~ /hosting/capabilities {
        proxy_pass https://192.168.0.xx:9980;
        proxy_set_header Host $http_host;
    }

    # main websocket
    location ~ ^/lool/(.*)/ws$ {
        proxy_pass https://192.168.0.xx:9980;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "Upgrade";
        proxy_set_header Host $http_host;
        proxy_read_timeout 36000s;
    }

    # download, presentation and image upload
    location ~ ^/lool {
        proxy_pass https://192.168.0.xx:9980;
        proxy_set_header Host $http_host;
    }

    # Admin Console websocket
    location ^~ /lool/adminws {
        proxy_pass https://192.168.0.xx:9980;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "Upgrade";
        proxy_set_header Host $http_host;
        proxy_read_timeout 36000s;
    }
#-------------------------------
}

Voila, en principe ça fonctionne.
La doc officiel :
https://www.collaboraoffice.com/code/nginx-reverse-proxy/
https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/reverse_proxy_configuration.html


Écrire un commentaire

Capcha
Entrez le code de l'image

Fil RSS des commentaires de cet article