HTTPS를 통해 certbot 유효성 검사를 암호화하겠습니다


16

Certbot 웹 루트 플러그인 의 문서에서

웹 루트 플러그인은에 요청한 각 도메인에 대한 임시 파일을 만들어 작동합니다 ${webroot-path}/.well-known/acme-challenge. 그런 다음 Let 's Encrypt 유효성 검사 서버는 요청 된 각 도메인의 DNS가 certbot을 실행하는 서버로 확인되는지 확인하기 위해 HTTP 요청을 합니다.

개인적으로 사용되는 홈 서버에서 포트 80이 비활성화되어 있습니다. 즉, 라우터에서 포트 전달이 활성화되어 있지 않습니다. 나는 그 항구를 열 의도가 없다.

certbot에게 유효성 검사 서버가 도메인 소유권을 확인하기 위해 HTTP 요청이 아니라 HTTPS (포트 443) 요청을해야한다고 어떻게 알 수 있습니까?

유효성 검사 서버는 이미 기본적으로 HTTP를 사용하므로 홈 서버의 인증서를 유효성 검사 할 필요조차 없어야합니다. 자체 서명 인증서 또는 갱신을위한 인증서가있을 수 있지만 중요하지 않습니다.

현재 인증서를 만들거나 갱신하기 위해 포트 80 전달과 서버를 활성화 해야하는 상황에 처해 있습니다. 인증서를 갱신하기 위해 cronjob을 사용할 수 없습니다. 글쎄, 충분한 작업이 필요하지만 443에서 수신 대기중인 서버가 이미 있으며 작업을 수행 할 수 있습니다.

답변:


8

에보고 된 https://community.letsencrypt.org/t/shouldnt-verification-via-dns-record-be-a-priority/604/47 letsencrypt.sh DNS를 통해 지원하는 검증 업데이터를. 몇몇 업데이터 스크립트가 이것을 구현 한 것 같습니다. 그러나 HTTP 방법은 초기 구성을 위해 가장 간단한 방법입니다.

가지고있는 스크립트는 갱신을 위해 TNS SNI 또는 사전 키 소지 증명을 사용할 수 있습니다. 사양은 https://tools.ietf.org/html/draft-ietf-acme-acme-01#section-7.5 에서 찾을 수 있습니다 . 이 경우 HTTP를 활성화 할 필요가 없습니다.


감사합니다. DNS 기반 확인을 잊었습니다. 문서에서 거의 언급하지 않았으므로 정보를 찾기가 상대적으로 어렵습니다. Namecheap에 대한 갈고리가 없으므로 지금 구현하고 작동 방식을 확인하려고합니다. 예상대로 작동하면 답변을 수락하지만 현재 갱신 할 도메인이 없으므로 시간이 걸릴 수 있습니다. 그렇지 않으면 서버가 cronjobed 할 수있는 래퍼로 작동하도록 --webroot 명령을 서버에 굽어 야합니다.
Daniel F

방금 확인한 Namecheap의 API는 꽤 나쁩니다 (하나를 추가하거나 수정하기 위해 모든 레코드를 덮어 씁니다).이 경우 DNS는 옵션이 아닙니다. 또한 다른 등록 기관을 사용하고 있기 때문에 문제가 더욱 복잡해집니다 (API 키 관리). Namecheap의 API 키를 사용하면 새 도메인을 등록하거나 도메인을 이전 할 수있는 액세스 권한도 제공됩니다. FK는 안전하지 않습니다.
Daniel F

@DanielF DNS 또는 HTTP 유효성 검사가 갱신에 사용되지 않을 것으로 기대합니다. 서버가 기존 인증서에 대해 TLS SNI를 전달해야하기 때문에 필요하지 않으며 기존 인증서로 요청에 서명 할 수 있습니다. 충분해야합니다. DNS 및 HTTP는 합리적인 가입 방법입니다. 첫 번째 인증서가 갱신 될 때 문제를 해결하려면 30 일이 소요됩니다.
BillThor
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.