Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
13
Help us understand the problem. What are the problem?

More than 5 years have passed since last update.

@k-masaki

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

はじめに

前回の「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 証明書が作成できるようになりました!

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
13
Help us understand the problem. What are the problem?