
안녕하세요, 저는 Apache 웹 서버와 certbot 0.10.2
.
이 메시지의 결과로 나는 다음을 받았습니다:
2021년 6월 1일부터 더 이상 ACMEv1을 사용하여 인증서를 갱신할 수 없습니다. ACMEv2 호환 클라이언트로 업그레이드해야 합니다. 그렇지 않으면 인증서 발급이 실패합니다.
ACMEv2 호환 버전의 certbot으로 업그레이드하고 싶습니다.
지금까지 내가 한 일은 다음과 같습니다.
echo 'deb http://archive.debian.org/debian jessie-backports main' > /etc/apt/sources.list.d/backport.list
echo 'Acquire::Check-Valid-Until no;' > /etc/apt/apt.conf.d/no-check
apt update
이제 내가 아는 한 다음을 실행할 수 있습니다.
apt-get install python-certbot-apache -t jessie-backports
백포트된 최신 버전을 설치합니다. 하지만 이미 certbot이 설치되어 있고 인증서가 발급되었으므로업그레이드설치하는 대신.
-only-upgrade
단일 패키지에서 일부 작업을 수행하는 데 사용할 수 있습니까 backports
? 아니면 적어도 발급된 인증서를 삭제하지 않고 이전 버전의 certbot을 제거할 수 있습니까?
첨부된:전체 시스템을 업데이트하는 것과 같은 것을 본 적이 있지만 sudo apt -t jessie-backports upgrade
단일 패키지에서 작동하는지 모르겠습니다.
미리 감사드립니다.
답변1
귀하의 지원에 감사드립니다.
마침내 다른 방법을 사용하여 문제를 해결했습니다.ACME 클라이언트제안을 따르세요여기
인증서를 설치하는 과정이 그렇더라도아주 쉽게, 내 단계를 공유하고 싶습니다.
먼저 클라이언트를 설치합니다.
wget -O - https://get.acme.sh | sh -s [email protected]
설치가 완료된 후 별칭을 적용하려면 현재 터미널을 닫았다가 다시 열어야 합니다.
알아채다:설치도 생성됩니다.일일 크론 작업인증서를 확인하고 업데이트해야 하는 경우, crontab에 다른 certbot 작업이 예약되어 있으면 삭제하세요. cronjob이 없으면 업데이트 작업이 자동으로 수행된다는 의미이므로 다음 두 가지 옵션이 있습니다.
certbot delete
이전 인증서를 대화형으로 삭제할 때 발생하는 문제/etc/letsencrypt/renewal/example.com.conf
삭제하고 싶지 않다면 파일 이름을 바꾸면 됩니다.어쨌든 모든 것이 정상일 때 프로세스가 끝날 때만 이 작업을 수행하십시오.
왜냐하면 나는아파치 서버나는해야한다도메인 2개(네이키드 및 전체)나는 다음과 같은 아파치 모듈을 사용했습니다 :
acme.sh --issue --apache -d example.com -d www.example.com
모든 것이 순조롭게 진행되었다면 인증서가 생성되었을 것입니다(콘솔에서 현재 경로를 확인하세요).
이제 인증서를 설치할 차례이므로 인증서를 저장할 폴더를 만들었습니다.
mkdir -p /etc/apache2/certificates/example.com
그런 다음 다음 줄을 추가했습니다.example.com-le-ssl.conf
(먼저 백업하세요 ;-))예정된 변경 사항을 반영하기 위해 LetsEncrypt에서 생성된 이전 줄이 제거되었습니다.
SSLEngine on
SSLCertificateFile /etc/apache2/certificates/example.com/cert.pem
SSLCertificateChainFile /etc/apache2/certificates/example.com/fullchain.pem
SSLCertificateKeyFile /etc/apache2/certificates/example.com/privkey.pem
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA
SSLHonorCipherOrder on
SSLCompression off
SSLOptions +StrictRequire
마지막으로 인증서를 설치하고 아파치 서버를 다시 로드하는 명령을 실행했습니다.
acme.sh --install-cert -d example.com \
--cert-file /etc/apache2/certificates/example.com/cert.pem \
--key-file /etc/apache2/certificates/example.com/privkey.pem \
--fullchain-file /etc/apache2/certificates/example.com/fullchain.pem \
--reloadcmd "service apache2 force-reload"
답변2
이 패키지는 python-certbot-apache
jessie-backports와 작동하지 않습니다. Debian 버전을 Stretch 또는 Buster로 업그레이드해야 합니다.
답변3
certbot-auto를 작동시키려고 합니다:https://github.com/certbot/certbot/blob/master/certbot-auto
또한 더 이상 지원되지 않으며 Jessie의 Python 종속성에 대한 일부 수정이 필요하고 스크립트 자체의 일부 검사에 주석을 달았지만 Jessie 시스템에서 성공적으로 사용했지만 불행히도 아직 업그레이드할 수 없습니다.
wget https://raw.githubusercontent.com/certbot/certbot/1.11.x/certbot-auto
chmod +x certbot-auto
in 894 add:
DEPRECATED_OS=0
in 1753 change:
Bootstrap To BootstrapDebCommon
Run: NO_SELF_UPGRADE=1 ./certbot-auto
업데이트 크론에서도 certbot 및 envvar 대신 전체 경로로 certbot-auto를 호출하세요.
이는 매우 해킹적이며 종속성, 패키지 또는 API가 변경되면 분명히 다시 중단될 수 있습니다. 이는 (보안) 업데이트도 수신하지 않습니다(Jessie 자체도 수신하지 않음).
답변4
apt-get install python-certbot-apache -t jessie-backports
python-certbot-apache
이전 버전이 이미 설치되어 있는 경우에는 업그레이드됩니다. 동사를 사용한다고 해서 install
패키지가 처음부터 설치된다는 의미는 아닙니다.