답변:
nginx 설정에 문제가 있었고이 질문을 발견했습니다. 여기에있는 다른 대답은 이미 질문에 직접 대답했지만 조금 더 많은 정보가 도움이 될 것이라고 생각했습니다.
일반적으로 nginx는 root
init 스크립트 / systemd에 의해 사용자로 시작됩니다 . 그러나 nginx는 또한 정상적인 작업을 위해 권한이 적은 사용자로 전환 할 수 있습니다. 그래서 내 질문은 SSL 인증서 / 키를로드하는 데 어떤 사용자가 사용 되었습니까? 초기 특권 사용자 또는 전환 된 사용자?
다행히도 nginx는 초기 권한을 사용하여 사용자를 전환하기 전에 인증서와 키를 메모리로 읽습니다. 따라서 일반적으로 키가 여전히로 실행될 때 nginx에 의해로드 된 키는 매우 제한된 권한을 가진 채로 둘 수 있습니다 root
.
내가 여기에 착륙 한 문제는 ssl_certificate
에서 내 server
블록 에서만 정의하고 있다는 것 입니다 nginx.conf
. 나는 [error] 18606#18606: *311 no "ssl_certificate" is defined in server listening on SSL port while SSL handshaking
열쇠를 제대로 알고 잘 알았을 때 와 같은 오류가 발생 했습니다. 그 문제는 ssl_certificate
의 http
수준에 없었습니다 nginx.conf
.
이것이 누군가에게 도움이되기를 바랍니다.
nginx
그룹의 사용자가 읽을 수 있도록 만들 필요는 없습니다 . 웹 서버는 읽을 수만 있어도 읽을 수있는 경우에도 사용할 수root
있습니다.