Jump to content
  • 0
remi.v

serveur nginx pour reverse proxy

Question

Bonjour à tous,

je viens appeler au secours après 2 jours de recherches et tests en tout genre concernant un reverse proxy nginx que je tente de mettre en place.

Initialement, je souhaite juste faire des redirections afin de passer tout le trafic via le port 443 et que nginx renvoi vers le bon serveur ensuite (qnap.mondomaine.com renvoit vers mon nas, jeedom.mondomaine.com vers mon serveur jeedom, etc...)

Je vais essayer de donner un max d'info sur la config.

Côté OVH : dans ma zone DNS j'ai une ligne "* IN CNAME mondomaine.com." pour rediriger tous les sous-domaines vers chez moi.

Côté Box, j'ai bien rediriger les ports 80 et 443 vers mon serveur nginx dans le NAT.

Le serveur nginx est un container hébergé sur un nas QNAP. Nginx est en version 1.14.2

Dans mon fichier de configuration nginx, initialement n'y a qu'une ligne :

    include /etc/nginx/conf.d/*.conf; 

j'ai ajouté :
   
    include /etc/nginx/sites-enabled/*.conf;

J'ai également un fichier proxy.conf dans lequel il y a :

proxy_redirect                  off;
proxy_set_header                Host            $host;
proxy_set_header                X-Real-IP       $remote_addr;
proxy_set_header                X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size            10m;
client_body_buffer_size         128k;
client_header_buffer_size       64k;
proxy_connect_timeout           90;
proxy_send_timeout              90;
proxy_read_timeout              90;
proxy_buffer_size               16k;
proxy_buffers                   32      16k;
proxy_busy_buffers_size         64k;

Dans le dossier sites-enabled, je n'ai pour le moment qu'un fichier mondomaine.conf dans lequel j'ai ça :

server {                   
        listen 80;
        server_name     jeedom.mondomaine.com;
        #access_log     /var/log/nginx/80-mondomaine.com.log;
        location / {      
                proxy_pass      http://192.168.1.51/;
        }                    
}                                                                                              
server {      
        listen 80;
        server_name     qnap.mondomaine.com;
        #access_log      /var/log/nginx/80-mondomaine.com.log;
        location / {        
                proxy_pass      http://192.168.1.14:8080/;
       }                    
}

server {                    
        listen 443 ssl;      
        ssl on;              
        server_name     jeedom.mondomaine.com www.jeedom.mondomaine.com;
        ssl_certificate /etc/letsencrypt/live/mondomaine.com/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/mondomaine.com/privkey.pem;
        ssl_protocols       TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
        access_log      /var/log/nginx/443-mondomaine.com.log;
        error_log       /var/log/nginx/443-error-mondomaine.com.log debug;
        location / {
                proxy_pass      http://192.168.1.51/;
        }    
}


Le résultat : 
- si j'accède à http://jeedom.mondomaine.com ou http://jeedom.mondomaine.com ==> cela fonctionne
- si je souhaite accéder à https://jeedom.mondomaine.com, j'ai une erreur SSL_ERROR_RX_RECORD_TOO_LONG sur firefox et ERR_SSL_PROTOCOL_ERROR sur chrome. 
==> dans la console de mon container sur le NAS, je vois des lignes passer donc même en https, le serveur nginx reçoit bien une commande
==> cependant, je trouve étrange que lorsque je fais un tail -f /var/log/nginx/443-error-mondomaine.com.log ou tail -f /var/log/nginx/443-mondomaine.com.log, il ne se passe rien, comme si nginx ne comprenait pas que la requête qui arrive passe par le port 443...

J'ai vraiment testé beaucoup de choses mais rien n'y fait, si quelqu'un a un truc à me proposer je suis preneur...

Merci d'avance

Rémi

Share this post


Link to post
Share on other sites

0 answers to this question

Recommended Posts

There have been no answers to this question yet

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×