トップページ -> コンピュータ -> Ubuntu -> Ubuntu 18.04.1 で、Apache + SSL の Web サーバを動かす
[サイトマップへ], [サイト内検索へ],

Ubuntu 18.04.1 で、Apache + SSL の Web サーバを動かす

サイト構成 連絡先,業績など 実践知識 データの扱い コンピュータ 教材 サポートページ

前もって決めておくこと

Web サーバの URL を決めておく.このWebページでは、 www.hoge.jpと書く


Ubuntu の基本設定


Apache 及び関連ソフトウエアのインストール、基本設定

  1. ufw の設定
    sudo ufw enable
    sudo ufw allow 22 
    sudo ufw allow 80
    sudo ufw allow 443
    sudo ufw allow 'Apache Full'
    

  2. ufw の設定確認
    sudo apt install nmap
    sudo ufw status
    nmap localhost
    

  3. apache および関連ソフトのインストール
    sudo apt-get --purge remove apache2
    sudo apt-get --purge remove apache2-bin apache2-data apache2-mpm-worker
    sudo apt-get --purge remove libapache2-mod-wsgi
    
    sudo apt-get install apache2
    sudo apt-get install apache2-bin apache2-data apache2-mpm-worker
    sudo apt-get install libapache2-mod-wsgi
    sudo a2enmod ssl
    sudo a2enmod headers
    sudo service apache2 reload
    

  4. Web ブラウザで「localhost」を開き、確認。

    画面が出ればOK

  5. /etc/apache2/sites-available/000-default.com の設定

    設定例を次に示す

     	ServerName www.hoge.jp
     	DocumentRoot /var/www/html
     	ServerAdmin hoge@hoge.ac.jp
     	<Directory /var/www/html>
     	Options FollowSymLinks
     	AllowOverride All
     	AddType text/html .html
     	AddType text/html .htm
     	Require all granted
     	</Directory>
    

  6. apache の再起動
    sudo apachectl configtest
    sudo service apache2 restart
    

  7. Web ブラウザで「localhost」を開き、確認。

    画面が出ればOK

  8. /etc/apache2/sites-available/www.hoge.jp.conf の設定

    /etc/apache2/sites-available/default-ssl.conf のファイル名を /etc/apache2/sites-available/www.hoge.jp.conf に変えたあとで、 次の記述を書き加える

    000-default.conf の記述と一致させること

    設定例を次に示す

     	ServerAdmin hoge@hoge.ac.jp
     	DocumentRoot /var/www/html
     	<Directory /home/www>
     	Options FollowSymLinks
     	AllowOverride All
     	AddType text/html .html
     	AddType text/html .htm
     	Require all granted
     	</Directory>
    

  9. apache で/etc/apache2/sites-available/www.hoge.jp.conf も使うように設定
    sudo a2ensite www.hoge.jp
    sudo service apache2 restart
    nmap localhost
    

  10. Web ブラウザで「https://localhost」を開き、確認。

    画面が出ればOK。警告は無視


SSL 証明書の取得

certbot を使う

参考Webページ https://certbot.eff.org/lets-encrypt/ubuntuartful-apache.html

参考Webページ https://www.digitalocean.com/community/tutorials/how-to-secure-apache-with-let-s-encrypt-on-ubuntu-18-04

  1. certbot のインストールと設定
    sudo apt-get update
    sudo apt-get install software-properties-common
    # sudo add-apt-repository ppa:certbot/certbot
    sudo apt-get update
    sudo apt-get install certbot 
    sudo apt-get install python-certbot-apache -y
    sudo apachectl configtest
    sudo service apache2 restart
    sudo certbot --apache  -d www.hoge.jp
    

    2を選ぶ。表示をよく確認する

  2. 次のコマンドを実行
    sudo a2enmod ssl
    sudo a2enmod headers
    sudo systemctl restart apache2
    

  3. 証明書更新ができるかのテスト
     sudo certbot renew --dry-run -d www.hoge.jp
    

  4. crontab -e で次のように設定 sudo -i crontab -e を実行し、次のように設定
    0 */12 * * * root test -x /usr/bin/certbot -a \! -d /run/systemd/system && perl -e 'sleep int(rand(3600))' && certbot -q renew --renew-hook "systemctl reload apache2"