Help us understand the problem. What is going on with this article?

超手っ取り早く SSL サーバ証明書 (自己署名証明書) を作成する

More than 5 years have passed since last update.

はじめに

前回の「Ruby の openssl ライブラリを使って、サーバ証明書やクライアント証明書を作成する」で Ruby をつかってサーバ証明書やクライアント証明書を作成する方法を書きましたが、実際には「SSL サーバ証明書を作成するために OpenSSL を使う」という人が大半だと思いますし、Ruby を使ったことがない人も多いと思います。
今回は、Ruby がわからなくても「簡単にサーバ証明書を作成する方法」をつくってみました。(ただし、Ruby はインストールしておく必要があります)

準備するもの

  • Ruby
  • Git (必須ではない)

リポジトリを clone する

cmd
$ git clone https://github.com/k-masaki/certification-publisher.git
$ cd certification-publisher

Git をインストールしていない場合は、こちらからダウンロードしてください。ダウンロード、解凍をしたら、解凍したフォルダにコンソールで移動してください。

プライベート CA を準備する

config.yml を編集することで、証明書の値を変更することができます。 (任意)

config.yml
C:  JP
ST: Tokyo
DC: Minato-ku
O:  Example, Inc.
CN: Example CA

以下のコマンドを実行して、CA を構築する

cmd
$ ruby prepare.rb

実行が完了すると、ca フォルダ配下に ca_private_key.pem (CA の秘密鍵) と ca.pem (CA の証明書) が作成されています。

サーバ証明書を作成する

例えば、example.com 用の SSL サーバ証明書を作成する場合は、以下のようなコマンドを実行します

cmd
$ ruby publish.rb example.com

実行が完了すると、example.com フォルダ配下に example.com.key (サーバの秘密鍵) と example.com.crt (サーバ証明書) が作成されています。
あとはそれらを Web サーバに送ってよしなにやってください。

ca/ca.pem をクライアント PC (ブラウザ) 側で信頼すると、Web サーバにアクセスしたときに警告画面も出ないので快適です。
これで、ワンコマンドで SSL 証明書が作成できるようになりました!

k-masaki
フリーランス Web エンジニア. Ruby on Rails を使う機会が多い. 最近は AI に注力. IT ストラテジスト, システム監査技術者, プロジェクトマネージャ, ネットワークスペシャリスト, データベーススペシャリスト, 情報セキュリティスペシャリスト, Ruby Programmer Gold, JDLA Deep Learning for ENGINEER などを取得済み.
https://www.usagino.jp/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした