Điểm:0

Ejabberd: không thể giải mã từ định dạng DER

lá cờ cn

Môi trường:

phiên bản ejabberd: 20.7 Phiên bản Erlang: 10.6 Hệ điều hành: Windows Server 2019 Được cài đặt từ: trình cài đặt nhị phân chính thức Lỗi từ error.log/crash.log 21-06-2021 07:40:31.041 [quan trọng] <0.105.0>@ejabberd_app:start:71 Không khởi động được ứng dụng ejabberd: Giá trị tùy chọn không hợp lệ nghe->4->certfile: Không thể đọc tệp PEM 'C: /ProgramData/ejabberd/conf/test.pem': tại dòng 41: không thể giải mã từ định dạng DER

Đang chạy [|] = rr(khóa_công khai), {ok, _} = application:ensure_all_started(public_key), {ok, Data} = file:read_file("C:/Users/admin/Desktop/test.pem"), [{'PrivateKeyInfo', Der, }|] = public_key:pem_decode(Dữ liệu), #'PrivateKeyInfo'{privateKey = Key} = public_key:der_decode('PrivateKeyInfo', Der), public_key:der_decode('RSAPrivateKey', Key). đưa ra: ** lỗi ngoại lệ: không khớp giá trị bên tay phải #'RSAPrivateKey'{ phiên bản = 'hai số nguyên tố', mô đun = ... , công khai số mũ = 65537, privateExponent = ... , số nguyên tố1 = ... , số nguyên tố2 = ... , số mũ1 = ... , số mũ2 = ... , hệ số = ... , otherPrimeInfos = asn1_NOVALUE}

mô tả lỗi Tôi không thể chạy ejabberd vì lỗi được đề cập ở trên. Với chứng chỉ đại học của tôi, nó hoạt động tốt, nhưng tôi không biết tại sao ejabberd lại từ chối chứng chỉ của tôi.

Tôi sử dụng chứng chỉ có cơ quan cấp chứng chỉ cửa sổ tự ký giống như trường đại học của tôi.

https://github.com/processone/ejabberd/issues/2488 có vẻ giống như một vấn đề tương tự, nhưng tôi không hoàn toàn chắc chắn. Tuy nhiên, chỉ với khóa riêng, tôi có thể khởi động dịch vụ, nhưng không phải với toàn bộ chuỗi, vì lỗi ở dòng 41 xảy ra khi bắt đầu chứng chỉ công khai của máy chủ. Khi chỉ sử dụng khóa riêng, tất nhiên tôi không thể kết nối vì:

21-06-2021 08:32:46.742 [lỗi] <0.564.0>@ejabberd_http:init:122 Quá trình BÁO CÁO LỖI <0.564.0> với 0 hàng xóm bị lỗi với lý do: không khớp giá trị bàn tay phải {error,no_certfile} trong ejabberd_http:init/3 dòng 122 21-06-2021 08:32:46.742 [lỗi] <0.526.0>@ejabberd_http:init:122 Người giám sát ejabberd_http_sup có con không xác định bắt đầu bằng {ejabberd_http,start_link,undefined} tại <0.564.0> thoát mà không có lý do phù hợp giá trị bên tay phải {error,no_certfile} trong ejabberd_http:init/3 dòng 122 trong ngữ cảnh child_terminated

Tuy nhiên, với việc tắt tls, rõ ràng là nó có thể bắt đầu.

Cảm ơn sự giúp đỡ của bạn, Lukas

Ps.: Tôi đã đăng vấn đề này trên GitHub cũng vậy và đã trò chuyện với một anh chàng, nhưng anh ta không thể giúp tôi ở đó.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.