Let's Encrypt 와일드카드 인증서와 함께 Dokku 사용
지금(이 게시물을 작성할 때) dokku-letsencrypt 플러그인에서 와일드카드 지원이 없습니다. 다행히 Dokku 자체는 다른 소스의 인증서를 사용할 수 있습니다.
Certbot으로 와일드카드 인증서 생성
와일드카드 인증서의 경우 사용자가 도메인 소유자임을 증명하기 위해 DNS를 변경해야 하는
DNS-01
Let's Encrypt와 함께 다른 챌린지를 사용해야 합니다.this tutorial에서 Jamie Scaife을 사용하여 Certbot을
acme-dns
사용하도록 설정하는 데 필요한 모든 것을 설치했습니다. 완료되면 와일드카드 인증서가 생성되어야 합니다.이제 앱 내에서 새로운 와일드카드 인증서를 사용하도록 Dokku에 알려야 합니다.
독쿠에 추가
특정 앱의 Dokku에 인증서를 추가하려면
dokku certs:add
명령을 사용합니다.모든 관련 파일과 함께
tar
파일을 사용하는 것이 더 쉽다는 것을 알았으므로 하나 만들어야 합니다.예를 들어 새 파일을 만듭니다.
/root/dokku-certs/app/install
여기서 app
는 애플리케이션의 이름이어야 합니다. 예시 도메인으로 example.com
를 사용하겠습니다. 즐겨 사용하는 편집기에서 열고 다음 콘텐츠를 추가합니다.rm -rf server.crt
rm -rf server.key
rm -rf certs.tar
cp /etc/letsencrypt/live/example.com/fullchain.pem server.crt
cp /etc/letsencrypt/live/example.com/privkey.pem server.key
tar cvf certs.tar server.key server.crt
dokku certs:add app < certs.tar
처음 3줄은 새 파일만 사용하도록 합니다.
5행과 6행은
letsencrypt
폴더에서 필요한 파일을 복사합니다. 여기서 certbot
는 인증서를 생성합니다. 올바른 경로로 변경해야 합니다.8행은
tar
파일을 만든 다음 마지막 명령을 사용하여 Dokku로 가져옵니다. 자신의 Dokku 앱으로 변경app
해야 합니다.마지막 단계는 스크립트를 실행 가능한 것으로 표시하는 것입니다.
chmod +x /root/dokku-certs/app/install
이제 스크립트를 호출하고 모든 것이 예상대로 작동하는지 확인할 수 있습니다.
/root/dokku-certs/app/install
다음과 같이 표시되어야 합니다.
server.key
server.crt
-----> Unsetting DOKKU_PROXY_PORT
-----> Unsetting DOKKU_PROXY_SSL_PORT
-----> Setting config vars
DOKKU_PROXY_PORT_MAP: http:80:5000
-----> Setting config vars
DOKKU_PROXY_PORT_MAP: http:80:5000 https:443:5000
-----> Configuring *.example.com...(using built-in template)
-----> Creating https nginx.conf
Enabling HSTS
Reloading nginx
인증서 갱신
--renew-hook
내에서 Certbotcrontab
을 사용합니다(자동 갱신의 경우).crontab
명령을 사용하여 crontab -e
를 열고 아래에 다음 줄을 추가합니다.0 0 */10 * * certbot renew --renew-hook "/root/dokku-certs/app/install" > /var/log/letsencrypt/renew-errors.log
이것은
certbot renew
의 스크립트와 함께 renew-hook
명령을 호출합니다. 갱신이 있을 때 후크를 트리거하고 스크립트를 호출하여 새 인증서를 Dokku 앱에 복사합니다.더 쉬운 방법이 있기를 바라지만 위의 스크립트가 잘 작동합니다.
문제가 발생하면 Let's Encrypt 봇에서 도메인 만료에 대한 이메일을 받게 됩니다. 따라서 Let's Encrypt로 인증서를 생성할 때 작동하는 이메일을 반드시 추가해야 합니다.
Reference
이 문제에 관하여(Let's Encrypt 와일드카드 인증서와 함께 Dokku 사용), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/citronak/using-dokku-with-let-s-encrypt-wildcard-certificate-3mh3텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)