DEMOサーバーにSSLを設定したので次回楽になる為のメモ その2
目次
DEMOサーバーにSSLを設定したので次回楽になる為のメモ その2
SSL化のやる事リスト。1~3は以前の記事で9~18はこちらからどうそ
mod_sslのインストールOpenSSLのインストールopenssl.cnfで証明書期間の設定を行う- 乱数ファイルの作成
- 秘密鍵の作成
- CSRの作成
- SSL証明書の発行手続き(申し込み)
- 証明書発行を待つ※認証局やサービスによって即日~数週間かかるものまである
- 発行された証明書をDL
- 中間証明もDL
- サーバーに証明書を配置
- /etc/httpd/conf.d/ssl.conf に証明書&Keyの場所を指示
- /etc/httpd/conf/httpd.conf に ssl.confの読込を指示
- sudo systemctl restart httpd (Apache再起動)を実行してSSLの稼働を確認※https://で実際にアクセスしてみる
- 80番ポート⇒443のリダイレクトを設定する
- プログラム側の設定(サーバー設定や http://で組んでいるパーツ等)を改修する
- Apache再起動でパスワードを求められない様に設定する※サーバー再起動でそのまま立ち上がるように。
- sudo systemctl restart httpd (Apache再起動) で設定完了
今回は項目4~7についてです。
乱数ファイルの作成
前回までの工程でOpenSSLをインストールしているので乱数を打ち出すのは簡単です。
1 2 3 4 |
$ openssl rand -base64 10 #乱数結果 v4O9DmdtNiKjfw== |
-base64 で進数を、10はバイト数を表します。
10を20とすればより複雑な(長い)乱数が出力されます。
1 2 3 4 5 6 7 |
#ディレクトリの作成 $ cd /etc/httpd/conf $ mkdir ssl.key $ cd ssl.key #乱数の出力 $ openssl rand -base64 10 > {ファイル名} |
これで作成した乱数を{ファイル名}で指示された名前で保存します。
この乱数は後々Apache再起動の認証自動化で使用するので操作方法だけ記憶しときます。
詳細はこちらを参照して実装しました。ありがとうございます。
秘密鍵の作成
1 2 3 4 5 |
#秘密鍵の作成 $ openssl genrsa -des3 -out server.key 2048 Enter pass phrase for server.key: (パスワード入力、Apache起動するたびにパスワード確認します) Verifying - Enter pass phrase for server.key: (パスワードの再確認) |
ここで登録するパスワードは再起動時に毎回聞かれます。
先程の乱数を利用する場合はその値を記載します。
ファイルに出力しておけば忘れた時の予防になります。
秘密鍵が発行されたか否かは ls での存在確認で出来ます。
1 2 3 4 5 |
#鍵を発行したフォルダ内 /etc/httpd/conf/ssl.key で実行 $ ls #下の様に帰ってくればOK server.key |
CSRの作成
CSRは次工程の証明書発行手続きで利用します。
まずは保管用のディレクトリを作成します。
1 2 |
$ cd /etc/httpd/conf $ sudo mkdir ssl.csr |
openssl にCSRの作成を指示します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
$ openssl req -new -key ssl.key/server.key -out ssl.csr/server.csr # パスワードを求められます Enter pass phrase for ssl.key/server.key: //秘密鍵のパスワード入力 #質問に答えます ----- Country Name (2 letter code) [XX]: //国名 State or Province Name (full name) []: //都道府県 Locality Name (eg, city) [Default City]: ///市町村 Organization Name (eg, company) [Default Company Ltd]: //組織名 Organizational Unit Name (eg, section) []: //部署名(空白でOK) Common Name (eg, your name or your server hostname) []: //ドメイン名※注意 Email Address []: //メールアドレス A challenge password []: //(空白でOK) An optional company name []: //(空白でOK) |
ドメイン名の登録には注意事項があります。
サイトURLにwwwを入れるか否か
私は基本的にwwwを入れませんが、必要と思う方は【www.ドメイン名】で申請しましょう。
SSL証明書の発行手続き(申し込み)
発行手続きは各サーバー会社さんが仲介して行って頂ける事が多いです。
其々の手続きを確認し申し込みしましょう。
証明書発行を待つ
申し込みからすぐに発行してくれるSSLもありますが、時間のかかるものもあります。
これは待つしかありません。
まとめ
以上、証明書の発行までの手続きでした。
-
前の記事
ヤマト運輸のe-ネコショップについて自店舗のベースとなり得るか検証してみた 2020.02.03
-
次の記事
Docker へのLaravelの移植を実行中。悪戦苦闘メモ 2020.02.28
コメントを残す