Web Serverインストール
Web Serverのインストールはpkgを利用します。
# pkg install apache24 # sysrc apache24_enable="yes"
access: 181446
このご時世、httpのみではだめなようですので、httpとhttpsの両方でアクセスできるようにします。
複数のドメインで利用するために、最初からVirtualHostで設定します。
自身での証明ではクライアントのブラウザでエラーとなるため、無料の認証局(Let's Encrypt)を利用します。
Web Serverのインストールはpkgを利用します。
Certbotのインストールもpkgで行います。
VirtualHostの設定をします。
/usr/local/www/junkie.work/data/ を作成しておきます。
証明書の作成用にWeb Serverを起動しておきます。
ドメイン名と、VirtualHostのディレクトリを指定して証明書を発行 (ここでは、ドメインjunkie.work と www.junkie.work を指定 )
指定したドメインのディレクトリにファイルができていることを確認
VirtualHostの設定をして、ドメインの証明書を指定
/var/www/junkie.work/data/ 配下にドキュメントを配置した後、apache24を再起動したら完了。
通常で三ヶ月の期限があるので、毎月更新を実施します。
エディタが開くので以下のように設定して保存。
(詳細はhttps://letsencrypt.org/ja/getting-started/を参照)
Web Serverインストール
# pkg install apache24
# sysrc apache24_enable="yes"
Certbotインストール
# pkg install security/py-certbot-apache
VirtualHostの設定(HTTP)
/usr/local/etc/apache24/Includes/junkie.work.conf を新規に作成
<VirtualHost *:80>
DocumentRoot /usr/local/www/junkie.work/data/
<Directory "/usr/local/www/junkie.work/data">
Require all granted
</Directory>
ServerName junkie.work
ServerAlias www.junkie.work
</VirtualHost>
Web Server(HTTP)起動
# service apache24 start
認証に使う証明書などを生成します
# ccertbot certonly --apache -d junkie.work -d www.junkie.work --register-unsafely-without-email -w /usr/local/www/junkie.work/data/
/usr/local/etc/letsencrypt/live/junkie.work/fullchain.pem
/usr/local/etc/letsencrypt/live/junkie.work/privkey.pem
発行された証明書を利用します
/usr/local/etc/apache24/Includes/junkie.work.conf に、SSLの設定も追加
<VirtualHost *:443>
DocumentRoot /usr/local/www/junkie.work/data/
<Directory "/usr/local/www/junkie.work/data">
Require all granted
</Directory>
ServerName junkie.work
ServerAlias www.junkie.work
SSLCertificateKeyFile /usr/local/etc/letsencrypt/live/junkie.work/privkey.pem
SSLCertificateFile /usr/local/etc/letsencrypt/live/junkie.work/fullchain.pem
</VirtualHost>
<VirtualHost *:80>
DocumentRoot /usr/local/www/junkie.work/data/
<Directory "/usr/local/www/junkie.work/data">
Require all granted
</Directory>
ServerName junkie.work
ServerAlias www.junkie.work
</VirtualHost>
# service apache24 restart
証明書の更新を自動で行うようにcronに登録する
# crontab -u www -e
5 4 1 * * /usr/local/bin/certbot renew && /usr/local/sbin/httpd -k graceful
これで、定期的に証明書の更新が実施されます。