Score:0

Ejabberd: ไม่สามารถถอดรหัสจากรูปแบบ DER

ธง cn

สิ่งแวดล้อม:

เวอร์ชัน ejabberd: 20.7 เวอร์ชัน Erlang: 10.6 ระบบปฏิบัติการ: Windows Server 2019 ติดตั้งจาก: ตัวติดตั้งไบนารีอย่างเป็นทางการ ข้อผิดพลาดจาก error.log/crash.log 2021-06-21 07:40:31.041 [สำคัญ] <0.105.0>@ejabberd_app:start:71 ไม่สามารถเริ่มแอปพลิเคชัน ejabberd: ค่าไม่ถูกต้องของตัวเลือก listen->4->certfile: ไม่สามารถอ่านไฟล์ PEM 'C: /ProgramData/ejabberd/conf/test.pem': ที่บรรทัด 41: ไม่สามารถถอดรหัสจากรูปแบบ DER

วิ่ง [|] = rr (คีย์สาธารณะ), {ตกลง, _} = แอปพลิเคชัน:ensure_all_started(public_key), {ตกลง ข้อมูล} = ไฟล์:read_file("C:/Users/admin/Desktop/test.pem"), [{'PrivateKeyInfo', Der, }|] = public_key:pem_decode(ข้อมูล), #'PrivateKeyInfo'{privateKey = Key} = public_key:der_decode('PrivateKeyInfo', ถัดไป), public_key:der_decode('RSAPrivateKey', คีย์) ให้: ** ข้อผิดพลาดข้อยกเว้น: ไม่ตรงกับค่าด้านขวา #'RSAPrivateKey'{ เวอร์ชัน = 'ทูไพรม์', โมดูลัส = ... , เลขชี้กำลังสาธารณะ = 65537, เลขชี้กำลังส่วนตัว = ... , ไพรม์1 = ... , ไพรม์2 = ... , เลขชี้กำลัง 1 = ... , เลขชี้กำลัง 2 = ... , ค่าสัมประสิทธิ์ = ... , otherPrimeInfos = asn1_NOVALUE}

คำอธิบายข้อบกพร่อง ฉันไม่สามารถเรียกใช้ ejabberd ได้เนื่องจากข้อผิดพลาดที่กล่าวถึงข้างต้น ด้วยใบรับรองวิทยาลัยของฉันมันใช้ได้ดี แต่ฉันไม่รู้ว่าทำไม ejabberd ปฏิเสธของฉัน

ฉันใช้ใบรับรองที่มีผู้ออกใบรับรอง Windows ที่ลงนามด้วยตนเองเช่นเดียวกับที่วิทยาลัยของฉันทำเช่นกัน

https://github.com/processone/ejabberd/issues/2488 ดูเหมือนจะเป็นปัญหาที่คล้ายกัน แต่ฉันไม่แน่ใจทั้งหมด อย่างไรก็ตาม เพียงแค่ใช้คีย์ส่วนตัว ฉันสามารถเริ่มบริการได้ แต่ไม่ใช่กับเชนแบบเต็ม เนื่องจากข้อผิดพลาดในบรรทัดที่ 41 เกิดขึ้นกับการเริ่มต้นใบรับรองสาธารณะของเซิร์ฟเวอร์ เมื่อใช้เฉพาะคีย์ส่วนตัว แน่นอนว่าฉันไม่สามารถเชื่อมต่อได้เนื่องจาก:

2021-06-21 08:32:46.742 [ข้อผิดพลาด] <0.564.0>@ejabberd_http:init:122 กระบวนการ CRASH REPORT <0.564.0> โดยมีเพื่อนบ้าน 0 รายขัดข้องด้วยเหตุผล: ไม่ตรงกับค่าขวามือ {error,no_certfile} ใน ejabberd_http:init/3 บรรทัดที่ 122 2021-06-21 08:32:46.742 [ข้อผิดพลาด] <0.526.0>@ejabberd_http:init:122 หัวหน้างาน ejabberd_http_sup ให้ child undefined เริ่มต้นด้วย {ejabberd_http,start_link,undefined} ที่ <0.564.0> ออกด้วยเหตุผลที่ไม่ตรงกับ ค่าขวามือ {error,no_certfile} ใน ejabberd_http:init/3 บรรทัดที่ 122 ในบริบท child_terminated

อย่างไรก็ตามด้วยการปิดใช้งาน tls จะสามารถเริ่มต้นได้อย่างชัดเจน

ขอบคุณสำหรับความช่วยเหลือของคุณ ลูคัส

Ps.: ฉันโพสต์ปัญหานี้ใน GitHub เช่นกันและได้คุยกับผู้ชายคนหนึ่ง แต่เขาไม่สามารถช่วยฉันได้ที่นั่น

โพสต์คำตอบ

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