#author("2022-11-23T09:42:12+00:00","default:wikiadmin","wikiadmin")
-無償のSSL証明書。自動で更新できるツール付きで驚くほど簡単に導入可能
-ACME(Automatic Certificate Management Environment)というRFCプロトコルに準拠したcertbotが使えるようになったのでほぼ自動化可能
-まずは個別証明書で2020/07の更新を乗り切る。

*参考情報 [#lf95051f]

https://qiita.com/Esfahan/items/9f11b38668239d1b52c5

*クライアントツール certbot [#k7f9ee55]

https://qiita.com/ariaki/items/5680cb6da6223844af4e

EPELパッケージがあれば一発でインストール可能

yum install python2-certbot-apache.noarch

「sudo yum reinstall python-urllib3
sudo yum reinstall python-requests」のエラーが出たのでurllib3とrequestを入れ直した。

**コマンド [#rd9e2789]
 sudo pip uninstall requests
 sudo pip uninstall urllib3
 sudo yum remove python-urllib3
 sudo yum remove python-requests

certbot certonly --webroot -w /var/www/vhosts/wiki -d wiki.rutake.com
しかし今度はaws cli が動かなくなった。yumのパッケージが2.7向けで古いのが原因。


**AWS-CLIを仮想環境に入れる [#q8385810]

 python3 -m venv ~/awscli-v2
 curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
 ./aws/install   --install-dir ~/awscli-v2/aws-cli   --bin-dir ~/awscli-v2/bin
 source ~/awscli-v2/bin/activate

**根本対応はpython3でpipで入れる [#n3d0db5b]

 python3 -m venv ~/certbot-python3
 cd certbot-python3/
 source bin/activate
 pip3 install certbot
 pip3 install --upgrade pip
 pip3 install awscli
 certbot renew

*証明書発行 [#i6d946f8]

初回はインタラクティブにメールアドレスの登録などがある。

 certbot certonly --webroot -w /var/www/www.mywebsite.jp/ -d www.mywebsite.jp

*バックアップ&リストア [#v5f87831]

-3か月運用してなぜか証明書受け継がれている
-/etc/letsencrypt以下をバックアップしてリストアすればよい。

*ドメイン追加 [#f76a477c]

 The requested apache plugin does not appear to be installed

*証明書インストール [#z29b113e]

**Apache運用中のときに証明書発行するコマンド [#rd9e2789]

一度にやろうとしたら失敗したので1ドメインごとに取得、最初だけメールアドレスやら規約同意やら。

 certbot certonly --webroot -w DOCUMENT_ROOT -d YOUR_DOMAIN


1回目失敗。2回目成功なぜ?/etc/letsencrypt/live/[ドメイン名]/に証明書が作成される

Let's Encryptからアクセスされるので空のVirtualHost作ってからやるのが良い。

 <VirtualHost *:80>
        DocumentRoot /var/www/html
        ServerName node.rutake.com
 </VirtualHost>

 certbot certonly --webroot -w /var/www/html/ -d node.rutake.com




**作成された証明書 [#ff85339c]

|SSLCertificateFile|/etc/letsencrypt/live/wiki.rutake.com|
|SSLCACertificateFile|/etc/letsencrypt/live/wiki.rutake.com|
|SSLCertificateKeyFile|/etc/letsencrypt/live/wiki.rutake.com/privkey.pem|


*ワイルドカード証明書 [#i7b0715a]


https://qiita.com/chamaharun/items/566c78bb8a13b4c2bc16

*認証方式 [#mdbb32e2]

-HTTP/HTTPS(.well-known/の下に認証ファイルを配置する。RapidSSLと同じ方式)
-DNS方式(アクセス権限をかけているWebサーバーに対して有効)

**HTTP-01 [#wbeaf8e6]

Let's encryptで取得したトークンを指定のディレクトリ以下に配置する。一番楽かな

 http://example.com/.well-known/acme-challenge/(取得したトークン)

**DNS方式 [#od9cc631]

DNS-01 Challengeという方式。_acme-challenge.目的ドメインのTXTレコードにトークンを設定する。WEBサーバーが不要なので、ロードバランスしているとかHTTP-01がやりづらいときの選択肢


***txtレコード追加 [#b520b717]

 dig -t txt _acme-challenge.rutake.com

dig txt rutake.com

https://www.xmisao.com/2016/04/18/get-free-certification-by-letsencrypt-dns-01-authentication.html

**ACMEv2方式 [#w0015528]

_acme-challenge.yourdomain.comのTXTレコードに認証情報を設定する。

https://qiita.com/binzume/items/698d12779b8ad5cda423
https://narusejun.com/archives/23/

*value domain対応 [#q8ddeb7f]

txtレコードの動的編集ができないようなので、別のDNSに向ける

 a tmpdns 別のDNSIP
 ns _acme-challenge tmpdns.rutake.com.

*cloudfrare [#b6307a2e]

https://blog.cles.jp/item/10130


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS