<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>https Archive - Maximilian Krieg</title>
	<atom:link href="https://maximiliankrieg.de/tag/https/feed/" rel="self" type="application/rss+xml" />
	<link>https://maximiliankrieg.de/tag/https/</link>
	<description>Wissen, Technik &#38; Erfahrungen</description>
	<lastBuildDate>Fri, 29 May 2026 08:18:06 +0000</lastBuildDate>
	<language>de</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0</generator>

<image>
	<url>https://maximiliankrieg.de/wp-content/uploads/2026/05/cropped-20260524_logo_2_512-2-32x32.png</url>
	<title>https Archive - Maximilian Krieg</title>
	<link>https://maximiliankrieg.de/tag/https/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Fortinet &#8211; LetsEncrypt-Zertifikate manuell erneuern</title>
		<link>https://maximiliankrieg.de/2023/12/fortinet-letsencrypt-zertifikate-erneuern/</link>
					<comments>https://maximiliankrieg.de/2023/12/fortinet-letsencrypt-zertifikate-erneuern/#respond</comments>
		
		<dc:creator><![CDATA[Maximilian]]></dc:creator>
		<pubDate>Sat, 16 Dec 2023 11:05:39 +0000</pubDate>
				<category><![CDATA[Netzwerk und Sicherheit]]></category>
		<category><![CDATA[acme]]></category>
		<category><![CDATA[client]]></category>
		<category><![CDATA[fortigate]]></category>
		<category><![CDATA[fortinet]]></category>
		<category><![CDATA[https]]></category>
		<category><![CDATA[monitoring]]></category>
		<category><![CDATA[renewal]]></category>
		<category><![CDATA[ssl]]></category>
		<category><![CDATA[zertifikat]]></category>
		<guid isPermaLink="false">https://maximiliankrieg.de/?p=351</guid>

					<description><![CDATA[<p>Für einen Kunden muss ich seine LetsEncrypt-Zertifkate auf den FortiGate-Firewalls erneuern, weil sein Monitoring-System die Restlaufzeit von 30 Tagen fälschlicherweise als Störung gemeldet hat. Die&#8230;</p>
<p>Der Beitrag <a href="https://maximiliankrieg.de/2023/12/fortinet-letsencrypt-zertifikate-erneuern/">Fortinet &#8211; LetsEncrypt-Zertifikate manuell erneuern</a> erschien zuerst auf <a href="https://maximiliankrieg.de">Maximilian Krieg</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Für einen Kunden muss ich seine LetsEncrypt-Zertifkate auf den FortiGate-Firewalls erneuern, weil sein Monitoring-System die Restlaufzeit von 30 Tagen fälschlicherweise als Störung gemeldet hat. Die automatische Erneuerung der Zertifikate gestaltet sich dabei unproblematisch; vielmehr liegt die Herausforderung in der Konfiguration der Schwellwerte im Monitoring-System. Dennoch möchte ich auf beide Aspekte eingehen.</p>



<h2 class="wp-block-heading">Monitoring-Schwellwerte</h2>



<p class="wp-block-paragraph">Dem Monitoring-Team stellen wir folgende Schwellwerte als Empfehlung für sämtliche LetsEncrypt-Zertifikate des Kunden, unabhängig davon welches System sie präsentiert oder verlängert, zur Verfügung: </p>



<ul class="wp-block-list">
<li>Warnung &#8211; Ab 28 bis 30 Tagen </li>



<li>Fehler &#8211; Ab 5 bis 7 Tagen </li>
</ul>



<p class="wp-block-paragraph">Erst bei Eintreten des Fehlerzustands im Monitoring-System sollte ein Ticket erzeugt werden. 5 bis 7 Tage sollten genug Zeit sein den Prozess manuell zu starten oder in die Fehleranalyse zu gehen, warum der <strong>Automated Certificate Management Environment (ACME)-Client</strong> das Zertifikat nicht korrekt innerhalb des Standard-Intervalls erneuert hat. Standardmäßig hat ein LetsEncrypt-Zertifikat eine Laufzeit von 90 Tagen und erst ab 60 Tagen ist es eigentlich zum Renewal vorgesehen. Mehr Informationen hierzu findet man in der <strong>ACME Renewal Information (ARI)</strong>. </p>



<p class="wp-block-paragraph">Die oben genannte Werte sind bereits individuell angepasst auf die Konfiguration der Kunden-spezifischen Umgebung. Ebenfalls denkbar wären folgende, allgemeinen Schellwerte, wenn nur einmal am Tag eine Prüfung der Laufzeiten erfolgt:</p>



<ul class="wp-block-list">
<li>Warnung &#8211; Ab 30 Tagen </li>



<li>Fehler &#8211; Ab 28 Tagen</li>
</ul>



<h2 class="wp-block-heading">Renewal-Prozess</h2>



<p class="wp-block-paragraph">Die FortiGate-Firewalls sehen im Standard vor, dass ein Zertifikat 30 Tage vor Ablauf den Renewal-Prozess initiieren.</p>



<pre class="wp-block-code"><code>config vpn certificate local
    edit &lt;ACME_certificate_name&gt;
        set acme-renew-window 30
    end</code></pre>



<p class="wp-block-paragraph">Über folgende Befehle kann man dann ein Zertifikat manuell, auch vor den 30 Tagen, erneuern.</p>



<p class="wp-block-paragraph"><strong>ACME-Status prüfen:</strong></p>



<pre class="wp-block-code"><code>get system acme status
get system acme acc-details</code></pre>



<p class="wp-block-paragraph"><strong>Zertifikate erneuern:</strong></p>



<pre class="wp-block-code"><code>diagnose sys acme regenerate-client-config
diagnose sys acme restart</code></pre>



<p class="wp-block-paragraph"><strong>2-3 Minuten warten, danach neue Laufzeiten je Zertifikat kontrollieren:</strong></p>



<pre class="wp-block-code"><code>get vpn certificate local details &lt;Local certificate name&gt;
diagnose sys acme status-full &lt;Certificate’s CN domain&gt;</code></pre>



<h2 class="wp-block-heading">Quellen</h2>



<ul class="wp-block-list">
<li><a href="https://letsencrypt.org/2023/03/23/improving-resliiency-and-reliability-with-ari.html#:~:text=With%20ARI%2C%20Let%E2%80%99s%20Encrypt%20can%20signal%20to%20ACME,ARI%20might%20signal%20for%20renewal%20at%2060%20days.">Improving Resiliency and Reliability for Let’s Encrypt with ARI &#8211; Let&#8217;s Encrypt (letsencrypt.org)</a></li>



<li><a href="https://community.fortinet.com/t5/FortiGate/Troubleshooting-Tip-Let-s-Encrypt-certificate-did-not/ta-p/245610">Troubleshooting Tip: Let’s Encrypt certificate did&#8230; &#8211; Fortinet Community</a></li>



<li><a href="https://datatracker.ietf.org/doc/draft-ietf-acme-ari/">draft-ietf-acme-ari-02 &#8211; Automated Certificate Management Environment (ACME) Renewal Information (ARI) Extension</a></li>
</ul>



<p class="wp-block-paragraph"></p>
<p>Der Beitrag <a href="https://maximiliankrieg.de/2023/12/fortinet-letsencrypt-zertifikate-erneuern/">Fortinet &#8211; LetsEncrypt-Zertifikate manuell erneuern</a> erschien zuerst auf <a href="https://maximiliankrieg.de">Maximilian Krieg</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://maximiliankrieg.de/2023/12/fortinet-letsencrypt-zertifikate-erneuern/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Auslesen von HSTS-Informationen aus dem HTTP-Header</title>
		<link>https://maximiliankrieg.de/2016/10/auslesen-von-hsts-informationen-aus-dem-http-header/</link>
					<comments>https://maximiliankrieg.de/2016/10/auslesen-von-hsts-informationen-aus-dem-http-header/#respond</comments>
		
		<dc:creator><![CDATA[Maximilian]]></dc:creator>
		<pubDate>Tue, 25 Oct 2016 19:53:00 +0000</pubDate>
				<category><![CDATA[Nützliches]]></category>
		<category><![CDATA[hsts]]></category>
		<category><![CDATA[https]]></category>
		<guid isPermaLink="false">https://maximiliankrieg.de/?p=1210</guid>

					<description><![CDATA[<p>In meinem Artikel&#160;HTTP Strict Transport Security (HSTS) für Lighttpd aktivieren&#160;habe ich beschrieben, was HSTS ist und wie man es auf seinem Webserver aktiviert, um eine&#8230;</p>
<p>Der Beitrag <a href="https://maximiliankrieg.de/2016/10/auslesen-von-hsts-informationen-aus-dem-http-header/">Auslesen von HSTS-Informationen aus dem HTTP-Header</a> erschien zuerst auf <a href="https://maximiliankrieg.de">Maximilian Krieg</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">In meinem Artikel&nbsp;<a href="https://maximiliankrieg.de/2016/02/http-strict-transport-security-hsts-fuer-lighttpd-aktivieren/" type="post" id="1279">HTTP Strict Transport Security (HSTS) für Lighttpd aktivieren</a>&nbsp;habe ich beschrieben, was HSTS ist und wie man es auf seinem Webserver aktiviert, um eine bessere Bewertung beim SSL Server Test von Qualys zu erhalten. Nun trat der Fall auf, dass dieser Test für eine andere Webseite die Meldung&nbsp;<code>Invalid HSTS header</code>&nbsp;herausgegeben hat. Die Konfiguration auf dem betroffenen Webserver hat auf den ersten Blick allerdings korrekt ausgesehen. Wie man den HSTS-Header ausliest, um in einem solchen Fall das Troubleshooting zu betreiben, beschreibe ich in diesem Artikel.</p>



<h3 class="wp-block-heading">Symptom</h3>



<p class="wp-block-paragraph">Der SSL Server Test von Qualys berichtet nach der Konfiguration von HSTS, dass der HSTS-Header ungültig sei.</p>



<h3 class="wp-block-heading">Abrufen&nbsp;des HTTP-Headers mit cURL</h3>



<p class="wp-block-paragraph">Mithilfe des Kommandozeilenprogramms&nbsp;<code>cURL</code>&nbsp;kann man Dateien von oder zu einem Server zu übertragen. Ruft man es mit der Option&nbsp;<code>-I</code>&nbsp;auf, kann man damit unter anderem&nbsp;den HTTP-Header einer Webseite abrufen. Eine detailierte Beschreibung dieser Funktionalität liefert die Seite haxx.se:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">(HTTP/FTP/FILE) Fetch the HTTP-header only! HTTP-servers feature the command HEAD which this uses to get nothing but the header of a document. When used on an FTP or FILE file, curl displays the file size and last modification time only.https://curl.haxx.se/docs/manpage.html</p>
</blockquote>



<p class="wp-block-paragraph">Der Aufruf dieses Befehls liefert&nbsp;beispielsweise für meine Seite den folgenden Rückgabewert:</p>



<pre class="wp-block-code"><code>$ curl -I https://maximiliankrieg.de
HTTP/1.1 200 OK
Strict-Transport-Security: max-age=63072000; includeSubdomains; preload
X-Powered-By: PHP/5.5.9-1ubuntu4.19
Set-Cookie: 8b4cc86896af6ff21730a4c7eb47cfa6=gu5h8l90p4il834avfc9v95s23; path=/; secure; HttpOnly
P3P: CP="NOI ADM DEV PSAi COM NAV OUR OTRo STP IND DEM"
Content-Type: text/html; charset=utf-8
Expires: Wed, 17 Aug 2005 00:00:00 GMT
Last-Modified: Mon, 12 Sep 2016 10:33:17 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Date: Mon, 12 Sep 2016 10:33:17 GMT
Server: lighttpd/1.4.33</code></pre>



<p class="wp-block-paragraph">Die Zeile mit&nbsp;<code>Strict-Transport-Security</code>&nbsp;enthält die für uns interessanten Informationen. Möchte man sich ausschließlich diese Zeile anzeigen lassen, kann man mithilfe von&nbsp;<code>grep</code>&nbsp;den Rückgabewert nochmals durchsuchen und filtern. Der vollständige Befehl und der reduzierte&nbsp;Rückgabewert sehen wie folgt aus:</p>



<pre class="wp-block-code"><code>$ curl -s -D- https://maximiliankrieg.de | grep Strict
Strict-Transport-Security: max-age=63072000; includeSubdomains; preload</code></pre>



<h3 class="wp-block-heading">Problem und Lösung</h3>



<p class="wp-block-paragraph">Der obenstehende Befehl wurde auf den betroffenen Webserver angewendet und hat dabei den Rückgabewert&nbsp;<code>Strict-Transport-Security: "max-age=63072000"</code>&nbsp;geliefert. Abweichend zu meinem Webserver sind&nbsp;Anführungszeichen um das Attribut&nbsp;<code>max-age</code>&nbsp;herum gesetzt. Nachdem wir die überflüssigen Anführungszeichen&nbsp;aus der Konfiguration entfernt haben, hat&nbsp;der SSL Server Test den Header korrekt eingelesen und hat schlussendlich in der Bewertung A+ resultiert.</p>
<p>Der Beitrag <a href="https://maximiliankrieg.de/2016/10/auslesen-von-hsts-informationen-aus-dem-http-header/">Auslesen von HSTS-Informationen aus dem HTTP-Header</a> erschien zuerst auf <a href="https://maximiliankrieg.de">Maximilian Krieg</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://maximiliankrieg.de/2016/10/auslesen-von-hsts-informationen-aus-dem-http-header/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>HTTP Strict Transport Security (HSTS) für Lighttpd aktivieren</title>
		<link>https://maximiliankrieg.de/2016/02/http-strict-transport-security-hsts-fuer-lighttpd-aktivieren/</link>
					<comments>https://maximiliankrieg.de/2016/02/http-strict-transport-security-hsts-fuer-lighttpd-aktivieren/#respond</comments>
		
		<dc:creator><![CDATA[Maximilian]]></dc:creator>
		<pubDate>Mon, 01 Feb 2016 22:44:00 +0000</pubDate>
				<category><![CDATA[Server und Website]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[hsts]]></category>
		<category><![CDATA[https]]></category>
		<category><![CDATA[lighttpd]]></category>
		<guid isPermaLink="false">https://maximiliankrieg.de/?p=1279</guid>

					<description><![CDATA[<p>Nach einem Update meines ownCloud-Servers, bin ich vom selbigen darauf hingewiesen worden, dass ich doch bitte&#160;HTTP Strict Transport Security (HSTS) auf meinem Webserver aktivieren und&#8230;</p>
<p>Der Beitrag <a href="https://maximiliankrieg.de/2016/02/http-strict-transport-security-hsts-fuer-lighttpd-aktivieren/">HTTP Strict Transport Security (HSTS) für Lighttpd aktivieren</a> erschien zuerst auf <a href="https://maximiliankrieg.de">Maximilian Krieg</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Nach einem Update meines ownCloud-Servers, bin ich vom selbigen darauf hingewiesen worden, dass ich doch bitte&nbsp;HTTP Strict Transport Security (HSTS) auf meinem Webserver aktivieren und mit den geeigneten Parametern konfigurieren soll. Was HSTS ist und wie man es in Lighttpd konfiguriert, möchte ich in dem heutigen Beitrag kurz anreißen.</p>



<h3 class="wp-block-heading">Definition</h3>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">Mit HSTS können einerseits (HTTP-)Server vorgeben, dass man die angebotenen Dienste ausschließlich über sichere, etwa per TLS verschlüsselte Verbindungen erreicht. Andererseits zwingt HSTS auch Anwendungsprogramme (User Agents) dazu, die Kommunikation mit Websites nur über verschlüsselte Verbindungen abzuwickeln.http://www.heise.de/netze/meldung/HTTP-Strict-Transport-Security-als-Internet-Standard-1754184.html</p>
</blockquote>



<p class="wp-block-paragraph">Der Vorteil einer Seite mit HSTS ist es, dass ein initialer Seitenaufruf über HTTP sofort unterbunden und stattdessen nur der verschlüsselte Kanal genutzt wird. Potenzielle Man-in-the-Middle-Angriffe können somit weiter eingeschränkt werden. Ein signifikanter Nachteil entsteht jedoch im Bereich des Datenschutzes, wie die folgende Quelle gut erklärt.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">Damit das HSTS-Verfahren funktioniert [&#8230;], muss sich der Browser des Benutzers merken, auf welchen Webseiten HSTS genutzt werden soll. Dafür werden die entsprechenden Einträge, ähnlich zu Cookies, in einer Browserdatenbank gespeichert. Anders als gewöhnliche Cookies werden die HSTS-Einträge allerdings aufgrund der eigentlichen Sicherheitsfunktion auch im privaten Modus des Browsers [&#8230;] aktiviert und können von den besuchten Webseiten überprüft werden.https://www.datenschutz-notizen.de/hsts-sicherheitsfunktion-erzeugt-datenschutzprobleme-3010259/</p>
</blockquote>



<p class="wp-block-paragraph">Nichtsdestotrotz aktiviere ich die Funktion, da die potenziellen Vorteile der Sicherheit für mich die Nachteile im Datenschutz überwiegen.</p>



<h3 class="wp-block-heading">Lighttpd-Konfiguration</h3>



<p class="wp-block-paragraph">Lighttpd ist relativ einfach zu konfigurieren. Eine Anpassung an der&nbsp;<code>/etc/lighttpd/lighttpd.conf</code>-Datei genügt, um die Funktion für den Webserver zu aktivieren. Eine detaillierte Anleitung für unterschiedliche Webserver ist auf&nbsp;<a href="https://raymii.org/s/tutorials/HTTP_Strict_Transport_Security_for_Apache_NGINX_and_Lighttpd.html">raymii.org</a>&nbsp;zu finden.</p>



<pre class="wp-block-code"><code>server.modules += ( "mod_setenv" )
$HTTP&#91;"scheme"] == "https" {
    setenv.add-response-header  = ( "Strict-Transport-Security" =&gt; "max-age=63072000; includeSubdomains; preload")
}</code></pre>
<p>Der Beitrag <a href="https://maximiliankrieg.de/2016/02/http-strict-transport-security-hsts-fuer-lighttpd-aktivieren/">HTTP Strict Transport Security (HSTS) für Lighttpd aktivieren</a> erschien zuerst auf <a href="https://maximiliankrieg.de">Maximilian Krieg</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://maximiliankrieg.de/2016/02/http-strict-transport-security-hsts-fuer-lighttpd-aktivieren/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
