私はリモートサーバーのSSL証明書をダウンロードする必要があります(HTTPSではありませんが、SSLのハンドシェイクは、Google Chrome / IE / wgetとcurlはすべての証明書チェックの失敗エラーを与えるのと同じでなければなりません)と、私は私のIT担当者が私にCA証明書を与えるために取得することができないので、私のラップトップのWindowsの証明書ストアで信頼されているように証明書を追加します
これは事務連絡用なので、実際のクライアントを使って証明書を取得することはできません
どうすればいいのかというと、私はWindows 7とLinuxの山を持っているので、どんなツール/スクリプト言語でも構いません
376 Kimvais 2010-01-18
OpenSSLにアクセスできる人は試してみてください
openssl s_client -connect {HOSTNAME}:{PORT} -showcerts
と {HOSTNAME} と {PORT} を任意の値に置き換えてください
361 gbroiles 2010-08-17
証明書をプルしてダウンロードする簡単な方法は、次のコマンドを実行して、-showcerts からの出力を x509 ssl コマンドにパイプして、余計なものをすべて削除することです。例えば、以下のようにします
openssl s_client -showcerts -connect server.edu:443 </dev/null 2>/dev/null|openssl x509 -outform PEM >mycertfile.pem
証明書を使うには、wgetで
wget https:/server.edu:443/somepage --ca-certificate=mycertfile.pem
291 elec3647 2013-09-05
正直言って、今まで試したことがない(必要ない)のですが、Firefoxで試してみたところ、保存には問題ないようです
- 上部のSSL証明書のアイコンをクリック / 下部の南京錠をクリックします
View Certificate
をクリックDetails
タブをクリックします- 階層の中から、どの証明書が欲しいかを選択します
- Click
Export
130 William Hilsum 2010-01-18
Chromeブラウザを使って証明書をエクスポートする
- SSL(https://whatever)で接続します
2.ロックシンボルをクリックして、詳細をクリックします
Chrome バージョン 56 以降では、次のようにしてください: スリードットメニュー -> その他のツール -> 開発者ツールに移動し、セキュリティタブをクリックします。これにより、証明書の表示ボタン付きのセキュリティ概要が表示されます
証明書の表示」ボタンをクリックします
モーダルウィンドウが開きます。2つのペインがあります。一番上にはサイトの証明書 (最後にリストされたもの)、中間証明書、ルート証明書 (一番上のもの) のトラスト階層が表示されます
2つ目の大きなペインには、証明書の1つの詳細が表示されています
中間証明書は0個以上あるかもしれません
ルート証明書のアイコンは金色の縁取りがされていることに注意してください。他の証明書には青の縁取りがあります
下のスクリーンショットをご覧ください
証明書をエクスポートするには
- まず、信頼階層で証明書のアイコンをクリックします
- 証明書はモーダルのメイン部分に表示されます
- モーダルのメイン部分にある証明書の大きなアイコンをクリックします。アイコンをデスクトップにドラッグします。すると、Chrome が証明書をデスクトップにコピーします
55 Larry K 2016-12-26
これは gbroiles さんの回答ですが、私が指摘したかったのは cURL プロジェクト リモートサーバの SSL 証明書を保存するために openssl
を使用することについて、もう少し詳細を記したページがあるということです
openssl s_client -connect {HOSTNAME}:{PORT} | tee logfile
QUIT
と入力し、Enter / Returnキーを押します- BEGIN CERTIFICATE」と「END CERTIFICATE」マーカーの間に記載されます
証明書のデータを見たい場合は
openssl x509 -inform PEM -in certfile -text -out certdata
ここで、
certfile
はlogfile
から抽出した証明書です。certdata
を見てください
20 Daniel Trebbien 2012-10-18
automated
サーバ上のバーチャルホストから正しい証明書を取得するためには、-servernameが必要でした
openssl s_client -showcerts -connect host.name.com:443 -servername host.name.com </dev/null | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > host.name.com.pem
デスクトップ用の証明書に変換することもできます
openssl x509 -inform PEM -in host.name.com.pem -outform DER -out host.name.com.cer
最後の部分は、私が使用したMacのキーチェーンのためのWindows上で確認していない、あなたの証明書に追加することですが、似ている必要があります
sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain host.name.com.cer
16 Artistan 2018-01-25
これにより、証明書のみを含む結果が得られます
echo QUIT | \
openssl s_client -showcerts -connect hostname:port | \
awk '/-----BEGIN CERTIFICATE-----/ {p=1}; p; /-----END CERTIFICATE-----/ {p=0}' "
2 Archimedes Trajano 2017-05-23
Windows上であれば、はるかに簡単な方法を発見しました。Microsoft Edge (pre-chromium) を試してみて、アドレスバーのロックをクリックすると -> 証明書ダイアログがポップアップして「ファイルにエクスポート」ボタンが表示され、それを .crt ファイルとして保存します
エッジはあまり使わないけど、これは楽勝だったよ
0 Dale Wilbanks 2019-05-03