3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

レンタルサーバのssl設定

Last updated at Posted at 2016-10-23

はじめに

頼まれごとで、レンタルサーバ上にあるwebアプリケーションに対して、ssl証明書の設定をするという場面がありました。

sslの仕組みも分かっていないペーペーですが、メモを兼ねて作業ログを残します。

手順

こんな感じでやりました。

  1. CSRファイル作成
  2. CSRファイルをSSL証明書発行会社に送付(然るべきアップローダーがあるのでそこへアップ)
  3. SSL証明書と、レンタルサーバのためのSSL中間証明書を受け取る
  4. SSL証明書・SSL中間証明書それぞれのファイル作成
  5. SSL証明書・SSL中間証明書・秘密鍵をアップする
  6. SSL設定がうまくいったかを確認

今回の状況

  • 端末OS: Mac OSX
  • SSL発行元: Global Sign社
  • 備考: レンタルサーバ側ドメインに対してSSLを設定(よく分かっていないので表現不適切かも)

1. CSRファイル作成

SSL証明書の発行は今回はGMO系列のglobal sign社にやってもらっています。
Global sign社のサイトを見ます:Generate CSR - OpenSSL

$ cd # ~/ へ移動
$ mkdir csr # ~/csr を作成
$ cd csr # ~/csr へ移動
$ openssl req -out CSR.csr -new -newkey rsa:2048 -nodes -keyout privatekey.key # 鍵とかCSR作成

CSRっていう、おそらくSSL証明書のタネのようなものを作成します。

openssl reqコマンドを打つと、次の表っぽいのが出てくるので、然るべき項目を埋めます。
下表の内容の他に、email, domainあたりを聞かれます。Country Nameは日本だとJPが良いと思います。

Field Example
Country Name US (2 Letter Code)
State or Province New Hampshire (Full State Name)
Locality Portsmouth (Full City name)
Organization GMO GlobalSign Inc (Entity's Legal Name)
Organizational Unit Support (Optional, e.g. a department)
Common Name www.globalsign.com (Domain or Entity name)

参考: Apache+OpenSSL:CSRの作成 | CSP SSL

2. CSRファイルをSSL証明書発行会社に送付(然るべきアップローダーがあるのでそこへアップ)

  1. を実行すると、~/csr/CSR.csrが作成されるので、それをSSL発行元のサイト上でアップ。

3. SSL証明書と、レンタルサーバのためのSSL中間証明書を受け取る

10分弱で、SSL証明書と、SSL中間証明書がメールにて受け取れます。

4. SSL証明書・SSL中間証明書それぞれのファイル作成

受け取ったメールのSSL証明書・SSL中間証明書を、テキストエディタでテキストファイルに書き込みます。

# ~/csrで作業継続
$ vim 2016-10-22.crt # SSL証明書
# <メール文面からSSL証明書の部分をコピペして保存>
$ vim 2016-10-22-mid.cer # SSL中間証明書
# <メール文面からSSL中間証明書の部分をコピペして保存>

ここまでで、SSL証明書・SSL中間証明書のテキストファイルが出来ました。

次に、権限変更。

$ chmod 400 2016-10-22.crt # SSL証明書
$ chmod 400 2016-10-22-mid.cer # 中間証明書
$ chmod 600 privatekey.key # 秘密鍵

権限について参考: Apache+OpenSSL:CSRの作成 | CSP SSL

5. SSL証明書・SSL中間証明書・秘密鍵をアップする

手元に、

役割 ファイル名
SSL証明書 2016-10-22.crt
SSL中間証明書 2016-10-22-mid.cer
秘密鍵 privatekey.key

があるので、レンタルサーバのSSL設定ページにて
全てアップします。

6. SSL設定がうまくいったかを確認

上記のことをやると、大抵うまくいくのですが、
Androidはセキュリティにシビアなようで、
Android端末のchromeでサイトを確認すると
次のような画面が出たりします(出てしまいました)。

urlは消してます urlは消してます

...マジか。...

「Android SSL証明書 エラー」で検索してると
次の記事を発見。

SSL中間証明書不足でAndroidがSSLエラー出してた件 | Moral Hazard!!

これによると、Apple製品上でSSLが適用されているように見えるものの、
実際にはうまくworkしていないということです。

確認方法としてはSemantec社のサイトに対象domainを打ち込むこと->
SSL Checker | Symantec CryptoReport

で、実はファイル名がおかしかったっぽいのと、
chmodで権限変更していなかったのが問題っぽかったです。
最初はSSL checkerでもnot installedなどと表示されていたのが、然るべき修正を加えることで
次の結果を得ました。

validate_ssl.jpg

そんで、Androidユーザーの方にも問い合わせたところ、先程のようなバグは出なくなりました。

めでたしめでたし。

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?