ローカル参照と公開済みの全モードを含む完全パッケージをインストールします。
install certcertシステムの OpenSSL コマンドに頼らず、TLS 診断と証明書準備の両方に
証明書が有効期間内でも、信頼やホスト名の検証に失敗することがあります。また秘密鍵と一致しない場合もあります。-v は信頼/名前、-m は証明書と鍵の組、-h -chain はリモートサーバーが実際に提示する証明書チェーンを確認します。
cert <operation> [args] [options]cert -h me [port]現在のホストの TLS 証明書を調べる
cert -h <host|url> [port]リモート TLS 証明書を調べる
cert -i <file> [-p <pass>]ローカル証明書、CSR、鍵、PKCS#12 バンドルを調べる
cert -v <cert> [-ca <file>] [-chain <file>] [-host <name>] [-client]有効期間、信頼、ホスト名を検証する
cert -m <cert> <key> [-p <pass>]証明書と秘密鍵が一致するか確認する
cert -key <out> [-rsa <bits>|-ec <curve>] [-p <pass>] [-f]秘密鍵を作成する
cert -csr <key> <out> <dn> [-san <list>] [-p <pass>] [-f]証明書署名要求を作成する
cert -self <key> <out> <dn> [-san <list>] [-p <pass>] [-f]自己署名証明書を作成する
cert -sign <csr> <ca> <key> <out> [-san <list>] [-p <pass>] [-f]CA 証明書で CSR に署名する
cert -der <cert> [out] [-f]PEM 証明書を DER に変換する
cert -pem <cert> [out] [-f]DER 証明書を PEM に変換する
cert -p12 <cert> <key> [out] [-p <pass>] [-kp <pass>] [-f]PKCS#12 バンドルを作成する
cert -p12 -r <bundle> [dir] [-p <pass>] [-f]PKCS#12 バンドルを抽出する
-j | -json-h、-i、-v、-m の結果を JSON で表示する
-t [seconds]リモート TLS に既定 5 秒または 1〜300 秒のタイムアウトを使う
-Tリモート TLS に 300 秒のタイムアウトを使う
-4 | -6リモート TLS で IPv4 または IPv6 を使う
-k未検証のリモート TLS 証明書を許可する
-chainリモート証明書チェーン全体を表示する
-sni <name>TLS SNI 名を上書きする
-ca <file>対応する操作で明示的な CA ファイルを使う
-host <name>一つのホスト名に対して証明書を検証する
-clientTLS クライアント用途として検証する
-p <pass>操作用パスワードを指定する
-f生成ファイルの置換を許可する
me は PHP から見える現在の HTTP ホストを表します。このターミナルを配信しているサイトの証明書を、ホスト名を再入力せずに調べるときに使います。
リモート証明書は既定で検証されます。秘密鍵ファイルは制限された権限で書き込まれます。-k は信頼問題と TLS 到達性を切り分ける診断にだけ使い、非表示入力が使える場合はパスワードを見える履歴へ書かないでください。
別のコマンドや API ワークフローで機械可読の証明書診断が必要な場合は、-h、-i、-v、-m と -j または -json を組み合わせます。
用意された例をページ上でそのまま実行できます。結果は事前に生成されてブラウザに表示され、サーバーではターミナルコマンドを実行しません。
現在の互換バージョンをインストールします。全機能は Base、縮小版は Minimum を選び、すでに導入済みのモジュール更新には upgrade を使います。
Base と Minimum は同じ現在のモジュールリリースの二つのパッケージです。
ローカル参照と公開済みの全モードを含む完全パッケージをインストールします。
install cert縮小パッケージをインストールします。ローカルリファレンスは含まれず、
install cert -mこの公開済みバージョンを正確に指定してインストールします。
install cert -v 1.2.4upgrade が互換性を確認し、必要な場合だけブロックを置換します。
upgrade certコアや他のモジュールに触れず拡張ブロックを削除します。
install cert -u例はコピーできますが、サイトは実行しません。実プロジェクトではパス、権限、破壊的オプションを確認してください。
cert -h meオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
Host example.test
IP 192.0.2.80
Port 443
Status verified
Time 14.8 ms
TLS TLSv1.3
Cipher TLS_AES_256_GCM_SHA384
Hostname valid (example.test)
Subject CN=example.test
Issuer CN=Training CA
Valid to 2027-10-31 00:00:00 UTCcert -h example.testオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
Host example.test
IP 192.0.2.80
Port 443
Status verified
Time 14.8 ms
TLS TLSv1.3
Cipher TLS_AES_256_GCM_SHA384
Hostname valid (example.test)
Subject CN=example.test
Issuer CN=Training CA
Valid to 2027-10-31 00:00:00 UTCcert -h example.test -t 5オフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
Host example.test
IP 192.0.2.80
Port 443
Status verified
Time 14.8 ms
TLS TLSv1.3
Cipher TLS_AES_256_GCM_SHA384
Hostname valid (example.test)
Subject CN=example.test
Issuer CN=Training CA
Valid to 2027-10-31 00:00:00 UTCcert -h example.test -Tオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
Host example.test
IP 192.0.2.80
Port 443
Status verified
Time 14.8 ms
TLS TLSv1.3
Cipher TLS_AES_256_GCM_SHA384
Hostname valid (example.test)
Subject CN=example.test
Issuer CN=Training CA
Valid to 2027-10-31 00:00:00 UTCcert -h example.test -4オフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
Host example.test
IP 192.0.2.80
Port 443
Status verified
Time 14.8 ms
TLS TLSv1.3
Cipher TLS_AES_256_GCM_SHA384
Hostname valid (example.test)
Subject CN=example.test
Issuer CN=Training CA
Valid to 2027-10-31 00:00:00 UTCcert -h example.test -6オフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
Host example.test
IP 2001:db8::80
Port 443
Status verified
Time 14.8 ms
TLS TLSv1.3
Cipher TLS_AES_256_GCM_SHA384
Hostname valid (example.test)
Subject CN=example.test
Issuer CN=Training CA
Valid to 2027-10-31 00:00:00 UTCcert -h example.test -chainオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
Host example.test
IP 192.0.2.80
Port 443
Status verified
Time 14.8 ms
TLS TLSv1.3
Cipher TLS_AES_256_GCM_SHA384
Hostname valid (example.test)
Subject CN=example.test
Issuer CN=Training CA
Valid to 2027-10-31 00:00:00 UTC
Chain 2 certificatescert -h example.test -sni www.example.testオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
Host example.test
SNI www.example.test
IP 192.0.2.80
Port 443
Status verified
Time 14.8 ms
TLS TLSv1.3
Cipher TLS_AES_256_GCM_SHA384
Hostname valid (www.example.test)
Subject CN=example.test
Issuer CN=Training CA
Valid to 2027-10-31 00:00:00 UTCcert -h example.test -kオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
Host example.test
IP 192.0.2.80
Port 443
Status unverified
Time 14.8 ms
TLS TLSv1.3
Cipher TLS_AES_256_GCM_SHA384
Hostname valid (example.test)
Subject CN=example.test
Issuer CN=Training CA
Valid to 2027-10-31 00:00:00 UTCcert -h example.test -jオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
{
"rows": [
{
"name": "Host",
"value": "example.test"
},
{
"name": "IP",
"value": "192.0.2.80"
},
{
"name": "Port",
"value": "443"
},
{
"name": "Status",
"value": "verified"
},
{
"name": "Time",
"value": "14.8 ms"
},
{
"name": "TLS",
"value": "TLSv1.3"
},
{
"name": "Cipher",
"value": "TLS_AES_256_GCM_SHA384"
},
{
"name": "Hostname",
"value": "valid (example.test)"
},
{
"name": "Subject",
"value": "CN=example.test"
},
{
"name": "Issuer",
"value": "CN=Training CA"
},
{
"name": "Valid to",
"value": "2027-10-31 00:00:00 UTC"
}
]
}cert -h example.test -o tmp/chain.pemオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
Host example.test
IP 192.0.2.80
Port 443
Status verified
Time 14.8 ms
TLS TLSv1.3
Cipher TLS_AES_256_GCM_SHA384
Hostname valid (example.test)
Subject CN=example.test
Issuer CN=Training CA
Valid to 2027-10-31 00:00:00 UTC
Saved sandbox/tmp/chain.pemcert -i certs/server.crtオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
File sandbox/certs/server.crt
Certificates 1
Certificate 1:
Subject CN=example.test, O=lil
Issuer CN=example.test, O=lil
Serial 01FAB2F36D62878EE1C3EF872CC4924ADAE7FACD
Valid from 2026-08-09 08:38:07 UTC
Valid to 2036-08-06 08:38:07 UTC
Validity valid, 3566 days remaining
SAN DNS:example.test, DNS:www.example.test
Key RSA
Key bits 2048
Signature RSA-SHA256
SHA256 FE:BE:96:6B:FD:A6:EA:E5:98:E1:66:7E:A3:32:72:7D:E3:DE:37:CC:D8:2F:64:63:76:73:26:C6:4B:F5:7D:CD
Constraints CA:FALSE
Key usage Digital Signature, Key Encipherment
Extended usage TLS Web Server Authentication
Subject key ID D6:14:0F:93:56:90:A8:E6:CC:3D:8C:D5:16:AE:EB:05:0C:07:8B:1D
Authority key ID D6:14:0F:93:56:90:A8:E6:CC:3D:8C:D5:16:AE:EB:05:0C:07:8B:1Dcert -i certs/server.csrオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
File sandbox/certs/server.csr
Type CSR
Subject CN=example.test, O=lil
Key RSA
Key bits 2048cert -i certs/server.keyオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
File sandbox/certs/server.key
Type private key
Key RSA
Key bits 2048cert -i certs/server.p12 -p demoオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
File sandbox/certs/server.p12
Type PKCS#12
Certificates 1
Private key yes
Certificate 1:
Subject CN=example.test, O=lil
Issuer CN=example.test, O=lil
Serial 01FAB2F36D62878EE1C3EF872CC4924ADAE7FACD
Valid from 2026-08-09 08:38:07 UTC
Valid to 2036-08-06 08:38:07 UTC
Validity valid, 3566 days remaining
SAN DNS:example.test, DNS:www.example.test
Key RSA
Key bits 2048
Signature RSA-SHA256
SHA256 FE:BE:96:6B:FD:A6:EA:E5:98:E1:66:7E:A3:32:72:7D:E3:DE:37:CC:D8:2F:64:63:76:73:26:C6:4B:F5:7D:CDcert -i certs/server.crt -jsonオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
{
"rows": [
{
"name": "File",
"value": "sandbox/certs/server.crt"
},
{
"name": "Certificates",
"value": "1"
},
{
"name": "Certificate 1:",
"value": ""
},
{
"name": "Subject",
"value": "CN=example.test, O=lil"
},
{
"name": "Issuer",
"value": "CN=example.test, O=lil"
},
{
"name": "Serial",
"value": "01FAB2F36D62878EE1C3EF872CC4924ADAE7FACD"
},
{
"name": "Valid from",
"value": "2026-08-09 08:38:07 UTC"
},
{
"name": "Valid to",
"value": "2036-08-06 08:38:07 UTC"
},
{
"name": "Validity",
"value": "valid, 3566 days remaining"
},
{
"name": "SAN",
"value": "DNS:example.test, DNS:www.example.test"
},
{
"name": "Key",
"value": "RSA"
},
{
"name": "Key bits",
"value": "2048"
},
{
"name": "Signature",
"value": "RSA-SHA256"
},
{
"name": "SHA256",
"value": "FE:BE:96:6B:FD:A6:EA:E5:98:E1:66:7E:A3:32:72:7D:E3:DE:37:CC:D8:2F:64:63:76:73:26:C6:4B:F5:7D:CD"
},
{
"name": "Constraints",
"value": "CA:FALSE"
},
{
"name": "Key usage",
"value": "Digital Signature, Key Encipherment"
},
{
"name": "Extended usage",
"value": "TLS Web Server Authentication"
},
{
"name": "Subject key ID",
"value": "D6:14:0F:93:56:90:A8:E6:CC:3D:8C:D5:16:AE:EB:05:0C:07:8B:1D"
},
{
"name": "Authority key ID",
"value": "D6:14:0F:93:56:90:A8:E6:CC:3D:8C:D5:16:AE:EB:05:0C:07:8B:1D"
}
]
}cert -v certs/server.crt -host example.testオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
File sandbox/certs/server.crt
Purpose TLS server
Time valid
Trust invalid
Hostname valid (example.test)
Result invalidcert -v certs/server.crt -ca certs/server.crtオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
File sandbox/certs/server.crt
Purpose TLS server
Time valid
Trust valid
Result validcert -v certs/server.crt -clientオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
File sandbox/certs/server.crt
Purpose TLS client
Time valid
Trust invalid
Result invalidcert -m certs/server.crt certs/server.keyオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
Certificate sandbox/certs/server.crt
Private key sandbox/certs/server.key
Result matchcert -m certs/server.crt certs/server.key -jオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
{
"rows": [
{
"name": "Certificate",
"value": "sandbox/certs/server.crt"
},
{
"name": "Private key",
"value": "sandbox/certs/server.key"
},
{
"name": "Result",
"value": "match"
}
]
}cert -key tmp/demo.key -rsa 2048オフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
README.txt
current.txt
demo.key
draft.txt
new.txtcert -key tmp/demo-ec.key -ec prime256v1オフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
README.txt
current.txt
demo-ec.key
draft.txt
new.txtcert -csr certs/server.key tmp/demo.csr "CN=example.test" -san DNS:example.testオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
README.txt
current.txt
demo.csr
draft.txt
new.txtcert -self certs/server.key tmp/demo.crt "CN=example.test" -san DNS:example.testオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
README.txt
current.txt
demo.crt
draft.txt
new.txtcert -der certs/server.crt tmp/demo.derオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
README.txt
current.txt
demo.der
draft.txt
new.txtcert -pem certs/server.der tmp/demo.pemオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
README.txt
current.txt
demo.pem
draft.txt
new.txtcert -p12 certs/server.crt certs/server.key tmp/demo.p12オフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
README.txt
current.txt
demo.p12
draft.txt
new.txtcert -p12 -r certs/server.p12 tmp/unpacked -p demoオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
server.cert.pem
server.key.pemcert -sign certs/server.csr certs/server.crt certs/server.key tmp/signed.crtオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
CA certificate is not allowed to sign certificatescert -v certs/server.crt -chain certs/server.crtオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
File sandbox/certs/server.crt
Purpose TLS server
Time valid
Trust invalid
Result invalidcert -h example.test -4 -6オフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
Choose either IPv4 or IPv6cert -h example.test -t 301オフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
Invalid timeoutcert -i certs/missing.pemオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
File not foundcert -v certs/missing.pemオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
Certificate not foundcert -m certs/server.crt certs/missing.keyオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
Private key not foundcert -key tmp/demo.key -rsa 1024オフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
RSA bits must be 2048–16384 in steps of 256cert -h example.test -sniオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
SNI name requiredcert -key tmp/demo.key -ec unknownオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
Use prime256v1, secp384r1, or secp521r1cert -key tmp/demo.key -f -rsa 2048オフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
README.txt
current.txt
demo.key
draft.txt
new.txtcert -self certs/missing.key tmp/missing.crt "CN=example.test"オフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
Private key not foundcert -h example.test -ca missing-ca.pemオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
CA file not foundcert -unknownオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
Unknown cert operationcert -i certs/server.crt -j -jsonオフライン学習例 — 実際の HTTP・メール・TLS 通信はありません
{
"rows": [
{
"name": "File",
"value": "sandbox/certs/server.crt"
},
{
"name": "Certificates",
"value": "1"
},
{
"name": "Certificate 1:",
"value": ""
},
{
"name": "Subject",
"value": "CN=example.test, O=lil"
},
{
"name": "Issuer",
"value": "CN=example.test, O=lil"
},
{
"name": "Serial",
"value": "01FAB2F36D62878EE1C3EF872CC4924ADAE7FACD"
},
{
"name": "Valid from",
"value": "2026-08-09 08:38:07 UTC"
},
{
"name": "Valid to",
"value": "2036-08-06 08:38:07 UTC"
},
{
"name": "Validity",
"value": "valid, 3566 days remaining"
},
{
"name": "SAN",
"value": "DNS:example.test, DNS:www.example.test"
},
{
"name": "Key",
"value": "RSA"
},
{
"name": "Key bits",
"value": "2048"
},
{
"name": "Signature",
"value": "RSA-SHA256"
},
{
"name": "SHA256",
"value": "FE:BE:96:6B:FD:A6:EA:E5:98:E1:66:7E:A3:32:72:7D:E3:DE:37:CC:D8:2F:64:63:76:73:26:C6:4B:F5:7D:CD"
},
{
"name": "Constraints",
"value": "CA:FALSE"
},
{
"name": "Key usage",
"value": "Digital Signature, Key Encipherment"
},
{
"name": "Extended usage",
"value": "TLS Web Server Authentication"
},
{
"name": "Subject key ID",
"value": "D6:14:0F:93:56:90:A8:E6:CC:3D:8C:D5:16:AE:EB:05:0C:07:8B:1D"
},
{
"name": "Authority key ID",
"value": "D6:14:0F:93:56:90:A8:E6:CC:3D:8C:D5:16:AE:EB:05:0C:07:8B:1D"
}
]
}