[nginx] ssl Zertifikat einrichten

Für die sichere Kommunikation zwischen nginx Server und Browser empfiehlt es sich wie beim Apache ein SSL Zertifikat zu verwenden.

Damit nach der erfolgreichen Einrichtung ein Aufruf per https erfolgen kann, muss zunächst der Port 443 in der firewall freigeschaltet werden.
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload

Hier die benötigten Schritte um ein SSL Zertifikat zu erstellen:
yum install mod_ssl openssl
cd /etc/ssl
openssl genrsa -out seite2.key 2048
openssl req -new -key seite2.key -out seite2.csr
openssl x509 -req -days 365 -in seite2.csr -signkey seite2.key -out seite2.crt

Für den SSL Server block wurde die Datei /etc/nginx/conf.d/seite2.conf nach /etc/nginx/conf.d/ssl-seite2.conf kopiert.

Aufbau ssl-seite2.conf
server {
listen 443;
ssl on;
ssl_certificate /etc/ssl/seite2.crt;
ssl_certificate_key /etc/ssl/seite2.key;

index index.html;

server_name www.seite2.de;
access_log /var/vhosts/seite2/logs/ssl-seite2.access.log main;
error_log /var/vhosts/seite2/logs/ssl-seite2.error.log;

root /var/vhosts/seite2/www;
}

Damit der Besucher der Seite beim http Aufruf auf https weitergeleitet wird, wurden folgende Zeilen in der /etc/nginx/conf.d/seite2.conf hinterlegt:

if ($scheme = http) {
return 301 https://$server_name$request_uri;
}

3 thoughts on “[nginx] ssl Zertifikat einrichten

  1. Freiheit

    Hier sind noch ein paar sehr sinnvolle Parameter zum ergänzen:
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;
    ssl_ciphers ‚EECDH+AESGCM EDH+AESGCM EECDH EDH !aNULL !eNULL !EXPORT !LOW !MEDIUM !DES !3DES !RC4 !SEED !CAMELLIA !MD5 !PSK !DSS‘;

    Antworten
  2. Freiheit

    Sehe gerade, beim letzten Eintrag hat deine Kommentarfunktion eingegriffen das Komma hinter ssl_ciphers muss natürlich ein einfaches Hochkomma sein, nochmal als code block

    ssl_ciphers 'EECDH+AESGCM EDH+AESGCM EECDH EDH !aNULL !eNULL !EXPORT !LOW !MEDIUM !DES !3DES !RC4 !SEED !CAMELLIA !MD5 !PSK !DSS';

    Antworten

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.