אתם צופים במסמכי התיעוד של Apigee Edge.
כדאי לעיין במסמכי התיעוד של Apigee X. מידע
במאמר הזה מוסבר איך להמיר את אישור ה-TLS ואת המפתח הפרטי שמשויך אליו לפורמט PEM או לפורמט PFX (PKCS #12).
ב-Apigee Edge יש תמיכה בשמירת אישורים בפורמט PEM או PFX בלבד במאגרי מפתחות ובמאגרי אישורים מהימנים. השלבים להמרת אישורים מכל פורמט קיים לפורמט PEM או PFX מבוססים על ערכת הכלים OpenSSL, והם רלוונטיים לכל סביבה שבה OpenSSL זמין.
לפני שמתחילים
לפני שמשתמשים בשלבים שמתוארים במאמר הזה, חשוב להבין את הנושאים הבאים:
- אם אתם לא מכירים את הפורמטים PEM או PFX, כדאי לקרוא את המאמר מידע על TLS/SSL.
- אם אתם לא מכירים את הפורמטים של האישורים, כדאי לקרוא את המאמר בנושא פורמטים של אישורי SSL.
- אם אתם לא מכירים את ספריית OpenSSL, כדאי לקרוא את המאמר בנושא OpenSSL.
- אם רוצים להשתמש בדוגמאות של שורת הפקודה במדריך הזה, צריך להתקין את הגרסה העדכנית של לקוח OpenSSL או לעדכן אליה.
המרת אישור מפורמט DER לפורמט PEM
בקטע הזה מוסבר איך להמיר אישור ומפתח פרטי משויך מפורמט DER לפורמט PEM.
-
מעבירים את הקובץ שמכיל את שרשרת האישורים המלאה (
certificate.der) ואת המפתח הפרטי המשויך (private_key.der) שרוצים להמיר לפורמט PEM למחשב שבו מותקן OpenSSL באמצעותscp,sftpאו כל כלי אחר.לדוגמה, משתמשים בפקודה
scpכדי להעביר את הקובץ לספרייה/tmpבשרת שמכיל OpenSSL, באופן הבא:scp certificate.der servername:/tmp scp private_key.der servername:/tmp
כאשר servername הוא שם השרת שמכיל את OpenSSL.
- מתחברים למחשב שבו מותקן OpenSSL.
-
מהספרייה שבה נמצאים האישורים, מריצים את הפקודה הבאה כדי להמיר את האישור ואת המפתח הפרטי המשויך מפורמט DER לפורמט PEM:
openssl x509 -inform DER -in certificate.der -outform PEM -out certificate.pem openssl rsa -inform DER -in private_key.der -outform PEM -out private.key
- מוודאים שהאישור הומר לפורמט PEM.
המרת אישור מפורמט P7B לפורמט PEM
בקטע הזה מוסבר איך להמיר אישורים מפורמט P7B לפורמט PEM.
- מעבירים את הקובץ שמכיל את שרשרת האישורים המלאה (
certificate.p7b) שרוצים להמיר לפורמט PEM למחשב שבו מותקן OpenSSL באמצעותscp,sftpאו כלי אחר.לדוגמה, משתמשים בפקודה
scpכדי להעביר את הקובץ לספרייה/tmpבשרת שמכיל OpenSSL, באופן הבא:scp certificate.p7b servername:/tmp
כאשר servername הוא שם השרת שמכיל את OpenSSL.
- מתחברים למחשב שבו מותקן OpenSSL.
-
מהספרייה שבה נמצאים האישורים, מריצים את הפקודה הבאה כדי להמיר את האישור מפורמט P7B לפורמט PEM:
openssl pkcs7 -print_certs -in certificate.p7b -out certificate.pem
- מוודאים שהאישור הומר לפורמט PEM.
המרת אישור מפורמט PFX לפורמט PEM
בקטע הזה מוסבר איך להמיר אישורי TLS מפורמט PFX לפורמט PEM.
כשממירים קובץ PFX לפורמט PEM, OpenSSL מכניס את כל האישורים ואת המפתח הפרטי לקובץ אחד. תצטרכו לפתוח את הקובץ בעורך טקסט ולהעתיק כל אישור ומפתח פרטי (כולל הצהרות BEGIN/END) לקובצי טקסט נפרדים ולשמור אותם כ-certificate.pfx, Intermediate.pfx (אם רלוונטי), CACert.pfx ו-privateKey.key בהתאמה.
Apigee תומך בפורמט PFX/PKCS #12, אבל פורמט PEM נוח לשימוש מסיבות רבות, כולל אימות.
-
מעבירים את האישורים ואת המפתח הפרטי (
certificate.pfx,Intermediate.pfxCACert.pfx, privateKey.key) שרוצים להמיר לפורמט PEM למחשב שבו מותקן OpenSSL באמצעותscp,sftpאו כל כלי אחר.לדוגמה, משתמשים בפקודה
scpכדי להעביר את הקובץ לספרייה/tmpבשרת שמכיל OpenSSL, באופן הבא:scp certificate.pfx servername:/tmp
כאשר servername הוא שם השרת שמכיל את OpenSSL.
- מתחברים למחשב שבו מותקן OpenSSL.
-
מהספרייה שבה נמצאים האישורים, מריצים את הפקודה הבאה כדי להמיר את האישור מפורמט P7B לפורמט PEM:
openssl pkcs12 -in certificate.pfx -out certificate.pem -nodes
- מוודאים שהאישור הומר לפורמט PEM.
המרת אישור מפורמט P7B לפורמט PFX
בקטע הזה מוסבר איך להמיר אישורי TLS מפורמט P7B לפורמט PFX.
כדי להמיר לפורמט PFX, צריך לקבל גם את המפתח הפרטי.
-
מעבירים את האישור (
certificate.p7b) שרוצים להמיר ל-PFX למחשב שבו מותקן OpenSSL באמצעותscp, sftpאו כלי אחר.לדוגמה, משתמשים בפקודה
scpכדי להעביר את הקובץ לספרייה/tmpבשרת שמכיל OpenSSL, באופן הבא:scp certificate.p7b servername:/tmp scp private_key.key servername:/tmp
כאשר servername הוא שם השרת שמכיל את OpenSSL.
- מתחברים למחשב שבו מותקן OpenSSL.
-
מהספרייה שבה נמצאים האישורים, מריצים את הפקודות הבאות כדי להמיר את האישור מפורמט P7B לפורמט PFX ולייצא את האישור של הישות ואת אישור הביניים של הרשות שמנפיקה את האישורים (CA) לקבצים נפרדים:
openssl pkcs7 -print_certs -in certificate.p7b -out certificate.cer openssl pkcs12 -export -in certificate.cer -inkey private_key.key -out certificate.pfx -certfile CACert.cer
אימות האישור בפורמט PEM
בקטע הזה מוסבר איך לוודא שהאישור הוא בפורמט PEM.
- כדי להציג את האישור בפורמט PEM, מריצים את הפקודה הבאה:
openssl x509 -in certificate.pem -text -noout
- אם אתם יכולים לראות את תוכן האישור בפורמט שניתן לקריאה על ידי בני אדם ללא שגיאות, אתם יכולים לאשר שהאישור הוא בפורמט PEM.
-
אם האישור הוא בפורמט אחר, יופיעו שגיאות כמו השגיאות הבאות:
unable to load certificate 12626:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:647:Expecting: TRUSTED CERTIFICATE View DER encoded Certificate
אריזת קובצי אישור ומפתח PEM בפורמט PKCS12/PFX
-
מוודאים שקובץ המפתח הפרטי הוא בפורמט PEM. אם יש לכם קובצי PEM נפרדים לשרשרת האישורים, פותחים כל קובץ בכלי לעריכת טקסט ומשרשרים אותם לקובץ אחד כמו בדוגמה הבאה:
-----BEGIN CERTIFICATE----- ... -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- ... -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- ... -----END CERTIFICATE-----
-
מעבירים את הקבצים למכונה שבה מותקן OpenSSL באמצעות
scp,sftpאו כל כלי אחר:scp certificate.pem servername:/tmp scp private.key servername:/tmp
- מתחברים למחשב שבו מותקן OpenSSL.
-
מהספרייה שבה נמצאים הקבצים, מריצים את הפקודה הבאה כדי לארוז את הקבצים בקובץ PKCS12 עם הכינוי myalias. כשמוצגת בקשה, מזינים סיסמה מתאימה:
openssl pkcs12 -export -in certificate.pem -inkey private.key -out keystore.pfx -name myalias