<?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>ssl &#8211; matthias.guru</title>
	<atom:link href="https://matthias.guru/category/ssl/feed/" rel="self" type="application/rss+xml" />
	<link>https://matthias.guru</link>
	<description>Tipps und Tricks rund um Serveradministration, Werbeeinnahmen und allem was mit meiner IT Selbstständigkeit zu tun hat</description>
	<lastBuildDate>Wed, 09 Sep 2020 05:34:49 +0000</lastBuildDate>
	<language>de-DE</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.0.3</generator>
	<item>
		<title>Perfekte nginx SSL Konfiguration Debian</title>
		<link>https://matthias.guru/2020/09/09/perfekte-nginx-ssl-konfiguration-debian/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=perfekte-nginx-ssl-konfiguration-debian</link>
					<comments>https://matthias.guru/2020/09/09/perfekte-nginx-ssl-konfiguration-debian/#respond</comments>
		
		<dc:creator><![CDATA[Matthias]]></dc:creator>
		<pubDate>Wed, 09 Sep 2020 05:34:49 +0000</pubDate>
				<category><![CDATA[debian]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[ssl]]></category>
		<guid isPermaLink="false">https://hilfreiche-server.tips/?p=9</guid>

					<description><![CDATA[HTTPS ist nicht nur für das Google Ranking wichtig, sondern schützt es auch euch, euere Webseiten und somit euere Besucher. Mit folgender Konfiguration erreicht ihr eine maximal sichere Konfiguration eueres nginx Webservers. Bevor ihr diese <a class="mh-excerpt-more" href="https://matthias.guru/2020/09/09/perfekte-nginx-ssl-konfiguration-debian/" title="Perfekte nginx SSL Konfiguration Debian">[...]</a>]]></description>
										<content:encoded><![CDATA[
<p>HTTPS ist nicht nur für das Google Ranking wichtig, sondern schützt es auch euch, euere Webseiten und somit euere Besucher. Mit folgender Konfiguration erreicht ihr eine maximal sichere Konfiguration eueres nginx Webservers.</p>



<p>Bevor ihr diese Zeilen in eueren <strong>server</strong> Teil euerer nginx Konfiguration ergänzt, stellt sicher bereits ein SSL Zertifikat zu haben und den Pfad dorthin anzupassen. Darüber hinaus solltet ihr auch einen Diffie-Hellmann Key erzeugen und den Pfad dorthin ebenfalls anzupassen.</p>



<p>Einen Diffie-Hellmann Key wird mit folgendem Befehl erzeugt (kann sehr lange dauern):<br>&gt; cd /etc/ssl/private</p>



<p>&gt; openssl dhparam -out dhparams.pem 2048</p>



<p>&gt; chmod 600 dhparams.pem</p>



<p>Habt ihr nun ein SSL Zertifikat und einen eigene DH Key, so stellt nochmals sicher die Pfade in folgendem Snippet anzupassen &#8211; dann könnt ihr es in euerer nginx Server Directive einsetzen:</p>



<pre class="wp-block-code"><code>listen 443 ssl http2;
ssl    on;
add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload";
ssl_ciphers 'ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4';
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
ssl_dhparam /etc/ssl/certs/dhparam.pem;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_certificate    /etc/letsencrypt/live/hilfreiche-server.tips/fullchain.pem;
ssl_certificate_key    /etc/letsencrypt/live/hilfreiche-server.tips/privkey.pem;</code></pre>
]]></content:encoded>
					
					<wfw:commentRss>https://matthias.guru/2020/09/09/perfekte-nginx-ssl-konfiguration-debian/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>nginx &#8211; langsamer SSL Handshake</title>
		<link>https://matthias.guru/2017/04/03/nginx-langsamer-ssl-handshake/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=nginx-langsamer-ssl-handshake</link>
					<comments>https://matthias.guru/2017/04/03/nginx-langsamer-ssl-handshake/#respond</comments>
		
		<dc:creator><![CDATA[Matthias]]></dc:creator>
		<pubDate>Mon, 03 Apr 2017 08:20:36 +0000</pubDate>
				<category><![CDATA[Lets Encrypt]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[ssl]]></category>
		<category><![CDATA[ciphers]]></category>
		<category><![CDATA[handshake]]></category>
		<category><![CDATA[slow]]></category>
		<guid isPermaLink="false">https://hilfreiche-server.tips/?p=122</guid>

					<description><![CDATA[Dank Lets Encrypt und günstigen SSL Zertifikaten werden HTTPS Verbindungen immer mehr zum Standard. Das ist auch kein Wunder, da Google HTTPS Verbindungen besser rankt als normales HTTP. Google sind jedoch auch niedrige Ladezeiten wichtig, <a class="mh-excerpt-more" href="https://matthias.guru/2017/04/03/nginx-langsamer-ssl-handshake/" title="nginx &#8211; langsamer SSL Handshake">[...]</a>]]></description>
										<content:encoded><![CDATA[<p>Dank Lets Encrypt und günstigen SSL Zertifikaten werden HTTPS Verbindungen immer mehr zum Standard. Das ist auch kein Wunder, da Google HTTPS Verbindungen besser rankt als normales HTTP.</p>
<p>Google sind jedoch auch niedrige Ladezeiten wichtig, leider ist es jedoch so das eine HTTPS Verbindung per se mehr Rechenleistung benötigt um die Verbindung zum Browser zu verschlüsseln. Besonders aufgefallen ist mir der langsame SSL Handshake. Also der Abschnitt des Verbindungsaufbaus in dem sich Server und Browser auf eine Technologie einigen. Das lag an den zahlreichen unterstützen SSL Algorithmen. Manchmal ist halt doch weniger mehr.</p>
<p>Daher bietet mein nginx Webserver nun nur noch die SSL Algorithmen an die von Cloudflare empfohlen werden und somit konnte ich auch die Ladezeiten wieder verbessern:</p>
<p>&nbsp;</p>
<blockquote>
<pre>ssl_protocols               TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers                 EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
ssl_prefer_server_ciphers   on;</pre>
</blockquote>
]]></content:encoded>
					
					<wfw:commentRss>https://matthias.guru/2017/04/03/nginx-langsamer-ssl-handshake/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>nginx HTTP auf HTTPS umleiten</title>
		<link>https://matthias.guru/2016/11/08/nginx-http-auf-https-umleiten/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=nginx-http-auf-https-umleiten</link>
					<comments>https://matthias.guru/2016/11/08/nginx-http-auf-https-umleiten/#respond</comments>
		
		<dc:creator><![CDATA[Matthias]]></dc:creator>
		<pubDate>Tue, 08 Nov 2016 15:28:40 +0000</pubDate>
				<category><![CDATA[nginx]]></category>
		<category><![CDATA[ssl]]></category>
		<guid isPermaLink="false">https://hilfreiche-server.tips/?p=60</guid>

					<description><![CDATA[Sobald man eine Webseite per SSL (https) konfiguriert, sollte man auch darauf achten dass die Weiterleitung von http auf https funktioniert. Eine Weiterleitung ist wichtig, da diese von Google besser bewertet wird als  http und <a class="mh-excerpt-more" href="https://matthias.guru/2016/11/08/nginx-http-auf-https-umleiten/" title="nginx HTTP auf HTTPS umleiten">[...]</a>]]></description>
										<content:encoded><![CDATA[<p>Sobald man eine Webseite per SSL (https) konfiguriert, sollte man auch darauf achten dass die Weiterleitung von http auf https funktioniert. Eine Weiterleitung ist wichtig, da diese von Google besser bewertet wird als  http und https parallel zu betreiben.</p>
<p>Diese Weiterleitung kann in NGINX sehr leicht erreicht werden. Es genügt folgenden Einzeiler in die Konfiguration aufzunehmen:</p>
<blockquote><p>error_page 497 https://$host$request_uri;</p></blockquote>
]]></content:encoded>
					
					<wfw:commentRss>https://matthias.guru/2016/11/08/nginx-http-auf-https-umleiten/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Sophos XG mit gültigem SSL Zertifikat absichern</title>
		<link>https://matthias.guru/2016/10/20/sophos-xg-mit-gueltigem-ssl-zertifikat-absichern/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=sophos-xg-mit-gueltigem-ssl-zertifikat-absichern</link>
					<comments>https://matthias.guru/2016/10/20/sophos-xg-mit-gueltigem-ssl-zertifikat-absichern/#respond</comments>
		
		<dc:creator><![CDATA[Matthias]]></dc:creator>
		<pubDate>Thu, 20 Oct 2016 09:58:46 +0000</pubDate>
				<category><![CDATA[ssl]]></category>
		<guid isPermaLink="false">https://hilfreiche-server.tips/?p=44</guid>

					<description><![CDATA[Schon einige Jahre betreibe ich zuhause eine Sophos UTM, seit kurzen nun das neue Modell XG. Da mich immer die Fehlermeldung bei einem ungültigem Zertifikat stört, habe ich mich mal dran gesetzt ein gültiges Zertifikat <a class="mh-excerpt-more" href="https://matthias.guru/2016/10/20/sophos-xg-mit-gueltigem-ssl-zertifikat-absichern/" title="Sophos XG mit gültigem SSL Zertifikat absichern">[...]</a>]]></description>
										<content:encoded><![CDATA[<p>Schon einige Jahre betreibe ich zuhause eine Sophos UTM, seit kurzen nun das neue Modell XG. Da mich immer die Fehlermeldung bei einem ungültigem Zertifikat stört, habe ich mich mal dran gesetzt ein gültiges Zertifikat einzuspielen.</p>
<p>Da der Aufwand hierfür etwas höher ist und die Zertifikatsbeantragung nicht automatisch durchgeführt werden kann, habe ich mich gegen Let&#8217;s Encrypt entschieden und ein Zertifikat gekauft. Mit ca. 20 Euro pro Jahr halten sich die Kosten hierfür auch in Grenzen.</p>
<p># CSR (Certificate Signing Request) erstellen</p>
<p>Um ein Zertifikat beantragen zu können brauchen wir ein CSR. Dieses kann man auf einem beliebigen Linux Rechner leicht erstellen, dafür benötigt man nur das **openssl** Package:</p>
<blockquote><p>openssl req -nodes -newkey rsa:2048 -sha256 -keyout &#8218;example_com.key&#8216; -out &#8218;example_com.csr&#8216; -subj &#8218;/CN=example.com/C=DE&#8216;</p></blockquote>
<p>Die hier verwendete Domain &#8222;example.com&#8220; muss natürlich gegen die tatsächliche Domain getauscht werden.</p>
<p>Nun wird eine .csr Datei erstellt sowie eine .key Datei. Letzteres ist der private Schlüssel und sollte nicht rausgegeben, geschweige denn veröffentlicht werden.</p>
<p># Zertifikat beantragen und einspielen</p>
<p>Mit dem CSR kann man nun bei einem Dienstleister seiner Wahl ein SSL Zertifikat beantragen. Hat man das Zertifikat, öffnet man den Sophos Webadmin, navigiert über &#8222;Objects&#8220;, &#8222;Identity&#8220; zu &#8222;Certificate&#8220; und wählt &#8222;Add&#8220;.<br />
Im folgenden Bildschirm wählt man nun das Zertifikat und je nachdem in welchem Format das Zertifikat vorliegt das entsprechende Format. Auch der bei CSR erstellte private Schlüssel muss angegeben werden.</p>
<p>Nun kann das ganze gespeichert werden.</p>
<p>Abschließend muss das gerade hochgeladene Zertifikat noch aktiviert werden.Dazu navigieren wir zu &#8222;System&#8220;, &#8222;Administration&#8220;, &#8222;Settings&#8220;. Dort kann das neue Zertifikat ausgewählt werden.</p>
<p>Ich nutze das Zertifikat auch zum absichern meiner virtuellen Webserver in der Web Application Firewall. Hierfür muss das Zertifikat jeweils bei jeder Konfiguration hinterlegt werden.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://matthias.guru/2016/10/20/sophos-xg-mit-gueltigem-ssl-zertifikat-absichern/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>nextcloud auf Debian Stretch/Jessie mit Lets Encrypt SSL, nginx, MySQL, php7 (u.a. auch für Raspberry Pi)</title>
		<link>https://matthias.guru/2016/10/20/nextcloud-auf-debian-server-mit-lets-encrypt-ssl-nginx-mysql-php7-u-a-auch-fuer-raspberry-pi/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=nextcloud-auf-debian-server-mit-lets-encrypt-ssl-nginx-mysql-php7-u-a-auch-fuer-raspberry-pi</link>
					<comments>https://matthias.guru/2016/10/20/nextcloud-auf-debian-server-mit-lets-encrypt-ssl-nginx-mysql-php7-u-a-auch-fuer-raspberry-pi/#comments</comments>
		
		<dc:creator><![CDATA[Matthias]]></dc:creator>
		<pubDate>Thu, 20 Oct 2016 09:56:59 +0000</pubDate>
				<category><![CDATA[debian]]></category>
		<category><![CDATA[Lets Encrypt]]></category>
		<category><![CDATA[nextcloud]]></category>
		<category><![CDATA[ssl]]></category>
		<category><![CDATA[cloud]]></category>
		<category><![CDATA[lets encrypt]]></category>
		<guid isPermaLink="false">https://hilfreiche-server.tips/?p=41</guid>

					<description><![CDATA[⇨ Update Januar 2018: Für nextcloud 13 aktualisiert ⇦ In dieser Anleitung beschreibe ich wie nextCloud (der moderne nachfolger von Owncloud) auf einem frischen Debian Stretch (Debian 9) oder auch Debian Jessie (Debian 8) installiert wird. <a class="mh-excerpt-more" href="https://matthias.guru/2016/10/20/nextcloud-auf-debian-server-mit-lets-encrypt-ssl-nginx-mysql-php7-u-a-auch-fuer-raspberry-pi/" title="nextcloud auf Debian Stretch/Jessie mit Lets Encrypt SSL, nginx, MySQL, php7 (u.a. auch für Raspberry Pi)">[...]</a>]]></description>
										<content:encoded><![CDATA[<p><strong>⇨ Update Januar 2018: Für nextcloud 13 aktualisiert ⇦</strong></p>
<p>In dieser Anleitung beschreibe ich wie nextCloud (der moderne nachfolger von Owncloud) auf einem frischen Debian Stretch (Debian 9) oder auch Debian Jessie (Debian 8) installiert wird. Dazu verwende ich nginx als Webserver, MySQL und php7. Warum nginx und php7? Dies Software Pakete sind auf hohe Performance ausgelegt und werden auch aktiv von den Entwicklern gepflegt. Dazu sichern wir unseren Webserver noch mit einem kostenlosen SSL Zertifikat von Lets Encrypt ab und konfigurieren nginx so dass es nur aktuelle Sicherheitseinstellungen verwendet und aktivieren zusätzlich HTTP/2. Damit haben wir ein modernes, sicheres und schnelles Setup das perfekt für nextCloud geeignet ist.</p>
<p>Diese Anleitung kann auch für einen <a href="http://amzn.to/2vbsP3w">Raspberry Pi</a> verwendet werden.</p>
<p><strong>Voraussetzungen</strong><br />
Als Basis gehe ich von einem frisch installiertem Debian 8 Jessie aus, auf das auch bereits die Domain die du verwenden möchtest zeigt.</p>
<p><strong>Grundarbeiten</strong><br />
Bei neuen Servern kümmere ich mich zu aller erst immer um eine hübsche Prompt, da macht das arbeiten gleich mehr Spass. <a href="@blog/id?id=7">Das habe ich hier bereits beschrieben.</a> Wer das nicht möchte kann diesen Schritt auch einfach überspringen.</p>
<p>Als nächstes kümmere ich mich darum dass das System auf den aktuellsten Stand ist</p>
<blockquote><p>apt-get update &amp;&amp; apt-get upgrade &amp;&amp; apt-get dist-upgrade</p></blockquote>
<p>Je nachdem mit welchem Texteditor man arbeiten möchte muss dieser nun installiert werden, in meinem Fall ist das vim:</p>
<blockquote><p>apt-get install vim-nox</p></blockquote>
<p>Nun richten wir die Paketquellen ein. Unter Debian bietet sich die Nutzung von dotdeb.org an, da dort alle benötigten Pakete in einer aktuellen Fassung vorliegen. Die Einbindung davon wird <a href="https://www.dotdeb.org/instructions/">hier beschrieben</a>, lässt sich aber auch ganz kurz so zusammenfassen:</p>
<p>Folgende zwei Zeilen müssen in die /etc/apt/sources.list Datei hinzugefügt werden:</p>
<blockquote><p>deb http://packages.dotdeb.org jessie all<br />
deb-src http://packages.dotdeb.org jessie all</p></blockquote>
<p>Danach muss noch der Schlüssel der neuen Paketquelle in unser System eingespielt werden. Laden können wir den Schlüssel mit</p>
<blockquote><p>wget https://www.dotdeb.org/dotdeb.gpg</p></blockquote>
<p>Und einspielen mit</p>
<blockquote><p>apt-key add dotdeb.gpg</p></blockquote>
<p><strong>Lets Encrypt</strong><br />
Nun kümmern wir uns um das kostenlose SSL Zertifikat. Das lässt sich am einfachsten mit dem **certbot** beantragen, jedoch müssen wir dazu die Backports in unseren Paketquellen aktivieren. Hierzu müssen wir noch einmal die /etc/apt/sources.list Datei um folgende Zeile erweitern:</p>
<blockquote><p>deb http://ftp.debian.org/debian jessie-backports main</p></blockquote>
<p>Jetzt müssen wir die Paketquellen neu auslesen</p>
<blockquote><p>apt-get update</p></blockquote>
<p>Und dann kann certbot installiert werden</p>
<blockquote><p>apt-get install certbot -t jessie-backports</p></blockquote>
<p>Für den nächsten Schritt ist es zwingend nötig das bereits eine Domain auf den Server zeigt. Denn nun beantragen wir das SSL Zertifikat von Let&#8217;s Encrypt:</p>
<blockquote><p>certbot certonly</p></blockquote>
<p>Dieser Befehl leitet durch die Zertifikatsbeantragung. Es muss eine Mailadresse und die entsprechende Domain eingetragen werden. Hat alles funktioniert, beendet sich certbot mit einer Erfolgsmeldung.</p>
<p><strong>PHP7</strong></p>
<p>PHP7 kann recht schnell installiert werden. Dazu führen wir einfach folgenden Befehl aus:</p>
<blockquote><p>apt-get install php7.0-fpm php7.0-gd php7.0-mysql php7.0-curl php7.0-xml php7.0-zip php7.0-intl php7.0-mcrypt php7.0-mbstring php7.0-bz2</p></blockquote>
<p>Dadurch wird php7 mit allen erforderlichen Erweiterungen installiert.</p>
<p><strong>NGINX</strong></p>
<p>Die Installation von nginx wird mit folgendem Befehl angestoßen:</p>
<blockquote><p>apt-get install nginx</p></blockquote>
<p>Als nächstes müssen wir nginx konfigurieren. Wir legen Wert darauf dass unser Webserver nur aktuelle Sicherheitsalgorythmen verwendet, daher müssen wir vorher noch kurz einen Diffie-Hellman Schlüssel erzeugen:</p>
<blockquote><p>mkdir -p /etc/ssl/private<br />
chmod 710 /etc/ssl/private<br />
cd /etc/ssl/private<br />
openssl dhparam -out dhparams.pem 2048<br />
chmod 600 dhparams.pem</p></blockquote>
<p>Nun zur eigentlichen Konfiguration des nginx. Dazu öffnen wir folgende Datei und ersetzen den Inhalt komplett: /etc/nginx/sites-enabled/default<br />
Der neue Dateiinhalt: <a href="http://pastebin.com/iwPyu2Q4">Link</a> (dabei muss &#8222;deine.cloud&#8220; durch deine Domain ersetzt werden)</p>
<p>Hat man die Datei entsprechend angepasst, kann nginx neu gestartet werden:</p>
<blockquote><p>/etc/init.d/nginx restart</p></blockquote>
<p>Unter deiner Domain sollte nextcloud nun bereits erreichbar sein. Jedoch müssen wir erst noch MySQL installieren, da wir für nextcloud eine Datenbank benötigen.</p>
<p><strong>MYSQL</strong></p>
<p>Installiert wird MySQL mit folgendem Befehl. Während der Installation wird man nach dem root Passwort gefragt welches man sich unbedingt merken/notieren sollte!</p>
<blockquote><p>apt-get <span class="hljs-keyword">install</span> mysql-<span class="hljs-keyword">server</span> mysql-<span class="hljs-keyword">client</span></p></blockquote>
<p>Als nächstes sichern wir die MySQL Installation ab</p>
<blockquote>
<pre>mysql_secure_installation

</pre>
</blockquote>
<p>Nun brauchen wir noch einen eigenen Datenbank Benutzer und Datenbank für unsere Nextcloud Installation</p>
<p>Dazu loggen wir uns als root mit dem bei der Installation vergebenem Passwort ein:</p>
<blockquote>
<pre>mysql -u root -p
</pre>
</blockquote>
<p>Zum Erstellen einer eigenen Datenbank namens &#8222;nextclouddb&#8220; nutzen wir folgenden Befehl</p>
<blockquote>
<pre>create database nextclouddb;</pre>
</blockquote>
<p>Dann erstellen wir einen Benutzer den wir &#8222;nextclouduser&#8220; nennen. Wichtig! &#8222;<strong>password</strong>&#8220; müssen wir durch ein neues Passwort ersetzen.</p>
<blockquote>
<pre>create user 'nextclouduser'@'localhost' identified by 'password';</pre>
</blockquote>
<p>Zu letzt braucht der gerade erstellte Benutzer noch Berechtigungen auf die gerade erstellte Datenbank. Auch hier müssen wir das Passwort ersetzen.</p>
<blockquote>
<pre>grant all on nextclouddb.* to 'nextclouduser' identified by 'password';</pre>
</blockquote>
<p>Nun haben wir die Datenbank eingerichtet und können den MySQL Client schließen.</p>
<blockquote>
<pre>exit</pre>
</blockquote>
<p><strong>Jetzt die eigentliche Nextcloud Installation</strong></p>
<p>Wir sind fast fertig. Es muss nur noch nextcloud installiert werden, dazu laden wir uns die aktuelle Version von Nextcloud in unser Webserververzeichnis.</p>
<blockquote><p>wget https://download.nextcloud.com/server/releases/nextcloud-13.0.0.zip</p>
<p>unzip nextcloud-13.0.0-zip</p></blockquote>
<p>Die Dateien noch ins Webverzeichnis kopieren und wir können die Installation im Webbrowser starten.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://matthias.guru/2016/10/20/nextcloud-auf-debian-server-mit-lets-encrypt-ssl-nginx-mysql-php7-u-a-auch-fuer-raspberry-pi/feed/</wfw:commentRss>
			<slash:comments>11</slash:comments>
		
		
			</item>
		<item>
		<title>Gitlab mit Lets Encrypt SSL Zertifikat absichern</title>
		<link>https://matthias.guru/2016/10/20/gitlab-mit-lets-encrypt-ssl-zertifikat-absichern/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=gitlab-mit-lets-encrypt-ssl-zertifikat-absichern</link>
					<comments>https://matthias.guru/2016/10/20/gitlab-mit-lets-encrypt-ssl-zertifikat-absichern/#comments</comments>
		
		<dc:creator><![CDATA[Matthias]]></dc:creator>
		<pubDate>Thu, 20 Oct 2016 09:50:51 +0000</pubDate>
				<category><![CDATA[debian]]></category>
		<category><![CDATA[Gitlab]]></category>
		<category><![CDATA[Lets Encrypt]]></category>
		<category><![CDATA[ssl]]></category>
		<category><![CDATA[gitlab]]></category>
		<category><![CDATA[omnibus]]></category>
		<guid isPermaLink="false">https://hilfreiche-server.tips/?p=30</guid>

					<description><![CDATA[Gitlab kann man mit wenig Aufwand auf dem eigenen Server nutzen. Ich habe das bei mir so gemacht da das gehostete Gitlab manchmal sehr langsam sein kann und weil ich mich wohler fühle wenn ich <a class="mh-excerpt-more" href="https://matthias.guru/2016/10/20/gitlab-mit-lets-encrypt-ssl-zertifikat-absichern/" title="Gitlab mit Lets Encrypt SSL Zertifikat absichern">[...]</a>]]></description>
										<content:encoded><![CDATA[<p>Gitlab kann man mit wenig Aufwand auf dem eigenen Server nutzen. Ich habe das bei mir so gemacht da das gehostete Gitlab manchmal sehr langsam sein kann und weil ich mich wohler fühle wenn ich meinen Quellcode auf einem eigenen Server liegen haben. Jedoch hat das selbstinstallierte Gitlab nach der Installation standardmäßig keine SSL Verschlüsselung, diese kannmit einem kostenlosen Lets Encrypt Zertifikat aber leicht nachgerüstet werden.</p>
<p>Wer es noch nicht getan hat, kann über <a href="https://about.gitlab.com/downloads/">diese Seite</a> Gitlab installieren. Vorraussetzung für die weiteren Schritte ist dass Gitlab isntalliert wurde und über Port 80 erreichbar ist.</p>
<p>Als nächstes installieren wir git, da wir das benötigen um den Lets Encrypt Client zu nutzen</p>
<pre>cd /root  
git clone https://github.com/letsencrypt/letsencrypt</pre>
<p>Bevor wir das Zertifikat beantragen können, wird noch eine Lets Encrypt Konfiguration erstellt in der wir alle wichtigen Daten definieren.</p>
<pre>mkdir letsencrypt-config  
vi letsencrypt-config/gitlab.ini</pre>
<p>Der Inhalt der Datei:</p>
<pre># Lets Encrypt Config für gitlab

# wir wollen den webroot Authenticator nutzen. 
authenticator = webroot
webroot-path = /var/www/letsencrypt

# die Domain unter der Gitlab aufrufbar ist
domains = gitlab.yourdomain.de

# die eigene Mailadresse mit der das Zertifikat beantragt wird
email = your@email.de

# wir wollen einen 4096 bit RSA key anstatt eines 2048 keys
rsa-key-size = 4096</pre>
<p>Nun müssen wir noch das Verzeichnis anlegen dass für die webroot Authentifizierung verwendet wird</p>
<pre>mkdir -p /var/www/letsencrypt</pre>
<p>Als nächstes passen wir die gitlab Konfiguration an, damit diese unsere neuen Zertifikate nutzt. Dazu öffnen wir die Datei **/etc/gitlab/gitlab.rb** und ändern folgende Werte. Dabei muss auch darauf geachtet werden dass die entsprechenden Zeilen nicht auskommentiert sind.</p>
<pre>nginx['enable'] = true
nginx['redirect_http_to_https'] = true
nginx['ssl_certificate']= "/etc/letsencrypt/live/gitlab.yourdomain.de/fullchain.pem"
nginx['ssl_certificate_key'] = "/etc/letsencrypt/live/gitlab.yourdomain.de/privkey.pem"</pre>
<p>Folgende Zeile muss neu eingefügt werden</p>
<pre>nginx['custom_gitlab_server_config']="location ^~ /.well-known {\n alias /var/www/letsencrypt/.well-known;\n}\n"</pre>
<p>Damit die SSL Beantragung funktioniert muss Gitlab nun erstmal rekonfiguriert werden.</p>
<pre>gitlab-ctl reconfigure</pre>
<p>Als nächstes nutzen wir die vorhin angelegte Lets Encrypt Konfiguration um das SSL Zertfikat zu erstellen</p>
<pre>/root/letsencrypt/letsencrypt-auto certonly -c /root/letsencrypt-config/gitlab.ini</pre>
<p>Beim ersten Aufruf werden vor der eigentlichen SSL Beantragung noch evtl. fehlende Abhänigkeiten installiert.</p>
<p>Nun können wir wieder die gitlab Konfiguration unter /etc/gitlab/gitlab.rb öffnen und die URL auf https ändern.</p>
<pre>external_url 'https://gitlab.yourdomain.de'</pre>
<p>Das war es auch schon. Gitlab muss abschließen noch rekonfiguriert werden:</p>
<pre>gitlab-ctl reconfigure</pre>
<p>Ab nun ist die Gitlab Installation unter https erreichbar.</p>
<p>Lets Encrypt Zertifikate sind immer nur 90 Tage gültig. Damit das Zertifikat jeden Monat automatisch erneuert wird, richten wir einen Cronjob ein der sich darum kümmert:</p>
<pre>0 0 1 * * /root/.local/share/letsencrypt/bin/letsencrypt certonly -c /root/letsencrypt-config/gitlab.ini --renew-by-default
</pre>
]]></content:encoded>
					
					<wfw:commentRss>https://matthias.guru/2016/10/20/gitlab-mit-lets-encrypt-ssl-zertifikat-absichern/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>Proxmox absichern mit Lets Encrypt SSL Zertifikat</title>
		<link>https://matthias.guru/2016/10/20/proxmox-4-absichern-mit-lets-encrypt-ssl-zertifikat/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=proxmox-4-absichern-mit-lets-encrypt-ssl-zertifikat</link>
					<comments>https://matthias.guru/2016/10/20/proxmox-4-absichern-mit-lets-encrypt-ssl-zertifikat/#comments</comments>
		
		<dc:creator><![CDATA[Matthias]]></dc:creator>
		<pubDate>Thu, 20 Oct 2016 09:47:09 +0000</pubDate>
				<category><![CDATA[debian]]></category>
		<category><![CDATA[Lets Encrypt]]></category>
		<category><![CDATA[Proxmox]]></category>
		<category><![CDATA[ssl]]></category>
		<category><![CDATA[lets encrypt]]></category>
		<category><![CDATA[proxmox]]></category>
		<guid isPermaLink="false">https://hilfreiche-server.tips/?p=25</guid>

					<description><![CDATA[Die Weboberfläche von Proxmox 4 (und 5) lässt sich in nur wenigen Schritten mit einem gültigem kostenlosen Lets Encrypt SSL Zertifikat absichern. Vorraussetzung ist ein vom Internet erreichbarer Port 80 eueres Webservers sowie ein installiertes <a class="mh-excerpt-more" href="https://matthias.guru/2016/10/20/proxmox-4-absichern-mit-lets-encrypt-ssl-zertifikat/" title="Proxmox absichern mit Lets Encrypt SSL Zertifikat">[...]</a>]]></description>
										<content:encoded><![CDATA[<p>Die Weboberfläche von Proxmox 4 (und 5) lässt sich in nur wenigen Schritten mit einem gültigem kostenlosen Lets Encrypt SSL Zertifikat absichern.</p>
<p>Vorraussetzung ist ein vom Internet erreichbarer Port 80 eueres Webservers sowie ein installiertes git. Letzteres kann per &#8222;**apt-get install git**&#8220; einfach nachinstalliert werden.</p>
<p>Ist das erledigt wechseln wir in das root Verzeichnis</p>
<pre>cd /root/</pre>
<p>und clonen das acme Repository</p>
<pre>git clone https://github.com/Neilpang/acme.sh.git acme-master</pre>
<p>nun erstellen wir das Verzeichnis in dem die Konfiguration abgelegt wird und wechseln in das gerade geclonte Verzeichnis</p>
<pre>mkdir /etc/pve/.le
cd /root/acme-master</pre>
<p>Mit folgendem Befehl legen wir unsere Konfiguration an. Hierbei müssen wir unsere E-Mail Adresse angeben über die wir zukünftig benachrichtigt werden wenn das Zertifikat abläuft</p>
<pre>./acme.sh --install --accountconf /etc/pve/.le/account.conf --accountkey /etc/pve/.le/account.key --accountemail "meine@email.com"</pre>
<p>Nun können wir testweise versuchen das Zertifikat zu beantragen. Da es ein wöchentliches Limit gibt wie häufig ein Zertifikat beantragt werden darf, empiehlt es sich zuerst nur einen Testantrag zu machen. Hier muss die von dir verwendete Domain eingesetzt werden:</p>
<pre>./acme.sh --issue --standalone --keypath /etc/pve/local/pveproxy-ssl.key --fullchainpath /etc/pve/local/pveproxy-ssl.pem --reloadcmd "systemctl restart pveproxy" -d <strong>$DOMAIN</strong> --test</pre>
<p>Sollte das funktioniert haben können wir den gleichen Befehl nochmal abschicken, diesmal aber statt mit dem &#8211;test Flag mit einem &#8211;force Flag. So wird sichergestellt dass das gerade testweise Zertifikat durch das neue richtige Zertifikat ersetzt wird, obowhl es noch nicht abgelaufen ist:</p>
<pre>./acme.sh --issue --standalone --keypath /etc/pve/local/pveproxy-ssl.key --fullchainpath /etc/pve/local/pveproxy-ssl.pem --reloadcmd "systemctl restart pveproxy" -d <strong>$DOMAIN</strong> --force</pre>
<p>Das war es auch schon. Die Weboberfläche von Proxmox ist nun mit einem gültigem Zertifikat abgesichert. Außerdem wurde ein Cronjob angelegt der das Zertifikat zukünftig automatisch erneuert:</p>
<pre>0 0 * * * "/root/.acme.sh"/acme.sh --cron --home "/root/.acme.sh" &gt; /dev/null</pre>
]]></content:encoded>
					
					<wfw:commentRss>https://matthias.guru/2016/10/20/proxmox-4-absichern-mit-lets-encrypt-ssl-zertifikat/feed/</wfw:commentRss>
			<slash:comments>7</slash:comments>
		
		
			</item>
		<item>
		<title>Perfekte Postfix Mailserver SSL Konfiguration Debian</title>
		<link>https://matthias.guru/2016/10/20/perfekte-postfix-mailserver-ssl-konfiguration-debian/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=perfekte-postfix-mailserver-ssl-konfiguration-debian</link>
					<comments>https://matthias.guru/2016/10/20/perfekte-postfix-mailserver-ssl-konfiguration-debian/#respond</comments>
		
		<dc:creator><![CDATA[Matthias]]></dc:creator>
		<pubDate>Thu, 20 Oct 2016 09:40:12 +0000</pubDate>
				<category><![CDATA[debian]]></category>
		<category><![CDATA[Postfix]]></category>
		<category><![CDATA[ssl]]></category>
		<category><![CDATA[lets encrypt]]></category>
		<category><![CDATA[mail]]></category>
		<category><![CDATA[mailserver]]></category>
		<category><![CDATA[postfix]]></category>
		<category><![CDATA[sicher]]></category>
		<guid isPermaLink="false">https://hilfreiche-server.tips/?p=13</guid>

					<description><![CDATA[Viele Serverbetreiber sind inzwischen um eine sichere Verbindung für ihren Webserver bemüht, aber dier meisten vergessen noch immer auch den Mailserver abzusichern, dabei geht das mit nur wenigen Konfigurationszeilen. Vorraussetzung hierfür ist dass man bereits <a class="mh-excerpt-more" href="https://matthias.guru/2016/10/20/perfekte-postfix-mailserver-ssl-konfiguration-debian/" title="Perfekte Postfix Mailserver SSL Konfiguration Debian">[...]</a>]]></description>
										<content:encoded><![CDATA[<p>Viele Serverbetreiber sind inzwischen um eine sichere Verbindung für ihren Webserver bemüht, aber dier meisten vergessen noch immer auch den Mailserver abzusichern, dabei geht das mit nur wenigen Konfigurationszeilen. Vorraussetzung hierfür ist dass man bereits ein SSL Zertifikat hat (der Pfad zum Zertifikat muss im folgenden Snippet angepasst werden).</p>
<p>Folgende Konfiguration wird in **/etc/postfix/main.cf** am Ende der Datei eingefügt:</p>
<pre><code>
# Aktiviert TLS
smtp_use_tls                 = yes
# Aktiviert das Logging
smtp_tls_loglevel            = 1
# Unverschluesselte Verbindung erlauben (may = entscheidet der Client)
smtp_tls_security_level      = may
# Pfade zu den Keys
smtp_tls_cert_file           = /etc/ssl/certfile.crt
smtp_tls_key_file            = /etc/ssl/keyfile.key
smtp_tls_CAfile              = /etc/ssl/cabundle.pem
smtp_tls_note_starttls_offer = yes
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtp_tls_note_starttls_offer = yes
smtp_tls_CApath = /etc/ssl/certs
smtp_tls_exclude_ciphers = RC4, aNULL

smtp_tls_ciphers = high
smtp_tls_exclude_ciphers = aNULL, eNULL, EXPORT, DES, RC4, MD5, PSK, aECDH, EDH-DSS-DES-CBC3-SHA, EDH-RSA-DES-CDB3-SHA, KRB5-DES, CBC3-SHA
smtp_tls_loglevel = 1
smtp_tls_note_starttls_offer = yes
smtp_tls_protocols = !SSLv2, !SSLv3

smtpd_tls_ciphers = high
smtpd_tls_eecdh_grade = strong
smtpd_tls_exclude_ciphers = aNULL, eNULL, EXPORT, DES, RC4, MD5, PSK, aECDH, EDH-DSS-DES-CBC3-SHA, EDH-RSA-DES-CDB3-SHA, KRB5-DES, CBC3-SHA
smtpd_tls_mandatory_ciphers= high
smtpd_tls_mandatory_protocols = !SSLv2,!SSLv3
smtpd_tls_protocols = !SSLv2,!SSLv3
</code></pre>
<p>Danach noch den Mailserver neustarten:<br />
&gt; /etc/init.d/postfix restart</p>
<p>Testen kann man die neue Konfiguration z.b. mit <a href="https://de.ssl-tools.net/mailservers/" target="_blank" rel="noopener noreferrer">dieser Webseite</a>:<br />
![Mailserver](storage/mailserver.PNG)</p>
]]></content:encoded>
					
					<wfw:commentRss>https://matthias.guru/2016/10/20/perfekte-postfix-mailserver-ssl-konfiguration-debian/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
