- 追加された行はこの色です。
- 削除された行はこの色です。
#author("2020-03-05T08:54:58+00:00","default:admin","admin")
#author("2020-03-06T00:45:19+00:00","default:admin","admin")
-[[SSL/TLSについてまとめ2018:https://qiita.com/Brutus/items/1015cc01d2e1eb82a526]]
-[[HTTPS入門:https://rms.ne.jp/Introduction_to_https/]]
-[[常時SSL化のする為の資料:https://qiita.com/nightyknite/items/36cc1d4d067def437e04]]
*基礎知識 [#m2747c7b]
-[[SSLの基本を押さえる:https://thinkit.co.jp/free/article/0706/3/6/]]
-SSLは共通鍵暗号方式と公開鍵暗号方式の両方を使用する
-公開鍵暗号方式は、データ授受に用いる共通鍵のやり取りのみに用いられる
-送信データは共通鍵にて暗号化される
* [[OpenSSL:http://www.openssl.org/]] [#daaf2922]
-1.0.0 が出ているが、Apacheのconfigure時にエラーが出たりトラブルに遭遇するので、まだ使わない方が良い
** インストール [#i723f2cb]
# ./config shared -fPIC
# make
# make test
# make install
-上記は64bit版Linuxの場合
-sharedはシェアードライブラリ(共有ライブラリ)を作るという指定
**プログラミング [#ta3fa6c3]
-[[SSL/TLS でアクセスしてみよう (1):http://x68000.q-e-d.net/~68user/net/ssl-1.html]]
-[[SSL/TLS でアクセスしてみよう (2):http://x68000.q-e-d.net/~68user/net/ssl-2.html]]
*動作検証 [#f3494479]
**OpenSSL [#fd2893e8]
-[[openssl コマンドで SSL/TLS バージョンを指定した HTTPS 接続テストを実施する:http://sig9.hatenablog.com/entry/2016/07/03/230000]]
**wget [#y57a0506]
* 証明書 [#ee254476]
-[[無料 SSL 証明書 StartSSL を使う:http://futuremix.org/2009/02/startssl]]
-[[秘密鍵とCSRの確認:http://ameblo.jp/itboy/entry-10339290260.html]] ... ページの中ほど
-[[マルチクラウド環境におけるサーバ証明書の運用 Let's Encrypt/AWS/Azure:https://qiita.com/Brutus/items/911beead0440d35b8063]]
**root証明書 [#v016daf3]
-[[DigiCertのroot証明書、中間証明書 ダウンロード:https://rms.ne.jp/sslserver/basis/digicert-root-certificates/]]
-[[CA certificates extracted from Mozilla:https://curl.haxx.se/docs/caextract.html]]
-[[GeoTrust Root Certificates:https://www.geotrust.com/resources/root-certificates/index.html]]
-[[DST Root CA X3 - IdenTrust:https://www.identrust.com/dst-root-ca-x3]] ... Let's Encryptを使うならこのRoot証明書を使用する
*[[Let's Encrypt:https://letsencrypt.org/ja/]] [#t19cc79e]
-[[Let's Encrypt 総合ポータル:https://letsencrypt.jp/]] ... 非公式解説サイト
-[[Let's Encrypt ユーザーガイド:https://free-ssl.jp/docs/using.html]]
-[[無料SSL証明書のLet's Encryptとは?:https://ssl.sakura.ad.jp/column/letsencrypt/]]
-[[Let's Encrypt の証明書をブラウザ上で簡単取得 (dns-01 / ECDSA もあるよ):https://qiita.com/tappie/items/76881fdf7996c57a105a]]
**Root証明書 [#bc5637e2]
-[[Chain of Trust:https://letsencrypt.org/ja/certificates/]]
-[[DST Root CA X3 - IdenTrust:https://www.identrust.com/dst-root-ca-x3]] ... Let's Encryptを使うならこのRoot証明書を使用する
-[[無料SSL認証サービス「Let’s Encrypt」のルート証明書が全ての端末で信頼されるまで5年はかかりそう:https://gigazine.net/news/20180807-lets-encrypt-root-torasuted/]]
-Let's Encryptでもルート証明書を発行しているが、現段階では多くのルート証明書ストアに採用されていない
--Let's Encryptのルート証明書「ISRG Root X1」は、モダンなブラウザやOSでは既に利用可能となっており、今後は(Iden Trustから)独自のルート証明書へ移行していくことが発表されている
--しかし、古いOSやスマートフォンなどには、このルート証明書が搭載されていないため、現在はIden Trustというルート認証局が運用する「[[DST Root CA X3:https://www.identrust.com/dst-root-ca-x3]]」というルート証明書でクロス署名された中間証明書を利用している
--Iden TrustはISRGのスポンサーでもある
**Windows [#c28f54ca]
-[[IISでhttpsのサイトを作成する - SSLサイトの構成 (Windows Server Tips):https://www.ipentec.com/document/windows-windows-server-iis-setup-https-site]]
-[[win-acme を利用してIISでLet's Encrypt を利用したSSLサイトを作成する (Windows Server Tips):https://www.ipentec.com/document/software-iis-ssl-certificate-using-win-acme]]
-[[IISでLet's Encrypt を利用してSSLサイトを構築する (letsencrypt-win-simple クライアントを利用) (Windows Server 操作方法 Tips):https://www.ipentec.com/document/software-iis-ssl-certificate-using-lets-encrypt]]
-[[Let’s EncryptでIIS上にSSLサイトを導入する方法:https://webbibouroku.com/Blog/Article/letsencrypt-setting]]
-[[独自ドメインでDDNS運用するWindows Server 2016 EssentialsのSSL/TLS証明書をLet’s Encryptで無料取得/自動更新するように構成した:https://satsumahomeserver.com/blog/299605]]
-[[制限と仕様からLet's Encrypt(ACMEv1)の話:https://qiita.com/sawanoboly/items/8e3c57aa2e30fc58c4e3]]
**ASP.NET Coreの場合 [#bd174033]
-[[Configuring LetsEncrypt for ASP.NET Core and IIS:https://weblog.west-wind.com/posts/2017/Sep/09/Configuring-LetsEncrypt-for-ASPNET-Core-and-IIS]]
-[[Using Let’s encrypt with ASP.NET Core:https://www.softfluent.com/blog/dev/Using-Let-s-encrypt-with-ASP-NET-Core]]
-【DocumentRoot】/web.config の以下の部分をコメントアウトする
<system.webServer>
<!--
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
</handlers>
-->
-【DocumentRoot】/.well-known/acme-challenge/web.config を配置
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<httpRedirect enabled="false" />
<validation validateIntegratedModeConfiguration="false" />
<staticContent>
<clear />
<mimeMap fileExtension="." mimeType="text/json" />
<mimeMap fileExtension=".*" mimeType="text/json" />
</staticContent>
</system.webServer>
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</configuration>
-設定が完了したら【DocumentRoot?】/web.config のコメントアウトを解除する
***エラー対応 [#n3a9bd2c]
-[[Let’s Encrypt Timeoutエラー:https://tulist.club/technology/ssl/2017/10/09/95]]
-[[Acme server reported status 400 (on renewal)?:https://github.com/Lone-Coder/letsencrypt-win-simple/issues/560]]
*ACME [#yed86370]
-[[Automated Certificate Management Environment - Wikipedia:https://ja.wikipedia.org/wiki/Automated_Certificate_Management_Environment]]
-[[Let's Encrypt を支える ACME プロトコル:http://jxck.hatenablog.com/entry/letsencrypt-acme]]
*自己署名入り証明書 [#n662365a]
-[[IIS で SSL/TLS を 自己署名入り証明書 で 設定 する方法:https://garafu.blogspot.com/2014/03/iis-ssltls.html]]
*負荷 [#n554fca9]
-[[HTTPSのコスト:https://rms.ne.jp/Introduction_to_https/sni.html]]