---
lang: ja-jp
breaks: true
---
# XCA(X Certificate and Key management) による HTTPS SSL証明書の作成 2021-09-22
## ダウンロード
https://hohnstaedt.de/xca/index.php/download
## 証明書管理データベースの作成
1. 「新しいデータベース」を作成します。

1. 「パスワード」を入力します。
※このパスワードは証明書とは関係ありません。あくまでもデータベースのパスワードです。

## ルート証明書の作成(認証局用の証明書/CA証明書)
※認証局(CA:Certification Authority)
1. 「新しい証明書を作成」をクリックします。

1. 「ソース」タブより、新しい証明書のテンプレートより、`default]CA`選択します。

1. 「全てに適用」をクリックします。

1. 「サブジェクト」タブより、必要な情報を入力します。これらは適当でも問題ありません。入力したら「追加」ボタンをクリックします。

1. 「新しい秘密キーを生成」をクリックします。

1. 「新しい秘密キー」ダイアログで、「作成」ボタンをクリックします。「秘密キーのプロパティ」は、デフォルトのままで問題ありません。

1. 「秘密キー」に作成した秘密キーが自動的に選択されます。

1. 「有効期限」の「範囲」に300年程度の長い期間を指定して、「適用」ボタンを押します。

1. 「OK」ボタンを押します。

1. 「署名済証明書」タブに作成したルート証明書が表示されます。

:::info
※「CA」が`はい`となります。
:::
## サーバー証明書の作成
HTTPサーバ用の証明書を作成します。
1. 認証局用の証明書を選択し、「新しい証明書を作成」をクリックします。

1. 「新しい証明書のテンプレート」より、`[default TLS_Server]`を選択して、「全てに適用」ボタンをクリックします。

1. 「サブジェクト」タブに必要な情報を入力して、「追加」をクリックします。その後、「新しい秘密キーを生成」をクリックします。

:::info
`common Name`欄に、HTTPサーバで使用するドメイン名を入力します。ドメイン名を使用せずに、IPアドレスで使用する場合は、そのIPアドレスを入力します。
:::
1. 「新しい秘密キー」ダイアログで「作成」ボタンを押します。※内容はデフォルトのままで問題ありません。

1. 「拡張キー」タブで、「サブジェクトタイプ」が`End Ently`となっており、「Key identifier」で`x509V3 Subject Key Identifier`にチェックがなされていることを確認します。

:::info
「有効期限」の「範囲」には、CA証明書よりも短い範囲を設定します。
:::
:::info
マルチドメインで使用する場合は、`X509v3 Subject Alternative Name`の「編集」ボタンより、内容を編集します。
> LANのIPアドレスに対してSANを適用して真正なSSL証明書を作成する手順
> https://gist.github.com/ykst/2a666d3d41785f9a41d403889f45d82e
:::
1. 「キー使用法」は以下のようになります。ので、確認して「OK」をクリックします。

1. 「署名済証明書」タブのルート証明書の配下に作成したサーバ証明書が表示されます。※`CA`欄が`いいえ`となります。

## 証明書のエクスポート
### ルート証明書のエクスポート
1. 該当の証明書を選択して、「エクスポート」ボタンを押します。

1. 出力先のファイルパスを指定して、「OKボタン」を押します。

:::info
「エクスポートフォーマット」は、デフォルトのままで問題ありません。
:::
### サーバ用証明書のエクスポート
1. 該当の証明書を選択して、「エクスポート」ボタンを押します。

1. 出力先のファイルパスを指定して、「エクスポート」フォーマットに`PKCS #12 (*.pfx)`を選択します。その後「OKボタン」を押します。

## サーバ証明書の秘密鍵ファイルを出力


###### tags: `XCA` `HTTPS` `SSL` `証明書`