SSL Zertifikate in Debian 1819


Sehr geehrte Kunden,

Wir möchte Ihnen zeigen, wie Sie ganz einfach einen Server mit einem SSL Zertifikat ein bisschen sicherer machen kann.
Dadurch hat man hat eine deutlich bessere Sicherheit gegen Leute, die "mithören" wollen.
Gerade als Anbieter von Kundenshops, mit zum Beispiel teuren Produkten, sollten dies nutzen da es wichtig ist, die Daten der Kunden geheim zu halten.
Bitte beachten Sie, dass Sie Zertifikate, die Sie gekauft hast, nur in den Ordner /etc/ssl/certs kopieren müssen und den Schritt mit dem Generieren einfach überspringen können.
Man ist auch im Vorteil, wenn man sich ein Zertifikat bei uns kauft, weil meist die eigen generierten Zertifikate von den meisten Browsern als zu gefährlich eingestuft werden.


Wichtige Hinweise zum Tutorial:


Dieses Tutorial ist nur für Debian.
Es funktioniert nicht auf anderen Linux-Distributionen.
Das # deutet standardmäßig in den meisten Fällen auf ein Konsolenbefehl an, der mit root-Rechten ausgeführt werden muss.
Wir benutzen im Tutorial verschiedene Platzhalter:

  • domainname = Ihre Domain z.B.: signaltransmitter.de
  • ihreip = Ihre IP-Adresse vom Server, z.B.: 4.4.4.4


Erstellen des Zertifikats

In diesem Schritt wird das Zertifikat generiert.
Wie schon beschrieben, sollten Sie schon ein Zertifikat für die Domain haben, lade Sie dieses einfach in das Verzeichnis /etc/ssl/certs hoch und überspringen diesen Schritt.

Zunächst installieren Sie das benötigte Paket openssl mit dem Befehl:
# apt-get install openssl


Danach erstellen Sie das Zertifikat mit folgenden Befehlen:
# cd /etc/ssl/certs
# openssl genrsa -des3 -out domainname-pass.key 2048
# openssl req -new -key domainname-pass.key -out domainname.csr
# openssl rsa -in domainname-pass.key -out domainname.key
# openssl x509 -req -days 365 -in domainname.csr -signkey domainname.key -out domainname.crt
# chmod 444 *.crt
# chmod 400 *.key

Nun haben Sie das Zertifikat generiert und die neuen Dateien sind nun im Ordner /etc/ssl/certs und diese tragen die Dateinamen domainname.key und domainname.crt


Einbinden in proftpd

Im Paket proftpd bindet man mit folgenden Schritten nun das Zertifikat ein:

Gehen Sie zunächst in die Datei: /etc/proftpd/proftpd.conf und ändern Sie folgende Einstellungen:

#
# SSL via TLS
#
<IfModule mod_tls.c>
TLSEngine off # on for use of TLS
TLSLog /var/log/proftpd/ftp_ssl.log # where to log to
TLSProtocol SSLv23 # SSLv23 or TLSv1
TLSOptions NoCertRequest # either to request the certificate or not
TLSRSACertificateFile /etc/proftpd/ssl.crt # SSL certfile
TLSRSACertificateKeyFile /etc/proftpd/ssl.key # SSL keyfile
TLSVerifyClient off # client verification
</IfModule>

in den nachfolgenden Einstellungen:
#
# SSL via TLS
#
<IfModule mod_tls.c>
TLSEngine on # on for use of TLS
TLSLog /var/log/proftpd/ftp_ssl.log # where to log to
TLSProtocol SSLv23 # SSLv23 or TLSv1
TLSOptions NoCertRequest # either to request the certificate or not
TLSRSACertificateFile /etc/ssl/certs/domainname.crt # SSL certfile
TLSRSACertificateKeyFile /etc/ssl/certs/domainname.key # SSL keyfile
TLSVerifyClient off # client verification
</IfModule>


Jetzt müssen Sie nur noch den FTP Server neustarten und Sie sind fertig:
# /etc/init.d/proftpd restart


Einbinden in courier

Kommen wir nun zum courier-Paket:

Zunächst werden wieder 2 neue Pakete benötigt (courier-imap-ssl und courier-pop-ssl)
# apt-get install courier-imap-ssl courier-pop-ssl


Dann führen Sie diese beiden Befehle aus:
# cat /etc/ssl/certs/domainaname.key /etc/ssl/certs/domainaname.crt >> /etc/courier/imapd.pem
# cat /etc/ssl/certs/domainaname.key /etc/ssl/certs/domainaname.crt >> /etc/courier/pop3d.pem


Jetzt müssen Sie nun diese Dateien in die Konfiguration von courier eingefügt werden:

In der Datei /etc/courier/imapd-ssl einfach folgende Zeile hinzufügen:
TLS_CERTFILE=/etc/courier/imapd.pem

und bei der Datei /etc/courier/pop3d-ssl diese:
TLS_CERTFILE=/etc/courier/pop3d.pem


Als letztes nur noch den Courier neustarten:
/etc/init.d/courier-imap-ssl restart
/etc/init.d/courier-pop3-ssl restart


Einbinden in apache2


Zum Schluss kommen Sie zur Einbindung in apache2:

In der Datei /etc/apache2/sites-enabled/00-default müssen Sie den passenden Abschnitt der Domain suchen und folgende Konfiguration hinzufügen:
<VirtualHost ihreip:443>
	ServerName domainname
	DocumentRoot /var/www/
	
	<IfModule mod_ssl.c>
		SSLEngine on
		SSLCertificateKeyFile /etc/ssl/certs/domainname.key
		SSLCertificateFile /etc/ssl/certs/domainname.crt
		SetEnvIf User-Agent ".*MSIE.*" \
		nokeepalive ssl-unclean-shutdown \
		downgrade-1.0 force-response-1.0
	</IfModule>
</VirtualHost>


Als nächstes den apache2-Server neustarten
# /etc/init.d/apache2 restart

2013 - 2017 SIGNALTRANSMITTER.de - Alle Rechte vorbehalten. | | SIGNALTRANSMITTER.de - Hosting hat 4,58 von 5 Sterne | 327 Bewertungen auf ProvenExpert.com
ST Version 1.7.19.2-cdd1948 (2017-12-13)