ในสำนักงานของฉันระบบหนึ่งยังคงใช้ 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
#รับประกันการพึ่งพาอาศัยกัน
sudo apt install ทำให้ tar wget
#จัดสถานที่ให้พร้อมเข้าอยู่ได้เลย
mkdir -p ~/src
ซีดี ~/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
#ตอนนี้สร้างและติดตั้ง
cd ca-ใบรับรอง-20210119~20.04.1
ทำ
sudo ทำการติดตั้ง
# คุณอาจต้องการเรียกใช้สิ่งนี้แบบโต้ตอบเพื่อให้แน่ใจว่า
# คุณสามารถเลือก ISRG Root X1
# ในกรณีนี้ ให้รัน: sudo dpkg-reconfigure ca-certificates
sudo dpkg-reconfigure -fnoninteractive ca-ใบรับรอง
sudo update-ca-ใบรับรอง --สด --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
# ดูได้ที่ https://askubuntu.com/a/1366719/233579
mkdir -p ~/src
ซีดี ~/src
wget https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/ca- ใบรับรอง/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-ใบรับรอง-20210119~20.04.1
ทำ
sudo ทำการติดตั้ง
sudo dpkg-reconfigure -fnoninteractive ca-ใบรับรอง
sudo update-ca-ใบรับรอง
ฉันรีบูตเครื่องเพื่อให้แน่ใจว่า ฉันยังคงได้รับข้อผิดพลาด จากนั้นฉันก็อัปเดตด้วยตนเอง opensl
จาก 1.0.2 ถึง 1.1.0 โดยใช้คำแนะนำเหล่านี้:
https://forums.servethehome.com/index.php?resources/installing-openssl-1-1-0-on-ubuntu.21/
# ฉันต้องใช้แฟล็ก --no-check-certificate เพราะใบรับรองของ openssl
# ออกโดย LetsEncrypt
wget https://www.openssl.org/source/openssl-1.1.0e.tar.gz --no-check-certificate
tar xzvf opensl-1.1.0e.tar.gz
ซีดีopenssl-1.1.0e
./config -Wl,--enable-new-dtags,-rpath,'$(LIBRPATH)'
ทำ
sudo ทำการติดตั้ง
ฉันเห็นเวอร์ชันใหม่:
รุ่น $openssl
OpenSSL 1.1.1l 24 ส.ค. 2564
ฉันแน่ใจว่าใบรับรองเก่าที่หมดอายุหายไปแล้ว และใบรับรองใหม่เปิดใช้งานอยู่:
# ค้นหาใบรับรอง LetsEncrypt ที่หมดอายุ
$ openssl x509 -enddate -noout -in /etc/ssl/certs/DST_Root_CA_X3.pem
ไม่สามารถเปิด /etc/ssl/certs/DST_Root_CA_X3.pem สำหรับการอ่าน ไม่มีไฟล์หรือไดเร็กทอรีดังกล่าว
140352100943680:ข้อผิดพลาด:02001002:ไลบรารีระบบ:fopen:ไม่มีไฟล์หรือไดเรกทอรีดังกล่าว:crypto/bio/bss_file.c:69:fopen('/etc/ssl/certs/DST_Root_CA_X3.pem','r')
140352100943680:error:2006D080:BIO รูทีน:BIO_new_file:ไม่มี ไฟล์ดังกล่าว:crypto/bio/bss_file.c:76:
ไม่สามารถโหลดใบรับรอง
# ค้นหาใบรับรอง LetsEncrypt ISRG_Root_X1 ใหม่
$ openssl x509 -enddate -noout -in /etc/ssl/certs/ISRG_Root_X1.pem
notAfter=4 มิถุนายน 11:04:38 2035 GMT
ฉันรีบูตเครื่องอีกครั้งเพื่อให้แน่ใจ ขออภัย ฉันยังคงได้รับข้อผิดพลาด นี่คือสิ่งที่จะเกิดขึ้นหากฉันพยายามดาวน์โหลดไฟล์ opensl
1.1.0 สร้างอีกครั้ง อย่างไรก็ตามคราวนี้ไม่มี --no-ตรวจสอบ-ใบรับรอง
กับ ว้าว
เหมือนที่ฉันใช้ก่อนหน้านี้เพื่อรับไฟล์:
$ 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
กำลังแก้ไข www.openssl.org (www.openssl.org)... 2600:1403:5400:59f::c1e, 2600:1403:5400:5b3::c1e, 104.122.65.172
กำลังเชื่อมต่อกับ www.openssl.org (www.openssl.org)|2600:1403:5400:59f::c1e|:443... เชื่อมต่อแล้ว
ข้อผิดพลาด: ไม่สามารถตรวจสอบใบรับรองของ www.openssl.org ซึ่งออกโดย â/C=US/O=Let's Encrypt/CN=R3â:
ไม่สามารถยืนยันอำนาจของผู้ออกได้
หากต้องการเชื่อมต่อกับ www.openssl.org อย่างไม่ปลอดภัย ให้ใช้ `--no-check-certificate'
ไม่มีใครรู้ว่าฉันจะแก้ไขได้อย่างไร