DSM 6.x und darunter Let's Encrypt Zertifikat abgelaufen - wie erneuern

Alle DSM Version von DSM 6.x und älter

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.159
Punkte für Reaktionen
912
Punkte
424
Man muss noch nicht mal die Datei anlegen. Man kann den Befehl direkt in dem Feld "Benutzerdefiniertes Skript" eintragen.
Ob es nicht mehr automatisch geht ... muss ich noch 2-3 Wochen warten bis eine Erneuerung ansteht.
 

TeXniXo

Benutzer
Mitglied seit
07. Mai 2012
Beiträge
4.948
Punkte für Reaktionen
100
Punkte
134
Meine laufen auch per 21.05. aus - bin dann gespannt ^^
Sonst greif auch ich auf dieses Skript zurück!
 

peterPan75

Benutzer
Mitglied seit
03. Apr 2014
Beiträge
122
Punkte für Reaktionen
0
Punkte
0
Hallo,
pack
Rich (BBCode):
/usr/syno/sbin/syno-letsencrypt renew-all
in den Aufgabenplaner und führe es manuell aus.

Gruß Götz

Great !!

PS: manche fragen sich warum es plötzlich nicht mehr ging... für mich konnte ich das Problem möglicherweise ausmachen...

meine FritzBox hatte aus mir unbekannten Gründen die Portfreigaben für meine DS verschluckt...beim neu anlegen hab ich Port 80 vergessen.
 

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.159
Punkte für Reaktionen
912
Punkte
424
Bei mir lief die Erneuerung immer noch ohne Probleme. Auf die manuelle Variante musste ich noch nicht zurück greifen bis jetzt.
Port 80 und 443 sind bei mir immer offen.
 

toro

Benutzer
Mitglied seit
22. Jun 2013
Beiträge
107
Punkte für Reaktionen
0
Punkte
0
Hi,
ich habe hierzu eine Frage: was genau macht dieses Skript? Ich meine, wenn ich das manuell ausgeführt habe, dann erscheint bei mir immer noch das alte Verfallsdatum des Zertifikats. Mache ich da was falsch?

Gruss


Toro


Hallo,
pack
Rich (BBCode):
/usr/syno/sbin/syno-letsencrypt renew-all
in den Aufgabenplaner und führe es manuell aus.

Gruß Götz
 

Matthieu

Benutzer
Mitglied seit
03. Nov 2008
Beiträge
13.222
Punkte für Reaktionen
88
Punkte
344
Mache ich da was falsch?
Das kommt darauf an: Ist dein Zertifikat schon abgelaufen oder gerade erst erneuert? Dann ja. In beiden Fällen tut das Skript gar nichts.

MfG Matthieu
 

helmut72

Benutzer
Mitglied seit
10. Mai 2013
Beiträge
457
Punkte für Reaktionen
3
Punkte
18
dass du mit einem einzigen Zertifikat bis zu 10 Subdomains mit abfrühstücken kannst
Das sehe ich als Nachteil. Jeder Client kann sich die anderen 9 Subdomains anzeigen und weiß, was Du sonst für Subdomains bzw. Dienste laufen hast. Vielleicht ist ja das ein oder andere unerwünscht, dass nicht gleich jeder gemütlich auslesen kann.
 

Handfest

Benutzer
Mitglied seit
14. Apr 2010
Beiträge
42
Punkte für Reaktionen
3
Punkte
8
Genau das scheint bei mir das Problem:
Obwohl es weder abgelaufen noch gerade erst erneuert wurde läuft der Aufruf aus #20 (per ssh und auch im Aufgabenplaner) ohne Fehler durch - es passiert aber nix...
Ports 80/443 sind offen und auch benutzbar, Domain ist erreichbar.

Any hints?

Gruß Handfest
 

Matthieu

Benutzer
Mitglied seit
03. Nov 2008
Beiträge
13.222
Punkte für Reaktionen
88
Punkte
344
Das sollte eigentlich passen.
Mit "-vv" lässt sich bei dem Prozess das Debugging aktivieren. Das könnte noch helfen.

MfG Matthieu
 

Handfest

Benutzer
Mitglied seit
14. Apr 2010
Beiträge
42
Punkte für Reaktionen
3
Punkte
8
Der Tipp war gut.

Zum Einen war meine Stammdomain nicht erreichbar. Irgendein Test und eine verstellte vhosts. Habe ich jetzt neu eingerichtet. Die (Dummy-)Seite ist jetzt wieder erreichbar.

Leider gibt es jetzt eine neue Fehlermeldung, die offenbar damit zu tun hat dass der Synology-eigene DDNS Service verwendet wird um den Domainnamen aufzulösen:

Date: Thu, 01 Jun 2017 20:33:27 GMT
Connection: close

] Body: [{
"type": "urn:acme:error:rateLimited",
"detail": "Error creating new authz :: Too many invalid authorizations recently.",
"status": 429
}]
DEBUG: Not synology DDNS.
DEBUG: DNS challenge failed, reason: {"error":108,"file":"challenge.cpp","msg":"Not synology DDNS."}


DEBUG: Normal challenge failed, reason: {"error":200,"file":"client.cpp","msg":"new_authz: unexpect httpcode."}

Zusätzlich sind jetzt so viele fehlgeschlagene Anfragen gelaufen dass das Limit erschöpft ist.

Meine Domain kann mit dem im Zertifikat gefundenen Domainnamen erreicht werden ohne übe irgendeinen (Synology-)DDNS-Service zu gehen (s. oben)

Was kann ich tun? Insbesondere das Verhalten mit der Namensauflösung über den *.myds.me war vor dem letzten/vorletzten Update definitiv anders.

Gruß Handfest
 

Matthieu

Benutzer
Mitglied seit
03. Nov 2008
Beiträge
13.222
Punkte für Reaktionen
88
Punkte
344
Hallo,
ich vermute eher, dass Synology für seine eigenen Domains noch eine zusätzliche Prüfung eingebaut hat, oder die DNS-Verifizierung unterstützt über irgendeinen selbst implementierten Weg. Bei nicht-Synology-Domains schlägt das logischerweise fehl. Ich würde mal abwarten was passiert, wenn etwas Zeit verstrichen ist und wieder Anfragen an LE möglich sind.

MfG Matthieu
 

umbrella

Benutzer
Mitglied seit
24. Aug 2013
Beiträge
132
Punkte für Reaktionen
0
Punkte
16
Bei mir klappt das alles irgendwie gar nicht.
Mein Let's Encrypt Zertifikat ist am 1. Juni abgelaufen. 1-2 Wochen zuvor habe ich versucht, es mit dem Script von goetz zu erneuern. Da passiert gar nichts (siehe Screenshot), ich kriege auch keine Statusmail o.ä. So wie ich es verstehe, geht das Script ja nur vor Ablauf des Zertifikats.
Nun habe ich das alte Zertifikat gelöscht und versuche, ein neues zu erstellen. Das scheitert an der Prüfung der Domain per HTTP. Ich werde aufgefordert, die Ports zu überprüfen. Aber auf der Diskstation ist die Firewall aus und in der FritzBox habe ich die Ports 80 und 443 zur Diskstation geöffnet.

Irgendeine Idee?
iru-diskstation - Synology DiskStation 2017-06-03 17-59-47.jpg


iru-diskstation - Synology DiskStation 2017-06-03 17-55-00.jpg
 

umbrella

Benutzer
Mitglied seit
24. Aug 2013
Beiträge
132
Punkte für Reaktionen
0
Punkte
16
Ich dachte schon, das Problem gefunden zu haben: Ich hatte in der DSM unter Systemsteuerung/Netzwerk/DSM-Einstellungen eigene Ports für HTTP und HTTPS festgelegt. So konnte ich mir das Fehlschlagen der Domainprüfung durch Let's Encrypt via Port 80 erklären. Also wollte ich die Ports wieder auf den Standard (HTTP 80 und HTTPS 443) zurücksetzen. Da meckert aber die DSM, diese Ports seien "für Systemverwendung reserviert".
Ich lese nach und finde, dass für die DSM standardmäßig die Ports 5000 und 5001 gelten. Wie kann es dann überhaupt funktionieren, wenn Let's Encrypt unter Port 80 nach meiner Diskstation sucht?

Nun bin ich wieder so schlau wie vorher. Port 80 und 443 sind bei mir in der FritzBox geöffnet und leiten zur IP-Adresse der Diskstation. Dahin verweist ja auch per DynDNS meine Subdomain, für welche ich ein neues Zertifikat erstellen will. Muss ich bei der Erstellung des Zertifikats die Domain eingeben ohne die Subdomain? Bei den letzten Zertifikaten ging es doch auch über die Subdomain?

Was mache ich falsch bzw. wie könnte ich weiter suchen?
 

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.159
Punkte für Reaktionen
912
Punkte
424
Es lauscht immer ein Webserver an 80/443.
Solange die Web Station nicht installiert ist, werden Anfragen an diese Ports auf 5000/5001 umgeleitet.
Wenn die Web Station installiert ist antwortet eben die dort zuständige Instanz.

Die Anfrage die der Lets Encrypt Client raus schickt wird vermutlich dynamisch an diese Randbedingungen angepaßt bzw. es wird dafür gesorgt, dass alle Rückfragen an /well-known/.acme-challenge oder ähnlich beim LE Client landen, egal welcher webserver/vHost etc läuft. Muss zugeben, habs mir im Detail noch nie angeschaut.
In dem Dialog ist eigentlich nur wichtig, dass alle eingetragenen Domains exakt in dieser Schreibweise auf die DS aufgelöst und auch von dieser beantwortet werden.

Eventuell das Script mal mit -vv als zusätzlichen Parameter vor renew-all eintragen und den Befehl auch direkt auf der Konsole absetzen um mehr Debug Info zu bekommen.
 

umbrella

Benutzer
Mitglied seit
24. Aug 2013
Beiträge
132
Punkte für Reaktionen
0
Punkte
16
Danke für die Infos!
Bei mir ist die Web Station nicht installiert. Ich hätte jetzt kein Problem, die nur zu dem Zweck zu installieren, falls das nicht extrem viel unnötige Arbeit macht, Ressourcen schluckt etc. (Ist natürlich schon lustig, nur für die Erneuerung des Zertifikats, wenn ich die Web Station sonst nicht brauche).

Allerdings wenn es so ist wie Du beschreibst, dass Anfragen an Port 80 nach 5000 weitergeleitet werden, sollte es eigentlich klappen, denn ein netter Mensch bei Let's Encrypt hat mir erklärt, dass Let's Encrypt zwar nicht direkt Custom Ports abrfragt, dass aber durchaus bestehende Weiterleitungen akzeptiert werden.

Also meine nächsten Schritte wären dann einmal, die Web Station zu installieren und das Script mit -vv laufen zu lassen. Aber geht das jetzt überhaupt noch, wo das Zertifikat schon abgelaufen ist?
 

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.159
Punkte für Reaktionen
912
Punkte
424
Du musst die Web Station nicht extra installieren. Das war nur zur allgemeinen info, die Web Station ist weder eine Zwangsvoraussetzung noch nötig um den LE-Client zu benutzen.

Ob der noch funktioniert nachdem die Zertifikate abgelaufen sind, habe ich noch nie getestet.
Aber für den Neuantrag wäre das auch eine Option, da die Meldung in der GUI ja scheinbar nicht reicht (und du dir sicher bist, dass http://sub.domain.de auf deiner DS landet und du dafür auch das Zertifikat angefragt hast)
Der Befehl wäre da glaube ich
syno-letsencrypt new-cert -d nas.domain.com -m mail@domain.com -vv
 

umbrella

Benutzer
Mitglied seit
24. Aug 2013
Beiträge
132
Punkte für Reaktionen
0
Punkte
16
Also mit dem letztgenannten Befehl hat es momentan nicht geklappt. Ich bekomme die Meldung: "Some of your settings are invalid. Please enter them again".
 


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat