Estoy instalando un proxy nginx ssl en mi servidor Fedora.
He creado un certificado y un par de claves en / etc / nginx. Se ven así:
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
...
Como root, estoy tratando de iniciar el servicio nginx:
systemctl start nginx.service
Obtuve el siguiente error:
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
¿Hay algo mal con los permisos en estos archivos?
nginx
ssl
ssl-certificate
numb3rs1x
fuente
fuente
Respuestas:
Probablemente tenga SELinux en modo de aplicación (el valor predeterminado para Fedora):
Si este es el caso, verifique los registros de auditoría, debería encontrar el error de acceso:
Probablemente también movió el archivo en lugar de copiarlo, por lo que el contexto de seguridad del archivo podría ser incorrecto.
y corríjalo si es necesario:
fuente
cp
lugar demv
y aprenda a usar elaudit
sistema para buscar denegaciones AVC.Supongo que es SELinux quien niega el permiso. Verifique su contexto SELinux. La suya debe ser httpd_config_t. Si no, corre
o
como raíz
Puede verificar los registros en / var / log / audit / para ver si es SELinux el que niega el permiso. También puedes correr
para configurar SELinux en modo permisivo . De esta manera, SELinux todavía genera mensajes AVC (en / var / log / audit /) pero permite el acceso.
fuente