独自CA環境構築と証明書作成手順(Debian / CA.sh 編)
準備とGoal
まず、OpenSSL 用の特定ディレクトリを設定($OpenSSL_DIR)。
その配下に RootCA($MyRootCA)と、サーバー証明書を生成する各サーバー用のディレクトリ($ServerCertificates)も作成しておく。
コマンドにするとこんな感じか。
- mkdir $OpenSSL_DIR
- cd $OpenSSL_DIR
- mkdir $MyRootCA
$MyRootCA 作成
/etc/ssl/openssl.cnf が openssl の設定ファイルのようなので、これを予めバックアップしておき、/etc/ssl/openssl.cnf に編集を加えていく。
サーバー証明書の作成
- cd $OpenSSL_DIR
- mkdir -p Servers/$ServerCertificates
- /usr/lib/ssl/misc/CA.sh を -newreq か -newreq-nodes で実行(サーバー用の秘密鍵 "newkey.pem" と CSR "newreq.pem" が生成される。パスフレーズをなしにしたい場合は -newreq-nodes を使用する)
- /usr/lib/ssl/misc/CA.sh -sign(サーバー証明書 "newcert.pem" が生成される)
- mv newcert.pem Servers/$ServerCertificates
- mv newkey.pem Servers/$ServerCertificates
- mv newreq.pem Servers/$ServerCertificates
提供されるスクリプトを使用する場合、出力先指定はオリジナルのスクリプトを編集しないといけない感じだが、個人的にはあまりやりたくない。コマンドを一つずつ実行する方法も整理する必要がありそうだ。