2024年版 https:// 自己証明書の作成方法
カテゴリー: レンタルサーバーやcgi
2024-04-20
タイトル
太字を変更すればそのまま使えると思います。
IPアドレスは範囲指定はできないので一個ずつ指定します。
大量に指定する場合は、スクリプト等でテキスト形式で事前に準備したほうがいいと思います
細かい調整が必要な場合は、-subj に追加します.
/O=組織名
期限を表示
Not After : Dec 30 11:00:19 2099 GMT
現在は、有料オプションの場合は398日以上設定できないようになっているそうです。
自己証明書もそのうち制限が入る可能性があります。
DNS、IPなど変更になる可能性があると思うのであまり長くはしないほうがいいと思います。
執筆:2024.04.20
編集:2024.04.20
編集:2024.04.20
自己証明書を作成するコマンド
openssl req -newkey rsa:4096 \
-x509 \
-sha256 \
-days 365 \
-nodes \
-out server.crt \
-keyout server.key \
-subj "/C=JP/CN=localhost" \
-addext "subjectAltName = DNS:localhost,DNS:*.internal,IP:192.168.1.1,IP:192.168.1.2"
-x509 \
-sha256 \
-days 365 \
-nodes \
-out server.crt \
-keyout server.key \
-subj "/C=JP/CN=localhost" \
-addext "subjectAltName = DNS:localhost,DNS:*.internal,IP:192.168.1.1,IP:192.168.1.2"
太字を変更すればそのまま使えると思います。
IPアドレスは範囲指定はできないので一個ずつ指定します。
大量に指定する場合は、スクリプト等でテキスト形式で事前に準備したほうがいいと思います
細かい調整が必要な場合は、-subj に追加します.
/O=組織名
IPLIST=$(for i in {0..29}; do echo -n "IP:192.168.1.$i,"; done | sed 's/,$//')
IPLIST=$IPLIST,$(for i in {1..1}; do echo -n "IP:127.0.0.$i,"; done | sed 's/,$//')
#IPLIST=$IPLIST,IP:[::1]
...
#EXPIREDATE=2099-12-31
EXPIREDATE=$(date -d "1 years - 1days" '+%Y-%m-%d')
PARAM_DAYS=$(( ( $(date -d $EXPIREDATE +%s) - $(date +%s) ) / 86400 +1 ))
#PARAM_DAYS=365
openssl req -newkey rsa:4096 \
-x509 \
-sha256 \
-days $PARAM_DAYS \
-nodes \
-out server.crt \
-keyout server.key \
-subj "/C=JP/O=組織名/CN=localhost" \
-addext "subjectAltName = DNS:localhost,DNS:*.internal,$IPLIST"
IPLIST=$IPLIST,$(for i in {1..1}; do echo -n "IP:127.0.0.$i,"; done | sed 's/,$//')
#IPLIST=$IPLIST,IP:[::1]
...
#EXPIREDATE=2099-12-31
EXPIREDATE=$(date -d "1 years - 1days" '+%Y-%m-%d')
PARAM_DAYS=$(( ( $(date -d $EXPIREDATE +%s) - $(date +%s) ) / 86400 +1 ))
#PARAM_DAYS=365
openssl req -newkey rsa:4096 \
-x509 \
-sha256 \
-days $PARAM_DAYS \
-nodes \
-out server.crt \
-keyout server.key \
-subj "/C=JP/O=組織名/CN=localhost" \
-addext "subjectAltName = DNS:localhost,DNS:*.internal,$IPLIST"
期限を表示
openssl x509 -text -noout -in server.crt | grep GMT
Not After : Dec 30 11:00:19 2099 GMT
openssl x509 -text -noout -in server.crt | grep GMT | xargs -l echo > 証明書有効期限.txt
cat 証明書有効期限.txt | grep After | grep -Po ": .+$" | grep -Po "[^: ].+$" | tr -d "[\r\n]" > 証明書有効期限終了日時.txt
cat 証明書有効期限.txt
cat 証明書有効期限.txt | grep After | grep -Po ": .+$" | grep -Po "[^: ].+$" | tr -d "[\r\n]" > 証明書有効期限終了日時.txt
cat 証明書有効期限.txt
現在は、有料オプションの場合は398日以上設定できないようになっているそうです。
自己証明書もそのうち制限が入る可能性があります。
DNS、IPなど変更になる可能性があると思うのであまり長くはしないほうがいいと思います。