Bonjour,

J'ai installé un serveur shiny puis mis en place un serveur nginx pour effectuer la terminaison SSL / TLS qui retransmet ensuite toutes les demandes à un serveur proxy interne shiny-auth0 pour faire de l'autentification avec auth0.
Le serveur shiny et nginx fonctionne, j'arrive à accèder à leurs pages d'accueil. J'ai installé nodejs et auth0, j'arrive à accèder à la page d'autentification. Tout fonctionne indépendamment ^^. Puis quand j'essaye de tout assembler ca ne marche pas.


Après avoir fait node bin/ww dans le répertoire de shiny-auth0, dans un navigateur internet je tape https://adresse_ip_du_serveur ca me renvoie à une page avec un message d'erreur 502 Bad Gateway nginx/1.12.2.

Je suis sous CentOS 7, et les serveurs shiny et nginx se trouvent sur la même machine distante.

/etc/nginx/nginx.conf
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
events {
}

http {
    map $http_upgrade $connection_upgrade {
        default upgrade;
        ''      close;
    }

    # Listen on port 80 and redirect all requests to the 
    # TLS enabled server (https, port 443)
    server {
        listen       *:80;

        # Your hostname should go here
        server_name  localhost;

        access_log   off;
        location / {
            rewrite ^ https://$host$request_uri? permanent;
        }
    }

    # TLS enabled server
    server {
        listen       443 ssl;

        # Your hostname should go here
        server_name localhost;

        # TLS/SSL certificates for your secure server should go here.
        ssl_certificate /etc/ssl/certs/nginx-selfsigned.crt;
        ssl_certificate_key /etc/ssl/private/nginx-selfsigned.key;

        # To enhance security, as long as you don't need to support older browsers
        # (and you probably don't), you should only enable the most secure 
        # ciphers and algorithms. This is a sane selection.
        ssl_ciphers ""EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH"";
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_prefer_server_ciphers on;
        ssl_session_cache  builtin:1000  shared:SSL:10m;


        # This proxies requests to our shiny-auth0 authentication proxy. 
        # Requests are passed in plain HTTP, so TLS termination
        # is applied at this point.
        location / {
            proxy_set_header    Host $host;

            # This points to our shiny-auth0 authentication proxy,
            # change localhost:3000 to suit the configuration of 
            # your shiny-auth0 config
            proxy_pass          http://127.0.0.1:3000;
            proxy_redirect      http://127.0.0.1:3000/ $scheme://$host/;

            proxy_http_version  1.1;

            # The following lines enable WebSockets proxying, do not remove them
            # as they are used by Shiny Server to improve user experience
            proxy_set_header    Upgrade $http_upgrade;
            proxy_set_header    Connection $connection_upgrade;

            proxy_connect_timeout 3h;
            proxy_send_timeout 3h;
            proxy_read_timeout 3h;
        }
    }
}
shiny-auth0/.env
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
AUTH0_CLIENT_SECRET=CoolSecret
AUTH0_CLIENT_ID=ClientId
AUTH0_DOMAIN=Domain
AUTH0_CALLBACK_URL=https://localhost/callback
COOKIE_SECRET=somethingRandomHerePlease
SHINY_HOST=localhost
SHINY_PORT=3838
PORT=3000
Dans le compte auth0 que j'ai crée sur leur site (auth0.com), j'ai mis les infos qu'il y avait dans Clients Setting, dans Allowed Callback URLs
j'ai mis https://adresse_ip_du_serveur/callback

sudo cat /var/log/nginx/error.log

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
2018/01/23 06:53:38 [crit] 1545#0: *3 connect() to 127.0.0.1:3000 failed (13: Permis
sion denied) while connecting to upstream, client: 191.250.99.150, server: $localho
st, request: "GET / HTTP/1.1", upstream: "http://127.0.0.1:3000/", host: "30.200.131
.212"