chromeでも利用可能なオレオレ証明書をワンライナーで作成する

システム開発部の @nukisashineko (ぬさし) です。

オレオレ証明書の作成が年々面倒になってたりします。
特に chrome は厳しくて、chromeでも利用できるオレオレ証明書をワン・コマンドで作成できる方法はなかなかありません。

今回は、chrome でも 利用可能なオレオレ証明書をサクッと作成できる方法が判明しました。 コマンドについて共有させていただこうと思います。

作成コマンド

mkdir -p certs && cd certs

# 作りたいオレオレ証明書のドメイン
export MY_DOMAIN=xxxx.examle.com 

# Key Access で表示される 表示名
export MY_CA_NAME=xxxx-example-com-ca

# オレオレ証明書を作成 ( ※ 期限は 1 年)
mkdir -p ${MY_DOMAIN}/certs && \
    docker run --rm -it \
        --name certs \
        -v $(pwd)/${MY_DOMAIN}/certs:/certs \
        -e SSL_SUBJECT=${MY_DOMAIN} \
        -e SSL_DNS=${MY_DOMAIN} \
        -e CA_EXPIRE=365 \
        -e SSL_EXPIRE=365 \
        -e CA_SUBJECT=${MY_CA_NAME} \
        stakater/ssl-certs-generator:1.0
  • stakater/ssl-certs-generator:1.0 を利用するのが肝です
    • 有名な paulczar/omgwtfssl は 最新のchrome に対応してません。

作成されたファイルの確認

tree .
.
└── xxxx.examle.com
    └── certs
        ├── ca-key.pem
        ├── ca.pem
        ├── ca.srl
        ├── cert.pem
        ├── key.csr
        ├── key.pem
        └── openssl.cnf

オレオレ証明書を keychain accessコマンドラインから追加

sudo security add-trusted-cert -d \
  -r trustRoot \
  -k /Library/Keychains/System.keychain \
  ./xxxx.examle.com/certs/ca.pem

keychain access を確認

f:id:hibikiosawa4388:20220124151512j:plain
keychain_access_only_example_com

参考資料