prisonerのwebをWEBサーバにする。
jailerから各設定ファイルを直接編集する。各設定ファイルのプレフィックスは/usr/jail/webとなる。
# *.err;kern.warning;auth.notice;mail.crit /dev/console
# 1,31 0-5 * * * root adjkerntz -a
minuid 2101 maxuid 2200 mingid 2101 maxgid 2200
domain "ドメイン名" nameserver "さくらのVPS指定 1" nameserver "さくらのVPS指定 2"
127.0.0.1 localhost localhost.example.com 192.168.100.254 gw gw.example.com 192.168.100.1 web web.example.com 192.168.100.1 web.example.com. 192.168.100.2 desktop desktop.example.com 192.168.100.253 vps vps.example.com
hostname="web.example.com" ifconfig_epair2b="inet 192.168.100.1 netmask 255.255.255.0" defaultrouter="192.168.100.254" firewall_enable="YES" firewall_type="open"
prisoner webを起動後、以下の設定を行う。
# jexec web /bin/sh
# newaliases /etc/mail/aliases: 27 aliases, longest 10byte, 275 bytes total
pkgにて、以下を導入。
pkg -j web install <pkg名>
/usr/local/etc/php.ini-developmentを/usr/local/etc/php.iniコピーする。
コピー後、php.iniを編集する。
mbstring.language = Japanese mbstring.internal_encoding = UTF-8 mbstring.http_input = auto mbstring.http_output = UTF-8
Let's Encrypt 総合ポータルを参考に設定を行う。
# service apache24 stop
# certbot certonly --standalone -d <ドメイン名> -d <サブドメインを含めたFQDN>
/etc/rc.confに追記する。
apache24_enable="YES"
/usr/local/etc/apache24/httpd.confを編集する。
LoadModule auth_digest_module libexec/apache24/mod_auth_digest.so
LoadModule ssl_module libexec/apache24/mod_ssl.so
LoadModule socache_shmcb_module libexec/apache24/mod_socache_shmcb.so
LoadModule rewrite_module libexec/apache24/mod_rewrite.so
LoadModule cgi_module libexec/apache24/mod_cgi.so
#ServerAdmin you@example.com
#ServerName www.example.com:80 ServerName 192.168.100.1:80
#DocumentRoot "/usr/local/www/apache24/data" DocumentRoot "/usr/local/www"
# <Directory "/usr/local/www/apache24/data"> # # 無効化 # # </Directory>
<IfModule dir_module> DirectoryIndex index.html index.php </IfModule>
<IfModule alias_module> # ScriptAlias /cgi-bin/ "/usr/local/www/apache24/cgi-bin/" </IfModule>
# <Directory "/usr/local/www/apache24/cgi-bin"> # # 無効化 # # </Directory>
<IfModule mime_module> AddType application/x-httpd-php .php </IfModule>
Include etc/apache24/extra/httpd-ssl.conf
<IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L] </IfModule>
/usr/local/etc/apache24/extra/httpd-ssl.confを編集する。
<VirtualHost _default_:443> DocumentRoot "/usr/local/www/dokuwiki" ServerName www.example.com:443 ErrorLog "/var/log/httpd-error.log" TransferLog "/var/log/httpd-access.log" SSLEngine on SSLCertificateFile "/etc/letsencrypt/live/<ドメイン名>/fullchain.pem" SSLCertificateKeyFile "/etc/letsencrypt/live/<ドメイン名>/privkey.pem" <FileMatch ".\(cgi|shtml|phtml|php)$"> SSLOptions +StdEnvVars </FileMatch> BrowserMatch "MSIE [2-5]" \ nokeepalive ssl-unclean-shutdown \ dwongrade-1.0 force-response-1.0 <Directory /> Options FollowSymLinks ExecCGI AllowOverride all Order allow,deny Allow from all Require all granted </Directory> CustomLog "/var/log/httpd-ssl_request.log" \ "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b" </VirtualHost>
# apachectl configtest
prisoner web の /etc/newsyslog.confに対象ファイルを追加する。
/var/log/httpd-access.log 600 30 * @T02 J /var/run/httpd.pid 30 /var/log/httpd-error.log 600 30 * @T02 J /var/run/httpd.pid 30 /var/log/httpd-ssl_request.log 600 30 * @T02 J /var/run/httpd.pid 30
<?php date_default_timezone_set("Asia/Tokyo");