[nginx] Utilisation de nginx comme reverse proxy pour mattermost [RESOLU]

Applications, problèmes de configuration réseau
Répondre
jackinthebox
Hankyu
Messages : 12
Inscription : mer. 25 mars 2020, 08:46

[nginx] Utilisation de nginx comme reverse proxy pour mattermost [RESOLU]

Message par jackinthebox »

Bonjour,

je suis parvenu, en suivant le tutoriel d'archiwki ( https://wiki.archlinux.org/index.php/Mattermost ) à correctement installer mattermost, mais j'ai un souci avec nginx que je souhaite utiliser comme reverse proxy (toujours en suivant le même tutoriel). La commande curl localhost m'indique "welcome to nginx" etc, au lieu de me renvoyer vers la page d'accueil de mattermost (auquel j'accède bien via localhost:8065), et je ne parviens pas à trouver l'origine du problème. Un petit coup de main serait fortement apprécié, merci...
Dernière modification par jackinthebox le mar. 14 avr. 2020, 17:11, modifié 1 fois.
Avatar de l’utilisateur
papajoke
Elfe
Messages : 773
Inscription : sam. 30 août 2014, 19:54

Re: [nginx] Utilisation de nginx comme reverse proxy pour mattermost

Message par papajoke »

bonjour

dans cette configuration du wiki, il ne faut pas utiliser localhost

soit ajouter le dns de la config dans /etc/hosts, soit modifier la valeur de la clé server_name ou les 2
Arch stable - Kde 5 / zsh - btrfs/mbr - Intel Core i3 - 6Go RAM - GeForce 405 video-nouveau
jackinthebox
Hankyu
Messages : 12
Inscription : mer. 25 mars 2020, 08:46

Re: [nginx] Utilisation de nginx comme reverse proxy pour mattermost

Message par jackinthebox »

Merci à toi, mais j'ai un peu de mal à comprendre où tu veux en venir. J'ai bien remplacer la clé server_name dans /etc/nginx/sites-available/mattermost par le nom de domaine qui pointe vers l'IP de ma machine. Quant à mon /etc/hosts, il est minimal :

Code : Tout sélectionner

#
# /etc/hosts: static lookup table for host names
#
#<ip-address>	<hostname.domain.org>	<hostname>
127.0.0.1	localhost.localdomain	localhost
.
Qu'entends tu par DNS de la config ? Je suis désolé mais mes connaissances en matière de réseau sont comme mon /etc/hosts, c'est-à-dire minimales...
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17187
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [nginx] Utilisation de nginx comme reverse proxy pour mattermost

Message par benjarobin »

Bonjour,
Si tu as bien mit pour server_name, un nom de domaine (autre que localhost), alors pourquoi as tu fait un curl localhost ?
Tu peux changer le virtualhost affiché par nginx par défaut si tu accèdes au serveur via un nom de domaine inconnu ou via l'IP
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
jackinthebox
Hankyu
Messages : 12
Inscription : mer. 25 mars 2020, 08:46

Re: [nginx] Utilisation de nginx comme reverse proxy pour mattermost

Message par jackinthebox »

Le problème est identique quand je passe par mon nom de domaine (je le change içi par chattermost.exemple.com). SI je vais voir mattermost.exemple.com, j'obtiens une page du type
Welcome to nginx!

If you see this page, the nginx web server is successfully installed and working. Further configuration is required.

For online documentation and support please refer to nginx.org.
Commercial support is available at nginx.com.

Thank you for using nginx.
Si par contre je vais voir mattermost.exemple.com:8065, j'obitens bien la page d'acceuil de mattermost. mon fichier de configuration /etc/nginx/sites-available/mattermost.conf
est

Code : Tout sélectionner

upstream backend {
    server 127.0.0.1:8065;
    keepalive 32;
}

proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=mattermost_cache:10m max_size=3g inactive=120m use_temp_path=off;

server {
    listen 80;
    server_name    mattermost.exemple.com;

    location ~ /api/v[0-9]+/(users/)?websocket$ {
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        client_max_body_size 50M;
        proxy_set_header Host $http_host;
        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_set_header X-Frame-Options SAMEORIGIN;
        proxy_buffers 256 16k;
        proxy_buffer_size 16k;
        client_body_timeout 60;
        send_timeout 300;
        lingering_timeout 5;
        proxy_connect_timeout 90;
        proxy_send_timeout 300;
        proxy_read_timeout 90s;
        proxy_pass http://backend;
    }

    location / {
        client_max_body_size 50M;
        proxy_set_header Connection "";
        proxy_set_header Host $http_host;
        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_set_header X-Frame-Options SAMEORIGIN;
        proxy_buffers 256 16k;
        proxy_buffer_size 16k;
        proxy_read_timeout 600s;
        proxy_cache mattermost_cache;
        proxy_cache_revalidate on;
        proxy_cache_min_uses 2;
        proxy_cache_use_stale timeout;
        proxy_cache_lock on;
        proxy_pass http://backend;
    }
}
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17187
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [nginx] Utilisation de nginx comme reverse proxy pour mattermost

Message par benjarobin »

As tu activé ton fichier de configuration ? Est-il bien inclus ? As tu bien mit un lien symbolique dans /etc/nginx/sites-enabled ?
Quelle est la sortie de

Code : Tout sélectionner

ls -l /etc/nginx/sites-enabled
Pour tester, tu peux pour cela faire une grosse erreur de syntaxe dans ton fichier et voir si le serveur démarre (normalement le service nginx ne devrait pas redémarrer si tu as une erreur de syntaxe)
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
jackinthebox
Hankyu
Messages : 12
Inscription : mer. 25 mars 2020, 08:46

Re: [nginx] Utilisation de nginx comme reverse proxy pour mattermost

Message par jackinthebox »

ls -l /etc/nginx/sites-enabled me renvoie

Code : Tout sélectionner

total 0
lrwxrwxrwx 1 root root 42 27 mars  04:38 mattermost.conf -> /etc/nginx/sites-available/mattermost.conf
Il y a bien un souci car si je fais une erreur grossière dans /etc/nginx/sites-available/mattermost.conf, sudo sytemctl restart nginx.service ne renvoie rien, sudo sytemctl status nginx.service renvoie

Code : Tout sélectionner

● nginx.service - A high performance web server and a reverse proxy server
     Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled)
     Active: active (running) since Fri 2020-03-27 04:44:11 CET; 40s ago
    Process: 16593 ExecStart=/usr/bin/nginx -g pid /run/nginx.pid; error_log stderr; (code=exited, status=0/SUCCESS)
   Main PID: 16595 (nginx)
      Tasks: 2 (limit: 19124)
     Memory: 2.2M
     CGroup: /system.slice/nginx.service
             ├─16595 nginx: master process /usr/bin/nginx -g pid /run/nginx.pid; error_log stderr;
             └─16596 nginx: worker process
et sudo nginx -t renvoie

Code : Tout sélectionner

nginx: configuration file /etc/nginx/nginx.conf test is successful
Avatar de l’utilisateur
papajoke
Elfe
Messages : 773
Inscription : sam. 30 août 2014, 19:54

Re: [nginx] Utilisation de nginx comme reverse proxy pour mattermost

Message par papajoke »

ok,

cette config "available/enabled" est une config apache mais pas nginx par défaut (donc pas d'obligation de le faire)
Il faut donc l'inclure dans la config nginx, voir le wiki
Arch stable - Kde 5 / zsh - btrfs/mbr - Intel Core i3 - 6Go RAM - GeForce 405 video-nouveau
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17187
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [nginx] Utilisation de nginx comme reverse proxy pour mattermost

Message par benjarobin »

En effet, merci @papajoke, mais comme les dossiers existaient je me suis fait avoir. Car sur Arch par défaut les dossiers sites-available et sites-enabled n'existent pas, je l'avais oublié (j'administre quelques serveurs sous Ubuntu, donc j'ai un peu tout mélangé :-( )
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
jackinthebox
Hankyu
Messages : 12
Inscription : mer. 25 mars 2020, 08:46

Re: [nginx] Utilisation de nginx comme reverse proxy pour mattermost

Message par jackinthebox »

Merci à vous deux ! La bonne nouvelle est qu'après modification de la configuration de nginx, une erreur de syntaxe dans /etc/nginx/sites-available/mattermost.conf empêche bien le lancement de nginx. La mauvaise nouvelle est que, lorsque je vais sur mattermost.exemple.com, j'ai toujours la page de nginx qui s'afffiche... Si je veux accéder à mattemrost, il faut toujours que je passe par mattermost.exemple.com:8065....
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17187
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [nginx] Utilisation de nginx comme reverse proxy pour mattermost

Message par benjarobin »

Peux tu nous donner ton nginx.conf ? Ton nom de domaine pointe bien sur la bonne IP ? Attention aussi au cache du navigateur Web...
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
tonio_31
Hankyu
Messages : 24
Inscription : jeu. 28 juil. 2016, 21:39

Re: [nginx] Utilisation de nginx comme reverse proxy pour mattermost

Message par tonio_31 »

Bonjour,

Pour avoir monté un reverse proxy NGINX, il faudrait ajouter dans le fichier de configuration nginx :

Code : Tout sélectionner

location / {
    proxy_pass http://ip:8065/;
}
Où l'ip peut être localhost ou 192.168.X.X

En espérant que cela aide.

Antoine
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17187
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [nginx] Utilisation de nginx comme reverse proxy pour mattermost

Message par benjarobin »

tonio_31 a écrit : ven. 27 mars 2020, 15:42il faudrait ajouter dans le fichier de configuration nginx
Cela est déjà présent dans son fichier de conf via un "upstream"
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Avatar de l’utilisateur
papajoke
Elfe
Messages : 773
Inscription : sam. 30 août 2014, 19:54

Re: [nginx] Utilisation de nginx comme reverse proxy pour mattermost

Message par papajoke »

jackinthebox a écrit : ven. 27 mars 2020, 11:32 une erreur de syntaxe dans /etc/nginx/sites-available/mattermost.conf empêche bien le lancement de nginx
mais il serait bien que tu nous retourne l'erreur ! je viens de copier ce fichier et il passe ... sudo nginx -t (pas lancé, je n'ai pas l'application)

et avec erreur (volontaire), j'ai bien le retour sur la ligne no 6

Code : Tout sélectionner

nginx -t  
2020/03/27 18:47:31 [emerg] 69617#69617: unknown directive "xx" in /etc/nginx/sites-enabled/mattermost.conf:6
nginx: configuration file /etc/nginx/nginx.conf test failed
---
la directive include doit être dans le bon block sinon erreur
Arch stable - Kde 5 / zsh - btrfs/mbr - Intel Core i3 - 6Go RAM - GeForce 405 video-nouveau
jackinthebox
Hankyu
Messages : 12
Inscription : mer. 25 mars 2020, 08:46

Re: [nginx] Utilisation de nginx comme reverse proxy pour mattermost

Message par jackinthebox »

Désolé, j'ai mis un peu de temps pour revenir vers vous. Tout marche à présent. J'ai donc vu deux souci lors de la configuration de nginx : le fait que mime.types soit manquant (mais on peut facilement le trouver sur https://github.com/nginx/nginx/blob/mas ... mime.types ) et le fait qu'il faille ajouter include sites-enabled/*; à la fin de nginx.conf (voir https://wiki.archlinux.org/index.php/nginx).
Un grand merci à vous !
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17187
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [nginx] Utilisation de nginx comme reverse proxy pour mattermost

Message par benjarobin »

Hum, mime.types ne devrait pas être manquant... mailcap fournit le fichier
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
jackinthebox
Hankyu
Messages : 12
Inscription : mer. 25 mars 2020, 08:46

Re: [nginx] Utilisation de nginx comme reverse proxy pour mattermost

Message par jackinthebox »

Alors il manquait en ce cas un lien symbolique quelque part, mailcap est bien installé sur ma machine....
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17187
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [nginx] Utilisation de nginx comme reverse proxy pour mattermost

Message par benjarobin »

Tu n'aurais pas supprimer le fichier par accident ? Peux tu supprimer le fichier que tu as ajouté et réinstaller mailcap ?
Je suis persuadé que cela fonctionnera
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
jackinthebox
Hankyu
Messages : 12
Inscription : mer. 25 mars 2020, 08:46

Re: [nginx] Utilisation de nginx comme reverse proxy pour mattermost

Message par jackinthebox »

C'est probablement ça, j'ai du virer /etc/nginx après une première installation qui ne fonctionnait pas !.
Répondre