🔐

UPKI電子証明書発行サービスでサーバ証明書を取得する手順

2022/06/11に公開

この記事では、UPKI電子証明書発行サービスでサーバ証明書を取得する手順について紹介します。

はじめに

国立情報学研究所 の提供しているサービスに UPKI電子証明書発行サービス があります。

このサービスに参加している組織では、UPKIを利用してサーバ証明書やクライアント証明書を取得して利用できるわけですね。

サービス利用機関一覧 を見ると、国立大学をはじめとして多くの学術機関に利用されていることがわかります。

今回はUPKIを利用してサーバ証明書を取得してみようと思います。

TSVファイルを作るまで

サーバ証明書を取得するというと難しそうな気がしますが、実際はそうでもありません。

取得にあたってサーバ管理者が行うのは、大抵の場合「TSVファイルを作ること」と「TSVファイルを申請担当者に渡すこと」の二つだからです。

この記事ではTSVファイルを作るまでを見ていきましょう。作業はNIIの サーバー証明書インストールマニュアル事前準備〜証明書の取得から申請まで に沿って進めます。

手順

TSVファイルを作るためには3つ手順があって、それは下図のようになります。

はじめに鍵を作り、次にCSRを作り、さらにTSVファイルを作るという流れですね。やってみれば難しくありませんので、順を追ってやってみましょう。

鍵を作る

はじめに鍵を作ります。

証明書を取得したいサーバにログインして、適当なディレクトリを作ってそこへ移動しましょう。コマンドとしては次のような感じです。

mkdir -p ~/work/upki/2022-06
chmod -R 700 ~/work/upki/
cd ~/work/upki/2022-06/

RSA鍵とECDSA鍵のどちらかを生成します。

ここでは RSA鍵 を生成することにしました。

RSA鍵を生成する場合、乱数生成用のファイル randfile1.txt randfile2.txt randfile3.txt が必要みたいなので、次のコマンドで作りましょう。

dd bs=200K count=1 if=/dev/urandom of=randfile1.txt
dd bs=200K count=1 if=/dev/urandom of=randfile2.txt
dd bs=200K count=1 if=/dev/urandom of=randfile3.txt

乱数生成用のファイルができたら、 openssl コマンドを使ってRSA鍵を生成します。

openssl genrsa -des3 -rand randfile1.txt:randfile2.txt:randfile3.txt 2048 > server.key

パスフレーズの入力を求められるので入力します。

Generating RSA private key, 2048 bit long modulus (2 primes)
....................+++++
...................................+++++
e is 65537 (0x010001)
Enter pass phrase:
Verifying - Enter pass phrase:

パスフレーズの入力後 server.key というファイルが生成されているはずです。

CSRを作る

続いてCSRです。

CSRも openssl コマンドで生成します。ここではハッシュ関数に SHA-256 を指定しました。

openssl req -new -key server.key -sha256 -out server.csr -subj "/C=国/ST=都道府県/L=市町村/O=組織名称/CN=サーバのFQDN"

パスフレーズの入力を求められるので、先に設定したものを入力しましょう。

-subj オプションの引数は、例えば下表のようになります。STとLの値は UPKI証明書 主体者DNにおけるSTおよびLの値一覧 で確認できます。

項目 入力例
C JP
ST Tokyo
L Chiyoda-ku
O National Institute of Informatics
CN www.nii.ac.jp

CSRが作れたら、次のコマンドで確認しておくと良いと思います。

openssl req -noout -text -in server.csr

TSVファイルを作る

いよいよTSVファイルを作ります。

ここからはブラウザでの作業です。まず TSVツール トップメニュー へアクセスし、表示されている【作成開始】を押します。

【新規作成】タブで適当に項目を選択して【この内容で作成を開始】を押しましょう。

項目を選択する様子
項目を選択する様子

「CSRファイル読込」欄にある【ファイル選択】からファイルを選択して【読込】を押します。

これで「CSR」「主体者DN」「サーバFQDN」の欄が自動で入力されます。

あとは「利用管理者E-mail」「利用管理者氏名」「利用管理者所属」「使用ソフトウェア」を入力して【完了】を押せば、TSVファイルのダウンロードページに切り替わるはずです。

必要な項目を入力する様子
必要な項目を入力する様子

ページが切り替わったらブラウザでTSVファイルを【ダウンロード】すればOKです。

ダウンロードできたら【終了】します。

TSVファイルを作った後

TSVファイルが作れたら、それを申請担当者に提出します。

しばらくすると証明書発行サイトからメールが届きますので、そのメールに記載されているリンクを踏んでサーバ証明書のダウンロードページへ飛び、サーバ証明書をダウンロードすればサーバ証明書の取得は完了です。

お疲れ様でした。

おわりに

UPKI電子証明書発行サービスでサーバ証明書を取得する手順について紹介しました。どなたかのお役に立てば幸いです。

Discussion