Protokol SSL memang memiliki kode peringatan ketika CA tidak dikenal ... Anda bisa mendeteksinya menggunakan sesuatu seperti tshark saya kira.
tetapi yang lebih bermanfaat adalah mengetahui bagaimana cara menghindari masalah. Di Apache, pastikan Anda memiliki TIGA arahan berikut:
SSLCertificateFile /etc/pki/tls/certs/myserver.cert
SSLCertificateKeyFile /etc/pki/tls/private/myserver.key
SSLCertificateChainFile /etc/pki/tls/certs/myserver.ca-bundle
Ekstensi yang diberikan ke nama file tidak terlalu penting bagi Apache. Dalam hal ini, SSLCertificateFile akan menjadi sertifikat X.509 tunggal dengan Subjek server, dan SSLCertificateChainFile akan menjadi gabungan dari sertifikat CA Menengah dan Root (mulai dengan root terlebih dahulu).
Berikut ini adalah skrip yang berguna untuk membantu mengeksplorasi rantai sertifikat dalam pengkodean PEM.
#!/bin/bash
#
# For an input of concatenated PEM ("rfc style") certificates, and a
# command-line consisting of a command to run, run the command over each PEM
# certificate in the file. Typically the command would be something like
# 'openssl x509 -subject -issuer'.
#
# Example:
#
# ssl-rfc-xargs openssl x509 -subject -issuer -validity -modulus -noout < mynewcert.pem
#
sed -e 's/^[ \t]*<ds:X509Certificate>\(.*\)$/-----BEGIN CERTIFICATE-----\n\1/' \
-e 's/^[ \t]*<\/ds:X509Certificate>[ \t]*$/-----END CERTIFICATE-----\n/' \
-e 's/^\(.*\)<\/ds:X509Certificate>[ \t]*$/\1\n-----END CERTIFICATE-----\n/' \
| gawk -vcommand="$*" '
/^-----BEGIN /,/^-----END / {
print |& command
}
/^-----END / {
while ((command |& getline results) > 0) {
print results
}
close(command)
}
'
(skrip khusus ini juga digunakan untuk aplikasi XML tertentu, yang dimaksudkan untuk mendukung bit sed awal; bit menarik dilakukan oleh gawk.)
Berikut ini adalah contoh bagaimana Anda dapat menggunakannya (seperti menentukan dalam sertifikat dalam bundel CA berada di urutan yang benar - kadang-kadang ini penting)
$ openssl s_client -connect google.com:443 -showcerts </dev/null 2>&1 | ssl-rfc-xargs openssl x509 -subject -issuer -noout
subject= /C=US/ST=California/L=Mountain View/O=Google Inc/CN=google.com
issuer= /C=US/O=Google Inc/CN=Google Internet Authority G2
subject= /C=US/O=Google Inc/CN=Google Internet Authority G2
issuer= /C=US/O=GeoTrust Inc./CN=GeoTrust Global CA
subject= /C=US/O=GeoTrust Inc./CN=GeoTrust Global CA
issuer= /C=US/O=Equifax/OU=Equifax Secure Certificate Authority
Perhatikan bagaimana penerbit satu sertifikat berdekatan dengan subjek induk [tepat di bawah]
Berikut adalah contoh lain tentang bagaimana Anda dapat menggunakan skrip itu, untuk memeriksa file lokal.
$ < /etc/pki/tls/certs/example.ca-bundle ssl-rfc-xargs openssl x509 -subject -issuer -noout