J'installe un proxy nginx ssl sur mon serveur Fedora.
J'ai créé une paire de certificats et de clés sous / etc / nginx. Ils ressemblent à ceci:
ls -l /etc/nginx/
total 84
...
-rw-r--r--. 1 root root 1346 Sep 20 12:11 demo.crt
-rw-r--r--. 1 root root 1679 Sep 20 12:11 demo.key
...
En tant que root, j'essaie de démarrer le service nginx:
systemctl start nginx.service
J'obtiens l'erreur suivante:
nginx[30854]: nginx: [emerg]
SSL_CTX_use_certificate_chain_file("/etc/nginx/demo.crt") failed (SSL: error:0200100D:system library:fopen:Permission denied...e:system lib)
nginx[30854]: nginx: configuration file /etc/nginx/nginx.conf test failed
Y a-t-il un problème avec les autorisations sur ces fichiers?
nginx
ssl
ssl-certificate
numb3rs1x
la source
la source
Réponses:
Vous avez probablement SELinux en mode d'application (par défaut pour Fedora):
Si tel est le cas, vérifiez les journaux d'audit, vous devriez trouver l'erreur d'accès:
Vous avez également probablement déplacé le fichier au lieu de le copier, de sorte que le contexte de sécurité du fichier peut être incorrect.
et corrigez-le si nécessaire:
la source
cp
lieu demv
et apprendre à utiliser leaudit
système à la recherche de refus AVC.Je suppose que c'est SELinux qui refuse l'autorisation. Vérifiez leur contexte SELinux. Le leur devrait être httpd_config_t. Sinon, exécutez
ou
en tant que root.
Vous pouvez consulter les journaux sous / var / log / audit / pour voir si c'est SELinux qui refuse l'autorisation. Vous pouvez également exécuter
pour mettre SELinux en mode permissif . De cette façon, SELinux génère toujours des messages AVC (dans / var / log / audit /) mais autorise l'accès.
la source