6.2 /etc/rc.conf

Трябва да настроим IP адресите, затворът и MySQL сървъра. За тази цел трябва да добавим следното в /etc/rc.conf

(1)
ifconfig_fxp0="inet 192.168.0.2 netmask 255.255.255.0"
ifconfig_fxp0_alias0="inet 192.168.0.13 netmask 0xffffffff"
(2)
mysql_enable="YES"
mysql_args="--bind-address=127.0.0.1 --socket=/usr/jails/web/tmp/mysql.sock"
(3)
jail_enable="YES"
jail_list="web"
jail_set_hostname_allow="NO"
jail_socket_unixiproute_only="YES"
jail_sysvipc_allow="NO"
jail_getfsstatroot_only="YES"
jail_allow_raw_sockets="NO"
jail_chflags_allowed="NO"
(4)
jail_web_rootdir="/usr/jails/web"
jail_web_hostname="web"
jail_web_ip="192.168.0.13"
jail_web_exec_start="/apache/sbin/httpd"
jail_web_exec_stop=""
jail_web_devfs_enable="YES"
jail_web_devfs_ruleset="webjail"
jail_web_mount_enable="NO"
           

(1)
Вероятно разполагате с пърият ред, но трябва да направите нужните промени. Променете IP адресът, интерфейсът и мрежовата маска. Във вторият ред трябва да промените IP адресът на jail(8). (и интерфейсът;)
(2)
Първият ред стартира MySQL. Вторият добавя два аргумента към командата mysqld_safe. Те карат MySQL да очаква връзки само на 127.0.0.1 и да създава своят socket във /usr/jails/web/tmp вместо в /tmp. Това ни помага да скриеме IP адресът на нашата host система. Вероятно ще искате да добавите "alias mysql='mysql --socket=/usr/jails/web/tmp/mysql.sock'" към вашият .bash_profile или start-up скрипта на използваният от Вас shell.
(3)
  • jail_enable: стартирай затворите при стартиране на системата.

  • jail_list: списък със затвори, които трябва да бъдат стартирани. В текущата ситуация имаме само един затвор, наречен "web".

  • jail_set_hostname_allow: да бъдат ли позволени промени на hostname в затвора?

  • jail_socket_unixiproute_only: ограничи създаването на UNIX/IPv4/route сокети в затвора?

  • jail_sysvipc_allow: могат ли процесите в затвора да използват System V IPC primitives?

  • jail_getfsstatroot_only: процесите виждат само тяхната root файлова система в getfsstat()

  • jail_allow_raw_sockets: ще могат ли процесите в затвора да създават "raw" сокети?

  • jail_chflags_allowed: ще могат ли процесите в затвора да променят флагове на файлове?

    Note: jail_chfalgs_allowed е добавена при FreeBSD 5.4



(4)
  • jail_web_rootdir: къде е средата на затворът? (помните ли променливата $J?)

  • jail_web_hostname: името на затвора

  • jail_web_ip: IP адресът на затвора

  • jail_exec_start: командата, която трябва да се изпълни, за да се стартира затвора. В нашият случай трябва да стартираме Apache, използвайки /apache/sbin/httpd

  • jail_exec_stop: нямаме нужда от това, защото /etc/rc.jail изпраща -TERM сигнал към Apache преди -KILL. По този начин Apache може да довърши работата си, да затвори всички активни връзки, да запише логовете и да се спре цивилизовано;)

  • jail_devfs_enable: devfs(8) в /dev ?

  • jail_devfs_ruleset: ако монтираме /dev - кои правила да използваме?

    Note: Не се притеснявайте, правилата ще бъдат създадени в следващата секция.



  • jail_web_mount_enable: позволи използването на mount(8) команда в затвора?



This, and other documents, can be downloaded from ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

For questions about FreeBSD, read the documentation before contacting <[email protected]>.
For questions about this documentation, e-mail <[email protected]>.