Nginx Reverse Proxy / Domoticz ?

Routage de ports, récupération de météo, accès depuis votre smartphone bref tout ce qui permet à Domoticz d'être conecté à Internet se passe ici.
Répondre
ZIONIII
Messages : 82
Enregistré le : 07 avr. 2016, 19:18

Nginx Reverse Proxy / Domoticz ?

Message par ZIONIII »

Bonjour tout le monde,

Le bilan:
1 Raspberry avec NGINX en reverse proxy
1 Raspberry avec DOMOTICZ et MyDomoAthome

Après des heures de recherche je n'arrive pas à faire comprendre :twisted: à Domoticz de prendre les vrais adresses IP et non l'ip du proxy dans les logs.
Je veux bien un coup de pouce.
Modifié en dernier par ZIONIII le 25 avr. 2016, 22:10, modifié 4 fois.
Rpbi2: Stretch Lite + Domoticz bêta + MyDomoAtHome + Monit
Passerelles: RFLINK (433Mhz;2,4Ghz;Wifi) + RFXCON 433Mhz + Razberry 1(Z-WAVE)
Milight,Sonde de température DIY, QUBINO - Fil Pilote ...

patrice
Messages : 1640
Enregistré le : 22 sept. 2014, 21:51

Re: Nginx Reserve Proxy / Domoticz

Message par patrice »

Bsr

Dernière petite chose. Pour que l'Apache logue correctement les IPs qui se connectent à votre serveur, il faut installer le module suivant :

sudo apt-get install libapache2-mod-rpaf
Du toujours excellent Korben http://korben.info/configurer-nginx-reverse-proxy.html
Raspberry Pi model B+, RFXComm,8 interrupteurs Chacon, 5 ds180b 1-Wire, 3 douilles Chacon, 1 contact de porte Chacon, 1 module variateur,module emetteur 54700, Aeon Stick Z-wave, 1 MultiSensor Aeon, accés à distance.
aka thegritche@domoticz forum

ZIONIII
Messages : 82
Enregistré le : 07 avr. 2016, 19:18

Re: Nginx Reserve Proxy / Domoticz

Message par ZIONIII »

Ça marche pas chez moi, je n'ai pas dû tout comprendre. Car je n'ai pas d'apache installé sur le raspberry que Domoticz.
Et sur le premier que Nginx :mrgreen:
Rpbi2: Stretch Lite + Domoticz bêta + MyDomoAtHome + Monit
Passerelles: RFLINK (433Mhz;2,4Ghz;Wifi) + RFXCON 433Mhz + Razberry 1(Z-WAVE)
Milight,Sonde de température DIY, QUBINO - Fil Pilote ...

vil1driver
Messages : 5475
Enregistré le : 30 janv. 2015, 11:07
Localisation : Rennes (35)

Re: Nginx Reserve Proxy / Domoticz

Message par vil1driver »

Salut,

Je ne connais pas nginx, apache s'install en 2 clics..
Et les tutos ne manquent pas..

Sinon pour être tatillon, pourais tu corriger le titre de ton sujet, c'est reverse proxy.
MAJ = VIDER LE CACHE(<-Clicable)
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua

Un ex domoticzien

rimram31
Messages : 657
Enregistré le : 04 oct. 2015, 11:22
Localisation : Toulouse

Re: Nginx Reverse Proxy / Domoticz ?

Message par rimram31 »

ZIONIII a écrit :...je n'arrive pas à faire comprendre :twisted: à Domoticz de prendre les vrais adresses IP et non l'ip du proxy dans les logs...
Domoticz n'y est pour rien :-) si ce n'est pas configuré pour c'est bien le proxy serveur qui est vu par domoticz.

Je suppose que ce que tu cherches a faire est un rp transparent de sorte que le reverse proxy se fasse passer pour le client. Je connais mieux Apache ou on utilise les directives ProxyPass et ProxyPassReverse pour ça mais après quelques recherches rapides, il semble qu'on peut le faire avec nginx: https://rickheil.com/nginx-as-a-transpa ... rse-proxy/ https://www.nginx.com/resources/wiki/st ... ikeapache/ ...
Raspberry Pi 2 + carte RF pi "maison" + Domoticz
Sonde Oregon + Aliexpress - Prises Chacon (3500W) - 1wire DS18B20

ZIONIII
Messages : 82
Enregistré le : 07 avr. 2016, 19:18

Re: Nginx Reverse Proxy / Domoticz ?

Message par ZIONIII »

Bon je vais encore chercher un peu, sinon apache
Fichiers joints
CCI27042016.jpg
CCI27042016.jpg (878.08 Kio) Vu 9090 fois
Rpbi2: Stretch Lite + Domoticz bêta + MyDomoAtHome + Monit
Passerelles: RFLINK (433Mhz;2,4Ghz;Wifi) + RFXCON 433Mhz + Razberry 1(Z-WAVE)
Milight,Sonde de température DIY, QUBINO - Fil Pilote ...

rimram31
Messages : 657
Enregistré le : 04 oct. 2015, 11:22
Localisation : Toulouse

Re: Nginx Reverse Proxy / Domoticz ?

Message par rimram31 »

Tu n'es pas obligé de lire les réponses que l'on te fait :D mais quand même ...
La solution a ton problème tient dans la configuration des headers nginx. Dans les liens que je t'indique précédemment, tu verras:

Code : Tout sélectionner

...
      proxy_set_header        Host $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;
Tu peux peut-être essayer aussi de modifier directement REMOTE_ADDR http://serverfault.com/questions/656616 ... -client-ip tout dépend du support des headers proxy des outils qui sont derrière.
Raspberry Pi 2 + carte RF pi "maison" + Domoticz
Sonde Oregon + Aliexpress - Prises Chacon (3500W) - 1wire DS18B20

ZIONIII
Messages : 82
Enregistré le : 07 avr. 2016, 19:18

Re: Nginx Reverse Proxy / Domoticz ?

Message par ZIONIII »

Bon, bon l'enquête progresse.
Tout d'abord merci rimram31, Mais ça ne fonctionne pas trop ou surement c'est moi qui merde quelque part.
Je n'arrive toujours pas avoir l'ip réelle de connexion dans le log de Domoticz derrière le reverse proxy Nginx
On me conseille une authentification pass/login depuis nginx.

Code : Tout sélectionner

auth_basic "Restricted";
auth_basic_user_file /etc/nginx/.htpasswd;
Mais je ne trouve pas ça super car Domoticz gère plusieurs configuration pass/login ex:(Config Monsieur et config simple pour Madame) :D

Sinon je vais essayer avec apache. (Mais est-ce que quelqu'un à une configuration identique?)

Ma config Nginx:

Code : Tout sélectionner

## Default all HTTP Traffic to HTTPS
server {
        listen                        80 default;
        server_name             xxxxx.xxxxx.ovh;                   # Set to your FQDN
        rewrite                 ^ https://$server_name$request_uri? permanent;
}

## Domoticz Secure Proxy
server {
        listen                         443 default ssl;
        server_name             xxxxx.xxxx.ovh;                   # Set to your FQDN

        ssl_certificate             /etc/letsencrypt/live/xxxxx.xxxxx.ovh/fullchain.pem;
        ssl_certificate_key     /etc/letsencrypt/live/xxxxx.xxxxx.ovh/privkey.pem;
        #ssl_dhparam             /etc/ssl/certs/dhparam.pem;

        ssl_session_timeout     60m;
        ssl_session_cache       shared:SSL:10m;
        ssl_protocols           TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers             EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EECDH+ECDSA+SHA384:EECDH+ECDSA+SHA256:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH:EDH+aRSA:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS:!RC4;
        ssl_prefer_server_ciphers on;

        ### UNCOMMENT BELOW FOR x509 CLIENT AUTH
        #ssl_client_certificate /etc/ssl/ca/ca.crt;
        #ssl_verify_client      optional;
        #if ($ssl_client_verify != SUCCESS) {
        #       return 303 http://www.domoticz.com;                     # Set to your Error Page FQDN.
        #}

        add_header              Strict-Transport-Security max-age=63072000;
        add_header              X-Frame-Options SAMEORIGIN;
        add_header              X-Content-Type-Options nosniff;

        ## Domoticz
        location / {   
                    proxy_set_header X-Real-IP  $remote_addr;
                    proxy_set_header X-Forwarded-For $remote_addr;
                    proxy_set_header Host $host;

                    proxy_pass      http://192.168.xx.xx:8080/;
                    access_log      /var/log/nginx/domoticz.access.log;
                    error_log       /var/log/nginx/domoticz.error.log;
               
                ### UNCOMMENT BELOW FOR x509 CLIENT SSO                         
                #proxy_set_header       Authorization $ssl_client_s_dn;
                #proxy_hide_header      Authorization;
        }

        ### IP Camera Proxys ####
        # IPCam 1 - Give URL to Live View Page
        #location /ipcameras/cam1 {
        #       proxy_pass      http://192.168.1.100:9989/onvif/media_service/snapshot;
        #}

}

### Custom Access Denied Page for x509
#server {
#       listen                  80;
#       server_name             access-denied.your_domain_name.com;     # Set to your Error Page FQDN
#       root                    /var/www/access-denied;                 # Path to your error page
#       index                   index.html;                             # Name of your error page
#       error_page              404 /index.html;
#       error_page              400 /index.html;
#       access_log              /var/log/nginx/auth-fail.access.log;    # Logs of failed auths.
#}
Rpbi2: Stretch Lite + Domoticz bêta + MyDomoAtHome + Monit
Passerelles: RFLINK (433Mhz;2,4Ghz;Wifi) + RFXCON 433Mhz + Razberry 1(Z-WAVE)
Milight,Sonde de température DIY, QUBINO - Fil Pilote ...

Répondre