letsencrypt로 인증서를 가져올 때 멈췄습니다.

2659 단어 letsencryptcertbot
letsencrypt의 성장이 눈부시다.

원래 Let's Encrypt이거나, LetsEncrypt이거나 검색 키워드가 복수 있기 때문에 정보가 흩어져 있기 때문에, 최신 정보를 쫓기 어려운 것은 있습니다만, 그런 영향을 아무것도 하지 않을 정도의 성장 상태를 볼 수 있습니다.

예전에는 letsencrypt였던 실행 명령이 letsencrypt-auto가 되거나 certbot으로 바뀌거나 해서 현재는 certbot-auto로 침착한 것 같습니다.

쉘에 쓰거나 Docker로 기술하거나 하는 기사를 보입니다만, 실행 커멘드가 바뀌어도 수정 개소를 최소한으로 하면, 모두 여러가지 궁리를 하고 있는 것 같습니다.

실제로 빠진 것



아래와 같은 쉘 스크립트를 준비해, 그 아래의 순서대로 진행했는데, letencrypt측의 엔드 포인트에 스테이징 환경이 채용되어, 루트 증명서가 「Fake LE Intermediate X1」이라고 하는 페이크 증명서가 되어 버렸습니다.

letsencrypt.sh
#!/bin/sh

#証明書のドメイン(,区切りで複数のドメインも指定可能)
DOMAIN=<YOUR DOMAIN>

#ドキュメントルート(上のドメインで接続可能である必要がある)
WEBROOT=<YOUR DOCUMENTROOT>

#メールアドレス(トラブル時にメールが届く)
EMAIL=<YOUR MAIL>

/usr/local/certbot/certbot-auto certonly -m $EMAIL /
--agree-tos --non-interactive $* /
--webroot -w $WEBROOT -d $DOMAIN


절차



※전제로 DNS 설정, 웹 서버 설정, certbot 설치는 완료되어 있는 것.

1. 위의 letsencrypt.sh를 원하는 곳에 놓습니다.

2. 아래 명령을 사용하여 테스트 서버에 연결하여 인증서를 얻습니다. (※이것이 잘못)
sudo ./letsencrypt.sh --test-cert

3. 다음 명령으로 프로덕션 인증서를 얻습니다.
sudo ./letsencrypt.sh --force-renewal

--force-renew를 너무 많이 실행하여 인증서 획득 사용 제한 임계값을 초과합니다.



하루에 5회, 1주일에 20회의 한계에 따라 증명서 취득을 할 수 없게 되었습니다. (어느 쪽에 걸렸는지 확인할 필요가 없다)

일본어 공식 페이지에도 이하와 같이 써 있어, 무효인 증명서를 취득하고 있었습니다.

--test-cert 또는 --staging
SSL/TLS 서버 인증서를 가져올 때 스테이징 서버를 사용하여 잘못된 인증서를 가져옵니다.
옵션 --server htps : // Ac-s 타긴 g. 아피.ぇつぇ crypt. 오 rg / 아레 c와 ry 을 지정하는 것과 같은 동작입니다.
(기본값: False)

어떻게 해결했는가



메인 도메인은 EV 인증서도 필요하기 때문에 유료 인증서를 할당했기 때문에 letsencrypt의 도메인에 포함할 수 없고, 울고 있는 울음 서브 도메인의 변경을 강요당했습니다.

그러나 변경 후 하위 도메인의 인증서를 얻는 경우 2. 단계에서 --dry-run을 지정한 후 --force-renewal을 지정하여 다시 실행하면 올바른 루트 인증서를 얻을 수 있었습니다.

좋은 웹페이지 즐겨찾기