Score:2

ใบรับรอง CA ไม่รู้จัก

ธง ru

ฉันพยายามติดตั้งใบรับรอง CA เนื่องจากพบข้อผิดพลาดขณะพยายามใช้ rosdep เริ่มต้น ซึ่งทำการเรียกไปที่ "raw.githubusercontent.com" ถ้าฉันโทรแบบเดียวกันกับ ว้าว ฉันจะได้รับข้อผิดพลาดเดียวกัน:

ข้อผิดพลาด: ไม่สามารถตรวจสอบใบรับรองของ raw.githubusercontent.com ซึ่งออกโดย âCN=DigiCert SHA2 High Assurance Server CA,OU=www.digicert.com,O=DigiCert Inc,C=USâ:
  ไม่สามารถยืนยันอำนาจของผู้ออกได้

ฉันได้ติดตั้งใบรับรอง ca ฉันลองสิ่งนี้ด้วยการติดตั้งใหม่และทุกอย่างทำงานได้ดี อย่างไรก็ตาม ฉันไม่สามารถติดตั้งใหม่บนเครื่องที่ฉันใช้งานอยู่ได้ มีวิธีอื่นในการแก้ปัญหานี้หรือไม่?

Score:1
ธง cn

ฉันไม่มีประสบการณ์เกี่ยวกับ รอสเดป แต่คุณสามารถลองอัปเดตใบรับรองของคุณด้วย;

sudo update-ca-ใบรับรอง -f

หากไม่ได้ผลและคุณแน่ใจ รอสเดป กำลังใช้ ว้าว คุณลองเพิ่มบรรทัดนี้ใน ~/.wgetrc

check_certificate = ปิด

ควรละเว้นข้อผิดพลาดของใบรับรองในภายหลัง อาจเป็นปัญหาของ GitHub ดังนั้นจึงไม่สามารถแสดงความคิดเห็นได้ ฉันสามารถ wget ไฟล์จาก raw.githubusercontent.com โดยไม่มีปัญหาใด ๆ

Joel Holmes avatar
ru flag
แม้ว่าวิธีนี้จะแก้ปัญหา wget ของฉัน แต่ก็ไม่สามารถแก้ปัญหาโดยรวมเกี่ยวกับใบรับรองได้ 1. rosdep ดูเหมือนจะไม่ใช้ wget 2. ยังคงเป็นข้อกังวลด้านความปลอดภัยที่ไม่มีการตรวจสอบใบรับรองสำหรับการโทร wget ทั้งหมด ฉันหวังว่าจะพบวิธีแก้ปัญหาที่กว้างขึ้นและใช้ wget เป็นตัวอย่าง
bw3u avatar
cn flag
ฉันไม่สามารถทบทวนปัญหาของคุณได้ ฉันสามารถ `sudo rosdep init` ยังสามารถ `update rosdep` ระบบของคุณติดตั้ง `ca-certificates` เวอร์ชันใด
Joel Holmes avatar
ru flag
``` sudo dpkg -s ca-ใบรับรอง | รุ่น grep เวอร์ชัน: 20210119~20.04.1```
bw3u avatar
cn flag
อืม ดูเหมือนว่าคุณกำลังใช้เวอร์ชันล่าสุดอยู่ คุณลองติดตั้ง `ca-certificate` ใหม่หรือยัง หากไม่สามารถลองติดตั้งใหม่ด้วย `sudo apt-get install --reinstall ca-certificates` หลังจากนั้นคุณสามารถยืนยันได้ว่าใบรับรอง `DigiCert` อยู่ใน `/etc/ssl/certs`นี่คือผลลัพธ์จากระบบของฉัน: [https://pastebin.ubuntu.com/p/jcCG29xt6w/](https://pastebin.ubuntu.com/p/jcCG29xt6w/)
Joel Holmes avatar
ru flag
ใช่ ฉันได้ลองแล้วและดูใบรับรองหลายรายการด้วย DigiCert ในไดเร็กทอรี ```ls /etc/ssl/certs/ | grep DigiCert DigiCert_Asured_ID_Root_CA.pem DigiCert_Asured_ID_Root_G2.pem DigiCert_Asured_ID_Root_G3.pem DigiCert_Global_Root_CA.pem DigiCert_Global_Root_G2.pem DigiCert_Global_Root_G3.pem DigiCert_High_Assurance_EV_Root_CA.pem DigiCert_Trusted_Root_G4.pem ```
bw3u avatar
cn flag
คุณลอง wget กับ `--ca-directory=/etc/ssl/certs` param ได้ไหม
Joel Holmes avatar
ru flag
ยอดเยี่ยม! นั่นได้ผล ตอนนี้มีการตั้งค่า env ที่ฉันเข้าใจผิดว่าบริการอื่นไม่ได้มองหาใบรับรองหรือไม่
bw3u avatar
cn flag
Afaik ไม่มี env var สำหรับสิ่งนั้น `update-ca-certificates --fresh` ควรทำเคล็ดลับ คุณสามารถลองเพิ่ม `ca_directory=/etc/ssl/certs` ใน wgetrc ของคุณใน home dir เช่นเดียวกับใน `/etc/wgetrc` อาจมีบางแอพที่คุณติดตั้งก่อนที่จะพัง คุณตรวจสอบมันได้ไหม?
Score:1
ธง ru

ในตอนท้ายเพิ่ม env var นี้ให้กับ my ~.bashrc ไฟล์ทำให้การโทร ROS ใช้งานได้:

ส่งออก SSL_CERT_DIR=/etc/ssl/certs

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา