prisonerのfwをfirewallとnatboxにする。
jailerから各設定ファイルを直接編集する。各設定ファイルのプレフィックスは/usr/jail/fwとなる。
# *.err;kern.warning;auth.notice;mail.crit /dev/console
# 1,31 0-5 * * * root adjkerntz -a
minuid 2001 maxuid 2100 mingid 2001 maxgid 2100
domain "ドメイン名" nameserver "さくらのVPS指定 1" nameserver "さくらのVPS指定 2"
127.0.0.1 localhost localhost.example.com <Global IP> fw fw.example.com <Global IP> fw.example.com. 192.168.100.254 gw gw.example.com 192.168.100.254 gw.example.com. 192.168.100.1 web web.example.com 192.168.100.2 desktop desktop.example.com 192.168.100.253 vps vps.example.com
hostname="fw.example.com" ifconfig_vtnet0="inet <Global IP> netmask <netmask>" ifconfig_epair1b="inet 192.168.100.254 netmask 255.255.255.0" gateway_enable="YES" defaultrouter="<さくらのVPS指定>" firewall_enable="YES" firewall_type="/etc/fw.txt" firewall_logging="YES" firewall_nat_enable="YES"
prisoner:fwを起動後、以下の設定を行う。
# jexec fw /bin/sh
# newaliases /etc/mail/aliases: 27 aliases, longest 10byte, 275 bytes total
/etc/rc.confで指定したfirewall_type=“/etc/fw.txt”を作成する。
-f flush # nat設定 desktop向け ssh add nat 1 log tcp from any to <Global IP> <外部向けsshポート> nat 1 config log redirect_port tcp 192.168.100.2:<内部向けsshポート> <Global IP>:<外部向けsshポート> add nat 2 log tcp from 192.168.100.2 <内部向けsshポート> to any nat 2 config log redirect_port tcp 192.168.100.2:<内部向けsshポート> <Global IP>:<外部向けsshポート> # nat設定 web向け http add nat 3 log tcp from any to <Global IP> 80 nat 3 config log redirect_port tcp 192.168.100.1:80 <Global IP>:80 add nat 4 log tcp from 192.168.100.1 80 to any nat 4 config log redirect_port tcp 192.168.100.1:80 <Global IP>:80 # nat設定 web向け https add nat 5 log tcp from any to <Global IP> 443 nat 5 config log redirect_port tcp 192.168.100.1:443 <Global IP>:443 add nat 6 log tcp from 192.168.100.1 443 to any nat 6 config log redirect_port tcp 192.168.100.1:443 <Global IP>:443 # nat設定 desktop向け novnc add nat 7 log tcp from any to <Global IP> <外部向けnovncポート> nat 7 config log redirect_port tcp 192.168.100.2:<内部向けnovncポート> <Global IP>:<外部向けnovncポート> add nat 8 log tcp from 192.168.100.2 <内部向けnovncポート> to any nat 8 config log redirect_port tcp 192.168.100.2:<内部向けnovncポート> <Global IP>:<外部向けnovncポート> # nat設定 内部から外部 add nat 9 log ipv4 from any to any via <Global IP> nat 9 config log ip <Global IP> # ルール add check-state add deny log all from any to 192.168.100.0/24 in recv <Global IP> add allow log tcp from any to 192.168.100.2 <内部向けsshポート> add allow log tcp from any to 192.168.100.2 <内部向けnovncポート> add allow log tcp from any to 192.168.100.1 80 add allow log tcp from any to 192.168.100.1 443 add allow log ip from 192.168.100.0/24 to any keep-state add allow log ip from 127.0.0.1 to 127.0.0.1
# service ipfw restart