not good but great

プログラミング、アート、映画・本の感想について書きます。

ApacheのWebサーバをhttps化する

Apacheのversionを確認

証明書ファイルの作成

証明書、秘密鍵、中間CA証明書を作成。viで開いて手持ちの証明書、秘密鍵、中間CA証明書をコピペする。

#証明書
$sudo vi /etc/ssl/certs/ssl-cert-sample.pem
#秘密鍵
$sudo vi /etc/ssl/private/ssl-cert-sample.key
#中間CA証明書
$sudo vi /etc/apache2/ssl.crt/server-ca-sample.crt

証明書、秘密鍵、中間CA証明書をコピペするときの注意

confファイルの作成

httpのconfファイルをコピーする。

$cd /etc/apache2
$cp sites-available/sample.conf sites-available/sample-ssl.conf

confファイルの修正

ポート番号を修正

<VirtualHost *:443>

</VirtualHost>

httpで作ったconfファイルに下記を追加。

<VirtualHost *:443>
ServerName example.com
WSGIScriptAlias / /home/hogehoge/apps/hello.wsgi

# ここから追加
SSLEngine on
SSLCertificateFile  /etc/ssl/certs/ssl-cert-sample.pem
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-sample.key
SSLCertificateChainFile /etc/apache2/ssl.crt/server-ca-sample.crt
# ここまで追加


<Directory /home/hogehoge/apps>
省略
</Directory>


</VirtualHost>

confの有効化

$ sudo a2enmod ssl
$ sudo a2ensite sample-ssl
$ sudo service apache2 restart