This shows you the differences between two versions of the page.
vps:vps4th_03 [2016/12/31 01:41] hoge@hoge [ports共有設定] |
vps:vps4th_03 [2019/06/16 15:16] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== jail設定 ====== | ||
- | ===== 起動・停止関連 ===== | ||
- | Jailを起動するスクリプトを作成する。\\ /root/Toolsを作成し、以下のファイルを作成する。 | ||
- | ^ ファイル名 ^ 用途 ^ | ||
- | |start_jail.sh|jail起動スクリプト| | ||
- | |stop_jail.sh|jail停止スクリプト| | ||
- | |hosts.normal|jail停止時のjailer向けhostsファイル| | ||
- | |hosts.jail|jail起動時のjailer向けhostsファイル| | ||
- | |||
- | ==== start_jail.sh ==== | ||
- | jail起動スクリプトを作成する。 | ||
- | <code> | ||
- | #!/bin/sh | ||
- | |||
- | service ntpd stop | ||
- | ifconfig bridge0 cerate up | ||
- | ifconfig epair0 create | ||
- | ifconfig epair1 create | ||
- | ifconfig epair2 create | ||
- | ifconfig epair3 create | ||
- | |||
- | ifconfig bridge0 addm epair0a addm epair1a addm epair2a addm epair3a | ||
- | |||
- | ifconfig epair0a up | ||
- | ifconfig epair1a up | ||
- | ifconfig epair2a up | ||
- | ifconfig epair3a up | ||
- | |||
- | route delete -net 0.0.0.0 | ||
- | ifconfig vtnet0 down | ||
- | ifconfig epair0b inet 192.168.100.253 netmask 255.255.255.0 | ||
- | route add -net 0.0.0.0 192.168.100.254 | ||
- | |||
- | cp /root/Tools/hosts.jail /etc/hosts | ||
- | |||
- | jail -c fw | ||
- | jail -c web | ||
- | jail -c desktop | ||
- | |||
- | service ntpd start | ||
- | </code> | ||
- | |||
- | ==== stop_jail.sh ==== | ||
- | jail停止スクリプトを作成する。 | ||
- | <code> | ||
- | #!/bin/sh | ||
- | |||
- | service ntpd stop | ||
- | |||
- | jail -r desktop | ||
- | jail -r web | ||
- | jail -r fw | ||
- | |||
- | route delete -net 0.0.0.0 | ||
- | |||
- | ifconfig epair0a destroy | ||
- | ifconfig epair1a destroy | ||
- | ifconfig epair2a destroy | ||
- | ifconfig epair3a destroy | ||
- | ifconfig bridge0 destroy | ||
- | |||
- | cp /root/Tools/hosts.normal /etc/hosts | ||
- | |||
- | ifconfig vtnet0 -inet <Global IP> netmask <subnet mask> | ||
- | route add -net 0.0.0.0 <さくらのVPS 指定> | ||
- | |||
- | kldunload if_bridge | ||
- | kldunload if_epair | ||
- | |||
- | service ntpd start | ||
- | </code> | ||
- | |||
- | ==== hosts.* ==== | ||
- | jailer向けhostsファイルとして以下のファイルを作成する。 | ||
- | * /root/Tools/hosts.normal\\ jail未起動時のjailer向けhosts | ||
- | * /root/Tools/hosts.jail\\ jail起動時のjailer向けhosts | ||
- | |||
- | ===== jail設定 ===== | ||
- | /etc/jail.confを作成し、各prisonerの定義を行う。 | ||
- | <code> | ||
- | exec.start = "/bin/sh /etc/rc"; | ||
- | exec.stop = "/bin/sh /etc/rc.shutdown"; | ||
- | exec.clean; | ||
- | mount.devfs; | ||
- | vnet = new; | ||
- | allow.mount; | ||
- | allow.mount.procfs; | ||
- | allow.mount.devfs; | ||
- | allow.sysvipc; | ||
- | |||
- | persist; | ||
- | path = "/usr/jail/$name"; | ||
- | fw { | ||
- | vnet.interface = vtnet0, epair1b; | ||
- | } | ||
- | |||
- | web { | ||
- | vnet.interface = epair2b; | ||
- | } | ||
- | |||
- | desktop { | ||
- | vnet.interface = epair3b; | ||
- | } | ||
- | </code> | ||
- | |||
- | ===== prisoner作成 ===== | ||
- | [[http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/jails-build.html|ハンドブック]]に従い、prisonerを作成する。 | ||
- | === 格納場所作成 === | ||
- | <code> | ||
- | # mkdir -p /usr/jail/fw | ||
- | # mkdir -p /usr/jail/web | ||
- | # mkdir -p /usr/jail/desktop | ||
- | </code> | ||
- | |||
- | === 展開 === | ||
- | <code> | ||
- | # cd /usr/src | ||
- | # make installworld DESTDIR=/usr/jail/fw | ||
- | # make distribution DESTDIR=/usr/jail/fw | ||
- | # make installworld DESTDIR=/usr/jail/web | ||
- | # make distribution DESTDIR=/usr/jail/web | ||
- | # make installworld DESTDIR=/usr/jail/desktop | ||
- | # make distribution DESTDIR=/usr/jail/desktop | ||
- | </code> | ||
- | |||