Nginx、Gunicornと同様にOpenSSLをダウンロードします。OpenSSLの公式サイトからダウンロードしてください。
Nginxのインストールと初期設定を行います。Linuxのコマンドラインから、以下のようにコマンドを実行します。
sudo apt install openssl
以下のコマンドでSSL設定ファイルを指定します。
export OPENSSL_CONF=/usr/local/ssl/openssl.cnf
その後、カレントディレクトリを移動しておきます。
cd/etc/nginx/ssl
次に、SAN(Subject Alternative Name)設定ファイルを準備します。以下のコマンドで設定ファイルの「san.cnf」を編集します。リスト3が設定内容になります。
sudo nano san.cnf
[SAN] subjectAltName=@alt_names basicConstraints=CA:FALSE [alt_names] DNS.1=localhost IP.1=127.0.0.1 IP.2={{サーバPCのIPアドレス}}
ここからは秘密鍵や証明書を作成する作業になります。以下のプロセスに従ってコマンド入力を進めてください。
最後に、Nginxの設定ファイルを書き換えます。以下のコマンドを実行した後、リスト4の設定ファイルを作成します。
sudo nano /etc/nginx/sites-available/default
server { listen 443 ssl default_server; server_name_; index index.html; ssl_certificate /etc/nginx/ssl/server.crt; ssl_certificate_key /etc/nginx/ssl/localhost.key; location / { include proxy_params; proxy_pass http://unix:/run/gunicorn/gunicorn.sock; } }
まず、Webサーバの「/etc/nginx/ssl/server.crt」をラズパイのフォルダにコピーします。次に、ラズパイのブラウザの設定画面から証明書をインストールします。以下は、Chromeの例です。
これによって暗号化ができるようになります。図2にある通り、パケットが暗号化されていることも確認できます。
Copyright © ITmedia, Inc. All Rights Reserved.