📘

秘密鍵・CSR?というエンジニアに向けたHOWTO

2021/12/05に公開

概要


SSLの管理をしているのでもう1歩先の知識を得るために技術書を購入しました。
今回は以下の技術書をベースに備忘録としてまとめていきます
https://booth.pm/ja/items/1834443

この記事のゴール

①GCPでサーバーを立てる
②Nginxをインストール
③秘密鍵・CSRを作成する

SSHの秘密鍵・公開鍵を作成する

bash
# 任意の公開鍵・秘密鍵をディレクトリにまとめます
mkdir /Documents/ssl && cd /Documents/ssl

# -N パスフレーズを指定 -f ファイルを指定する
ssh-keygen -N '' -f ~/Desktop/practice/ssl/startSSLkey

ls
# 秘密鍵         # 公開鍵 
startSSLkey	startSSLkey.pub

# オーナーにのみ読み書き権限を付与します
chmod 600 startSSLkey

# 公開鍵を表示(後ほど使用するのでメモ帳に控えます)
view startSSLkey.pub

VMインスタンスを構築します

https://qiita.com/Brutus/items/22dfd31a681b67837a74

構築したVMインスタンスにSSHで接続します

Nginxをインストール

bash

# root権限に切り替えます
sudo su -

# パッケージ一覧を更新
apt update

# nginxをインストール
apt install nginx

# バージョン表示
nginx -v
nginx version: nginx/1.10.3 (Ubuntu)

秘密鍵を作成

bash
# 秘密鍵を作成
openssl genrsa -out /etc/nginx/ssl/startssl.key 2048

root@instance-1:/etc/nginx/ssl# ls
startssl.key

# 管理者にのみ読み書きを許可する
chmod 600 /etc/nginx/ssl/startssl.key 

CSR(証明書署名リクエスト)を作成

bash
openssl req -new -key startssl.key -out startssl.csr
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----

# 国名
Country Name (2 letter code) [AU]:JP 
# 都道府県名
State or Province Name (full name) [Some-State]:Tokyo
# 市区町村名
Locality Name (eg, city) []:Shibuya
# 組織名
Organization Name (eg, company) [Internet Widgits Pty Ltd]:system
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:hogedns.com
Email Address []:
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
root@instance-1:/etc/nginx/ssl# ls

https://weblabo.oscasierra.net/openssl-gencert-1/

最後に

読んでいただきありがとうございます。
今回の記事はいかがでしたか?
・こういう記事が読みたい
・こういうところが良かった
・こうした方が良いのではないか
などなど、率直なご意見を募集しております。

GitHubで編集を提案

Discussion