はじめに
Ubuntu のサーバー環境で Web サービスを展開する際、安全性を高めるために HTTPS を使用することはほぼ必須となっています。本記事では、Ubuntu 20.04 LTS に Apache2 を使用して、簡単に HTTPS サーバーを立ち上げる方法をご紹介します。特にテストや開発環境での利用を想定し、自己署名証明書を利用しての設定手順を中心に解説していきます。
前提条件
- Ubuntu 20.04 LTS がインストールされたサーバまたはデスクトップ
- sudo 権限を持つユーザーアカウント
- インターネット接続
設定方法
Apache2 をインストールします。
sudo apt install apache2 -y
Apache2 サービスを有効にして起動します。
sudo systemctl enable apache2
sudo systemctl start apache2
自己署名証明書を作成します。
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/apache-selfsigned.key -out /etc/ssl/certs/apache-selfsigned.crt
Apache のデフォルト SSL 設定をコピーします。
sudo cp /etc/apache2/sites-available/default-ssl.conf /etc/apache2/sites-available/default-ssl.conf.bak
SSL 設定を編集します。
sudo vi /etc/apache2/sites-available/default-ssl.conf
以下の行を見つけて適切な証明書のパスに変更します。(オプション)
SSLCertificateFile /etc/ssl/certs/apache-selfsigned.crt
SSLCertificateKeyFile /etc/ssl/private/apache-selfsigned.key
また、ServerAdmin
と ServerName
を必要に応じて変更します。(オプション)
ServerAdmin webmaster@localhost
ServerName example.com:443
SSL とヘッダーモジュールを有効にします。
sudo a2enmod ssl
sudo a2enmod headers
SSL サイトを有効にします。
sudo a2ensite default-ssl.conf
Apache2 を再起動して変更を適用します。
sudo systemctl restart apache2
以上で、https://example.com
で Apache2 サーバにアクセスできるようになります。ただし、自己署名証明書を使用しているため、ブラウザはセキュリティ警告を表示します。安全な例外としてこの警告を無視することで、サイトにアクセスすることができます。
注意点として、自己署名証明書を使用すると、ブラウザはセキュリティ警告を表示します。これは自己署名証明書が公的な認証機関によって発行されていないためです。開発やテスト環境での使用には問題ありませんが、公開サービスでの利用は推奨しません。
まとめ
Ubuntu 20.04 LTS と Apache2 を使用して、短時間で安全な HTTPS サーバーを設定する手順を紹介しました。開発や検証用途での簡易的な HTTPS サーバを構築する際のご参考になれば幸いです。実運用を考慮する場合は、公的な認証機関から正式な SSL 証明書を取得することをご検討ください。
以上