PEM_read_bio_X509_AUX() 실패 (SSL: error:0909006C:PEM routines:get_name:no start line:Expecting: TRUSTED CERTIFICATE)

VPS에서 Ubuntu 20.04 LTS를 사용하여 Discourse로 포럼을 설정하려고 했습니다. 하지만 설치 후 다음과 같은 오류가 발생합니다:

nginx: [emerg] cannot load certificate "/shared/ssl/domain.org.cer": PEM_read_bio_X509_AUX() failed (SSL: error:0909006C:PEM routines:get_name:no start line:Expecting: TRUSTED CERTIFICATE)
nginx: configuration file /etc/nginx/nginx.conf test fail

제 도메인은 다음과 같습니다:

다음 명령을 실행했습니다:

sudo nginx -t

그 결과 다음과 같은 출력이 생성되었습니다:

nginx: [emerg] cannot load certificate "/shared/ssl/domain.org.cer": PEM_read_bio_X509_AUX() failed (SSL: error:0909006C:PEM routines:get_name:no start line:Expecting: TRUSTED CERTIFICATE)

nginx: configuration file /etc/nginx/nginx.conf test fail

제 웹 서버는 (버전 포함) 다음과 같습니다:

nginx version: nginx/1.18.0

증서를 생성해야 합니까? GitHub에서 최신 저장소를 클론한 후 이 문제가 발생합니다. 이것이 의도된 동작인가요?

만약 Discourse 공식 표준 설치를 수행한 후 모든 것을 삭제하고 여러 번 처음부터 다시 시작하였다면, Let’s Encrypt 속도 제한에 도달하여 일주일 동안 인증서를 발급받을 수 없게 됩니다. 여러 도메인으로 Let’s Encrypt 설정하기를 따르고 사이트에 다른 도메인을 추가하면 이를 우회할 수 있습니다. 또는 다른 이름을 사용하거나 일주일간 기다리는 것도 방법입니다.

즉, 모든 것을 다시 설정하려면 7일(1주)을 기다려야 한다는 뜻인가요?

설명해 주신 내용을 바탕으로 내 추측으로는 그게 가장 그럴듯합니다.

알겠습니다. 기다려볼게요. 잘 되면 나중에 다시 올릴게요.

기록으로 남기기 위해 말씀드리면, 저도 동일한 문제를 겪었으며 원인은 포트 80을 서버로 리디렉션하는 것을 잊은 것이었습니다.

discourse-server.sh에서 수행되는 DNS 확인은 포트 443에서만 이루어져 문제가 감지되지 않았을 수 있습니다.

하지만 Let’s Encrypt는 포트 80도 열려 있어야 합니다.