Έχω δημιουργήσει ένα αυτο-υπογεγραμμένο πιστοποιητικό SSL για το CN localhost. Ο Firefox αποδέχεται αυτό το πιστοποιητικό αφού αρχικά παραπονέθηκε γι' αυτό, όπως αναμενόταν. Ο Chrome και ο IE, ωστόσο, αρνούνται να το δεχτούν, ακόμη και μετά την προσθήκη του πιστοποιητικού στο χώρο αποθήκευσης πιστοποιητικών του συστήματος στην ενότητα Trusted Roots. Παρόλο που το πιστοποιητικό αναφέρεται ως σωστά εγκατεστημένο όταν κάνω κλικ στο "View certificate information" στο αναδυόμενο παράθυρο HTTPS του Chrome'εξακολουθεί να επιμένει ότι το πιστοποιητικό δεν μπορεί να είναι αξιόπιστο.
Τι πρέπει να κάνω για να κάνω το Chrome να αποδεχτεί το πιστοποιητικό και να σταματήσει να διαμαρτύρεται γι' αυτό;
Στον Mac, μπορείτε να χρησιμοποιήσετε το βοηθητικό πρόγραμμα Πρόσβαση στην κλειδοθήκη για να προσθέσετε το αυτο-υπογεγραμμένο πιστοποιητικό στην κλειδοθήκη του συστήματος και το Chrome θα το αποδεχτεί. Βρήκα τις οδηγίες βήμα προς βήμα εδώ:
Google Chrome, Mac OS X και αυτο-υπογεγραμμένα πιστοποιητικά SSL.
Βασικά:
Βασικά:
Τώρα, η ακόλουθη εντολή θα προσθέσει το πιστοποιητικό (όπου YOUR_FILE είναι το εξαγόμενο αρχείο σας):
certutil -d sql:$HOME/.pki/nssdb -A -t "P,," -n YOUR_FILE -i YOUR_FILE
Για να εμφανίσετε όλα τα πιστοποιητικά σας, εκτελέστε την ακόλουθη εντολή:
certutil -d sql:$HOME/.pki/nssdb -L
Εάν εξακολουθεί να μην λειτουργεί, μπορεί να έχετε επηρεαστεί από αυτό το σφάλμα: Issue 55050: Ubuntu SSL error 8179
Υ.Γ. Βεβαιωθείτε επίσης ότι έχετε libnss3-tools
, πριν μπορέσετε να χρησιμοποιήσετε τις παραπάνω εντολές.
Αν δεν το έχετε, παρακαλούμε εγκαταστήστε το από:
sudo apt-get install libnss3-tools # on Ubuntu
sudo yum install nss-tools # on Fedora, Red Hat, etc.
Ως μπόνους, μπορείτε να χρησιμοποιήσετε τα ακόλουθα εύχρηστα σενάρια:
$ cat add_cert.sh
certutil -d sql:$HOME/.pki/nssdb -A -t "P,," -n $1 -i $1
$ cat list_cert.sh
certutil -d sql:$HOME/.pki/nssdb -L # add '-h all' to see all built-in certs
$ cat download_cert.sh
echo QUIT | openssl s_client -connect $1:443 | sed -ne '/BEGIN CERT/,/END CERT/p'
Χρήση:
add_cert.sh [FILE]
list_cert.sh
download_cert.sh [DOMAIN]
Εκτελέστε το Chrome με την παράμετρο --auto-ssl-client-auth
google-chrome --auto-ssl-client-auth</code>,
Είστε βέβαιοι ότι η διεύθυνση που εμφανίζεται ο ιστότοπος είναι η ίδια με το πιστοποιητικό; Είχα τα ίδια προβλήματα με τον Chrome και ένα αυτο-υπογεγραμμένο πιστοποιητικό, αλλά στο τέλος διαπίστωσα ότι ήταν απλά απίστευτα επιλεκτικός σχετικά με την επικύρωση του ονόματος τομέα στο πιστοποιητικό (όπως θα έπρεπε να είναι).
Το Chrome δεν έχει δικό του cert store και χρησιμοποιεί το δικό του Window. Ωστόσο, το Chrome δεν παρέχει κανέναν τρόπο εισαγωγής πιστοποιητικών στο κατάστημα, οπότε θα πρέπει να τα προσθέσετε μέσω του IE.
Εγκατάσταση πιστοποιητικών στο Google Chrome
Εγκατάσταση πιστοποιητικών στον Internet Explorer
Ρίξτε επίσης μια ματιά σε αυτό για μερικές διαφορετικές προσεγγίσεις για τη δημιουργία αυτο-υπογεγραμμένων πιστοποιητικών (υποθέτω ότι χρησιμοποιείτε το IIS, καθώς δεν το έχετε αναφέρει).
Πώς να δημιουργήσετε ένα αυτο-υπογεγραμμένο πιστοποιητικό στο IIS 7[4]