خطأ keytool: java.lang.exception: الإدخال ليس شهادة X.509
سؤال
أحاول استيراد شهادة Gmails SMTP للاستخدام مع JIRA ، لكنني أحصل على هذا الخطأ عند استيراد استخدام KeyTool Javas.
لقد استخدمت OpenSSL للحصول على الشهادة ، كل شيء بين ---- شهادة البدء ---- وشهادة النهاية ---- (شاملة). حاولت أيضًا إنشاء شهادة X.509 باستخدام Windows Certificate Manager ، ولكن لا يزال يحصل على هذا الخطأ. لقد تحقق من أنه لا توجد مساحات بيضاء إضافية في الملف.
لقد رأيت الكثير من الأشخاص الذين يعانون من هذه المشكلة عبر الإنترنت ، ولكن يبدو أن أيا من الحلول تعمل بالنسبة لي. سيكون موضع تقدير أي مساعدة.
شكرًا
المحلول
openssl x509 -outform der -in foo.pem -out foo.der
ثم استخدم شهادة الإخراج المشفرة DER.
نصائح أخرى
الجواب صحيح ولكن تأكد من تضمين -----BEGIN CERTIFICATE-----
و -----END CERTIFICATE-----
في النسخة/لصق. سيعمل هذا الأمر بعد ذلك:
openssl x509 -outform der -in gmail.pem -out gmail.der
ثم تفعل:
sudo keytool -import -file gmail.der -keystore $JAVA_HOME/jre/lib/security/cacerts -trustcacerts
لسوء الحظ ، لم ينجح Openssl بالنسبة لي.
غير قادر على تحميل الشهادة 2740: خطأ: 0d0680a8: ASN1 ترميز الروتين: ASN1_CHECK_TLEN: علامة خاطئة:. crypto/asn1/tasn_dec.c: 380: type = x509_cinf 2740: خطأ: 0d08303a: asn1 الترميز الإجراءات: Asn1_template_noexp_d2i: nested asn1 e rror:. : خطأ: 0906700D: إجراءات PEM: PEM_ASN1_READ_BIO: ASN1 LIB: ./ CRYPTO/PEM/PEM_OTH .C: 83:
استخدم قاعدة المعرفة هذه والنجاح يتبع.