サーバーの引っ越しにともなって,(何度目かの)https 関連の設定をしました。
準備として,古いサーバーから apache の設定ファイルをもってきます。http 用と https 用の設定ファイル(/etc/apache2/sites-available にある default.conf や default-ssl.conf など)を持ってきます。他には、phpadmin 用の /etc/phpmyadmin/apache.conf も修正を加えていたので持ってきました。
証明書関連では、zairyo.susi.oita-u.ac.jp.cer、servername.key、nii-odca3sha2.cer の3ファイル(サーバー証明書、秘密鍵、中間証明書)を移動しました。
新サーバーの準備としては、まずは openssl のインストールです。
sudo apt-get install openssl
次に、モジュールを有効にします。
sudo a2enmod ssl
sudo a2ensite default-ssl.conf
sudo /etc/init.d/apache2 restart
default-ssl.conf は自分のサイトのファイル名に合わせる必要があります。xubuntu 16.04 だとこの名前でした。
ここで、試しにブラウザで https 側にアクセスすると 警告が来ると思います。証明書がダメだとかでページが表示できないのではないでしょうか(FireFox ではそうでした)。
次に、証明書関連のファイルを所定のところに配置します。default-ssl.conf を下記のように3箇所、修正します。 中間証明証はデフォルトで無効になっているので注意してください(先頭にシャープが付いている)。
SSLCertificateFile /etc/ssl/certs/zairyo.susi.oita-u.ac.jp.cer
SSLCertificateKeyFile /etc/ssl/private/servername.key
SSLCertificateChainFile /etc/apache2/ssl.crt/nii-odca3sha2.cer
そこに、該当ファイルを移動します。例えば下記。
sudo mv zairyo.susi.oita-u.ac.jp.cer /etc/ssl/certs/
/etc/apache2/ssl.crt/
フォルダーは無かったので作りました。あとは、apache を再起動して、私有鍵パスフレーズを入力すると、動きました。
apache の設定ファイルの内容が、16.04 になって変化していました。
多分、何をどこに書くのが正当なのか、変化があったと思います。ひとます 14.04と同じところに記入しました。