GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Berechtigungen für SSL-Schlüssel?

Das Lesen privater Schlüssel sollte stark eingeschränkt sein. Berechtigungen auf 600 setzen und im Besitz von root sollte arbeiten. Es gibt jedoch andere sichere Berechtigungseinstellungen - Ubuntu speichert Schlüssel in einem Verzeichnis mit Besitzer root und Gruppe ssl-cert und Berechtigungen 710 . Das bedeutet, dass nur Mitglieder von ssl-cert kann auf alle Dateien in diesem Verzeichnis zugreifen. Private Schlüssel haben dann die Gruppe ssl-cert , Besitzer root und Berechtigungen 640 .


Ich hatte ein Problem beim Einrichten von Nginx und bin auf diese Frage gestoßen. Die andere Antwort hier hat die Frage bereits direkt beantwortet, aber ich dachte, ein wenig mehr Informationen wären hilfreich.

Normalerweise wird nginx als root gestartet Benutzer durch Init-Skripte / systemd. nginx hat jedoch auch die Möglichkeit, für den normalen Betrieb zu einem weniger privilegierten Benutzer zu wechseln. Meine Frage war also, welcher Benutzer zum Laden des SSL-Zertifikats/Schlüssels verwendet wird. Der erste privilegierte Benutzer oder derjenige, zu dem gewechselt wird?

Glücklicherweise verwendet nginx die anfänglichen Berechtigungen, um das Zertifikat und den Schlüssel in den Speicher zu lesen, bevor der Benutzer gewechselt wird. Normalerweise können Sie die Schlüssel also wirklich mit sehr eingeschränkten Berechtigungen belassen, da sie von nginx geladen werden, wenn es noch als root ausgeführt wird .

Das Problem, das mich hierher geführt hat, war, dass ich ssl_certificate definiert habe nur in meinem server Blöcke in nginx.conf . Ich habe Fehler wie [error] 18606#18606: *311 no "ssl_certificate" is defined in server listening on SSL port while SSL handshaking erhalten als ich verdammt genau wusste, dass meine Schlüssel am richtigen Ort waren. Das Problem war, dass ich keinen ssl_certificate hatte bei http Stufe nginx.conf .

Hoffe, das ist hilfreich für jemanden.


Linux
  1. 3 Möglichkeiten, wie ich SSH für den Datenschutz konfiguriere

  2. Spickzettel für Linux-Benutzer und -Berechtigungen

  3. Kostenloses SSL für Nginx auf Centos von Let’s encrypt

  4. So generieren Sie einen Schlüssel und eine CSR in cPanel für Ihr SSL-Zertifikat

  5. Cloud-Hosting ist ein IT-Skelettschlüssel für Entwickler

So installieren Sie ein kostenloses SSL-Zertifikat für Nginx unter Debian 10 Buster

So konfigurieren Sie Nginx mit SSL

So installieren Sie ein kostenloses SSL-Zertifikat für Nginx unter CentOS 8

So installieren Sie Let’s Encrypt SSL für Nginx unter Ubuntu 18.04 LTS

30 Übungen zu Linux-Berechtigungen für Systemadministratoren

SSH-Zugang für cPanel