
오류 없이 실행한 후 다음 단계를 수행했음에도 불구하고 브라우저에서 하위 도메인을 눌러 콘텐츠를 로드하려고 할 때마다 "안전하지 않음"이라는 메시지가 표시되기 때문에 뭔가 누락된 것이 틀림없다고 생각합니다 sudo certbot --nginx
.
가상 호스트에 대한 구성 파일은 다음과 같습니다.
server {
listen 80;
listen [::]:80;
root /var/www/lms/;
server_name lms.blainelafreniere.io;
location / {
try_files $uri /index.html;
}
}
server {
server_name lms-api.blainelafreniere.io;
location / {
proxy_pass http://127.0.0.1:3001;
}
listen [::]:443 ssl ipv6only=on; # managed by Certbot
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/lms-api.blainelafreniere.io/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/lms-api.blainelafreniere.io/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
server {
if ($host = lms-api.blainelafreniere.io) {
return 301 https://$host$request_uri;
} # managed by Certbot
listen 80;
listen [::]:80;
server_name lms-api.blainelafreniere.io;
return 404; # managed by Certbot
}
이것이 중요한지는 모르겠지만... 기본 루트 도메인인 blainelafreniere.io는 완전히 다른 VPS를 가리키고 있습니다. 내 blainelafreniere.io 도메인은 자체 SSL 인증서로 보호되며 현재 하위 도메인(이 경우 lms-api.blainelafreniere.io)에 대해서만 새 SSL 인증서를 생성하려고 합니다.
blainelafreniere.io => 서버 A lms.blainelafreniere.io, lms-api.blainelafreniere.io => 서버 B
하위 도메인도 보호하려면 기본 도메인의 인증서를 사용해야 하나요? 아니면 하위 도메인별로 새 인증서를 생성할 수 있나요?
답변1
와 더불어HTTP-01 챌린지지정된(여러 SAN을 사용하여) 호스트 이름에 대해서만 인증서를 얻을 수 있습니다. 인증서 투명성에 따라다음에 대한 로그blainelafreniere.io
에 대한 와일드카드 인증서가 없으므로 *.blainelafreniere.io
하위 도메인에 동일한 인증서를 사용할 수도 없습니다. (와일드카드 인증서를 얻는 것은 다음을 통해 가능합니다.DNS-01 챌린지하지만 이 경우에는 필요하지도 않고 최적이지도 않습니다.)
또한 로그는 Let's Encrypt가 두 하위 도메인( lms.api
및lms
)그게 올바른 방법이야.
자동 갱신을 위해서는 http://example.com/.well-known/acme-challenge/
Let's Encrypt / Certbot 구성에 지정된 위치(예: 아래 /etc/letsencrypt/renewal/
)에 계속 액세스하고 서비스를 제공해야 합니다.
현재 서버가 34.200.239.16
HTTPS 요청에 전혀 응답하지 않습니다. 이는 인증서에 문제가 되지 않습니다. Nginx가 포트 443을 수신하지 않거나 일부 방화벽이 이를 차단하고 있습니다.
$ dig lms.blainelafreniere.io +short
34.200.239.16
$ dig lms-api.blainelafreniere.io +short
34.200.239.16
nc 34.200.239.16 443 -nvvv
(UNKNOWN) [34.200.239.16] 443 (https) : Connection timed out
sent 0, rcvd 0