概要
http だと、chromeなどで「保護されていない通信」と表示されてしまう。
ちゃんとしたサイトっぽいので、https へと変換しよう!
こちらを参考に設定させて頂きました!
やることリスト
- openssl インストール
- 秘密鍵の作成
- CSR(証明書署名要求)の作成
- CRT(SSLサーバ証明書)の作成
- nginx の設定
ファイルの作成
openssl のインストール
$ sudo yum install openssl
秘密鍵の作成
$ sudo mkdir /etc/nginx/ssl
$ sudo openssl genrsa -out /etc/nginx/ssl/server.key 2048
CSR(証明書署名要求)の作成
$ sudo openssl req -new -key /etc/nginx/ssl/server.key -out /etc/nginx/ssl/server.csr
「Common Name」には、サーバのドメイン名を入力します。
↓参考画像
作成されたファイルを確認すると、2つのファイルが出来ています。
$ ls /etc/nginx/ssl
server.csr server.key
CRT(SSLサーバ証明書)の作成
今回はオレオレ証明書を作成するので、CRTファイルは自分で作成します。
本来このファイルは、証明局へ登録すると発行してもらえるファイルになります。
$ sudo openssl x509 -days 3650 -req -signkey /etc/nginx/ssl/server.key -in /etc/nginx/ssl/server.csr -out /etc/nginx/ssl/server.crt
$ ls /etc/nginx/ssl/
server.crt server.csr server.key
これで、3ファイルの作成が完了です。
nginxの設定
$ sudo vi /etc/nginx/conf.d/[任意のファイル].conf
server {
# 443番ポートを許可し、SSL機能をON
# listen 80;
listen 443 ssl;
# 証明書を設定
ssl_certificate /etc/nginx/ssl/server.crt;
ssl_certificate_key /etc/nginx/ssl/server.key;
}
nginx を再起動
$ sudo systemctl restart nginx
[https://サーバのURLかドメイン] で接続して、確認
オレオレ証明書なので、ブラウザでブロックされるので、そのまま進めば自分のページが見れます。