Ankündigung

Einklappen
Keine Ankündigung bisher.

Amazon Alexa Plugin

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • patrickgoll
    antwortet
    So wie dein error Log aussieht versuchst du mit einem Benutzer "smartvisu", der nicht in der /etc/nginx/htpasswd.alexa hinterlegt ist auf dem PI anzumelden im Verzeichnis smartVISU.

    Wenn du versuchts dich auf deine VISU anzumelden, bekommst du dann eine Anmeldung? Das sollte nämlich mit dem allow statement nicht passieren, außer du kommst von außen im Internet und nicht aus deinem Hausnetz.
    Zuletzt geändert von patrickgoll; 23.09.2017, 15:37.

    Einen Kommentar schreiben:


  • Max2612
    antwortet
    acces Log
    Code:
    101.236.21.231 - - [23/Sep/2017:07:01:52 +0200] "GET / HTTP/1.1" 301 178 "-" "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.94 Safari/537.36"
    192.168.1.31 - - [23/Sep/2017:08:17:31 +0200] "GET /favicon.ico HTTP/1.1" 301 178 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36 Edge/14.14393"
    192.168.1.31 - - [23/Sep/2017:08:17:38 +0200] "GET / HTTP/1.1" 301 178 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36 Edge/14.14393"
    192.168.1.31 - - [23/Sep/2017:08:46:02 +0200] "GET /smartVISU HTTP/1.1" 301 178 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36"
    192.168.1.31 - - [23/Sep/2017:08:47:24 +0200] "GET / HTTP/1.1" 301 178 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36"
    159.203.240.29 - - [23/Sep/2017:09:30:52 +0200] "GET / HTTP/1.1" 301 178 "-" "Mozilla/5.0 zgrab/0.x"
    60.191.38.77 - - [23/Sep/2017:11:54:20 +0200] "GET / HTTP/1.1" 301 178 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:47.0) Gecko/20100101 Firefox/47.0"
    91.147.211.248 - - [23/Sep/2017:14:08:23 +0200] "GET / HTTP/1.0" 301 178 "-" "-"
    196.52.43.59 - - [23/Sep/2017:15:40:28 +0200] "GET / HTTP/1.0" 301 178 "-" "Mozilla/5.0 (Windows NT 6.1; rv:31.0) Gecko/20100101 Firefox/31.0"
    192.168.1.31 - - [23/Sep/2017:16:20:19 +0200] "GET /smartVISU/ HTTP/1.1" 301 178 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36
    error Log
    Code:
    2017/09/23 11:21:36 [crit] 3990#3990: *8 SSL_do_handshake() failed (SSL: error:1417D18C:SSL routines:tls_process_client_hello:version too low) while SSL handshaking, client: 208.93.152.177, server: 0.0.0.0:443
    2017/09/23 12:49:48 [crit] 3989#3989: *22 SSL_do_handshake() failed (SSL: error:1417D18C:SSL routines:tls_process_client_hello:version too low) while SSL handshaking, client: 184.105.247.252, server: 0.0.0.0:443
    2017/09/23 14:19:58 [error] 3989#3989: *25 user "smartvisu" was not found in "/etc/nginx/htpasswd.alexa", client: 213.162.68.240, server: smartvisu36.spdns.eu, request: "GET /smartVISU HTTP/1.1", host: "xyz.spdns.eu"
    2017/09/23 14:20:42 [error] 3989#3989: *25 user "smartvisu" was not found in "/etc/nginx/htpasswd.alexa", client: 213.162.68.240, server: xyz.spdns.eu, request: "GET / HTTP/1.1", host: "xyz.spdns.eu"
    2017/09/23 15:12:13 [error] 3989#3989: *29 user "k" was not found in "/etc/nginx/htpasswd.alexa", client: 213.162.68.240, server: xyz.spdns.eu, request: "GET /smartVIS HTTP/1.1", host: "xyz.spdns.eu"
    2017/09/23 16:01:22 [error] 441#441: *3 user "smartvisu" was not found in "/etc/nginx/htpasswd.alexa", client: 213.162.68.240, server: xyz.spdns.eu, request: "GET / HTTP/1.1", host: "xyz.spdns.eu"
    2017/09/23 16:01:40 [error] 441#441: *3 user "smartvisu" was not found in "/etc/nginx/htpasswd.alexa", client: 213.162.68.240, server: xyz.spdns.eu, request: "GET / HTTP/1.1", host: "xyz.spdns.eu"
    2017/09/23 16:13:10 [error] 737#737: *1 user "smartvisu" was not found in "/etc/nginx/htpasswd.alexa", client: 213.162.68.240, server: xyz.spdns.eu, request: "GET / HTTP/1.1", host: "xyz.spdns.eu"
    2017/09/23 16:20:34 [error] 799#799: *13 user "smartvisu" was not found in "/etc/nginx/htpasswd.alexa", client: 192.168.1.31, server: xyz.spdns.eu, request: "GET /smartVISU/ HTTP/1.1", host: "192.168.1.13"
    2017/09/23 16:20:43 [error] 799#799: *13 user "smartvisu" was not found in "/etc/nginx/htpasswd.alexa", client: 192.168.1.31, server: xyz.spdns.eu, request: "GET /smartVISU/ HTTP/1.1", host: "192.168.1.13"
    sudo ps aux | grep php
    Code:
    root       419  0.0  5.8 132796 26208 ?        Ss   15:54   0:00 php-fpm: master process (/etc/php/7.0/fpm/php-fpm.conf)
    www-data   443  0.0  1.0 132796  4580 ?        S    15:54   0:00 php-fpm: pool www
    www-data   444  0.0  1.0 132796  4580 ?        S    15:54   0:00 php-fpm: pool www
    smartho+   980  0.0  0.4   4764  2056 pts/0    S+   16:29   0:00 grep --color=auto php

    Einen Kommentar schreiben:


  • patrickgoll
    antwortet
    Naja also die nötigen Ports sehen gut aus.
    Was sagen denn die Logs? Gibt es eine Fehlermeldung?

    /var/log/nginx/ da gibt es das error und das access log
    und wie sieht es mit dem smarthome log aus?

    ​​​​​​​läuft denn php-fpm auch?? sudo ps aux | grep php

    Einen Kommentar schreiben:


  • Max2612
    antwortet
    Leider nicht. Jetzt habe ich nur mehr die eine Zeile "allow 192.168.1.0/24".
    Und netstat -tulpen
    Code:
    Aktive Internetverbindungen (Nur Server)
    Proto Recv-Q Send-Q Local Address           Foreign Address         State       Benutzer   Inode      PID/Program name
    tcp        0      0 127.0.0.1:9090          0.0.0.0:*               LISTEN      0          10500      419/php-fpm: master
    tcp        0      0 192.168.1.13:9000       0.0.0.0:*               LISTEN      1001       10908      454/python3
    tcp        0      0 0.0.0.0:139             0.0.0.0:*               LISTEN      0          10741      447/smbd
    tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      0          7140       209/rpcbind
    tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      0          12919      735/nginx: master p
    tcp        0      0 0.0.0.0:2323            0.0.0.0:*               LISTEN      1001       10919      454/python3
    tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      0          10228      426/sshd
    tcp        0      0 0.0.0.0:2424            0.0.0.0:*               LISTEN      1001       10918      454/python3
    tcp        0      0 0.0.0.0:443             0.0.0.0:*               LISTEN      0          12920      735/nginx: master p
    tcp        0      0 0.0.0.0:445             0.0.0.0:*               LISTEN      0          10740      447/smbd
    tcp        0      0 192.168.1.13:8383       0.0.0.0:*               LISTEN      1001       10913      454/python3
    tcp6       0      0 :::139                  :::*                    LISTEN      0          10739      447/smbd
    tcp6       0      0 :::111                  :::*                    LISTEN      0          7143       209/rpcbind
    tcp6       0      0 :::22                   :::*                    LISTEN      0          10230      426/sshd
    tcp6       0      0 :::445                  :::*                    LISTEN      0          10738      447/smbd
    tcp6       0      0 :::6720                 :::*                    LISTEN      0          7338       1/init
    udp        0      0 192.168.1.255:137       0.0.0.0:*                           0          10533      445/nmbd
    udp        0      0 192.168.1.13:137        0.0.0.0:*                           0          10532      445/nmbd
    udp        0      0 0.0.0.0:137             0.0.0.0:*                           0          10522      445/nmbd
    udp        0      0 192.168.1.255:138       0.0.0.0:*                           0          10535      445/nmbd
    udp        0      0 192.168.1.13:138        0.0.0.0:*                           0          10534      445/nmbd
    udp        0      0 0.0.0.0:138             0.0.0.0:*                           0          10523      445/nmbd
    udp        0      0 0.0.0.0:5353            0.0.0.0:*                           108        9091       235/avahi-daemon: r
    udp        0      0 192.168.1.13:39659      0.0.0.0:*                           109        10106      420/knxd
    udp        0      0 0.0.0.0:809             0.0.0.0:*                           0          7139       209/rpcbind
    udp        0      0 0.0.0.0:68              0.0.0.0:*                           0          9181       418/dhcpcd
    udp        0      0 0.0.0.0:3671            0.0.0.0:*                           109        10108      420/knxd
    udp        0      0 0.0.0.0:111             0.0.0.0:*                           0          7138       209/rpcbind
    udp        0      0 0.0.0.0:39792           0.0.0.0:*                           108        9093       235/avahi-daemon: r
    udp6       0      0 :::58081                :::*                                108        9094       235/avahi-daemon: r
    udp6       0      0 :::5353                 :::*                                108        9092       235/avahi-daemon: r
    udp6       0      0 :::809                  :::*                                0          7142       209/rpcbind
    udp6       0      0 :::111                  :::*                                0          7141       209/rpcbind
    Aber die Visu ist trotzdem nicht erreichbar...

    Einen Kommentar schreiben:


  • patrickgoll
    antwortet
    Also das ist fast richtig. Wenn ich das richtig gesehen habe, dann hast du deinen PI mit der IP Adresse 192.168.1.13. Also ist dein Heimnetz wahrscheinlich 192.168.1.0/24.

    Das heißt du solltest nur eine Zeile haben die da heißt "allow 192.168.1.0/24" und die andere allow Zeile kann weg.

    Und wenn der NGINX dann durchgestartet ist sollte das auch gehen.

    sudo netstat -tulpen sollte dir auf jeden Fall Einträge für mindestens folgende Ports zeigen: 80, 443, 9000 und 9090, sowie 2323 und 2424 und 8383 wegen smarthomeNG.

    Einen Kommentar schreiben:


  • Max2612
    antwortet
    Hallo nochmal

    Ich bin leider noch nicht weiter gekommen.

    Der Aufruf meiner Domain im eigenen Netzwerk bringt ein "Diese Website ist nicht erreichbar",
    und von außerhalb, lande ich immer bei der Anmeldung für den Alexa Teil.

    Was kann ich noch versuchen?
    Gruß, Max

    Einen Kommentar schreiben:


  • Max2612
    antwortet
    Habe jetzt folgendes gemacht:

    /etc/php/7.0/fpm/pool.d/www.conf
    Code:
    [www]
    
    user = www-data
    group = www-data
    
    listen = 127.0.0.1:9090
    
    listen.owner = www-data
    listen.group = www-data
    
    pm = dynamic
    
    
    pm.max_children = 5
    
    pm.start_servers = 2
    
    pm.min_spare_servers = 1
    
    pm.max_spare_servers = 3
    Alles was auskommentiert war, habe ich jetzt entfernt.

    /etc/nginx/sites-available/default.conf
    Code:
    upstream php {  
     server localhost:9090;
    }  
    
    server {
        listen 80 default_server;
        server_name xyz.spdns.eu;
        satisfy any;
        allow 192.168.1.31/24;
        allow 192.168.179.21/24;
        deny all;
        auth_basic "SmartVisu Anmeldung";
        auth_basic_user_file /etc/nginx/htpasswd;
        root /var/www/html;
        index index.php index.html index.htm;
    
       location / {
         autoindex on;
       }
    
       location ~ \.php$ {
         include /etc/nginx/fastcgi_params;    
         fastcgi_pass 127.0.0.1:9090;    
         fastcgi_read_timeout 300;  
         fastcgi_read_timeout 300;
         fastcgi_index index.php;
         fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
      }
    
      location /.well-known {      
           allow all;  
      }
    }
    Dann
    Code:
    sudo service nginx restart
    Aufruf der Domain: Diese Website ist nicht erreichbar
    Aufruf der Domain/smartvisu: Diese Website ist nicht erreichbar
    Aufruf mit IP-Raspi/smartvisu: Fehler 501

    Aufruf der Domain von extern: Authentifizierung für Alexa -- Error 501
    Zuletzt geändert von Max2612; 22.09.2017, 19:11.

    Einen Kommentar schreiben:


  • Max2612
    antwortet
    Ah, ok, Danke
    Zuletzt geändert von Max2612; 22.09.2017, 16:01.

    Einen Kommentar schreiben:


  • patrickgoll
    antwortet
    Ne das wäre bei dir dann www.xyz.spdns.eu

    Einen Kommentar schreiben:


  • Max2612
    antwortet
    Nur zum Verständnis...

    Code:
       
     server_name smarthome.fritz.box;
    wäre in meinem Fall www.xyz.spdns.eu, richtig? Oder brauche ich hier eine subdomain? Würde dann der Aufruf der Domain direkt zur Visu führen?

    Einen Kommentar schreiben:


  • Max2612
    antwortet
    Super, das wird dann das Projekt fürs Wochenende.
    Besten Dank!

    Einen Kommentar schreiben:


  • patrickgoll
    antwortet
    Okay. Endlich. Mhh mal sehen.
    Jetzt weiß ich auch wieder wofür ich php-fpm benötigt habe. Damit nämlich der nginx die Visu korrekt anzeigt.
    Also installierst du php-fpm:
    Code:
    sudo apt-get install php-fpm
    Danach passt du unter /etc/php/7.0/fpm/pool.d/ die config www.conf an:
    Du musst da den socket listen mit einem ; auskommentieren und deine Listen direktive auf deine Local Loopback mit dem Port 9090 legen.

    Code:
    ; The address on which to accept FastCGI requests.
    ; Valid syntaxes are:
    ; 'ip.add.re.ss:port' - to listen on a TCP socket to a specific IPv4 address on
    ; a specific port;
    ; '[ip:6:addr:ess]:port' - to listen on a TCP socket to a specific IPv6 address on
    ; a specific port;
    ; 'port' - to listen on a TCP socket to all addresses
    ; (IPv6 and IPv4-mapped) on a specific port;
    ; '/path/to/unix/socket' - to listen on a unix socket.
    ; Note: This value is mandatory.
    ;listen = /run/php/php7.0-fpm.sock
    listen = 127.0.0.1:9090
    Anschließend musst du nun deine Visu über den NGINX erreichbar machen.

    Ich habe das in der config (etc/nginx/sites-available/default.conf) so gelöst:
    Code:
      
    
    upstream php {  
     server localhost:9090;
    }  
    
    server {
        listen 80 default_server;
        server_name smarthome.fritz.box;
        satisfy any;
        allow 192.168.1.0/24;
        allow 192.168.179.0/24;
        deny all;
        auth_basic "SmartVisu Anmeldung";
        auth_basic_user_file /etc/nginx/htpasswd;
        root /var/www/html;
        index index.php index.html index.htm;
    
       location / {
         autoindex on;
       }
    
       location ~ \.php$ {
         include /etc/nginx/fastcgi_params;    
         fastcgi_pass 127.0.0.1:9090;    
         fastcgi_read_timeout 300;  
         fastcgi_read_timeout 300;
         fastcgi_index index.php;
         fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
      }
    
      location /.well-known {      
           allow all;  
      }
    }
    Wie du hier sehen kannst erlaube ich den Zugriff auf meine Visu auf Port 80 für das Netz 192.168.1.0/24 und 192.168.179.0 und ansonsten kommt eine Anmeldeabfrage. Das kannst du auf dein Netz anpassen, sodass du von intern nicht jedes mal eine Anmeldung bekommst. Wichtig ist auch der upstream Teil und vorallem die location ~\.php$ Dort biegst du praktisch die direktive um auf deinen Port 9090, damit php-fpm das regeln kann. Es kann sein, dass du noch einen Bad Gateway oder einen 500er Fehler bekommst. Lass mich wissen wenn das passiert. Und nicht vergessen den nginx nach der Aktion durchzustarten.


    Einen Kommentar schreiben:


  • Max2612
    antwortet
    Unglaublich!! Ich habs geschafft.
    Der Fehler war, dass ich den Skill in EnglishUS erstellt habe. Jetzt auf Deutsch umgestellt, und es funktioniert. Geil!!


    So, nun erreiche ich aber die Visu nicht mehr. Liegt wohl am Apache, der deaktiviert ist. Hast du hierfür auch noch eine Lösung??

    Einen Kommentar schreiben:


  • patrickgoll
    antwortet
    Hast du bei deinem Skill bei Authorization Grant Type "implicit" oder "auth"? Der Smart Home Skill von Alexa erfordert einen oauth, sonst kann der nicht funktionieren. Mich macht das mehr als stutzig, dass du dich nicht anmelden musst.

    Hast du in der Developer Console unter Apss und Services, Login with Amazon ein eigenes Profil hinterlegt und die Client ID und auch den das Client Secret im Skill hinterlegt?

    Einen Kommentar schreiben:


  • Max2612
    antwortet
    Danke für die Bilder!

    Nochmal alles durchgegangen. Sieht bei mir genauso aus.

    Ein Lambda Test ergibt
    Code:
    192.168.1.13 - - [22/Sep/2017 09:25:12] "POST / HTTP/1.0" 200 -
    2017-09-22 09:25:26 DEBUG    service      alexa        HTTP/1.0 POST / -- service.py:do_POST:44
    Und von der App
    Code:
    192.168.1.13 - - [22/Sep/2017 09:25:26] code 500, message Internal Server Error
    192.168.1.13 - - [22/Sep/2017 09:25:26] "POST / HTTP/1.0" 500 -
    Wenn ich den Skill deaktiviere und anschließend aktiviere, meldet die App "Alexa wurde erfolgreich mit MySkill verknüpft."
    Ohne Anmeldedaten einzugeben...

    Einen Kommentar schreiben:

Lädt...
X