Sertifika zinciri doğrulanıyor

Apigee Edge belgelerini görüntülüyorsunuz.
. Git: Apigee X belgeleri.
bilgi

Bu belgede, sertifikayı yüklemeden önce bir sertifika zincirini nasıl doğrulayacağınız açıklanmaktadır. bir anahtar deposu ya da güven deposu bulundurmaktır. Süreç süreci Sertifikayı doğrulamak için OpenSSL araç seti ve OpenSSL'nin kullanılabildiği tüm ortamlarda geçerlidir.

Başlamadan önce

Bu dokümandaki adımları kullanmadan önce aşağıdaki konuları anladığınızdan emin olun:

  • Sertifika zinciri hakkında bilginiz yoksa Güven zinciri.
  • OpenSSL kitaplığını bilmiyorsanız lütfen şu bağlantıyı okuyun: OpenSSL'yi tıklayın.
  • Bu kılavuzdaki komut satırı örneklerini kullanmak istiyorsanız en son OpenSSL istemcisi sürümü.
  • Sertifikaların PEM biçiminde olduğundan emin olun. Sertifikalar PEM biçiminde değilse şu adresteki talimatları uygulayın: Sertifikaları desteklenen bir biçime dönüştürerek PEM biçimine dönüştürebilirsiniz.

Zincirin tamamı için sertifika konusunu ve sertifikayı vereni doğrulama

OpenSSL komutlarını kullanarak sertifika zincirini doğrulamak için şurada açıklanan adımları tamamlayın: şu bölümlerden faydalanabilirsiniz:

Sertifika zincirini bölme

Sertifikayı doğrulamadan önce, sertifika zincirini farklı alt bölümlere ayırmanız gerekir. aşağıdaki adımları uygulayarak sertifikalarınızı gözden geçirin:

  1. OpenSSL istemcisinin bulunduğu sunucuya giriş yapın.
  2. Sertifika zincirini aşağıdaki sertifikalara bölün (önceden yapmadıysanız):
    • Varlık sertifikası: entity.pem
    • Ara sertifika: intermediate.pem
    • Kök sertifika: root.pem
    ziyaret edin.
'nı inceleyin.

Aşağıdaki şekilde örnek bir sertifika zinciri gösterilmektedir:

sertifika zinciri akışı: Kimlik sertifikasından ara sertifikaya ve kök sertifikaya

Sertifika konusunu ve sertifikayı vereni doğrulama

Bu bölümde, sertifikaların konusunun ve verenin nasıl alınacağı ve sertifikaların nasıl doğrulanacağı geçerli bir sertifika zinciriniz olduğundan emin olun.

  1. Aşağıdaki OpenSSL komutunu çalıştırarak Subject ve entity tarihinden itibaren zincirdeki her sertifika için Issuer root konumuna ekleyin ve bunların uygun bir sertifika zinciri oluşturduklarını doğrulayın:
    openssl x509 -text -in certificate | grep -E '(Subject|Issuer):'
        

    Burada certificate, sertifikanın adıdır.

  2. Zincirdeki sertifikaların aşağıdaki yönergelere uyduğunu doğrulayın:
    • Her sertifikanın Subject kadarı Issuer öncesindeki sertifikaya karşılık gelir (Entity sertifikası hariç).
    • Subject ve Issuer kök sertifika için aynıdır.

    Zincirdeki sertifikalar bu yönergelere uygunsa sertifika zincirinin tam ve geçerli olduğu kabul edilir.

    Örnek sertifika zinciri doğrulaması

    Aşağıdaki örnekte, üç sertifika içeren örnek bir sertifika zinciri için OpenSSL komutlarının çıkışı gösterilmektedir:

    Varlık sertifikası

    openssl x509 -text -in entity.pem | grep -E '(Subject|Issuer):'
    
    Issuer: C = US, O = Google Trust Services, CN = GTS CA 1O1
    Subject: C = US, ST = California, L = Mountain View, O = Google LLC, CN = *.enterprise.apigee.com
            

    Orta seviye sertifika

    openssl x509 -text -in intermediate.pem  | grep -E '(Subject|Issuer):'
    
    Issuer: OU = GlobalSign Root CA - R2, O = GlobalSign, CN = GlobalSign
    Subject: C = US, O = Google Trust Services, CN = GTS CA 1O1
            

    Kök sertifika

    openssl x509 -text -in root.pem | grep -E '(Subject|Issuer):'
    
    Issuer: OU = GlobalSign Root CA - R2, O = GlobalSign, CN = GlobalSign
    Subject: OU = GlobalSign Root CA - R2, O = GlobalSign, CN = GlobalSign
            

    Yukarıda gösterilen örnekte aşağıdakilere dikkat edin:

    • Ara sertifikanın Subject öğesi, Issuer ile eşleşiyor olabilir.
    • Kök sertifikanın Subject değeri, sertifikanın Issuer değeri ile eşleşiyor ara sertifika.
    • Subject ve Issuer kök sertifikada aynı.

    Yukarıdaki örnekten, örnek sertifika zincirinin geçerli olduğunu onaylayabilirsiniz.

Sertifika konusunu ve sertifikayı verenin karmasını doğrulama

Bu bölümde, sertifikaların konusunun ve veren kişinin karmasının nasıl alınacağı ve geçerli bir sertifika zinciriniz olduğunu doğrulayın.

Sertifikaların karma sırasını doğrulamak her zaman iyi bir uygulamadır. Sertifikanın Ortak Adı (CN)'da istenmeyen alan bulunması veya kullanabilirsiniz.

  1. Aşağıdaki OpenSSL komutunu çalıştırarak her öğe için hash sırasını alın ve bu sertifikanın entity - root zincirinde geçerli olduğunu doğrulayın ve oluşturun.
  2. openssl x509 -hash -issuer_hash -noout -in certificate
        

    Burada certificate, sertifikanın adıdır.

  3. Zincirdeki sertifikaların aşağıdaki yönergelere uyduğunu doğrulayın:
    • Her sertifikanın Subject kadarı, önceki sertifikanın Issuer ile eşleşiyor sertifika ekleyin (Entity sertifikası hariç).
    • Subject ve Issuer kök sertifika için aynıdır.

    Zincirdeki sertifikalar bu yönergelere uygunsa sertifika zinciri kabul edilir.

    Karma oluşturma sırasında örnek sertifika zinciri doğrulaması

    Aşağıdaki örnekte, örnek bir sertifika zinciri için OpenSSL komutlarının çıkışı gösterilmektedir üç sertifika içerir:

    openssl x509 -in entity.pem -hash -issuer_hash -noout
    c54c66ba #this is subject hash
    99bdd351 #this is issuer hash
        
    openssl x509 -in intermediate.pem -hash -issuer_hash -noout
    99bdd351
    4a6481c9
        
    openssl x509 -in root.pem -hash -issuer_hash -noout
    4a6481c9
    4a6481c9
        

    Yukarıda gösterilen örnekte aşağıdakilere dikkat edin:

    • Ara sertifikanın subject hash değeri, varlığın issuer hash değeriyle eşleşiyor sertifikası.
    • Kök sertifikanın subject hash öğesi, sertifikayı verenin sertifikasının issuer hash değeri ile eşleşiyor.
    • subject ve issuer hash kök sertifikada aynı.

    Yukarıdaki örnekten, örnek sertifika zincirinin geçerli olduğunu onaylayabilirsiniz.

Sertifika geçerlilik süresini doğrulama

Bu bölümde, zincirdeki tüm sertifikaların doğrulanıp doğrulanmadığının nasıl doğrulanacağı açıklanmaktadır. , aşağıdaki yöntemler kullanılarak süresi doldu:

  • Sertifikanın başlangıç ve bitiş tarihini öğrenin.
  • Geçerlilik bitiş durumunu öğrenin.

Başlangıç ve bitiş tarihi

Her sertifikanın başlangıç ve bitiş tarihini almak için aşağıdaki OpenSSL komutunu çalıştırın entity ile root arasındaki zincirde yürürlükte olduğundan (başlangıç tarihi bugünden öncedir) ve süresi dolmamış olmalıdır.

Başlangıç ve bitiş tarihleriyle örnek sertifika geçerlilik süresi doğrulaması

openssl x509 -startdate -enddate -noout -in entity.pem
notBefore=Feb  6 21:57:21 2020 GMT
notAfter=Feb  4 21:57:21 2021 GMT
openssl x509 -startdate -enddate -noout -in intermediate.pem
notBefore=Jun 15 00:00:42 2017 GMT
notAfter=Dec 15 00:00:42 2021 GMT
openssl x509 -startdate -enddate -noout -in root.pem
notBefore=Apr 13 10:00:00 2011 GMT
notAfter=Apr 13 10:00:00 2022 GMT

Geçerliliğin sona erme durumu

Sertifikanın süresinin sona erip ermediğini kontrol etmek için aşağıdaki OpenSSL komutunu çalıştırın önümüzdeki N seconds içinde süresi dolacak. Bu, geçerli sistem tarihi bağlamında kullanmanız gerekir.

openssl x509 -checkend <N Seconds> -noout -in certificate

Burada certificate, sertifikanın adıdır.

Kontrol sonu seçeneğiyle örnek sertifika geçerlilik süresi doğrulaması

Aşağıdaki komut, sertifikanın mevcut olup olmadığını kontrol etmek için 0 seconds öğesini kullanır süresi dolmuş veya

openssl x509 -checkend 0 -noout -in entity.pem
Certificate will not expire
openssl x509 -checkend 0 -noout -in intermediate.pem
Certificate will not expire
openssl x509 -checkend 0 -noout -in root.pem
Certificate will not expire

Bu örnekteki mesajda Certificate will not expire, sertifikanın süresi henüz sona ermedi.