[nginx] [SElinux] open() "/etc/nginx/???.conf" failed (13: Permission denied)

-- Unit nginx.service has begun starting up.
Jan 15 01:23:53 test_server nginx[20612]: nginx: [emerg] open() "/etc/nginx/???.conf" failed (13: Permission denied) in /etc/nginx/conf.d/#default.conf:8
Jan 15 01:23:53 test_server systemd[1]: nginx.service: control process exited, code=exited status=1
Jan 15 01:23:53 test_server systemd[1]: Failed to start nginx - high performance web server.
-- Subject: Unit nginx.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit nginx.service has failed.
--
-- The result is failed.
Jan 15 01:23:53 test_server systemd[1]: Unit nginx.service entered failed state.
Jan 15 01:23:53 test_server systemd[1]: nginx.service failed.
Jan 15 01:23:53 test_server polkitd[588]: Unregistered Authentication Agent for unix-process:20602:95375523 (system bus name :1.15067, object path /org/freedesktop/

  nginx.conf에서 include로 다른 conf 파일을 읽어들 수도 있는데, 보안 강화 리눅스(SELinux)를 켜고 나서 위와 같은 오류가 난다면 conf 파일들의 보안 문맥(security context)가 잘못 설정되어 있을 수 있다. conf 파일을 다른 경로에서 복사하거나 옮겨 왔을 때에 그럴 수 있다.

  /etc/nginx/ 경로 아래에 있는 conf 파일들의 보안 문맥을 아래처럼 chcon 명령어로 httpd_config_t로 바꾸어 준다.

# chcon -R -t httpd_config_t /etc/nginx/

 

2023/03/26 14:25 2023/03/26 14:25
글 걸기 주소 : 이 글에는 글을 걸 수 없습니다.

덧글을 달아 주세요