Ankündigung

Einklappen
Keine Ankündigung bisher.

Alexa Custom Skill für EDOMI (LBS 19000646 und 19000647)

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

  • jonofe
    antwortet
    Zitat von wintermute Beitrag anzeigen
    Ueberprueft letsencrypt nicht per HTTP(ohneS)?
    Ja, vermutlich hast du recht. Ist schon zu lange her bei mir. Dann muss natürlich auch Port 80 auf den Reverse Proxy weitergeleitet sein, damit es funktioniert.

    Einen Kommentar schreiben:


  • lordofchaos
    antwortet
    Also von ausen ist nur 443 momentan frei.
    Habe ngninx verwendet, wobei auch nur http://IP-Pi die Willkommenseite kommt und nicht bei https://IP-Pi
    SSL bzw Port 443 richte ich ja erst ein Punkt später ein.

    Werde mal Port 80 noch freigeben und schauen

    Einen Kommentar schreiben:


  • wintermute
    antwortet
    Zitat von jonofe Beitrag anzeigen
    per https
    Ueberprueft letsencrypt nicht per HTTP(ohneS)?

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Du musst von außen per https deinen reverse proxy erreichen können, sonst kann letsencrypt deine SSL Installation nicht verifizieren.
    Hast du Port 443 vom DSL Router auf deinen Reverse Proxy weitergeleitet?

    Einen Kommentar schreiben:


  • lordofchaos
    antwortet
    hier noch die letztenb Zeilen aus der lletsencry.log
    Code:
    2017-12-28 18:06:52,407:DEBUG:certbot.reporter:Reporting to user: The following errors were reported by the server:
    
    Domain: XXX
    Type:   connection
    Detail: Connection refused
    
    To fix these errors, please make sure that your domain name was entered correctly and the DNS A/AAAA record(s) for that domain c$
    2017-12-28 18:06:52,409:INFO:certbot.auth_handler:Cleaning up challenges
    2017-12-28 18:06:52,413:DEBUG:certbot.plugins.standalone:Stopping server at :::443...
    2017-12-28 18:06:52,900:DEBUG:certbot.log:Exiting abnormally:
    Traceback (most recent call last):
      File "/opt/eff.org/certbot/venv/bin/letsencrypt", line 11, in <module>
        sys.exit(main())
      File "/opt/eff.org/certbot/venv/local/lib/python2.7/site-packages/certbot/main.py", line 861, in main
        return config.func(config, plugins)
      File "/opt/eff.org/certbot/venv/local/lib/python2.7/site-packages/certbot/main.py", line 786, in certonly
        lineage = _get_and_save_cert(le_client, config, domains, certname, lineage)
      File "/opt/eff.org/certbot/venv/local/lib/python2.7/site-packages/certbot/main.py", line 85, in _get_and_save_cert
        lineage = le_client.obtain_and_enroll_certificate(domains, certname)
      File "/opt/eff.org/certbot/venv/local/lib/python2.7/site-packages/certbot/client.py", line 357, in obtain_and_enroll_certifica$
        certr, chain, key, _ = self.obtain_certificate(domains)
      File "/opt/eff.org/certbot/venv/local/lib/python2.7/site-packages/certbot/client.py", line 318, in obtain_certificate
        self.config.allow_subset_of_names)
      File "/opt/eff.org/certbot/venv/local/lib/python2.7/site-packages/certbot/auth_handler.py", line 81, in get_authorizations
        self._respond(resp, best_effort)
      File "/opt/eff.org/certbot/venv/local/lib/python2.7/site-packages/certbot/auth_handler.py", line 138, in _respond
        self._poll_challenges(chall_update, best_effort)
      File "/opt/eff.org/certbot/venv/local/lib/python2.7/site-packages/certbot/auth_handler.py", line 202, in _poll_challenges
        raise errors.FailedChallenges(all_failed_achalls)
    FailedChallenges: Failed authorization procedure. XXX (tls-sni-01): urn:acme:error:connection :: The server could n$
    weiter oben im log ist noch
    Code:
    "hostname": "XXX",
              "port": "443",
              "addressesResolved": [
                "91.35.149.84",
                "2003:5d:cf7f:b747:3631:c4ff:fe64:4e23"
              ],
              "addressUsed": "91.35.149.84",
              "addressesTried": [
                "2003:5d:cf7f:b747:3631:c4ff:fe64:4e23"
              ]
    dabei ist hier die IP die richtige die ich momentan habe
    Zuletzt geändert von lordofchaos; 28.12.2017, 19:15.

    Einen Kommentar schreiben:


  • lordofchaos
    antwortet
    ich hätte auch ne Frage.
    Bei der Einrichtung von SSL
    Code:
    ./letsencrypt-auto certonly --standalone --rsa-key-size 4096 -d XXX
    Saving debug log to /var/log/letsencrypt/letsencrypt.log
    Plugins selected: Authenticator standalone, Installer None
    Obtaining a new certificate
    Performing the following challenges:
    tls-sni-01 challenge for XXX
    Waiting for verification...
    Cleaning up challenges
    Failed authorization procedure. XXX (tls-sni-01): urn:acme:error:connection :: The server could not connect to the client to verify the domain :: Connection refused
    
    IMPORTANT NOTES:
     - The following errors were reported by the server:
    
       Domain: XXX
       Type:   connection
       Detail: Connection refused
    
       To fix these errors, please make sure that your domain name was
       entered correctly and the DNS A/AAAA record(s) for that domain
       contain(s) the right IP address. Additionally, please check that
       your computer has a publicly routable IP address and that no
       firewalls are preventing the server from communicating with the
       client. If you're using the webroot plugin, you should also verify
       that you are serving files from the webroot path you provided.
    Ich habe aber getestet und meine anderen Dienste sind vom Internet aus erreichbar.
    Bin bei http://myonlineportal.net momentan.
    War vorher bei no-ip.com. Allerdings hatte ich da zum Schluss Probleme gehabt und bin nun gewechselt.

    Muss ich da sonst was beachten, oder gehen nicht alle Dienste bei letsencrypt?

    Einen Kommentar schreiben:


  • Hannes17
    antwortet
    Sorry, hab doch Stretch Lite installiert.

    Mit folgenden Befehl hat er jetzt php 7 ergänzt.
    sudo apt-get -y install php7.0


    Jetzt muss ich nur noch das DynDNS Problem in den Griff bekommen.
    Das USG aktualisiert irgendwie einfach die IP nicht.
    Zuletzt geändert von Hannes17; 28.12.2017, 14:41.

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Zitat von Hannes17 Beitrag anzeigen

    Jessie
    Siehe mein EDIT im Post vorher. Bei Jessie war ich allerdings der Meinung, das php5 enthalten sein sollte.

    ansonsten mal mit

    Code:
    apt-cache search ^php[0-9]
    prüfen, welches PHP enthalten ist.

    Einen Kommentar schreiben:


  • Hannes17
    antwortet
    Zitat von jonofe Beitrag anzeigen
    Welche Raspbian Version hast du installiert?
    Jessie

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Welche Raspbian Version hast du installiert?

    EDIT: Falls es raspbian-stretch ist, dann ist vermutlich kein php6 mehr enthalten.
    Versuch mal statt php7.0 statt php5 anzugeben. Vermutlich würde es sogar ohne PHP funktionieren, denn es wird ja erstmal nur die Reverse Proxy Funktion benötigt.
    Zuletzt geändert von jonofe; 28.12.2017, 13:53.

    Einen Kommentar schreiben:


  • Hannes17
    antwortet
    Hab eben mit der Installation (laut pdf Anleitung) auf dem Pi angefangen. Ist noch ganz leer und neu aufgesetzt.
    Aber er findet keinen Installationspaket für php5:

    "Paket php5 ist nicht verfügbar, wird aber von einem anderen Paket
    referenziert. Das kann heißen, dass das Paket fehlt, dass es abgelöst
    wurde oder nur aus einer anderen Quelle verfügbar ist."

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Wenn du es gemäß Anleitung machst, dann aktivierst Du https auf dem EDOMI Server und gibst nur Port 443 vom Reverse Proxy zum EDOMI Server frei.
    Der Port 8000 ist nur die Kommunikation zwischen Skill Skript und LBS, die aber i.d.R. beide auf dem EDOMI Server laufen.

    Ob du nginx oder apache nimmst ist für diesen Anwendungsfall nicht wirklich wichtig. Beide funktionieren problemlos.

    Einen Kommentar schreiben:


  • lordofchaos
    antwortet
    jonofe

    werde mich wohl nun auch/doch an Alexa wagen
    Mein Netzaufbau ist wie folgt - Fritzbox und dahinter Ipfire mit green, orange und blue Netzwerk aufgeteilt.

    Den Pi würde ich bei mir gerne in DMZ stellen und Alexa geht wohl nur WLAN, somit kommt die bei mir ins WLAN Netz.
    Edomi ist bei mir im internen Netz "Green"

    Wenn ich das richtig sehe muss ich von dem PI aus nur TCP Port 8000 zu edomi frei geben?
    Ist das richtig oder habe ich was übersehen bei deiner Anleitung?
    Auser halt noch Port 443 bei der fritzbox und ipfire zum Pi

    @all
    was habt Ihr den für nen Server geholt. Apache oder ngnix
    ngnix dürfte um einiges Speicherschonender sein. Oder wo liegen die die Vorteile beim jeweiligem?

    Einen Kommentar schreiben:


  • gulp2k
    antwortet
    Zitat von jonofe Beitrag anzeigen
    Ja, der Invocation Name muss m.W. immer am Anfang stehen.
    Ich hab das gerade mal getested und laut Doku soll es auch erlaubt sein das die Invocation am Ende kommt.
    Ein: "Alexa schalte Büro Lich an in Edomi" hat bei mir funktioniert.

    Das bringt mich auf die Idee ob es eventuell Möglich ist mehrere verschieden Invocation Names für einen Custom Skill zu nutzen.
    Dann könnte man vielleicht sagen "Alexa schalte Licht an in Büro" wobei "Büro" der Invocation Name wäre.
    jonofe weißt du ob das Möglich ist oder muss man dann einen Custom Skill pro Raumnamen haben?

    Ich hab mal versucht beim Custom skill als Invocation Name "edomi haus" einzutragen und dann mit "in Haus" aufzurufen was aber nicht funktionert hat bei mir wenn es am Ende war. Am Anfang ("Alexa, sage Haus...") hat es einmal geklappt und dann nicht mehr.

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Beim Smarthome Skill ist die ID nicht vorhanden. Funktioniert derzeit nur mit dem Customskill.

    Einen Kommentar schreiben:

Lädt...
X