SSL 구성을 위해 인증서 파일에 대한 nginx 권한이 거부되었습니다.


25

Fedora 서버에 nginx SSL 프록시를 설치하고 있습니다.

/ etc / nginx 아래에 인증서와 키 페어를 만들었습니다. 그들은 다음과 같이 보입니다 :

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

...

루트로 nginx 서비스를 시작하려고합니다.

systemctl start nginx.service

다음과 같은 오류가 발생합니다.

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

이 파일에 대한 권한에 문제가 있습니까?


인증서 체인에 대해 언급합니다 ... demo.crt 키의 인증 기관에 문제가 있습니까? 아니면 자체 서명 된 인증서입니까? 그건 그렇고, 키 파일을 세계적으로 읽을 수 있어야한다고 생각하지 않습니다. Nginx는 루트로 연 다음 실행중인 모든 사용자에게 권한을 부여해야합니다.
Aleš Krajník

자기 서명 했어 소유권을 변경하겠습니다. 감사합니다.
numb3rs1x

인증서에 문제가 있다고 가정하지만 오류 메시지는 Nginx의 구성 파일에 적용됩니다.
bbaassssiiee

답변:


39

SELinux를 강제 모드로 설정했을 것입니다 (Fedora의 기본값).

sestatus -v

이 경우 감사 로그를 확인하면 액세스 오류가 있습니다.

ausearch -m avc -ts today | audit2allow

파일을 복사하지 않고 파일을 이동했을 수도 있으므로 파일의 보안 컨텍스트가 잘못되었을 수 있습니다.

ls -lrtZ /etc/nginx/demo.* 

필요한 경우 수정하십시오.

restorecon -v -R /etc/nginx

대단히 감사합니다. 지시에 따라 더 이상 오류가 발생하지 않습니다. 파일을 만든 디렉토리에서이 파일을 이동했습니다. 다음에 같은 디렉토리에 만들 수 있습니다. 그 외에 미래에 이런 일이 발생하지 않도록하려면 어떻게해야합니까?
numb3rs1x

이 특정 사용 사례의 경우 시스템 cp대신 AVC 거부를 찾는 mv방법을 배우고 사용하십시오 audit.
dawud

Ausearch | audit2allow 명령. selinux에 권한을 추가 했습니까? 아니면 selinux가 문제인지 확인하는 것입니까?
numb3rs1x

그냥 확인했다. 자세한 내용은 해당 매뉴얼 페이지를 읽으십시오.
dawud

4
와우 고마워! 'SELinux 비활성화'가 아닌 답변을 얻는 것이 좋습니다.
BCran

7

권한을 거부하는 것이 SELinux라고 생각합니다. SELinux 컨텍스트를 확인하십시오. 그것들은 httpd_config_t 여야합니다. 그렇지 않으면 실행

restorecon /etc/nginx/demo.*

또는

chcon httpd_config_t /etc/nginx/demo.*

루트로.

/ var / log / audit / 아래에서 로그를 확인하여 권한을 거부하는 SELinux인지 확인할 수 있습니다. 당신은 또한 실행할 수 있습니다

setenforce 0

SELinux를 허용 모드 로 설정 합니다 . 이런 식으로 SELinux는 여전히 AVC 메시지 (/ var / log / audit /에서)를 생성하지만 액세스는 허용합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.