[LINUX] Wenn ich versuche, Apache SSL zu erstellen, wird es nicht gestartet.

1. Zuallererst

Als ich das SSL-Selbstzertifikat in Apache einstellte, war ein Teil verstopft, daher werde ich es als Memorandum belassen.

2. Erstellen eines Zertifikats

Stellen Sie zunächst ein Zertifikat mit dem folgenden Befehl aus.

openssl ecparam -name prime256v1 -genkey -out server.key
openssl req -new -key server.key > server.csr
openssl ca -in server.csr -out server.crt

Verschieben Sie das erstellte Zertifikat und den privaten Schlüssel.

mv server.crt /etc/httpd/conf/ssl.crt/server.crt
mv server.key /etc/httpd/conf/ssl.key/server.key

3. Ändern Sie die Einstellungen

Geben Sie den Speicherort des Zertifikats und des privaten Schlüssels an.

vi /etc/httpd/conf.d/ssl.conf
--snip--
<VirtualHost *:443>
--snip--
#   Server Certificate:
# Point SSLCertificateFile at a PEM encoded certificate.  If
# the certificate is encrypted, then you will be prompted for a
# pass phrase.  Note that a kill -HUP will prompt again.  A new
# certificate can be generated using the genkey(1) command.
#SSLCertificateFile /etc/pki/tls/certs/localhost.crt
SSLCertificateFile /etc/httpd/conf/ssl.crt/server.crt

#   Server Private Key:
#   If the key is not combined with the certificate, use this
#   directive to point at the key file.  Keep in mind that if
#   you've both a RSA and a DSA private key you can configure
#   both in parallel (to also allow the use of DSA ciphers, etc.)
#SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
SSLCertificateKeyFile /etc/httpd/conf/ssl.key/server.key
--snip--

4. Starten Sie Apache neu

Beim Neustart tritt ein Fehler auf.

systemctl restart httpd.service
Job for httpd.service failed because the control process exited with error code. See "systemctl status httpd.service" and "journalctl -xe" for details.

Ein Blick auf journalctl -xe liefert keine Informationen. .. .. Wenn ich / var / log / httpd / error_log überprüfe, wird ein Berechtigungsfehler angezeigt. Anscheinend ist SELINUX schlecht.

/var/log/httpd/error_log


[Thu Apr 02 10:02:29.534751 2020] [ssl:emerg] [pid 19565] AH02312: Fatal error initialising mod_ssl, exiting.
[Thu Apr 02 10:02:33.453638 2020] [core:notice] [pid 19576] SELinux policy enabled; httpd running as context system_u:system_r:httpd_t:s0
[Thu Apr 02 10:02:33.455370 2020] [suexec:notice] [pid 19576] AH01232: suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
[Thu Apr 02 10:02:33.455600 2020] [ssl:emerg] [pid 19576](13)Permission denied: AH02201: Init: Can't open server certificate file /etc/httpd/conf/ssl.crt/wild_server.crt

Nach der Untersuchung scheint die Sicherheitsrichtlinie von SELinux nicht jeder Datei eine angemessene Bezeichnung zu geben. Sie können die Beschriftung mit dem Befehl "ll -Z" überprüfen.

[root@149_centos ssl.key]# ll -Z
-rwxrwxrwx. hoge hoge unconfined_u:object_r:user_home_t:s0 wild_server.key

Beschriften Sie dies erneut mit dem Befehl "restorecon".

[root@149_centos ssl.key]# restorecon wild_server.key
[root@149_centos ssl.key]#
[root@149_centos ssl.key]# ll -Z
-rwxrwxrwx. hoge hoge unconfined_u:object_r:httpd_config_t:s0 wild_server.key

Infolgedessen wurde der Befehl "systemctl restart httpd.service" normal neu gestartet und SSL wurde eingerichtet.

Recommended Posts

Wenn ich versuche, Apache SSL zu erstellen, wird es nicht gestartet.
Wenn ich versuche, mit Heroku zu pushen, funktioniert es nicht
Ich habe angefangen, aber es fängt nicht an!
Wenn ich versuche, pip zu verwenden, ist das SSL-Modul nicht verfügbar.
Wenn ich mit Chainer zurückkehre, passt es ein wenig
Wenn ich matplotlib in Python versuche, heißt es'cairo.Context '.
Ich habe Schwarz in vscode eingeführt, aber es wird nicht automatisch formatiert
Ich habe versucht, das Telefon klingeln zu lassen, als es auf dem IoT-Post veröffentlicht wurde
Versuchen Sie es mit GUI, PyQt in Python
Wenn ich versuche, mit mysql-connector-python eine Verbindung zu MySQL herzustellen, kann ich keine Verbindung mit dem Fehler "SSL-Verbindungsfehler: SSL_CTX_set_tmp_dh fehlgeschlagen" herstellen.
Ich habe Django-Befehle geschrieben, um das Debuggen von Sellerie-Aufgaben zu vereinfachen
Ein Memorandum beim automatischen Erwerb mit Selen
Was ich getan habe, als ich Python schneller machen wollte - Numba Edition -
Als ich versuchte, Python auszuführen, wurde ich zum Microsoft Store übersprungen
Wenn ich versuche, pip zu aktualisieren, werde ich nach einem Fehler aufgefordert, ein Upgrade durchzuführen und eine unbegrenzte Schleife durchzuführen
[Zaif] Ich habe versucht, den Handel mit virtuellen Währungen mit Python zu vereinfachen
Ich überarbeitete "Ich habe versucht, Othello AI zu machen, als Programmieranfänger Python studierten"
Gorilla-Urteilsmaschine, Gorinator! !! Versucht es zu schaffen!
Machen wir einen Jupyter-Kernel
Worauf ich mich beim Studium von tkinter bezog
So aktivieren Sie SSL (TLS) in Apache
Ich möchte ein Automatisierungsprogramm erstellen!
Ich habe eine Web-API erstellt
Versuchen Sie etwas wie C # LINQ zu machen
Als ich versuchte, das Root-Passwort mit ansible zu ändern, konnte ich nicht darauf zugreifen.
Als ich versuchte, mit Python eine virtuelle Umgebung zu erstellen, funktionierte dies nicht
Wenn ich versuche, Jupiter Notebook auf einem Mac zu verwenden, kann ich nur Python2 auswählen
Ich habe mein Bestes versucht, um eine Optimierungsfunktion zu erstellen, aber es hat nicht funktioniert.
django geodjango Ich habe mich darauf bezogen, als ich im Tutorial feststeckte (Bearbeitung)
Beachten Sie, dass ich süchtig danach war, TensowFlow einzurichten
Wenn ich versuche, mit Bert Japanese Tokenizer von Hugging Face zu teilen, schlägt dies beim Initialisieren von MeCab und auch beim Codieren fehl.