Discourse 설치는 성공적으로 완료되었지만 SSL 오류로 인해 작동하지 않음

에러 로그입니다

2024/12/14 14:04:39 [warn] 5993#5993: duplicate extension "wasm", content type: "application/wasm", previous content type: "application/wasm" in /etc/nginx/conf.d/discourse.conf:4
2024/12/14 14:04:39 [emerg] 5993#5993: cannot load certificate "/shared/ssl/masked.cer": PEM_read_bio_X509_AUX() failed (SSL: error:0480006C:PEM routines::no start line:Expecting: TRUSTED CERTIFICATE)
2024/12/14 14:04:40 [warn] 5995#5995: duplicate extension "wasm", content type: "application/wasm", previous content type: "application/wasm" in /etc/nginx/conf.d/discourse.conf:4
2024/12/14 14:04:40 [emerg] 5995#5995: cannot load certificate "/shared/ssl/masked.cer": PEM_read_bio_X509_AUX() failed (SSL: error:0480006C:PEM routines::no start line:Expecting: TRUSTED CERTIFICATE)
2024/12/14 14:04:41 [warn] 5997#5997: duplicate extension "wasm", content type: "application/wasm", previous content type: "application/wasm" in /etc/nginx/conf.d/discourse.conf:4
2024/12/14 14:04:41 [emerg] 5997#5997: cannot load certificate "/shared/ssl/masked.cer": PEM_read_bio_X509_AUX() failed (SSL: error:0480006C:PEM routines::no start line:Expecting: TRUSTED CERTIFICATE)
2024/12/14 14:04:42 [warn] 5999#5999: duplicate extension "wasm", content type: "application/wasm", previous content type: "application/wasm" in /etc/nginx/conf.d/discourse.conf:4
2024/12/14 14:04:42 [emerg] 5999#5999: cannot load certificate "/shared/ssl/masked.cer": PEM_read_bio_X509_AUX() failed (SSL: error:0480006C:PEM routines::no start line:Expecting: TRUSTED CERTIFICATE)
2024/12/14 14:04:43 [warn] 6001#6001: duplicate extension "wasm", content type: "application/wasm", previous content type: "application/wasm" in /etc/nginx/conf.d/discourse.conf:4
2024/12/14 14:04:43 [emerg] 6001#6001: cannot load certificate "/shared/ssl/masked.cer": PEM_read_bio_X509_AUX() failed (SSL: error:0480006C:PEM routines::no start line:Expecting: TRUSTED CERTIFICATE).

SSL을 살펴보니 내용이 비어 있었습니다. 애플리케이션을 다시 빌드해 보았고, letsencrypt에 제공한 이메일 주소가 올바른 것이 맞습니다.

감사합니다.
Nu

discourse-setup에서 호스트 이름 확인을 우회하고 여러 번 재구축을 수행하면 discourse에서 속도 제한을 받을 수 있어 이러한 문제가 자주 발생할 수 있습니다. Cloudflare 오렌지 클라우드를 사용하고 계신가요?

로그를 확인해 볼 수 있지만, 찾기가 어렵습니다. 만약 이것이 문제라면, 해결 방법은 일주일 정도를 기다리거나 여러 도메인/리다이렉트와 함께 Let’s Encrypt 설정하기에 설명된 대로 다른 호스트 이름을 추가하는 것입니다.

답변 감사합니다. 저는 Digital Ocean을 사용 중이며, 호스트명 확인을 우회하지도 않고 재빌드도 하지 않았습니다. GitHub의 Docker 기반 설정 지침에 따라 진행했습니다. Let’s Encrypt를 수동으로 설정해야 할 것 같습니다.

그리고 /etc/ngnix/ngnix.conf 파일을 찾을 수 없었습니다. 설치 스크립트를 실행하기 전에 놓치고 있는 것이 있을까요?

-Nu

해당 파일은 컨테이너 안에 있습니다.

 ./launcher enter app

명령어를 입력하면 컨테이너 내부로 들어갈 수 있습니다. 들어가서 인증서를 가져오려 시도하는 명령어를 찾아보세요. 저는 그걸 자주 실행하지 않아서 항상 기억이 나지 않습니다. 여기서 검색을 통해 찾아낼 수 있을 것입니다.

제 추측으로는 여전히 DNS 문제일 가능성이 높지만, 당신은 올바르게 진행한 것으로 보입니다.

근본 원인을 찾았습니다. 1. DNS에서 IPv4는 올바르게 설정되어 있었지만 IPv6는 잘못(업데이트되지 않음) 지정되어 있어 설치가 성공하지 못했습니다. 2. Digital Ocean은 Droplet에서 SMTP 메일 서비스를 지원하지 않습니다.

설치는 이제 완료되었지만, Digital Ocean의 제한 사항으로 인해 관리자 인증 메일을 수신할 수 없어 여러 옵션을 검토 중입니다.

  • Sendgrid 옵션 실패: :frowning_face_with_open_mouth: 기술적 한계인지 제 실수인지 알 수 없습니다.

Nu

죄송합니다. 다른 작업으로 바빴습니다. Digital Ocean에 호스팅된 Discourse에서 Mailgun이나 SendGrid, 기타 SMTP 제공업체를 어떻게 사용/설정하는지 아는 분 계신가요? SendGrid SMTP 자격 증명(사용자 이름, 비밀번호, SMTP 서버, 포트, 이메일, 답장 이메일, SSL 이메일 등) 정보를 모두 입력하고 재구성을 실행해 봤는데도 여전히 작동하지 않습니다.