Raspberrypi.certbot: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Root (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
(44 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
* Ich will ein "*" Zertifikat von lets encrypt erhalten, dieses einzelne Zertifikat ist dann für alle Subdomains gültig | == Zertifikat via :80 == | ||
* script fähig | |||
# | |||
# Fahre deinen Webserver runter, certbot wird auf :80 einen eigenen | |||
# Server starten! | |||
# | |||
certbot certonly --standalone --rsa-key-size 4096 -d subdomain.domain.tld | |||
== Wildcard-Zertifikat via "DNS" == | |||
* Ich will ein Wildcard- oder "*"- Zertifikat von lets encrypt erhalten, dieses einzelne Zertifikat ist dann für alle Subdomains gültig | |||
** in meinem Fall heist die zu zertifizeirende Domain *.orgamon.org | ** in meinem Fall heist die zu zertifizeirende Domain *.orgamon.org | ||
** das Zertifikat ist dann für alle möglichen Subdomains möglich, z.B. www.orgamon.org, wiki.orgamon.org usw. | ** das Zertifikat ist dann für alle möglichen Subdomains möglich, z.B. www.orgamon.org, wiki.orgamon.org usw. | ||
** ich habe bereits einen "*" A Record, das bedeutet das alle Subdomain-Worte auf immer die gleiche IP-Adresse aufgelöst werden | ** ich habe bereits einen "*" A Record, das bedeutet das alle Subdomain-Worte auf immer die gleiche IP-Adresse aufgelöst werden | ||
** aber dies ist für das Zertifikat irrelevant, die Aufgabe des Zertifikats ist nicht die validierung der IP-Adresse, es könnte also hop.orgamon.org auf eine andere ip Adresse auflösen als top.orgamon.org. Das Zertifikat wäre dennoch für beide Domain-Namen gültig. | |||
* Ich muss lets encrypt nachweisen dass ich "Eigentümer" der entsprechenden "orgamon.org" Domain bin | * Ich muss lets encrypt nachweisen dass ich "Eigentümer" der entsprechenden "orgamon.org" Domain bin | ||
* Dies mache ich durch eine Modifikation meiner DNS Einstellungen, ich bin Kunde bei Schlund Tech in Karlsruhe (https://www.schlundtech.com/) | * Dies mache ich durch eine Modifikation meiner DNS-Einstellungen, ich bin Kunde bei Schlund-Tech in Karlsruhe (https://www.schlundtech.com/) | ||
* Ich muss bei meinem zuküftigen Server KEINE eingehenden Ports öffnen! | |||
* eine Internetverbindung brauche ich jedoch | |||
* Aber Schritt für Schritt: | * Aber Schritt für Schritt: | ||
== Erhalte | === Erhalte deine DNS Challenge === | ||
* Der genaue Name der Challenge ist "DNS-01 challenge", siehe https://letsencrypt.org/de/docs/challenge-types/ | |||
certbot certonly --manual --rsa-key-size 4096 --preferred-challenges "dns" | > <b>certbot certonly --manual --rsa-key-size 4096 --preferred-challenges "dns"</b> | ||
Saving debug log to /var/log/letsencrypt/letsencrypt.log | <i>Saving debug log to /var/log/letsencrypt/letsencrypt.log | ||
Plugins selected: Authenticator manual, Installer None | Plugins selected: Authenticator manual, Installer None | ||
Please enter in your domain name(s) (comma and/or space separated) (Enter 'c' | Please enter in your domain name(s) (comma and/or space separated) (Enter 'c' | ||
Zeile 28: | Zeile 45: | ||
Are you OK with your IP being logged? | Are you OK with your IP being logged? | ||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | ||
(Y)es/(N)o: Y | (Y)es/(N)o: <b>Y</b> | ||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | ||
Zeile 38: | Zeile 55: | ||
Before continuing, verify the record is deployed. | Before continuing, verify the record is deployed. | ||
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | ||
Press Enter to Continue | Press Enter to Continue</i> | ||
* Du hast jetzt einige Minuten Zeit die Challenge zu erfüllen | * Du hast jetzt einige Minuten Zeit die Challenge zu erfüllen, Ziel ist: | ||
* Wenn ich einen Internet-Nameserver frage: Was ist dein TXT Eintrag für den Wert "_acme-challenge" der Domain "orgamon.org" muss er antworten "0wz2rG2Cj6U4jDJqfSf918fLBNAzHhPUsBCM-SWnEHU" | |||
== Erfülle die DNS Challenge == | === Erfülle die DNS Challenge === | ||
* Logge dich bei deinem IP Provider ein und lege bei den "Nameserver-Einstellungen" einen neuen TXT Record an, Gebe 3 Sachen ein | * Logge dich bei deinem IP Provider ein und lege bei den "Nameserver-Einstellungen" einen neuen TXT Record an, Gebe 3 Sachen ein | ||
** Name ist "_acme-challenge", kein Punkt, keine Wiederholung der Domain, einfach immer diese Konstante | ** Name ist "_acme-challenge", kein Punkt, keine Wiederholung der Domain, einfach immer nur diese Konstante, ohne Anführungszeichen | ||
** Typ ist "TXT", das schadet dann nix für irgendwelche andere Anwendungen | ** Typ ist "TXT", das schadet dann nix für irgendwelche andere Anwendungen, das wählt man normalerweise aus einer Combobox aus | ||
** Den Wert hat Dir eben lets encrypt mitgeteilt, das ist der Kern der Challenge | ** Den "Wert" hat Dir eben lets encrypt mitgeteilt, das ist der Kern der Challenge, der ist <code>0wz2rG2Cj6U4jDJqfSf918fLBNAzHhPUsBCM-SWnEHU</code> | ||
* Ich bin beim Schlund in Karlsruhe, dort sieht das "so" aus: | * Ich bin beim Schlund in Karlsruhe, dort sieht das gespeichert "so" aus: | ||
[[Datei:DNS-01.png]] | [[Datei:DNS-01.png]] | ||
== Prüfe den TXT Record nachdem Du gespeichert hast == | === Prüfe den TXT Record nachdem Du gespeichert hast === | ||
* Nemhe dafür ein anderes System, oben wartet "certbot" immer noch auf <ENTER>, dass soll so bleiben! | * Nemhe dafür ein anderes System, oben wartet "certbot" immer noch auf <ENTER>, dass soll so bleiben! | ||
Zeile 94: | Zeile 112: | ||
;; MSG SIZE rcvd: 323 | ;; MSG SIZE rcvd: 323 | ||
* so muss das aussehen! Nun kann man "oben" <ENTER> drücken | * so muss das aussehen! Nun endlich kann man "oben" <ENTER> drücken | ||
* das Zertifikat sollte erstellt | * certbot prüft nun den _acme-challenge Wert ob er so ist wie vorgegeben | ||
* das Zertifikat sollte erstellt werden können | |||
=== das erhaltene Zertifikat === | |||
* wurde nun in das angegebene Verzeichnis gespeichert | |||
IMPORTANT NOTES: | IMPORTANT NOTES: | ||
Zeile 112: | Zeile 134: | ||
Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate | Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate | ||
Donating to EFF: https://eff.org/donate-le | Donating to EFF: https://eff.org/donate-le | ||
== Gültigkeitsdauer prüfen == | |||
certbot certificates | |||
== löschen == | |||
certbot delete | |||
* Es erscheint ein UI und man kann das zu löschende Zertifikat auswählen | |||
== Zertifikate auffrischen == | |||
* Je nach Verfahren, wie man erstmals ein Zertifikat erhalten hat muss man eine der Alternativen auswählen | |||
=== damals via :80 erhalten === | |||
# | |||
# Fahre deinen Webserver runter, certbot wird auf :80 einen eigenen | |||
# Server starten! | |||
# | |||
certbot renew | |||
# | |||
# Vergesse nicht deinen Webserver wieder zu starten | |||
# | |||
=== damals via DNS-Challenge erhalten === | |||
# | |||
# Es ist der gleiche Befehl wie bei der Erstbestellung - | |||
# aber certbot wird erkennen dass schon mal abgerufen wurde | |||
# und frägt nicht alle Infos wiederum ab. Die bisherigen Dateinamen | |||
# bleiben bestehen, es wird das alte Zertifikat durch die aufgfrischte | |||
# Information ersetzt. | |||
# | |||
certbot certonly --manual --rsa-key-size 4096 --preferred-challenges "dns" | |||
# | |||
# Starte deinen Webserver neu, damit die neuen Zertifikate geladen werden | |||
# | |||
==== Beispiele ==== | |||
*.orgamon.com | |||
*.orgamon.de | |||
*.orgamon.eu | |||
*.orgamon.org | |||
*.orgamon.net | |||
# Mögliche halbautomatische Erneuerung, Script "update-certs.sh" | |||
#!/bin/bash | |||
echo "Take 1 if you are asked [12], in this case the cert is NOT to be candidate for a renew" | |||
certbot certonly --manual --rsa-key-size 4096 --preferred-challenges "dns" --domain "*.orgamon.com" | |||
certbot certonly --manual --rsa-key-size 4096 --preferred-challenges "dns" --domain "*.orgamon.de" | |||
certbot certonly --manual --rsa-key-size 4096 --preferred-challenges "dns" --domain "*.orgamon.eu" | |||
certbot certonly --manual --rsa-key-size 4096 --preferred-challenges "dns" --domain "*.orgamon.org" | |||
certbot certonly --manual --rsa-key-size 4096 --preferred-challenges "dns" --domain "*.orgamon.net" | |||
systemctl restart nginx |
Aktuelle Version vom 26. Januar 2022, 17:21 Uhr
Zertifikat via :80
- script fähig
# # Fahre deinen Webserver runter, certbot wird auf :80 einen eigenen # Server starten! # certbot certonly --standalone --rsa-key-size 4096 -d subdomain.domain.tld
Wildcard-Zertifikat via "DNS"
- Ich will ein Wildcard- oder "*"- Zertifikat von lets encrypt erhalten, dieses einzelne Zertifikat ist dann für alle Subdomains gültig
- in meinem Fall heist die zu zertifizeirende Domain *.orgamon.org
- das Zertifikat ist dann für alle möglichen Subdomains möglich, z.B. www.orgamon.org, wiki.orgamon.org usw.
- ich habe bereits einen "*" A Record, das bedeutet das alle Subdomain-Worte auf immer die gleiche IP-Adresse aufgelöst werden
- aber dies ist für das Zertifikat irrelevant, die Aufgabe des Zertifikats ist nicht die validierung der IP-Adresse, es könnte also hop.orgamon.org auf eine andere ip Adresse auflösen als top.orgamon.org. Das Zertifikat wäre dennoch für beide Domain-Namen gültig.
- Ich muss lets encrypt nachweisen dass ich "Eigentümer" der entsprechenden "orgamon.org" Domain bin
- Dies mache ich durch eine Modifikation meiner DNS-Einstellungen, ich bin Kunde bei Schlund-Tech in Karlsruhe (https://www.schlundtech.com/)
- Ich muss bei meinem zuküftigen Server KEINE eingehenden Ports öffnen!
- eine Internetverbindung brauche ich jedoch
- Aber Schritt für Schritt:
Erhalte deine DNS Challenge
- Der genaue Name der Challenge ist "DNS-01 challenge", siehe https://letsencrypt.org/de/docs/challenge-types/
> certbot certonly --manual --rsa-key-size 4096 --preferred-challenges "dns"
Saving debug log to /var/log/letsencrypt/letsencrypt.log Plugins selected: Authenticator manual, Installer None Please enter in your domain name(s) (comma and/or space separated) (Enter 'c' to cancel): *.orgamon.org Obtaining a new certificate Performing the following challenges: dns-01 challenge for orgamon.org - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - NOTE: The IP of this machine will be publicly logged as having requested this certificate. If you're running certbot in manual mode on a machine that is not your server, please ensure you're okay with that. Are you OK with your IP being logged? - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y)es/(N)o: Y - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Please deploy a DNS TXT record under the name _acme-challenge.orgamon.org with the following value: 0wz2rG2Cj6U4jDJqfSf918fLBNAzHhPUsBCM-SWnEHU Before continuing, verify the record is deployed. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Press Enter to Continue
- Du hast jetzt einige Minuten Zeit die Challenge zu erfüllen, Ziel ist:
- Wenn ich einen Internet-Nameserver frage: Was ist dein TXT Eintrag für den Wert "_acme-challenge" der Domain "orgamon.org" muss er antworten "0wz2rG2Cj6U4jDJqfSf918fLBNAzHhPUsBCM-SWnEHU"
Erfülle die DNS Challenge
- Logge dich bei deinem IP Provider ein und lege bei den "Nameserver-Einstellungen" einen neuen TXT Record an, Gebe 3 Sachen ein
- Name ist "_acme-challenge", kein Punkt, keine Wiederholung der Domain, einfach immer nur diese Konstante, ohne Anführungszeichen
- Typ ist "TXT", das schadet dann nix für irgendwelche andere Anwendungen, das wählt man normalerweise aus einer Combobox aus
- Den "Wert" hat Dir eben lets encrypt mitgeteilt, das ist der Kern der Challenge, der ist
0wz2rG2Cj6U4jDJqfSf918fLBNAzHhPUsBCM-SWnEHU
- Ich bin beim Schlund in Karlsruhe, dort sieht das gespeichert "so" aus:
Prüfe den TXT Record nachdem Du gespeichert hast
- Nemhe dafür ein anderes System, oben wartet "certbot" immer noch auf <ENTER>, dass soll so bleiben!
- Ev. ein paar Sekunden warten bis die Name-Server auf dem neuesten Stand sind
- mache dann:
dig -t TXT _acme-challenge.orgamon.org
; <<>> DiG 9.11.2 <<>> -t TXT _acme-challenge.orgamon.org ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 51056 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 13, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;_acme-challenge.orgamon.org. IN TXT ;; ANSWER SECTION: _acme-challenge.orgamon.org. 21599 IN TXT "0wz2rG2Cj6U4jDJqfSf918fLBNAzHhPUsBCM-SWnEHU" ;; AUTHORITY SECTION: . 13136 IN NS d.root-servers.net. . 13136 IN NS m.root-servers.net. . 13136 IN NS e.root-servers.net. . 13136 IN NS f.root-servers.net. . 13136 IN NS j.root-servers.net. . 13136 IN NS i.root-servers.net. . 13136 IN NS k.root-servers.net. . 13136 IN NS g.root-servers.net. . 13136 IN NS l.root-servers.net. . 13136 IN NS a.root-servers.net. . 13136 IN NS h.root-servers.net. . 13136 IN NS b.root-servers.net. . 13136 IN NS c.root-servers.net. ;; Query time: 47 msec ;; SERVER: 192.168.100.181#53(192.168.100.181) ;; WHEN: Tue Feb 26 11:53:26 CET 2019 ;; MSG SIZE rcvd: 323
- so muss das aussehen! Nun endlich kann man "oben" <ENTER> drücken
- certbot prüft nun den _acme-challenge Wert ob er so ist wie vorgegeben
- das Zertifikat sollte erstellt werden können
das erhaltene Zertifikat
- wurde nun in das angegebene Verzeichnis gespeichert
IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/orgamon.org/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/orgamon.org/privkey.pem Your cert will expire on 2019-05-27. To obtain a new or tweaked version of this certificate in the future, simply run certbot again. To non-interactively renew *all* of your certificates, run "certbot renew" - If you like Certbot, please consider supporting our work by: Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate Donating to EFF: https://eff.org/donate-le
Gültigkeitsdauer prüfen
certbot certificates
löschen
certbot delete
- Es erscheint ein UI und man kann das zu löschende Zertifikat auswählen
Zertifikate auffrischen
- Je nach Verfahren, wie man erstmals ein Zertifikat erhalten hat muss man eine der Alternativen auswählen
damals via :80 erhalten
# # Fahre deinen Webserver runter, certbot wird auf :80 einen eigenen # Server starten! # certbot renew # # Vergesse nicht deinen Webserver wieder zu starten #
damals via DNS-Challenge erhalten
# # Es ist der gleiche Befehl wie bei der Erstbestellung - # aber certbot wird erkennen dass schon mal abgerufen wurde # und frägt nicht alle Infos wiederum ab. Die bisherigen Dateinamen # bleiben bestehen, es wird das alte Zertifikat durch die aufgfrischte # Information ersetzt. # certbot certonly --manual --rsa-key-size 4096 --preferred-challenges "dns" # # Starte deinen Webserver neu, damit die neuen Zertifikate geladen werden #
Beispiele
*.orgamon.com *.orgamon.de *.orgamon.eu *.orgamon.org *.orgamon.net
# Mögliche halbautomatische Erneuerung, Script "update-certs.sh"
#!/bin/bash echo "Take 1 if you are asked [12], in this case the cert is NOT to be candidate for a renew" certbot certonly --manual --rsa-key-size 4096 --preferred-challenges "dns" --domain "*.orgamon.com" certbot certonly --manual --rsa-key-size 4096 --preferred-challenges "dns" --domain "*.orgamon.de" certbot certonly --manual --rsa-key-size 4096 --preferred-challenges "dns" --domain "*.orgamon.eu" certbot certonly --manual --rsa-key-size 4096 --preferred-challenges "dns" --domain "*.orgamon.org" certbot certonly --manual --rsa-key-size 4096 --preferred-challenges "dns" --domain "*.orgamon.net" systemctl restart nginx