ローカル開発用の自己署名SSL証明書を作成しました。ページにアクセスすると、NET::ERR_CERT_AUTHORITY_INVALID
エラーが発生します。しかし、Chrome( chrome:// settings/certificates )にインポートしようとすると失敗します。
ファイルには、インポートされなかった証明書が1つ含まれています。
- mylocalwebapp.dev:証明機関ではありません
これは、証明書を作成するために実行したコマンドです。
openssl req -new -x509 -nodes \
-extensions SAN \
-reqexts SAN \
-days 365 \
-newkey rsa:2048 \
-keyout /etc/ssl/private/Apache-selfsigned.key \
-out /etc/ssl/certs/Apache-selfsigned.crt \
-config <(cat /etc/ssl/openssl.cnf <(printf '[SAN]\nsubjectAltName=DNS:mylocalwebapp.dev'))
バージョン58の時点で、Chromeはそれを受け付けないため、SANオプションを追加しました SANなし 。 Chrome 57で動作し、Firefoxでも動作します。
Ubuntu 17.04のChrome 58で自己署名証明書を機能させるにはどうすればよいですか?
私たちが拠点をカバーしていることを確認するために...ここで概説したプロセスを試しましたか? https://stackoverflow.com/questions/7580508/getting-chrome-to-accept-self-signed-localhost-certificate
以前は機能していましたが、今朝、Chrome 58.0.3029.81に更新した後、以前は機能していた自己署名証明書のコンソールに次のエラーが表示されますUbuntu 16.04:
Certificate Error
There are issues with the site's certificate chain (net::ERR_CERT_AUTHORITY_INVALID).
編集:
上で参照したリンクのメソッドの1つで成功しました。 Chrome Chromeで何かが変更されたようで、正しく機能しなくなったためです。
OpenSSLクライアントを使用して証明書をダンプするには(おそらく必要ではありませんが、徹底したい場合に備えて):
$ echo QUIT | openssl s_client -connect $DOMAIN_TO_FETCH_FROM:443 | sed -ne '/BEGIN CERT/,/END CERT/p' > my-cert
certutil
を使用して、ダンプされた証明書をインストールするには。 opensslで証明書をダンプしなかった場合は、my-cert
を適切なファイル名に置き換えます。
$ certutil -d sql:$HOME/.pki/nssdb -A -t "P,," -n my-cert -i my-cert
certutil
を使用して証明書のインストールを確認します(必要に応じて):
$ certutil -d sql:$HOME/.pki/nssdb -L
# Certificate Nickname Trust Attributes
# SSL,S/MIME,JAR/XPI
#
# my-cert P,,
Chromeを完全に閉じて再起動すると、おそらく成功するでしょう。 58ベータ版と59ベータ版の両方で私のために働きました。