[LINUX] Lorsque j'essaye de créer Apache SSL, cela ne démarre pas.

1.Tout d'abord

Lorsque j'ai défini l'auto-certificat SSL dans Apache, il y avait une partie obstruée, je vais donc la laisser comme mémorandum.

2. Création d'un certificat

Tout d'abord, émettez un certificat avec la commande suivante.

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

Déplacez le certificat et la clé privée créés.

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

3. Modifier les paramètres

Spécifiez l'emplacement de stockage du certificat et de la clé privée.

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. Redémarrez Apache

Une erreur se produit lors du redémarrage.

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.

Regarder journalctl -xe ne donne aucune information. .. .. Lorsque je vérifie / var / log / httpd / error_log, j'obtiens une erreur liée à l'autorisation. Apparemment, SELINUX est mauvais.

/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

Après enquête, il semble que la politique de sécurité de SELinux ne donne pas à chaque fichier une étiquette appropriée. Vous pouvez vérifier l'étiquette avec la commande "ll -Z".

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

Renommez-le avec la commande "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

En conséquence, la commande "systemctl restart httpd.service" a redémarré normalement et SSL a été établi.

Recommended Posts

Lorsque j'essaye de créer Apache SSL, cela ne démarre pas.
Quand j'essaye de pousser avec heroku, ça ne marche pas
J'ai commencé, mais ça ne démarre pas!
Lorsque j'essaye d'utiliser pip, le module SSL n'est pas disponible.
Quand je retourne en utilisant le chainer, ça va un peu
Quand j'essaye matplotlib en Python, il dit 'cairo.Context'
J'ai introduit le noir dans vscode, mais il n'est pas automatiquement formaté
J'ai essayé de faire sonner le téléphone lorsqu'il a été publié sur le poste IoT
Essayez de le faire avec GUI, PyQt en Python
Lorsque j'essaye de me connecter à MySQL avec mysql-connector-python, je ne peux pas me connecter avec l'erreur "Erreur de connexion SSL: SSL_CTX_set_tmp_dh a échoué"
J'ai écrit des commandes Django pour faciliter le débogage des tâches Celery
Un mémorandum lors de l'acquisition automatique avec du sélénium
Ce que j'ai fait quand je voulais rendre Python plus rapide -Édition Numba-
Lorsque j'ai essayé d'exécuter Python, j'ai été ignoré dans le Microsoft Store
Lorsque j'essaie de mettre à niveau pip, après avoir échoué, on me demande de mettre à niveau et de boucler indéfiniment
[Zaif] J'ai essayé de faciliter le commerce de devises virtuelles avec Python
J'ai refactoré "J'ai essayé de faire d'Othello AI lorsque les débutants en programmation ont étudié python"
Machine de jugement de gorille, gorinator! !! J'ai essayé de le faire!
Faisons un noyau jupyter
Ce à quoi j'ai fait référence en étudiant tkinter
Comment activer SSL (TLS) dans Apache
Je veux faire un programme d'automatisation!
J'ai créé une API Web
Essayez de créer quelque chose comme C # LINQ
Lorsque j'ai essayé de changer le mot de passe root avec ansible, je ne pouvais pas y accéder.
Quand j'ai essayé de créer un environnement virtuel avec Python, cela n'a pas fonctionné
Lorsque j'essaye d'utiliser le notebook Jupiter sur Mac, je ne peux sélectionner que python2
J'ai fait de mon mieux pour créer une fonction d'optimisation, mais cela n'a pas fonctionné.
django geodjango auquel j'ai fait référence quand je suis resté coincé dans le tutoriel (édition)
Notez que j'étais accro à la configuration de TensowFlow
Lorsque j'essaie de partager avec Bert Japanese Tokenizer de Hugging Face, cela échoue avec l'initialisation de MeCab et aussi avec l'encodage.