Frage Stop Apache von jedem SSL-Passwort für jeden Neustart fragen [Duplizieren]


Diese Frage hat hier bereits eine Antwort:

Verwenden Anweisungen von dieser Seite aber wenn ich sie ein wenig variierte, erstellte ich eine CA mit -Newca, ich kopierte sie cacert.pem zu meinem Comp und importiert als vertrauenswürdiger Aussteller in IE. Ich tat dann -Newreq und -Zeichen (Anmerkung: ich tue /full/path/CA.sh -cmd und nicht sh CA.sh -cmd) und das Cert und den Schlüssel in Apache verschoben.

Ich besuchte die Website in IE und mit .NET-Code und es scheint vertrauenswürdig, groß (es sei denn, ich schreibe www. Vor, was erwartet wird). Aber jedes Mal, wenn ich Apache neu starte, muss ich mein Passwort für die Site eingeben (s?).

Wie kann ich es so machen, dass ich NICHT das Passwort eingeben muss?


37
2017-07-15 15:09


Ursprung




Antworten:


Sie möchten die Passphrase aus einer Schlüsseldatei entfernen. Führe das aus:

openssl rsa -in key.pem -out newkey.pem

Beachten Sie, dass dies bedeutet, dass jeder mit physischem Zugriff auf den Server den Schlüssel kopieren (und damit missbrauchen) kann.


60
2017-07-15 15:15



Warner ich <3 wie du alle meine Fragen beantwortest und mir gute Antworten gibst: D. Das beste
Jeder Vorschlag, der zu einer erheblichen Verringerung der Sicherheit führt, sollte mit einer Warnung / einem Vorbehalt versehen werden. Kurz gesagt, diese Antwort bedeutet, dass derjenige, der physischen Zugriff auf die Maschine hat, Ihr Zertifikat gefährden kann. - Slartibartfast
Sie haben sicherlich einen Punkt slartibartfast und ich widerspreche nicht auf Verdienst. Ich kann mir jedoch keine gut funktionierende IT-Abteilung vorstellen, in der es akzeptabel ist, Passphrasen für private Schlüssel mit Schlüsselpaketen zu hinterlassen, die von Apache verwendet werden. - Warner
key.pem wird nicht gefunden. Ich benutze diese Methode und es funktioniert. chrisschuld.com/2008/08/ ... - vee
das funktioniert nicht mehr. openssl benötigt die Umschreibung, es sei denn, es gibt eine Option zum Deaktivieren - pcnate


Ich war schuldig, in der Vergangenheit die Passphrase aus meinen eigenen Schlüsseldateien entfernt zu haben, weil es die einfachste Lösung ist, aber sicherheitsbezogen ist es nicht die beste Idee. Eine Alternative besteht darin, die Passphrase an Apache zu senden. Du kannst das mit dem tun SSLPassPhraseDialog Option in Ihrem httpd.conf (oder eine andere Datei, die es enthält).

Wenn Sie nur eine SSL-Site auf Ihrem Server haben, wäre die einfachste Form:

# either of these will work
SSLPassPhraseDialog |/path/to/passphrase-script
SSLPassPhraseDialog exec:/path/to/passphrase-script

Sie würden dann ein sehr einfaches Skript namens erstellen /path/to/passphrase-script Das enthält etwas wie das Folgende:

#!/bin/sh
echo "put the passphrase here"

Beim Start nimmt Apache die Ausgabe dieses Skripts und verwendet es als Passphrase für Ihren SSL-Schlüssel. Wenn Sie mehrere SSL-Sites haben, SSLPassPhraseDialog hat zusätzliche Möglichkeiten, in denen es verwendet werden kann, so dass Sie entweder ein einzelnes Skript für alle Ihre Schlüssel oder ein separates Skript für jedes oder wie auch immer Sie es haben möchten.


22
2017-07-15 17:43



Das macht nicht wirklich etwas für Ihre Sicherheit - jeder, der einbricht, muss nur die Apache-Konfiguration lesen und dann das Skript lesen, und sie sind so gut, als hätten Sie die Passphrase überhaupt weggelassen. - Greg Price
Ich weiß nicht, warum Sie die Passphrase nicht entfernen würden, wenn Sie es sowieso aufschreiben würden. Ich mache mir keine Sorgen darüber, dass irgendjemand einbricht, da alle Berechtigungen korrekt eingestellt sind. Oder zumindest meistens. Im Moment ist der einzige, der auf meine Dateien zugreifen kann, mein Host-Provider (ich kann nichts dagegen tun, dass sie die Hardware haben und in root einsteigen oder auf ein physisches Laufwerk zugreifen können) und ich als root.
und chmod +x /path/to/passphrase-script - Junior M
Ich finde das in großen Umgebungen für das Konfigurationsmanagement nützlich. Sie möchten nicht, dass jede Maschine, die Sie starten, beim Start automatisch nach einer Passphrase fragt, insbesondere wenn Sie "in der Cloud" laufen. Mit einem Skript können Sie die verschlüsselten Dateien über unsichere Kanäle (Amazon S3, yum repos, etc.) .) während die Passphrase über einen verschlüsselten Kanal gesendet wird, wie bei Puppet oder Chef. - Cristian Măgherușan-Stanciu


Um das Passwort aus einer PEM-Datei zu entfernen, können Sie Folgendes tun. Beachten Sie, dass beide Befehle für die Situation erforderlich sind, in der sich der private Schlüssel und das öffentliche Zertifikat in derselben Datei befinden:

# you'll be prompted for your passphrase one last time
openssl rsa -in mycert.pem -out newcert.pem
openssl x509 -in mycert.pem >> newcert.pem

Dadurch wird eine Datei namens "newcert.pem" erstellt, bei der es sich um eine PEM-Datei ohne Kennwort handelt. Wie in anderen Antworten angemerkt, sollten Sie sich überlegen, ob dies aus Sicherheitsgründen eine gute Idee ist, bevor Sie dies tun.

Snagged von hier


3
2018-06-13 12:13