
내 사무실에서는 시스템 중 하나가 여전히 Ubuntu 14.04를 실행하고 있습니다. 이 시스템은 Let's Encrypt 만료된 루트 인증서 문제의 영향을 받았습니다.
https://letsencrypt.org/docs/dst-root-ca-x3-expiration-september-2021/
여기에 있는 지침을 사용하여 최신 인증서를 수동으로 다운로드했습니다.
https://askubuntu.com/questions/1366704/how-to-install-latest-ca-certificates-on-ubuntu-14
# Ensure dependencies
sudo apt install make tar wget
# Make a place to build it in
mkdir -p ~/src
cd ~/src
wget https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/ca-certificates/20210119~20.04.2/ca-certificates_20210119~20.04.2.tar.xz
tar -xJf ca-certificates_20210119~20.04.2.tar.xz
# Now build and install
cd ca-certificates-20210119~20.04.1
make
sudo make install
# You might want to run this interactively to ensure
# you can select the ISRG Root X1
# in which case, just run: sudo dpkg-reconfigure ca-certificates
sudo dpkg-reconfigure -fnoninteractive ca-certificates
sudo update-ca-certificates --fresh --verbose
/usr/bin/c_rehash /etc/ssl/certs
여기의 단계에 따라 "DST Root CA X3"을 제거하고 "ISRG_Root_X1" 인증서가 활성화되었는지 확인했습니다.
https://jay.gooby.org/2021/09/30/remove-the-dst-root-ca-x3-crt-from-ubuntu-14-04-lts
# Also available at https://askubuntu.com/a/1366719/233579
mkdir -p ~/src
cd ~/src
wget https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/ca- certificates/20210119~20.04.2/ca-certificates_20210119~20.04.2.tar.xz
unxz ca-certificates_20210119~20.04.2.tar.xz
tar -xf ca-certificates_20210119~20.04.2.tar
cd ca-certificates-20210119~20.04.1
make
sudo make install
sudo dpkg-reconfigure -fnoninteractive ca-certificates
sudo update-ca-certificates
확인하기 위해 재부팅했습니다. 여전히 오류가 발생했습니다. 그런 다음 openssl
다음 지침을 사용하여 1.0.2에서 1.1.0으로 수동으로 업데이트했습니다 .
https://forums.servethehome.com/index.php?resources/installing-openssl-1-1-0-on-ubuntu.21/
# I had to use the --no-check-certificate flag because openssl's certificate
# is issued by LetsEncrypt
wget https://www.openssl.org/source/openssl-1.1.0e.tar.gz --no-check-certificate
tar xzvf openssl-1.1.0e.tar.gz
cd openssl-1.1.0e
./config -Wl,--enable-new-dtags,-rpath,'$(LIBRPATH)'
make
sudo make install
새 버전이 표시됩니다.
$ openssl version
OpenSSL 1.1.1l 24 Aug 2021
만료된 이전 인증서가 사라지고 새 인증서가 활성화되었는지 확인했습니다.
# Look for expired LetsEncrypt certificate.
$ openssl x509 -enddate -noout -in /etc/ssl/certs/DST_Root_CA_X3.pem
Can't open /etc/ssl/certs/DST_Root_CA_X3.pem for reading, No such file or directory
140352100943680:error:02001002:system library:fopen:No such file or directory:crypto/bio/bss_file.c:69:fopen('/etc/ssl/certs/DST_Root_CA_X3.pem','r')
140352100943680:error:2006D080:BIO routines:BIO_new_file:no such file:crypto/bio/bss_file.c:76:
unable to load certificate
# Look for new LetsEncrypt ISRG_Root_X1 certificate
$ openssl x509 -enddate -noout -in /etc/ssl/certs/ISRG_Root_X1.pem
notAfter=Jun 4 11:04:38 2035 GMT
확인하기 위해 다시 재부팅했습니다. 불행히도 여전히 오류가 발생합니다. openssl
1.1.0 빌드를 다시 다운로드하려고 하면 어떻게 됩니까 ? 그러나 이번에는 파일을 얻기 위해 이전에 사용했던 것과 같은 것이 --no-check-certificates
없이 :wget
$ wget https://www.openssl.org/source/openssl-1.1.0e.tar.gz
--2021-11-24 18:38:38-- https://www.openssl.org/source/openssl-1.1.0e.tar.gz
Resolving www.openssl.org (www.openssl.org)... 2600:1403:5400:59f::c1e, 2600:1403:5400:5b3::c1e, 104.122.65.172
Connecting to www.openssl.org (www.openssl.org)|2600:1403:5400:59f::c1e|:443... connected.
ERROR: cannot verify www.openssl.org's certificate, issued by ‘/C=US/O=Let's Encrypt/CN=R3’:
Unable to locally verify the issuer's authority.
To connect to www.openssl.org insecurely, use `--no-check-certificate'.
이 문제를 어떻게 해결할 수 있는지 아는 사람 있나요?
답변1
CA 인증서만 추가하려는 경우 모든 CA 인증서를 다운로드할 필요가 없습니다.
다음에서 PEM 형식의 새로운 ISRG Root X1 루트 인증서를 다운로드하기만 하면 됩니다.Let's Encrypt의 저장소(물론 링크가 실제 HTTPS 보호 사이트로 연결되는 것을 확인한 후).
확장자가 가 되도록 파일 이름을 .crt
바꾸고 /usr/local/share/ca-certificates
.
마지막으로 다음을 실행합니다.
sudo update-ca-certificates --fresh