PHP, Apache и MySQL в тюрьме FreeBSD
Я пытаюсь стек PHP, Apache, MySQL на FreeBSD. Я создал две тюрьмы на одном хосте FreeBSD. Я установил PHP, Apache в одной тюрьме и MySQL Server в другой. Все эти компоненты прекрасно работают в собственной тюрьме. Моя цель - разместить PHP-приложение, которое будет взаимодействовать с MySQL, находящимся в другой тюрьме. Для этого мне нужно установить связь между этими тюрьмами.
Ниже мой /etc/rc.conf -
ec2_configinit_enable=YES
ec2_fetchkey_enable=YES
ec2_ephemeralswap_enable=YES
ec2_loghostkey_enable=YES
firstboot_freebsd_update_enable=YES
firstboot_pkgs_enable=YES
growfs_enable="YES"
ifconfig_DEFAULT="SYNCDHCP"
sshd_enable="YES"
firstboot_pkgs_list="awscli"
openntpd_enable="YES"
cloned_interfaces="lo1"
ifconfig_lo1="inet 172.16.1.1 netmask 255.255.255.0"
ifconfig_lo1_alias0="inet 172.16.1.2 netmask 255.255.255.255"
ifconfig_lo1_alias1="inet 172.16.1.3 netmask 255.255.255.255"
pf_enable="YES"
ezjail_enable="YES"
rpcbind_enable="NO"
cron_flags="$cron_flags -J 15"
syslogd_flags="-ss"
sendmail_enable="NONE"
clear_tmp_enable="YES"
И мой /etc/pf.conf - это
ext_if = "xn0"
int_if = "lo1"
jail_net = $int_if:network
WEBSERVER = "172.16.1.1"
WEBSERVER_TCP_PORTS = "{ 80, 443}"
DBSERVER2 = "172.16.1.3"
DBSERVER_TCP_PORTS = "{ 3306 }"
nat on $ext_if from $jail_net to any -> ($ext_if)
rdr pass on $ext_if inet proto tcp to port $WEBSERVER_TCP_PORTS -> $WEBSERVER
rdr pass on $ext_if inet proto tcp to port $DBSERVER_TCP_PORTS -> $DBSERVER2
block all
pass from { lo0, $jail_net } to any keep state
pass in inet proto tcp to $ext_if port ssh
pass out all keep state
Нужна идея подключить одну тюрьму к другой серверу MySQL.
1 ответ
Решение
На моем rc.conf у меня есть только:
cloned_interfaces="lo1"
Затем с помощью команды:
ezjail-admin create mysql 'lo1|172.16.1.2'
Я создаю mysql jail и автоматически запускает ip 172.16.1.2 на lo1 при запуске jail.
На моем pf.con я не фильтрую на клонированном интерфейсе:
set skip on lo1