Go to main content
Oracle® Solaris 11.3 パッケージリポジトリのコピーと作成

印刷ビューの終了

更新: 2016 年 11 月
 
 

自己署名付きサーバー認証局の作成

テスト目的では、サードパーティーの CA ではなく、自己署名付きサーバー認証局 (CA) を使用できます。Apache の自己署名付きサーバー CA を作成する手順は、クライアント証明書の認証局の作成で説明されているクライアント証明書のために CA を作成する手順と非常に似ています。

次のコマンドを使用して、サーバー CA を作成します。subject をサーバーの DNS 名に設定します。

$ pktool gencert label=apacheCA subject="CN=apachetest" \
serial=0x01

次のコマンドを使用して、サーバー CA の CSR を作成します。サーバーに複数の名前でアクセスできる場合、または IP アドレスで直接利用できるようにする場合は、OpenSSL のドキュメントのサブジェクトの別名に関する説明に従って、subjectAltName ディレクティブを使用します。

$ pktool gencsr label=apache subject="CN=pkg-sec.internal.example.com" \
altname="IP=192.168.1.1,DNS=pkg-sec.internal.example.com" \
format=pem outcsr=apache.csr

次のコマンドを使用して CSR に署名します。SSLCertificateFile には server.crt を使用します。

$ pktool signcsr signkey=apacheCA csr=apache.csr serial=0x02 \
outcert=server.crt issuer="CN=apachetest"

次のコマンドを使用して鍵を抽出します。SSLCertificateKeyFile には server.key を使用します。

$ pktool export objtype=key label=apache outformat=pem \
outfile=server.key

クライアントがこのサーバー鍵を受け入れるようにするには、クライアントの受け入れ済み CA ディレクトリに CA 証明書 (apacheCA) を追加し、ca-certificates サービスを再起動して、OpenSSL に必要なリンクを作成します。

次のコマンドを使用して CA 証明書を抽出します。

$ pktool export label=apacheCA objtype=cert outformat=pem \
outfile=test_server_ca.pem

CA 証明書をクライアントの CA 証明書ディレクトリにコピーします。

$ cp /path-to/test_server_ca.pem /etc/certs/CA/

CA 証明書サービスをリフレッシュします。

$ svcadm refresh ca-certificates

続行する前に、新しい CA 証明書がリンクされていることを確認します。リフレッシュしたあと、ca-certificate サービスは /etc/openssl/certs ディレクトリにリンクを再構築します。次のコマンドを実行して、新しい CA 証明書がリンクされているかどうかを確認します。

$ ls -l /etc/openssl/certs | grep test_server_ca.pem
lrwxrwxrwx   1 root     root          40 May  1 09:51 e89d96e0.0 -> ../../certs/CA/test_server_ca.pem

ハッシュ値 e89d96e0.0 は、証明書の subject に基づいているため、異なる場合があります。